Учебное пособие по FL


Перейти к содержанию

приборная доска

глава 7

Dashboard: Component API (Приборная доска: Component API)


Здесь объясняется, как настроить и создать новый компонент на приборной панели.

Основы

Компонент приборной панели строится из файла инициализации (*.INI) и набора растровых изображений (поддерживаются форматы *.BMP, *.JPG и *.TGA), которые определяют внешний вид компонента (скин). INI-файлы находятся в папке Artwork приборной панели ([FL Studio]/Plugins/Fruity/Generators/Dashboard/Artwork), или в подпапке данной папки. Картинки могут находиться где угодно, но лучше, если они будут в одной папке с файлом INI.
В INI-файле может быть несколько разделов:
· Info
· Properties (Свойства) (необязательно)
· Items (Элементы) (только для некоторых типов компонентов)
Каждый раздел содержит одно или несколько свойств. Запись свойства выглядит так:
propertyName=value
Для простоты использования лучше использовать относительный путь к файлам картинок:
· Относительно папки Artwork: [Folder]\image.bmp (связывает с Artwork\[Folder]\image.bmp).
· Относительно файла INI: .\folder\image.bmp (связывает с Artwork\[INI Folder]\image.bmp).

Разделы файла INI
Раздел [Info]

В раздел info следует включить следующие свойства:
· Name – Название регулятора. Оно должно отличаться от названий других. Это обязательное свойство.
· Kind – Тип компонента. Возможные значения: 0 = Dig Wheel; 1 = Slider; 2 = Wheel; 3 = Panel; 4 = Switch; 5 = Label; 6 = Image; 7 = Selector; 8 = Patch selector; 9 = Page selector; Это обязательное свойство.
· Default – Показывает, является ли данный регулятор заданным по умолчанию для своего вида (Default=1) или нет (Default=0). Регулятор по умолчанию используется в пресетах панели, в которых содержатся недостающие регуляторы (не установленные в данной копии приборной панели). Это необязательное свойство.
· Background – Это ссылка на изображение, которое будет использоваться как фон регулятора. Заданный фон определяет размеры регулятора. Чтобы появилась возможность делать фон прозрачным, необходимо использовать 8-битный .bmp-файл. Не все регуляторы поддерживают прозрачность. Это необязательное свойство.
· Foreground - Это ссылка на изображение, которое будет использоваться как передний план регулятора. Некоторые регуляторы не имеют это значение (например, page selectors). Это необязательное свойство.

Раздел [Properties]

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

Раздел [Items]

Этот раздел действителен только для селекторов и селекторов патчей. Он описывает значения, которые будут доступны в селекторе. Значения определяются как список из строк текста (каждая строка – одно значение), заканчивающаяся "=": valueName=
Для регулятора селектора патчей также необходимо включить банк и номера программ, соотносящиеся с именем инструмента:
valueName=Bank MSB, Bank LSB, Program Number
Пример:
[items]
100% Left=
50% Left=
Centered=
50% Right=
100% Right=

Типы компонентов

Более подробное описание для каждого типа компонентов.
DigiWheel (Kind=0)
· Колёсико, на котором отображаются различные изображения для каждого значения (изображения должны быть размещены последовательно по горизонтали).
· Может использоваться как контроллер.
· Фон используется как рамка вокруг регулятора.
· Передний план используется для отображения значений.
Дополнительные параметры, которые поддерживаются в разделе [Properties] (не видны в меню компонентов):
· Border – Определяет размер рамки фонового изображения:
Border=left, top, right, bottom
Slider (Kind=1)
· Регулятор двигающийся вверх-вниз.
· Может использоваться как контроллер.
· Передний план используется как кнопка ползунка. Как правило, это 32-bit *.TGA-файл, который может быть прозрачным.
Wheel (Kind=2)
· Регулятор в виде колёсика, с индикатором значения в виде линии.
· Может использоваться как контроллер.
· Изображение переднего плана не используется.
Дополнительные параметры, которые поддерживаются в разделе [Properties] (не видны в меню компонентов):
· Line Length – длина линии индикатора в виде процентов от ширины/длины регулятора.
Panel (Kind=3)
· Позволяет добавлять фон по выбору к панели приборной доски.
· Изображение переднего плана не используется.
Дополнительные параметры, которые поддерживаются в разделе [Properties] (не видны в меню компонентов):
· Border - Определяет размер рамки фонового изображения:
Border=left, top, right, bottom Switch (Kind=4)
· Кнопка-переключатель с двумя состояниями (вкл/выкл).
· Может использоваться как контроллер.
· Изображение переднего плана должен содержать две картинки: одну для включенного состояния, другую для выключенного.
· Фон не используется.
Label (Kind=5)
· Простой регулятор, где отображаются текстовые заметки.
· Изображения фона и переднего плана не используются.
Image (Kind=6)
· Этот регулятор просто показывает изображение.
· Изображение переднего плана не используется.
Selector (Kind=7)
· Регулятор со списком пользовательских значений
· Список значений доступен в разделе [Items] *.INI-файла.
· Изображение переднего плана не используется.
· Может использоваться как контроллер.
Patch Selector (Kind=8)
· Позволяет пользователю выбрать патч из списка предустановленных значений.
· Список значений доступен в разделе [Items] *.INI-файла.
· Каждое значение должно иметь информацию Bank MSB, Bank LSB и Patch Number.
· Изображение переднего плана не используется.
Page Selector (Kind=9)
· Особый тип регуляторов, позволяющий выбирать страницу интерфейса (если их несколько).
· Изображение переднего плана не используется.

Заметки и советы

· Регуляторы идентифицируются по названиям, поэтому они не должны повторяться.
· Предпочтительнее размещать все регуляторы в особые группы в каталоге отдельно от остального.
· Если для регулятора не определено фоновое изображение, он будет прозрачным. Не все регуляторы поддерживают это свойство.
· Взгляните на готовые регуляторы, они подскажут вам большую часть того, что Вы хотите знать.

Главная | глава 1 | глава 2 | глава 3 | глава 4 | глава 5 | глава 6 | глава 7 | глава 8 | глава 9 | глава 10 | Карта сайта


Назад к содержанию | Назад к главному меню
Hosted by uCoz