Властивості елементів наведено у окремому розділі.
- <document>
Має бути у будь-якому файлі description.xml як кореневий вузол. Не має спеціальних функцій. Не має атрибутів.
- <about>
Відомості щодо цього додатка (автор, умови ліцензування тощо). Цей елемент можна використовувати у файлах
.xmlокремих додатків та у файлах.pluginmap. Докладний опис можна знайти у довіднику щодо файлів.pluginmap, вступні зауваження — у розділі щодо даних «about».- <code>
Визначає, де шукати шаблон JS додатка. Можна використовувати у файлі лише один раз, як дочірній елемент теґу document. Атрибути:
fileНазва файла шаблона JS відносно каталогу, у якому зберігається файл .xml додатка.
- <help>
Визначає, де шукати файл довідки додатка. Можна використовувати у файлі лише один раз, як дочірній елемент теґу document. Атрибути:
fileНазва файла довідки відносно каталогу, у якому зберігається файл .xml додатка.
- <copy>
Можна використовувати як дочірню властивість (безпосередню або опосередковану) елементів основного компонування, тобто <dialog> та <wizard>. Використовується для буквального копіювання цілого блоку елементів xml. Атрибути:
idІдентифікатор, який слід шукати. Теґ <copy> шукатиме попередній щодо нього елемент XML, якому надано той самий ідентифікатор і копіюватиме його разом із усіма підлеглими елементами.
copy_element_tag_nameІноді, у вас може виникнути потреба у майже буквальній копії, але зі зміною назви теґу елемента, який слід скопіювати. Найважливішим прикладом таких випадків є випадок, коли вам потрібно скопіювати вкладку <tab> з інтерфейсу діалогового вікна на сторінку <page> інтерфейсу майстра. У цьому випадку вам слід встановити copy_element_tag_name="page", щоб виконати перетворення автоматично.
- <dialog>
Визначає інтерфейс типу діалогового вікна. У цьому тезі ви маєте визначити графічний інтерфейс. Теґ можна використовувати лише один раз у одному файлі, як дочірній елемент теґу document. У додатку має бути принаймні один теґ «dialog» або «wizard». Атрибути:
labelНадпис діалогового вікна
recommendedВизначає, чи має бути використано діалогове вікно як «рекомендований» інтерфейс (тобто інтерфейс, який буде типово показано, якщо користувач не налаштував RKWard на використання визначеного ним інтерфейсу). Цей атрибут у поточній версії не використовується, оскільки неявним чином він має значення «true», якщо рекомендованим не визначено інтерфейс майстра.
- <wizard>
Визначає інтерфейс типу вікна майстра. У цьому тезі ви маєте визначити графічний інтерфейс. Теґ можна використовувати лише один раз у одному файлі, як дочірній елемент теґу document. У додатку має бути принаймні один теґ «dialog» або «wizard». Приймає як безпосередні дочірні елементи лише теґи <page> і <. Атрибути:
labelНадпис майстра
recommendedВизначає, чи має бути використано вікно майстра як «рекомендований» інтерфейс (тобто інтерфейс, який буде типово показано, якщо користувач не налаштував RKWard на використання визначеного ним інтерфейсу). Необов’язковий, типовим значенням є «false» («ні»).
В усіх елемента з цього розділу можна використовувати атрибут id="рядок-ідентифікатор". Цей атрибут є необов’язковим для усіх елементів. Ним можна скористатися, наприклад, для приховування або вимикання цілого елемента компонування та усіх елементів, які у ньому містяться (див. розділ щодо логіки графічного інтерфейсу). Рядок-ідентифікатор не повинен містити символів «.» (крапка) та «;» (крапка з комою), і, загалом, має складатися із літер латинської абетки, цифр та символів підкреслювання («_»). У списках атрибутів наведено лише необов’язкові атрибути.
- <page>
Визначає нову сторінку у майстрі. Може використовуватися лише як дочірній елемент елемента <wizard>.
- <row>
Усі безпосередні дочірні елементи теґу «row» буде розташовано зліва праворуч.
- <column>
Усі безпосередні дочірні елементи теґу «column» буде розташовано згори вниз.
- <stretch>
Типово, елементи графічного інтерфейсу займатимуть увесь доступний простір. Наприклад, якщо у інтерфейсі є два стовпчика пунктів, і лівий з них заповнено пунктами, а у правому міститься лише один елемент <radio>, елемент <radio> буде розгорнуто вертикально, навіть якщо для цього не потрібне усе доступне місце. Це виглядатиме доволі потворно. Щоб уникнути таких проблем, потрібно додати «порожній» елемент під <radio>. Для цього використовують елемент <stretch>. Він просто займає місце. Не зловживайте ним, оскільки, зазвичай, графічні елементи найкраще виглядають, коли займають усе доступне місце. Лише іноді це призводить до проблем із компонуванням. Елемент <stretch> не приймає жодних аргументів, навіть «id». Крім того, не можна розташовувати дочірні елементи всередині елемента <stretch> (іншими словами, він використовується лише як «<stretch/>»).
- <frame>
Малює рамку навколо свого безпосереднього дочірнього елемента. Може бути використаний для візуального групування пов’язаних параметрів. Компонування у рамці виконується згори вниз, якщо ви не вкажете всередині теґу <row>. Атрибути:
labelНадпис для фрейма (необов’язковий)
checkableРамки можна зробити придатними для позначення. Якщо у рамки є поле для позначки і воно порожнє (не позначено), усі елементи у рамці буде вимкнено аж доти, доки користувач не поставить у полі позначку. (Необов’язковий, типовим значенням є «false».)
checkedЛише для рамок із позначками: визначає, чи має бути пункт рамки типово позначено. Типовим значенням є «true». Не обробляється для рамок без позначок.
- <tabbook>
Збирає елементи у вікно з вкладками (tabbook). Як дочірні елементи можна використовувати лише елементи <tab>.
- <tab>
Визначає сторінку у tabbook. Усередині цього елемента слід розташовувати визначення графічного інтерфейсу вкладки. Можна використовувати лише як безпосередній дочірній елемент теґу <tabbook>. У <tabbook> має бути принаймні дві визначені вкладки. Атрибути:
labelНадпис для сторінки із вкладками (обов’язковий)
- <text>
Показує текст, розташований всередині цього теґу у графічному інтерфейсі. Передбачено підтримку простої розмітки у стилі HTML (зокрема <b>, <i>, <p> та <br/>). Будь ласка, не зловживайте форматуванням. За допомогою додавання порожнього рядка можна вручну почати новий абзац тексту. Атрибути:
typeТип тексту. Одне зі значень: "normal", "warning" або "error". Впливає на вигляд тексту (необов’язковий, типовим є значення «normal»).
Усім елементам у цьому розділі можна передавати атрибут id="рядок_ідентифікатора". Цей атрибут є обов’язковим для усіх елементів. Нижче наведено лише додаткові атрибути. Рядок ідентифікатора не повинен містить символів «.» (крапок).
- <varselector>
Надає список доступних об’єктів, з який користувач може вибрати один або декілька. Для використання слід вказати всередині елемента один або декілька елементів <varslot>. Атрибути:
labelМітка varselector (необов’язкова, типовим є значення «Select variable(s)»)
- <varslot>
Використовується у поєднанні з «varselector» для того, щоб вибрати одну або декілька змінних. Атрибути:
labelМітка для varslot (рекомендовано вказати, типовим значенням є «Variable:»)
sourceЕлемент varselector, з якого слід отримувати варіанти вибору (обов’язковий, якщо немає з’єднування вручну або використання source_property).
source_propertyДовільна властивість, з якої слід скопіювати значення, коли натиснуто кнопку вибору. Якщо вказано, перевизначає атрибут «source».
requiredВизначає для надсилання коду, чи є обов’язковою наявність у varslot коректного значення. Див. документацію до властивості required (необов’язкова, типовим значенням є true).
multiВизначає, містить varslot лише один (типовий варіант, «false») чи декілька об’єктів.
allow_duplicatesВизначає, може varslot приймати лише унікальні об’єкти (типовий варіант, «false») чи той самий об’єкт може бути додано декілька разів.
min_varsМає значення, лише якщо multi="true": мінімальна кількість змінних, які має бути позначено, щоб позначення вважалося коректним (необов’язковий, типовим значенням є 1).
min_vars_if_anyМає значення, лише якщо multi="true": деякі varslot-и можуть вважатися коректними, якщо, наприклад, varslot є порожнім або містить принаймні два значення. Цей атрибут визначає, скільки змінних має бути позначено, якщо змінні позначено (2 у нашому прикладі). (необов’язковий, типовим значенням є «1»)
max_varsМає значення, лише якщо multi="true": максимальна кількість змінних, які може бути позначено (необов’язковий, типовим значенням є 0, що означає, що максимальну кількість не обмежено).
класиЯкщо у цьому атрибуті ви вкажете одну або декілька назв класів R (відокремлених пробілами (« »)), varslot прийматиме лише об’єкти, що належать цим класам (необов’язковий, користуйтеся дуже обережно, не можна забороняти користувачеві вибирати коректні варіанти, а у R є багато різних класів!)
typesЯкщо у цьому атрибуті ви вкажете один або декілька типів змінних (відокремлених пробілами (" ")), varslot прийматиме лише об’єкти вказаних типів. Коректними вважаються такі типи: «unknown», «number», «string», «factor», «invalid». (необов’язковий, користуйтеся дуже обережно — не можна забороняти користувачеві вибирати коректні варіанти, а RKWard не завжди може визначити тип змінної)
num_dimensionsКількість розмірностей, які повинен мати об’єкт. «0» (типове значення) означає, що прийнятними є усі розмірності. (Необов’язкова, типовим значенням є «0»)
min_lengthМінімальна довжина, яку повинен мати об’єкт, щоб бути прийнятним. (Необов’язкова, типовим є значення «0»)
max_lengthМаксимальна довжина, яку повинен мати об’єкт для того, щоб бути прийнятним. (Необов’язкова, типовим є значення найбільшого цілого числа, яке може бути представлене операційною системою)
- <valueselector>
Містить список доступних рядків (не об’єктів R), які можна вибрати у одному або декількох пов’язаних <valueslot>. Пункти рядків можна визначити за допомогою безпосередніх дочірніх теґів <option> (див. нижче) або встановити за допомогою динамічних властивостей. Атрибути:
labelМітка для поля вибору значень (необов’язкова, типово мітки не буде)
- <valueslot>
Використовується у поєднанні з <valueselector> для уможливлення вибору користувачем одного або декількох рядкових пунктів. Цей елемент здебільшого ідентичний до <varslot> і має ті самі атрибути, окрім тих, що відповідають властивостям прийнятних пунктів (тобто classes, types, num_dimensions, min_length, max_length).
- <radio>
Визначає групу взаємовиключних кнопок-варіантів (одночасно позначено може бути лише один пункт варіанта). Потребує принаймні два безпосередніх дочірніх теґи <option>. Інші теґи не можуть бути дочірніми теґами radio. Атрибути:
labelМітка для поля вибору з варіантів (рекомендовано вказати, типовою є «Select one:»)
- <dropdown>
Визначає групу пунктів, серед яких можна вибрати один і лише один за допомогою спадного списку. Функціонально еквівалентний до <radio>, але виглядає інакше. Потребує визначення принаймні двох безпосередніх дочірніх теґів <option>. Інші дочірні теґи використовувати не можна. Атрибути:
labelМітка для спадного списку (рекомендовано вказати, типовою є «Select one:»)
- <select>
Містить список доступних рядків з яких користувач може вибрати довільну кількість рядків. Пункти рядків можна визначити за допомогою безпосередніх дочірніх теґів <option> (див. нижче) або встановити за допомогою динамічних властивостей. Атрибути:
labelМітка для <select> (необов’язкова, типово її не буде)
singleЯкщо встановлено значення «true», вибрати можна буде лише одне значення, а не декілька значень одразу (булевий параметр, типове значення — «false»)
- <option>
Можна використовувати лише як безпосередній дочірній теґ елемента <radio>, <dropdown>, <valueselector> або <select>. Відповідає одному придатному для вибору пункту у списку вибору з варіантів або спадному списку. Оскільки елементи <option> завжди є частиною списку елементів, зазвичай, у них немає власного ідентифікатора (атрибута «id»), але можливі варіанти і з таким атрибутом (див. нижче). Атрибути:
labelМітка варіанта (обов’язкова)
valueРядкове значення, яке повертатиме батьківський елемент, якщо пункт буде позначено або вибрано (обов’язкове)
checkedВизначає, чи має бути типово позначено пункт, «true» або «false». У <radio> і <dropdown> значення
checked="true"може бути використано лише для одного пункту. Якщо для жодного пункту не встановлено «checked», автоматично буде позначено перший пункт у батьківському елементі. У <select> може бути встановлено значення «checked» для довільної кількості пунктів. (необов’язкове, типовим значенням є «false»)idВизначення параметра «id» для елементів <option> є необов’язковим (фактично, не рекомендуємо вам встановлювати «id», якщо у цьому немає нагальної потреби). Втім, визначення «id» надасть вам змогу вмикати або вимикати <option> у динамічному режимі, встановивши з’єднання із булевою властивістю
ідентифікатор_radio.ідентифікаор_пунктуX.enabled. У поточній версії програми це працює лише у елементах <radio> і <dropdown>; для пунктів <valueselector> і <select> підтримки ідентифікаторів для пунктів не передбачено.
- <checkbox>
Визначає пункт для позначки, тобто однозначну відповідь (так чи ні) на певне питання, яку дають позначенням пункту або зняттям з нього позначки. Атрибути:
labelМітка поля для позначки (обов’язкова)
valueЗначення, яке повертатиме пункт для позначки, якщо його позначено (обов’язкове)
value_uncheckedЗначення, яке буде повернуто, якщо пункт для позначки не позначено (необов’язкове, типовим є "", тобто порожній рядок)
checkedВизначає, чи має бути пункт типово позначено, «true» (так) чи «false» (необов’язкова, типовим є значення «false»)
- <frame>
Елемент рамки, загалом, використовується як суто елемент компонування. Його опис розміщено у розділі щодо елементів компонування. Втім, його можна також зробити придатним для позначення, щоб він працював як звичайний пункт для позначки.
- <input>
Визначає поле для введення довільного тексту. Атрибути:
labelМітка поля введення (обов’язкова)
initialПочатковий текст у полі (необов’язковий, типовим значенням є «», тобто порожній рядок)
sizeОдне з таких значень: «small» (малий), «medium» (середній) та «large» (великий). «large» визначає багаторядкове поле для введення, «small» і «medium» — однорядкові (необов’язковий, типовим є значення «medium»).
requiredВизначає для надсилання коду, чи є обов’язковим заповнення цього поля. Див. документацію до властивості required (необов’язкова, типовим значенням є true).
- <matrix>
Таблиця для введення даних матриць (або векторів) у форматі графічного інтерфейсу.
Примітка
Цей елемент введення даних не оптимізовано для редагування великих масивів даних. Хоча немає строгих обмежень щодо розміру <matrix>, загалом, розмірності не повинні перевищувати десять рядків на десять стовпчиків. Якщо вам потрібен більший масив даних, дозвольте користувачам вибирати його як об’єкт R (цим варто скористатися як альтернативним варіантом майже всюди, де використовуються матриці).
Атрибути:
labelМітка таблиці (обов’язкова)
modeОдне зі значень, «integer», «real» або «string». Тип даних, які будуть прийнятними для таблиці (обов’язковий).
minМінімальне прийнятне значення (для матриць типу «integer» або «real») (необов’язкове, типовим значенням є найменше придатне для представлення число)
maxМаксимальне прийнятне значення (для матриць типу «integer» або «real») (необов’язкове, типовим значенням є найбільше придатне для представлення число)
allow_missingsВизначає, чи можна використовувати пропуски (порожні значення) у матриці. Використовується у матрицях з рядкових значень або у режимі «string» (необов’язковий параметр, типовим є значення «false» або не можна).
allow_user_resize_columnsЯкщо встановлено значення «true», користувач може додавати стовпчики введенням значень у найправіші (неактивні) комірки (необов’язковий параметр, типовим значенням є «true» або може).
allow_user_resize_rowsЯкщо встановлено значення «true», користувач може додавати рядки введенням значень у найнижчі (неактивні) комірки (необов’язковий параметр, типовим значенням є «true» або може).
rowsКількість рядків у матриці. Не працює, якщо allow_user_resize_rows="true".
Примітка
Цим значенням можна керувати за допомогою властивості "rows".
(Необов’язковий параметр, типовим є значення 2).
columnsКількість стовпчиків у матриці. Не працює, якщо allow_user_resize_columns="true".
Примітка
Цим значенням можна керувати за допомогою властивості "columns".
(Необов’язковий параметр, типовим є значення 2).
min_rowsМінімальна кількість рядків у матриці. Матрицю не можна буде стиснути до розміру, який є меншим за це значення. (Необов’язковий параметр, типовим є значення 0; див. також
allow_missings.)min_columnsМінімальна кількість стовпчиків у матриці. Матрицю не можна буде стиснути до розміру, який є меншим за це значення. (Необов’язковий параметр, типовим є значення 0; див. також
allow_missings.)fixed_heightПримусово встановити для елемента графічного інтерфейсу його початкову висоту. Не використовуйте у поєднанні з матрицями, у яких у якийсь спосіб може змінитися кількість рядків. Особливо корисно, якщо створюються елементи введення векторів (columns="1"). Якщо для цього параметра встановлено значення «true», програма не показуватиме горизонтальної смужки гортання, навіть якщо матриця буде ширшою за доступну у вікні ширину (оскільки це впливатиме на висоту). (необов’язкова, типовим значенням є «false»).
fixed_widthТрохи оманлива назва: припустімо, що кількість стовпчиків не зміниться. Останній (або типово єдиний) стовпчик буде розтягнуто так, щоб він зайняв усю доступну ширину. Не використовуйте у поєднанні з матрицями, де кількість рядків може змінитися. Особливо корисно під час створення елементів введення векторів (rows="1"). (необов’язкова, типовим значенням є «false»)
horiz_headersРядки, які слід використовувати для горизонтального заголовка, відокремлені символом «;». Якщо встановити значення "", заголовок буде приховано. (Необов’язковий параметр, типовим значенням є номер стовпчика).
vert_headersРядки, які слід використовувати для вертикального заголовка, відокремлені символом «;». Якщо встановити значення "", заголовок буде приховано. (Необов’язковий параметр, типовим значенням є номер рядка).
- <optionset>
Інтерфейс користувача для повторення набору параметрів для довільної кількості елементів (вступ до наборів параметрів). Атрибути:
min_rowsЯкщо вказано, набір буде позначено як некоректний, якщо у ньому менше вказаної кількості рядків (необов’язковий атрибут, ціле число).
min_rows_if_anyПодібний до min_rows, але перевірка щодо нього виконуватиметься, лише якщо існує принаймні один рядок (необов’язковий атрибути, ціле число).
max_rowsЯкщо вказано, набір буде позначено як некоректний, якщо у ньому більше вказаної кількості рядків (необов’язковий атрибут, ціле число).
keycolumnІдентифікатор стовпчика, який працюватиме як keycolumn. optionset із (коректним) keycolumn працюватиме як «керований» optionset. optionset без keycolumn надаватиме змогу вручну вставляти або вилучати записи. keycolumn має бути позначено як зовнішній (необов’язковий, типовою є відсутність keycolumn).
Дочірні елементи:
- <optioncolumn>
Оголошує один елемент optioncolumn набору. Для кожного значення, яке ви хочете отримати з optionset вам слід оголосити окремий елемент <optioncolumn>. Атрибути:
idІдентифікатор optioncolumn (обов’язковий атрибут, рядок).
externalВстановіть значення true (так), якщо optioncolumn керується з-поза меж optionset (необов’язкова, булева, типовим значенням є false).
labelЯкщо вказано, optioncolumn буде показано у стовпчику з цією міткою (необов’язковий, рядок, типово не показано).
connectВластивість, з якою слід з’єднати цей optioncolumn, задана як ідентифікатор у області <content>. Для зовнішніх <optioncolumn> відповідне значення буде встановлено у зовнішньо встановлене значення. Для звичайних (не зовнішніх) <optioncolumn> буде встановлено значення відповідного рядка властивості <optioncolumn>, якщо властивість змінюється у області вмісту. (необов’язкова, рядкова, типове значення — «не з’єднано»).
defaultЛише для зовнішніх стовпчиків: значення, яке є типовим для цього стовпчика, якщо значення у комірці немає. Використання є рідкісним. (необов’язкова, типовим значенням є порожній рядок)
- <content>
Оголошує вміст або графічний інтерфейс набору. Не має атрибутів. Як дочірні елементи можна використовувати усі звичайні активні, пасивні елементи та елементи компонування. Крім того, у ранніх версіях RKWard (аж до 0.6.3) можна було використовувати спеціальний дочірній елемент <optiondisplay>. Цей елемент вважається застарілим з часу RKWard 0.6.4, його слід просто вилучити з наявних додатків.
- <logic>
Додаткова специфікація логіки інтерфейсу, яку слід застосувати всередині області вмісту optionset. Див. довідкові матеріали щодо <logic>
- <browser>
Елемент призначено для вибору одної назви файла (або назви каталогу). Зауважте, що це поле приймає будь-який рядок, хоча його призначено лише для назв файлів:
labelМітка вікна вибору файла (необов’язкова, типовим значенням є «Enter filename»)
initialПочатковий текст у засобі вибору файлів (необов’язковий, типовим значенням є «», тобто порожній рядок)
typeОдне зі значень: "file", "dir" або "savefile". Щоб вибрати наявний файл, наявний каталог або файл, якого не існує, відповідно (необов’язковий аргумент, типовим значенням є "file")
allow_urlsВизначає, чи можна вибирати (нелокальні) адреси (необов’язковий аргумент, типовим є значення "false")
filterФільтр типу файлів, наприклад ("*.txt *.csv" для файлів .txt і .csv). Автоматично буде додано запис "All files" (усі файли) (необов’язкова, типовим значенням є "", тобто «усі файли»).
requiredВизначає для полів надсилання коду, чи обов’язково поле має бути заповнено. Зауважте, що це не обов’язково значить, що назва файла є коректною! Див. документацію щодо властивості required (необов’язкова, типовим значенням є true).
- <saveobject>
Елемент призначено для вибору назви об’єкта R для збереження даних (тобто об’єкта, якого, загалом, ще не існує, на відміну від varslot):
labelМітка поля введення (необов’язкова, типовим є значення «Save to:»)
initialПочатковий текст у полі введення (необов’язковий, типовим значенням є «my.data»)
requiredВизначає для надсилання коду, чи є обов’язковою наявність у полі прийнятної назви об’єкта. Див. документацію до властивості required (необов’язкова, типовим значенням є true).
checkableУ багатьох випадках збереження до об’єкта R є необов’язковим. У таких випадках поле для позначки можна інтегрувати до елемента saveobject за допомогою цього атрибута. Якщо для нього встановлено значення true, saveobject буде активовано або деактивовано цим полем для позначки. Див. документацію щодо властивості active saveobject (необов’язковий, типовим значенням є false).
checkedЛише для saveobject з позначкою: визначає, чи буде пункт позначено типово (необов’язковий, типовим значенням є false (не позначено))
- <spinbox>
Поле лічильника, у яке користувач може або безпосередньо ввести числове значення, або скористатися для того, щоб вказати значення, маленькими стрілочками вгору і вниз ліворуч від поля значення. Атрибути:
labelМітка поля лічильника (рекомендуємо вказати, типовим значенням є «Enter value:»)
minНайменше значення, яке користувач має право ввести до поля лічильника (необов’язкове, типовим значенням є найменше значення, яке технічно може бути показано у полі лічильника).
maxНайбільше значення, яке користувач має право ввести до поля лічильника (необов’язкове, типовим значенням є найбільше значення, яке технічно може бути показано у полі лічильника).
initialПочаткове значення, яке буде показано у полі лічильника (необов’язкове, типовим значенням є «0»)
typeОдне зі значень: "real" або "integer". Визначає, можна у полі лічильника вказувати дійсні числа чи лише цілі (необов’язковий аргумент, типовим значенням є "real")
default_precisionМає значення, лише якщо поле лічильника належить до типу «real». Впливає на кількість десяткових цифр, які може бути показано у полі лічильника (саме цю кількість кінцевих нулів буде показано). Після натискання користувачем кнопочки зі стрілкою вгору або вниз, ці десяткові знаки буде змінено. Втім, користувач може вручну ввести і значення із вищою точністю (див. нижче) (необов’язковий, типовим є значення «2»).
max_precisionМаксимальна кількість цифр, які може бути введено (необов’язковий аргумент, типовим є значення «8»)
- <formula>
За допомогою цього елемента із розширеними можливостями користувач може вибрати формулу або набір взаємодій на основі вибраних змінних. Наприклад, для узагальненої лінійної моделі користувач може вказати елементи взаємодії у моделі. Атрибути:
fixed_factorsІдентифікатор varslot, що містить вибрані фіксовані фактори (обов’язковий)
dependentІдентифікатор varslot, що містить вибрану залежну змінну (обов’язковий)
- <embed>
Вбудовування іншого додатка у поточний (див розділу щодо вбудовування). Атрибути:
componentЗареєстрована назва компонента для вбудовування (див. розділ щодо реєстрування компонентів) (обов’язкова)
as_buttonЯкщо встановлено значення «true», у графічному інтерфейсі, до якого вбудовується графічний інтерфейс, буде показано лише кнопку, натискання якої відкриватиме (у окремому вікні) вбудований інтерфейс (необов’язковий, типовим значенням є «false»).
labelМає значення, лише якщо as_button="true": мітка кнопки (рекомендуємо вказати, типовою є мітка "Options")
- <preview>
Поле для позначки для вмикання або вимикання функціональної можливості попереднього перегляду. Зауважте, що починаючи з версії 0.6.5 RKWard елементи попереднього перегляду, <preview>, виокремлюються у діалогових вікнах додатків (не майстрів): вони розташовуються у стовпчику з кнопками, незалежно від того, де їх було визначено у описі графічного інтерфейсу. Втім, варто визначати їх у відповідному місці компонування з міркувань зворотної сумісності. Атрибути:
labelМітка панелі (необов’язкова, типовим є значення "Preview")
modeТип попереднього перегляду. Підтримувані типи: «plot» (див. розділ щодо попереднього перегляду графіків), «output» (див. розділ щодо попереднього перегляду виведених даних (HTML)), «data» (див. розділ щодо попереднього перегляду даних) і «custom» (див. розділ щодо нетипових попередніх переглядів) (необов’язковий, типовим є тип «plot»)
placementРозташування області попереднього перегляду: «attached» (у основній робочій області), «detached» (у окремому вікні), «docked» (у діалоговому вікні додатка) і «default» (у поточній версії те саме, що і «docked», але може стати чимось визначеним користувачем у майбутньому). Загалом, рекомендуємо лишити типовий варіант з міркувань збереження однорідності графічного інтерфейсу (необов’язковий, типовим є значення «default»).
activeВизначає, чи буде панель попереднього перегляду типово активною. Загалом, типово варто робити активними лише панелі попереднього перегляду у вікні додатка (docked), і навіть для цих панелей є причина не робити їх активними (необов’язковий, типовим значенням є «false»).
- <logic>
Елемент, що визначає розділ «logic». Усі наведені нижче елементи можна використовувати лише всередині елемента <logic>. Елемент <logic> можна використовувати лише як безпосередній дочірній елемент елемента <document> (не більше одного на документ) або елемента <optionset> (не більше одного на optionset). Розділ logic документа одночасно стосується графічних інтерфейсів <dialog> і <wizard>.
- <external>
Створює (рядкову) властивість, яка призначається для з’єднування із зовнішньою властивістю, якщо додаток вбудовують. Див. розділ щодо «незавершених» додатків. Атрибути:
idІдентифікатор нової властивості (обов’язковий)
defaultТипове рядкове значення нової властивості, тобто значення, яке використовується, якщо властивість не з’єднано із зовнішньою властивість (необов’язкове, типовим значенням є порожній рядок).
- <i18n>
Створює нову (рядкову) властивість, яка має забезпечувати роботу придатної до перекладу мітки. Атрибути:
idІдентифікатор нової властивості (обов’язковий)
labelМітка. Її можна буде перекладати. (обов’язкова)
- <set>
Встановлює для властивості фіксоване значення (звичайно ж, якщо ви додатково з’єднаєте властивість із якоюсь іншою властивістю, значення не залишатиметься фіксованим). Наприклад, якщо вами вбудовано додаток, але ви хочете приховати якісь з його елементів, ви можете встановити для властивості «visibility» цих елементів значення «false». Це особливо корисно для вбудованих додатків та додатків, до яких відбувається вбудовування. Зауваження: якщо для одного
idвказано декілька <set>, пріоритет матиме останнє з визначень. Це іноді буває корисним, якщо використовуються фрагменти коду за допомогою <include>. Атрибути:idІдентифікатор властивості для встановлення (обов’язковий)
toРядкове значення, яке слід встановити для властивості to (обов’язкове). Зауваження: для булевих властивостей, зокрема видимості, увімкненості, вам типово слід встановити для атрибута або to="true" або to="false".
- <convert>
Створити нові булеві властивості, які залежать від стану однією або декількох різних властивостей. Атрибути:
idІдентифікатор нової властивості (обов’язковий)
sourcesІдентифікатори властивостей, від яких залежатиме ця властивість. Можна вказати одну властивість або декілька властивостей, відокремлених крапками з комами, «;» (обов’язковий).
modeРежим перетворення або дії. Одне з таких значень: «equals», «notequals», «range», «and», «or». У режимі equals властивість матиме значення «true», лише якщо значення обох операндів дорівнюють атрибуту «standard» (див. нижче). У режимі notequals властивість матиме значення «true», лише якщо значення усіх операндів буде відмінним від атрибута «standard» (див. нижче). У режимі «range» усі операнди мають бути числовими (цілими або дійсними значеннями). Властивість матиме значення «true», лише якщо усі операнди належатимуть діапазону, що визначається атрибутами min і max (див. нижче). У режимі «and» операнди мають бути булевими властивостями. Властивість-результат матиме значення «true», лише якщо усі операнди одночасно дорівнюють «true». У режимі «or» усі операнди мають бути булевими властивостями. Властивість-результат матиме значення «true», якщо принаймні один з операндів матиме значення «true». (обов’язковий)
standardМає значення лише у режимах equals або notequals: рядкове значення з яким слід виконати порівняння (обов’язковий, якщо використано один з цих режимів).
minМає значення лише у режимі range: мінімальне значення, з яким слід виконувати порівняння (необов’язкове, типовим є найменше число із рухомою крапкою, яке може бути представлено на комп’ютері).
maxМає значення лише у режимі range: максимальне значення, з яким слід виконувати порівняння (необов’язкове, типовим є найбільше число із рухомою крапкою, яке може бути представлено на комп’ютері).
require_trueЯкщо встановлено значення «true», властивість стане обов’язковою і вважатиметься встановленою коректно, якщо її станом буде true/увімкнено. Отже, якщо властивість має значення false, натискання кнопки блокуватиметься (необов’язкова, типовим значенням є «false»).
Застереження
Якщо ви використовуєте цей атрибут, переконайтеся, що користувач зможе легко визначити, що слід робити, наприклад, покажіть йому пояснювальний текст за допомогою <text>.
- <switch>
Створити нову властивість, яку буде пов’язано із різними іншими властивостями (або сталими рядками) на основі умов щодо певного значення властивості. Надає змогу створювати логічні конструкції, подібні до
if()абоswitch(). Атрибути:idІдентифікатор нової властивості (обов’язковий)
conditionІдентифікатор властивості condition (обов’язковий)
Дочірні елементи:
- <true>
Властивість, що визначає виконання умови, є булевою, ви можете вказати два дочірні елементи <true> і <false> (і лише ці елементи). (Обов’язковий, якщо також вказано <false>)
- <false>
Якщо властивість, що визначає виконання умови, є булевою, ви можете вказати два дочірні елементи <true> і <false> (і лише ці елементи). (Обов’язковий, якщо також вказано <true>)
- <case>
Якщо властивість в умові не є булевою, ви можете вказати довільну кількість елементів <case>, по одному на кожне значення властивості (обов’язково слід вказати принаймні один такий елемент, якщо властивість в умові не є булевою).
- <default>
Якщо властивість, яка визначає умову, не є булевою, поведінку у випадку, якщо жоден з елементів <case> не відповідає значенню властивості в умові, можна визначити за допомогою додаткового елемента <default>. (необов’язковий, можна використовувати лише один раз у поєднанні із одним або декількома елементами <case>)
Дочірні елементи <true>, <false>, <case> і <default> приймають такі атрибути:
standardЛише для елементів <case>: значення, з яким слід порівнювати властивість умови (обов’язковий, рядок).
fixed_valueФіксований рядок, який має бути надано як значення властивості <switch>, якщо справджується поточна умова (обов’язковий, якщо не вказано dynamic_value).
dynamic_valueІдентифікатор
idвластивості призначення, який має бути надано як значення властивості <switch>, якщо справджується поточна умова (обов’язковий, якщо не вказано fixed_value).
- <connect>
З’єднує дві властивості. Клієнтську властивість буде змінено при зміні керівної властивості (але не навпаки!). Атрибути:
clientІдентифікатор клієнтської властивості, тобто властивості, яку буде скориговано (обов’язковий)
governorІдентифікатор керівної властивості, тобто властивості, яка змінює клієнтську властивість. Може включати модифікатор (обов’язковий)
reconcileЯкщо має значення «true», клієнтська властивість скоригує керівну властивість під час з’єднання так, щоб керівна властивість приймала лише ті значення, які є прийнятними для клієнтської (наприклад, припустімо, що керівна властивість є числовою із мінімальним значенням «0», а клієнтська — числовою властивістю із мінімальним значенням «100». Мінімальне значення обох властивостей стане рівним 100, якщо reconcile="true"). Загалом, працює лише для властивостей, які належать до одного базового типу (необов’язковий, типовим значенням є «false»).
- <dependency_check>
Створює булеву властивість, яка має значення true, якщо вказані залежності задоволено, і значення false, якщо це не так. Синтаксис xml цього елемента є таким самим, як і у елемента <dependencies>, описаного у довіднику щодо
.pluginmap. У версії RKWard 0.6.1, до уваги беруться лише специфікації версій RKWard і R, а не залежності від пакунків або pluginmap-ів.- <script>
Визначає код скрипту для керування логікою графічного інтерфейсу. Докладніший опис можна знайти у розділі щодо керування логікою графічного інтерфейсу за допомогою скриптів. Код скрипту, який слід виконати, може бути подано або за допомогою атрибута
"file", або як (коментований) текст у елементі. Елемент <script> не можна використовувати у розділі <logic> optionset. Атрибути:fileНазва файла скрипту. (обов’язкова)