|
|
@@ -12,6 +12,7 @@ import (
|
|
|
"wartank/desktop/win_config"
|
|
|
"wartank/desktop/win_config_server"
|
|
|
"wartank/desktop/win_config_server_host_input"
|
|
|
+ "wartank/desktop/win_config_server_login_input"
|
|
|
"wartank/desktop/win_default"
|
|
|
"wartank/pkg/alias"
|
|
|
"wartank/pkg/cons"
|
|
|
@@ -69,6 +70,13 @@ func NewDesktop() (*Desktop, error) {
|
|
|
}
|
|
|
sf.dictWin[winConfigServerHostInput.Name()] = winConfigServerHostInput
|
|
|
}
|
|
|
+ { // WinConfigServerLoginInput
|
|
|
+ winConfigServerLoginInput, err := win_config_server_login_input.NewWinConfigServerLoginInput(sf)
|
|
|
+ if err != nil {
|
|
|
+ return nil, fmt.Errorf("NewDesktop(): in create WinConfigServerLoginInput, err=\n\t%w", err)
|
|
|
+ }
|
|
|
+ sf.dictWin[winConfigServerLoginInput.Name()] = winConfigServerLoginInput
|
|
|
+ }
|
|
|
}
|
|
|
sf.winName = cons.WinDefault
|
|
|
go sf.tick()
|
|
|
@@ -139,69 +147,55 @@ func (sf *Desktop) Update(msg tea.Msg) (tea.Model, tea.Cmd) {
|
|
|
return mod_, cmd_
|
|
|
}
|
|
|
/*
|
|
|
- case ModeInputLoginServer:
|
|
|
- // switch msg := msg.(type) {
|
|
|
- // // Может клавиша нажата
|
|
|
- // case tea.KeyMsg:
|
|
|
- // switch msg.String() { // Да, нажато, а что именно?
|
|
|
- // case "esc": // Вернуться на шаг назад
|
|
|
- // desk.winName = ModeConfigServer
|
|
|
- // case "enter": // Нажатие "enter" или "пробел" переключает выбранный элемент списка
|
|
|
- // desk.login = desk.textInput.Value()
|
|
|
- // desk.winName = ModeConfigServer
|
|
|
- // default:
|
|
|
- // desk.textInput, cmd = desk.textInput.Update(msg)
|
|
|
- // }
|
|
|
- // }
|
|
|
case ModeInputPassServer:
|
|
|
- // switch msg := msg.(type) {
|
|
|
- // // Может клавиша нажата
|
|
|
- // case tea.KeyMsg:
|
|
|
- // switch msg.String() { // Да, нажато, а что именно?
|
|
|
- // case "esc": // Вернуться на шаг назад
|
|
|
- // desk.winName = ModeConfigServer
|
|
|
- // case "enter": // Нажатие "enter" или "пробел" переключает выбранный элемент списка
|
|
|
- // desk.pass = desk.textInput.Value()
|
|
|
- // desk.winName = ModeConfigServer
|
|
|
- // default:
|
|
|
- // desk.textInput, cmd = desk.textInput.Update(msg)
|
|
|
- // }
|
|
|
- // }
|
|
|
+ switch msg := msg.(type) {
|
|
|
+ // Может клавиша нажата
|
|
|
+ case tea.KeyMsg:
|
|
|
+ switch msg.String() { // Да, нажато, а что именно?
|
|
|
+ case "esc": // Вернуться на шаг назад
|
|
|
+ desk.winName = ModeConfigServer
|
|
|
+ case "enter": // Нажатие "enter" или "пробел" переключает выбранный элемент списка
|
|
|
+ desk.pass = desk.textInput.Value()
|
|
|
+ desk.winName = ModeConfigServer
|
|
|
+ default:
|
|
|
+ desk.textInput, cmd = desk.textInput.Update(msg)
|
|
|
+ }
|
|
|
+ }
|
|
|
case ModeConnectServer:
|
|
|
- // switch msg := msg.(type) {
|
|
|
- // // Может клавиша нажата
|
|
|
- // case tea.KeyMsg:
|
|
|
- // switch msg.String() { // Да, нажато, а что именно?
|
|
|
- // case "esc": // Нажатие "esc" прекращает подключение к серверу
|
|
|
- // desk.winName = ModeConfigServer
|
|
|
- // }
|
|
|
- // }
|
|
|
+ switch msg := msg.(type) {
|
|
|
+ // Может клавиша нажата
|
|
|
+ case tea.KeyMsg:
|
|
|
+ switch msg.String() { // Да, нажато, а что именно?
|
|
|
+ case "esc": // Нажатие "esc" прекращает подключение к серверу
|
|
|
+ desk.winName = ModeConfigServer
|
|
|
+ }
|
|
|
+ }
|
|
|
case ModeLoginServer:
|
|
|
- // switch msg := msg.(type) {
|
|
|
- // // Может клавиша нажата
|
|
|
- // case tea.KeyMsg:
|
|
|
- // switch msg.String() { // Да, нажато, а что именно?
|
|
|
- // case "esc": // Нажатие "esc" прекращает логин на сервер
|
|
|
- // desk.winName = ModeConfig
|
|
|
- // }
|
|
|
- // }
|
|
|
+ switch msg := msg.(type) {
|
|
|
+ // Может клавиша нажата
|
|
|
+ case tea.KeyMsg:
|
|
|
+ switch msg.String() { // Да, нажато, а что именно?
|
|
|
+ case "esc": // Нажатие "esc" прекращает логин на сервер
|
|
|
+ desk.winName = ModeConfig
|
|
|
+ }
|
|
|
+ }
|
|
|
case ModeServerMakeAdmin:
|
|
|
- // switch msg := msg.(type) {
|
|
|
- // // Может клавиша нажата
|
|
|
- // case tea.KeyMsg:
|
|
|
- // switch msg.String() { // Да, нажато, а что именно?
|
|
|
- // case "esc": // Нажатие "esc" прекращает создание админа
|
|
|
- // desk.winName = ModeConfig
|
|
|
- // }
|
|
|
- // }
|
|
|
+ switch msg := msg.(type) {
|
|
|
+ // Может клавиша нажата
|
|
|
+ case tea.KeyMsg:
|
|
|
+ switch msg.String() { // Да, нажато, а что именно?
|
|
|
+ case "esc": // Нажатие "esc" прекращает создание админа
|
|
|
+ desk.winName = ModeConfig
|
|
|
+ }
|
|
|
+ }
|
|
|
case ModeShowMenuBot:
|
|
|
// Может клавиша нажата
|
|
|
switch msg := msg.(type) {
|
|
|
- // case tea.KeyMsg:
|
|
|
- // switch msg.String() { // Да, нажато, а что именно?
|
|
|
- // case "esc": // Нажатие "esc" прекращает показ меню
|
|
|
- // desk.winName = ModeConfig
|
|
|
- // }
|
|
|
+ case tea.KeyMsg:
|
|
|
+ switch msg.String() { // Да, нажато, а что именно?
|
|
|
+ case "esc": // Нажатие "esc" прекращает показ меню
|
|
|
+ desk.winName = ModeConfig
|
|
|
+ }
|
|
|
}
|
|
|
// Возвращает обновлённую модель дляe Bubble Tea runtime для обработки.
|
|
|
//Здесь команду возвращать надо.
|
|
|
@@ -215,8 +209,6 @@ func (sf *Desktop) View() string {
|
|
|
s += desk.dictWin[desk.winName].View()
|
|
|
/*
|
|
|
switch desk.winName {
|
|
|
- case ModeInputLoginServer: // Ввод логина для входа на сервер
|
|
|
- s += desk.winLoginServer()
|
|
|
case ModeInputPassServer: // ввод пароля
|
|
|
s += desk.winPassServer()
|
|
|
case ModeConnectServer: // Режим подключения к серверу
|
|
|
@@ -295,13 +287,6 @@ func (sf *Desktop) winPassServer() string {
|
|
|
return s
|
|
|
}
|
|
|
|
|
|
-func (sf *Desktop) winLoginServer() string {
|
|
|
- s := "=Ввод логина для сервера вар-танк=\n\n"
|
|
|
- s += fmt.Sprintf(">%v\n", desk.textInput.View())
|
|
|
- s += "\n\n[ctrl+q]-выход [esc]-назад\n"
|
|
|
- return s
|
|
|
-}
|
|
|
-
|
|
|
*/
|
|
|
|
|
|
// IsLogin -- возвращает признак логина на сервер ботов
|
|
|
@@ -318,3 +303,8 @@ func (sf *Desktop) IsConnect() bool {
|
|
|
func (sf *Desktop) SetHost(hostName string) {
|
|
|
sf.host = hostName
|
|
|
}
|
|
|
+
|
|
|
+// SetLogin -- устанавливает логин бото-фермы
|
|
|
+func (sf *Desktop) SetLogin(login string) {
|
|
|
+ sf.login = login
|
|
|
+}
|