summaryrefslogtreecommitdiff
path: root/AAA_GOFILES/zz_test.go
diff options
context:
space:
mode:
Diffstat (limited to 'AAA_GOFILES/zz_test.go')
-rw-r--r--AAA_GOFILES/zz_test.go129
1 files changed, 129 insertions, 0 deletions
diff --git a/AAA_GOFILES/zz_test.go b/AAA_GOFILES/zz_test.go
new file mode 100644
index 0000000..83a8474
--- /dev/null
+++ b/AAA_GOFILES/zz_test.go
@@ -0,0 +1,129 @@
+// 11 december 2015
+
+package ui
+
+import (
+ "flag"
+ "testing"
+)
+
+var (
+ nomenus = flag.Bool("nomenus", false, "No menus")
+ startspaced = flag.Bool("startspaced", false, "Start with spacing")
+ swaphv = flag.Bool("swaphv", false, "Swap horizontal and vertical boxes")
+)
+
+var mainbox *Box
+var mainTab *Tab
+
+func xmain() {
+ if !*nomenus {
+ // TODO
+ }
+
+ w := newWindow("Main Window", 320, 240, true)
+ w.OnClosing(func(*Window) bool {
+ Quit()
+ return true
+ })
+
+ OnShouldQuit(func() bool {
+ // TODO
+ return true
+ })
+
+ mainbox = newHorizontalBox()
+ w.SetChild(mainbox)
+
+ outerTab := newTab()
+ mainbox.Append(outerTab, true)
+
+ mainTab = newTab()
+ outerTab.Append("Original", mainTab)
+
+ makePage1(w)
+ mainTab.Append("Page 1", page1)
+
+ mainTab.Append("Page 2", makePage2())
+
+ // TODO
+
+ if *startspaced {
+ setSpaced(true)
+ }
+
+ w.Show()
+}
+
+func TestIt(t *testing.T) {
+ err := Main(xmain)
+ if err != nil {
+ t.Fatal(err)
+ }
+}
+
+var (
+ spwindows []*Window
+ sptabs []*Tab
+ spgroups []*Group
+ spboxes []*Box
+)
+
+func newWindow(title string, width int, height int, hasMenubar bool) *Window {
+ w := NewWindow(title, width, height, hasMenubar)
+ spwindows = append(spwindows, w)
+ return w
+}
+
+func newTab() *Tab {
+ t := NewTab()
+ sptabs = append(sptabs, t)
+ return t
+}
+
+func newGroup(title string) *Group {
+ g := NewGroup(title)
+ spgroups = append(spgroups, g)
+ return g
+}
+
+func newHorizontalBox() *Box {
+ var b *Box
+
+ if *swaphv {
+ b = NewVerticalBox()
+ } else {
+ b = NewHorizontalBox()
+ }
+ spboxes = append(spboxes, b)
+ return b
+}
+
+func newVerticalBox() *Box {
+ var b *Box
+
+ if *swaphv {
+ b = NewHorizontalBox()
+ } else {
+ b = NewVerticalBox()
+ }
+ spboxes = append(spboxes, b)
+ return b
+}
+
+func setSpaced(spaced bool) {
+ for _, w := range spwindows {
+ w.SetMargined(spaced)
+ }
+ for _, t := range sptabs {
+ for i := 0; i < t.NumPages(); i++ {
+ t.SetMargined(i, spaced)
+ }
+ }
+ for _, g := range spgroups {
+ g.SetMargined(spaced)
+ }
+ for _, b := range spboxes {
+ b.SetPadded(spaced)
+ }
+}