refactoring
This commit is contained in:
@@ -0,0 +1,41 @@
|
||||
# Окно и ввод — `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` и клик мышью
|
||||
вне окна закрывают его без вызова колбэка.
|
||||
|
||||
```lua
|
||||
api.window:open_input({
|
||||
title = "Имя файла",
|
||||
placeholder = "src/main.rs",
|
||||
callback = function(text)
|
||||
api.editor:open(text, {})
|
||||
end,
|
||||
})
|
||||
```
|
||||
Reference in New Issue
Block a user