Wartości zmiennej systemowej MODEMACRO

Aby wyświetlać komunikaty w zdefiniowanej przez użytkownika sekcji paska stanu, można korzystać z ciągów tekstowych i języka DIESEL.

Wartość zmiennej systemowej MODEMACRO określa elementy wyświetlane w zdefiniowanej przez użytkownika, położonej najbardziej na lewo sekcji paska stanu. Najprostszym (i najmniej użytecznym) zastosowaniem zmiennej systemowej MODEMACRO jest wyświetlanie stałej wartości tekstowej.

Uwaga: Zmienna systemowa MODEMACRO nie jest obsługiwana w systemie Mac OS.

Na przykład, aby wyświetlić na pasku stanu nazwę firmy/instytucji, należy wprowadzić:

Polecenie: modemacro

Wprowadź nową wartość zmiennej MODEMACRO lub . dla żadnego <"">: Greg's Excavating

Wartość tekstowa pozostanie bez zmian; pasek stanu nie będzie odzwierciedlał zmian wewnętrznego stanu aplikacji. Nie ulegnie to zmianie, dopóki wartość zmiennej systemowej MODEMACRO nie zostanie zaktualizowana.

Aby pasek stanu odzwierciedlał bieżący stan, należy wprowadzić wyrażenia makra w następującym formacie przy użyciu języka DIESEL:

$(func_name, arg1, arg2, ...)

W wyrażeniu makra func_name jest nazwą funkcji DIESEL, a arg1 , arg2 itd. są argumentami funkcji interpretowanymi zgodnie z jej definicją.

W poniższym przykładzie wyświetlana jest na pasku stanu nazwa bieżącego stylu tekstu:

Polecenie: modemacro

Wprowadź nową wartość zmiennej MODEMACRO lub . dla żadnego <"">: Style: $(getvar, textstyle)

Można pobrać bieżącą wartość dowolnej zmiennej systemowej, wprowadzając $(getvar, nazwa_zmiennej). Bieżąca wartość zmiennej systemowej zastępuje wyrażenie makra na pasku stanu. Gdy zmienna systemowa ulegnie zmianie, na przykład zostanie zmieniony bieżący styl tekstu, ciąg tekstowy przypisany do zmiennej systemowej MODEMACRO zostanie ponownie określony i pasek stanu zostanie zaktualizowany.

Wyrażenia makra mogą być zagnieżdżone, a także dowolnie złożone. W następującym przykładzie na pasku stanu wyświetlana jest bieżąca wartość jednostki skoku i kąt (w stopniach). Wykorzystuje on zagnieżdżone wyrażenia do konwersji kąta skoku z radianów na stopnie i obcina je do liczby całkowitej.

Polecenie: modemacro

Wprowadź nową wartość zmiennej MODEMACRO lub . dla żadnego <"">: Snap: $(getvar, snapunit) $(fix,$(*,$(getvar,snapang),$(/,180,3.14159)))

Wartości można również wyświetlać w bieżących trybach liniowych i kątowych jednostek.

Polecenie: modemacro

Wprowadź nową wartość zmiennej MODEMACRO lub . dla żadnego <"">:

Skok: $(rtos,$(index,0,$(getvar,snapunit))),$(rtos,$(index,1,$(getvar,snapunit))) $(angtos,$(getvar,snapang))

Język DIESEL kopiuje wprost dane wejściowe do danych wyjściowych, dopóki nie napotka znaku dolara ($) lub ciągu w cudzysłowie. Tak więc ciągi w cudzysłowie można wykorzystywać do blokowania wyliczania sekwencji znaków, które w przeciwnym wypadku byłyby interpretowane jako funkcje DIESEL. Same znaki cudzysłowu można również włączyć do ciągu w cudzysłowach, jeśli użyje się do tego celu dwóch znaków podwójnego cudzysłowu. W następnym przykładzie bieżąca warstwa jest ustawiona jako ARKUSZ, a MODEMACRO jest ustawiona jako ciąg.

Polecenie: modemacro

Wprowadź nową wartość zmiennej MODEMACRO lub . dla żadnego <"">: "$(getvar,clayer)= """$(getvar,clayer)""""

Na pasku stanu wyświetlana jest następująca informacja:

$(getvar,clayer)="ARKUSZ"