Добавление панельных модулей
“Панельный модуль” – это набор Lua-функций, помещённых в таблицу, который загружается функцией PanelModule
.
- Имена функций модуля и их параметры совпадают с функциями таблицы
export
(см. мануал LuaFAR). - Список экспортируемых функций модуля, поддерживаемых плагином:
Analyse
,ClosePanel
,Compare
,DeleteFiles
,GetFiles
,GetFindData
,GetOpenPanelInfo
,MakeDirectory
,Open
,ProcessHostFile
,ProcessPanelEvent
,ProcessPanelInput
,PutFiles
,SetDirectory
,SetFindList
. - Каждый панельный модуль должен содержать таблицу
Info
с обязательным полемGuid
. Прочие поля – опциональны.
-- Создадим панельный модуль local mod = {} mod.Info = { Guid = win.Uuid("FBBC5FBF-AE9F-46EC-999C-C744F7D898B6"); -- обязательное поле Version = ""; Title = ""; Description = ""; Author = ""; } -- Добавим только те "экспортируемые" функции, которые нужны для работы этого модуля mod.Analyse = function(...) ...... end mod.Open = function(...) ...... end mod.GetFindData = function(...) ...... end ...... -- Загрузим модуль PanelModule(mod)
Примечания:
- Для создания панели из командной строки или меню плагинов, должны использоваться существующие функции
CommandLine
иMenuItem
. Их функцияaction()
должна вернуть 2 величины: (1) таблицу панельного модуля и (2) объект панели (любое не ложное значение Lua). - Функция
mod.Open
вызывается плагином только со следующими значениями параметраOpenFrom
:
OPEN_ANALYSE
,OPEN_FINDLIST
иOPEN_SHORTCUT
.
См. также: Пример применения