Принцип работы комбобоксов (combobox)




В текстуре ui_details.dds, есть две текстуры: ui_inGame2_combobox и ui_inGame2_combobox_linetext.

Обе текстуры являются в свою очередь ещё раз составными. Первая состоит из 9 частей, вторая из трёх. Используются они движком для опций главного меню в качестве выпадающих линий. Оказалось, весьма непросто понять смысл их работы.

Схема построения комбобокса:

1)<texture id="ui_inGame2_combobox_lt"x="700"y="0"width="5" height="5"/>

2)<texture id="ui_inGame2_combobox_l"x="700"y="5"width="5"height="40"/>

3)<texture id="ui_inGame2_combobox_lb"x="700"y="45"width="5"height="5"/>

 

4)<texture id="ui_inGame2_combobox_t"x="705"y="0"width="165"height="5"/>

5)<texture id="ui_inGame2_combobox_back"x="705"y="5" width="165"height="40"/>

6)<texture id="ui_inGame2_combobox_b"x="705"y="45"width="165"height="5"/>

 

7)<texture id="ui_inGame2_combobox_rb"x="870"y="0"width="1"height="5"/>

8)<texture id="ui_inGame2_combobox_r"x="870"y="5"width="1"height="40"/>

9)<texture id="ui_inGame2_combobox_rt"x="870"y="45"width="1" ="5"/>

1-4-7
2-5-8
3-6-9


linetext строится по тому же принципу, но уже из 3 частей

1-2-3

Подробно принцип разделения можно посмотреть в самом файле ui_details.xml, смысл в том, что из частей собирается вся текстура. Т.е. делится на 9 и на 3 части соответственно и расписывается.

Предположительно это было сделано ПЫСовцами для «защиты наработок» или же просто из вредности. Эти текстуры запрашиваются разными конфигурацинными файлами и судя по их типу, ясно что составлялось это в самом начале. Всвязи с этим и такой гемор видимо


===========================================================
align="c"

Этот параметр существует для текстовых выражений в окне с заданными размерами и отвечает за выравнивание текста по центру. Т.е. мы пишем текст «я хочу разобраться в сталкере », при добавлении этого параметра в строку с текстом, в этом окне будет найден центр, в котором будет расположен текст. При отсутствии параметра, отсчёт координат идёт от левого верхнего угла окна в котором вписан текст.

align="r"

С этим параметром выравнивание идёт по правому краю.

align="l"

С этим параметром выравнивание идёт по левому краю.

--------------------------------------------------------------------------------------------------------------------

vert_align="c"

Выравнивает по центу по вертикали. При отсутствии параметра выравнивает по верхнему краю

===========================================================

always_show_scroll="0"

Этот параметр отвечает за наличие отображения ленты прокручивания(скролл-бара). При параметре "0" или "false" будет отсутствовать. При параметре "1" или же отсутствии всей строки в общем, будет всегда отображаться

=====================================================================

<auto_static x="" y="" width="" height="" stretch="1">

<texture> </texture>

</auto_static>

Инструмент для создания статичной картинки. Вводим координаты (относительно) окна, в которое вставляем текстурку, её высоту и длину, если хотим задать свою. Если хотим использовать дефолтную, то нужны только координаты и путь до текстуры, или её название, если она является частью сборной.

=====================================================================

<auto_frameline x="" y="" width="" height="">

<texture> </texture>

</auto_frameline>

Инструмент для создания линии. Используется в составном виде.
Пример:
ui_inGame2_edit_box

<texture id="ui_inGame2_edit_box_b" x="700" y="0" width="5" height="50" />

<texture id="ui_inGame2_edit_box_back" x="705" y="0" width="160" height="50" />

<texture id="ui_inGame2_edit_box_e" x="865" y="0" width="5" height="50" />

=====================================================================

<button h="20"/>

Этот параметр отвечает за высоту кнопок с текстом. Высота измеряется в пикселях
=====================================================================

can_select="1"

При добавлении этого параметра в текстовую строку или (возможно текстуру), объект станет интерактивным (кликабельным).

=====================================================================

color="white" || color name= r="255" g="255" b="255"

<text_color>

<e color="white"/>

</text_color>

Этот параметр отвечает за присвоение тексту цвета. Можно использовать в двух вариантах. Указывать RGB цвет, или же прописать текстом. Чтобы прописывать цвет текстом, необходимо, чтобы этот цвет уже был прописан в «color_defs.хml »
По умолчанию всегда везде и во всём используется белый цвет.

=====================================================================
«ТЕКСТ» complex_mode="1"

При этом значении текст будет расположен не горизонтально, а вертикально

«
Т
Е
К
С
Т
«

Если значение равно "0" то текст будет горизонтальным:
=====================================================================

invert="1"

Инвентирует(переворачивает) ползунок. (Используется в настройках графики)

 

=====================================================================
is_integer="1"

Отвечает за наличие ползунка на линии. (Используется в настройках графики)

=====================================================================

list_length="6"

Этот параметр добавляется в листы, где будет иметься возможность выбора вариантов.
«6» - количество строк, отображаемых. Всё остальное будет скрыто и будет прокручиваться. Имеет смысл выставлять сразу под количество отображаемых строк.
Пример окна – выбор рендеров или разрешений экрана. Какое число выставим, столько вариантов и будет отображаться

=====================================================================
<main_map_frame x="5" y="6" width="708" height="457" dx="0" dy="0" sx="0" sy="0">

</main_map_frame>

<! Окно с скролл-барами и кнопками навигации>

Для настройки отсупов скролл баров:
dx="0" dy="0" – настройки отступа по оси Х и У для вертикального и горизонтального скролл-баров
sx="0" sy="0" – настройки отступа по оси У и Х для вертикального и горизонтального скролл-баров

=====================================================================

radio="1"

Добавляет к тексту интерактивные кнопки для выбора опций. Используется в ПДА

=====================================================================

step="1"

Применятеся для ползунков и обозначает их шаг. Чем больше число, тем больше шаг. Настраивается в зависимости от самого значения. (Используется в настройках графики)

=====================================================================
stretch="1"

Этот параметр отвечает за применение заданных размеров текстуре/видео.
Должен стоять в той же строчке, что и размеры и координаты.
На координаты не влияет.
Если будет равным "0" или отсутствовать, то размер текстуры будет равен её настоящему размеру

Пример

 

<auto_static x="150" y="130" width="665" height="500" stretch="1" >

<texture>ui\Main_menu\ PDA_background </texture>

</auto_static>

При таком виде, текстура «PDA_background » имеющая размеры 1024х768 ужмётся в размеры 665х500 с сохранением пропорций и будет находиться по координатам x="150" y="130", если параметр будет stretch="0", то текстура «PDA_background » будет иметь свой первоначальный размер 1024х768 и соответственно занимать намного больше места, чем ей отводилось.
=====================================================================


<texture a="10">

Инструмент для задания прозрачности текстуре. 100 – полная непрозрачность
Работает с альфа-каналом текстуры

=====================================================================

vert_interval="12"

Этот параметр отвечает за отступ между текстом. Измеряется в пикселях.
При его отсутствии, интервал между строками будет равен нулю.
Используем там, где у нас будет много текста, чтобы он не накладывался друг на друга.

=====================================================================



Поделиться:




Поиск по сайту

©2015-2024 poisk-ru.ru
Все права принадлежать их авторам. Данный сайт не претендует на авторства, а предоставляет бесплатное использование.
Дата создания страницы: 2019-04-28 Нарушение авторских прав и Нарушение персональных данных


Поиск по сайту: