LayoutWrapper.st
author Claus Gittinger <cg@exept.de>
Sat, 26 Oct 1996 19:17:33 +0200
changeset 346 1612c23d9c5d
parent 323 ee2f4da361a6
child 365 47e0d48fd769
permissions -rw-r--r--
pass all dropInfo to an end-action
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
278
f2382bb48850 intitial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     1
TranslatingWrapper subclass:#LayoutWrapper
f2382bb48850 intitial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     2
	instanceVariableNames:'layout'
f2382bb48850 intitial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     3
	classVariableNames:''
f2382bb48850 intitial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     4
	poolDictionaries:''
f2382bb48850 intitial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     5
	category:'Graphics-Display Objects'
f2382bb48850 intitial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     6
!
f2382bb48850 intitial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     7
321
6421da8810e2 more view mimicri;
Claus Gittinger <cg@exept.de>
parents: 292
diff changeset
     8
!LayoutWrapper  class methodsFor:'documentation'!
292
60fbf13dfc8c prepare for view-component integration
Claus Gittinger <cg@exept.de>
parents: 278
diff changeset
     9
60fbf13dfc8c prepare for view-component integration
Claus Gittinger <cg@exept.de>
parents: 278
diff changeset
    10
examples
60fbf13dfc8c prepare for view-component integration
Claus Gittinger <cg@exept.de>
parents: 278
diff changeset
    11
"
60fbf13dfc8c prepare for view-component integration
Claus Gittinger <cg@exept.de>
parents: 278
diff changeset
    12
                                                                        [exBegin]
60fbf13dfc8c prepare for view-component integration
Claus Gittinger <cg@exept.de>
parents: 278
diff changeset
    13
    |t view wrapper|
60fbf13dfc8c prepare for view-component integration
Claus Gittinger <cg@exept.de>
parents: 278
diff changeset
    14
60fbf13dfc8c prepare for view-component integration
Claus Gittinger <cg@exept.de>
parents: 278
diff changeset
    15
    t := StandardSystemView extent:200@200.
60fbf13dfc8c prepare for view-component integration
Claus Gittinger <cg@exept.de>
parents: 278
diff changeset
    16
60fbf13dfc8c prepare for view-component integration
Claus Gittinger <cg@exept.de>
parents: 278
diff changeset
    17
    view := View new.
60fbf13dfc8c prepare for view-component integration
Claus Gittinger <cg@exept.de>
parents: 278
diff changeset
    18
    view viewBackground:Color red.
60fbf13dfc8c prepare for view-component integration
Claus Gittinger <cg@exept.de>
parents: 278
diff changeset
    19
60fbf13dfc8c prepare for view-component integration
Claus Gittinger <cg@exept.de>
parents: 278
diff changeset
    20
    wrapper := LayoutWrapper new.
60fbf13dfc8c prepare for view-component integration
Claus Gittinger <cg@exept.de>
parents: 278
diff changeset
    21
    wrapper layout:(LayoutFrame new
60fbf13dfc8c prepare for view-component integration
Claus Gittinger <cg@exept.de>
parents: 278
diff changeset
    22
                        leftFraction:0.2;
60fbf13dfc8c prepare for view-component integration
Claus Gittinger <cg@exept.de>
parents: 278
diff changeset
    23
                        rightFraction:0.8;
60fbf13dfc8c prepare for view-component integration
Claus Gittinger <cg@exept.de>
parents: 278
diff changeset
    24
                        topFraction:0.2;
60fbf13dfc8c prepare for view-component integration
Claus Gittinger <cg@exept.de>
parents: 278
diff changeset
    25
                        bottomFraction:0.8).
60fbf13dfc8c prepare for view-component integration
Claus Gittinger <cg@exept.de>
parents: 278
diff changeset
    26
    wrapper component:view.
60fbf13dfc8c prepare for view-component integration
Claus Gittinger <cg@exept.de>
parents: 278
diff changeset
    27
60fbf13dfc8c prepare for view-component integration
Claus Gittinger <cg@exept.de>
parents: 278
diff changeset
    28
    t addComponent:wrapper.
60fbf13dfc8c prepare for view-component integration
Claus Gittinger <cg@exept.de>
parents: 278
diff changeset
    29
60fbf13dfc8c prepare for view-component integration
Claus Gittinger <cg@exept.de>
parents: 278
diff changeset
    30
    t open
60fbf13dfc8c prepare for view-component integration
Claus Gittinger <cg@exept.de>
parents: 278
diff changeset
    31
                                                                        [exEnd]
323
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
    32
                                                                        [exBegin]
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
    33
     |top frame1 view1 frame2 view2|
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
    34
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
    35
     top := StandardSystemView new.
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
    36
     frame1 := LayoutWrapper new.
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
    37
     frame1 layout:(0.1@0.1 corner:0.9@0.9) asLayout.
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
    38
     top addSubView:frame1.
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
    39
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
    40
     view1 := View new.
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
    41
     view1 viewBackground:Color red.
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
    42
     frame1 component:view1.
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
    43
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
    44
     frame2 := LayoutWrapper new.
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
    45
     frame2 layout:(0.1@0.1 corner:0.9@0.9) asLayout.
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
    46
     view1 addSubView:frame2.
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
    47
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
    48
     view2 := View new.
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
    49
     view2 viewBackground:Color green.
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
    50
     frame2 component:view2.
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
    51
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
    52
     top openWithExtent:200@200
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
    53
                                                                        [exEnd]
