summaryrefslogtreecommitdiff
path: root/widget.go
diff options
context:
space:
mode:
authorJeff Carr <[email protected]>2024-02-05 02:22:58 -0600
committerJeff Carr <[email protected]>2024-02-05 02:22:58 -0600
commit2ee37e5c209f64a09d4088b8895880deb084d0ee (patch)
tree53de73862e9ccbdef981e90a4c09edf183d01e25 /widget.go
parent8f9e47c11711b629ff7351c0626c85d3e8aa0979 (diff)
fixed errors in Show()
Signed-off-by: Jeff Carr <[email protected]>
Diffstat (limited to 'widget.go')
-rw-r--r--widget.go34
1 files changed, 27 insertions, 7 deletions
diff --git a/widget.go b/widget.go
index d87d35e..ee6a12d 100644
--- a/widget.go
+++ b/widget.go
@@ -65,12 +65,6 @@ func setupCtrlDownWidget() {
}
func (w *guiWidget) deleteView() {
- /*
- if w.v != nil {
- w.v.Visible = false
- return
- }
- */
// make sure the view isn't really there
log.Log(NOW, "deleteView()", w.cuiName, w.WidgetType, w.node.WidgetId)
me.baseGui.DeleteView(w.cuiName)
@@ -82,6 +76,8 @@ func (w *guiWidget) IsCurrent() bool {
return w.isCurrent
}
if w.node.WidgetType == widget.Window {
+ log.Log(NOW, "IsCurrent() found current window", w.cuiName, w.String())
+ log.Log(NOW, "IsCurrent() window w.isCurrent =", w.isCurrent)
return w.isCurrent
}
if w.node.WidgetType == widget.Root {
@@ -106,9 +102,33 @@ func (tk *guiWidget) Visible() bool {
}
func (tk *guiWidget) Show() {
- if tk.IsCurrent() {
+ // always should the dropdown widget
+ if tk == me.dropdownV {
+ me.dropdownV.showView()
+ return
+ }
+ // if this isn't in the binary tree
+ // it's some internal widget so always display those
+ if tk.node == nil {
tk.showView()
+ return
+ }
+
+ // if the widget is not in the current displayed windo
+ // then ignore it
+ log.Log(NOW, "Show() tk =", tk.cuiName, tk.String())
+ log.Log(NOW, "Show() tk.IsCurrent() returned", tk.IsCurrent())
+ if ! tk.IsCurrent() {
+ log.Log(NOW, "Show() NOT drawing", tk.cuiName, tk.String())
+ return
+ }
+ log.Log(NOW, "Show() drawing", tk.cuiName, tk.String())
+
+ // finally, check if the widget State is hidden or not
+ if tk.node.State.Hidden {
+ // don't display hidden widgets
} else {
+ tk.showView()
}
}