Alterator/New/Packages: различия между версиями
Qwest (обсуждение | вклад) |
Qwest (обсуждение | вклад) |
||
Строка 412: | Строка 412: | ||
==Таблица виджетов== | == Таблица виджетов == | ||
{| class="wikitable" style="text-align: center" | {| class="wikitable" style="text-align: center" | ||
Строка 742: | Строка 742: | ||
===Таблица общих атрибутов для всех виджетов=== | === Таблица общих атрибутов для всех виджетов === | ||
{| class="wikitable" style="text-align: left" | {| class="wikitable" style="text-align: left" | ||
Строка 783: | Строка 783: | ||
==== Корневой виджет ==== | ==== Корневой виджет ==== | ||
Именно в этот виджет вставляются все остальные. Имеет следующие атрибуты: | Именно в этот виджет вставляются все остальные. Имеет следующие атрибуты: | ||
* '''title''' | * '''title''' — заголовок окна | ||
* '''width''' | * '''width''' — ширина окна | ||
* '''height''' | * '''height''' — высота окна | ||
==== Box ==== | ==== Box ==== | ||
Контейнер для других виджетов. | Контейнер для других виджетов. | ||
* '''orientation''' | * '''orientation''' «''horizontal''» — это развернутый вариант виджета '''hbox'''; | ||
* '''orientation''' | * '''orientation''' «''vertical''» — развернутый вариант виджета '''vbox'''. | ||
==== Button ==== | ==== Button ==== | ||
Строка 797: | Строка 797: | ||
<u>Атрибуты:</u> | <u>Атрибуты:</u> | ||
* '''text''' | * '''text''' — текст на кнопке; | ||
* '''pixmap''' | * '''pixmap''' — картинка из списка. | ||
<u>События:</u> | <u>События:</u> | ||
* '''clicked''' | * '''clicked''' — вызывается при нажатии кнопки. | ||
==== CheckBox ==== | ==== CheckBox ==== | ||
Кнопка-флажок с двумя состояниями ''true'' или ''false''. | Кнопка-флажок с двумя состояниями ''true'' или ''false''. | ||
* '''text''' | * '''text''' — описание кнопки; | ||
* '''state''' | * '''state''' — состояние флажка. Если значение ''#t'', то флажок выставлен. При значении ''#f'' флажок отсутствует; | ||
* '''value''' | * '''value''' — то же, что и '''state'''. | ||
==== DateEdit ==== | ==== DateEdit ==== | ||
Виджет отображения даты, календаря. | Виджет отображения даты, календаря. | ||
* '''expanded''' | * '''expanded''' — со значением ''#t'' дополнительно отображает календарь; | ||
* '''value''' | * '''value''' — атрибут для задания даты (строка формата ГГГГ-ММ-ДД). | ||
==== TimeEdit ==== | ==== TimeEdit ==== | ||
Отображает время. | Отображает время. | ||
* '''expanded''' | * '''expanded''' — со значением ''#t'' добавляет графические часы; | ||
* '''stop''' | * '''stop''' — остановка счета времени; | ||
* '''start''' | * '''start''' — запуск счета времени; | ||
* '''value''' | * '''value''' — задание времени. | ||
==== Radio ==== | ==== Radio ==== | ||
Радиокнопка позволяет выбрать один пункт из набора, в пределах одного контейнера. | Радиокнопка позволяет выбрать один пункт из набора, в пределах одного контейнера. | ||
* '''state''' | * '''state''' — состояние пункта. Данный пункт выбран при значении ''#t''; | ||
* '''text''' | * '''text''' — описание пункта; | ||
==== Edit ==== | ==== Edit ==== | ||
Однострочное текстовое поле ввода. | Однострочное текстовое поле ввода. | ||
* '''echo''' | * '''echo''' — режим отображения. Возможные варианты: ''normal'' (по умолчанию), ''stars'' (звёздочки, для паролей), ''no'' (ввод не отображается); | ||
* '''alterability''' | * '''alterability''' — разрешение на изменение текста. Если значение ''#f'', содержимое поля доступно только для чтения; | ||
* '''text''' | * '''text''' — содержимое поля; | ||
* '''value''' | * '''value''' — то же, что и '''text'''. | ||
==== GridBox ==== | ==== GridBox ==== | ||
Вертикальный контейнер | Вертикальный контейнер «сетки». Основой способ организации виджетов на экране. | ||
* '''columns''' | * '''columns''' — ширина стобцов сетки в процентном соотношении от общей ширины. | ||
==== Label ==== | ==== Label ==== | ||
Предназначен для отображения какой-либо надписи без возможности редактирования. | Предназначен для отображения какой-либо надписи без возможности редактирования. | ||
* '''text-wrap''' | * '''text-wrap''' — отображение одной длинной строки в виде многострочного текста (''#t''/''#f''); | ||
* '''text''' | * '''text''' — отображаемый текст. | ||
==== GroupBox ==== | ==== GroupBox ==== | ||
Объединение группы виджетов в один контейнер. | Объединение группы виджетов в один контейнер. | ||
* '''checked''' | * '''checked''' — в случае значения #t рядом с заголовком отображается checkbox (если он не выделен, то содержимое группы неактивно и недоступно для работы); | ||
* '''orientation''' | * '''orientation''' — ориентация контейнера (''horizontal''/''vertical''); | ||
* '''state''' | * '''state''' — состояние checkbox в случае режима checked; | ||
* '''title''' | * '''title''' — заголовок группы. | ||
==== ProgressBar ==== | ==== ProgressBar ==== | ||
Строка прогресса некоторого процесса. | Строка прогресса некоторого процесса. | ||
* '''maximum''' | * '''maximum''' — максимальное допустимое значение, соответствует 100 %; | ||
* '''minimum''' | * '''minimum''' — минимальное допустимое значение, соответствует 0 %; | ||
* '''text''' | * '''text''' — информация в строке прогресса; | ||
* '''value''' | * '''value''' — текущее значение прогресса. | ||
==== SpinBox ==== | ==== SpinBox ==== | ||
Поле со счетчиком для ввода чисел. | Поле со счетчиком для ввода чисел. | ||
* '''maximum''' | * '''maximum''' — максимальное допустимое значение; | ||
* '''minimum''' | * '''minimum''' — минимальное допустимое значение; | ||
* '''step''' | * '''step''' — шаг приращения значения; | ||
* '''value''' | * '''value''' — текущее значение. | ||
==== TextBox ==== | ==== TextBox ==== | ||
Многострочное текстовое поле ввода. | Многострочное текстовое поле ввода. | ||
* '''alterability''' | * '''alterability''' — разрешение на изменение текста. Если значение ''#f'', содержимое поля доступно только для чтения; | ||
* '''text''' | * '''text''' — содержимое поля; | ||
* '''append-text''' | * '''append-text''' — добавить текст в конец поля; | ||
* '''url''' | * '''url''' — показать содержимое указанного файла. | ||
==== FileSelect ==== | ==== FileSelect ==== | ||
Выбор файла из файловой системы, для дальнейшей работы с ним. | Выбор файла из файловой системы, для дальнейшей работы с ним. | ||
* '''filter''' | * '''filter''' — допустимые расширения файлов; | ||
* '''hints''' | * '''hints''' — условие выбора файла (обычно используется значение ''existing_file'' для проверки на существование выбранного файла); | ||
* '''title''' | * '''title''' — заголовок; | ||
* '''url''' | * '''url''' — путь поиска файлов. | ||
<u>Пример:</u> | <u>Пример:</u> | ||
Строка 911: | Строка 911: | ||
==== SplitBox ==== | ==== SplitBox ==== | ||
Контейнер с изменяемой шириной колонок. | Контейнер с изменяемой шириной колонок. | ||
* '''columns''' | * '''columns''' — изначальная ширина колонок. | ||
Строка 918: | Строка 918: | ||
<u>Атрибуты</u> | <u>Атрибуты</u> | ||
* '''columns''' | * '''columns''' — количество колонок в списке; | ||
* '''header''' | * '''header''' — заголовок таблицы, вектор из строк с названиями колонок; | ||
* '''enumref''' | * '''enumref''' — адрес списка данных; | ||
* '''rows''' | * '''rows''' — возвращает список значений в виде единой строки; | ||
* '''rows-clear''' | * '''rows-clear''' — очищает список; | ||
* '''append-row''' | * '''append-row''' — добавление в конец списка новой строки; | ||
* '''row-item''' | * '''row-item''' — работа с отдельным полем в списке. Координаты задаются списком из двух значений '(строка столбец) или указанием порядкового номера строки; | ||
* '''row-remove''' | * '''row-remove''' — удаляет строку с указанным порядковым номером; | ||
* '''text''' | * '''text''' — возвращает строку с содержимым первого поля активной строки; | ||
* '''current''' | * '''current''' — номер выделенной строки. Если ничего не выделено, то значение равно −1; | ||
* '''count''' | * '''count''' — возвращает количество строк в таблице. | ||
<u>События</u> | <u>События</u> | ||
Желательно использовать только одно событие, иначе события могут неправильно срабатывать. | Желательно использовать только одно событие, иначе события могут неправильно срабатывать. | ||
* '''clicked''' | * '''clicked''' — одинарный щелчок правой кнопки мышки по элементу списка; | ||
* '''double-clicked''' | * '''double-clicked''' — двойной щелчок правой кнопки мышки по элементу списка; | ||
* '''selected''' | * '''selected''' — изменение активной строки; | ||
* '''return-pressed''' | * '''return-pressed''' — нажатиe ''Enter'' на активной строке списка; | ||
* '''changed''' | * '''changed''' — любое действие с виджетом (не рекомендуется использовать). | ||
<br/> | |||
{| style="float:left;" | |||
| | |||
{{Навигационная таблица | |||
|state = collapsed | |||
|заголовок = Пример 1 | |||
|стиль_четных = background:#f0f0f0 | |||
|заголовок1 = Описание | |||
В данном примере событие ''return-pressed'' срабатывает при ''double-clicked''. Исправляется | |список1 = | ||
В данном примере событие ''return-pressed'' срабатывает при ''double-clicked''. Исправляется использованием ''clicked'' вместо ''double-clicked''. | |||
|заголовок2 = index.scm | |||
|список2 = | |||
<pre style="width:70em"> | <pre style="width:70em"> | ||
(document:surround "/std/frame") | (document:surround "/std/frame") | ||
Строка 989: | Строка 997: | ||
</pre> | </pre> | ||
|заголовок3 = backend/simple_list | |||
|список3 = | |||
<pre style="width:70em"> | <pre style="width:70em"> | ||
#!/bin/sh | #!/bin/sh | ||
Строка 1011: | Строка 1020: | ||
</pre> | </pre> | ||
|заголовок4 = simple_list.desktop | |||
|список4 = | |||
<pre style="width:70em"> | <pre style="width:70em"> | ||
[Desktop Entry] | [Desktop Entry] | ||
X-Alterator-URI=/simple_list | X-Alterator-URI=/simple_list | ||
</pre> | </pre> | ||
}} | |||
|} | |||
<br/> | |||
<br/> | |||
<br/> | |||
==== ComboBox ==== | |||
Выпадающий список. Поддерживает все события и атрибуты виджета ''listbox'' в одноколоночном режиме, а также: | |||
<u>Атрибуты</u> | |||
* '''alterability''' - значение #t переключает строку в редактируемый режим. |
Версия от 13:42, 5 сентября 2013
Текущее состояние модулей альтератора
Packages Internals
Таблица виджетов
Таблица общих атрибутов для всех виджетов
Attribute | Значения | Описание |
---|---|---|
align | "left" "right" "middle" "hmiddle" "center" "top" "bottom" | выравнивание внутри ячейки «сетки» |
activity | #t #f | активирует/отключает виджет |
visibility | #t #f | видимость/невидимость виджета |
colspan | <число> | количество столбцов "сетки" под данный виджет |
rowspan | <число> | количество строк "сетки" под данный виджет |
tooltip | <текст> | справочная информация, выводимая во всплывающей подсказке |
focus | #t #f | атрибут только для записи, помещает фокус на виджет для которого указано значение #t |
width | <число> | ширина виджета |
height | <число> | высота виджета |
title | <текст> | заголовок родительского контейнера |
name | <текст> | имя виджета |
nameref | <текст> | аналог name (?) |
margin | <число> | ширина "рамки" вокруг контейнера |
spacing | <число> | промежуток между виджетами (применим только к контейнерам) |
Описание виджетов и их атрибутов
Корневой виджет
Именно в этот виджет вставляются все остальные. Имеет следующие атрибуты:
- title — заголовок окна
- width — ширина окна
- height — высота окна
Box
Контейнер для других виджетов.
- orientation «horizontal» — это развернутый вариант виджета hbox;
- orientation «vertical» — развернутый вариант виджета vbox.
Button
Кнопка с текстом и картинкой.
Атрибуты:
- text — текст на кнопке;
- pixmap — картинка из списка.
События:
- clicked — вызывается при нажатии кнопки.
CheckBox
Кнопка-флажок с двумя состояниями true или false.
- text — описание кнопки;
- state — состояние флажка. Если значение #t, то флажок выставлен. При значении #f флажок отсутствует;
- value — то же, что и state.
DateEdit
Виджет отображения даты, календаря.
- expanded — со значением #t дополнительно отображает календарь;
- value — атрибут для задания даты (строка формата ГГГГ-ММ-ДД).
TimeEdit
Отображает время.
- expanded — со значением #t добавляет графические часы;
- stop — остановка счета времени;
- start — запуск счета времени;
- value — задание времени.
Radio
Радиокнопка позволяет выбрать один пункт из набора, в пределах одного контейнера.
- state — состояние пункта. Данный пункт выбран при значении #t;
- text — описание пункта;
Edit
Однострочное текстовое поле ввода.
- echo — режим отображения. Возможные варианты: normal (по умолчанию), stars (звёздочки, для паролей), no (ввод не отображается);
- alterability — разрешение на изменение текста. Если значение #f, содержимое поля доступно только для чтения;
- text — содержимое поля;
- value — то же, что и text.
GridBox
Вертикальный контейнер «сетки». Основой способ организации виджетов на экране.
- columns — ширина стобцов сетки в процентном соотношении от общей ширины.
Label
Предназначен для отображения какой-либо надписи без возможности редактирования.
- text-wrap — отображение одной длинной строки в виде многострочного текста (#t/#f);
- text — отображаемый текст.
GroupBox
Объединение группы виджетов в один контейнер.
- checked — в случае значения #t рядом с заголовком отображается checkbox (если он не выделен, то содержимое группы неактивно и недоступно для работы);
- orientation — ориентация контейнера (horizontal/vertical);
- state — состояние checkbox в случае режима checked;
- title — заголовок группы.
ProgressBar
Строка прогресса некоторого процесса.
- maximum — максимальное допустимое значение, соответствует 100 %;
- minimum — минимальное допустимое значение, соответствует 0 %;
- text — информация в строке прогресса;
- value — текущее значение прогресса.
SpinBox
Поле со счетчиком для ввода чисел.
- maximum — максимальное допустимое значение;
- minimum — минимальное допустимое значение;
- step — шаг приращения значения;
- value — текущее значение.
TextBox
Многострочное текстовое поле ввода.
- alterability — разрешение на изменение текста. Если значение #f, содержимое поля доступно только для чтения;
- text — содержимое поля;
- append-text — добавить текст в конец поля;
- url — показать содержимое указанного файла.
FileSelect
Выбор файла из файловой системы, для дальнейшей работы с ним.
- filter — допустимые расширения файлов;
- hints — условие выбора файла (обычно используется значение existing_file для проверки на существование выбранного файла);
- title — заголовок;
- url — путь поиска файлов.
Пример:
(document:surround "/std/frame") (define fileselect (make-widget 'fileselect)) (define url (make-attribute 'url)) (define filter (make-attribute 'filter)) (define hints (make-attribute 'hints)) (gridbox columns "100" margin "100" (vbox (label text "Simple import certificate") (fileselect title (_"Import CA certificate") url "/" filter "*.cert *.crt *.pem" hints "existing_file")))
SplitBox
Контейнер с изменяемой шириной колонок.
- columns — изначальная ширина колонок.
ListBox
Прокручиваемый список, с возможностью создания нескольких столбцов.
Атрибуты
- columns — количество колонок в списке;
- header — заголовок таблицы, вектор из строк с названиями колонок;
- enumref — адрес списка данных;
- rows — возвращает список значений в виде единой строки;
- rows-clear — очищает список;
- append-row — добавление в конец списка новой строки;
- row-item — работа с отдельным полем в списке. Координаты задаются списком из двух значений '(строка столбец) или указанием порядкового номера строки;
- row-remove — удаляет строку с указанным порядковым номером;
- text — возвращает строку с содержимым первого поля активной строки;
- current — номер выделенной строки. Если ничего не выделено, то значение равно −1;
- count — возвращает количество строк в таблице.
События Желательно использовать только одно событие, иначе события могут неправильно срабатывать.
- clicked — одинарный щелчок правой кнопки мышки по элементу списка;
- double-clicked — двойной щелчок правой кнопки мышки по элементу списка;
- selected — изменение активной строки;
- return-pressed — нажатиe Enter на активной строке списка;
- changed — любое действие с виджетом (не рекомендуется использовать).
|
ComboBox
Выпадающий список. Поддерживает все события и атрибуты виджета listbox в одноколоночном режиме, а также:
Атрибуты
- alterability - значение #t переключает строку в редактируемый режим.