Powrót na stronę główną www.And3mD.prv.pl

Menu:
Strona Początkowa
Co Nowego?
BeOS/OpenBeOS
Linux
Podstawy C/C++
C FAQ
Biblioteki stand. C (GNU libc)
Programowanie w Linuxie
Programowanie w BeOSie
GLib
GTK
OpenGL
SDL
Moje Programy
Download
Linki
Pozdrowienia
Autor




BWindow - najważniejsze funkcje:



Ostatnią część kursu dotyczącą klasy BWindow wykorzystamy na poznanie najważniejszych funkcji umożliwiających zarządzanie oknami. Pełny opis wszystkich funkcji klasy BWindow znajduje się oczywiście w BeBook.

IsActive():

Składnia funkcji IsActive():
bool IsActive(void) const

Funkcja pozwala określić czy dane okno jest aktywne czy nie zależnie od zwracanej wartości.

Wartości zwracane przez funkcję IsActive():
trueokno jest aktywne
falseokno nie jest aktywne

MoveBy():

Składnia funkcji MoveBy():
void MoveBy(float horizontal,float vertical)

Przemieszcza okno, dodając wartość horizontal do aktulnej pozycji x, i watrość vertical do aktualnej pozycji y.

MoveTo():

Składnia funkcji MoveTo():
void MoveTo(float x,float y)

Przemieszcza okno tak, aby lewy górny róg obszaru roboczego znajdował się w miejscu oznaczonym współrzędnymi (x,y).

Quit():

Składnia funkcji Quit():
virtual void Quit(void)

Funkcja usuwa okno.

ResizeBy():

Składnia funkcji ResizeBy():
void ResizeBy(float horizontal, float vertical)

Funkcja zmienia rozmiar okna dodając wartość horizontal do szerokości i wartość vertical do wysokości okna.

ResizeTo():

Składnia funkcji ResizeTo():
void ResizeTo(float width, float height)

Funkcja zmienia rozmiar okna ustalając nową szerokość na width, a wysokość na height.

SetFeel():

Składnia funkcji SetFeel():
status_t SetFeel(window_feel feel)

Zmienia sposób zachowania okna.

Najważniejsze wartości dla argumentu feel:
B_NORMAL_WINDOW_FEELokno zachowuje się normalnie
B_FLOATING_ALL_WINDOW_FEELokno występuje zawsze na wierzchu, na wszystkich pulpitach
B_MODAL_ALL_WINDOW_FEELokno występuje na zawsze na wierzchu, blokuje dostęp do wszystkich innych na wszystkich pulpitach


Feel():

Składnia funkcji Feel():
window_feel Feel(void) const

Funkcja jako swoją wartość zwraca aktualne flagi określające zachowanie okna.

SetFlags():

Składnia funkcji SetFlags():
status_t SetFlags(uint32 flags)

Funkcja SetFlags() pozwala określić opcje okna takie jak np. zakaz zmiany rozmiaru okna.

Najważniejsze wartości dla argumentu flags:
B_NOT_MOVABLEnie pozwala przemieścić okna
B_NOT_CLOSABLEokno nie posiada przycisku zamknij na pasku tytułowym
B_NOT_ZOOMABLEokno nie posiada przycisku maksymalizuj(zoom) na pasku tytułowym
B_NOT_MINIMIZABLEnie pozwala zminimalizować okna przez podwójne kliknięcie w pasek tytułowy
B_NOT_H_RESIZABLEnie pozwala zmieniać rozmiaru okna w poziomie
B_NOT_V_RESIZABLEnie pozwala zmieniać rozmiaru okna w pionie
B_NOT_RESIZABLEnie pozwala zmieniać rozmiaru okna w żadnym kierunku


Flags():

Składnia funkcji Flags():
uint32 Flags(void) const

Funkcja jako swoją wartość zwraca aktualnie ustawione opcje dla danego okna (te które są ustawiane np. w konstruktorze w parametrze flags).

SetLook():

Składnia funkcji SetLook():
status_t SetLook(window_look look)

Pozwala zmienić wygląd okna.
Najważniejsze wartości argumentu look:

B_DOCUMENT_WINDOW_LOOK - duży pasek tytułu, grube obramowanie, duży kwadrat do zmiany rozmiaru okna w prawym dolnym rogu:



B_TITLED_WINDOW_LOOK - to samo co wyżej ale kwadrat do zmiany rozmiaru został zastąpiony wyznaczeniem części obramowania okna:



B_FLOATING_WINDOW_LOOK - mały pasek tytułu, wąskie obramowanie, prawy dolny róg obramowania służy do zmiany rozmiaru okna:



B_MODAL_WINDOW_LOOK - brak pasku tytułowego, grube obramowanie, brak kontrolki zmiany rozmiaru okna:



B_BORDERED_WINDOW_LOOK - brak paska tyułowego, obramowanie, brak kontrolki zmiany rozmiaru okna:



B_NO_BORDER_WINDOW_LOOK - brak wszelkich ozdób okna


Look():

Składnia funkcji Look():
window_look Look(void) const

Funkcja jako swoją wartość zwraca flagę określającą wygląd okna, są to te same flagi co w argumencie look konstruktora okna.

SetPulseRate():

Składnia funkcji SetPulseRate():
void SetPulseRate(bigtime_t microseconds)

