OpenWindow

 

Przeznaczenie

Akcja służy od otwierania predefiniowanych okien synoptycznych lub do wymiany diagramów wyświetlanych w panelach okna. Jest to podstawowa akcja służącą do stworzenia schematu nawigacji w aplikacji.

Składnia

OpenWindow (nazwa_okna,  nazwa_panelu,  nazwa_diagramu,  parametry,  nowe_okno, współrzędna_X, współrzędna_Y,  tryb_wymiany)

OpenWindow (nazwa_okna,  nazwa_panelu,  nazwa_diagramu,  parametry,  nowe_okno)

OpenWindow (nazwa_okna,  nazwa_panelu,  nazwa_diagramu,  parametry)

Parametry

nazwa_okna

Nazwa okna, którego akcja dotyczy. Może być pusta, a wtedy okno będące obiektem akcji ustalane jest na podstawie kontekstu użycia. Szczegóły użycia w sekcji Algorytm.

nazwa_panelu

Nazwa panelu, w którym diagram ma zostać otwarty. Może być pusta, a wtedy panel będący obiektem akcji ustalany jest na podstawie kontekstu użycia. Szczegóły użycia w sekcji Algorytm.

nazwa_diagramu

Nazwa diagramu, którego akcja dotyczy. Może być pusta, a wtedy akcja powoduje jedynie otwarcie okna bez zmiany diagramu lub z otwarciem domyślnych diagramów paneli. Szczegóły użycia w sekcji Algorytm.

parametry

Parametr służy do przekazania do otwieranego diagramu wartości jego parametrów. Zestaw dozwolonych parametrów zależy od definicji diagramu. Parametry są podawane jako sekwencja par nazwa_parametru=wartość_parametru rozdzielonych znakiem średnika, np.

Kolor=Red;Zmienna=v1

Jeżeli w oknie będącym obiektem akcji jest używane menu, to parametry akcji są także przekazywane do tego menu.

nowe_okno

Parametr typu logicznego true/false, który określa, czy należy utworzyć nowe okno. Szczegóły użycia w sekcji Algorytm.

współrzędna_X

Parametr określa współrzędną X otwieranego okna (lewego górnego narożnika). Parametr może być bezpośrednią współrzędną liczbową lub jedną z poniższych stałych:

$Default - współrzędna X wynika z definicji okna lub (dla okna już otwartego) jest to bieżąca pozycja. Jest to wartość domyślna w przypadku użycia wariantu akcji bez parametru współrzędna_X.

$CursorLocation - współrzędną X określa aktualne położenie kursora myszki. Współrzędna może zostać zmodyfikowana, aby zapobiec częściowemu wyjściu  otwieranego okna poza obszar monitora.

$ActiveLocation - współrzędna X otwieranego okna jest identyczna jak współrzędna X okna, które było aktywne w momencie wykonania akcji.


 

współrzędna_Y

Parametr określa współrzędną Y otwieranego okna (lewego górnego narożnika). Zasady podawania parametru są identyczne jak dla parametru współrzędna_X.

tryb_wymiany

Parametr określa dodatkowe akcje, które są podejmowane po otwarciu okna. Możliwe wartości to jedna z poniższych stałych:

$None - żadne dodatkowe operacje nie są wykonywane (wartość domyślna).

$Closable - zamknięte zostaną wszystkie otwarte okna, które nie posiadają blokady zamykania i znajdują się na monitorze otwieranego okna.

$ExceptCurrent - zamknięte zostaną wszystkie otwarte okna, które nie posiadają blokady zamykania i znajdują się na monitorze otwieranego okna za wyjątkiem okna aktywnego w momencie wykonania akcji. 

$CurrentOnly - zamknięte zostanie tylko okno aktywne w momencie wykonania akcji.

$ReplaceCurrent -  zamknięte zostanie okno aktywne w momencie wykonania akcji. Współrzędne i rozmiar okna otwieranego zostaną ustawione identycznie jak dla okna zamykanego (parametry współrzędna_X i współrzędna_Y są ignorowane). Jeżeli dotyczy głównego okna wewnątrz przeglądarki internetowej, to pozwala zamienić to okno na inne.

 

Algorytm

Jeżeli nazwa diagramu nie jest podana:

Jeżeli nazwa okna też nie została podana, to obiektem akcji jest okno wynikające z kontekstu użycia lub okno bieżące.

Jeżeli nazwa okna nie została podana, ale została podana nazwa panelu, a kontekst wywołania nie jest znany (np. wywołanie ze skrótu klawiszowego) to: jeżeli panel nie jest częścią okna bieżącego(aktywnego), to jest wyszukiwany we wszystkich otwartych oknach (pierwszeństwo mają okna na ekranie, na którym jest kursor myszki).

Jeżeli nazwa okna została podana i parametr nowe_okno  jest równy true, to otwierane jest nowe okno o podanej nazwie z domyślnymi diagramami.

Jeżeli nazwa okna została podana i parametr nowe_okno  jest równy false, to wyszukiwane jest wśród otwartych okien okno o podanej nazwie (zaczynając od okna aktywnego). Jeżeli takie okno zostanie znalezione, to jest ono obiektem akcji. Jeżeli nie, to  otwierane jest nowe okno o podanej nazwie z domyślnymi diagramami.

Jeżeli nazwa diagramu została podana:

W każdym przypadku, jeżeli udało się określić okno będące obiektem akcji, to okno to staje się oknem aktywnym,  wykonywana jest w razie konieczności odpowiednia korekta pozycji okna i zamykane są okna wynikające z parametru tryb_wymiany.

 

Przykłady

OpenWindow ( start, schemat, silnik, zmienna=s1)

Jeżeli okno o nazwie start jest już otwarte, to w panelu schemat zostanie otwarty diagram silnik z parametrami zmienna=s1. Jeżeli taki diagram z identycznymi parametrami był już otwarty, to nastąpi jedynie aktywizacja okna.

Jeżeli okno o nazwie start nie jest jeszcze otwarte, to zostanie teraz otworzone. W panelu schemat zostanie otwarty diagram silnik z parametrami zmienna=s1. W pozostałych panelach zostaną otwarte diagramy domyślne.

OpenWindow ( null, schemat, silnik, zmienna=s1, false, $Default, $Default, $Closable)

W oknie kontekstowym, w panelu schemat zostanie otwarty diagram silnik z parametrami zmienna=s1. Pozycja okna nie zostanie zmieniona. Dodatkowo zostaną zamknięte wszystkie okna bez blokady zamknięcia.

 

   Zobacz też

- akcja OpenDiagram, akcja CloseWindow, akcja MinimizeWindow

- AsixEvo_Techniki_budowy_diagramów > 5. Zasady otwierania i zamykania okien synoptycznych