summaryrefslogtreecommitdiff
path: root/checkbox.go
blob: 0aa6aebb3773e5d0189a5f8ad1c7c262391e8d9f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
package gui

import "log"

func (n *Node) Checked() bool {
	n.Dump()
	return n.checked
}

/*
This was the old code
	newt.Custom = func () {
		println("AM IN CALLBACK. SETTING NODE.checked START")
		if newt.Checked() {
			println("is checked")
			c.checked = true
		} else {
			println("is not checked")
			c.checked = false
		}
		commonCallback(c)
		println("AM IN CALLBACK. SETTING NODE.checked END")
	}
*/


func (n *Node) NewCheckbox(name string) *Node {
	newNode := n.New(name)
	newNode.custom = n.custom

	newNode.Widget.Custom = func() {
		log.Println("even newer clicker() name", newNode.Widget)
		if (n.custom != nil) {
			n.custom()
		} else {
			log.Println("wit/gui No callback function is defined for button name =", name)
		}
	}

	for _, aplug := range allPlugins {
		log.Println("gui.NewCheckbox() aplug =", aplug.name, "name =", newNode.Widget.Name)
		if (aplug.NewCheckbox == nil) {
			log.Println("\tgui.NewCheckbox() aplug.NewCheckbox = nil", aplug.name)
			continue
		}
		aplug.NewCheckbox(&n.Widget, &newNode.Widget)
	}

	return newNode
}