--- a/UILayoutTool.st Thu Jul 15 14:31:34 1999 +0200
+++ b/UILayoutTool.st Mon Jul 26 09:33:21 1999 +0200
@@ -20,7 +20,14 @@
category:'Interface-UIPainter'
!
-ApplicationModel subclass:#AlignmentOrigin
+ApplicationModel subclass:#LayoutOrigin
+ instanceVariableNames:''
+ classVariableNames:''
+ poolDictionaries:''
+ privateIn:UILayoutTool
+!
+
+ApplicationModel subclass:#Rectangle
instanceVariableNames:''
classVariableNames:''
poolDictionaries:''
@@ -34,14 +41,7 @@
privateIn:UILayoutTool
!
-ApplicationModel subclass:#LayoutFrame
- instanceVariableNames:''
- classVariableNames:''
- poolDictionaries:''
- privateIn:UILayoutTool
-!
-
-ApplicationModel subclass:#LayoutOrigin
+ApplicationModel subclass:#AlignmentOrigin
instanceVariableNames:''
classVariableNames:''
poolDictionaries:''
@@ -55,7 +55,7 @@
privateIn:UILayoutTool
!
-ApplicationModel subclass:#Rectangle
+ApplicationModel subclass:#LayoutFrame
instanceVariableNames:''
classVariableNames:''
poolDictionaries:''
@@ -620,17 +620,19 @@
!UILayoutTool methodsFor:'converting absolute'!
absolute:what xOrY:xOrY
- |extent fraction offset fractSymb offsetSymb|
+ |extent fraction offset fractSymb offsetSymb fractHolder offsetHolder|
extent := (self layoutView superView computeExtent) perform:xOrY.
fractSymb := (what, 'Fraction') asSymbol.
offsetSymb := (what, 'Offset') asSymbol.
- fraction := (self aspectFor:fractSymb) value.
- offset := (self aspectFor:offsetSymb) value.
+ fractHolder := (self aspectFor:fractSymb).
+ offsetHolder := (self aspectFor:offsetSymb).
+ fraction := fractHolder value.
+ offset := offsetHolder value.
offset := offset + ((fraction * extent) asInteger).
- (self aspectFor:offsetSymb) value:offset.
- (self aspectFor:fractSymb) value:0.
+ offsetHolder value:offset.
+ fractHolder value:0.
@@ -659,20 +661,22 @@
!UILayoutTool methodsFor:'converting relative'!
relative:what xOrY:xOrY
- |extent fraction offset fractSymb offsetSymb|
+ |extent fraction offset fractSymb offsetSymb fractHolder offsetHolder|
extent := (self layoutView superView computeExtent) perform:xOrY.
fractSymb := (what, 'Fraction') asSymbol.
offsetSymb := (what, 'Offset') asSymbol.
- fraction := (self aspectFor:fractSymb) value.
- offset := (self aspectFor:offsetSymb) value.
+ fractHolder := (self aspectFor:fractSymb).
+ offsetHolder := (self aspectFor:offsetSymb).
+ fraction := fractHolder value.
+ offset := offsetHolder value.
fraction := (fraction + (offset / extent)) asFloat.
(fraction > 1.0) ifTrue:[ fraction := 1.0 ].
(fraction < 0.0) ifTrue:[ fraction := 0 ].
- (self aspectFor:offsetSymb) value:0.
- (self aspectFor:fractSymb) value:fraction.
+ offsetHolder value:0.
+ fractHolder value:fraction.
@@ -782,6 +786,358 @@
! !
+!UILayoutTool::LayoutOrigin class methodsFor:'interface specs'!
+
+windowSpec
+ "This resource specification was automatically generated
+ by the UIPainter of ST/X."
+
+ "Do not manually edit this!! If it is corrupted,
+ the UIPainter may not be able to read the specification."
+
+ "
+ UIPainter new openOnClass:UILayoutTool::LayoutOrigin andSelector:#windowSpec
+ UILayoutTool::LayoutOrigin new openInterface:#windowSpec
+ UILayoutTool::LayoutOrigin open
+ "
+
+ <resource: #canvas>
+
+ ^
+
+ #(#FullSpec
+ #window:
+ #(#WindowSpec
+ #name: 'UILayoutTool-LayoutOrigin'
+ #layout: #(#LayoutFrame 290 0 420 0 647 0 565 0)
+ #label: 'UILayoutTool-LayoutOrigin'
+ #min: #(#Point 10 10)
+ #max: #(#Point 1152 900)
+ #bounds: #(#Rectangle 290 420 648 566)
+ #usePreferredExtent: false
+ )
+ #component:
+ #(#SpecCollection
+ #collection:
+ #(
+ #(#UISubSpecification
+ #name: 'layoutOriginSpec'
+ #layout: #(#LayoutFrame 1 0.0 6 0 0 1.0 110 0)
+ #majorKey: #UILayoutTool
+ #minorKey: #layoutOriginSpec
+ )
+ )
+ )
+ )
+! !
+
+!UILayoutTool::LayoutOrigin methodsFor:'accessing'!
+
+fetch:aView spec:aSpec
+ "fetch layoutOrigin
+ "
+ |layout|
+
+ layout := UIPainterView asLayoutFrameFromView:aView.
+
+ (self aspectFor:#leftOffset) value:(layout leftOffset).
+ (self aspectFor:#leftFraction) value:(layout leftFraction).
+ (self aspectFor:#topOffset) value:(layout topOffset).
+ (self aspectFor:#topFraction) value:(layout topFraction).
+
+
+!
+
+layout
+ "returns current layout as layoutOrigin
+ "
+ |layout|
+
+ layout := Smalltalk::LayoutOrigin new.
+
+ layout leftOffset:((self aspectFor:#leftOffset) value) ? 0.
+ layout topOffset:((self aspectFor:#topOffset) value) ? 0.
+ layout leftFraction:((self aspectFor:#leftFraction) value) ? 0.
+ layout topFraction:((self aspectFor:#topFraction) value) ? 0.
+
+ ^ layout
+
+! !
+
+!UILayoutTool::Rectangle class methodsFor:'interface specs'!
+
+windowSpec
+ "This resource specification was automatically generated
+ by the UIPainter of ST/X."
+
+ "Do not manually edit this!! If it is corrupted,
+ the UIPainter may not be able to read the specification."
+
+ "
+ UIPainter new openOnClass:UILayoutTool::Rectangle andSelector:#windowSpec
+ UILayoutTool::Rectangle new openInterface:#windowSpec
+ UILayoutTool::Rectangle open
+ "
+
+ <resource: #canvas>
+
+ ^
+
+ #(#FullSpec
+ #window:
+ #(#WindowSpec
+ #name: 'UILayoutTool-Rectangle'
+ #layout: #(#LayoutFrame 291 0 130 0 632 0 328 0)
+ #label: 'UILayoutTool-Rectangle'
+ #min: #(#Point 10 10)
+ #max: #(#Point 1152 900)
+ #bounds: #(#Rectangle 291 130 633 329)
+ #usePreferredExtent: false
+ )
+ #component:
+ #(#SpecCollection
+ #collection:
+ #(
+ #(#UISubSpecification
+ #name: 'subSpecification'
+ #layout: #(#LayoutFrame 1 0.0 6 0 0 1.0 96 0)
+ #majorKey: #UILayoutTool
+ #minorKey: #layoutPointSpec
+ )
+ #(#FramedBoxSpec
+ #name: 'FramedBox'
+ #layout: #(#LayoutFrame 1 0.0 99 0 0 1.0 194 0)
+ #component:
+ #(#SpecCollection
+ #collection:
+ #(
+ #(#LabelSpec
+ #name: 'labelCornerY'
+ #layout: #(#AlignmentOrigin 83 0 16 0 1 0)
+ #label: 'Right:'
+ #adjust: #left
+ )
+ #(#InputFieldSpec
+ #name: 'fieldCornerX'
+ #layout: #(#LayoutFrame 85 0 13 0 135 0 35 0)
+ #activeHelpKey: #cornerX
+ #tabable: true
+ #model: #rightOffset
+ #group: #inputGroup
+ #type: #numberOrNil
+ #acceptOnLostFocus: true
+ #acceptChannel: #acceptChannel
+ #modifiedChannel: #modifiedChannel
+ )
+ #(#LabelSpec
+ #name: 'labelCornerX'
+ #layout: #(#AlignmentOrigin 83 0 41 0 1 0)
+ #label: 'Bottom:'
+ #adjust: #left
+ )
+ #(#InputFieldSpec
+ #name: 'fieldCornerY'
+ #layout: #(#LayoutFrame 85 0 38 0 135 0 60 0)
+ #activeHelpKey: #cornerY
+ #tabable: true
+ #model: #bottomOffset
+ #group: #inputGroup
+ #type: #numberOrNil
+ #acceptOnLostFocus: true
+ #acceptChannel: #acceptChannel
+ #modifiedChannel: #modifiedChannel
+ )
+ )
+ )
+ #label: 'Corner'
+ #labelPosition: #topLeft
+ )
+ )
+ )
+ )
+
+ "Modified: / 13.8.1998 / 19:59:16 / cg"
+! !
+
+!UILayoutTool::Rectangle methodsFor:'accessing'!
+
+fetch:aView spec:aSpec
+ "fetch rectangle
+ "
+ |origin corner|
+
+ origin := aView computeOrigin.
+ corner := aView computeCorner.
+
+ (self aspectFor:#leftOffset) value:(origin x).
+ (self aspectFor:#rightOffset) value:(corner x).
+ (self aspectFor:#topOffset) value:(origin y).
+ (self aspectFor:#bottomOffset) value:(corner y).
+
+
+!
+
+layout
+ "returns current layout as rectangle
+ "
+ ^ Smalltalk::Rectangle left:(((self aspectFor:#leftOffset) value) ? 0)
+ top:(((self aspectFor:#topOffset) value) ? 0)
+ right:(((self aspectFor:#rightOffset) value) ? 0)
+ bottom:(((self aspectFor:#bottomOffset) value) ? 0)
+
+
+! !
+
+!UILayoutTool::Extent class methodsFor:'help specs'!
+
+helpSpec
+ "This resource specification was automatically generated
+ by the UIHelpTool of ST/X."
+
+ "Do not manually edit this!! If it is corrupted,
+ the UIHelpTool may not be able to read the specification."
+
+ "
+ UIHelpTool openOnClass:UILayoutTool::Extent
+ "
+
+ <resource: #help>
+
+ ^super helpSpec addPairsFrom:#(
+
+#hrzExtent
+'Horizontal extent of the selected widget.'
+
+#vrtExtent
+'Vertical extent of the selected widget.'
+
+)
+! !
+
+!UILayoutTool::Extent class methodsFor:'interface specs'!
+
+windowSpec
+ "This resource specification was automatically generated
+ by the UIPainter of ST/X."
+
+ "Do not manually edit this!! If it is corrupted,
+ the UIPainter may not be able to read the specification."
+
+ "
+ UIPainter new openOnClass:UILayoutTool::Extent andSelector:#windowSpec
+ UILayoutTool::Extent new openInterface:#windowSpec
+ UILayoutTool::Extent open
+ "
+
+ <resource: #canvas>
+
+ ^
+
+ #(#FullSpec
+ #name: #windowSpec
+ #window:
+ #(#WindowSpec
+ #name: 'UILayoutTool-Extent'
+ #layout: #(#LayoutFrame 216 0 173 0 541 0 321 0)
+ #level: 0
+ #label: 'UILayoutTool-Extent'
+ #min: #(#Point 10 10)
+ #max: #(#Point 1152 900)
+ #bounds: #(#Rectangle 216 173 542 322)
+ #usePreferredExtent: false
+ #returnIsOKInDialog: true
+ #escapeIsCancelInDialog: true
+ )
+ #component:
+ #(#SpecCollection
+ #collection:
+ #(
+ #(#FramedBoxSpec
+ #name: 'FramedBox'
+ #layout: #(#LayoutFrame 0 0.0 6 0.0 0 1.0 137 0)
+ #component:
+ #(#SpecCollection
+ #collection:
+ #(
+ #(#LabelSpec
+ #name: 'labelWidth'
+ #layout: #(#AlignmentOrigin 89 0 24 0 1 0.5)
+ #label: 'Width:'
+ #adjust: #right
+ )
+ #(#InputFieldSpec
+ #name: 'fieldLeftOffset'
+ #layout: #(#LayoutFrame 90 0 13 0 140 0 35 0)
+ #activeHelpKey: #hrzExtent
+ #enableChannel: #notUsingDefaultExtent
+ #tabable: true
+ #model: #leftOffset
+ #group: #inputGroup
+ #type: #numberOrNil
+ #acceptOnLostFocus: true
+ #acceptChannel: #acceptChannel
+ #modifiedChannel: #modifiedChannel
+ )
+ #(#LabelSpec
+ #name: 'labelHeight'
+ #layout: #(#AlignmentOrigin 89 0 49 0 1 0.5)
+ #label: 'Height:'
+ #adjust: #right
+ )
+ #(#InputFieldSpec
+ #name: 'fieldRightOffset'
+ #layout: #(#LayoutFrame 90 0 38 0 140 0 60 0)
+ #activeHelpKey: #vrtExtent
+ #enableChannel: #notUsingDefaultExtent
+ #tabable: true
+ #model: #rightOffset
+ #group: #inputGroup
+ #type: #numberOrNil
+ #acceptOnLostFocus: true
+ #acceptChannel: #acceptChannel
+ #modifiedChannel: #modifiedChannel
+ )
+ #(#CheckBoxSpec
+ #name: 'useDefaultExtentCheckBox'
+ #layout: #(#LayoutFrame -1 0 75 0 296 0 97 0)
+ #model: #useDefaultExtent
+ #label: 'Use Widgets Default Extent'
+ #translateLabel: true
+ #enableChannel: #defaultExtentEnabled
+ )
+ )
+ )
+ #label: 'Extent'
+ #labelPosition: #topLeft
+ )
+ )
+ )
+ )
+! !
+
+!UILayoutTool::Extent methodsFor:'accessing'!
+
+fetch:aView spec:aSpec
+ "fetch extent
+ "
+ |extent|
+
+ extent := aView computeExtent.
+
+ (self aspectFor:#leftOffset) value:(extent x).
+ (self aspectFor:#rightOffset) value:(extent y).
+
+ (self aspectFor:#useDefaultExtent) value:aSpec useDefaultExtent
+!
+
+layout
+ "returns current extent
+ "
+ ^ Smalltalk::Point x:(((self aspectFor:#leftOffset) value) ? 0)
+ y:(((self aspectFor:#rightOffset) value) ? 0)
+
+! !
+
!UILayoutTool::AlignmentOrigin class methodsFor:'help specs'!
helpSpec
@@ -1007,32 +1363,41 @@
fetch:aView spec:aSpec
"fetch alignmentOrigin
"
- |layout type|
+ |layout type
+ leftAlignmentFractionHolder topAlignmentFractionHolder
+ leftOffsetHolder leftFractionHolder topOffsetHolder topFractionHolder|
type := UIPainterView layoutType:aView.
layout := aView geometryLayout.
+ leftOffsetHolder := (self aspectFor:#leftOffset).
+ leftFractionHolder := (self aspectFor:#leftFraction).
+ topOffsetHolder := (self aspectFor:#topOffset).
+ topFractionHolder := (self aspectFor:#topFraction).
+ leftAlignmentFractionHolder := (self aspectFor:#leftAlignmentFraction).
+ topAlignmentFractionHolder := (self aspectFor:#topAlignmentFraction).
+
layout isLayout ifTrue:[
- (self aspectFor:#leftOffset) value:(layout leftOffset).
- (self aspectFor:#leftFraction) value:(layout leftFraction).
- (self aspectFor:#topOffset) value:(layout topOffset).
- (self aspectFor:#topFraction) value:(layout topFraction).
+ leftOffsetHolder value:(layout leftOffset).
+ leftFractionHolder value:(layout leftFraction).
+ topOffsetHolder value:(layout topOffset).
+ topFractionHolder value:(layout topFraction).
type == #AlignmentOrigin ifTrue:[
- (self aspectFor:#leftAlignmentFraction) value:(layout leftAlignmentFraction).
- (self aspectFor:#topAlignmentFraction) value:(layout topAlignmentFraction).
+ leftAlignmentFractionHolder value:(layout leftAlignmentFraction).
+ topAlignmentFractionHolder value:(layout topAlignmentFraction).
^ self
]
] ifFalse:[
layout := aView computeOrigin.
- (self aspectFor:#leftOffset) value:(layout x).
- (self aspectFor:#leftFraction) value:0.
- (self aspectFor:#topOffset) value:(layout y).
- (self aspectFor:#topFraction) value:0.
+ leftOffsetHolder value:(layout x).
+ leftFractionHolder value:0.
+ topOffsetHolder value:(layout y).
+ topFractionHolder value:0.
].
- (self aspectFor:#leftAlignmentFraction) value:0.
- (self aspectFor:#topAlignmentFraction) value:0.
+ leftAlignmentFractionHolder value:0.
+ topAlignmentFractionHolder value:0.
!
@@ -1112,23 +1477,23 @@
!
makeAlignLeft:leftAlignmentFraction top:topAlignmentFraction
- |lAF tAF lO tO ext|
+ |lAF tAF lO tO ext lAHolder tAHolder lOHolder tOHolder|
- lAF := (self aspectFor:#leftAlignmentFraction) value ? 0.
- tAF := (self aspectFor:#topAlignmentFraction) value ? 0.
+ lAF := (lAHolder := self aspectFor:#leftAlignmentFraction) value ? 0.
+ tAF := (tAHolder := self aspectFor:#topAlignmentFraction) value ? 0.
ext := (self aspectFor:#layoutView) computeExtent.
- (self aspectFor:#leftAlignmentFraction) value:leftAlignmentFraction.
- (self aspectFor:#topAlignmentFraction) value:topAlignmentFraction.
+ lAHolder value:leftAlignmentFraction.
+ tAHolder value:topAlignmentFraction.
- lO := (self aspectFor:#leftOffset) value ? 0.
- tO := (self aspectFor:#topOffset) value ? 0.
+ lO := (lOHolder := self aspectFor:#leftOffset) value ? 0.
+ tO := (tOHolder := self aspectFor:#topOffset) value ? 0.
lO := lO + (ext x * (leftAlignmentFraction - lAF)).
tO := tO + (ext y * (topAlignmentFraction - tAF)).
- (self aspectFor:#leftOffset) value:(lO rounded).
- (self aspectFor:#topOffset) value:(tO rounded).
+ lOHolder value:(lO rounded).
+ tOHolder value:(tO rounded).
!
@@ -1138,33 +1503,7 @@
! !
-!UILayoutTool::Extent class methodsFor:'help specs'!
-
-helpSpec
- "This resource specification was automatically generated
- by the UIHelpTool of ST/X."
-
- "Do not manually edit this!! If it is corrupted,
- the UIHelpTool may not be able to read the specification."
-
- "
- UIHelpTool openOnClass:UILayoutTool::Extent
- "
-
- <resource: #help>
-
- ^super helpSpec addPairsFrom:#(
-
-#hrzExtent
-'Horizontal extent of the selected widget.'
-
-#vrtExtent
-'Vertical extent of the selected widget.'
-
-)
-! !
-
-!UILayoutTool::Extent class methodsFor:'interface specs'!
+!UILayoutTool::Point class methodsFor:'interface specs'!
windowSpec
"This resource specification was automatically generated
@@ -1174,9 +1513,9 @@
the UIPainter may not be able to read the specification."
"
- UIPainter new openOnClass:UILayoutTool::Extent andSelector:#windowSpec
- UILayoutTool::Extent new openInterface:#windowSpec
- UILayoutTool::Extent open
+ UIPainter new openOnClass:UILayoutTool::Point andSelector:#windowSpec
+ UILayoutTool::Point new openInterface:#windowSpec
+ UILayoutTool::Point open
"
<resource: #canvas>
@@ -1184,107 +1523,51 @@
^
#(#FullSpec
- #name: #windowSpec
#window:
#(#WindowSpec
- #name: 'UILayoutTool-Extent'
- #layout: #(#LayoutFrame 216 0 173 0 541 0 321 0)
- #level: 0
- #label: 'UILayoutTool-Extent'
+ #name: 'UILayoutTool-Point'
+ #layout: #(#LayoutFrame 324 0 410 0 618 0 547 0)
+ #label: 'UILayoutTool-Point'
#min: #(#Point 10 10)
#max: #(#Point 1152 900)
- #bounds: #(#Rectangle 216 173 542 322)
+ #bounds: #(#Rectangle 324 410 619 548)
#usePreferredExtent: false
- #returnIsOKInDialog: true
- #escapeIsCancelInDialog: true
)
#component:
#(#SpecCollection
#collection:
#(
- #(#FramedBoxSpec
- #name: 'FramedBox'
- #layout: #(#LayoutFrame 0 0.0 6 0.0 0 1.0 137 0)
- #component:
- #(#SpecCollection
- #collection:
- #(
- #(#LabelSpec
- #name: 'labelWidth'
- #layout: #(#AlignmentOrigin 89 0 24 0 1 0.5)
- #label: 'Width:'
- #adjust: #right
- )
- #(#InputFieldSpec
- #name: 'fieldLeftOffset'
- #layout: #(#LayoutFrame 90 0 13 0 140 0 35 0)
- #activeHelpKey: #hrzExtent
- #enableChannel: #notUsingDefaultExtent
- #tabable: true
- #model: #leftOffset
- #group: #inputGroup
- #type: #numberOrNil
- #acceptOnLostFocus: true
- #acceptChannel: #acceptChannel
- #modifiedChannel: #modifiedChannel
- )
- #(#LabelSpec
- #name: 'labelHeight'
- #layout: #(#AlignmentOrigin 89 0 49 0 1 0.5)
- #label: 'Height:'
- #adjust: #right
- )
- #(#InputFieldSpec
- #name: 'fieldRightOffset'
- #layout: #(#LayoutFrame 90 0 38 0 140 0 60 0)
- #activeHelpKey: #vrtExtent
- #enableChannel: #notUsingDefaultExtent
- #tabable: true
- #model: #rightOffset
- #group: #inputGroup
- #type: #numberOrNil
- #acceptOnLostFocus: true
- #acceptChannel: #acceptChannel
- #modifiedChannel: #modifiedChannel
- )
- #(#CheckBoxSpec
- #name: 'useDefaultExtentCheckBox'
- #layout: #(#LayoutFrame -1 0 75 0 296 0 97 0)
- #model: #useDefaultExtent
- #label: 'Use Widgets Default Extent'
- #translateLabel: true
- #enableChannel: #defaultExtentEnabled
- )
- )
- )
- #label: 'Extent'
- #labelPosition: #topLeft
+ #(#UISubSpecification
+ #name: 'layoutPointSpec'
+ #layout: #(#LayoutFrame 1 0.0 6 0 0 1.0 100 0)
+ #majorKey: #UILayoutTool
+ #minorKey: #layoutPointSpec
)
)
)
)
! !
-!UILayoutTool::Extent methodsFor:'accessing'!
+!UILayoutTool::Point methodsFor:'accessing'!
fetch:aView spec:aSpec
- "fetch extent
+ "fetch point
"
- |extent|
+ |origin|
- extent := aView computeExtent.
+ origin := aView computeOrigin.
- (self aspectFor:#leftOffset) value:(extent x).
- (self aspectFor:#rightOffset) value:(extent y).
+ (self aspectFor:#leftOffset) value:(origin x).
+ (self aspectFor:#topOffset) value:(origin y).
- (self aspectFor:#useDefaultExtent) value:aSpec useDefaultExtent
+
!
layout
- "returns current extent
+ "returns current layout as point
"
- ^ Smalltalk::Point x:(((self aspectFor:#leftOffset) value) ? 0)
- y:(((self aspectFor:#rightOffset) value) ? 0)
+ ^ Smalltalk::Point x:(((self aspectFor:#leftOffset) value) ? 0)
+ y:(((self aspectFor:#topOffset) value) ? 0)
! !
@@ -1945,276 +2228,6 @@
bottom:0.5 offset:0
! !
-!UILayoutTool::LayoutOrigin class methodsFor:'interface specs'!
-
-windowSpec
- "This resource specification was automatically generated
- by the UIPainter of ST/X."
-
- "Do not manually edit this!! If it is corrupted,
- the UIPainter may not be able to read the specification."
-
- "
- UIPainter new openOnClass:UILayoutTool::LayoutOrigin andSelector:#windowSpec
- UILayoutTool::LayoutOrigin new openInterface:#windowSpec
- UILayoutTool::LayoutOrigin open
- "
-
- <resource: #canvas>
-
- ^
-
- #(#FullSpec
- #window:
- #(#WindowSpec
- #name: 'UILayoutTool-LayoutOrigin'
- #layout: #(#LayoutFrame 290 0 420 0 647 0 565 0)
- #label: 'UILayoutTool-LayoutOrigin'
- #min: #(#Point 10 10)
- #max: #(#Point 1152 900)
- #bounds: #(#Rectangle 290 420 648 566)
- #usePreferredExtent: false
- )
- #component:
- #(#SpecCollection
- #collection:
- #(
- #(#UISubSpecification
- #name: 'layoutOriginSpec'
- #layout: #(#LayoutFrame 1 0.0 6 0 0 1.0 110 0)
- #majorKey: #UILayoutTool
- #minorKey: #layoutOriginSpec
- )
- )
- )
- )
-! !
-
-!UILayoutTool::LayoutOrigin methodsFor:'accessing'!
-
-fetch:aView spec:aSpec
- "fetch layoutOrigin
- "
- |layout|
-
- layout := UIPainterView asLayoutFrameFromView:aView.
-
- (self aspectFor:#leftOffset) value:(layout leftOffset).
- (self aspectFor:#leftFraction) value:(layout leftFraction).
- (self aspectFor:#topOffset) value:(layout topOffset).
- (self aspectFor:#topFraction) value:(layout topFraction).
-
-
-!
-
-layout
- "returns current layout as layoutOrigin
- "
- |layout|
-
- layout := Smalltalk::LayoutOrigin new.
-
- layout leftOffset:((self aspectFor:#leftOffset) value) ? 0.
- layout topOffset:((self aspectFor:#topOffset) value) ? 0.
- layout leftFraction:((self aspectFor:#leftFraction) value) ? 0.
- layout topFraction:((self aspectFor:#topFraction) value) ? 0.
-
- ^ layout
-
-! !
-
-!UILayoutTool::Point class methodsFor:'interface specs'!
-
-windowSpec
- "This resource specification was automatically generated
- by the UIPainter of ST/X."
-
- "Do not manually edit this!! If it is corrupted,
- the UIPainter may not be able to read the specification."
-
- "
- UIPainter new openOnClass:UILayoutTool::Point andSelector:#windowSpec
- UILayoutTool::Point new openInterface:#windowSpec
- UILayoutTool::Point open
- "
-
- <resource: #canvas>
-
- ^
-
- #(#FullSpec
- #window:
- #(#WindowSpec
- #name: 'UILayoutTool-Point'
- #layout: #(#LayoutFrame 324 0 410 0 618 0 547 0)
- #label: 'UILayoutTool-Point'
- #min: #(#Point 10 10)
- #max: #(#Point 1152 900)
- #bounds: #(#Rectangle 324 410 619 548)
- #usePreferredExtent: false
- )
- #component:
- #(#SpecCollection
- #collection:
- #(
- #(#UISubSpecification
- #name: 'layoutPointSpec'
- #layout: #(#LayoutFrame 1 0.0 6 0 0 1.0 100 0)
- #majorKey: #UILayoutTool
- #minorKey: #layoutPointSpec
- )
- )
- )
- )
-! !
-
-!UILayoutTool::Point methodsFor:'accessing'!
-
-fetch:aView spec:aSpec
- "fetch point
- "
- |origin|
-
- origin := aView computeOrigin.
-
- (self aspectFor:#leftOffset) value:(origin x).
- (self aspectFor:#topOffset) value:(origin y).
-
-
-!
-
-layout
- "returns current layout as point
- "
- ^ Smalltalk::Point x:(((self aspectFor:#leftOffset) value) ? 0)
- y:(((self aspectFor:#topOffset) value) ? 0)
-
-! !
-
-!UILayoutTool::Rectangle class methodsFor:'interface specs'!
-
-windowSpec
- "This resource specification was automatically generated
- by the UIPainter of ST/X."
-
- "Do not manually edit this!! If it is corrupted,
- the UIPainter may not be able to read the specification."
-
- "
- UIPainter new openOnClass:UILayoutTool::Rectangle andSelector:#windowSpec
- UILayoutTool::Rectangle new openInterface:#windowSpec
- UILayoutTool::Rectangle open
- "
-
- <resource: #canvas>
-
- ^
-
- #(#FullSpec
- #window:
- #(#WindowSpec
- #name: 'UILayoutTool-Rectangle'
- #layout: #(#LayoutFrame 291 0 130 0 632 0 328 0)
- #label: 'UILayoutTool-Rectangle'
- #min: #(#Point 10 10)
- #max: #(#Point 1152 900)
- #bounds: #(#Rectangle 291 130 633 329)
- #usePreferredExtent: false
- )
- #component:
- #(#SpecCollection
- #collection:
- #(
- #(#UISubSpecification
- #name: 'subSpecification'
- #layout: #(#LayoutFrame 1 0.0 6 0 0 1.0 96 0)
- #majorKey: #UILayoutTool
- #minorKey: #layoutPointSpec
- )
- #(#FramedBoxSpec
- #name: 'FramedBox'
- #layout: #(#LayoutFrame 1 0.0 99 0 0 1.0 194 0)
- #component:
- #(#SpecCollection
- #collection:
- #(
- #(#LabelSpec
- #name: 'labelCornerY'
- #layout: #(#AlignmentOrigin 83 0 16 0 1 0)
- #label: 'Right:'
- #adjust: #left
- )
- #(#InputFieldSpec
- #name: 'fieldCornerX'
- #layout: #(#LayoutFrame 85 0 13 0 135 0 35 0)
- #activeHelpKey: #cornerX
- #tabable: true
- #model: #rightOffset
- #group: #inputGroup
- #type: #numberOrNil
- #acceptOnLostFocus: true
- #acceptChannel: #acceptChannel
- #modifiedChannel: #modifiedChannel
- )
- #(#LabelSpec
- #name: 'labelCornerX'
- #layout: #(#AlignmentOrigin 83 0 41 0 1 0)
- #label: 'Bottom:'
- #adjust: #left
- )
- #(#InputFieldSpec
- #name: 'fieldCornerY'
- #layout: #(#LayoutFrame 85 0 38 0 135 0 60 0)
- #activeHelpKey: #cornerY
- #tabable: true
- #model: #bottomOffset
- #group: #inputGroup
- #type: #numberOrNil
- #acceptOnLostFocus: true
- #acceptChannel: #acceptChannel
- #modifiedChannel: #modifiedChannel
- )
- )
- )
- #label: 'Corner'
- #labelPosition: #topLeft
- )
- )
- )
- )
-
- "Modified: / 13.8.1998 / 19:59:16 / cg"
-! !
-
-!UILayoutTool::Rectangle methodsFor:'accessing'!
-
-fetch:aView spec:aSpec
- "fetch rectangle
- "
- |origin corner|
-
- origin := aView computeOrigin.
- corner := aView computeCorner.
-
- (self aspectFor:#leftOffset) value:(origin x).
- (self aspectFor:#rightOffset) value:(corner x).
- (self aspectFor:#topOffset) value:(origin y).
- (self aspectFor:#bottomOffset) value:(corner y).
-
-
-!
-
-layout
- "returns current layout as rectangle
- "
- ^ Smalltalk::Rectangle left:(((self aspectFor:#leftOffset) value) ? 0)
- top:(((self aspectFor:#topOffset) value) ? 0)
- right:(((self aspectFor:#rightOffset) value) ? 0)
- bottom:(((self aspectFor:#bottomOffset) value) ? 0)
-
-
-! !
-
!UILayoutTool class methodsFor:'documentation'!
version