2.0 KiB
2.0 KiB
Окно и ввод — api.window
Группа api.window управляет окном приложения и плавающим полем ввода.
Окно
| Метод | Описание |
|---|---|
api.window:close() |
Закрыть окно |
api.window:toggle_maximize() |
Развернуть окно / вернуть прежний размер |
api.window:set_maximized(true/false) |
Развернуть (true) или восстановить (false) окно |
api.window:minimize() |
Свернуть окно |
api.window:is_maximized() |
Развёрнуто ли окно прямо сейчас |
Команды окна не выполняются в момент вызова из Lua: они складываются в очередь и применяются видом в начале следующего кадра.
Плавающее поле ввода
api.window:open_input(options) открывает однострочное поле ввода чуть выше
центра окна. Параметры передаются таблицей:
| Поле | Описание |
|---|---|
title |
Текст над полем; если не задан, окно состоит из одной строки ввода |
placeholder |
Подсказка внутри пустого поля ввода |
callback |
function(text) — вызывается после Enter, когда окно уже закрыто |
Пока окно открыто, сочетания клавиш приложения не работают. Текст набирается
в поле; Enter подтверждает ввод и запускает callback, Esc и клик мышью
вне окна закрывают его без вызова колбэка.
api.window:open_input({
title = "Имя файла",
placeholder = "src/main.rs",
callback = function(text)
api.editor:open(text, {})
end,
})