14.6. Konfiguracja panelu roboczego
Budowę paneli sterowania dokonuje się dzięki korzystaniu z przycisków
znajdujących się na lewym, skrajnym obszarze okienka aplikacji. Wystarczy
tylko nacisnąć wybrany przycisk i kliknąć następnie lewym przyciskiem myszy,
gdy jest ona nad obszarem panelu. Kiedy zamiast kliknąć narysuje się prostokątny
obszar na panelu, to kontrolka całkowicie go sobą wypełni. Dostępne są
następujące rodzaje przycisków:
Pierwszy przycisk nie jest przyciskiem kontrolki, lecz pozwala odznaczyć wciśnięty wcześniej
przycisk wybranego obiektu.
Za pomocą przycisku
,
przy zaznaczonej kontrolce lub przez dwukrotne kliknięcie lewym przyciskiem myszy
nad obszarem kontrolki, można dokonać konfiguracji wybranego obiektu. Dla wszystkich
rodzajów kontrolek pojawi się wówczas okienko dialogowe z 3, 4 lub 5 zakładkami.
Zakładki Main, Style i Specific występują dla każdej kontrolki. Prawie zawsze
występuje także zakładka Actions, a w niektórych przpadkach zakładka Frame.
Dokładne zestawienie występowania zakładek dla poszczególnych kontrolek
znajduje się w tabeli, w dalszej części dokumentu.
Zakładki Main, Style, Actions oraz
Frame prawie dla wszystkich kontrolek mają
taki sam wygląd (wyjątkiem jest zakładka Main oraz w minimalnym stopniu zakładka
Actions), natomiast zakładka Specific jest dla każdej z kontrolek inna.
W zakładce Main zawsze znajduje się pole Object name, które pozwala
wyspecyfikować nazwę obiektu, pod którą będzie osiągalny przez inne kontrolki
oraz panel. Można też ustawić rodzaj czcionki (przycisk Fonts) inny niż
domyślny. Jeśli obiekt ma być powiązany z jakimś bytem SNMP, tzn.
gdziekolwiek zostanie użyty jako argument akcji Read lub Write,
to można podać jego ID string. Jeśli obiekt ten będzie dodatkowo
wykorzystywany do ustawiania wartości bytu SNMP (akcja Write), to
należy poprawnie ustawić typ tej zmiennej poprzez wybranie jednej
z opcji pola Object type. Aby obiekt mógł aktualizować swój wygląd
na podstawie wyników działania akcji Read należy dodatkowo zaznaczyć
opcję Accept incoming Pdu. Czasem zachodzi potrzeba, aby do ID string-u
obiektu dokleić dodatkowy OID. Wtedy we właściwościach obiektu należy
zaznaczyć opcję Accept ID string sticking. Aby obiekt w ogóle mógł być
wykorzystywany w jakiejkolwiek akcji odczytu (Read) lub zapisu (Write)
to należy podać nazwę sesji w polu Belongs to session.
W polu Text/value on timeout można podać wartość, którą kontrolka
będzie przyjmować w momencie nie otrzymania odpowiedzi od odpytywanego
urządzenia w przewidzianym czasie. Wartość ta zostanie zinterpretowana
jako tekst, jeśli takich wartości spodziewa się kontrolka (np. Label) w
przeciwnym wypadku zostanie zinterpretowana jako wartość liczbowa.
W polu Text/value after timeout można podać wartość, którą
kontrolka będzie przyjmować po okresie nie otrzymywania odpowiedzi od odpytywanego urządzenia.
Zakładka Style zawiera pole wyboru dające cztery możliwości
uzyskiwania Focusu przez kontrolkę: brak focusu, focus przez naciśnięcie
przycisku Tab z klawiatury, przez naciśnięcie przycisku myszy oraz te dwie
ostatnie możliwości naraz. W okienku edycyjnym Caption można podać napis,
jaki ma być wyświetlany na kontrolce (dotyczy to części obiektów). W
okienku ToolTip można podać napis jaki ma pojawić się w okienku
podpowiedzi nad obiektem w momencie najechania na niego kursorem
myszy (pusty napis oznacza brak podpowiedzi). Włączona opcja Enabled
pozwala ustawić kontrlkę w stan osiągalny za pomocą myszy lub klawiatury.
Na zakładce znajdują się także trzy przyciski, które pozwalają ustawić dowolną
dla danej kontrolki kolorystykę. Każdy z przycisków pozwala na wyspecyfikowanie palety
kolorów, charakterystycznej dla stanu, w jakim kontrolka może się znajdować (aktywyny,
wyłączony, normalny).
W zakładce Actions dla każdego zdarzenia można wyspecyfikować listę akcji,
które mają być podjęte. Zdarzenia dla kontrolek są najczęściej dwojakiego rodzaju:
naciśnięcie przycisku myszy równoznaczne z wciśnięciem klawisza Enter oraz podwójne
naciśnięcie lewego klawisza myszy. Trzeba pamiętać, że to drugie zdarzenie,
w przypadku myszy, poprzedzone jest zawsze pierwszym. Może to prowadzić do
sytuacji, że akcje doczepione do podwójnego klikinięcia mogą nie zdążyć
nastąpić lub wystąpią zaraz po akcjach dla pojedynczego kilknięcia. Z
tego powodu nie ma sensu definiować akcji dla obu tych zdarzeń w
przypadku tego samego obiektu.
Użytkownik może mieć do dyspozycji najwięcej pięć różnych rodzajów
akcji. Nie wszystkie typy obiektów dysponują całym ich zestawem. Akcja Close
służy do kończenia pracy całego panelu. Jeśli jest on dialogiem to zamyka
się tylko okienko. Jeśli jest on panelem głównym, to kończy się tym samym
pracę całej aplikacji. Akcja Read służy do odczytywania danych dla
wyspecyfikowanych obiektów w celu aktualizacji ich wyglądu na panelu,
zaś Write przesyła te dane do zarządzanego urządzenia.
Okienko Program specification definiujące akcję Exec pozwala
wyspecyfikować program oraz jego argumenty, który ma zostać uruchomiony
w momencie zajścia danego zdarzenia. W procesie specyfikacji programu
oraz jego argumentów można podawać nazwy poprzedzone znakiem $. Nazwą
może być: zmienna środowiskowa, która będzie zdefiniowana w trakcie
rzeczywistego działania panela, nazwa kontrolki, której wartość chcemy
wykorzystać, słowo kluczowe takie jak HostName, ReadCommunity,
WriteCommunity, FileName, StickingIDString, zawierające odpowiednie
argumenty wywołania generatora paneli xdnnv.
Okienko Network Node View parameters
definiujące akcję Dialog pozwala podać
nazwę pliku konfiguracyjnego dla programu xdnnv, opisującego panel sterowania.
Można zaznaczyć opcję Stick this ID string i podać OID do doklejenia dla
kontrolek wskazanego panelu. Podobnie jak w przypadku specyfikacji akcji
Exec można wykorzystywać znak $ i podawać za nim nazwy kontrolek lub
słowa kluczowe (nie można wykorzystywać zmiennych środowiskowych).
Akcja Dialog uruchamia obsługę wyspecyfikowanego panelu w okienku
modalnym w przeciwieństwie do akcji Exec, która uruchamia dowolny
program.
Przyciski znajdujące się na zakładce Actions pozwalają manipulować listą
akcji dla danego zdarzenia. Przyciskpozwala zdefiniować nową akcję z pośród
omówionych powyżej. Akcja Read i Write specyfikuje się tak samo jak w
przypadku konfiguracji panelu.
Za pomocą zakładki Frame można skonfigurować styl ramki
obramowującej obiekt i szerokość linii, z których będzie zbudowana.
W grupie Style dostępne są następujące możliwości:
No Frame, Box,
Panel, WinPanel, HLine,
VLine, Styled Panel,
PopupPanel oraz style obramowania takie jak: płaski (Plain),
wypukły (Raised) i wklęsły (Sunken).
W grupie Line definiuje się grubość linii zewnętrznej obramowania, zaś w
grupie Midline grubość linii środkowej. Efekt
aktualnych ustawień widoczny jest na podglądzie obok.
14.6.5. Zestawienie występowania zakładek dla poszczególnych kontrolek