summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPietro Gagliardi <[email protected]>2014-10-26 21:33:52 -0400
committerPietro Gagliardi <[email protected]>2014-10-26 21:33:52 -0400
commitde9c598ca358b5e1b3a2f2d7be6bdf0442b38d42 (patch)
treeb64a472c423791f74d79e8d7f0d39b8fe106bf7d
parentd97f5233a94b0a7759a3889e157f89646d7ea3c8 (diff)
Removed container from SimpleGrid and Grid. This is necessary to do now, alas; the Windows gouicontainers left over weren't being hidden, causing undesirable Tab behavior.
-rw-r--r--grid.go16
-rw-r--r--simplegrid.go16
2 files changed, 13 insertions, 19 deletions
diff --git a/grid.go b/grid.go
index 06951a8..d778c5f 100644
--- a/grid.go
+++ b/grid.go
@@ -59,7 +59,7 @@ type grid struct {
controls []gridCell
indexof map[Control]int
prev int
- container *container
+ parent *controlParent
padded bool
xmax int
@@ -90,7 +90,6 @@ type gridCell struct {
func NewGrid() Grid {
return &grid{
indexof: map[Control]int{},
- container: newContainer(),
}
}
@@ -136,7 +135,9 @@ func (g *grid) Add(control Control, nextTo Control, side Side, xexpand bool, xal
xspan: xspan,
yspan: yspan,
}
- control.setParent(g.container.parent())
+ if g.parent != nil {
+ control.setParent(g.parent)
+ }
// if this is the first control, just add it in directly
if len(g.controls) != 0 {
next := g.prev
@@ -175,7 +176,10 @@ func (g *grid) SetPadded(padded bool) {
}
func (g *grid) setParent(p *controlParent) {
- g.container.setParent(p)
+ g.parent = p
+ for _, c := range g.controls {
+ c.control.setParent(g.parent)
+ }
}
func (g *grid) containerShow() {
@@ -210,15 +214,11 @@ func (g *grid) mkgrid() (gg [][]int, colwidths []int, rowheights []int) {
}
func (g *grid) resize(x int, y int, width int, height int, d *sizing) {
- g.container.resize(x, y, width, height, d)
-
if len(g.controls) == 0 {
// nothing to do
return
}
- x, y, width, height = g.container.bounds(d)
-
// -2) get this Grid's padding
xpadding := d.xpadding
ypadding := d.ypadding
diff --git a/simplegrid.go b/simplegrid.go
index e5aa5eb..6279ffb 100644
--- a/simplegrid.go
+++ b/simplegrid.go
@@ -40,7 +40,6 @@ type simpleGrid struct {
stretchyfill bool
widths, heights [][]int // caches to avoid reallocating each time
rowheights, colwidths []int
- container *container
padded bool
}
@@ -81,13 +80,6 @@ func NewSimpleGrid(nPerRow int, controls ...Control) SimpleGrid {
heights: ch,
rowheights: make([]int, nRows),
colwidths: make([]int, nPerRow),
- container: newContainer(),
- }
- p := g.container.parent()
- for _, cc := range g.controls {
- for _, c := range cc {
- c.setParent(p)
- }
}
return g
}
@@ -121,7 +113,11 @@ func (g *simpleGrid) SetPadded(padded bool) {
}
func (g *simpleGrid) setParent(parent *controlParent) {
- g.container.setParent(parent)
+ for _, cc := range g.controls {
+ for _, c := range cc {
+ c.setParent(parent)
+ }
+ }
}
func (g *simpleGrid) containerShow() {
@@ -148,11 +144,9 @@ func (g *simpleGrid) resize(x int, y int, width int, height int, d *sizing) {
return b
}
- g.container.resize(x, y, width, height, d)
if len(g.controls) == 0 {
return
}
- x, y, width, height = g.container.bounds(d)
// -1) get this SimpleGrid's padding
xpadding := d.xpadding
ypadding := d.ypadding