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