Meters

Meter - обьект, отвечающий за визуальную составляющую скина. Вместе с measures являются двумя составляющими скина.

Использование

Meter не имеет «значения», как их имеют measures. Некоторые meters могут отображать и отвечать на информационные значения двумя способами:

  • Meter может быть связан с measure. Таким образом meter будет отображать значения measure, в зависимости от своего типа. Например, meter string будет отображать строковое значение measure в текстовом блоке, а meter bar - отображать значение того же measure в процентах от максимального значения. Для некоторых типов meter необходима привязка к measure (для остальных это не обязательно)
  • Meter может использовать все варианты переменных. Сюда входит раздел с переменными, который даёт альтернативный способ использования значений measure.

Не все meters используются для отображения информации. Некоторые используются для создания статичных елементов, таких как фоновые изображения, рамки и метки (англ. labels, метки или ярлыки, короткая фраза или слово, например «Настройки:»). Конкретные параметры и требования к каждому типу meter детально описаны в отдельных статьях.

Формат

Meter записывается как раздел в скине. Все meters имеют параметр Meter, который нужет для определения всего раздела как тип meter. Большинство параметров meter зависят от его типа, но есть некоторые общие параметры, которые действительны для некоторыз или всех meters.

Ниже приведён пример полностью рабочего раздела meter:

1
2
3
[MeterSectionName]
Meter=String
Text=Привет, я строка текста!
../../_images/format.png

Позиционирование

Meter имеет определённые положение, которое задаётся параметрами X и Y, и размеры, которые задаються параметрами W и H. Это значит, что meter ограничен прямоугольным блоком пикселей, даже если он имеет прозрачный фон и кажется «свободно-плавающим».

Meters расположены в пределах окна скина. Это значит, что при перемещении скина meters перемещаются вмечте с ним. А так же, позиции meters задаються относительно левого верхнего угла скина, а не рабочего стола. Например, meter с параметром X=15 начинается с 15 пикселей вправо от левого края скина.

Размер окна скина зависит от положения и размеров всех meters при загрузке скина. Если в скине включен параметр DynamicWindowSize, то окно будет «выдвинуто» наружу при перемещени meters вправо или вниз или масштабироварии по высоте или ширине. Однако, если meters будут влево за X=0 или вверх за Y=0, то они будут обрезаны или вовсе не видны. Технически никаких ограничений в размере окон скинов нет, но, практически, скин должен быть сделан так, что бы соответствовать размерам области рабочего стола.

../../_images/format-area.png

Слева: скин с одним meter, который кажется «свободно-плавающим». Справа: тот же скин, но с добавлением цветного фона. Здесь видно, что meter (оранжевый) в действительности находится внутри окна скина (зелёный) и «толкает» границы этого окна в правый нижний угол.

Порядок

Порядок meters в коде скина важен и определяет следующее:

  • Позиция «Z». Meters рисуються по порядку. Те, которые написаны ниже, появляются поверх тех, которые выше. Например, фоновое изображение, которое находится под всеми meters, должно быть написано самым первым в коде скина.
  • Относительное положение. Положение meter по X или Y можно установить «относительно» положения предыдущего meter. Это полезно для групп meters, которые следуют за одним шаблоном, например списки, вкладки или пункты меню.

MeterStyles

Meters могут использлвать параметры ищ других meters. Используя параметр MeterStyle, один meter может наследовать все параметры одного или нескольких «родительских» разделов.

Больше на странице MeterStyle.