diff --git a/demo-window.go b/demo-window.go index f15f3ee..3d17c35 100644 --- a/demo-window.go +++ b/demo-window.go @@ -1,6 +1,6 @@ package gui -// import "log" +import "log" import "github.com/andlabs/ui" import _ "github.com/andlabs/ui/winmanifest" @@ -71,3 +71,40 @@ func (n *Node) MakeBasicControlsPage(title string) *Node { newNode.uiBox = vbox return newNode } + +func (n *Node) MakeGroupEdit(title string) *Node { + n.Dump() + + group := ui.NewGroup(title) + group.SetMargined(true) + n.uiBox.Append(group, true) + + entrybox := ui.NewNonWrappingMultilineEntry() + + group.SetChild(entrybox) + + log.Println("entrybox =", entrybox) + n.uiMultilineEntry = entrybox + newNode := n.AddNode(title) + newNode.uiMultilineEntry = entrybox + newNode.uiGroup = group + return newNode + +/* + panic("dump") + 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 n +} diff --git a/entry.go b/entry.go index d215cd2..a69adba 100644 --- a/entry.go +++ b/entry.go @@ -1,6 +1,7 @@ package gui import "log" +import "errors" // import "fmt" import "github.com/andlabs/ui" @@ -29,7 +30,20 @@ func (n *Node) SetText(value string) error { n.uiButton.SetText(value) return nil } - return nil + if (n.uiMultilineEntry != nil) { + n.uiMultilineEntry.SetText(value) + return nil + } + n.Dump() + return errors.New("couldn't find something to set the text to") +} + +func (n *Node) SetMargined(x bool) { + if (n.uiGroup != nil) { + n.uiGroup.SetMargined(x) + return + } + log.Println("Couldn't find something that has a Margin setting") } func defaultEntryChange(e *ui.Entry) { diff --git a/new-structs.go b/new-structs.go index 65b964f..5bceae2 100644 --- a/new-structs.go +++ b/new-structs.go @@ -65,6 +65,8 @@ type Node struct { uiBox *ui.Box uiArea *ui.Area uiText *ui.EditableCombobox + uiMultilineEntry *ui.MultilineEntry + uiGroup *ui.Group } func (n *Node) Parent() *Node {