62 lines
1.3 KiB
Go
62 lines
1.3 KiB
Go
package main
|
|
|
|
import (
|
|
"go.wit.com/widget"
|
|
)
|
|
|
|
type node struct {
|
|
parent *node
|
|
children []*node
|
|
|
|
WidgetId int // widget ID
|
|
WidgetType widget.WidgetType
|
|
ParentId int // parent ID
|
|
|
|
state widget.State
|
|
|
|
// a reference name for programming and debuggign. Must be unique
|
|
progname string
|
|
|
|
// the text used for button labesl, window titles, checkbox names, etc
|
|
label string
|
|
|
|
// horizontal means layout widgets like books on a bookshelf
|
|
// vertical means layout widgets like books in a stack
|
|
// direction widget.Orientation
|
|
direction widget.Orientation
|
|
|
|
// This is how the values are passed back and forth
|
|
// values from things like checkboxes & dropdown's
|
|
value any
|
|
|
|
strings []string
|
|
|
|
// This is used for things like a slider(0,100)
|
|
X int
|
|
Y int
|
|
|
|
// This is for the grid size & widget position
|
|
W int
|
|
H int
|
|
AtW int
|
|
AtH int
|
|
|
|
vals []string // dropdown menu items
|
|
|
|
// horizontal bool `default:false`
|
|
|
|
hasTabs bool // does the window have tabs?
|
|
currentTab bool // the visible tab
|
|
|
|
// the internal plugin toolkit structure
|
|
// in the gtk plugin, it has gtk things like margin & border settings
|
|
// in the text console one, it has text console things like colors for menus & buttons
|
|
tk *guiWidget
|
|
}
|
|
|
|
/*
|
|
func (n *node) doUserEvent() {
|
|
log.Log(ERROR, "doUserEvent() ERROR")
|
|
}
|
|
*/
|