ZebroidДокументацияПлагиныМенеджер расширений

Менеджер расширений

В программе: Плагины → Менеджер расширений
Данная функция служит для того, чтобы каждый пользователь программы мог собственными руками осуществлять необходимые ему в программе функции. Расширения работают на одном из самых популярных языков программирования для веб — PHP или Python.


Менеджер расширений Zebroid


В менеджере расширений присутствуют только те плагины, которые создал пользователь. Стандартные плагины здесь не отображаются, так как их правка не рекомендуется из-за того, что во время обновления все изменения могут быть затерты. Если у вас есть необходимость отредактировать один из стандартных плагинов — сделайте его копию и после этого уже изменяйте.




Создание и запуск расширений


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

Нижняя часть делиться на две половины: настройки запуска расширения (входные свойства) и вывод результатов работы расширения.

Настройки запуска расширения — это начальные свойства которые необходимы для работы конкретного расширения. Они создаются разработчиком расширения (как это делается описано ниже), и заполняются пользователем перед запуском расширения.

Результат работы расширения — это браузер, который показывает сообщения о результатах работы расширения. Что именно будет показывать этот браузер полностью зависит от разработчика расширения.

Кнопка выполнить запускает расширение.




Написание и работа со скриптами



Редактирование исходного кода расширения


Каждое расширение должно иметь как минимум один выполняющий файл — index.php (для PHP) или main.py (для Python). Он создается автоматически и не может быть удален. При запуске скрипта программа начинает выполнение именно этого файла. Для того, чтобы добавить другие файл в активное расширение необходимо воспользоваться контекстным меню в списке файлов.

С помощью контекстного меню можно:

  • Создать новый файл
  • Открыть существующий файл (содержимое файла будет отображено в редакторе справа)
  • Переименовать файл
  • Удалить файл
  • Сохранить выделенный файл
  • Закрыть выделенный файл без сохранения

Под списком файлов находятся 2 кнопки: Сохранить и Сохранить все. Они необходимы для сохранения внесенных изменений в файлы. Первая кнопка сохраняет изменения в активном файле, вторая — во всех.

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

Для того, чтобы успешно писать скрипты расширений необходимо знать:

  1. PHP или Python
  2. API расширений в Zebroid




Создание свойств расширения



Свойства параметров расширений


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

Формат данных такой же как и формат ini файлов, где имя группы равно имени переменной в скрипте расширения и соответственно должно быть уникальным. Параметры каждой группы таковы:

  1. Caption — название предназначения свойства
  2. Type — тип свойства (описание типов ниже)
  3. Value — начальное значение свойства
  4. Options — настройки свойства (необходимы только некоторым свойствам)

Типы свойств:

  • Text — обычное текстовое поле. Value ыступает как начальное значение свойства, в Options не нуждается. Возвращает текст.
  • SpinEdit — числовое свойство. Value выступает как начальное значение свойства, в Options заполняется информация и максимальном и минимально значении свойства, а так же о размере шага для переключателей. Пример: Min=0; Max=100; Step=1. Возвращает число.
  • ComboBox — выпадающий список. Value несет в себе информацию о списке и начальном активном элементе. Например, при такой конструкции: «Значение 1; Значение2 {!}; Значение 3» в списке будет 3 значения, а активным по умолчанию будет второе значение, так как рядом с ним находится ключевое обозначение в виде {!}. Возвращает номер выбранного пользователем значения, отсчёт начинается с нуля.
  • CheckBox — свойство в виде флажка. Value выступает как начальное значение свойства (true — активно, false — не активно), в Options не нуждается. Возвращает -1 если активно и 0 если не активно.
  • FilePath — текстовое поле с кнопкой которая открывает окно выбора файла. Value выступает как начальное значение свойства, в Options заполняется информация о маске допустимых файлов для окна выбора файлов. Пример: «Options=*.php;*.txt». Возвращает значение поля в виде текста.
  • FolderPath — текстовое поле с кнопкой которая открывает окно выбора папки. Value выступает как начальное значение свойства, в Options не нуждается. Возвращает значение поля в виде текста.
  • Tracker — ползунок. Value выступает как начальное значение свойства, в Options заполняется информация и максимальном и минимально значении свойства. Пример: «Min=0; Max=100». Возвращает позицию ползунка в виде числа.
  • Radio — список переключателей. Value несет в себе информацию о списке и начальном активном элементе. Например, при такой конструкции: «Значение 1; Значение2 {!}; Значение 3» в списке будет 3 значения, а активным по умолчанию будет второе значение, так как рядом с ним находится ключевое обозначение в виде {!}. Возвращает номер выбранного пользователем значения, отсчёт начинается с нуля.

В контекстном меню редактора свойств сохранены шаблоны для каждого из типов свойств.




Дополнительная информация


  • Иконка — для того, чтобы у вашего плагина была уникальная иконка, необходимо в папку плагина добавить png файл с рисунком 16х16. Имя такого файла должно быть icon_16.png. Иконка очень сильно облегчает визуальный поиск нужного пункта в списке
  • Стартовая информация — для каждого плагина есть возможность отобразить в окне браузера (только в случае индивидуального запуска плагина, не через менеджер расширений) информацию по особенностям работы с плагином. Информация эта будет отображена в окне браузера, а загружаться она будет из файла start.html, который должен находится в папке самого плагина.