From 88f33afbb777a3d02631c4eb6a2d6f6dbf7fba3f Mon Sep 17 00:00:00 2001 From: Jeff Carr Date: Thu, 6 Feb 2025 13:47:19 -0600 Subject: window depth order works --- window.go | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) (limited to 'window.go') diff --git a/window.go b/window.go index 1039430..a13970e 100644 --- a/window.go +++ b/window.go @@ -6,6 +6,7 @@ package main import ( "fmt" + log "go.wit.com/log" "go.wit.com/toolkits/tree" "go.wit.com/widget" ) @@ -125,3 +126,25 @@ func (win *guiWidget) addWindowFrame(wId int) *tree.Node { n.TK = tk return n } + +func (tk *guiWidget) makeWindowActive() { + if !(tk.node.WidgetType == widget.Window || tk.node.WidgetType == widget.Stdout) { + // only allow Window or the Stdout widgets to be made active + return + } + + // disable and increment all the windows + for _, tk := range me.allwin { + tk.window.order += 1 + tk.window.active = false + } + + // set this window as the active one + tk.window.active = true + tk.window.order = 0 + + // print out the window list + for _, tk := range me.allwin { + log.Info("makeWindowActive() Window", tk.labelN, tk.window.active, tk.window.order) + } +} -- cgit v1.2.3