From 7721e31e7811252e8c2174df417aca5064b520f0 Mon Sep 17 00:00:00 2001 From: MihailRis Date: Sun, 18 Feb 2024 23:51:52 +0300 Subject: [PATCH] =?UTF-8?q?Created=20XML=20=D1=80=D0=B0=D0=B7=D0=BC=D0=B5?= =?UTF-8?q?=D1=82=D0=BA=D0=B0=20=D0=B8=D0=BD=D1=82=D0=B5=D1=80=D1=84=D0=B5?= =?UTF-8?q?=D0=B9=D1=81=D0=B0=20(markdown)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- XML-разметка-интерфейса.md | 75 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 75 insertions(+) create mode 100644 XML-разметка-интерфейса.md diff --git a/XML-разметка-интерфейса.md b/XML-разметка-интерфейса.md new file mode 100644 index 0000000..efebcd1 --- /dev/null +++ b/XML-разметка-интерфейса.md @@ -0,0 +1,75 @@ +# Специфические типы + +**2D вектор** - пара чисел, разделенная запятой. +Примеры: +- `"500,200"` +- `"0.4,53.01"` +- `"0,0"` +**3D вектор** - три числа, разделенная запятой. +Примеры: +- `"60,30,53"` +- `"0.4,0.1,0.753"` +**4D вектор** - четыре числа, разделенная запятой. +Примеры: +- `"10,5,10,3"` +- `"0.1,0.5,0.0,0.0"` +**RGBA цвет** - на данный момент доступна только HEX запись. +Примеры: +- "#FF8000" - оранжевый непрозрачный +- "#FFFFFF80" - белый полупрозрачный +- "#000000FF" - черный непрозрачный +# Общие атрибуты элементов + +- `id` - идентификатор элемента. Тип: строка. +- `pos` - позиция элемента. Тип: 2D вектор. +- `size` - размер элемента. Тип: 2D вектор. +- `color` - цвет элемента. Тип: RGBA цвет. +- `margin` - внешний отступ элемента. Тип: 4D вектор. + Порядок: `"left,top,right,bottom"` +- `visible` - видимость элемента. Тип: логический ("true"/"false"). + +# Общие атрибуты контейнеров + +В число контейнеров также входят панели и кнопки. +- `padding` - внутренний отступ элемента. Тип: 4D вектор. + Порядок: `"left,top,right,bottom"` +- `scrollable` - возможность скроллинга. Работает только у Panel. Тип: логический. + +# Общие атрибуты панелей + +В число панелей также входят кнопки. +- `max-length` - максимальная длина, на которую растягивается панель до начала скроллинга (если scrollable = true). Тип: число + +# Основные элементы + +## Кнопка `button` + +Внутренний текст - текст кнопки. + +- `text-align` - выравнивание текста ("left", "center" или "right"). Тип: строка. +- `onclick` - lua функция вызываемая при нажатии на кнопку. + +## Изображение `image` + +- `src` - имя изображения в папке textures без указания расширения. Тип: строка. Например `gui/error` + +## Изображение `image` + +- `src` - имя изображения в папке textures без указания расширения. Тип: строка. Например `gui/error` + +# Текстовое поле `textbox` + +Внутренний текст - изначально введенный текст + +- `placeholder` - текст подстановки (используется текстовое поле пусто) +- `consumer` - lua функция-приемник введенного текста. Вызывается только при завершении ввода + +## Ползунок `trackbar` + +- `min` - минимальное значение. Тип: число. По-умолчанию: 0 +- `max` - максимальное значение. Тип: число. По-умолчанию: 1 +- `value` - изначальное значение. Тип: число. По-умолчанию: 0 +- `step` - размер деления ползунка. Тип: число. По-умолчанию: 1 +- `track-width` - ширина указателя (в делениях). Тип: число. По-умолчанию: 1 +- `consumer` - lua функция-приемник установленного значения +- `supplier` - lua функция-поставщик значения \ No newline at end of file