UIPropertyView.st
author Claus Gittinger <cg@exept.de>
Tue, 25 Feb 1997 15:07:09 +0100
changeset 60 7542ab7fbbfe
parent 59 0a2b2ff030a0
child 62 0e8573b4329a
permissions -rw-r--r--
*** empty log message ***
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
60
7542ab7fbbfe *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 59
diff changeset
     1
'From Smalltalk/X, Version:3.1.4 on 25-feb-1997 at 2:17:33 pm'                  !
7542ab7fbbfe *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 59
diff changeset
     2
56
7276365d9311 intitial checkin
ca
parents:
diff changeset
     3
ApplicationModel subclass:#UIPropertyView
59
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
     4
	instanceVariableNames:'builderView modified propertyFrame propertyList propertySpecs
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
     5
		currentView currentSpec propertyAspects staticAspects
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
     6
		specBeingEdited userSelectedProperty currentSpecChannel'
56
7276365d9311 intitial checkin
ca
parents:
diff changeset
     7
	classVariableNames:''
7276365d9311 intitial checkin
ca
parents:
diff changeset
     8
	poolDictionaries:''
7276365d9311 intitial checkin
ca
parents:
diff changeset
     9
	category:'Interface-UIPainter'
7276365d9311 intitial checkin
ca
parents:
diff changeset
    10
!
7276365d9311 intitial checkin
ca
parents:
diff changeset
    11
7276365d9311 intitial checkin
ca
parents:
diff changeset
    12
7276365d9311 intitial checkin
ca
parents:
diff changeset
    13
!UIPropertyView class methodsFor:'instance creation'!
7276365d9311 intitial checkin
ca
parents:
diff changeset
    14
7276365d9311 intitial checkin
ca
parents:
diff changeset
    15
in:aTopView receiver:aReceiver
7276365d9311 intitial checkin
ca
parents:
diff changeset
    16
    |application|
7276365d9311 intitial checkin
ca
parents:
diff changeset
    17
7276365d9311 intitial checkin
ca
parents:
diff changeset
    18
    application := self new.
7276365d9311 intitial checkin
ca
parents:
diff changeset
    19
    application in:aTopView receiver:aReceiver.
7276365d9311 intitial checkin
ca
parents:
diff changeset
    20
  ^ application
7276365d9311 intitial checkin
ca
parents:
diff changeset
    21
! !
7276365d9311 intitial checkin
ca
parents:
diff changeset
    22
59
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
    23
!UIPropertyView class methodsFor:'constants'!
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
    24
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
    25
titleOfLayoutMenu
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
    26
    ^ 'Dimension'
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
    27
! !
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
    28
56
7276365d9311 intitial checkin
ca
parents:
diff changeset
    29
!UIPropertyView class methodsFor:'specifications'!
7276365d9311 intitial checkin
ca
parents:
diff changeset
    30
7276365d9311 intitial checkin
ca
parents:
diff changeset
    31
specificationAlignmentOrigin
7276365d9311 intitial checkin
ca
parents:
diff changeset
    32
    "
7276365d9311 intitial checkin
ca
parents:
diff changeset
    33
    UIPainter new openOnClass:self andSelector:#specificationAlignmentOrigin
7276365d9311 intitial checkin
ca
parents:
diff changeset
    34
    "
7276365d9311 intitial checkin
ca
parents:
diff changeset
    35
    <resource: #canvas>
7276365d9311 intitial checkin
ca
parents:
diff changeset
    36
7276365d9311 intitial checkin
ca
parents:
diff changeset
    37
    ^
7276365d9311 intitial checkin
ca
parents:
diff changeset
    38
7276365d9311 intitial checkin
ca
parents:
diff changeset
    39
       #(#FullSpec
7276365d9311 intitial checkin
ca
parents:
diff changeset
    40
          #'window:' 
7276365d9311 intitial checkin
ca
parents:
diff changeset
    41
           #(#WindowSpec
7276365d9311 intitial checkin
ca
parents:
diff changeset
    42
              #'layout:' #(#LayoutFrame 0 0.0 0 0.0 0 1.0 0 1.0)
7276365d9311 intitial checkin
ca
parents:
diff changeset
    43
              #'label:' 'unnamed'
7276365d9311 intitial checkin
ca
parents:
diff changeset
    44
              #'bounds:' #(#Rectangle 0 0 248 304)
7276365d9311 intitial checkin
ca
parents:
diff changeset
    45
          )
7276365d9311 intitial checkin
ca
parents:
diff changeset
    46
          #'component:' 
7276365d9311 intitial checkin
ca
parents:
diff changeset
    47
           #(#SpecCollection
7276365d9311 intitial checkin
ca
parents:
diff changeset
    48
              #'collection:' 
7276365d9311 intitial checkin
ca
parents:
diff changeset
    49
               #(
7276365d9311 intitial checkin
ca
parents:
diff changeset
    50
                 #(#LabelSpec
7276365d9311 intitial checkin
ca
parents:
diff changeset
    51
                    #'name:' 'label1'
7276365d9311 intitial checkin
ca
parents:
diff changeset
    52
                    #'layout:' #(#LayoutFrame 5 0 42 0 48 0 60 0)
7276365d9311 intitial checkin
ca
parents:
diff changeset
    53
                    #'label:' 'left'
7276365d9311 intitial checkin
ca
parents:
diff changeset
    54
                )
7276365d9311 intitial checkin
ca
parents:
diff changeset
    55
                 #(#LabelSpec
7276365d9311 intitial checkin
ca
parents:
diff changeset
    56
                    #'name:' 'label2'
7276365d9311 intitial checkin
ca
parents:
diff changeset
    57
                    #'layout:' #(#LayoutFrame 5 0 69 0 48 0 87 0)
7276365d9311 intitial checkin
ca
parents:
diff changeset
    58
                    #'label:' 'top'
7276365d9311 intitial checkin
ca
parents:
diff changeset
    59
                )
7276365d9311 intitial checkin
ca
parents:
diff changeset
    60
                 #(#LabelSpec
7276365d9311 intitial checkin
ca
parents:
diff changeset
    61
                    #'name:' 'label3'
7276365d9311 intitial checkin
ca
parents:
diff changeset
    62
                    #'layout:' #(#LayoutFrame 57 0 10 0 103 0 27 0)
7276365d9311 intitial checkin
ca
parents:
diff changeset
    63
                    #'label:' 'relative'
7276365d9311 intitial checkin
ca
parents:
diff changeset
    64
                )
7276365d9311 intitial checkin
ca
parents:
diff changeset
    65
                 #(#LabelSpec
7276365d9311 intitial checkin
ca
parents:
diff changeset
    66
                    #'name:' 'label4'
7276365d9311 intitial checkin
ca
parents:
diff changeset
    67
                    #'layout:' #(#LayoutFrame 154 0 11 0 190 0 28 0)
7276365d9311 intitial checkin
ca
parents:
diff changeset
    68
                    #'label:' 'offset'
7276365d9311 intitial checkin
ca
parents:
diff changeset
    69
                )
7276365d9311 intitial checkin
ca
parents:
diff changeset
    70
                 #(#LabelSpec
7276365d9311 intitial checkin
ca
parents:
diff changeset
    71
                    #'name:' 'label5'
7276365d9311 intitial checkin
ca
parents:
diff changeset
    72
                    #'layout:' #(#LayoutFrame 5 0 96 0 48 0 114 0)
7276365d9311 intitial checkin
ca
parents:
diff changeset
    73
                    #'label:' 'align H'
7276365d9311 intitial checkin
ca
parents:
diff changeset
    74
                )
7276365d9311 intitial checkin
ca
parents:
diff changeset
    75
                 #(#LabelSpec
7276365d9311 intitial checkin
ca
parents:
diff changeset
    76
                    #'name:' 'label6'
7276365d9311 intitial checkin
ca
parents:
diff changeset
    77
                    #'layout:' #(#LayoutFrame 5 0 122 0 48 0 140 0)
7276365d9311 intitial checkin
ca
parents:
diff changeset
    78
                    #'label:' 'align V'
7276365d9311 intitial checkin
ca
parents:
diff changeset
    79
                )
7276365d9311 intitial checkin
ca
parents:
diff changeset
    80
                 #(#InputFieldSpec
7276365d9311 intitial checkin
ca
parents:
diff changeset
    81
                    #'name:' 'editField1'
7276365d9311 intitial checkin
ca
parents:
diff changeset
    82
                    #'type:' #numberOrNil
7276365d9311 intitial checkin
ca
parents:
diff changeset
    83
                    #'layout:' #(#LayoutFrame 57 0 42 0 114 0 60 0)
7276365d9311 intitial checkin
ca
parents:
diff changeset
    84
                    #'model:' #leftFraction
59
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
    85
                    #'immediateAccept:' false
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
    86
                    #'acceptOnReturn:' true
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
    87
                    #'acceptOnTab:' true
56
7276365d9311 intitial checkin
ca
parents:
diff changeset
    88
                    #tabable: true
7276365d9311 intitial checkin
ca
parents:
diff changeset
    89
                )
7276365d9311 intitial checkin
ca
parents:
diff changeset
    90
                 #(#InputFieldSpec
7276365d9311 intitial checkin
ca
parents:
diff changeset
    91
                    #'name:' 'editField2'
7276365d9311 intitial checkin
ca
parents:
diff changeset
    92
                    #'type:' #numberOrNil
7276365d9311 intitial checkin
ca
parents:
diff changeset
    93
                    #'layout:' #(#LayoutFrame 57 0 69 0 114 0 87 0)
7276365d9311 intitial checkin
ca
parents:
diff changeset
    94
                    #'model:' #topFraction
59
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
    95
                    #'immediateAccept:' false
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
    96
                    #'acceptOnReturn:' true
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
    97
                    #'acceptOnTab:' true
56
7276365d9311 intitial checkin
ca
parents:
diff changeset
    98
                    #tabable: true
7276365d9311 intitial checkin
ca
parents:
diff changeset
    99
                )
7276365d9311 intitial checkin
ca
parents:
diff changeset
   100
                 #(#InputFieldSpec
7276365d9311 intitial checkin
ca
parents:
diff changeset
   101
                    #'name:' 'editField5'
7276365d9311 intitial checkin
ca
parents:
diff changeset
   102
                    #'type:' #numberOrNil
7276365d9311 intitial checkin
ca
parents:
diff changeset
   103
                    #'layout:' #(#LayoutFrame 57 0 96 0 114 0 114 0)
7276365d9311 intitial checkin
ca
parents:
diff changeset
   104
                    #'model:' #leftAlignmentFraction
59
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   105
                    #'immediateAccept:' false
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   106
                    #'acceptOnReturn:' true
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   107
                    #'acceptOnTab:' true
56
7276365d9311 intitial checkin
ca
parents:
diff changeset
   108
                    #tabable: true
7276365d9311 intitial checkin
ca
parents:
diff changeset
   109
                )
7276365d9311 intitial checkin
ca
parents:
diff changeset
   110
                 #(#InputFieldSpec
7276365d9311 intitial checkin
ca
parents:
diff changeset
   111
                    #'name:' 'editField6'
7276365d9311 intitial checkin
ca
parents:
diff changeset
   112
                    #'type:' #numberOrNil
7276365d9311 intitial checkin
ca
parents:
diff changeset
   113
                    #'layout:' #(#LayoutFrame 56 0 122 0 113 0 140 0)
7276365d9311 intitial checkin
ca
parents:
diff changeset
   114
                    #'model:' #topAlignmentFraction
59
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   115
                    #'immediateAccept:' false
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   116
                    #'acceptOnReturn:' true
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   117
                    #'acceptOnTab:' true
