fixed a commit
This commit is contained in:
parent
8faa174170
commit
46fe81665c
1
Makefile
1
Makefile
|
@ -1,5 +1,6 @@
|
|||
# simple sortcut to push all git changes
|
||||
push:
|
||||
git checkout devel
|
||||
git pull
|
||||
git add --all
|
||||
-git commit -a -s
|
||||
|
|
8
debug.go
8
debug.go
|
@ -40,7 +40,13 @@ func DumpBoxes() {
|
|||
log.Println("gui.DumpBoxes()\tWindow.UiTab type =", reflect.TypeOf(window.UiTab))
|
||||
log.Println("gui.DumpBoxes()\tWindow.UiTab =", window.UiTab)
|
||||
log.Println("gui.DumpBoxes()\tWindow.UiTab.NumPages() =", window.UiTab.NumPages())
|
||||
spew.Dump(window.UiTab)
|
||||
// tmp := spew.NewDefaultConfig()
|
||||
// tmp.MaxDepth = 2
|
||||
// tmp.Dump(window.UiTab)
|
||||
if (Config.Debug) {
|
||||
scs := spew.ConfigState{MaxDepth: 2}
|
||||
scs.Dump(window.UiTab)
|
||||
}
|
||||
}
|
||||
}
|
||||
for i, window := range Data.Windows {
|
||||
|
|
88
gui.go
88
gui.go
|
@ -1,7 +1,7 @@
|
|||
package gui
|
||||
|
||||
import "log"
|
||||
import "time"
|
||||
// import "time"
|
||||
import "regexp"
|
||||
|
||||
import "github.com/andlabs/ui"
|
||||
|
@ -20,80 +20,6 @@ func GuiInit() {
|
|||
})
|
||||
}
|
||||
|
||||
func InitGuiWindow(name string, gw *GuiWindow) *GuiWindow {
|
||||
log.Println("InitGuiWindow() START")
|
||||
var newGuiWindow GuiWindow
|
||||
newGuiWindow.Width = Config.Width
|
||||
newGuiWindow.Height = Config.Height
|
||||
newGuiWindow.Name = name
|
||||
newGuiWindow.MakeWindow = gw.MakeWindow
|
||||
newGuiWindow.UiWindow = gw.UiWindow
|
||||
newGuiWindow.UiTab = gw.UiTab
|
||||
newGuiWindow.BoxMap = make(map[string]*GuiBox)
|
||||
newGuiWindow.EntryMap = make(map[string]*GuiEntry)
|
||||
Data.Windows = append(Data.Windows, &newGuiWindow)
|
||||
|
||||
if (Data.WindowMap == nil) {
|
||||
log.Println("gui.InitGuiWindow() making the Data.WindowMap here")
|
||||
Data.WindowMap = make(map[string]*GuiWindow)
|
||||
}
|
||||
Data.WindowMap[name] = &newGuiWindow
|
||||
|
||||
// make a blank entry for testing
|
||||
// newGuiWindow.EntryMap["test"] = nil
|
||||
|
||||
if (Data.buttonMap == nil) {
|
||||
GuiInit()
|
||||
}
|
||||
log.Println("InitGuiWindow() END *GuiWindow =", &newGuiWindow)
|
||||
return &newGuiWindow
|
||||
}
|
||||
|
||||
|
||||
func StartNewWindow(bg bool, name string, callback func(*GuiWindow) *GuiBox) {
|
||||
log.Println("StartNewWindow() Create a new window")
|
||||
var junk GuiWindow
|
||||
junk.MakeWindow = callback
|
||||
window := InitGuiWindow(name, &junk)
|
||||
if (bg) {
|
||||
log.Println("StartNewWindow() START NEW GOROUTINE for ui.Main()")
|
||||
go ui.Main(func() {
|
||||
log.Println("gui.StartNewWindow() inside ui.Main()")
|
||||
go InitTabWindow(window)
|
||||
})
|
||||
time.Sleep(2000 * time.Millisecond) // this might make it more stable on windows?
|
||||
} else {
|
||||
log.Println("StartNewWindow() WAITING for ui.Main()")
|
||||
ui.Main(func() {
|
||||
log.Println("gui.StartNewWindow() inside ui.Main()")
|
||||
InitTabWindow(window)
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
func InitTabWindow(gw *GuiWindow) {
|
||||
log.Println("InitTabWindow() START. THIS WINDOW IS NOT YET SHOWN")
|
||||
|
||||
gw.UiWindow = ui.NewWindow(gw.Name, int(gw.Width), int(gw.Height), true)
|
||||
gw.UiWindow.SetBorderless(false)
|
||||
|
||||
gw.UiWindow.OnClosing(func(*ui.Window) bool {
|
||||
log.Println("InitTabWindow() OnClosing() THIS WINDOW IS CLOSING gw=", gw)
|
||||
ui.Quit()
|
||||
return true
|
||||
})
|
||||
|
||||
gw.UiTab = ui.NewTab()
|
||||
gw.UiWindow.SetChild(gw.UiTab)
|
||||
gw.UiWindow.SetMargined(true)
|
||||
|
||||
|
||||
box := gw.MakeWindow(gw)
|
||||
log.Println("InitTabWindow() END box =", box)
|
||||
log.Println("InitTabWindow() END gw =", gw)
|
||||
gw.UiWindow.Show()
|
||||
}
|
||||
|
||||
/*
|
||||
// string handling examples that might be helpful for normalizeInt()
|
||||
isAlpha := regexp.MustCompile(`^[A-Za-z]+$`).MatchString
|
||||
|
@ -127,15 +53,3 @@ func normalizeInt(s string) string {
|
|||
log.Println("normalizeInt() s =", clean)
|
||||
return clean
|
||||
}
|
||||
|
||||
func MessageWindow(gw *GuiWindow, msg1 string, msg2 string) {
|
||||
log.Println("gui.MessageWindow() msg1 =", msg1)
|
||||
log.Println("gui.MessageWindow() msg2 =", msg2)
|
||||
ui.MsgBox(gw.UiWindow, msg1, msg2)
|
||||
}
|
||||
|
||||
func ErrorWindow(gw *GuiWindow, msg1 string, msg2 string) {
|
||||
log.Println("gui.ErrorWindow() msg1 =", msg1)
|
||||
log.Println("gui.ErrorWindow() msg2 =", msg2)
|
||||
ui.MsgBoxError(gw.UiWindow, msg1, msg2)
|
||||
}
|
||||
|
|
|
@ -0,0 +1,82 @@
|
|||
package gui
|
||||
|
||||
import "log"
|
||||
import "time"
|
||||
// import "regexp"
|
||||
|
||||
import "github.com/andlabs/ui"
|
||||
import _ "github.com/andlabs/ui/winmanifest"
|
||||
|
||||
func InitGuiWindow(action string, gw *GuiWindow) *GuiWindow {
|
||||
log.Println("InitGuiWindow() START")
|
||||
var newGuiWindow GuiWindow
|
||||
newGuiWindow.Width = Config.Width
|
||||
newGuiWindow.Height = Config.Height
|
||||
newGuiWindow.MakeWindow = gw.MakeWindow
|
||||
newGuiWindow.UiWindow = gw.UiWindow
|
||||
newGuiWindow.UiTab = gw.UiTab
|
||||
newGuiWindow.BoxMap = make(map[string]*GuiBox)
|
||||
newGuiWindow.EntryMap = make(map[string]*GuiEntry)
|
||||
newGuiWindow.EntryMap["test"] = nil
|
||||
Data.Windows = append(Data.Windows, &newGuiWindow)
|
||||
|
||||
if (Data.buttonMap == nil) {
|
||||
GuiInit()
|
||||
}
|
||||
log.Println("InitGuiWindow() END *GuiWindow =", &newGuiWindow)
|
||||
return &newGuiWindow
|
||||
}
|
||||
|
||||
|
||||
func StartNewWindow(bg bool, action string, callback func(*GuiWindow) *GuiBox) {
|
||||
log.Println("StartNewWindow() Create a new window")
|
||||
var junk GuiWindow
|
||||
junk.MakeWindow = callback
|
||||
// junk.Action = action
|
||||
window := InitGuiWindow(action, &junk)
|
||||
if (bg) {
|
||||
log.Println("StartNewWindow() START NEW GOROUTINE for ui.Main()")
|
||||
go ui.Main(func() {
|
||||
log.Println("gui.StartNewWindow() inside ui.Main()")
|
||||
go InitTabWindow(window)
|
||||
})
|
||||
time.Sleep(2000 * time.Millisecond) // this might make it more stable on windows?
|
||||
} else {
|
||||
log.Println("StartNewWindow() WAITING for ui.Main()")
|
||||
ui.Main(func() {
|
||||
log.Println("gui.StartNewWindow() inside ui.Main()")
|
||||
InitTabWindow(window)
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
func InitTabWindow(gw *GuiWindow) {
|
||||
log.Println("InitTabWindow() START. THIS WINDOW IS NOT YET SHOWN")
|
||||
|
||||
gw.UiWindow = ui.NewWindow("InitTabWindow()", int(gw.Width), int(gw.Height), true)
|
||||
gw.UiWindow.SetBorderless(false)
|
||||
|
||||
gw.UiWindow.OnClosing(func(*ui.Window) bool {
|
||||
log.Println("InitTabWindow() OnClosing() THIS WINDOW IS CLOSING gw=", gw)
|
||||
ui.Quit()
|
||||
return true
|
||||
})
|
||||
|
||||
gw.UiTab = ui.NewTab()
|
||||
gw.UiWindow.SetChild(gw.UiTab)
|
||||
gw.UiWindow.SetMargined(true)
|
||||
|
||||
|
||||
box := gw.MakeWindow(gw)
|
||||
log.Println("InitTabWindow() END box =", box)
|
||||
log.Println("InitTabWindow() END gw =", gw)
|
||||
gw.UiWindow.Show()
|
||||
}
|
||||
|
||||
func MessageWindow(gw *GuiWindow, msg1 string, msg2 string) {
|
||||
ui.MsgBox(gw.UiWindow, msg1, msg2)
|
||||
}
|
||||
|
||||
func ErrorWindow(gw *GuiWindow, msg1 string, msg2 string) {
|
||||
ui.MsgBoxError(gw.UiWindow, msg1, msg2)
|
||||
}
|
Loading…
Reference in New Issue