mirror of https://github.com/OrbTools/OrbBind
You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
40 lines
1.0 KiB
Go
40 lines
1.0 KiB
Go
//go:generate boxy
|
|
|
|
package main
|
|
|
|
import (
|
|
"fyne.io/fyne"
|
|
"fyne.io/fyne/app"
|
|
"fyne.io/fyne/dialog"
|
|
"fyne.io/fyne/widget"
|
|
"github.com/minizbot2012/orbbind/keymap/orbweaver"
|
|
"github.com/minizbot2012/orbbind/ui/mainpage"
|
|
"github.com/minizbot2012/orbbind/ui/sidepage"
|
|
)
|
|
|
|
func main() {
|
|
ap := app.NewWithID("com.minizbot2012.orbbind")
|
|
window := ap.NewWindow("Orbweaver Rebinding")
|
|
window.Resize(fyne.NewSize(480, 480))
|
|
omap := &orbweaver.PKM{}
|
|
nmp := mainpage.NewMainPage(window, omap)
|
|
nsp := sidepage.NewSidePage(window, omap)
|
|
tabs := widget.NewTabContainer(nmp.Create(), nsp.Create())
|
|
tabs.Resize(window.Content().Size())
|
|
window.SetMainMenu(fyne.NewMainMenu(fyne.NewMenu("File", fyne.NewMenuItem("Save", func() {
|
|
dialog.ShowFileSave(func(p string) {
|
|
orbweaver.SaveIntoKeymap(omap, p)
|
|
}, window)
|
|
}), fyne.NewMenuItem("Load", func() {
|
|
dialog.ShowFileOpen(func(p string) {
|
|
if p != "" {
|
|
omap = orbweaver.LoadFile(p)
|
|
nmp.SetBindings(omap)
|
|
nsp.SetBindings(omap)
|
|
}
|
|
}, window)
|
|
}))))
|
|
window.SetContent(tabs)
|
|
window.ShowAndRun()
|
|
}
|