Показаны различия между двумя версиями страницы.
| Следующая версия | Предыдущая версия | ||
|
lm2:ce:s_func [2020/08/04 12:05] ruben создано |
lm2:ce:s_func [2020/11/30 14:12] (текущий) |
||
|---|---|---|---|
| Строка 25: | Строка 25: | ||
| //textID// - идентификатор строки из строковых данных | //textID// - идентификатор строки из строковых данных | ||
| - | **Include(string luaFileName)** - выполнить lua-код из файла. Аналогична функции dofile(...), но с учетом путей\\ | + | **Include(string luaFileName)** - выполнить lua-код из файла. Аналогична функции dofile(…), но с учетом путей\\ |
| // | // | ||
| Строка 38: | Строка 38: | ||
| //event// - описание события в виде < | //event// - описание события в виде < | ||
| //fname// - имя функции - обработчика события. Функция обработчик события должна иметь вид: | //fname// - имя функции - обработчика события. Функция обработчик события должна иметь вид: | ||
| - | < | + | < |
| function < | function < | ||
| Строка 60: | Строка 60: | ||
| **CheckMouse(string viewportName, | **CheckMouse(string viewportName, | ||
| - | // | + | // |
| - | //x - //<font inherit/ | + | //x //- координата по горизонтали\\ |
| - | //y - //<font inherit/ | + | //y //- координата по вертикали\\ |
| //isClick - //<font inherit/ | //isClick - //<font inherit/ | ||
| Строка 84: | Строка 84: | ||
| Возвращает массив строк с именами элементов | Возвращает массив строк с именами элементов | ||
| - | sys.GetSubList(string PanelID, string ElementID) - Получить имена подэлементов в заданном элементе\\ | + | **sys.GetSubList(string PanelID, string ElementID)** - получить имена подэлементов в заданном элементе\\ |
| - | PanelID - Имя панели\\ | + | //PanelID// - Имя панели\\ |
| - | ElementID - Имя элемента\\ | + | //ElementID// - Имя элемента\\ |
| - | Возврат | + | Возвращает массив строк с именами подэлементов |
| - | sys.GetViewportList() - Получить имена всех вьюпортов\\ | + | |
| - | Возврат | + | **sys.GetViewportList()** - получить имена всех вьюпортов\\ |
| - | sys.GetViewportName(string PanelID) - Получить имена всех | + | Возвращает массив строк с именами вьюпортов |
| - | PanelID - Имя панели\\ | + | |
| - | Возврат | + | **sys.GetViewportName(string PanelID)** - получить имя вьюпорта по имени панели\\ |
| - | sys.InitViewport(string ID, integer Left, integer Top, integer Width, integer Height, bool Windowed) - Добавить новый вьюпорт\\ | + | //PanelID// - Имя панели\\ |
| - | ID - Имя вьюпорта\\ | + | Возвращает имя вьюпорта или пустую строку, если такой панели нет или она не присоединена к вьюпорту |
| - | Left - Позициа вьюпрта на десктопе по горизонтали\\ | + | |
| - | Top - Позициа вьюпрта на десктопе по вертикали\\ | + | **sys.InitViewport(string ID, integer Left, integer Top, integer Width, integer Height, bool Windowed)** - добавить новый вьюпорт\\ |
| - | Width - Ширина вьюпорта\\ | + | //ID //- имя вьюпорта\\ |
| - | Height - Высота вьюпорта\\ | + | //Left //- позиция вьюпорта на мониторе по горизонтали\\ |
| - | Windowed - Нужна-ли рамка\\ | + | //Top //- позиция вьюпорта на мониторе по вертикали\\ |
| - | Возврат | + | //Width //- Ширина вьюпорта\\ |
| - | sys.InitViewport(string ID, integer Width, integer Height, integer HWND) - Добавить новый вьюпорт\\ | + | //Height |
| - | ID - Имя вьюпорта\\ | + | //Windowed// - Флаг рамки\\ |
| - | Width - Ширина вьюпорта\\ | + | Возвращает true, если вьюпорт создан удачно |
| - | Height - Высота вьюпорта\\ | + | |
| - | HWND - Хэндл существующего окна\\ | + | **sys.InitViewport(string ID, integer Width, integer Height, integer HWND)** - добавить новый вьюпорт\\ |
| - | Возврат | + | //ID //- имя вьюпорта\\ |
| - | sys.LoadLogic(string fileName) - Перезапуск | + | //Width //- ширина вьюпорта\\ |
| - | fileName - имя стартового lua скрипта\\ | + | //Height |
| - | sys.Exec(string id, string cmd) - Выполнить внешнюю команду в отдельном потоке\\ | + | //HWND// - хэндл существующего окна\\ |
| - | id - id (имя) потока\\ | + | Возвращает true, если вьюпорт создан удачно |
| - | cmd - команда\\ | + | |
| - | Возврат | + | **sys.LoadLogic(string fileName)** - перезапуск логической машины. Все панели отвязываются от вьюпортов\\ |
| + | //fileName// - имя стартового lua скрипта | ||
| + | |||
| + | **sys.Exec(string id, string cmd)** - выполнить внешнюю команду в отдельном потоке\\ | ||
| + | //id// - id (имя) потока\\ | ||
| + | //cmd //- команда\\ | ||
| + | Возвращает true, ести поток запустился успешно\\ | ||
| После завершения работы возникает событие: | После завершения работы возникает событие: | ||
| - | В текущей реализации одновременно можно запустить на выполнение только одну команду.\\ | + | В текущей реализации одновременно можно запустить на выполнение только одну команду |
| - | lic.SaveLicence(string key) Сохранить | + | |
| - | key - текст ключа\\ | + | **[RPI] |
| - | lic.GetLicence(string serial, string salt) Сгенерировать ключ из серийного номера и соли\\ | + | Возвращает серийный номер |
| - | serial - серийный номер устройства\\ | + | |
| - | salt - соль\\ | + | **sys.SavePanelPNG(string PanelName, string FileName, integer Width, integer Height) **- <font inherit/ |
| - | Возврат - лицензионный ключ\\ | + | // |
| - | lic.GetSerial() - Получить серийный номер | + | // |
| - | Возврат | + | //Width// - ширина в пикселях\\ |
| - | В текущей реализации работает только на RPi.\\ | + | //Height// - высота в пикселях |
| - | sys.SavePanelPNG(string PanelName, string FileName, integer Width, integer | + | |
| - | sys.SaveElementPNG(string PanelName, string ElementName, | + | **sys.SaveElementPNG(string PanelName, string ElementName, |
| - | sys.SaveXML()\\ | + | //PanelName //- имя панели\\ |
| - | sys.SaveLib()\\ | + | // |
| - | sys.SetXMLAttr(string Prop)\\ | + | //FileName //- имя файла\\ |
| - | sys.SetLibAttr(string Prop)\\ | + | //Width// - ширина в пикселях\\ |
| - | sys.GetXMLAttr(string Prop)\\ | + | //Height// - высота в пикселях\\ |
| - | sys.GetLibAttr(string Prop)\\ | + | //Scale //- масштаб |
| - | sys.ShowViewport(string ViewportID)\\ | + | |
| - | ViewportID - Имя вьюпорта\\ | + | **sys.SaveXML() |
| - | sys.HideViewport(string ViewportID)\\ | + | |
| - | ViewportID - Имя вьюпорта\\ | + | **sys.SaveLib()** - <font inherit/ |
| - | sys.MoveViewport(string ViewportID, number x, number y)\\ | + | |
| - | ViewportID - Имя вьюпорта\\ | + | **sys.SetXMLAttr(string Prop)** - <font inherit/ |
| - | sys.ScaleViewport(string ViewportID, number x, number y, number scale)\\ | + | //Prop// - <font inherit/ |
| - | ViewportID - Имя вьюпорта\\ | + | |
| - | sys.ResetViewport(string ViewportID)\\ | + | **sys.SetLibAttr(string Prop)** - <font inherit/ |
| - | ViewportID - Имя вьюпорта\\ | + | //Prop// - <font inherit/ |
| - | sys.GetMousePos(string ViewportID) - Получить координаты курсора мыши относительно вьюпорта\\ | + | |
| - | ViewportID - Имя вьюпорта\\ | + | **sys.GetXMLAttr(string Prop)** - <font inherit/ |
| - | Возврат | + | //Prop// - <font inherit/ |
| - | sys.SetMousePos(string ViewportID, integer x, integer y) - Установить курсор мыши относительно вьюпорта\\ | + | |
| - | ViewportID - Имя вьюпорта\\ | + | **sys.GetLibAttr(string Prop) ** - <font inherit/ |
| - | x и y - Координаты\\ | + | //Prop// - <font inherit/ |
| - | sys.ShowCursor(string ViewportID) - Показать курсор мыши\\ | + | |
| - | ViewportID - Имя вьюпорта\\ | + | **sys.ShowViewport(string ViewportID)** - показать вьюпорт\\ |
| - | sys.HideCursor(string ViewportID) - Спрятать курсор мыши\\ | + | //ViewportID// - имя вьюпорта |
| - | ViewportID - Имя вьюпорта\\ | + | |
| - | sys.GrabCursor(string ViewportID) - Запретить курсору мыши выходить за пределы вьюпорта. Этот режим работает только если окно вьюпорта имеет фокус.\\ | + | **sys.HideViewport(string ViewportID)** - скрыть вьюпорт\\ |
| - | ViewportID - Имя вьюпорта\\ | + | //ViewportID |
| - | sys.UngrabCursor(string ViewportID) - Выключить режим запрета выхода курсора за пределы вьюпорта.\\ | + | |
| - | ViewportID - Имя вьюпорта\\ | + | **sys.MoveViewport(string ViewportID, number x, number y)** - переместить вьюпорт\\ |
| - | sys.RequestFocus(string ViewportID) - Запросить получение фокуса для окна вьюпорта. Фактическое получение фокуса зависит от ОС.\\ | + | //ViewportID |
| - | ViewportID - Имя вьюпорта\\ | + | //x//- координата по горизонтали\\ |
| - | sys.HasFocus(string ViewportID) - Запросить состояние фокуса у окна вьюпорта\\ | + | //y//- координата по вертикали |
| - | ViewportID - Имя вьюпорта\\ | + | |
| - | Возврат | + | **sys.ScaleViewport(string ViewportID, number x, number y, number scale) |
| - | sys.SetVPPos(string ViewportID, number x, number y)\\ | + | //ViewportID |
| - | sys.SetVPScale(string ViewportID, number ScaleX, number ScaleY, number Scale)\\ | + | //x// - <font inherit/ |
| - | sys.SetVPZoomScale(string ViewportID, number ZoomScaleX, number ZoomScaleY, number ZoomScale)\\ | + | //y// - <font inherit/ |
| - | Функции, доступные из Lua кода | + | //scale //- масштаб |
| - | Log(string msg) - Вывести сообщение | + | |
| - | msg - текст сообщения\\ | + | **sys.ResetViewport(string ViewportID)** - <font inherit/ |
| - | PlaySound(string name) - Воспроизвести аудиофайл\\ | + | //ViewportID |
| - | id - идентификатор аудиофайла. Список загружаемых файлов | + | |
| - | Set(string prop) - Установить значение своего свойства.\\ | + | **sys.GetMousePos(string ViewportID) |
| - | prop - строка, | + | //ViewportID |
| - | Set(string addr, string value) - Установить значение своего свойства.\\ | + | Возвращает number x, number y - координаты курсора или nil |
| - | Эквивалентно вызову Set(addr..' | + | |
| - | string Get(string addr) - Получить значение своего свойства\\ | + | **sys.SetMousePos(string ViewportID, integer x, integer y)** - установить курсор мыши относительно вьюпорта\\ |
| - | addr - адрес свойства. Должен иметь вид < | + | //ViewportID |
| - | SetText(string addr, string textID) - Установить значение своего свойства из строковых данных\\ | + | //x //- координата по горизонтали\\ |
| - | addr - адрес свойства\\ | + | //y //- координата по вертикали |
| - | textID - идентификатор строки из строковых данных\\ | + | |
| - | string GetText(string textID) - Получить | + | **sys.ShowCursor(string ViewportID)** - показать курсор мыши\\ |
| - | textID - идентификатор строки из строковых данных\\ | + | //ViewportID |
| - | PushEvent(string event) - поместить событие | + | |
| - | event - событие (вида [< | + | **sys.HideCursor(string ViewportID)** - спрятать курсор мыши\\ |
| + | //ViewportID | ||
| + | |||
| + | **sys.GrabCursor(string ViewportID)** - запретить курсору мыши выходить за пределы вьюпорта\\ | ||
| + | // | ||
| + | Этот режим работает только если окно вьюпорта имеет фокус | ||
| + | |||
| + | **sys.UngrabCursor(string ViewportID)** - выключить режим запрета выхода курсора за пределы вьюпорта\\ | ||
| + | //ViewportID | ||
| + | |||
| + | **sys.RequestFocus(string ViewportID) | ||
| + | // | ||
| + | Фактическое получение фокуса зависит от ОС | ||
| + | |||
| + | **sys.HasFocus(string ViewportID)** - запросить состояние фокуса у окна вьюпорта\\ | ||
| + | //ViewportID// - имя вьюпорта\\ | ||
| + | Возвращает true, если окно имеет фокус | ||
| + | |||
| + | **sys.SetVPPos(string ViewportID, number x, number y)** - <font inherit/ | ||
| + | // | ||
| + | //x //- координата по горизонтали\\ | ||
| + | //y //- координата по вертикали | ||
| + | |||
| + | **sys.SetVPScale(string ViewportID, number ScaleX, number ScaleY, number Scale) | ||
| + | // | ||
| + | //ScaleX //- масштаб по горизонтали\\ | ||
| + | //ScaleY //- масштаб по вертикали\\ | ||
| + | //Scale //- масштаб | ||
| + | |||
| + | **sys.SetVPZoomScale(string ViewportID, number ZoomScaleX, number ZoomScaleY, number ZoomScale)** - <font inherit/ | ||
| + | // | ||
| + | // | ||
| + | // | ||
| + | //ZoomScale //- дополнительный масштаб | ||
| + | ==== Функции, доступные из Lua кода | ||
| + | |||
| + | **Log(string msg) **- см. выше | ||
| + | |||
| + | **PlaySound(string name)** - см. выше | ||
| + | |||
| + | **Set(string prop)** - установить значение | ||
| + | //prop //- строка, | ||
| + | |||
| + | **Set(string addr, string value) | ||
| + | Эквивалентно вызову Set(addr..' | ||
| + | |||
| + | **string Get(string addr)** - получить значение | ||
| + | addr - адрес свойства. Должен иметь вид < | ||
| + | |||
| + | **SetText(string addr, string textID)** - установить значение | ||
| + | //addr //- адрес свойстваtextID - идентификатор строки из строковых данных | ||
| + | |||
| + | **string GetText(string textID)** - см. выше | ||
| + | |||
| + | **PushEvent(string event)** - см. выше | ||