summaryrefslogtreecommitdiff
path: root/zz_controls.go
diff options
context:
space:
mode:
authorPietro Gagliardi <[email protected]>2018-08-20 22:55:40 -0400
committerPietro Gagliardi <[email protected]>2018-08-20 22:55:40 -0400
commit3983f630480c2e5fb4dd9941b1df3e7750b6e504 (patch)
treed277e36819a88e96ef0d52301da578e663757e14 /zz_controls.go
parent62fcb5ffd0097875e7ccf67715803df61cd916b1 (diff)
Added Grid and finally rounded out the control gallery example.
Diffstat (limited to 'zz_controls.go')
-rw-r--r--zz_controls.go102
1 files changed, 60 insertions, 42 deletions
diff --git a/zz_controls.go b/zz_controls.go
index b879b39..d77bebe 100644
--- a/zz_controls.go
+++ b/zz_controls.go
@@ -8,6 +8,8 @@ import (
"github.com/andlabs/ui"
)
+var mainwin *ui.Window
+
func makeBasicControlsPage() ui.Control {
vbox := ui.NewVerticalBox()
vbox.SetPadded(true)
@@ -116,64 +118,80 @@ func makeDataChoosersPage() ui.Control {
vbox.Append(ui.NewFontButton(), false)
vbox.Append(ui.NewColorButton(), false)
-/*
- uiBoxAppend(hbox,
- uiControl(uiNewVerticalSeparator()),
- 0);
+ hbox.Append(ui.NewVerticalSeparator(), false)
- vbox = uiNewVerticalBox();
- uiBoxSetPadded(vbox, 1);
- uiBoxAppend(hbox, uiControl(vbox), 1);
+ vbox = ui.NewVerticalBox()
+ vbox.SetPadded(true)
+ hbox.Append(vbox, true)
- grid = uiNewGrid();
- uiGridSetPadded(grid, 1);
- uiBoxAppend(vbox, uiControl(grid), 0);
+ grid := ui.NewGrid()
+ grid.SetPadded(true)
+ vbox.Append(grid, false)
- button = uiNewButton("Open File");
- entry = uiNewEntry();
- uiEntrySetReadOnly(entry, 1);
- uiButtonOnClicked(button, onOpenFileClicked, entry);
- uiGridAppend(grid, uiControl(button),
+ button := ui.NewButton("Open File")
+ entry := ui.NewEntry()
+ entry.SetReadOnly(true)
+ button.OnClicked(func(*ui.Button) {
+ filename := ui.OpenFile(mainwin)
+ if filename == "" {
+ filename = "(cancelled)"
+ }
+ entry.SetText(filename)
+ })
+ grid.Append(button,
0, 0, 1, 1,
- 0, uiAlignFill, 0, uiAlignFill);
- uiGridAppend(grid, uiControl(entry),
+ false, ui.AlignFill, false, ui.AlignFill)
+ grid.Append(entry,
1, 0, 1, 1,
- 1, uiAlignFill, 0, uiAlignFill);
+ true, ui.AlignFill, false, ui.AlignFill)
- button = uiNewButton("Save File");
- entry = uiNewEntry();
- uiEntrySetReadOnly(entry, 1);
- uiButtonOnClicked(button, onSaveFileClicked, entry);
- uiGridAppend(grid, uiControl(button),
+ button = ui.NewButton("Save File")
+ entry2 := ui.NewEntry()
+ entry2.SetReadOnly(true)
+ button.OnClicked(func(*ui.Button) {
+ filename := ui.SaveFile(mainwin)
+ if filename == "" {
+ filename = "(cancelled)"
+ }
+ entry2.SetText(filename)
+ })
+ grid.Append(button,
0, 1, 1, 1,
- 0, uiAlignFill, 0, uiAlignFill);
- uiGridAppend(grid, uiControl(entry),
+ false, ui.AlignFill, false, ui.AlignFill)
+ grid.Append(entry2,
1, 1, 1, 1,
- 1, uiAlignFill, 0, uiAlignFill);
+ true, ui.AlignFill, false, ui.AlignFill)
- msggrid = uiNewGrid();
- uiGridSetPadded(msggrid, 1);
- uiGridAppend(grid, uiControl(msggrid),
+ msggrid := ui.NewGrid()
+ msggrid.SetPadded(true)
+ grid.Append(msggrid,
0, 2, 2, 1,
- 0, uiAlignCenter, 0, uiAlignStart);
+ false, ui.AlignCenter, false, ui.AlignStart)
- button = uiNewButton("Message Box");
- uiButtonOnClicked(button, onMsgBoxClicked, NULL);
- uiGridAppend(msggrid, uiControl(button),
+ button = ui.NewButton("Message Box")
+ button.OnClicked(func(*ui.Button) {
+ ui.MsgBox(mainwin,
+ "This is a normal message box.",
+ "More detailed information can be shown here.")
+ })
+ msggrid.Append(button,
0, 0, 1, 1,
- 0, uiAlignFill, 0, uiAlignFill);
- button = uiNewButton("Error Box");
- uiButtonOnClicked(button, onMsgBoxErrorClicked, NULL);
- uiGridAppend(msggrid, uiControl(button),
+ false, ui.AlignFill, false, ui.AlignFill)
+ button = ui.NewButton("Error Box")
+ button.OnClicked(func(*ui.Button) {
+ ui.MsgBoxError(mainwin,
+ "This message box describes an error.",
+ "More detailed information can be shown here.")
+ })
+ msggrid.Append(button,
1, 0, 1, 1,
- 0, uiAlignFill, 0, uiAlignFill);
-*/
+ false, ui.AlignFill, false, ui.AlignFill)
return hbox
}
func setupUI() {
- mainwin := ui.NewWindow("libui Control Gallery", 640, 480, true)
+ mainwin = ui.NewWindow("libui Control Gallery", 640, 480, true)
mainwin.OnClosing(func(*ui.Window) bool {
ui.Quit()
return true
@@ -190,10 +208,10 @@ func setupUI() {
tab.Append("Basic Controls", makeBasicControlsPage())
tab.SetMargined(0, true)
- tab.Append("Numbers and Lists", makeNumbersPage());
+ tab.Append("Numbers and Lists", makeNumbersPage())
tab.SetMargined(1, true)
- tab.Append("Data Choosers", makeDataChoosersPage());
+ tab.Append("Data Choosers", makeDataChoosersPage())
tab.SetMargined(2, true)
mainwin.Show()