292
60fbf13dfc8c prepare for view-component integration
Claus Gittinger <cg@exept.de>
parents: 278
diff changeset
    54
"
60fbf13dfc8c prepare for view-component integration
Claus Gittinger <cg@exept.de>
parents: 278
diff changeset
    55
! !
278
f2382bb48850 intitial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    56
321
6421da8810e2 more view mimicri;
Claus Gittinger <cg@exept.de>
parents: 292
diff changeset
    57
!LayoutWrapper  class methodsFor:'instance creation'!
278
f2382bb48850 intitial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    58
f2382bb48850 intitial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    59
on:aComponent in:aLayout
f2382bb48850 intitial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    60
    "create and return a layoutWrapper, which controls
f2382bb48850 intitial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    61
     aComponent bounds using aLayout.
f2382bb48850 intitial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    62
     The layout argument may be:
f2382bb48850 intitial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    63
        nil       - no constraint
f2382bb48850 intitial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    64
        Point     - origin shift
f2382bb48850 intitial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    65
        Rectangle - origin shift & extent
f2382bb48850 intitial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    66
        Layout    - full control"
f2382bb48850 intitial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    67
f2382bb48850 intitial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    68
    ^ (self on:aComponent) layout:aLayout
f2382bb48850 intitial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    69
f2382bb48850 intitial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    70
    "Created: 26.5.1996 / 16:18:44 / cg"
f2382bb48850 intitial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    71
    "Modified: 26.5.1996 / 16:34:04 / cg"
f2382bb48850 intitial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    72
! !
f2382bb48850 intitial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    73
f2382bb48850 intitial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    74
!LayoutWrapper methodsFor:'accessing'!
f2382bb48850 intitial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    75
323
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
    76
bounds:newBounds
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
    77
"/ Transcript showCR:newBounds.
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
    78
    bounds := newBounds.
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
    79
    self layoutChanged
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
    80
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
    81
    "Created: 19.7.1996 / 20:10:09 / cg"
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
    82
    "Modified: 19.7.1996 / 21:20:42 / cg"
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
    83
!
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
    84
278
f2382bb48850 intitial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    85
layout
f2382bb48850 intitial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    86
    "return layout"
f2382bb48850 intitial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    87
f2382bb48850 intitial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    88
    ^ layout
f2382bb48850 intitial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    89
f2382bb48850 intitial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    90
    "Created: 26.5.1996 / 16:18:11 / cg"
f2382bb48850 intitial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    91
!
f2382bb48850 intitial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    92
f2382bb48850 intitial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    93
layout:something
292
60fbf13dfc8c prepare for view-component integration
Claus Gittinger <cg@exept.de>
parents: 278
diff changeset
    94
    "set the layout"
278
f2382bb48850 intitial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    95
f2382bb48850 intitial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    96
    layout := something.
323
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
    97
    self layoutChanged
278
f2382bb48850 intitial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    98
f2382bb48850 intitial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    99
    "Created: 26.5.1996 / 16:18:11 / cg"
323
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
   100
    "Modified: 19.7.1996 / 20:15:20 / cg"
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
   101
! !
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
   102
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
   103
!LayoutWrapper methodsFor:'private'!
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
   104
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
   105
layoutChanged
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
   106
    |subBounds|
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
   107
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
   108
    component notNil ifTrue:[
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
   109
        layout notNil ifTrue:[
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
   110
            subBounds := (layout 
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
   111
                            rectangleRelativeTo:bounds
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
   112
                            preferred:bounds) rounded.
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
   113
        ] ifFalse:[
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
   114
            subBounds := bounds
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
   115
        ].
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
   116
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
   117
        origin := subBounds origin.
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
   118
"/ Transcript show:layout displayString; show:'subbounds: '; showCR:subBounds.
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
   119
        component bounds:subBounds.
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
   120
    ]
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
   121
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
   122
    "Created: 19.7.1996 / 20:15:05 / cg"
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
   123
    "Modified: 19.7.1996 / 21:20:46 / cg"
292
60fbf13dfc8c prepare for view-component integration
Claus Gittinger <cg@exept.de>
parents: 278
diff changeset
   124
! !
60fbf13dfc8c prepare for view-component integration
Claus Gittinger <cg@exept.de>
parents: 278
diff changeset
   125
321
6421da8810e2 more view mimicri;
Claus Gittinger <cg@exept.de>
parents: 292
diff changeset
   126
!LayoutWrapper methodsFor:'queries'!
6421da8810e2 more view mimicri;
Claus Gittinger <cg@exept.de>
parents: 292
diff changeset
   127
6421da8810e2 more view mimicri;
Claus Gittinger <cg@exept.de>
parents: 292
diff changeset
   128
