summaryrefslogtreecommitdiff
path: root/control.go
diff options
context:
space:
mode:
authorPietro Gagliardi <[email protected]>2014-10-26 15:15:13 -0400
committerPietro Gagliardi <[email protected]>2014-10-26 15:15:13 -0400
commit335480db7cd6ed97778ef8fef0710e4d68606457 (patch)
treee42e175a54ad1e2cde7c99705270987170e387e9 /control.go
parentca39a32a90913ce76c21d91fa7773ac3f893e009 (diff)
Reimplemented Control.containerShow()/Control.containerHide(). Will be needed to fully move Tab on Windows away from container.
Diffstat (limited to 'control.go')
-rw-r--r--control.go15
1 files changed, 15 insertions, 0 deletions
diff --git a/control.go b/control.go
index 34e5c84..52202b7 100644
--- a/control.go
+++ b/control.go
@@ -8,6 +8,11 @@ type Control interface {
preferredSize(d *sizing) (width, height int)
resize(x int, y int, width int, height int, d *sizing)
nTabStops() int // used by the Windows backend
+
+ // these are provided for Tab on Windows, where we have to show and hide the individual tab pages manually
+ // if we ever get something like a SidebarStack of some sort, we'll need to implement this everywhere
+ containerShow() // show if and only if programmer said to show
+ containerHide() // hide regardless of whether programmer said to hide
}
type controlbase struct {
@@ -15,6 +20,8 @@ type controlbase struct {
fpreferredSize func(d *sizing) (width, height int)
fresize func(x int, y int, width int, height int, d *sizing)
fnTabStops func() int
+ fcontainerShow func()
+ fcontainerHide func()
}
// children should not use the same name as these, otherwise weird things will happen
@@ -34,3 +41,11 @@ func (c *controlbase) resize(x int, y int, width int, height int, d *sizing) {
func (c *controlbase) nTabStops() int {
return c.fnTabStops()
}
+
+func (c *controlbase) containerShow() {
+ c.fcontainerShow()
+}
+
+func (c *controlbase) containerHide() {
+ c.fcontainerHide()
+}