Alterator/New/Packages
Материал из ALT Linux Wiki
Qwest (обсуждение | вклад) (→ListBox рабочий первый пример) |
(→Box) |
||
(7 промежуточных версий не показаны.) | |||
Строка 211: | Строка 211: | ||
{| class="wide sortable collapsible collapsed" style="text-align:center" | {| class="wide sortable collapsible collapsed" style="text-align:center" | ||
|- | |- | ||
- | !Package|| | + | !Package||[[Файл:Root.svg]]||[[Файл:Box.svg]]||[[Файл:Vbox.svg]]||[[Файл:Hbox.svg]]||[[Файл:Button.svg]]||[[Файл:Linkbutton.svg]]||[[Файл:Radio.svg]]||[[Файл:Label.svg]]||[[Файл:Edit_alterator.svg]]||[[Файл:Textbox.svg]]||[[Файл:Groupbox.svg]]||[[Файл:Gridbox.svg]]||[[Файл:Checkbox.svg]]||[[Файл:Checktree.svg]]||[[Файл:Tree.svg]]||[[Файл:Combobox.svg]]||[[Файл:Tabbox.svg]]||[[Файл:Progressbar.svg]]||[[Файл:Slider.svg]]||[[Файл:Separator.svg]]||[[Файл:Spacer.svg]]||[[Файл:Spinbox.svg]]||[[Файл:Dateedit.svg]]||[[Файл:Timeedit.svg]]||[[Файл:Listbox.svg]]|| [[Файл:RadioListBox.svg]]||[[Файл:Multilistbox.svg]]||[[Файл:Checklistbox.svg]]||[[Файл:Slideshow.svg]]||[[Файл:Splitbox.svg]]||[[Файл:Wizardface.svg]]||[[Файл:Centerface.svg]]||[[Файл:Colorselect.svg]]||[[Файл:Fileselect.svg]]||[[Файл:Undefined.svg]] |
|- | |- | ||
|alternatives || || || || ||<span style="display:none">1</span>{{Есть}}|| || ||<span style="display:none">1</span>{{Есть}}|| || || ||<span style="display:none">1</span>{{Есть}}||<span style="display:none">1</span>{{Есть}}|| || || || || || ||<span style="display:none">1</span>{{Есть}}||<span style="display:none">1</span>{{Есть}}|| || || ||<span style="display:none">1</span>{{Есть}}|| || || || || || || || || || | |alternatives || || || || ||<span style="display:none">1</span>{{Есть}}|| || ||<span style="display:none">1</span>{{Есть}}|| || || ||<span style="display:none">1</span>{{Есть}}||<span style="display:none">1</span>{{Есть}}|| || || || || || ||<span style="display:none">1</span>{{Есть}}||<span style="display:none">1</span>{{Есть}}|| || || ||<span style="display:none">1</span>{{Есть}}|| || || || || || || || || || | ||
Строка 411: | Строка 411: | ||
|} | |} | ||
- | + | == Таблица виджетов == | |
- | ==Таблица виджетов== | + | |
{| class="wikitable" style="text-align: center" | {| class="wikitable" style="text-align: center" | ||
Строка 419: | Строка 418: | ||
| | | | ||
{| class="wide collapsible collapsed" | {| class="wide collapsible collapsed" | ||
- | !box | + | ![[#Box|box]] |
|- | |- | ||
!Attributes||Events | !Attributes||Events | ||
Строка 425: | Строка 424: | ||
|orientation|| | |orientation|| | ||
|} | |} | ||
- | |{{Есть}}||{{ | + | |{{Есть}}||{{Есть}}||in_test||box |
|- valign="top" | |- valign="top" | ||
| | | | ||
{| class="wide collapsible collapsed" | {| class="wide collapsible collapsed" | ||
- | !button | + | ![[#Button|button]] |
|- | |- | ||
!Attributes||Events | !Attributes||Events | ||
Строка 437: | Строка 436: | ||
|text|| | |text|| | ||
|} | |} | ||
- | |{{Есть}}||{{ | + | |{{Есть}}||{{Есть}}||in_test||button |
|- | |- | ||
|centerface ||{{Есть}}||{{Нет}}||in_test||centerface | |centerface ||{{Есть}}||{{Нет}}||in_test||centerface | ||
Строка 443: | Строка 442: | ||
| | | | ||
{| class="wide collapsible collapsed" | {| class="wide collapsible collapsed" | ||
- | !checkbox | + | ![[#CheckBox|checkbox]] |
|- | |- | ||
!Attributes||Events | !Attributes||Events | ||
Строка 453: | Строка 452: | ||
|value|| | |value|| | ||
|} | |} | ||
- | |{{Есть}}||{{ | + | |{{Есть}}||{{Есть}}||in_test||checkbox |
- | |- | + | |- valign="top" |
- | |checklistbox ||{{Есть}}||{{ | + | | |
+ | {| class="wide collapsible collapsed" | ||
+ | ![[#CheckListBox|checklistbox]] | ||
+ | |- | ||
+ | !Attributes||||Events | ||
+ | |- | ||
+ | |append-row||||changed | ||
+ | |- | ||
+ | |columns||||clicked | ||
+ | |- | ||
+ | |count||||double-clicked | ||
+ | |- | ||
+ | |current||||selected | ||
+ | |- | ||
+ | |enumref||||return-pressed | ||
+ | |- | ||
+ | |header|| | ||
+ | |- | ||
+ | |remove|| | ||
+ | |- | ||
+ | |row-item|| | ||
+ | |- | ||
+ | |rows|| | ||
+ | |- | ||
+ | |text|| | ||
+ | |- | ||
+ | |value|| | ||
+ | |} | ||
+ | |{{Есть}}||{{Есть}}||in_test||checklistbox | ||
|- | |- | ||
|checktree ||{{Есть}}||{{Нет}}||in_test||checktree | |checktree ||{{Есть}}||{{Нет}}||in_test||checktree | ||
Строка 463: | Строка 490: | ||
| | | | ||
{| class="wide collapsible collapsed" | {| class="wide collapsible collapsed" | ||
- | !combobox | + | ![[#ComboBox|combobox]] |
|- | |- | ||
!Attributes||Events | !Attributes||Events | ||
Строка 485: | Строка 512: | ||
|text|| | |text|| | ||
|} | |} | ||
- | |{{Есть}}||{{ | + | |{{Есть}}||{{Есть}}||in_test||combobox |
|- valign="top" | |- valign="top" | ||
| | | | ||
{| class="wide collapsible collapsed" | {| class="wide collapsible collapsed" | ||
- | !dateedit | + | ![[#DateEdit|dateedit]] |
|- | |- | ||
!Attributes||Events | !Attributes||Events | ||
Строка 495: | Строка 522: | ||
|expanded|| | |expanded|| | ||
|} | |} | ||
- | |{{Есть}}||{{ | + | |{{Есть}}||{{Есть}}||in_test||dateedit |
|- valign="top" | |- valign="top" | ||
| | | | ||
{| class="wide collapsible collapsed" | {| class="wide collapsible collapsed" | ||
- | !edit | + | ![[#Edit|edit]] |
|- | |- | ||
!Attributes||Events | !Attributes||Events | ||
Строка 509: | Строка 536: | ||
|value|| | |value|| | ||
|} | |} | ||
- | |{{Есть}}||{{ | + | |{{Есть}}||{{Есть}}||in_test||edit |
|- valign="top" | |- valign="top" | ||
| | | | ||
{| class="wide collapsible collapsed" | {| class="wide collapsible collapsed" | ||
- | !fileselect | + | ![[#FileSelect|fileselect]] |
|- | |- | ||
!Attributes||Events | !Attributes||Events | ||
Строка 525: | Строка 552: | ||
|url|| | |url|| | ||
|} | |} | ||
- | |{{Есть}}||{{ | + | |{{Есть}}||{{Есть}}||in_test||fileselect |
|- valign="top" | |- valign="top" | ||
| | | | ||
{| class="wide collapsible collapsed" | {| class="wide collapsible collapsed" | ||
- | !gridbox | + | ![[#GridBox|gridbox]] |
|- | |- | ||
!Attributes||Events | !Attributes||Events | ||
Строка 535: | Строка 562: | ||
|columns|| | |columns|| | ||
|} | |} | ||
- | |{{Есть}}||{{ | + | |{{Есть}}||{{Есть}}||in_test||gridbox |
|- valign="top" | |- valign="top" | ||
| | | | ||
{| class="wide collapsible collapsed" | {| class="wide collapsible collapsed" | ||
- | !groupbox | + | ![[#GroupBox|groupbox]] |
|- | |- | ||
!Attributes||Events | !Attributes||Events | ||
Строка 551: | Строка 578: | ||
|title|| | |title|| | ||
|} | |} | ||
- | |{{Есть}}||{{ | + | |{{Есть}}||{{Есть}}||in_test||groupbox |
|- | |- | ||
- | |hbox ||{{Есть}}||{{Нет}}||in_test||hbox | + | |[[#Box|hbox]] ||{{Есть}}||{{Нет}}||in_test||hbox |
|- valign="top" | |- valign="top" | ||
| | | | ||
{| class="wide collapsible collapsed" | {| class="wide collapsible collapsed" | ||
- | !label | + | ![[#Label|label]] |
|- | |- | ||
!Attributes||Events | !Attributes||Events | ||
Строка 567: | Строка 594: | ||
|value|| | |value|| | ||
|} | |} | ||
- | |{{Есть}}||{{ | + | |{{Есть}}||{{Есть}}||in_test||label |
|- | |- | ||
|linkbutton ||{{Есть}}||{{Нет}}||in_test||linkbutton | |linkbutton ||{{Есть}}||{{Нет}}||in_test||linkbutton | ||
Строка 573: | Строка 600: | ||
| | | | ||
{| class="wide collapsible collapsed" | {| class="wide collapsible collapsed" | ||
- | !listbox | + | ![[#ListBox|listbox]] |
|- | |- | ||
- | !Attributes||Events | + | !Attributes||||Events |
|- | |- | ||
- | |append-row|| | + | |append-row||||changed |
|- | |- | ||
- | |columns|| | + | |columns||||clicked |
|- | |- | ||
- | |count|| | + | |count||||double-clicked |
|- | |- | ||
- | |current|| | + | |current||||selected |
|- | |- | ||
- | |enumref|| | + | |enumref||||return-pressed |
|- | |- | ||
|header|| | |header|| | ||
Строка 597: | Строка 624: | ||
|text|| | |text|| | ||
|} | |} | ||
- | |{{Есть}}||{{ | + | |{{Есть}}||{{Есть}}||in_test|| |
|- | |- | ||
|multilistbox ||{{Есть}}||{{Нет}}||in_test||multilistbox | |multilistbox ||{{Есть}}||{{Нет}}||in_test||multilistbox | ||
Строка 603: | Строка 630: | ||
| | | | ||
{| class="wide collapsible collapsed" | {| class="wide collapsible collapsed" | ||
- | !progressbar | + | ![[#ProgressBar|progressbar]] |
|- | |- | ||
!Attributes||Events | !Attributes||Events | ||
Строка 615: | Строка 642: | ||
|value|| | |value|| | ||
|} | |} | ||
- | |{{Есть}}||{{ | + | |{{Есть}}||{{Есть}}||in_test||progressbar |
|- valign="top" | |- valign="top" | ||
| | | | ||
{| class="wide collapsible collapsed" | {| class="wide collapsible collapsed" | ||
- | !radio | + | ![[#Radio|radio]] |
|- | |- | ||
!Attributes||Events | !Attributes||Events | ||
Строка 629: | Строка 656: | ||
|value|| | |value|| | ||
|} | |} | ||
- | |{{Есть}}||{{ | + | |{{Есть}}||{{Есть}}||in_test||radio |
|- valign="top" | |- valign="top" | ||
| | | | ||
{| class="wide collapsible collapsed" | {| class="wide collapsible collapsed" | ||
- | !radiolistbox | + | ![[#RadioListBox|radiolistbox]] |
|- | |- | ||
!Attributes||Events | !Attributes||Events | ||
Строка 683: | Строка 710: | ||
| | | | ||
{| class="wide collapsible collapsed" | {| class="wide collapsible collapsed" | ||
- | !textbox | + | ![[#TextBox|textbox]] |
|- | |- | ||
!Attributes||Events | !Attributes||Events | ||
Строка 699: | Строка 726: | ||
| | | | ||
{| class="wide collapsible collapsed" | {| class="wide collapsible collapsed" | ||
- | !timeedit | + | ![[#TimeEdit|timeedit]] |
|- | |- | ||
!Attributes||Events | !Attributes||Events | ||
Строка 711: | Строка 738: | ||
|value|| | |value|| | ||
|} | |} | ||
- | |{{Есть}}||{{ | + | |{{Есть}}||{{Есть}}||in_test||timeedit |
|- valign="top" | |- valign="top" | ||
| | | | ||
Строка 735: | Строка 762: | ||
|undefined ||{{Есть}}||{{Нет}}||in_test||undefined | |undefined ||{{Есть}}||{{Нет}}||in_test||undefined | ||
|- | |- | ||
- | |vbox ||{{Есть}}||{{ | + | |[[#Box|vbox]] ||{{Есть}}||{{Есть}}||in_test||vbox |
|- | |- | ||
|wizardface ||{{Есть}}||{{Нет}}||in_test||wizardface | |wizardface ||{{Есть}}||{{Нет}}||in_test||wizardface | ||
Строка 742: | Строка 769: | ||
- | ===Таблица общих атрибутов для всех виджетов=== | + | === Таблица общих атрибутов для всех виджетов === |
{| class="wikitable" style="text-align: left" | {| class="wikitable" style="text-align: left" | ||
Строка 783: | Строка 810: | ||
==== Корневой виджет ==== | ==== Корневой виджет ==== | ||
Именно в этот виджет вставляются все остальные. Имеет следующие атрибуты: | Именно в этот виджет вставляются все остальные. Имеет следующие атрибуты: | ||
- | * '''title''' | + | * '''title''' — заголовок окна |
- | * '''width''' | + | * '''width''' — ширина окна |
- | * '''height''' | + | * '''height''' — высота окна |
==== Box ==== | ==== Box ==== | ||
Контейнер для других виджетов. | Контейнер для других виджетов. | ||
- | * '''orientation''' | + | * '''orientation''' «''horizontal''» — это развернутый вариант виджета '''hbox'''; |
- | * '''orientation''' | + | * '''orientation''' «''vertical''» — развернутый вариант виджета '''vbox''' (по умолчанию). |
==== Button ==== | ==== Button ==== | ||
Строка 797: | Строка 824: | ||
<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: | Строка 938: | ||
==== SplitBox ==== | ==== SplitBox ==== | ||
Контейнер с изменяемой шириной колонок. | Контейнер с изменяемой шириной колонок. | ||
- | * '''columns''' | + | * '''columns''' — изначальная ширина колонок. |
Строка 918: | Строка 945: | ||
<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''' — любое действие с виджетом (не рекомендуется использовать). |
- | + | {| style="align:left;" | |
- | + | | | |
- | Пример | + | {{Навигационная таблица |
+ | |state = collapsed | ||
+ | |заголовок = Пример 1 | ||
+ | |стиль_четных = background:#f0f0f0 | ||
- | ''' | + | |заголовок1 = Описание |
+ | |список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: | Строка 1024: | ||
</pre> | </pre> | ||
- | + | |заголовок3 = backend/simple_list | |
+ | |список3 = | ||
<pre style="width:70em"> | <pre style="width:70em"> | ||
#!/bin/sh | #!/bin/sh | ||
Строка 1011: | Строка 1047: | ||
</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/> | ||
+ | |||
+ | ==== ComboBox ==== | ||
+ | |||
+ | Выпадающий список. Поддерживает все события и атрибуты виджета [[#ListBox|''listbox'']] в '''одноколоночном''' режиме, а также: | ||
+ | |||
+ | <u>Атрибуты</u> | ||
+ | |||
+ | * '''alterability''' - значение #t переключает строку в редактируемый режим. | ||
+ | <br/> | ||
+ | |||
+ | ==== RadioListBox ==== | ||
+ | Список с возможностью выбора одного значения, где каждый элемент является радио-кнопкой. | ||
+ | Атрибуты и события заимствованы из виджета [[#ListBox|''listbox'']]. Некоторые проблемы возникают с атрибутом ''enumref'' при формировании списка из ''backend''. | ||
+ | |||
+ | |||
+ | ==== CheckListBox ==== | ||
+ | Прокручиваемый список с возможностью множественного выбора. Является объединением двух виджетов: [[#ListBox|''listbox'']] и [[#CheckBox|''checkbox'']]. Таким образом, поддерживает атрибуты и события обоих виджетов. | ||
+ | |||
+ | |||
+ | ==== Tree ==== | ||
+ | Древообразный список элементов. |
Текущая версия на 14:24, 23 сентября 2013
Текущее состояние модулей альтератора
Packages Internals
Таблица виджетов
Widget | X11 | Qt | ncurses | Описание | |||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| in_test | box | |||||||||||||||||||||||||||||||||
| in_test | button | |||||||||||||||||||||||||||||||||
centerface | in_test | centerface | |||||||||||||||||||||||||||||||||
| in_test | checkbox | |||||||||||||||||||||||||||||||||
| in_test | checklistbox | |||||||||||||||||||||||||||||||||
checktree | in_test | checktree | |||||||||||||||||||||||||||||||||
colorselect | in_test | colorselect | |||||||||||||||||||||||||||||||||
| in_test | combobox | |||||||||||||||||||||||||||||||||
| in_test | dateedit | |||||||||||||||||||||||||||||||||
| in_test | edit | |||||||||||||||||||||||||||||||||
| in_test | fileselect | |||||||||||||||||||||||||||||||||
| in_test | gridbox | |||||||||||||||||||||||||||||||||
| in_test | groupbox | |||||||||||||||||||||||||||||||||
hbox | in_test | hbox | |||||||||||||||||||||||||||||||||
| in_test | label | |||||||||||||||||||||||||||||||||
linkbutton | in_test | linkbutton | |||||||||||||||||||||||||||||||||
| in_test | ||||||||||||||||||||||||||||||||||
multilistbox | in_test | multilistbox | |||||||||||||||||||||||||||||||||
| in_test | progressbar | |||||||||||||||||||||||||||||||||
| in_test | radio | |||||||||||||||||||||||||||||||||
| in_test | radiolistbox | |||||||||||||||||||||||||||||||||
root | in_test | root | |||||||||||||||||||||||||||||||||
separator | in_test | separator | |||||||||||||||||||||||||||||||||
slider | in_test | slider | |||||||||||||||||||||||||||||||||
slideshow | in_test | slideshow | |||||||||||||||||||||||||||||||||
spacer | in_test | spacer | |||||||||||||||||||||||||||||||||
| in_test | spinbox | |||||||||||||||||||||||||||||||||
| in_test | splitbox | |||||||||||||||||||||||||||||||||
tabbox | in_test | tabbox | |||||||||||||||||||||||||||||||||
| in_test | textbox | |||||||||||||||||||||||||||||||||
| in_test | timeedit | |||||||||||||||||||||||||||||||||
| in_test | tree | |||||||||||||||||||||||||||||||||
undefined | in_test | undefined | |||||||||||||||||||||||||||||||||
vbox | in_test | vbox | |||||||||||||||||||||||||||||||||
wizardface | in_test | wizardface |
Таблица общих атрибутов для всех виджетов
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 переключает строку в редактируемый режим.
RadioListBox
Список с возможностью выбора одного значения, где каждый элемент является радио-кнопкой. Атрибуты и события заимствованы из виджета listbox. Некоторые проблемы возникают с атрибутом enumref при формировании списка из backend.
CheckListBox
Прокручиваемый список с возможностью множественного выбора. Является объединением двух виджетов: listbox и checkbox. Таким образом, поддерживает атрибуты и события обоих виджетов.
Tree
Древообразный список элементов.