| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051 |
- // package gui -- графический интерфейс для сервера бото-фермы
- package gui
- import (
- "fmt"
- "log"
- "fyne.io/fyne/v2"
- "fyne.io/fyne/v2/app"
- "wartank/pkg/types"
- "wartank/server/gui/win_main"
- )
- // Gui -- интерфейс к графике бото-фермы
- type Gui struct {
- serv types.ИСервер
- app fyne.App
- winMain *win_main.WinMain
- }
- // NewGui -- возвращает новый гуй для бото-фермы
- func NewGui(serv types.ИСервер) (*Gui, error) {
- if serv == nil {
- return nil, fmt.Errorf("NewGui(): IServer==nil")
- }
- sf := &Gui{
- serv: serv,
- app: app.New(),
- }
- return sf, nil
- }
- // Run -- запускает графику в работу
- func (sf *Gui) Run() {
- log.Printf("Gui.Run()\n")
- var err error
- sf.winMain, err = win_main.NewWinMain(sf.serv)
- if err != nil {
- log.Printf("Gui.Run(): in create winMain, err=\n\t%v\n", err)
- sf.serv.CancelApp()
- return
- }
- sf.winMain.Show()
- sf.app.Run()
- }
- // ФайнПрилож -- возвращает Fyne-приложение
- func (sf *Gui) ФайнПрилож() fyne.App {
- return sf.app
- }
|