Изменение вызова действий, проверка наличия действий секции, отображение счетчика выполнения действий в модальном окне, работа над подключением привязки горячих клавиш
This commit is contained in:
parent
91b1eea1d4
commit
c69a7ae84b
14 changed files with 886 additions and 706 deletions
99
setup/help.go
Normal file
99
setup/help.go
Normal file
|
|
@ -0,0 +1,99 @@
|
|||
package setup
|
||||
|
||||
import "github.com/charmbracelet/bubbles/key"
|
||||
|
||||
//todo интегрировать нормально клавиши
|
||||
|
||||
// MainKeyMap структура главных клавиш
|
||||
type MainKeyMap struct {
|
||||
Help key.Binding //Клавиша помощи
|
||||
Confirm key.Binding //Клавиша подтверждения
|
||||
Exit key.Binding //Клавиша выхода
|
||||
}
|
||||
|
||||
// ArrowKeyMap структура навигации
|
||||
type ArrowKeyMap struct {
|
||||
Up key.Binding //Клавиша перемещения наверх
|
||||
Down key.Binding //Клавиша перемещения вниз
|
||||
Left key.Binding //Клавиша перемещения влево
|
||||
Right key.Binding //Клавиша перемещения вниз
|
||||
Top key.Binding //Клавиша перемещения в самый верх
|
||||
Bottom key.Binding //Клавиша перемещения в самый низ
|
||||
}
|
||||
|
||||
// FormKeyMap структура клавиш формы
|
||||
type FormKeyMap struct {
|
||||
MainKeyMap //Главные клавиши
|
||||
ArrowKeyMap //Клавиши навигации
|
||||
LogWindow key.Binding //Клавиша окна логирования
|
||||
Close key.Binding //Клавиша закрытия
|
||||
}
|
||||
|
||||
// ListKeyMap структура клавиш списка приложений
|
||||
type ListKeyMap struct {
|
||||
MainKeyMap //Главные клавиши
|
||||
ArrowKeyMap //Клавиши навигации
|
||||
}
|
||||
|
||||
type BaseKeyMap struct {
|
||||
Up key.Binding
|
||||
Down key.Binding
|
||||
Left key.Binding
|
||||
Right key.Binding
|
||||
Confirm key.Binding
|
||||
Help key.Binding
|
||||
Close key.Binding
|
||||
Quit key.Binding
|
||||
Log key.Binding
|
||||
}
|
||||
|
||||
func (k BaseKeyMap) ShortHelp() []key.Binding {
|
||||
return []key.Binding{k.Help, k.Log, k.Close, k.Quit}
|
||||
}
|
||||
|
||||
func (k BaseKeyMap) FullHelp() [][]key.Binding {
|
||||
return [][]key.Binding{
|
||||
{k.Up, k.Down, k.Right, k.Left},
|
||||
{k.Confirm, k.Help, k.Log},
|
||||
{k.Close, k.Quit},
|
||||
}
|
||||
}
|
||||
|
||||
var MainKeys = MainKeyMap{
|
||||
Help: key.NewBinding(key.WithKeys("?", "ctrl+h"), key.WithHelp("?/ctrl+h", "help")),
|
||||
Confirm: key.NewBinding(key.WithKeys("enter"), key.WithHelp("enter", "confirm")),
|
||||
Exit: key.NewBinding(key.WithKeys("ctrl+c"), key.WithHelp("ctrl+c", "exit")),
|
||||
}
|
||||
|
||||
var ArrowKeys = ArrowKeyMap{
|
||||
Up: key.NewBinding(key.WithKeys("up"), key.WithHelp("up", "move up")),
|
||||
Down: key.NewBinding(key.WithKeys("down"), key.WithHelp("down", "move down")),
|
||||
Left: key.NewBinding(key.WithKeys("left"), key.WithHelp("left", "move left")),
|
||||
Right: key.NewBinding(key.WithKeys("right"), key.WithHelp("right", "move right")),
|
||||
Top: key.NewBinding(key.WithKeys("home"), key.WithHelp("home", "to the top")),
|
||||
Bottom: key.NewBinding(key.WithKeys("end"), key.WithHelp("end", "to the end")),
|
||||
}
|
||||
|
||||
var FormKeys = FormKeyMap{
|
||||
MainKeyMap: MainKeys,
|
||||
ArrowKeyMap: ArrowKeys,
|
||||
LogWindow: key.NewBinding(key.WithKeys("ctrl+l"), key.WithHelp("ctrl+l", "show/hide logs")),
|
||||
Close: key.NewBinding(key.WithKeys("esc"), key.WithHelp("esc", "close select/close app setting")),
|
||||
}
|
||||
|
||||
var ListKeys = ListKeyMap{
|
||||
MainKeyMap: MainKeys,
|
||||
ArrowKeyMap: ArrowKeys,
|
||||
}
|
||||
|
||||
var keys = BaseKeyMap{
|
||||
Up: key.NewBinding(key.WithKeys("up"), key.WithHelp("up", "move up")),
|
||||
Down: key.NewBinding(key.WithKeys("down"), key.WithHelp("down", "move down")),
|
||||
Left: key.NewBinding(key.WithKeys("left"), key.WithHelp("left", "move left")),
|
||||
Right: key.NewBinding(key.WithKeys("right"), key.WithHelp("right", "move right")),
|
||||
Confirm: key.NewBinding(key.WithKeys("enter"), key.WithHelp("enter", "confirm")),
|
||||
Help: key.NewBinding(key.WithKeys("?", "ctrl+h"), key.WithHelp("?/ctrl+h", "help")),
|
||||
Close: key.NewBinding(key.WithKeys("esc"), key.WithHelp("esc", "close")),
|
||||
Quit: key.NewBinding(key.WithKeys("ctrl+c"), key.WithHelp("ctrl+c", "quit")),
|
||||
Log: key.NewBinding(key.WithKeys("ctrl+l"), key.WithHelp("ctrl+l", "show/hide log window")),
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue