diff options
| author | Pietro Gagliardi <[email protected]> | 2014-10-17 22:28:23 -0400 |
|---|---|---|
| committer | Pietro Gagliardi <[email protected]> | 2014-10-17 22:28:23 -0400 |
| commit | b060d992ff2035d8074d52cf4d6b588e1dd9aebe (patch) | |
| tree | 5e26bcf519aedd5764858c8ad4b6f1b6fd1c4d1f /newctrl/container_unix.go | |
| parent | 00438732d1c38f5965d80a644db8a71597947fcc (diff) | |
Figured out what to do about containers in GTK+ and applied it to Group.
Diffstat (limited to 'newctrl/container_unix.go')
| -rw-r--r-- | newctrl/container_unix.go | 18 |
1 files changed, 11 insertions, 7 deletions
diff --git a/newctrl/container_unix.go b/newctrl/container_unix.go index 8e975f0..7169d44 100644 --- a/newctrl/container_unix.go +++ b/newctrl/container_unix.go @@ -37,10 +37,17 @@ func (c *container) parent() *controlParent { return &controlParent{c.container} } -//export containerResizing -func containerResizing(data unsafe.Pointer, r *C.GtkAllocation) { - c := (*container)(data) - c.resize(int(r.x), int(r.y), int(r.width), int(r.height)) +func (c *container) allocation(margined bool) C.GtkAllocation { + var a C.GtkAllocation + + C.gtk_widget_get_allocation(c.widget, &a) + if margined { + a.x += C.gint(gtkXMargin) + a.y += C.gint(gtkYMargin) + a.width -= C.gint(gtkXMargin) * 2 + a.height -= C.gint(gtkYMargin) * 2 + } + return a } const ( @@ -53,9 +60,6 @@ const ( func (w *window) beginResize() (d *sizing) { d = new(sizing) if spaced { - d.xmargin = gtkXMargin - d.ymargintop = gtkYMargin - d.ymarginbottom = d.ymargintop d.xpadding = gtkXPadding d.ypadding = gtkYPadding } |
