diff options
| author | Pietro Gagliardi <[email protected]> | 2014-07-30 10:21:23 -0400 |
|---|---|---|
| committer | Pietro Gagliardi <[email protected]> | 2014-07-30 10:21:23 -0400 |
| commit | 4740f72efb09042abc3b0577044e720bcc36dcb2 (patch) | |
| tree | a3fd18f31065d8c2764adf27cdf32f151fcab17e /redo/sizing_unix.go | |
| parent | 210102fe95a72f32f9149fd674bb0c2190f14171 (diff) | |
Applied the new Control system to the GTK+ backend.
Diffstat (limited to 'redo/sizing_unix.go')
| -rw-r--r-- | redo/sizing_unix.go | 55 |
1 files changed, 0 insertions, 55 deletions
diff --git a/redo/sizing_unix.go b/redo/sizing_unix.go index abca80d..5fa7fac 100644 --- a/redo/sizing_unix.go +++ b/redo/sizing_unix.go @@ -38,58 +38,3 @@ func (c *container) beginResize() (d *sizing) { func (c *container) translateAllocationCoords(allocations []*allocation, winwidth, winheight int) { // no need for coordinate conversion with gtk+ } - -func (w *widgetbase) allocate(x int, y int, width int, height int, d *sizing) []*allocation { - return []*allocation{&allocation{ - x: x, - y: y, - width: width, - height: height, - this: w, - }} -} - -func (w *widgetbase) commitResize(c *allocation, d *sizing) { - // as we resize on size-allocate, we have to also use size-allocate on our children - // this is fine anyway; in fact, this allows us to move without knowing what the container is! - // this is what GtkBox does anyway - // thanks to tristan in irc.gimp.net/#gtk+ - - var r C.GtkAllocation - - r.x = C.int(c.x) - r.y = C.int(c.y) - r.width = C.int(c.width) - r.height = C.int(c.height) - C.gtk_widget_size_allocate(w.widget, &r) -} - -func (w *widgetbase) getAuxResizeInfo(d *sizing) { -//TODO -// d.shouldVAlignTop = (s.ctype == c_listbox) || (s.ctype == c_area) - d.shouldVAlignTop = false -} - -// GTK+ 3 makes this easy: controls can tell us what their preferred size is! -// ...actually, it tells us two things: the "minimum size" and the "natural size". -// The "minimum size" is the smallest size we /can/ display /anything/. The "natural size" is the smallest size we would /prefer/ to display. -// The difference? Minimum size takes into account things like truncation with ellipses: the minimum size of a label can allot just the ellipses! -// So we use the natural size instead. -// There is a warning about height-for-width controls, but in my tests this isn't an issue. -// For Areas, we manually save the Area size and use that, just to be safe. - -// We don't need to worry about y-offset because label alignment is "vertically center", which GtkLabel does for us. - -func (w *widgetbase) preferredSize(d *sizing) (width int, height int) { -//TODO -/* - if s.ctype == c_area { - return s.areawidth, s.areaheight - } -*/ - - var r C.GtkRequisition - - C.gtk_widget_get_preferred_size(w.widget, nil, &r) - return int(r.width), int(r.height) -} |
