checkin from browser
authorClaus Gittinger <cg@exept.de>
Thu, 28 Aug 2003 11:47:14 +0200
changeset 1795 19dee5013803
parent 1794 81e71050bce2
child 1796 26780a84bcad
checkin from browser
LayoutFrame.st
--- a/LayoutFrame.st	Tue Aug 19 19:56:50 2003 +0200
+++ b/LayoutFrame.st	Thu Aug 28 11:47:14 2003 +0200
@@ -162,6 +162,46 @@
     ^ self leftOffset:lO rightOffset:rO topOffset:tO bottomOffset:bO
 
     "Modified: 18.4.1997 / 20:15:23 / cg"
+!
+
+origin:origin corner:corner
+    "create a new layoutFrame from an oldStyle origin-corner rectangle.
+     Added to make migration from Rectangles to LayoutFrames easier."
+
+    |leftFraction leftOffset rightFraction rightOffset
+     topFraction topOffset bottomFraction bottomOffset
+     orgX orgY cornerX cornerY|
+
+    orgX := origin x.
+    orgY := origin y.
+    cornerX := corner x.
+    cornerY := corner y.
+    leftFraction := leftOffset := 0.
+    orgX isInteger ifTrue:[
+        leftOffset := orgX
+    ] ifFalse:[
+        leftFraction := orgX.
+    ].
+    orgY isInteger ifTrue:[
+        topOffset := orgY
+    ] ifFalse:[
+        topFraction := orgY.
+    ].
+    cornerX isInteger ifTrue:[
+        rightOffset := cornerX
+    ] ifFalse:[
+        rightFraction := cornerX.
+    ].
+    cornerY isInteger ifTrue:[
+        bottomOffset := cornerY
+    ] ifFalse:[
+        bottomFraction := cornerY.
+    ].
+    ^ self
+        leftFraction:leftFraction offset:leftOffset
+        rightFraction:rightFraction offset:rightOffset
+        topFraction:topFraction offset:rightOffset 
+        bottomFraction:bottomFraction offset:bottomOffset 
 ! !
 
 !LayoutFrame methodsFor:'accessing'!
@@ -454,5 +494,5 @@
 !LayoutFrame class methodsFor:'documentation'!
 
 version
-    ^ '$Header: /cvs/stx/stx/libview2/LayoutFrame.st,v 1.29 2002-08-31 11:20:41 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/libview2/LayoutFrame.st,v 1.30 2003-08-28 09:47:14 cg Exp $'
 ! !