gui.go 722 B

123456789101112131415161718192021222324252627282930313233343536
  1. // package gui -- графический интерфейс для сервера бото-фермы
  2. package gui
  3. import (
  4. "fmt"
  5. "log"
  6. "fyne.io/fyne/v2"
  7. "fyne.io/fyne/v2/app"
  8. "wartank/pkg/types"
  9. )
  10. // Gui -- интерфейс к графике бото-фермы
  11. type Gui struct {
  12. serv types.IServer
  13. app fyne.App
  14. }
  15. // NewGui -- возвращает новый гуй для бото-фермы
  16. func NewGui(serv types.IServer) (*Gui, error) {
  17. if serv == nil {
  18. return nil, fmt.Errorf("NewGui(): IServer==nil")
  19. }
  20. sf := &Gui{
  21. serv: serv,
  22. app: app.New(),
  23. }
  24. return sf, nil
  25. }
  26. // Run -- запускает графику в работу
  27. func (sf *Gui) Run() {
  28. log.Printf("Gui.Run()\n")
  29. sf.app.Run()
  30. }