summaryrefslogtreecommitdiff
path: root/redo/table_unix.go
diff options
context:
space:
mode:
authorPietro Gagliardi <[email protected]>2014-07-30 10:21:23 -0400
committerPietro Gagliardi <[email protected]>2014-07-30 10:21:23 -0400
commit4740f72efb09042abc3b0577044e720bcc36dcb2 (patch)
treea3fd18f31065d8c2764adf27cdf32f151fcab17e /redo/table_unix.go
parent210102fe95a72f32f9149fd674bb0c2190f14171 (diff)
Applied the new Control system to the GTK+ backend.
Diffstat (limited to 'redo/table_unix.go')
-rw-r--r--redo/table_unix.go23
1 files changed, 2 insertions, 21 deletions
diff --git a/redo/table_unix.go b/redo/table_unix.go
index 4d47405..23366f4 100644
--- a/redo/table_unix.go
+++ b/redo/table_unix.go
@@ -14,15 +14,11 @@ import (
import "C"
type table struct {
- *widgetbase
+ *scrolledcontrol
*tablebase
- treewidget *C.GtkWidget
treeview *C.GtkTreeView
- scrollc *C.GtkContainer
- scrollwindow *C.GtkScrolledWindow
-
model *C.goTableModel
modelgtk *C.GtkTreeModel
@@ -33,19 +29,11 @@ type table struct {
func finishNewTable(b *tablebase, ty reflect.Type) Table {
widget := C.gtk_tree_view_new()
- scroller := C.gtk_scrolled_window_new(nil, nil)
t := &table{
- // TODO kludge
- widgetbase: newWidget(scroller),
+ scrolledcontrol: newScrolledControl(widget, true),
tablebase: b,
- treewidget: widget,
treeview: (*C.GtkTreeView)(unsafe.Pointer(widget)),
- scrollc: (*C.GtkContainer)(unsafe.Pointer(scroller)),
- scrollwindow: (*C.GtkScrolledWindow)(unsafe.Pointer(scroller)),
}
- // give the scrolled window a border (thanks to jlindgren in irc.gimp.net/#gtk+)
- C.gtk_scrolled_window_set_shadow_type(t.scrollwindow, C.GTK_SHADOW_IN)
- C.gtk_container_add(t.scrollc, t.treewidget)
model := C.newTableModel(unsafe.Pointer(t))
t.model = model
t.modelgtk = (*C.GtkTreeModel)(unsafe.Pointer(model))
@@ -60,13 +48,6 @@ func finishNewTable(b *tablebase, ty reflect.Type) Table {
return t
}
-func (t *table) preferredSize(d *sizing) (width int, height int) {
- var r C.GtkRequisition
-
- C.gtk_widget_get_preferred_size(t.treewidget, nil, &r)
- return int(r.width), int(r.height)
-}
-
func (t *table) Lock() {
t.tablebase.Lock()
d := reflect.Indirect(reflect.ValueOf(t.data))