45 lines
842 B
Go
45 lines
842 B
Go
package ui
|
|
|
|
import (
|
|
"fmt"
|
|
"go_dreamfactory/cmd/v2/lib/common"
|
|
|
|
"fyne.io/fyne/v2/theme"
|
|
"fyne.io/fyne/v2/widget"
|
|
"github.com/sirupsen/logrus"
|
|
)
|
|
|
|
type toolBar struct {
|
|
toolbar *widget.Toolbar
|
|
}
|
|
|
|
func newToolBar() *toolBar {
|
|
var tb toolBar
|
|
|
|
// mainwindow toolbar
|
|
tb.toolbar = widget.NewToolbar(
|
|
widget.NewToolbarAction(theme.ComputerIcon(), func() {
|
|
openApp(common.TOOLBAR_MONITOR)
|
|
}),
|
|
widget.NewToolbarAction(theme.AccountIcon(), func() {
|
|
openApp(common.TOOLBAR_TESTER)
|
|
}),
|
|
widget.NewToolbarSpacer(),
|
|
widget.NewToolbarAction(theme.HelpIcon(), func() {
|
|
showAbout()
|
|
}),
|
|
)
|
|
return &tb
|
|
}
|
|
|
|
func openApp(name string) {
|
|
for _, app := range appRegister {
|
|
if app.GetAppName() == name {
|
|
err := globalWin.at.openApp(app)
|
|
if err != nil {
|
|
logrus.Error(fmt.Errorf("%s %v", app.GetAppName(), err))
|
|
}
|
|
}
|
|
}
|
|
}
|