56
7276365d9311 intitial checkin
ca
parents:
diff changeset
   118
                    #tabable: true
7276365d9311 intitial checkin
ca
parents:
diff changeset
   119
                )
7276365d9311 intitial checkin
ca
parents:
diff changeset
   120
                 #(#InputFieldSpec
7276365d9311 intitial checkin
ca
parents:
diff changeset
   121
                    #'name:' 'editField3'
7276365d9311 intitial checkin
ca
parents:
diff changeset
   122
                    #'type:' #numberOrNil
7276365d9311 intitial checkin
ca
parents:
diff changeset
   123
                    #'layout:' #(#LayoutFrame 154 0 42 0 212 0 60 0)
7276365d9311 intitial checkin
ca
parents:
diff changeset
   124
                    #'model:' #leftOffset
59
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   125
                    #'immediateAccept:' false
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   126
                    #'acceptOnReturn:' true
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   127
                    #'acceptOnTab:' true
56
7276365d9311 intitial checkin
ca
parents:
diff changeset
   128
                    #tabable: true
7276365d9311 intitial checkin
ca
parents:
diff changeset
   129
                )
7276365d9311 intitial checkin
ca
parents:
diff changeset
   130
                 #(#InputFieldSpec
7276365d9311 intitial checkin
ca
parents:
diff changeset
   131
                    #'name:' 'editField4'
7276365d9311 intitial checkin
ca
parents:
diff changeset
   132
                    #'type:' #numberOrNil
7276365d9311 intitial checkin
ca
parents:
diff changeset
   133
                    #'layout:' #(#LayoutFrame 154 0 69 0 212 0 87 0)
7276365d9311 intitial checkin
ca
parents:
diff changeset
   134
                    #'model:' #topOffset
59
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   135
                    #'immediateAccept:' false
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   136
                    #'acceptOnReturn:' true
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   137
                    #'acceptOnTab:' true
56
7276365d9311 intitial checkin
ca
parents:
diff changeset
   138
                    #tabable: true
7276365d9311 intitial checkin
ca
parents:
diff changeset
   139
                )
7276365d9311 intitial checkin
ca
parents:
diff changeset
   140
                 #(#ActionButtonSpec
7276365d9311 intitial checkin
ca
parents:
diff changeset
   141
                    #'name:' 'button1'
7276365d9311 intitial checkin
ca
parents:
diff changeset
   142
                    #'layout:' #(#LayoutFrame 119 0 42 0 138 0 60 0)
7276365d9311 intitial checkin
ca
parents:
diff changeset
   143
                    #'label:' ''
7276365d9311 intitial checkin
ca
parents:
diff changeset
   144
                    #'model:' #makeRelativeLeft
7276365d9311 intitial checkin
ca
parents:
diff changeset
   145
                )
7276365d9311 intitial checkin
ca
parents:
diff changeset
   146
                 #(#ActionButtonSpec
7276365d9311 intitial checkin
ca
parents:
diff changeset
   147
                    #'name:' 'button2'
7276365d9311 intitial checkin
ca
parents:
diff changeset
   148
                    #'layout:' #(#LayoutFrame 119 0 69 0 138 0 87 0)
7276365d9311 intitial checkin
ca
parents:
diff changeset
   149
                    #'label:' ''
7276365d9311 intitial checkin
ca
parents:
diff changeset
   150
                    #'model:' #makeRelativeTop
7276365d9311 intitial checkin
ca
parents:
diff changeset
   151
                )
7276365d9311 intitial checkin
ca
parents:
diff changeset
   152
                 #(#ActionButtonSpec
7276365d9311 intitial checkin
ca
parents:
diff changeset
   153
                    #'name:' 'button3'
7276365d9311 intitial checkin
ca
parents:
diff changeset
   154
                    #'layout:' #(#LayoutFrame 216 0 42 0 235 0 60 0)
7276365d9311 intitial checkin
ca
parents:
diff changeset
   155
                    #'label:' ''
7276365d9311 intitial checkin
ca
parents:
diff changeset
   156
                    #'model:' #makeOffsetLeft
7276365d9311 intitial checkin
ca
parents:
diff changeset
   157
                )
7276365d9311 intitial checkin
ca
parents:
diff changeset
   158
                 #(#ActionButtonSpec
7276365d9311 intitial checkin
ca
parents:
diff changeset
   159
                    #'name:' 'button4'
7276365d9311 intitial checkin
ca
parents:
diff changeset
   160
                    #'layout:' #(#LayoutFrame 216 0 69 0 235 0 87 0)
7276365d9311 intitial checkin
ca
parents:
diff changeset
   161
                    #'label:' ''
7276365d9311 intitial checkin
ca
parents:
diff changeset
   162
                    #'model:' #makeOffsetTop
7276365d9311 intitial checkin
ca
parents:
diff changeset
   163
                )
7276365d9311 intitial checkin
ca
parents:
diff changeset
   164
7276365d9311 intitial checkin
ca
parents:
diff changeset
   165
7276365d9311 intitial checkin
ca
parents:
diff changeset
   166
               #(#ActionButtonSpec
7276365d9311 intitial checkin
ca
parents:
diff changeset
   167
                  #'name:' 'button'
7276365d9311 intitial checkin
ca
parents:
diff changeset
   168
                  #'layout:' #(#LayoutFrame 16 0 210 0 76 0 240 0)
7276365d9311 intitial checkin
ca
parents:
diff changeset
   169
                  #'label:' 'frame'
59
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   170
                  #'model:' #showLayoutFrame
56
7276365d9311 intitial checkin
ca
parents:
diff changeset
   171
                )
7276365d9311 intitial checkin
ca
parents:
diff changeset
   172
               #(#ActionButtonSpec
7276365d9311 intitial checkin
ca
parents:
diff changeset
   173
                  #'name:' 'button'
7276365d9311 intitial checkin
ca
parents:
diff changeset
   174
                  #'layout:' #(#LayoutFrame 96 0 210 0 156 0 240 0)
7276365d9311 intitial checkin
ca
parents:
diff changeset
   175
                  #'label:' 'origin'
59
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   176
                  #'model:' #showLayoutOrigin
56
7276365d9311 intitial checkin
ca
parents:
diff changeset
   177
                )
7276365d9311 intitial checkin
ca
parents:
diff changeset
   178
               #(#ActionButtonSpec
7276365d9311 intitial checkin
ca
parents:
diff changeset
   179
                  #'name:' 'button'
7276365d9311 intitial checkin
ca
parents:
diff changeset
   180
                  #'layout:' #(#LayoutFrame 176 0 210 0 236 0 240 0)
7276365d9311 intitial checkin
ca
parents:
diff changeset
   181
                  #'label:' 'align'
59
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   182
                  #'model:' #showAlignmentOrigin
56
7276365d9311 intitial checkin
ca
parents:
diff changeset
   183
                  #'initiallyDisabled:' true
7276365d9311 intitial checkin
ca
parents:
diff changeset
   184
                )
7276365d9311 intitial checkin
ca
parents:
diff changeset
   185
7276365d9311 intitial checkin
ca
parents:
diff changeset
   186
              )
7276365d9311 intitial checkin
ca
parents:
diff changeset
   187
          )
7276365d9311 intitial checkin
ca
parents:
diff changeset
   188
      )
7276365d9311 intitial checkin
ca
parents:
diff changeset
   189
7276365d9311 intitial checkin
ca
parents:
diff changeset
   190
7276365d9311 intitial checkin
ca
parents:
diff changeset
   191
7276365d9311 intitial checkin
ca
parents:
diff changeset
   192
!
7276365d9311 intitial checkin
ca
parents:
diff changeset
   193
7276365d9311 intitial checkin
ca
parents:
diff changeset
   194
specificationLayoutFrame
7276365d9311 intitial checkin
ca
parents:
diff changeset
   195
    "
7276365d9311 intitial checkin
ca
parents:
diff changeset
   196
    UIPainter new openOnClass:self andSelector:#specificationLayoutFrame
7276365d9311 intitial checkin
ca
parents:
diff changeset
   197
    "
7276365d9311 intitial checkin
ca
parents:
diff changeset
   198
    <resource: #canvas>
7276365d9311 intitial checkin
ca
parents:
diff changeset
   199
7276365d9311 intitial checkin
ca
parents:
diff changeset
   200
    ^
7276365d9311 intitial checkin
ca
parents:
diff changeset
   201
7276365d9311 intitial checkin
ca
parents:
diff changeset
   202
       #(#FullSpec
7276365d9311 intitial checkin
ca
parents:
diff changeset
   203
          #'window:' 
7276365d9311 intitial checkin
ca
parents:
diff changeset
   204
           #(#WindowSpec
7276365d9311 intitial checkin
ca
parents:
diff changeset
   205
              #'layout:' #(#LayoutFrame 0 0.0 0 0.0 0 1.0 0 1.0)
7276365d9311 intitial checkin
ca
parents:
diff changeset
   206
              #'label:' 'unnamed'
7276365d9311 intitial checkin
ca
parents:
diff changeset
   207
              #'bounds:' #(#Rectangle 0 0 300 300)
7276365d9311 intitial checkin
ca
parents:
diff changeset
   208
          )
7276365d9311 intitial checkin
ca
parents:
diff changeset
   209
          #'component:' 
7276365d9311 intitial checkin
ca
parents:
diff changeset
   210
           #(#SpecCollection
7276365d9311 intitial checkin
ca
parents:
diff changeset
   211
              #'collection:' 
7276365d9311 intitial checkin
ca
parents:
diff changeset
   212
               #(
7276365d9311 intitial checkin
ca
parents:
diff changeset
   213
                 #(#LabelSpec
7276365d9311 intitial checkin
ca
parents:
diff changeset
   214
                    #'name:' 'label left'
7276365d9311 intitial checkin
ca
parents:
diff changeset
   215
                    #'layout:' #(#LayoutFrame 12 0 39 0 53 0 57 0)
7276365d9311 intitial checkin
ca
parents:
diff changeset
   216
                    #'label:' 'left'
7276365d9311 intitial checkin
ca
parents:
diff changeset
   217
                )
7276365d9311 intitial checkin
ca
parents:
diff changeset
   218
                 #(#LabelSpec
7276365d9311 intitial checkin
ca
parents:
diff changeset
   219
                    #'name:' 'label top'
7276365d9311 intitial checkin
ca
parents:
diff changeset
   220
                    #'layout:' #(#LayoutFrame 12 0 67 0 53 0 85 0)
7276365d9311 intitial checkin
ca
parents:
diff changeset
   221
                    #'label:' 'top'
7276365d9311 intitial checkin
ca
parents:
diff changeset
   222
                )
7276365d9311 intitial checkin
ca
parents:
diff changeset
   223
                 #(#LabelSpec
7276365d9311 intitial checkin
ca
parents:
diff changeset
   224
                    #'name:' 'label right'
7276365d9311 intitial checkin
ca
parents:
diff changeset
   225
                    #'layout:' #(#LayoutFrame 12 0 95 0 53 0 113 0)
7276365d9311 intitial checkin
ca
parents:
diff changeset
   226
                    #'label:' 'right'
7276365d9311 intitial checkin
ca
parents:
diff changeset
   227
                )
7276365d9311 intitial checkin
ca
parents:
diff changeset
   228
                 #(#LabelSpec
7276365d9311 intitial checkin
ca
parents:
diff changeset
   229
                    #'name:' 'label bottom'
7276365d9311 intitial checkin
ca
parents:
diff changeset
   230
                    #'layout:' #(#LayoutFrame 12 0 123 0 53 0 141 0)