Określa co jaki czas do aplikacji ma być wysyłany komunikat systemowy B_PULSE, komunikat ten obsługiwany jest przez funkcję Pulse(), którą możemy przeciążyć aby wykonywała dla nas jakieś operacje co określony czas.
Ustawienie wartości 0, wyłącza wysyłanie komunikatu B_PULSE dla danego okna i wszystkich należących do niego klas widoku (o klasach widoku napiszę w następnej części kursu).

PulseRate():

Składnia funkcji PulseRate():
bigtime_t PulseRate(void)

Zwraca aktualnie ustawioną wartość mikrosekund pomiędzy kolejnymi wysyłanymi komunikatami B_PULSE.

SetSizeLimits():

Składnia funkcji SetSizeLimits():
void SetSizeLimits(float minWidth, float maxWidth, float minHeight, float maxHeight)

Funkcja pozwala ustawić limity ograniczające możliwość zmiany wielkości okna.

Argumenty funkcji SetSizeLimits():
minWidthminimalna szerokość okna
maxWidthmaksymalna szerokość okna
minHeightminimalna wysokość okna
maxHeightmaksymalna wysokość okna

GetSizeLimits():

Składnia funkcji GetSizeLimits():
void GetSizeLimits(float *minWidth, float *maxWidth, float *minHeight, float *maxHeight)

Funkcja zapisuje aktualne limity pod zmienne, których wskaźniki podane zostały jako argumenty funkcji.

SetZoomLimits():

Składnia funkcji SetZoomLimits():
void SetZoomLimits(float maxWidth, float maxHeight)

Funkcja SetZoomLimits() ustawia limity ograniczające możliwość powiększenia okna za pomocą przycisku Zoom.

Argumenty funkcji SetZoomLimits():
maxWidthmaksymalna szerokość okna
maxHeightmaksymalna wysokość okna


Oprócz funkcji SetZoomLimits() limit na rozmiar okna nakłada także funkcja SetSizeLimits() należy więc pamiętać że wybierany jest ten bardziej restrykcyjny.

SetTitle():

Składnia funkcji SetTitle():
void SetTitle(const char * newTitle)

Zmienia nazwę okna wyświetlaną na pasku tytułowym, a także nazwę wątku okna.

Title():

Składnia funkcji Title():
const char *Title() const

Funkcja zwraca wskaźnik do łańcucha znaków reprezentującego tytuł okna. Łańcuch ten jest zakończony znakiem null i należy do okna, więc jeśli potrzebny jest na dłużej należy przekopiować go do własnego bufora.

SetType():

Składnia funkcji SetType():
status_t SetType(window_type type)

Typ okna zwykle ustawiany jest w argumencie type konstruktora okna. Funkcja SetType() pozwala zmienić typ okna dla już istniejącego okna.

Najważniejsze wartości dla argumentu type
B_TITLED_WINDOWokno wyglądające jak B_TITLED_WINDOW_LOOK i zachowujące się normalnie (B_NORMAL_WINDOW_FEEL)
B_DOCUMENT_WINDOWokno wyglądające jak B_DOCUMENT_WINDOW_LOOK i zachowujące się normalnie (B_NORMAL_WINDOW_FEEL)
B_MODAL_WINDOWokno wyglądające jak B_MODAL_WINDOW_LOOK i blokujące dostęp do wszystkich innych okien aplikacji (B_MODAL_APP_WINDOW_FEEL)
B_BORDERED_WINDOWokno wyglądające jak B_BORDERED_WINDOW_LOOK i zachowujące się normalnie
B_UNTYPED_WINDOWokno o nieznanym typie


Type()

Składnia funkcji Type():
window_type Type(void) const

Funkcja jako swoją wartość zwraca typ okna.

SetWorkspaces():

Składnia funkcji SetWorkspaces():
void SetWorkspaces(uint32 workspaces)

Umieszcza okno na określonym pulpicie.

Workspaces():

Składnia funkcji Workspaces():
uint32 Workspaces(void) const

Funkcja zwraca numer pulpitu, na którym znajduje się okno.

Show():

Składnia funkcji Show():
virtual void Show(void)

Funkcja czyni okno widocznym i aktywnym. Jeżeli jest ot pierwsze wywołanie Show() dla tego okna uruchamiana jest też pętla obsługi zdarzeń.

Hide():

Składnia funkcji Hide():
virtual void Hide(void)

Czyni okno niewidocznym, usuwa je także z listy okien deskbara. Jeżeli wywołamy Hide() kilka razy, konieczne będzie również kilkukrotne wywołanie Show(), aby okno się pojawiło.

Minimize():

Składnia funkcji Minimize():
virtual void Minimize(bool minimize)

Ukrywa lub pokazuje okno zależnie od warotści argumentu minimize. Funkcja Minimize() od Hide() różni się tym, że nazwa okna ukrytego za pomocą Minimize() nie jest usuwana z listy okien deskbara.

Możliwe wartości argumentu minimize:
trueokno zostanie zminimalizowane
falseokno zostanie uwidocznione na ekranie


IsHidden():

Składnia funkcji IsHidden():
bool IsHidden(void) const

Zwraca wartość true, jeżeli okno jest ukryte.

IsMinimized():

Składnia funkcji IsMinimized():
bool IsMinimized(void) const

Zwraca wartość true jeżeli okno jest zminimalizowane.

Powrót


And3mD online - www.and3md.prv.pl
Kontakt: And3mD@interia.pl