# HG changeset patch # User Claus Gittinger # Date 1478094071 -3600 # Node ID dc0252c294f5906e6a24deb53a5bc8432ffb1db4 # Parent 9826c3fef3a0ab322968b8f76520b12b4d8858ab #REFACTORING by cg class: GridBagLayoutView changed: #adjustForGravity:in: diff -r 9826c3fef3a0 -r dc0252c294f5 GridBagLayoutView.st --- a/GridBagLayoutView.st Fri Oct 21 12:39:03 2016 +0200 +++ b/GridBagLayoutView.st Wed Nov 02 14:41:11 2016 +0100 @@ -11,6 +11,8 @@ " "{ Package: 'stx:libwidg2' }" +"{ NameSpace: Smalltalk }" + PanelView subclass:#GridBagLayoutView instanceVariableNames:'columnWidths rowHeights columnWeights rowWeights layoutInfo' classVariableNames:'' @@ -226,54 +228,58 @@ adjustForGravity:c in:r - | diffx diffy add | + |insets fill anchor diffx diffy add | - r setLeft: ((r left) + (c insets left)). - r width: ((r width) - ((c insets left) + (c insets right))). - r setTop: ((r top) + (c insets top)). - r height: ((r height) - ((c insets top) + (c insets bottom))). + insets := c insets. + fill := c fill. + anchor := c anchor. + + r setLeft: ((r left) + (insets left)). + r width: ((r width) - ((insets left) + (insets right))). + r setTop: ((r top) + (insets top)). + r height: ((r height) - ((insets top) + (insets bottom))). diffx := 0. - (((c fill) ~~ #HORIZONTAL and:[(c fill) ~~ #BOTH]) and:[(r width) > (add := (c minWidth) + (c ipadX))]) ifTrue:[ - diffx := (r width) - add. - r width:add. + (fill ~~ #HORIZONTAL and:[(fill ~~ #BOTH) and:[(r width) > (add := (c minWidth) + (c ipadX))]]) ifTrue:[ + diffx := (r width) - add. + r width:add. ]. diffy := 0. - (((c fill) ~~ #VERTICAL and:[(c fill) ~~ #BOTH]) and:[(r height) > (add := (c minHeight) + (c ipadY))]) ifTrue:[ - diffy := (r height) - add. - r height:add. + (fill ~~ #VERTICAL and:[(fill ~~ #BOTH) and:[(r height) > (add := (c minHeight) + (c ipadY))]]) ifTrue:[ + diffy := (r height) - add. + r height:add. ]. - ((c anchor) == #CENTER) ifTrue:[ - r setLeft:((r left) + (diffx / 2)). - r setTop:((r top) + (diffy / 2)). + (anchor == #CENTER) ifTrue:[ + r setLeft:((r left) + (diffx / 2)). + r setTop:((r top) + (diffy / 2)). ]. - ((c anchor) == #NORTH) ifTrue:[ - r setLeft:((r left) + (diffx / 2)). + (anchor == #NORTH) ifTrue:[ + r setLeft:((r left) + (diffx / 2)). ]. - ((c anchor) == #NORTHEAST) ifTrue:[ - r setLeft:((r left) + diffx). + (anchor == #NORTHEAST) ifTrue:[ + r setLeft:((r left) + diffx). ]. - ((c anchor) == #EAST) ifTrue:[ - r setLeft:((r left) + diffx). - r setTop:((r top) + (diffy / 2)). + (anchor == #EAST) ifTrue:[ + r setLeft:((r left) + diffx). + r setTop:((r top) + (diffy / 2)). ]. - ((c anchor) == #SOUTHEAST) ifTrue:[ - r setLeft:((r left) + diffx). - r setTop:((r top) + diffy). + (anchor == #SOUTHEAST) ifTrue:[ + r setLeft:((r left) + diffx). + r setTop:((r top) + diffy). ]. - ((c anchor) == #SOUTH) ifTrue:[ - r setLeft:((r left) + (diffx / 2)). - r setTop:((r top) + diffy). + (anchor == #SOUTH) ifTrue:[ + r setLeft:((r left) + (diffx / 2)). + r setTop:((r top) + diffy). ]. - ((c anchor) == #SOUTHWEST) ifTrue:[ - r setTop:((r top) + diffy). + (anchor == #SOUTHWEST) ifTrue:[ + r setTop:((r top) + diffy). ]. - ((c anchor) == #WEST) ifTrue:[ - r setTop:((r top) + (diffy / 2)). + (anchor == #WEST) ifTrue:[ + r setTop:((r top) + (diffy / 2)). ]. - ((c anchor) == #NORTHWEST) ifTrue:[ + (anchor == #NORTHWEST) ifTrue:[ ]. r setLeft: ((r left) asInteger). @@ -855,5 +861,6 @@ !GridBagLayoutView class methodsFor:'documentation'! version - ^ '$Header: /cvs/stx/stx/libwidg2/GridBagLayoutView.st,v 1.10 2009-03-24 15:35:15 stefan Exp $' + ^ '$Header$' ! ! +