7276365d9311 intitial checkin
ca
parents:
diff changeset
   231
                    #'label:' 'bottom'
7276365d9311 intitial checkin
ca
parents:
diff changeset
   232
                )
7276365d9311 intitial checkin
ca
parents:
diff changeset
   233
                 #(#LabelSpec
7276365d9311 intitial checkin
ca
parents:
diff changeset
   234
                    #'name:' 'label relative'
7276365d9311 intitial checkin
ca
parents:
diff changeset
   235
                    #'layout:' #(#LayoutFrame 65 0 6 0 110 0 24 0)
7276365d9311 intitial checkin
ca
parents:
diff changeset
   236
                    #'label:' 'relative'
7276365d9311 intitial checkin
ca
parents:
diff changeset
   237
                )
7276365d9311 intitial checkin
ca
parents:
diff changeset
   238
                 #(#LabelSpec
7276365d9311 intitial checkin
ca
parents:
diff changeset
   239
                    #'name:' 'label offset'
7276365d9311 intitial checkin
ca
parents:
diff changeset
   240
                    #'layout:' #(#LayoutFrame 159 0 6 0 190 0 24 0)
7276365d9311 intitial checkin
ca
parents:
diff changeset
   241
                    #'label:' 'offset'
7276365d9311 intitial checkin
ca
parents:
diff changeset
   242
                )
7276365d9311 intitial checkin
ca
parents:
diff changeset
   243
                 #(#LabelSpec
7276365d9311 intitial checkin
ca
parents:
diff changeset
   244
                    #'name:' 'label all relative'
7276365d9311 intitial checkin
ca
parents:
diff changeset
   245
                    #'layout:' #(#LayoutFrame 12 0 157 0 53 0 175 0)
7276365d9311 intitial checkin
ca
parents:
diff changeset
   246
                    #'label:' 'all'
7276365d9311 intitial checkin
ca
parents:
diff changeset
   247
                )
7276365d9311 intitial checkin
ca
parents:
diff changeset
   248
                 #(#LabelSpec
7276365d9311 intitial checkin
ca
parents:
diff changeset
   249
                    #'name:' 'label all absolute'
7276365d9311 intitial checkin
ca
parents:
diff changeset
   250
                    #'layout:' #(#LayoutFrame 159 0 157 0 210 0 175 0)
7276365d9311 intitial checkin
ca
parents:
diff changeset
   251
                    #'label:' 'all'
7276365d9311 intitial checkin
ca
parents:
diff changeset
   252
                )
7276365d9311 intitial checkin
ca
parents:
diff changeset
   253
                 #(#InputFieldSpec
7276365d9311 intitial checkin
ca
parents:
diff changeset
   254
                    #'name:' 'relative E1'
7276365d9311 intitial checkin
ca
parents:
diff changeset
   255
                    #'layout:' #(#LayoutFrame 65 0 39 0 113 0 57 0)
7276365d9311 intitial checkin
ca
parents:
diff changeset
   256
                    #'model:' #leftFraction
7276365d9311 intitial checkin
ca
parents:
diff changeset
   257
                    #'type:' #numberOrNil
7276365d9311 intitial checkin
ca
parents:
diff changeset
   258
                    #'immediateAccept:' false
7276365d9311 intitial checkin
ca
parents:
diff changeset
   259
                    #'acceptOnReturn:' true
7276365d9311 intitial checkin
ca
parents:
diff changeset
   260
                    #'acceptOnTab:' true
7276365d9311 intitial checkin
ca
parents:
diff changeset
   261
                )
7276365d9311 intitial checkin
ca
parents:
diff changeset
   262
                 #(#InputFieldSpec
7276365d9311 intitial checkin
ca
parents:
diff changeset
   263
                    #'name:' 'relative E2'
7276365d9311 intitial checkin
ca
parents:
diff changeset
   264
                    #'layout:' #(#LayoutFrame 65 0 67 0 113 0 85 0)
7276365d9311 intitial checkin
ca
parents:
diff changeset
   265
                    #'model:' #topFraction
7276365d9311 intitial checkin
ca
parents:
diff changeset
   266
                    #'type:' #numberOrNil
7276365d9311 intitial checkin
ca
parents:
diff changeset
   267
                    #'immediateAccept:' false
7276365d9311 intitial checkin
ca
parents:
diff changeset
   268
                    #'acceptOnReturn:' true
7276365d9311 intitial checkin
ca
parents:
diff changeset
   269
                    #'acceptOnTab:' true
7276365d9311 intitial checkin
ca
parents:
diff changeset
   270
                )
7276365d9311 intitial checkin
ca
parents:
diff changeset
   271
                 #(#InputFieldSpec
7276365d9311 intitial checkin
ca
parents:
diff changeset
   272
                    #'name:' 'relative E3'
7276365d9311 intitial checkin
ca
parents:
diff changeset
   273
                    #'layout:' #(#LayoutFrame 65 0 95 0 113 0 113 0)
7276365d9311 intitial checkin
ca
parents:
diff changeset
   274
                    #'model:' #rightFraction
7276365d9311 intitial checkin
ca
parents:
diff changeset
   275
                    #'type:' #numberOrNil
7276365d9311 intitial checkin
ca
parents:
diff changeset
   276
                    #'immediateAccept:' false
7276365d9311 intitial checkin
ca
parents:
diff changeset
   277
                    #'acceptOnReturn:' true
7276365d9311 intitial checkin
ca
parents:
diff changeset
   278
                    #'acceptOnTab:' true
7276365d9311 intitial checkin
ca
parents:
diff changeset
   279
                )
7276365d9311 intitial checkin
ca
parents:
diff changeset
   280
                 #(#InputFieldSpec
7276365d9311 intitial checkin
ca
parents:
diff changeset
   281
                    #'name:' 'relative E4'
7276365d9311 intitial checkin
ca
parents:
diff changeset
   282
                    #'layout:' #(#LayoutFrame 65 0 123 0 113 0 141 0)
7276365d9311 intitial checkin
ca
parents:
diff changeset
   283
                    #'model:' #bottomFraction
7276365d9311 intitial checkin
ca
parents:
diff changeset
   284
                    #'type:' #numberOrNil
7276365d9311 intitial checkin
ca
parents:
diff changeset
   285
                    #'immediateAccept:' false
7276365d9311 intitial checkin
ca
parents:
diff changeset
   286
                    #'acceptOnReturn:' true
7276365d9311 intitial checkin
ca
parents:
diff changeset
   287
                    #'acceptOnTab:' true
7276365d9311 intitial checkin
ca
parents:
diff changeset
   288
                )
7276365d9311 intitial checkin
ca
parents:
diff changeset
   289
                 #(#InputFieldSpec
7276365d9311 intitial checkin
ca
parents:
diff changeset
   290
                    #'name:' 'offset E1'
7276365d9311 intitial checkin
ca
parents:
diff changeset
   291
                    #'layout:' #(#LayoutFrame 159 0 39 0 210 0 57 0)
7276365d9311 intitial checkin
ca
parents:
diff changeset
   292
                    #'model:' #leftOffset
7276365d9311 intitial checkin
ca
parents:
diff changeset
   293
                    #'type:' #numberOrNil
7276365d9311 intitial checkin
ca
parents:
diff changeset
   294
                    #'immediateAccept:' false
7276365d9311 intitial checkin
ca
parents:
diff changeset
   295
                    #'acceptOnReturn:' true
7276365d9311 intitial checkin
ca
parents:
diff changeset
   296
                    #'acceptOnTab:' true
7276365d9311 intitial checkin
ca
parents:
diff changeset
   297
                )
7276365d9311 intitial checkin
ca
parents:
diff changeset
   298
                 #(#InputFieldSpec
7276365d9311 intitial checkin
ca
parents:
diff changeset
   299
                    #'name:' 'offset E2'
7276365d9311 intitial checkin
ca
parents:
diff changeset
   300
                    #'layout:' #(#LayoutFrame 159 0 67 0 210 0 85 0)
7276365d9311 intitial checkin
ca
parents:
diff changeset
   301
                    #'model:' #topOffset
7276365d9311 intitial checkin
ca
parents:
diff changeset
   302
                    #'type:' #numberOrNil
7276365d9311 intitial checkin
ca
parents:
diff changeset
   303
                    #'immediateAccept:' false
7276365d9311 intitial checkin
ca
parents:
diff changeset
   304
                    #'acceptOnReturn:' true
7276365d9311 intitial checkin
ca
parents:
diff changeset
   305
                    #'acceptOnTab:' true
7276365d9311 intitial checkin
ca
parents:
diff changeset
   306
                )
7276365d9311 intitial checkin
ca
parents:
diff changeset
   307
                 #(#InputFieldSpec
7276365d9311 intitial checkin
ca
parents:
diff changeset
   308
                    #'name:' 'offset E3'
7276365d9311 intitial checkin
ca
parents:
diff changeset
   309
                    #'layout:' #(#LayoutFrame 159 0 95 0 210 0 113 0)
7276365d9311 intitial checkin
ca
parents:
diff changeset
   310
                    #'model:' #rightOffset
7276365d9311 intitial checkin
ca
parents:
diff changeset
   311
                    #'type:' #numberOrNil
7276365d9311 intitial checkin
ca
parents:
diff changeset
   312
                    #'immediateAccept:' false
7276365d9311 intitial checkin
ca
parents:
diff changeset
   313
                    #'acceptOnReturn:' true
7276365d9311 intitial checkin
ca
parents:
diff changeset
   314
                    #'acceptOnTab:' true
7276365d9311 intitial checkin
ca
parents:
diff changeset
   315
                )
7276365d9311 intitial checkin
ca
parents:
diff changeset
   316
                 #(#InputFieldSpec
7276365d9311 intitial checkin
ca
parents:
diff changeset
   317
                    #'name:' 'offset E4'
7276365d9311 intitial checkin
ca
parents:
diff changeset
   318
                    #'layout:' #(#LayoutFrame 159 0 123 0 210 0 141 0)
7276365d9311 intitial checkin
ca
parents:
diff changeset
   319
                    #'model:' #bottomOffset
7276365d9311 intitial checkin
ca
parents:
diff changeset
   320
                    #'type:' #numberOrNil
7276365d9311 intitial checkin
ca
parents:
diff changeset
   321
                    #'immediateAccept:' false
7276365d9311 intitial checkin
ca
parents:
diff changeset
   322
                    #'acceptOnReturn:' true
7276365d9311 intitial checkin
ca
parents:
diff changeset
   323
                    #'acceptOnTab:' true
7276365d9311 intitial checkin
ca
parents:
diff changeset
   324
                )
7276365d9311 intitial checkin
ca
parents:
diff changeset
   325
                 #(#ActionButtonSpec
7276365d9311 intitial checkin
ca
parents:
diff changeset
   326
                    #'name:' 'relative B1'
7276365d9311 intitial checkin
ca
parents:
diff changeset
   327
                    #'layout:' #(#LayoutFrame 117 0 39 0 136 0 57 0)
7276365d9311 intitial checkin
ca
parents:
diff changeset
   328
                    #'label:' ' '
7276365d9311 intitial checkin
ca
parents:
diff changeset
   329
                    #'model:' #makeRelativeLeft
7276365d9311 intitial checkin
ca
parents:
diff changeset
   330
                )
7276365d9311 intitial checkin
ca
parents:
diff changeset
   331
                 #(#ActionButtonSpec
7276365d9311 intitial checkin
ca
parents:
diff changeset
   332
                    #'name:' 'relative B2'
7276365d9311 intitial checkin
ca
parents:
diff changeset
   333
                    #'layout:' #(#LayoutFrame 117 0 67 0 136 0 85 0)
