summaryrefslogtreecommitdiff
path: root/newctrl/tab_unix.go
diff options
context:
space:
mode:
authorPietro Gagliardi <[email protected]>2014-10-18 17:03:38 -0400
committerPietro Gagliardi <[email protected]>2014-10-18 17:03:38 -0400
commitaed423a09f35e26a318bd44a6670d4222906de9a (patch)
tree01ad31d5c137859dfeae5f42094834b405971177 /newctrl/tab_unix.go
parent62048303a34f6cac733798651adb53b640e2114a (diff)
Remvoed the newctrl working directory.
Diffstat (limited to 'newctrl/tab_unix.go')
-rw-r--r--newctrl/tab_unix.go63
1 files changed, 0 insertions, 63 deletions
diff --git a/newctrl/tab_unix.go b/newctrl/tab_unix.go
deleted file mode 100644
index 064f17f..0000000
--- a/newctrl/tab_unix.go
+++ /dev/null
@@ -1,63 +0,0 @@
-// +build !windows,!darwin
-
-// 25 july 2014
-
-package ui
-
-import (
- "unsafe"
-)
-
-// #include "gtk_unix.h"
-import "C"
-
-type tab struct {
- *controlSingleWidget
- container *C.GtkContainer
- notebook *C.GtkNotebook
-
- tabs []*container
- children []Control
-
- chainresize func(x int, y int, width int, height int, d *sizing)
-}
-
-func newTab() Tab {
- widget := C.gtk_notebook_new()
- t := &tab{
- controlSingleWidget: newControlSingleWidget(widget),
- container: (*C.GtkContainer)(unsafe.Pointer(widget)),
- notebook: (*C.GtkNotebook)(unsafe.Pointer(widget)),
- }
- t.chainresize = t.fresize
- t.fresize = t.xresize
- // there are no scrolling arrows by default; add them in case there are too many tabs
- C.gtk_notebook_set_scrollable(t.notebook, C.TRUE)
- return t
-}
-
-func (t *tab) Append(name string, control Control) {
- c := newContainer()
- t.tabs = append(t.tabs, c)
- // this calls gtk_container_add(), which, according to gregier in irc.gimp.net/#gtk+, acts just like gtk_notebook_append_page()
- c.setParent(&controlParent{t.container})
- control.setParent(c.parent())
- t.children = append(t.children, control)
- cname := togstr(name)
- defer freegstr(cname)
- C.gtk_notebook_set_tab_label_text(t.notebook,
- // unfortunately there does not seem to be a gtk_notebook_set_nth_tab_label_text()
- C.gtk_notebook_get_nth_page(t.notebook, C.gint(len(t.tabs)-1)),
- cname)
-}
-
-func (t *tab) xresize(x int, y int, width int, height int, d *sizing) {
- // first, chain up to change the GtkFrame and its child container
- t.chainresize(x, y, width, height, d)
-
- // now that the containers have the correct size, we can resize the children
- for i, _ := range t.tabs {
- a := t.tabs[i].allocation(false/*TODO*/)
- t.children[i].resize(int(a.x), int(a.y), int(a.width), int(a.height), d)
- }
-}