Log(string msg) - вывести сообщение в лог
msg - текст сообщения
PlaySound(string id) - воспроизвести аудиофайл
id - идентификатор аудиофайла. Список загружаемых файлов и их идентификаторы задаются через главный конфигурационный файл (см. «Главный конфигурационный файл»)
Set(string prop) - установить значение свойства.
prop - строка, вида <адрес>=<значение>, где <адрес> - адрес свойства, а <значение> - значение, которое должно быть присвоено свойству. Eсли prop имеет вид <имя_плагина>:<адрес>=<значение>, то <значение> присваивается соответствующему свойству плагина.
Set(string addr, string value) - установить значение свойства.
Эквивалентно вызову Set(addr..'='..value)
string Get(string addr) - получить значение свойства
addr - адрес свойства. Может иметь вид <имя_плагина>:<адрес> для получения значения свойства плагина.
SetText(string addr, string textID) - установить значение свойства из строковых данных
addr - адрес свойства
textID - идентификатор строки из строковых данных
string GetText(string textID) - получить строку из строковых данных
textID - идентификатор строки из строковых данных
Include(string luaFileName) - выполнить lua-код из файла. Аналогична функции dofile(…), но с учетом путей
luaFileName - имя файла с кодом
Panel(string viewportName, string panelName) - присоединить панель к вьюпорту. Одну панель можно присоединить только к одному вьюпорту, один раз.
viewportName - имя вьюпорта или пустая строка, если панель надо отвязать от вьюпорта
panelName - имя панели
Text(string textResourceName) - загрузить строковые данные из файла
textResourceName - имя файла со строковыми данными
AddEventHandler(string event, string fname) - добавить ссылку на обработчик события
event - описание события в виде <адрес>[=<значение>] или <имя_плагина>:<адрес>[=<значение>]
fname - имя функции - обработчика события. Функция обработчик события должна иметь вид:
function <fname>(ev) ... return isContinue end
ev - таблица вида (описывает событие):
ev.Plugin
ev.Panel
ev.Element
ev.Entry
ev.Property
ev.Value
isContinue - если функция возвращает true, то виртуальная машина продолжит искать подходящие обработчики для этого события
PushEvent(string event) - поместить событие в очередь на обработку
event - событие (вида [<имя_плагина>:]<адрес>[=<значение>])
CheckMouse(string viewportName, number x, number y, bool isClick) - НЕТ ДАННЫХ
viewportName - имя вьювпорт
x - координата по горизонтали
y - координата по вертикали
isClick - НЕТ ДАННЫХ
sys.Exit() - закрыть приложение
sys.StartTimer(string id, integer time[, bool once = true]) - запустить таймер
id - имя таймера
time - засекаемое время, мс
once - true - если таймер должен сработать один раз, false - если должен работать циклично. Если опустить этот параметр, то он по умолчанию считается равным true.
После истечения времени time, возникает событие вида: timer.<id>.finished.=true. Таймер не очень точный.
sys.StopTimer(string id) - остановить таймер
id - имя таймера
После остановки таймера этой функцией событие таймера не возникает.
sys.GetPanelList() - получить имена всех панелей
Возвращает массив строк с именами панелей
sys.GetElementList(string PanelID) - получить имена элементов в заданной панели
PanelID - имя панели, в которой ищем элементы.
Возвращает массив строк с именами элементов
sys.GetSubList(string PanelID, string ElementID) - получить имена подэлементов в заданном элементе
PanelID - Имя панели
ElementID - Имя элемента
Возвращает массив строк с именами подэлементов
sys.GetViewportList() - получить имена всех вьюпортов
Возвращает массив строк с именами вьюпортов
sys.GetViewportName(string PanelID) - получить имя вьюпорта по имени панели
PanelID - Имя панели
Возвращает имя вьюпорта или пустую строку, если такой панели нет или она не присоединена к вьюпорту
sys.InitViewport(string ID, integer Left, integer Top, integer Width, integer Height, bool Windowed) - добавить новый вьюпорт
ID - имя вьюпорта
Left - позиция вьюпорта на мониторе по горизонтали
Top - позиция вьюпорта на мониторе по вертикали
Width - Ширина вьюпорта
Height - Высота вьюпорта
Windowed - Флаг рамки
Возвращает true, если вьюпорт создан удачно
sys.InitViewport(string ID, integer Width, integer Height, integer HWND) - добавить новый вьюпорт
ID - имя вьюпорта
Width - ширина вьюпорта
Height - высота вьюпорта
HWND - хэндл существующего окна
Возвращает true, если вьюпорт создан удачно
sys.LoadLogic(string fileName) - перезапуск логической машины. Все панели отвязываются от вьюпортов
fileName - имя стартового lua скрипта
sys.Exec(string id, string cmd) - выполнить внешнюю команду в отдельном потоке
id - id (имя) потока
cmd - команда
Возвращает true, ести поток запустился успешно
После завершения работы возникает событие: exec.<id>.finished.=<result_code>
В текущей реализации одновременно можно запустить на выполнение только одну команду
[RPI] lic.GetSerial() - получить серийный номер устройства
Возвращает серийный номер
sys.SavePanelPNG(string PanelName, string FileName, integer Width, integer Height) - НЕТ ДАННЫХ
PanelName - имя панели
FileName - имя файла
Width - ширина в пикселях
Height - высота в пикселях
sys.SaveElementPNG(string PanelName, string ElementName, string FileName, integer Width, integer Height[, number Scale]) - НЕТ ДАННЫХ
PanelName - имя панели
ElementName - имя элемента
FileName - имя файла
Width - ширина в пикселях
Height - высота в пикселях
Scale - масштаб
sys.SaveXML() - НЕТ ДАННЫХ
sys.SaveLib() - НЕТ ДАННЫХ
sys.SetXMLAttr(string Prop) - НЕТ ДАННЫХ
Prop - НЕТ ДАННЫХ
sys.SetLibAttr(string Prop) - НЕТ ДАННЫХ
Prop - НЕТ ДАННЫХ
sys.GetXMLAttr(string Prop) - НЕТ ДАННЫХ
Prop - НЕТ ДАННЫХ
sys.GetLibAttr(string Prop) - НЕТ ДАННЫХ
Prop - НЕТ ДАННЫХ
sys.ShowViewport(string ViewportID) - показать вьюпорт
ViewportID - имя вьюпорта
sys.HideViewport(string ViewportID) - скрыть вьюпорт
ViewportID - имя вьюпорта
sys.MoveViewport(string ViewportID, number x, number y) - переместить вьюпорт
ViewportID - имя вьюпорта
x- координата по горизонтали
y- координата по вертикали
sys.ScaleViewport(string ViewportID, number x, number y, number scale) - масштабировать вьюпорт
ViewportID - Имя вьюпорта
x - НЕТ ДАННЫХ
y - НЕТ ДАННЫХ
scale - масштаб
sys.ResetViewport(string ViewportID) - НЕТ ДАННЫХ
ViewportID - имя вьюпорта
sys.GetMousePos(string ViewportID) - получить координаты курсора мыши относительно вьюпорта
ViewportID - имя вьюпорта
Возвращает number x, number y - координаты курсора или nil
sys.SetMousePos(string ViewportID, integer x, integer y) - установить курсор мыши относительно вьюпорта
ViewportID - имя вьюпорта
x - координата по горизонтали
y - координата по вертикали
sys.ShowCursor(string ViewportID) - показать курсор мыши
ViewportID - имя вьюпорта
sys.HideCursor(string ViewportID) - спрятать курсор мыши
ViewportID - имя вьюпорта
sys.GrabCursor(string ViewportID) - запретить курсору мыши выходить за пределы вьюпорта
ViewportID - имя вьюпорта
Этот режим работает только если окно вьюпорта имеет фокус
sys.UngrabCursor(string ViewportID) - выключить режим запрета выхода курсора за пределы вьюпорта
ViewportID - имя вьюпорта
sys.RequestFocus(string ViewportID) - запросить получение фокуса для окна вьюпорта
ViewportID - имя вьюпорта
Фактическое получение фокуса зависит от ОС
sys.HasFocus(string ViewportID) - запросить состояние фокуса у окна вьюпорта
ViewportID - имя вьюпорта
Возвращает true, если окно имеет фокус
sys.SetVPPos(string ViewportID, number x, number y) - НЕТ ДАННЫХ
ViewportID - имя вьюпорта
x - координата по горизонтали
y - координата по вертикали
sys.SetVPScale(string ViewportID, number ScaleX, number ScaleY, number Scale) - НЕТ ДАННЫХ
ViewportID - имя вьюпорта
ScaleX - масштаб по горизонтали
ScaleY - масштаб по вертикали
Scale - масштаб
sys.SetVPZoomScale(string ViewportID, number ZoomScaleX, number ZoomScaleY, number ZoomScale) - НЕТ ДАННЫХ
ViewportID - имя вьюпорта
ZoomScaleX - дополнительный масштаб по горизонтали
ZoomScaleY - дополнительный масштаб по вертикали
ZoomScale - дополнительный масштаб
Log(string msg) - см. выше
PlaySound(string name) - см. выше
Set(string prop) - установить значение своего свойства
prop - строка, вида <имя_подэлемента>.<имя_свойства>=<значение> или <имя_свойства>.=<значение>
Set(string addr, string value) - установить значение своего свойства.
Эквивалентно вызову Set(addr..'='..value)
string Get(string addr) - получить значение своего свойства
addr - адрес свойства. Должен иметь вид <имя_подэлемента>.<имя_свойства> или <имя_свойства>..
SetText(string addr, string textID) - установить значение своего свойства из строковых данных
addr - адрес свойстваtextID - идентификатор строки из строковых данных
string GetText(string textID) - см. выше
PushEvent(string event) - см. выше