7276365d9311 intitial checkin
ca
parents:
diff changeset
   334
                    #'label:' ' '
7276365d9311 intitial checkin
ca
parents:
diff changeset
   335
                    #'model:' #makeRelativeTop
7276365d9311 intitial checkin
ca
parents:
diff changeset
   336
                )
7276365d9311 intitial checkin
ca
parents:
diff changeset
   337
                 #(#ActionButtonSpec
7276365d9311 intitial checkin
ca
parents:
diff changeset
   338
                    #'name:' 'relative B3'
7276365d9311 intitial checkin
ca
parents:
diff changeset
   339
                    #'layout:' #(#LayoutFrame 117 0 95 0 136 0 113 0)
7276365d9311 intitial checkin
ca
parents:
diff changeset
   340
                    #'label:' ' '
7276365d9311 intitial checkin
ca
parents:
diff changeset
   341
                    #'model:' #makeRelativeRight
7276365d9311 intitial checkin
ca
parents:
diff changeset
   342
                )
7276365d9311 intitial checkin
ca
parents:
diff changeset
   343
                 #(#ActionButtonSpec
7276365d9311 intitial checkin
ca
parents:
diff changeset
   344
                    #'name:' 'relative B4'
7276365d9311 intitial checkin
ca
parents:
diff changeset
   345
                    #'layout:' #(#LayoutFrame 117 0 123 0 136 0 141 0)
7276365d9311 intitial checkin
ca
parents:
diff changeset
   346
                    #'label:' ' '
7276365d9311 intitial checkin
ca
parents:
diff changeset
   347
                    #'model:' #makeRelativeBottom
7276365d9311 intitial checkin
ca
parents:
diff changeset
   348
                )
7276365d9311 intitial checkin
ca
parents:
diff changeset
   349
                 #(#ActionButtonSpec
7276365d9311 intitial checkin
ca
parents:
diff changeset
   350
                    #'name:' 'relative BAll'
7276365d9311 intitial checkin
ca
parents:
diff changeset
   351
                    #'layout:' #(#LayoutFrame 117 0 157 0 136 0 175 0)
7276365d9311 intitial checkin
ca
parents:
diff changeset
   352
                    #'label:' ' '
7276365d9311 intitial checkin
ca
parents:
diff changeset
   353
                    #'model:' #makeRelativeAll
7276365d9311 intitial checkin
ca
parents:
diff changeset
   354
                )
7276365d9311 intitial checkin
ca
parents:
diff changeset
   355
                 #(#ActionButtonSpec
7276365d9311 intitial checkin
ca
parents:
diff changeset
   356
                    #'name:' 'offset B1'
7276365d9311 intitial checkin
ca
parents:
diff changeset
   357
                    #'layout:' #(#LayoutFrame 214 0 39 0 233 0 57 0)
7276365d9311 intitial checkin
ca
parents:
diff changeset
   358
                    #'label:' ''
7276365d9311 intitial checkin
ca
parents:
diff changeset
   359
                    #'model:' #makeOffsetLeft
7276365d9311 intitial checkin
ca
parents:
diff changeset
   360
                )
7276365d9311 intitial checkin
ca
parents:
diff changeset
   361
                 #(#ActionButtonSpec
7276365d9311 intitial checkin
ca
parents:
diff changeset
   362
                    #'name:' 'offset B2'
7276365d9311 intitial checkin
ca
parents:
diff changeset
   363
                    #'layout:' #(#LayoutFrame 214 0 67 0 233 0 85 0)
7276365d9311 intitial checkin
ca
parents:
diff changeset
   364
                    #'label:' ''
7276365d9311 intitial checkin
ca
parents:
diff changeset
   365
                    #'model:' #makeOffsetTop
7276365d9311 intitial checkin
ca
parents:
diff changeset
   366
                )
7276365d9311 intitial checkin
ca
parents:
diff changeset
   367
                 #(#ActionButtonSpec
7276365d9311 intitial checkin
ca
parents:
diff changeset
   368
                    #'name:' 'offset B3'
7276365d9311 intitial checkin
ca
parents:
diff changeset
   369
                    #'layout:' #(#LayoutFrame 214 0 95 0 233 0 113 0)
7276365d9311 intitial checkin
ca
parents:
diff changeset
   370
                    #'label:' ''
7276365d9311 intitial checkin
ca
parents:
diff changeset
   371
                    #'model:' #makeOffsetRight
7276365d9311 intitial checkin
ca
parents:
diff changeset
   372
                )
7276365d9311 intitial checkin
ca
parents:
diff changeset
   373
                 #(#ActionButtonSpec
7276365d9311 intitial checkin
ca
parents:
diff changeset
   374
                    #'name:' 'offset B4'
7276365d9311 intitial checkin
ca
parents:
diff changeset
   375
                    #'layout:' #(#LayoutFrame 214 0 123 0 233 0 141 0)
7276365d9311 intitial checkin
ca
parents:
diff changeset
   376
                    #'label:' ''
7276365d9311 intitial checkin
ca
parents:
diff changeset
   377
                    #'model:' #makeOffsetBottom
7276365d9311 intitial checkin
ca
parents:
diff changeset
   378
                )
7276365d9311 intitial checkin
ca
parents:
diff changeset
   379
                 #(#ActionButtonSpec
7276365d9311 intitial checkin
ca
parents:
diff changeset
   380
                    #'name:' 'offset BAll'
7276365d9311 intitial checkin
ca
parents:
diff changeset
   381
                    #'layout:' #(#LayoutFrame 214 0 157 0 233 0 175 0)
7276365d9311 intitial checkin
ca
parents:
diff changeset
   382
                    #'label:' ' '
7276365d9311 intitial checkin
ca
parents:
diff changeset
   383
                    #'model:' #makeOffsetAll
7276365d9311 intitial checkin
ca
parents:
diff changeset
   384
                )
7276365d9311 intitial checkin
ca
parents:
diff changeset
   385
                 #(#ActionButtonSpec
7276365d9311 intitial checkin
ca
parents:
diff changeset
   386
                    #'name:' 'button'
7276365d9311 intitial checkin
ca
parents:
diff changeset
   387
                    #'layout:' #(#LayoutFrame 16 0 210 0 76 0 240 0)
7276365d9311 intitial checkin
ca
parents:
diff changeset
   388
                    #'label:' 'frame'
59
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   389
                    #'model:' #showLayoutFrame
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   390
                    #'initiallyDisabled:' true
56
7276365d9311 intitial checkin
ca
parents:
diff changeset
   391
                )
7276365d9311 intitial checkin
ca
parents:
diff changeset
   392
                 #(#ActionButtonSpec
7276365d9311 intitial checkin
ca
parents:
diff changeset
   393
                    #'name:' 'button10'
7276365d9311 intitial checkin
ca
parents:
diff changeset
   394
                    #'layout:' #(#LayoutFrame 96 0 210 0 156 0 240 0)
7276365d9311 intitial checkin
ca
parents:
diff changeset
   395
                    #'label:' 'origin'
59
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   396
                    #'model:' #showLayoutOrigin
56
7276365d9311 intitial checkin
ca
parents:
diff changeset
   397
                )
7276365d9311 intitial checkin
ca
parents:
diff changeset
   398
                 #(#ActionButtonSpec
7276365d9311 intitial checkin
ca
parents:
diff changeset
   399
                    #'name:' 'button11'
7276365d9311 intitial checkin
ca
parents:
diff changeset
   400
                    #'layout:' #(#LayoutFrame 176 0 210 0 236 0 240 0)
7276365d9311 intitial checkin
ca
parents:
diff changeset
   401
                    #'label:' 'align'
59
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   402
                    #'model:' #showAlignmentOrigin
56
7276365d9311 intitial checkin
ca
parents:
diff changeset
   403
                )
7276365d9311 intitial checkin
ca
parents:
diff changeset
   404
7276365d9311 intitial checkin
ca
parents:
diff changeset
   405
              )
7276365d9311 intitial checkin
ca
parents:
diff changeset
   406
          )
7276365d9311 intitial checkin
ca
parents:
diff changeset
   407
      )
7276365d9311 intitial checkin
ca
parents:
diff changeset
   408
7276365d9311 intitial checkin
ca
parents:
diff changeset
   409
7276365d9311 intitial checkin
ca
parents:
diff changeset
   410
7276365d9311 intitial checkin
ca
parents:
diff changeset
   411
!
7276365d9311 intitial checkin
ca
parents:
diff changeset
   412
7276365d9311 intitial checkin
ca
parents:
diff changeset
   413
specificationLayoutOrigin
7276365d9311 intitial checkin
ca
parents:
diff changeset
   414
    "
7276365d9311 intitial checkin
ca
parents:
diff changeset
   415
    UIPainter new openOnClass:self andSelector:#specificationLayoutOrigin
7276365d9311 intitial checkin
ca
parents:
diff changeset
   416
    "
7276365d9311 intitial checkin
ca
parents:
diff changeset
   417
    <resource: #canvas>
7276365d9311 intitial checkin
ca
parents:
diff changeset
   418
7276365d9311 intitial checkin
ca
parents:
diff changeset
   419
    ^
7276365d9311 intitial checkin
ca
parents:
diff changeset
   420
7276365d9311 intitial checkin
ca
parents:
diff changeset
   421
       #(#FullSpec
7276365d9311 intitial checkin
ca
parents:
diff changeset
   422
          #'window:' 
7276365d9311 intitial checkin
ca
parents:
diff changeset
   423
           #(#WindowSpec
7276365d9311 intitial checkin
ca
parents:
diff changeset
   424
              #'layout:' #(#LayoutFrame 0 0.0 0 0.0 0 1.0 0 1.0)
7276365d9311 intitial checkin
ca
parents:
diff changeset
   425
              #'label:' 'unnamed'
7276365d9311 intitial checkin
ca
parents:
diff changeset
   426
              #'bounds:' #(#Rectangle 0 0 248 304)
7276365d9311 intitial checkin
ca
parents:
diff changeset
   427
          )
7276365d9311 intitial checkin
ca
parents:
diff changeset
   428
          #'component:' 
7276365d9311 intitial checkin
ca
parents:
diff changeset
   429
           #(#SpecCollection
7276365d9311 intitial checkin
ca
parents:
diff changeset
   430
              #'collection:' 
7276365d9311 intitial checkin
ca
parents:
diff changeset
   431
               #(
7276365d9311 intitial checkin
ca
parents:
diff changeset
   432
                 #(#LabelSpec
7276365d9311 intitial checkin
ca
parents:
diff changeset
   433
                    #'name:' 'label1'
7276365d9311 intitial checkin
ca
parents:
diff changeset
   434
                    #'layout:' #(#LayoutFrame 16 0 42 0 44 0 60 0)
7276365d9311 intitial checkin
ca
parents:
diff changeset
   435
                    #'label:' 'left'
7276365d9311 intitial checkin
ca
parents:
diff changeset
   436
                )
7276365d9311 intitial checkin
ca
parents:
diff changeset
   437
                 #(#LabelSpec
7276365d9311 intitial checkin
ca
parents:
diff changeset
   438
                    #'name:' 'label2'
7276365d9311 intitial checkin
ca
parents:
diff changeset
   439
                    #'layout:' #(#LayoutFrame 16 0 69 0 44 0 87 0)
7276365d9311 intitial checkin
ca
parents:
diff changeset
   440
                    #'label:' 'top'
7276365d9311 intitial checkin
ca
parents:
diff changeset
   441
                )
7276365d9311 intitial checkin
ca
parents:
diff changeset
   442
                 #(#LabelSpec
