74 lines
1.6 KiB
Go
74 lines
1.6 KiB
Go
package gui
|
|
|
|
// import "log"
|
|
import "github.com/andlabs/ui"
|
|
import _ "github.com/andlabs/ui/winmanifest"
|
|
|
|
var mybox *ui.Box
|
|
|
|
func (n *Node) AddGroup(title string) *Node {
|
|
if (n == nil) {
|
|
return nil
|
|
}
|
|
hbox := n.uiBox
|
|
if (hbox == nil) {
|
|
return n
|
|
}
|
|
group := ui.NewGroup(title)
|
|
group.SetMargined(true)
|
|
hbox.Append(group, true)
|
|
|
|
vbox := ui.NewVerticalBox()
|
|
vbox.SetPadded(true)
|
|
group.SetChild(vbox)
|
|
|
|
newNode := n.AddNode(title)
|
|
newNode.uiBox = vbox
|
|
return newNode
|
|
}
|
|
|
|
func (n *Node) MakeBasicControlsPage(title string) *Node {
|
|
if (n == nil) {
|
|
return nil
|
|
}
|
|
origbox := n.uiBox
|
|
if (origbox == nil) {
|
|
return n
|
|
}
|
|
|
|
vbox := ui.NewVerticalBox()
|
|
vbox.SetPadded(true)
|
|
|
|
hbox := ui.NewHorizontalBox()
|
|
hbox.SetPadded(true)
|
|
vbox.Append(hbox, false)
|
|
|
|
hbox.Append(ui.NewButton("Button"), false)
|
|
hbox.Append(ui.NewCheckbox("Checkbox"), false)
|
|
|
|
vbox.Append(ui.NewLabel("This is a label. Right now, labels can only span one line."), false)
|
|
|
|
vbox.Append(ui.NewHorizontalSeparator(), false)
|
|
|
|
group := ui.NewGroup("Entries")
|
|
group.SetMargined(true)
|
|
vbox.Append(group, true)
|
|
|
|
group.SetChild(ui.NewNonWrappingMultilineEntry())
|
|
|
|
entryForm := ui.NewForm()
|
|
entryForm.SetPadded(true)
|
|
group.SetChild(entryForm)
|
|
|
|
entryForm.Append("Entry", ui.NewEntry(), false)
|
|
entryForm.Append("Password Entry", ui.NewPasswordEntry(), false)
|
|
entryForm.Append("Search Entry", ui.NewSearchEntry(), false)
|
|
entryForm.Append("Multiline Entry", ui.NewMultilineEntry(), true)
|
|
entryForm.Append("Multiline Entry No Wrap", ui.NewNonWrappingMultilineEntry(), true)
|
|
|
|
origbox.Append(vbox, false)
|
|
newNode := n.AddNode(title)
|
|
newNode.uiBox = vbox
|
|
return newNode
|
|
}
|