Alterator/form
Материал из ALT Linux Wiki
< Alterator(Различия между версиями)
Ilis (обсуждение | вклад) (→Модуль (alterator lookout form)) |
|||
(19 промежуточных версий не показаны.) | |||
Строка 1: | Строка 1: | ||
- | + | {{span|font-size:180%;|Модуль (alterator lookout form)}} | |
+ | ---- | ||
- | + | == Адресация полей == | |
- | + | Каждое поле адресуется по значению атрибута <tt>name</tt>. | |
- | + | Метка поля должна иметь имя, совпадающее с именем соответствующего ей поля. | |
- | + | Пример: | |
+ | <source lang="lisp"> | ||
+ | (label text "Field name" name "field")(edit name "field" value "Field value") | ||
+ | </source> | ||
- | + | Исключение — в качестве поля выступает виджет label. В этом случае метки с тем значением атрибута name быть не должно. | |
- | + | Пример: | |
- | + | <source lang="lisp"> | |
- | + | (label name "field" value "Field label") ;; Ошибка!!! | |
- | + | (label name "field" value "Static field") | |
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | <source lang=" | + | |
- | ( | + | |
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
</source> | </source> | ||
- | + | == Функции доступа к значениям полей == | |
- | < | + | * '''(form-value name)''' — получить значение поля с именем <tt>name</tt> |
- | ( | + | * '''(form-value-list . namelist)''' — получить полный список имён полей и их значений в формате plist. namelist - необязательный параметр, список строк - имён полей. В этом случае ответ будет содержать имена и значения только тех имён что перечислены в этом списке. |
- | + | == Функции модификации значений полей == | |
- | + | * '''(form-update-value name value)''' — изменить значение поля с именем <tt>name</tt> на значение <tt>value</tt>. | |
- | + | * '''(form-update-value-list namelist data)''' — заполнить поля с именами перечисленными в списке <tt>namelist</tt> согласно значениям <tt>data</tt> возвращённым командой <tt>woo-read-first</tt> | |
+ | * '''(form-update-enum name data)''' — заполнить поле с именем <tt>name</tt> типа enum списком значений <tt>data</tt>, возвращённым командой <tt>woo-list</tt> | ||
- | + | Если мы хотим вручную сформировать список значений <tt>data</tt> во фронтенде, это можно сделать следующим образом: | |
- | + | <tt>(list (list "" "name" enum1 "label" label_for_enum1) (list "" "name" enum2 "label" label_for_enum2))</tt> | |
- | + | Здесь <tt>enum1</tt>,<tt>enum2</tt> — значения, которые будет принимать поле, <tt>label_for_enum1</tt>,<tt>label_for_enum2</tt> — текст, который будет выводиться пользователю. | |
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | </ | + | |
- | == | + | == Функции модификации состояний полей == |
+ | Эти функции меняют свойства одновременно и полей и меток к ним. | ||
- | * | + | * '''(form-update-visibility namelist status)''' - изменить видимость поля в соотвестствии со значением переменной status - булевого типа. namelist - или список имён полей или одно поле. |
+ | * '''(form-update-activity namelist status)''' - изменить активность поля в соответствии со значением переменной status - булевого типа. namelist - или список имён полей или одно поле. | ||
- | + | == Другие функции == | |
- | ( | + | * '''(form-bind name event proc)''' — привязать вызов процедуры <tt>proc</tt> в случае возникновения события <tt>event</tt> в виджете с именем <tt>name</tt>. Допустимые события: «click», «change». |
- | + | * '''(form-replace url . url-args)''' — перенаправить на страницу по адресу <tt>url</tt> и передать аргументы <tt>url-args</tt> | |
- | + | * '''(form-popup url . url-args)''' — вызвать страницу по адресу <tt>url</tt> как popup и передать аргументы <tt>url-args</tt> | |
- | (form- | + | |
- | (form- | + | |
- | </ | + | |
- | + | {{Category navigation|title=Alterator|category=Alterator|sortkey={{SUBPAGENAME}}}} |
Текущая версия на 17:21, 20 июля 2015
Модуль (alterator lookout form)
Содержание |
Адресация полей
Каждое поле адресуется по значению атрибута name. Метка поля должна иметь имя, совпадающее с именем соответствующего ей поля.
Пример:
(label text "Field name" name "field")(edit name "field" value "Field value")
Исключение — в качестве поля выступает виджет label. В этом случае метки с тем значением атрибута name быть не должно.
Пример:
(label name "field" value "Field label") ;; Ошибка!!! (label name "field" value "Static field")
Функции доступа к значениям полей
- (form-value name) — получить значение поля с именем name
- (form-value-list . namelist) — получить полный список имён полей и их значений в формате plist. namelist - необязательный параметр, список строк - имён полей. В этом случае ответ будет содержать имена и значения только тех имён что перечислены в этом списке.
Функции модификации значений полей
- (form-update-value name value) — изменить значение поля с именем name на значение value.
- (form-update-value-list namelist data) — заполнить поля с именами перечисленными в списке namelist согласно значениям data возвращённым командой woo-read-first
- (form-update-enum name data) — заполнить поле с именем name типа enum списком значений data, возвращённым командой woo-list
Если мы хотим вручную сформировать список значений data во фронтенде, это можно сделать следующим образом: (list (list "" "name" enum1 "label" label_for_enum1) (list "" "name" enum2 "label" label_for_enum2)) Здесь enum1,enum2 — значения, которые будет принимать поле, label_for_enum1,label_for_enum2 — текст, который будет выводиться пользователю.
Функции модификации состояний полей
Эти функции меняют свойства одновременно и полей и меток к ним.
- (form-update-visibility namelist status) - изменить видимость поля в соотвестствии со значением переменной status - булевого типа. namelist - или список имён полей или одно поле.
- (form-update-activity namelist status) - изменить активность поля в соответствии со значением переменной status - булевого типа. namelist - или список имён полей или одно поле.
Другие функции
- (form-bind name event proc) — привязать вызов процедуры proc в случае возникновения события event в виджете с именем name. Допустимые события: «click», «change».
- (form-replace url . url-args) — перенаправить на страницу по адресу url и передать аргументы url-args
- (form-popup url . url-args) — вызвать страницу по адресу url как popup и передать аргументы url-args