7276365d9311 intitial checkin
ca
parents:
diff changeset
   443
                    #'name:' 'label3'
7276365d9311 intitial checkin
ca
parents:
diff changeset
   444
                    #'layout:' #(#LayoutFrame 57 0 10 0 103 0 27 0)
7276365d9311 intitial checkin
ca
parents:
diff changeset
   445
                    #'label:' 'relative'
7276365d9311 intitial checkin
ca
parents:
diff changeset
   446
                )
7276365d9311 intitial checkin
ca
parents:
diff changeset
   447
                 #(#LabelSpec
7276365d9311 intitial checkin
ca
parents:
diff changeset
   448
                    #'name:' 'label4'
7276365d9311 intitial checkin
ca
parents:
diff changeset
   449
                    #'layout:' #(#LayoutFrame 154 0 11 0 190 0 28 0)
7276365d9311 intitial checkin
ca
parents:
diff changeset
   450
                    #'label:' 'offset'
7276365d9311 intitial checkin
ca
parents:
diff changeset
   451
                )
7276365d9311 intitial checkin
ca
parents:
diff changeset
   452
                 #(#InputFieldSpec
7276365d9311 intitial checkin
ca
parents:
diff changeset
   453
                    #'name:' 'editField1'
7276365d9311 intitial checkin
ca
parents:
diff changeset
   454
                    #'type:' #numberOrNil
7276365d9311 intitial checkin
ca
parents:
diff changeset
   455
                    #'layout:' #(#LayoutFrame 57 0 42 0 114 0 60 0)
7276365d9311 intitial checkin
ca
parents:
diff changeset
   456
                    #'model:' #leftFraction
59
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   457
                    #'immediateAccept:' false
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   458
                    #'acceptOnReturn:' true
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   459
                    #'acceptOnTab:' true
56
7276365d9311 intitial checkin
ca
parents:
diff changeset
   460
                    #tabable: true
7276365d9311 intitial checkin
ca
parents:
diff changeset
   461
                )
7276365d9311 intitial checkin
ca
parents:
diff changeset
   462
                 #(#InputFieldSpec
7276365d9311 intitial checkin
ca
parents:
diff changeset
   463
                    #'name:' 'editField2'
7276365d9311 intitial checkin
ca
parents:
diff changeset
   464
                    #'type:' #numberOrNil
7276365d9311 intitial checkin
ca
parents:
diff changeset
   465
                    #'layout:' #(#LayoutFrame 57 0 69 0 114 0 87 0)
7276365d9311 intitial checkin
ca
parents:
diff changeset
   466
                    #'model:' #topFraction
59
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   467
                    #'immediateAccept:' false
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   468
                    #'acceptOnReturn:' true
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   469
                    #'acceptOnTab:' true
56
7276365d9311 intitial checkin
ca
parents:
diff changeset
   470
                    #tabable: true
7276365d9311 intitial checkin
ca
parents:
diff changeset
   471
                )
7276365d9311 intitial checkin
ca
parents:
diff changeset
   472
                 #(#InputFieldSpec
7276365d9311 intitial checkin
ca
parents:
diff changeset
   473
                    #'name:' 'editField3'
7276365d9311 intitial checkin
ca
parents:
diff changeset
   474
                    #'type:' #numberOrNil
7276365d9311 intitial checkin
ca
parents:
diff changeset
   475
                    #'layout:' #(#LayoutFrame 154 0 42 0 212 0 60 0)
7276365d9311 intitial checkin
ca
parents:
diff changeset
   476
                    #'model:' #leftOffset
59
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   477
                    #'immediateAccept:' false
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   478
                    #'acceptOnReturn:' true
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   479
                    #'acceptOnTab:' true
56
7276365d9311 intitial checkin
ca
parents:
diff changeset
   480
                    #tabable: true
7276365d9311 intitial checkin
ca
parents:
diff changeset
   481
                )
7276365d9311 intitial checkin
ca
parents:
diff changeset
   482
                 #(#InputFieldSpec
7276365d9311 intitial checkin
ca
parents:
diff changeset
   483
                    #'name:' 'editField4'
7276365d9311 intitial checkin
ca
parents:
diff changeset
   484
                    #'type:' #numberOrNil
7276365d9311 intitial checkin
ca
parents:
diff changeset
   485
                    #'layout:' #(#LayoutFrame 154 0 69 0 212 0 87 0)
7276365d9311 intitial checkin
ca
parents:
diff changeset
   486
                    #'model:' #topOffset
59
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   487
                    #'immediateAccept:' false
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   488
                    #'acceptOnReturn:' true
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   489
                    #'acceptOnTab:' true
56
7276365d9311 intitial checkin
ca
parents:
diff changeset
   490
                    #tabable: true
7276365d9311 intitial checkin
ca
parents:
diff changeset
   491
                )
7276365d9311 intitial checkin
ca
parents:
diff changeset
   492
                 #(#ActionButtonSpec
7276365d9311 intitial checkin
ca
parents:
diff changeset
   493
                    #'name:' 'button1'
7276365d9311 intitial checkin
ca
parents:
diff changeset
   494
                    #'layout:' #(#LayoutFrame 119 0 42 0 138 0 60 0)
7276365d9311 intitial checkin
ca
parents:
diff changeset
   495
                    #'label:' ''
7276365d9311 intitial checkin
ca
parents:
diff changeset
   496
                    #'model:' #makeRelativeLeft
7276365d9311 intitial checkin
ca
parents:
diff changeset
   497
                )
7276365d9311 intitial checkin
ca
parents:
diff changeset
   498
                 #(#ActionButtonSpec
7276365d9311 intitial checkin
ca
parents:
diff changeset
   499
                    #'name:' 'button2'
7276365d9311 intitial checkin
ca
parents:
diff changeset
   500
                    #'layout:' #(#LayoutFrame 119 0 69 0 138 0 87 0)
7276365d9311 intitial checkin
ca
parents:
diff changeset
   501
                    #'label:' ''
7276365d9311 intitial checkin
ca
parents:
diff changeset
   502
                    #'model:' #makeRelativeTop
7276365d9311 intitial checkin
ca
parents:
diff changeset
   503
                )
7276365d9311 intitial checkin
ca
parents:
diff changeset
   504
                 #(#ActionButtonSpec
7276365d9311 intitial checkin
ca
parents:
diff changeset
   505
                    #'name:' 'button3'
7276365d9311 intitial checkin
ca
parents:
diff changeset
   506
                    #'layout:' #(#LayoutFrame 216 0 42 0 235 0 60 0)
7276365d9311 intitial checkin
ca
parents:
diff changeset
   507
                    #'label:' ''
7276365d9311 intitial checkin
ca
parents:
diff changeset
   508
                    #'model:' #makeOffsetLeft
7276365d9311 intitial checkin
ca
parents:
diff changeset
   509
                )
7276365d9311 intitial checkin
ca
parents:
diff changeset
   510
                 #(#ActionButtonSpec
7276365d9311 intitial checkin
ca
parents:
diff changeset
   511
                    #'name:' 'button4'
7276365d9311 intitial checkin
ca
parents:
diff changeset
   512
                    #'layout:' #(#LayoutFrame 216 0 69 0 235 0 87 0)
7276365d9311 intitial checkin
ca
parents:
diff changeset
   513
                    #'label:' ''
7276365d9311 intitial checkin
ca
parents:
diff changeset
   514
                    #'model:' #makeOffsetTop
7276365d9311 intitial checkin
ca
parents:
diff changeset
   515
                )
7276365d9311 intitial checkin
ca
parents:
diff changeset
   516
7276365d9311 intitial checkin
ca
parents:
diff changeset
   517
7276365d9311 intitial checkin
ca
parents:
diff changeset
   518
               #(#ActionButtonSpec
7276365d9311 intitial checkin
ca
parents:
diff changeset
   519
                  #'name:' 'button'
7276365d9311 intitial checkin
ca
parents:
diff changeset
   520
                  #'layout:' #(#LayoutFrame 16 0 210 0 76 0 240 0)
7276365d9311 intitial checkin
ca
parents:
diff changeset
   521
                  #'label:' 'frame'
59
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   522
                  #'model:' #showLayoutFrame
56
7276365d9311 intitial checkin
ca
parents:
diff changeset
   523
                )
7276365d9311 intitial checkin
ca
parents:
diff changeset
   524
               #(#ActionButtonSpec
7276365d9311 intitial checkin
ca
parents:
diff changeset
   525
                  #'name:' 'button'
7276365d9311 intitial checkin
ca
parents:
diff changeset
   526
                  #'layout:' #(#LayoutFrame 96 0 210 0 156 0 240 0)
7276365d9311 intitial checkin
ca
parents:
diff changeset
   527
                  #'label:' 'origin'
59
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   528
                  #'model:' #showLayoutOrigin
56
7276365d9311 intitial checkin
ca
parents:
diff changeset
   529
                  #'initiallyDisabled:' true
7276365d9311 intitial checkin
ca
parents:
diff changeset
   530
                )
7276365d9311 intitial checkin
ca
parents:
diff changeset
   531
               #(#ActionButtonSpec
7276365d9311 intitial checkin
ca
parents:
diff changeset
   532
                  #'name:' 'button'
7276365d9311 intitial checkin
ca
parents:
diff changeset
   533
                  #'layout:' #(#LayoutFrame 176 0 210 0 236 0 240 0)
7276365d9311 intitial checkin
ca
parents:
diff changeset
   534
                  #'label:' 'align'
59
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   535
                  #'model:' #showAlignmentOrigin
56
7276365d9311 intitial checkin
ca
parents:
diff changeset
   536
                )
7276365d9311 intitial checkin
ca
parents:
diff changeset
   537
7276365d9311 intitial checkin
ca
parents:
diff changeset
   538
              )
7276365d9311 intitial checkin
ca
parents:
diff changeset
   539
          )
7276365d9311 intitial checkin
ca
parents:
diff changeset
   540
      )
7276365d9311 intitial checkin
ca
parents:
diff changeset
   541
7276365d9311 intitial checkin
ca
parents:
diff changeset
   542
7276365d9311 intitial checkin
ca
parents:
diff changeset
   543
7276365d9311 intitial checkin
ca
parents:
diff changeset
   544
! !
7276365d9311 intitial checkin
ca
parents:
diff changeset
   545
7276365d9311 intitial checkin
ca
parents:
diff changeset
   546
!UIPropertyView methodsFor:'accessing'!
7276365d9311 intitial checkin
ca
parents:
diff changeset
   547
