Fl studio Dashboard Component API

Данная статья является частью цикла статей "Fl Studio"

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

Основы[править]

Компонент Dashboard построен из файла инициализации (*.INI) и набора растровых изображений (поддерживается *.BMP, *.JPG и *.TGA ), которые определяют внешний вид компонента (оболочку). INI файлы находятся в папке Artwork для Dashboard ([FL Studio]/Plugins/Fruity/Generators/Dashboard/Artwork), либо в подпапке этой папки. Изображения могут быть размещены где угодно, но лучше всего разместить их там же где INI-файл, так вы сможете ссылаться на изображения напрямую, без пути.

В INI-файле может быть несколько разделов:

  • Info (информация) -
  • Properties (свойства) (необязательно)
  • Items (элементы) (только для некоторых типов компонентов)

Каждый раздел содержит одно или несколько свойств. Строка будет выглядеть следующим образом:

propertyName=value

Для удобства использования, лучше использовать относительные пути, когда вы даёте ссылку на файлы изображений. Вы можете ссылаться на папку по отношению к позиции INI или папки Artwork:

  • Относительно папки Artwork: [Папка]\image.bmp (связывает с Artwork\[Папка]\image.bmp).
  • Относительно файла INI: .\папака\image.bmp (связывает с Artwork\[INI Папка]\image.bmp).

Разделы файла INI[править]

INI-файл содержит следующие разделы:

Раздел [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). Контроллер по умолчанию используется в пресетах панели, в которых содержатся недостающие контроллеры (не установленные в данной копии Dashboard). Например, отсутствующие компоненты колёс, заменяются компонентами по умолчанию. Это необязательное свойство.
  • Background (фон) – это ссылка на изображение, которое будет использоваться в качестве фона контроллера. Если фон задан, он определяет ширину и высоту контроллера. Если вы хотите использовать прозрачный фон, вы должны использовать 8-битный .bmp-файл. Не все элементы управления поддерживает прозрачность. Это необязательное свойство.
  • Foreground (передний план) - это ссылка на изображение, которое будет использоваться в качестве переднего плана контроллера. Не все элементы управления будут использовать это значение (например переключатели страниц). Это необязательное свойство.

Раздел [Properties][править]

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

Раздел [Items][править]

Этот раздел предназначен только для переключателей и переключателей патчей. Это определяет значения, которые будут доступны в переключателе. Значения задаются в виде списка текстовых строк (каждая строка это значение), оканчивающиеся на "=":

valueName=

Для контроллеров переключателей патчев, вы также включаете банк и номер программы, которые соответствуют названиям инструментов:

valueName=Bank MSB, Bank LSB, Program Number

Пример:

[items]

100% Left=

50% Left=

Centered=

50% Right=

100% Right=

Типы компонентов[править]

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

DigiWheel (Kind=0)[править]

  • Колесо, которое отображает различные изображения для каждого значения (изображения должны быть упорядочены последовательно по горизонтали).
  • Это может быть использовано в качестве контроллера.
  • Фон используется для рамки вокруг контроллера.
  • Передний план используется для для значений (см. прилагаемый контроллер DigiWheel).

Этот дополнительный параметр поддерживаются в разделе [Properties] (не отображаются в инспекторе компонентов):

  • Border (рамка) – определяет размер границы фонового изображения следующим образом:

Border=left, top, right, bottom Slider (Kind=1)

Ползунок (Kind=1)[править]

  • Контроллер ползунок вверх-вниз.
  • Может использоваться в качестве контроллера.
  • Передний план используется как ручка ползунка. Как правило, это 32-bit *.TGA-файл, который может быть прозрачным.

Колесо (Kind=2)[править]

  • Контроллер колесо с линейным индикатором значений.
  • Может использоваться в качестве контроллера.
  • Изображение переднего плана не используется.

Этот дополнительный параметр поддерживаются в разделе [Properties] (не отображаются в инспекторе компонентов):

  • Line Length (длина линии) - длина линии индикатора, в процентах от ширины/длины контроллера.

Панель (Kind=3)[править]

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

Этот дополнительный параметр поддерживаются в разделе [Properties] (не отображаются в инспекторе компонентов):

  • Border (рамка) - определяет размер границы фонового изображения следующим образом:

Border=left, top, right, bottom

Включатель (Kind=4)[править]

  • Это кнопка с двумя состояниями (вкл-выкл).
  • Может использоваться в качестве контроллера.
  • Передний план должен содержать две картинки, одна вкл. и одна выкл.
  • Фон не используется.

Метка (Kind=5)[править]

  • Это простое контроллер, который отображает текстовые метки.
  • Фон и передний план не используются.

Изображение (Kind=6)[править]

  • Это контроллер просто выводит изображение.
  • Изображение переднего плана не используется.

Переключатель (Kind=7)[править]

  • Это поле со списком, показывающим пользовательский список значений.
  • Список значений доступен для прочтения в разделе [Items] *.INI-файла.
  • Изображение переднего плана не используется.
  • Он может быть использован в качестве контроллера.

Переключатель патчей (Kind=8)[править]

  • Этот элемент управления позволяет пользователю выбрать патч из списка предустановленных значений.
  • Список значений доступен для прочтения в разделе [Items] *.INI-файла.
  • Каждое значение должно иметь прилагаемую информацию Bank MSB, Bank LSB и Patch Number (см. описание [Items] в раздел выше).
  • Изображение переднего плана не используется.

Переключатель страниц (Kind=9)[править]

  • Это особый тип контроллеров, который позволяет выбрать видимую страницу интерфейса (если таковые имеются).
  • Изображение переднего плана не используется.

Заметки и советы[править]

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