From 88c01bf69532243f432e03121b922a94d19b0ae1 Mon Sep 17 00:00:00 2001 From: Pietro Gagliardi Date: Mon, 4 Aug 2014 17:46:08 -0400 Subject: Began the big sizer cleanup: renamed sizer to container, renamed sizer.go to container.go, did the Mac OS X migration, moved containerctrls.go out of the way by merging its declarations into basicctrls.go, and did a quick cleanup fix to container_darwin.m. --- redo/sizer.go | 50 -------------------------------------------------- 1 file changed, 50 deletions(-) delete mode 100644 redo/sizer.go (limited to 'redo/sizer.go') diff --git a/redo/sizer.go b/redo/sizer.go deleted file mode 100644 index 4862ac0..0000000 --- a/redo/sizer.go +++ /dev/null @@ -1,50 +0,0 @@ -// 25 june 2014 - -package ui - -type allocation struct { - x int - y int - width int - height int - this Control - neighbor Control -} - -type sizingbase struct { - xmargin int - ymargin int - xpadding int - ypadding int -} - -type controlSizing interface { - allocate(x int, y int, width int, height int, d *sizing) []*allocation - preferredSize(*sizing) (int, int) - commitResize(*allocation, *sizing) - getAuxResizeInfo(*sizing) -} - -// A sizer hosts a Control and resizes that Control based on changes in size to the parent Window. -// sizer is used by Window, Tab, and [TODO implement] Group to contain and control their respective controls. -// Window is the beginning of the resize chain; resizes happen on the system side. -// Tab and Group are Controls and thus implement controlSizing; they should call their internal sizers's resize() method in their own commitResize(). -type sizer struct { - child Control -} - -// set to true to apply spacing to all windows -var spaced bool = false - -func (c *sizer) resize(x, y, width, height int) { - if c.child == nil { // no children; nothing to do - return - } - d := c.beginResize() - allocations := c.child.allocate(x + d.xmargin, y + d.ymargin, width - (2 * d.xmargin), height - (2 * d.ymargin), d) - c.translateAllocationCoords(allocations, width, height) - // move in reverse so as to approximate right->left order so neighbors make sense - for i := len(allocations) - 1; i >= 0; i-- { - allocations[i].this.commitResize(allocations[i], d) - } -} -- cgit v1.2.3