59
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   548
update:something
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   549
    |slices list view prevSpecClass|
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   550
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   551
    (something == #selection or:[something == #tree]) ifFalse:[
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   552
        (something == #layout and:[modified not and:[self isLayoutSpec]]) ifTrue:[
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   553
            self layoutRead.
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   554
        ].
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   555
        ^ self
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   556
    ].
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   557
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   558
    view := builderView singleSelection.
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   559
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   560
    propertyAspects := nil.
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   561
    currentView     := view.
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   562
    self modified:false.
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   563
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   564
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   565
    currentView isNil ifTrue:[
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   566
        "/ the workView itself.
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   567
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   568
        propertyList selectionIndex:nil.
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   569
        currentSpecChannel := nil.
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   570
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   571
        propertyList list:#().
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   572
        propertySpecs := nil.
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   573
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   574
        "/ must setup for a WindowSpec (to allow entry of min- maxSize etc).
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   575
"/        propertyList list:#('Basics' 'Detail').
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   576
        ^ self
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   577
    ].
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   578
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   579
    prevSpecClass := specBeingEdited class.
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   580
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   581
    specBeingEdited := (builderView generateSpecFor:currentView) first.
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   582
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   583
    (specBeingEdited class ~~ prevSpecClass 
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   584
    or:[currentSpecChannel isNil]) ifTrue:[
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   585
        propertyList selectionIndex:nil.
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   586
        propertyAspects := IdentityDictionary new.
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   587
        propertySpecs := OrderedCollection new.
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   588
        slices        := currentView specClass slices.
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   589
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   590
        list := slices collect:[:slice|
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   591
            propertySpecs add:(slice last).
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   592
            slice first asString
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   593
        ].
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   594
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   595
        list := list, (Array with:(self class titleOfLayoutMenu)).
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   596
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   597
        currentSpecChannel := specBeingEdited asValue.
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   598
        specBeingEdited class addBindingsTo:propertyAspects
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   599
                                 for:specBeingEdited
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   600
                             channel:currentSpecChannel.
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   601
        propertyAspects do:[:anAspect | anAspect addDependent:self ].
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   602
        propertyList list:list.
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   603
        propertyList selection:userSelectedProperty.
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   604
    ] ifFalse:[
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   605
        currentSpecChannel value:specBeingEdited
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   606
    ]
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   607
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   608
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   609
! !
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   610
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   611
!UIPropertyView methodsFor:'change & update'!
56
7276365d9311 intitial checkin
ca
parents:
diff changeset
   612
7276365d9311 intitial checkin
ca
parents:
diff changeset
   613
modified:aState
7276365d9311 intitial checkin
ca
parents:
diff changeset
   614
     "change state of modification flag
7276365d9311 intitial checkin
ca
parents:
diff changeset
   615
     "