isLayoutWrapper
6421da8810e2 more view mimicri;
Claus Gittinger <cg@exept.de>
parents: 292
diff changeset
   129
     ^ true
6421da8810e2 more view mimicri;
Claus Gittinger <cg@exept.de>
parents: 292
diff changeset
   130
6421da8810e2 more view mimicri;
Claus Gittinger <cg@exept.de>
parents: 292
diff changeset
   131
    "Created: 19.7.1996 / 17:51:16 / cg"
323
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
   132
!
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
   133
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
   134
preferredBounds
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
   135
    |b w h lw lh|
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
   136
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
   137
    bounds := component preferredBounds.
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
   138
    layout isNil ifTrue:[^ bounds].
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
   139
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
   140
    w := bounds width.
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
   141
    h := bounds height.
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
   142
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
   143
    "/ now, inverse apply the layouts values
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
   144
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
   145
    lw := layout rightFraction - layout leftFraction.
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
   146
    lw ~~ 0 ifTrue:[
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
   147
        lw := w * (1 / lw)
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
   148
    ].
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
   149
    lh := layout bottomFraction - layout topFraction.
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
   150
    lh ~~ 0 ifTrue:[
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
   151
        lh := h * (1 / lh)
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
   152
    ].
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
   153
    lw := lw + layout rightOffset - layout leftOffset.
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
   154
    lh := lh + layout bottomOffset - layout topOffset.
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
   155
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
   156
    ^ 0@0 corner:(lw rounded @ lh rounded)
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
   157
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
   158
    "Created: 19.7.1996 / 17:51:16 / cg"
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
   159
    "Modified: 19.7.1996 / 20:08:51 / cg"
321
6421da8810e2 more view mimicri;
Claus Gittinger <cg@exept.de>
parents: 292
diff changeset
   160
! !
6421da8810e2 more view mimicri;
Claus Gittinger <cg@exept.de>
parents: 292
diff changeset
   161
292
60fbf13dfc8c prepare for view-component integration
Claus Gittinger <cg@exept.de>
parents: 278
diff changeset
   162
!LayoutWrapper methodsFor:'view protocol mimicri'!
60fbf13dfc8c prepare for view-component integration
Claus Gittinger <cg@exept.de>
parents: 278
diff changeset
   163
323
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
   164
computeOrigin
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
   165
    "return my origin"
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
   166
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
   167
    ^ 0@0
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
   168
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
   169
    "Created: 19.7.1996 / 20:05:37 / cg"
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
   170
!
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
   171
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
   172
origin:org corner:corn
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
   173
    |newLayout l r t b lF rF tF bF lO rO tO bO|
292
60fbf13dfc8c prepare for view-component integration
Claus Gittinger <cg@exept.de>
parents: 278
diff changeset
   174
323
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
   175
    newLayout := LayoutFrame new.
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
   176
    l := org x.
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
   177
    l isInteger ifTrue:[
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
   178
        lO := l.
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
   179
        lF := 0.0
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
   180
    ] ifFalse:[
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
   181
        lO := 0.
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
   182
        lF := l
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
   183
    ].
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
   184
    r := corn x.
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
   185
    r isInteger ifTrue:[
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
   186
        rO := r.
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
   187
        rF := 0.0
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
   188
    ] ifFalse:[
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
   189
        rO := 0.
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
   190
        rF := r
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
   191
    ].
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
   192
    t := org y.
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
   193
    t isInteger ifTrue:[
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
   194
        tO := t.
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
   195
        tF := 0.0
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
   196
    ] ifFalse:[
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
   197
        tO := 0.
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
   198
        tF := t
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
   199
    ].
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
   200
    b := corn y.
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
   201
    b isInteger ifTrue:[
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
   202
        bO := b.
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
   203
        bF := 0.0
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
   204
    ] ifFalse:[
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
   205
        bO := 0.
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
   206
        bF := b
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
   207
    ].
292
60fbf13dfc8c prepare for view-component integration
Claus Gittinger <cg@exept.de>
parents: 278
diff changeset
   208
323
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
   209
    newLayout
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
   210
        leftFraction:lF offset:lO;
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
   211
        rightFraction:rF offset:rO;
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
   212
        topFraction:tF offset:tO;
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
   213
        bottomFraction:bF offset:bO.
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
   214
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
   215
    self layout:newLayout
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
   216
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
   217
    "Modified: 19.7.1996 / 21:22:11 / cg"
278
f2382bb48850 intitial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   218
! !
f2382bb48850 intitial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   219
321
6421da8810e2 more view mimicri;
Claus Gittinger <cg@exept.de>
parents: 292
diff changeset
   220
!LayoutWrapper  class methodsFor:'documentation'!
278
f2382bb48850 intitial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   221
f2382bb48850 intitial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   222
version
323
ee2f4da361a6 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 321
diff changeset
   223
    ^ '$Header: /cvs/stx/stx/libview2/LayoutWrapper.st,v 1.4 1996-07-22 09:01:25 cg Exp $'
278
f2382bb48850 intitial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   224
! !