Be Book Tracker Indeks Tracker'a

Skryptowanie Tracker'a

Każde okno Tracker'a określa właściwość "Poses" (pozycja) reprezentującą zawartość okna. Każda pozycja, włączona, określa dwie właściwości "Entry" (element) i "Selection" (zaznaczenie). "Entry" jest elementem w oknie, tj. obojętnie plik czy katalog, wtedy gdy "Selection" przedstawia zaznaczone "Entry".

Kiedy okno Tracker'a odpowiada komunikatem skryptowania z właściwością "Poses", to zdejmuje bieżący specyfikator ze stosu specyfikatora i przesyła komunikat skryptowania do widoku (typ BView) obsługującego właściwość "Postawy". Z tego miejsca są przetwarzane właściwości "Entry" i "Selection". Dla przykładu, poniższa funkcja zwraca liczbę elementów obecnych w danym oknie Tracker'a:

int32 CountEntries(const char *name)
{
int32 count;
BMessage message, reply;

// z żądania skryptowania
message.what = B_COUNT_PROPERTIES;
message.AddSpecifier("Wejście");
message.AddSpecifier("Pozy");
message.AddSpecifier("Okno", name);

// dostarcza żądanie i przynosi odpowiedź
BMessenger("application/x-vnd.Be-TRAK").SendMessage(&message, &reply);

// return result
if (reply.FindInt32("wynik", &count) == B_OK)
return count;

return -1;
}

API skryptowania Tracker'a określa liczbę sposobów specyfikowania elemetów w Pozycjach. Metody te są zebrane poniżej:

Specyfikator Opis
B_DIRECT_SPECIFIER Używany do określania całej Poses (pozycjach) lub zaznaczenia jako właściwe.
B_INDEX_SPECIFIER "index" zawiera int32 indeks pliku w Poses (pozycjach). Zakresy są określone jako para indeksów.
'sref' "refs" zawiera entry_refs określanego pliku.
'sprv' Odnosi się do elementu bezpośrednio następującego po pliku, którego zmienna entry_ref jest znajdowana w "data".
'snxt' Odnosi się do elementu bezpośrednio poprzedzającego plik, któego zmienna entry_ref jest znajdowana w "data".

Pamiętaj zawsze, że inne programy (lub użytkownik) również mogą dodawać lub usuwać elementy i zaznaczenia w widoku, więc nie polegaj na indeksach jako bezpiecznej metodzie odnoszenia się do określonego pliku. Zamiast tego użyj zmiennej entry_refs.


Właściwość elementu

Komunikat Specyfikatory Znaczenie
B_COUNT_PROPERTIES B_DIRECT_SPECIFIER Zlicza wejścia w Poses (pozycjach).
B_DELETE_PROPERTY 'sref',
B_INDEX_SPECIFIER
Przenosi określone wejście do Trash'a (kosza).
B_EXECUTE_PROPERTY 'sref',
B_INDEX_SPECIFIER
Przeprowadza operację równoważną otwarciu określonego elementu w Tracker'ze.
B_GET_PROPERTY B_DIRECT_SPECIFIER Zwraca zmienną entry_refs wszystkich wejść w bieżacych Poses (pozycjach).
B_GET_PROPERTY B_INDEX_SPECIFIER Zwraca określoną zmienną entry_ref.
B_GET_PROPERTY 'sprv', 'snxt' Zwraca zmienną entry_ref poprzedniego lub następnego wejścia określonej zmiennej entry_ref. Zwraca również indeks pliku w "index."


Właściwość zazanaczenia

Komunikat Specyfikatory Znaczenie
B_COUNT_PROPERTIES B_DIRECT_SPECIFIER Zlicza liczbę zaznaczonych elementów w Poses (pozycjach).
B_CREATE_PROPERTY B_DIRECT_SPECIFIER Dodaje elementy do bieżącego zaznaczenia. Mogą one być określone jako zmienne entry_refs lub int32 w tablicy "data".
B_DELETE_PROPERTY 'sref',
B_INDEX_SPECIFIER
Usuwa elementy z bieżącego zaznaczenia.
B_GET_PROPERTY B_DIRECT_SPECIFIER Zwraca zmienną entry_refs elementów w zaznaczeniu .
B_GET_PROPERTY 'sprv', 'snxt' Zwraca zmienną entry_ref pliku poprzedniego lub następnego danego elementu. Zwraca indeks pliku w "index."
B_SET_PROPERTY B_DIRECT_SPECIFIER Czyści bieżące zaznaczenie i ustawia go w przedziale podanym w "data." Akceptuje również zmienną entry_refs w "data" ustanowionego nowego zaznaczenia.
B_SET_PROPERTY 'sprv', 'snxt' Czyści bieżące zaznaczenie i ustawia go w zmiennej entry_refs przed lub po tym, które określone jest w "data."


Be Book Tracker Indeks Tracker'a

 

Be Book,
...w ślicznym HTML...
dla BeOS wydanie 5

Copyright © 2000 Be, Inc. Wszelkie prawa zastrzeżone.