7276365d9311 intitial checkin
ca
parents:
diff changeset
   616
     aState ~~ modified ifTrue:[
7276365d9311 intitial checkin
ca
parents:
diff changeset
   617
        (modified := aState) ifTrue:[
7276365d9311 intitial checkin
ca
parents:
diff changeset
   618
            (builder componentAt:#cancelButton) enable.
7276365d9311 intitial checkin
ca
parents:
diff changeset
   619
            (builder componentAt:#applyButton) enable.
7276365d9311 intitial checkin
ca
parents:
diff changeset
   620
        ] ifFalse:[
7276365d9311 intitial checkin
ca
parents:
diff changeset
   621
            (builder componentAt:#cancelButton) disable.
7276365d9311 intitial checkin
ca
parents:
diff changeset
   622
            (builder componentAt:#applyButton) disable.
7276365d9311 intitial checkin
ca
parents:
diff changeset
   623
        ].
7276365d9311 intitial checkin
ca
parents:
diff changeset
   624
    ]
7276365d9311 intitial checkin
ca
parents:
diff changeset
   625
!
7276365d9311 intitial checkin
ca
parents:
diff changeset
   626
7276365d9311 intitial checkin
ca
parents:
diff changeset
   627
propertySelectionChanged
7276365d9311 intitial checkin
ca
parents:
diff changeset
   628
    "called when the property selection changed
7276365d9311 intitial checkin
ca
parents:
diff changeset
   629
    "
7276365d9311 intitial checkin
ca
parents:
diff changeset
   630
    |spec index sel|
7276365d9311 intitial checkin
ca
parents:
diff changeset
   631
7276365d9311 intitial checkin
ca
parents:
diff changeset
   632
    sel := propertyList selection.
7276365d9311 intitial checkin
ca
parents:
diff changeset
   633
7276365d9311 intitial checkin
ca
parents:
diff changeset
   634
    (currentView isNil or:[sel isNil]) ifTrue:[
59
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   635
        "/ must setup for a WindowSpec for workView (to allow entry of min- maxSize etc).
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   636
"/        currentView isNil ifTrue:[
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   637
"/            currentView := receiver
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   638
"/        ].
56
7276365d9311 intitial checkin
ca
parents:
diff changeset
   639
        ^ self showSpec:nil
7276365d9311 intitial checkin
ca
parents:
diff changeset
   640
    ].
7276365d9311 intitial checkin
ca
parents:
diff changeset
   641
    index := propertyList selectionIndex.
7276365d9311 intitial checkin
ca
parents:
diff changeset
   642
    userSelectedProperty := sel.
7276365d9311 intitial checkin
ca
parents:
diff changeset
   643
7276365d9311 intitial checkin
ca
parents:
diff changeset
   644
    index > propertySpecs size ifTrue:[                 "/ one of my specifications
59
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   645
        (sel == self class titleOfLayoutMenu) ifTrue:[
56
7276365d9311 intitial checkin
ca
parents:
diff changeset
   646
            spec := self specificationLayout
7276365d9311 intitial checkin
ca
parents:
diff changeset
   647
        ]
7276365d9311 intitial checkin
ca
parents:
diff changeset
   648
    ] ifFalse:[
7276365d9311 intitial checkin
ca
parents:
diff changeset
   649
        spec := currentView specClass perform:(propertySpecs at:index).
7276365d9311 intitial checkin
ca
parents:
diff changeset
   650
    ].
7276365d9311 intitial checkin
ca
parents:
diff changeset
   651
    self showSpec:spec.
7276365d9311 intitial checkin
ca
parents:
diff changeset
   652
!
7276365d9311 intitial checkin
ca
parents:
diff changeset
   653
7276365d9311 intitial checkin
ca
parents:
diff changeset
   654
update:something with:aParameter from:changedObject
59
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   655
    self modified:true
56
7276365d9311 intitial checkin
ca
parents:
diff changeset
   656
! !
7276365d9311 intitial checkin
ca
parents:
diff changeset
   657
7276365d9311 intitial checkin
ca
parents:
diff changeset
   658
!UIPropertyView methodsFor:'initialization'!
7276365d9311 intitial checkin
ca
parents:
diff changeset
   659
59
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   660
in:aTopView receiver:aBuilderView
56
7276365d9311 intitial checkin
ca
parents:
diff changeset
   661
    |menu y cancelButton applyButton panel|
7276365d9311 intitial checkin
ca
parents:
diff changeset
   662
7276365d9311 intitial checkin
ca
parents:
diff changeset
   663
    super initialize.
59
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   664
    self initializeStaticAspects.
56
7276365d9311 intitial checkin
ca
parents:
diff changeset
   665
59
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   666
    builderView := aBuilderView.
56
7276365d9311 intitial checkin
ca
parents:
diff changeset
   667
7276365d9311 intitial checkin
ca
parents:
diff changeset
   668
    menu := PopUpList label:'properties' in:aTopView.
7276365d9311 intitial checkin
ca
parents:
diff changeset
   669
    menu defaultLabel:'properties'.
7276365d9311 intitial checkin
ca
parents:
diff changeset
   670
    propertyFrame := View in:aTopView.
7276365d9311 intitial checkin
ca
parents:
diff changeset
   671
    panel := HorizontalPanelView in:aTopView.
7276365d9311 intitial checkin
ca
parents:
diff changeset
   672
7276365d9311 intitial checkin
ca
parents:
diff changeset
   673
    cancelButton := Button abortButtonIn:panel.
7276365d9311 intitial checkin
ca
parents:
diff changeset
   674
    applyButton  := Button okButtonIn:panel.
7276365d9311 intitial checkin
ca
parents:
diff changeset
   675
7276365d9311 intitial checkin
ca
parents:
diff changeset
   676
    propertyList := SelectionInList new.
7276365d9311 intitial checkin
ca
parents:
diff changeset
   677
    propertyList list:#( ).
59
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   678
    propertyList selectionIndexHolder onChangeSend:#propertySelectionChanged
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   679
                                                to:self.
56
7276365d9311 intitial checkin
ca
parents:
diff changeset
   680
    menu model:propertyList.
7276365d9311 intitial checkin
ca
parents:
diff changeset
   681
7276365d9311 intitial checkin
ca
parents:
diff changeset
   682
    y := menu preferredExtent y.
7276365d9311 intitial checkin
ca
parents:
diff changeset
   683
    menu  origin:0.0@0.0 corner:1.0@y.
7276365d9311 intitial checkin
ca
parents:
diff changeset
   684
    propertyFrame origin:0.0@y   corner:1.0@1.0.
7276365d9311 intitial checkin
ca
parents:
diff changeset
   685
    panel origin:0.0@1.0 corner:1.0@1.0.
7276365d9311 intitial checkin
ca
parents:
diff changeset
   686
7276365d9311 intitial checkin
ca
parents:
diff changeset
   687
    y := panel preferredExtent y.
7276365d9311 intitial checkin
ca
parents:
diff changeset
   688
    propertyFrame bottomInset:y.
7276365d9311 intitial checkin
ca
parents:
diff changeset
   689
    panel topInset:(y negated).
7276365d9311 intitial checkin
ca
parents:
diff changeset
   690
7276365d9311 intitial checkin
ca
parents:
diff changeset
   691
    builder componentAt:#cancelButton put:cancelButton.
7276365d9311 intitial checkin
ca
parents:
diff changeset
   692
    builder componentAt:#applyButton  put:applyButton.
7276365d9311 intitial checkin
ca
parents:
diff changeset
   693
7276365d9311 intitial checkin
ca
parents:
diff changeset
   694
    cancelButton action:[ self cancel ].
59
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   695
    applyButton  action:[ self apply ].
56
7276365d9311 intitial checkin
ca
parents:
diff changeset
   696
7276365d9311 intitial checkin
ca
parents:
diff changeset
   697
    modified := true.
7276365d9311 intitial checkin
ca
parents:
diff changeset
   698
    self modified:false.
59
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   699
!
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   700
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   701
initializeStaticAspects
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   702
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   703
    staticAspects := IdentityDictionary new.
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   704
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   705
    #(  bottomFraction          bottomOffset
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   706
        leftFraction            leftOffset
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   707
        topFraction             topOffset
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   708
        rightFraction           rightOffset
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   709
        leftAlignmentFraction   topAlignmentFraction
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   710
    )
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   711
    do:[:aChannel|
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   712
        staticAspects at:aChannel put:(ValueHolder new).
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   713
    ].
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   714
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   715
    staticAspects do:[:anAspect | anAspect addDependent:self ].
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   716
56
7276365d9311 intitial checkin
ca
parents:
diff changeset
   717
! !
7276365d9311 intitial checkin
ca
parents:
diff changeset
   718
7276365d9311 intitial checkin
ca
parents:
diff changeset
   719
!UIPropertyView methodsFor:'private'!
7276365d9311 intitial checkin
ca
parents:
diff changeset
   720
7276365d9311 intitial checkin
ca
parents:
diff changeset
   721
aspectFor:aKey
59
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   722
    |aspect|
56
7276365d9311 intitial checkin
ca
parents:
diff changeset
   723
59
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   724
    propertyAspects notNil ifTrue:[
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   725
        aspect := propertyAspects at:aKey ifAbsent:nil.
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   726
        aspect notNil ifTrue:[
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   727
            ^ aspect
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   728
        ]
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   729
    ].
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   730
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   731
    ^ staticAspects at:aKey ifAbsent:[super aspectFor:aKey]
56
7276365d9311 intitial checkin
ca
parents:
diff changeset
   732
!
7276365d9311 intitial checkin
ca
parents:
diff changeset
   733
7276365d9311 intitial checkin
ca
parents:
diff changeset
   734
showSpec:aSpec
7276365d9311 intitial checkin
ca
parents:
diff changeset
   735
    "switch specification
7276365d9311 intitial checkin
ca
parents:
diff changeset
   736
    "
7276365d9311 intitial checkin
ca
parents:
diff changeset
   737
    currentSpec ~= aSpec ifTrue:[
7276365d9311 intitial checkin
ca
parents:
diff changeset
   738
        propertyFrame destroySubViews.
7276365d9311 intitial checkin
ca
parents:
diff changeset
   739
7276365d9311 intitial checkin
ca
parents:
diff changeset
   740
        aSpec notNil ifTrue:[
7276365d9311 intitial checkin
ca
parents:
diff changeset
   741
            builder buildFromSpec:aSpec in:propertyFrame.
7276365d9311 intitial checkin
ca
parents:
diff changeset
   742
            propertyFrame realizeAllSubViews
7276365d9311 intitial checkin
ca
parents:
diff changeset
   743
        ]
7276365d9311 intitial checkin
ca
parents:
diff changeset
   744
    ].
7276365d9311 intitial checkin
ca
parents:
diff changeset
   745
    currentSpec := aSpec.
59
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   746
    self modified:false.
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   747
! !
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   748
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   749
!UIPropertyView methodsFor:'private actions'!
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   750
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   751
apply
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   752
    modified ifTrue:[
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   753
        self modified:false.
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   754
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   755
        self isLayoutSpec ifFalse:[
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   756
            builderView updateFromSpec:specBeingEdited
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   757
        ] ifTrue:[
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   758
            self layoutWrite
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   759
        ]
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   760
    ]
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   761
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   762
!
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   763
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   764
cancel
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   765
    |view|
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   766
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   767
    modified ifTrue:[
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   768
        self modified:false.
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   769
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   770
        self isLayoutSpec ifFalse:[
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   771
            currentView := nil.
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   772
            self update:#selection
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   773
        ] ifTrue:[
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   774
            self layoutRead
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   775
        ]
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   776
    ]
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   777
56
7276365d9311 intitial checkin
ca
parents:
diff changeset
   778
7276365d9311 intitial checkin
ca
parents:
diff changeset
   779
! !
7276365d9311 intitial checkin
ca
parents:
diff changeset
   780
7276365d9311 intitial checkin
ca
parents:
diff changeset
   781
!UIPropertyView methodsFor:'private layout'!
7276365d9311 intitial checkin
ca
parents:
diff changeset
   782
59
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   783
layoutRead
56
7276365d9311 intitial checkin
ca
parents:
diff changeset
   784
    |layout extent|
7276365d9311 intitial checkin
ca
parents:
diff changeset
   785
7276365d9311 intitial checkin
ca
parents:
diff changeset
   786
    layout := currentView geometryLayout.
7276365d9311 intitial checkin
ca
parents:
diff changeset
   787
    layout isNil ifTrue:[^ self].
59
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   788
    modified := true.                   "supress event notifications"
56
7276365d9311 intitial checkin
ca
parents:
diff changeset
   789
7276365d9311 intitial checkin
ca
parents:
diff changeset
   790
    layout isLayout ifFalse:[
59
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   791
        (layout isRectangle or:[layout isPoint]) ifTrue:[
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   792
            (staticAspects at:#leftOffset)   value:(layout left).
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   793
            (staticAspects at:#rightOffset)  value:(layout right).
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   794
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   795
            layout isRectangle ifTrue:[
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   796
                (staticAspects at:#topOffset)    value:(layout top).
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   797
                (staticAspects at:#bottomOffset) value:(layout bottom).
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   798
            ].
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   799
            modified := false.
56
7276365d9311 intitial checkin
ca
parents:
diff changeset
   800
          ^ self
59
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   801
        ]
56
7276365d9311 intitial checkin
ca
parents:
diff changeset
   802
    ].
7276365d9311 intitial checkin
ca
parents:
diff changeset
   803
59
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   804
    (staticAspects at:#leftOffset)   value:(layout leftOffset).
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   805
    (staticAspects at:#leftFraction) value:(layout leftFraction).
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   806
    (staticAspects at:#topOffset)    value:(layout topOffset).
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   807
    (staticAspects at:#topFraction)  value:(layout topFraction).
56
7276365d9311 intitial checkin
ca
parents:
diff changeset
   808
7276365d9311 intitial checkin
ca
parents:
diff changeset
   809
    layout isLayoutFrame ifTrue:[
59
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   810
        (staticAspects at:#rightOffset)    value:(layout rightOffset).
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   811
        (staticAspects at:#bottomOffset)   value:(layout bottomOffset).
56
7276365d9311 intitial checkin
ca
parents:
diff changeset
   812
59
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   813
        (staticAspects at:#rightFraction)  value:(layout rightFraction).
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   814
        (staticAspects at:#bottomFraction) value:(layout bottomFraction).
56
7276365d9311 intitial checkin
ca
parents:
diff changeset
   815
59
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   816
        (staticAspects at:#leftAlignmentFraction) value:0.
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   817
        (staticAspects at:#topAlignmentFraction)  value:0.
56
7276365d9311 intitial checkin
ca
parents:
diff changeset
   818
    ] ifFalse:[
7276365d9311 intitial checkin
ca
parents:
diff changeset
   819
        extent := currentView extent.
7276365d9311 intitial checkin
ca
parents:
diff changeset
   820
59
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   821
        (staticAspects at:#rightOffset)    value:(layout leftOffset + extent x).
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   822
        (staticAspects at:#bottomOffset)   value:(layout topOffset  + extent y).
56
7276365d9311 intitial checkin
ca
parents:
diff changeset
   823
59
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   824
        (staticAspects at:#rightFraction)  value:0.
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   825
        (staticAspects at:#bottomFraction) value:0.
56
7276365d9311 intitial checkin
ca
parents:
diff changeset
   826
7276365d9311 intitial checkin
ca
parents:
diff changeset
   827
        layout isAlignmentOrigin ifTrue:[
59
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   828
            (staticAspects at:#leftAlignmentFraction) value:(layout leftAlignmentFraction).
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   829
            (staticAspects at:#topAlignmentFraction)  value:(layout topAlignmentFraction).
56
7276365d9311 intitial checkin
ca
parents:
diff changeset
   830
        ] ifFalse:[
59
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   831
            (staticAspects at:#leftAlignmentFraction) value:0.
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   832
            (staticAspects at:#topAlignmentFraction)  value:0.
56
7276365d9311 intitial checkin
ca
parents:
diff changeset
   833
        ]
7276365d9311 intitial checkin
ca
parents:
diff changeset
   834
    ].
59
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   835
    modified := false.
56
7276365d9311 intitial checkin
ca
parents:
diff changeset
   836
7276365d9311 intitial checkin
ca
parents:
diff changeset
   837
!
7276365d9311 intitial checkin
ca
parents:
diff changeset
   838
59
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   839
layoutWrite
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   840
    |layout|
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   841
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   842
    currentView isNil ifTrue:[
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   843
        ^ self
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   844
    ].
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   845
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   846
    (currentSpec == self class specificationLayoutFrame) ifTrue:[
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   847
        layout := LayoutFrame new.
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   848
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   849
        layout     leftOffset:((staticAspects at:#leftOffset)     value) ? 0.
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   850
        layout    rightOffset:((staticAspects at:#rightOffset)    value) ? 0.
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   851
        layout      topOffset:((staticAspects at:#topOffset)      value) ? 0.
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   852
        layout   bottomOffset:((staticAspects at:#bottomOffset)   value) ? 0.
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   853
        layout   leftFraction:((staticAspects at:#leftFraction)   value) ? 0.
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   854
        layout  rightFraction:((staticAspects at:#rightFraction)  value) ? 0.
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   855
        layout    topFraction:((staticAspects at:#topFraction)    value) ? 0.
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   856
        layout bottomFraction:((staticAspects at:#bottomFraction) value) ? 0.
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   857
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   858
        builderView setDimension:layout
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   859
    ].
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   860
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   861
    (currentSpec == self class specificationAlignmentOrigin) ifTrue:[
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   862
        layout := AlignmentOrigin new.
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   863
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   864
        layout   leftOffset:((staticAspects at:#leftOffset)   value) ? 0.
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   865
        layout    topOffset:((staticAspects at:#topOffset)    value) ? 0.
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   866
        layout leftFraction:((staticAspects at:#leftFraction) value) ? 0.
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   867
        layout  topFraction:((staticAspects at:#topFraction)  value) ? 0.
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   868
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   869
        layout leftAlignmentFraction:((staticAspects at:#leftAlignmentFraction) value) ? 0.
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   870
        layout  topAlignmentFraction:((staticAspects at:#topAlignmentFraction)  value) ? 0.
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   871
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   872
        ^ builderView setDimension:layout.
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   873
    ].
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   874
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   875
    (currentSpec == self class specificationLayoutOrigin) ifTrue:[
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   876
        layout := LayoutOrigin new.
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   877
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   878
        layout   leftOffset:((staticAspects at:#leftOffset)   value) ? 0.
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   879
        layout    topOffset:((staticAspects at:#topOffset)    value) ? 0.
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   880
        layout leftFraction:((staticAspects at:#leftFraction) value) ? 0.
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   881
        layout  topFraction:((staticAspects at:#topFraction)  value) ? 0.
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   882
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   883
        builderView setDimension:layout.
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   884
    ].
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   885
56
7276365d9311 intitial checkin
ca
parents:
diff changeset
   886
!
7276365d9311 intitial checkin
ca
parents:
diff changeset
   887
59
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   888
showAlignmentOrigin
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   889
    self switchLayoutSpec:(self class specificationAlignmentOrigin)
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   890
!
56
7276365d9311 intitial checkin
ca
parents:
diff changeset
   891
59
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   892
showLayoutFrame
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   893
    self switchLayoutSpec:(self class specificationLayoutFrame)
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   894
!
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   895
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   896
showLayoutOrigin
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   897
    self switchLayoutSpec:(self class specificationLayoutOrigin)
56
7276365d9311 intitial checkin
ca
parents:
diff changeset
   898
!
7276365d9311 intitial checkin
ca
parents:
diff changeset
   899
7276365d9311 intitial checkin
ca
parents:
diff changeset
   900
specificationLayout
7276365d9311 intitial checkin
ca
parents:
diff changeset
   901
    "called from propertyChanged; returns specification assigned to
7276365d9311 intitial checkin
ca
parents:
diff changeset
   902
     current view
7276365d9311 intitial checkin
ca
parents:
diff changeset
   903
    "
7276365d9311 intitial checkin
ca
parents:
diff changeset
   904
    |layout spec|
7276365d9311 intitial checkin
ca
parents:
diff changeset
   905
7276365d9311 intitial checkin
ca
parents:
diff changeset
   906
    (currentView superView specClass basicNew isLayoutContainer) ifTrue:[
7276365d9311 intitial checkin
ca
parents:
diff changeset
   907
        ^ nil
7276365d9311 intitial checkin
ca
parents:
diff changeset
   908
    ].
7276365d9311 intitial checkin
ca
parents:
diff changeset
   909
    layout := currentView geometryLayout.
7276365d9311 intitial checkin
ca
parents:
diff changeset
   910
7276365d9311 intitial checkin
ca
parents:
diff changeset
   911
    layout isLayout ifTrue:[
7276365d9311 intitial checkin
ca
parents:
diff changeset
   912
        layout isLayoutFrame ifTrue:[
7276365d9311 intitial checkin
ca
parents:
diff changeset
   913
            spec := self class specificationLayoutFrame
7276365d9311 intitial checkin
ca
parents:
diff changeset
   914
        ] ifFalse:[
7276365d9311 intitial checkin
ca
parents:
diff changeset
   915
            layout isAlignmentOrigin ifTrue:[
7276365d9311 intitial checkin
ca
parents:
diff changeset
   916
                spec := self class specificationAlignmentOrigin
7276365d9311 intitial checkin
ca
parents:
diff changeset
   917
            ] ifFalse:[
7276365d9311 intitial checkin
ca
parents:
diff changeset
   918
                layout isLayoutOrigin ifTrue:[
7276365d9311 intitial checkin
ca
parents:
diff changeset
   919
                    spec := self class specificationLayoutOrigin
7276365d9311 intitial checkin
ca
parents:
diff changeset
   920
                ]
7276365d9311 intitial checkin
ca
parents:
diff changeset
   921
            ]
7276365d9311 intitial checkin
ca
parents:
diff changeset
   922
        ]
7276365d9311 intitial checkin
ca
parents:
diff changeset
   923
    ].
7276365d9311 intitial checkin
ca
parents:
diff changeset
   924
59
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   925
    spec notNil ifTrue:[
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   926
        self layoutRead
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   927
    ].
56
7276365d9311 intitial checkin
ca
parents:
diff changeset
   928
  ^ spec
59
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   929
!
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   930
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   931
switchLayoutSpec:aSpecification
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   932
    self layoutRead.
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   933
    self showSpec:aSpecification.
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   934
    self modified:true.
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   935
56
7276365d9311 intitial checkin
ca
parents:
diff changeset
   936
! !
7276365d9311 intitial checkin
ca
parents:
diff changeset
   937
7276365d9311 intitial checkin
ca
parents:
diff changeset
   938
!UIPropertyView methodsFor:'private make layout'!
7276365d9311 intitial checkin
ca
parents:
diff changeset
   939
7276365d9311 intitial checkin
ca
parents:
diff changeset
   940
makeLayout:what xOrY:xOrY offset:aBool
7276365d9311 intitial checkin
ca
parents:
diff changeset
   941
    |layout extent fraction offset fractSymb offsetSymb|
7276365d9311 intitial checkin
ca
parents:
diff changeset
   942
7276365d9311 intitial checkin
ca
parents:
diff changeset
   943
    currentView isNil ifTrue:[
7276365d9311 intitial checkin
ca
parents:
diff changeset
   944
        ^ self
7276365d9311 intitial checkin
ca
parents:
diff changeset
   945
    ].
7276365d9311 intitial checkin
ca
parents:
diff changeset
   946
    layout := currentView geometryLayout.
7276365d9311 intitial checkin
ca
parents:
diff changeset
   947
7276365d9311 intitial checkin
ca
parents:
diff changeset
   948
    layout isLayout ifFalse:[
7276365d9311 intitial checkin
ca
parents:
diff changeset
   949
        ^ self
7276365d9311 intitial checkin
ca
parents:
diff changeset
   950
    ].
7276365d9311 intitial checkin
ca
parents:
diff changeset
   951
    fractSymb  := (what, 'Fraction') asSymbol.
7276365d9311 intitial checkin
ca
parents:
diff changeset
   952
    offsetSymb := (what,   'Offset') asSymbol.
7276365d9311 intitial checkin
ca
parents:
diff changeset
   953
7276365d9311 intitial checkin
ca
parents:
diff changeset
   954
    (    (layout respondsTo:fractSymb)
7276365d9311 intitial checkin
ca
parents:
diff changeset
   955
     and:[layout respondsTo:offsetSymb]
7276365d9311 intitial checkin
ca
parents:
diff changeset
   956
    ) ifTrue:[
7276365d9311 intitial checkin
ca
parents:
diff changeset
   957
7276365d9311 intitial checkin
ca
parents:
diff changeset
   958
        fraction := layout perform:fractSymb.
7276365d9311 intitial checkin
ca
parents:
diff changeset
   959
        offset   := layout perform:offsetSymb.
7276365d9311 intitial checkin
ca
parents:
diff changeset
   960
        extent   := (currentView superView computeExtent) perform:xOrY.
7276365d9311 intitial checkin
ca
parents:
diff changeset
   961
7276365d9311 intitial checkin
ca
parents:
diff changeset
   962
        aBool ifTrue:[
7276365d9311 intitial checkin
ca
parents:
diff changeset
   963
            offset := offset + ((fraction * extent) asInteger).
59
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   964
            (staticAspects at:offsetSymb) value:offset.
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   965
            (staticAspects at:fractSymb)  value:0.
56
7276365d9311 intitial checkin
ca
parents:
diff changeset
   966
        ] ifFalse:[
7276365d9311 intitial checkin
ca
parents:
diff changeset
   967
            fraction   := (fraction + (offset / extent)) asFloat.
7276365d9311 intitial checkin
ca
parents:
diff changeset
   968
7276365d9311 intitial checkin
ca
parents:
diff changeset
   969
            (fraction > 1.0) ifTrue:[ fraction := 1.0 ].
7276365d9311 intitial checkin
ca
parents:
diff changeset
   970
            (fraction < 0.0) ifTrue:[ fraction := 0.0 ].
7276365d9311 intitial checkin
ca
parents:
diff changeset
   971
59
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   972
            (staticAspects at:offsetSymb) value:0.
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
   973
            (staticAspects at:fractSymb)  value:fraction.
56
7276365d9311 intitial checkin
ca
parents:
diff changeset
   974
        ]
7276365d9311 intitial checkin
ca
parents:
diff changeset
   975
    ]
7276365d9311 intitial checkin
ca
parents:
diff changeset
   976
7276365d9311 intitial checkin
ca
parents:
diff changeset
   977
7276365d9311 intitial checkin
ca
parents:
diff changeset
   978
!
7276365d9311 intitial checkin
ca
parents:
diff changeset
   979
7276365d9311 intitial checkin
ca
parents:
diff changeset
   980
makeOffsetAll
7276365d9311 intitial checkin
ca
parents:
diff changeset
   981
    self makeOffsetLeft.
7276365d9311 intitial checkin
ca
parents:
diff changeset
   982
    self makeOffsetTop.
7276365d9311 intitial checkin
ca
parents:
diff changeset
   983
    self makeOffsetRight.
7276365d9311 intitial checkin
ca
parents:
diff changeset
   984
    self makeOffsetBottom.
7276365d9311 intitial checkin
ca
parents:
diff changeset
   985
7276365d9311 intitial checkin
ca
parents:
diff changeset
   986
!
7276365d9311 intitial checkin
ca
parents:
diff changeset
   987
7276365d9311 intitial checkin
ca
parents:
diff changeset
   988
makeOffsetBottom
7276365d9311 intitial checkin
ca
parents:
diff changeset
   989
    self makeLayout:'bottom' xOrY:#y offset:true.
7276365d9311 intitial checkin
ca
parents:
diff changeset
   990
7276365d9311 intitial checkin
ca
parents:
diff changeset
   991
!
7276365d9311 intitial checkin
ca
parents:
diff changeset
   992
7276365d9311 intitial checkin
ca
parents:
diff changeset
   993
makeOffsetLeft
7276365d9311 intitial checkin
ca
parents:
diff changeset
   994
    self makeLayout:'left' xOrY:#x offset:true.
7276365d9311 intitial checkin
ca
parents:
diff changeset
   995
7276365d9311 intitial checkin
ca
parents:
diff changeset
   996
!
7276365d9311 intitial checkin
ca
parents:
diff changeset
   997
7276365d9311 intitial checkin
ca
parents:
diff changeset
   998
makeOffsetRight
7276365d9311 intitial checkin
ca
parents:
diff changeset
   999
    self makeLayout:'right' xOrY:#x offset:true.
7276365d9311 intitial checkin
ca
parents:
diff changeset
  1000
7276365d9311 intitial checkin
ca
parents:
diff changeset
  1001
!
7276365d9311 intitial checkin
ca
parents:
diff changeset
  1002
7276365d9311 intitial checkin
ca
parents:
diff changeset
  1003
makeOffsetTop
7276365d9311 intitial checkin
ca
parents:
diff changeset
  1004
    self makeLayout:'top' xOrY:#y offset:true.
7276365d9311 intitial checkin
ca
parents:
diff changeset
  1005
7276365d9311 intitial checkin
ca
parents:
diff changeset
  1006
!
7276365d9311 intitial checkin
ca
parents:
diff changeset
  1007
7276365d9311 intitial checkin
ca
parents:
diff changeset
  1008
makeRelativeAll
7276365d9311 intitial checkin
ca
parents:
diff changeset
  1009
    self makeRelativeLeft.
7276365d9311 intitial checkin
ca
parents:
diff changeset
  1010
    self makeRelativeTop.
7276365d9311 intitial checkin
ca
parents:
diff changeset
  1011
    self makeRelativeRight.
7276365d9311 intitial checkin
ca
parents:
diff changeset
  1012
    self makeRelativeBottom.
7276365d9311 intitial checkin
ca
parents:
diff changeset
  1013
7276365d9311 intitial checkin
ca
parents:
diff changeset
  1014
!
7276365d9311 intitial checkin
ca
parents:
diff changeset
  1015
7276365d9311 intitial checkin
ca
parents:
diff changeset
  1016
makeRelativeBottom
7276365d9311 intitial checkin
ca
parents:
diff changeset
  1017
    self makeLayout:'bottom' xOrY:#y offset:false.
7276365d9311 intitial checkin
ca
parents:
diff changeset
  1018
7276365d9311 intitial checkin
ca
parents:
diff changeset
  1019
!
7276365d9311 intitial checkin
ca
parents:
diff changeset
  1020
7276365d9311 intitial checkin
ca
parents:
diff changeset
  1021
makeRelativeLeft
7276365d9311 intitial checkin
ca
parents:
diff changeset
  1022
    self makeLayout:'left' xOrY:#x offset:false.
7276365d9311 intitial checkin
ca
parents:
diff changeset
  1023
7276365d9311 intitial checkin
ca
parents:
diff changeset
  1024
!
7276365d9311 intitial checkin
ca
parents:
diff changeset
  1025
7276365d9311 intitial checkin
ca
parents:
diff changeset
  1026
makeRelativeRight
7276365d9311 intitial checkin
ca
parents:
diff changeset
  1027
    self makeLayout:'right' xOrY:#x offset:false.
7276365d9311 intitial checkin
ca
parents:
diff changeset
  1028
7276365d9311 intitial checkin
ca
parents:
diff changeset
  1029
!
7276365d9311 intitial checkin
ca
parents:
diff changeset
  1030
7276365d9311 intitial checkin
ca
parents:
diff changeset
  1031
makeRelativeTop
7276365d9311 intitial checkin
ca
parents:
diff changeset
  1032
    self makeLayout:'top' xOrY:#y offset:false.
7276365d9311 intitial checkin
ca
parents:
diff changeset
  1033
7276365d9311 intitial checkin
ca
parents:
diff changeset
  1034
! !
7276365d9311 intitial checkin
ca
parents:
diff changeset
  1035
59
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
  1036
!UIPropertyView methodsFor:'queries'!
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
  1037
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
  1038
isLayoutSpec
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
  1039
    "returns true if current menu is layout
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
  1040
    "
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
  1041
    ^ propertyList selection == self class titleOfLayoutMenu
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
  1042
! !
0a2b2ff030a0 so far ...
ca
parents: 56
diff changeset
  1043
56
7276365d9311 intitial checkin
ca
parents:
diff changeset
  1044
!UIPropertyView class methodsFor:'documentation'!
7276365d9311 intitial checkin
ca
parents:
diff changeset
  1045
7276365d9311 intitial checkin
ca
parents:
diff changeset
  1046
version
7276365d9311 intitial checkin
ca
parents:
diff changeset
  1047
    ^ '$Header$'
7276365d9311 intitial checkin
ca
parents:
diff changeset
  1048
! !