diff --git a/checkbox.go b/checkbox.go index 8e949b2..e7e91e7 100644 --- a/checkbox.go +++ b/checkbox.go @@ -23,16 +23,16 @@ func setChecked(n *tree.Node, b bool) { // redraw the checkbox func (tk *guiWidget) setCheckbox() { - if tk.node.WidgetType != widget.Checkbox { - log.Log(WARN, "setCheckbox() being run on widget:", tk.node.WidgetType) + if tk.WidgetType() != widget.Checkbox { + log.Log(WARN, "setCheckbox() being run on widget:", tk.WidgetType()) return } - if tk.node.State.Checked { - log.Log(WARN, "setCheckbox() got true", tk.node.State.Checked) - tk.labelN = "X " + tk.node.State.Label + if tk.Checked() { + log.Log(WARN, "setCheckbox() got true", tk.Checked()) + tk.labelN = "X " + tk.GetLabel() } else { - log.Log(WARN, "setCheckbox() got false", tk.node.State.Checked) - tk.labelN = "_ " + tk.node.State.Label + log.Log(WARN, "setCheckbox() got false", tk.Checked()) + tk.labelN = "_ " + tk.GetLabel() } tk.Hide() diff --git a/eventMouseClick.go b/eventMouseClick.go index 6cdffd4..3656e51 100644 --- a/eventMouseClick.go +++ b/eventMouseClick.go @@ -60,7 +60,7 @@ func doMouseClick(w int, h int) { for _, tk := range win.findByXYreal(w, h) { switch tk.WidgetType() { case widget.Checkbox: - if tk.node.State.Checked { + if tk.Checked() { log.Log(WARN, "checkbox is being set to false") tk.node.State.Checked = false tk.setCheckbox() diff --git a/size.go b/size.go index 06c3a65..94248ff 100644 --- a/size.go +++ b/size.go @@ -9,19 +9,6 @@ import ( "go.wit.com/widget" ) -func (tk *guiWidget) Hidden() bool { - if tk.parent == nil { - return tk.node.Hidden() - } - if tk.parent.node.WidgetId == 0 { - return tk.node.Hidden() - } - if tk.parent.Hidden() { - return true - } - return tk.node.Hidden() -} - func (tk *guiWidget) Size() (int, int) { if tk == nil { return 0, 0 @@ -139,7 +126,7 @@ func (w *guiWidget) sizeBox() (int, int) { continue } sizeW, sizeH := child.Size() - if child.node.State.Direction == widget.Vertical { + if child.Direction() == widget.Vertical { maxW += sizeW if sizeH > maxH { maxH = sizeH diff --git a/treeAdd.go b/treeAdd.go index 9c71a91..b77aeb2 100644 --- a/treeAdd.go +++ b/treeAdd.go @@ -67,7 +67,7 @@ func addWidget(n *tree.Node) { return case widget.Button: tk.setColorButton() - if tk.node.IsEnabled() { + if tk.IsEnabled() { } else { tk.setColorDisable() } diff --git a/treeWidget.go b/treeWidget.go index 28a75ee..0477470 100644 --- a/treeWidget.go +++ b/treeWidget.go @@ -171,3 +171,27 @@ func (tk *guiWidget) GetLabel() string { func (tk *guiWidget) IsEnabled() bool { return tk.node.IsEnabled() } + +func (tk *guiWidget) Checked() bool { + return tk.node.State.Checked +} + +func (tk *guiWidget) Hidden() bool { + if tk.node == nil { + return false + } + if tk.parent == nil { + return tk.node.Hidden() + } + if tk.parent.WidgetId() == 0 { + return tk.node.Hidden() + } + if tk.parent.Hidden() { + return true + } + return tk.node.Hidden() +} + +func (tk *guiWidget) Direction() widget.Orientation { + return tk.node.State.Direction +}