UIPainter.st
author ca
Fri, 14 Feb 1997 16:28:58 +0100
changeset 42 877a25e8f5aa
child 46 8301d6b9e67c
permissions -rw-r--r--
intitial checkin
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
42
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
     1
"
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
     2
 COPYRIGHT (c) 1995 by Claus Gittinger
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
     3
	      All Rights Reserved
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
     4
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
     5
 This software is furnished under a license and may be used
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
     6
 only in accordance with the terms of that license and with the
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
     7
 inclusion of the above copyright notice.   This software may not
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
     8
 be provided or otherwise made available to, or used by, any
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
     9
 other person.  No title to or ownership of the software is
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
    10
 hereby transferred.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
    11
"
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
    12
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
    13
ApplicationModel subclass:#UIPainter
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
    14
	instanceVariableNames:'menu nameField elementMenu workView treeView outletView stringBox
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
    15
		actionBox listBox fileBox currentFileName topView propertyFrame
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
    16
		whichProperty changeSelectorHolder changeChannel
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
    17
		aspectSelectorHolder aspectChannel nameChannel fgChannel
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
    18
		bgChannel applyAction leftFractionHolder leftOffsetHolder
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
    19
		rightFractionHolder rightOffsetHolder topFractionHolder
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
    20
		topOffsetHolder bottomFractionHolder bottomOffsetHolder specClass
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
    21
		specSelector leftAlignmentFractionHolder
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
    22
		topAlignmentFractionHolder propertyShown specShown'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
    23
	classVariableNames:''
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
    24
	poolDictionaries:''
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
    25
	category:'Interface-UIPainter'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
    26
!
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
    27
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
    28
!UIPainter class methodsFor:'documentation'!
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
    29
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
    30
copyright
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
    31
"
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
    32
 COPYRIGHT (c) 1995 by Claus Gittinger
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
    33
	      All Rights Reserved
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
    34
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
    35
 This software is furnished under a license and may be used
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
    36
 only in accordance with the terms of that license and with the
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
    37
 inclusion of the above copyright notice.   This software may not
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
    38
 be provided or otherwise made available to, or used by, any
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
    39
 other person.  No title to or ownership of the software is
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
    40
 hereby transferred.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
    41
"
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
    42
!
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
    43
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
    44
documentation
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
    45
"
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
    46
    not yet finished, not yet published, not yet released.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
    47
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
    48
    [start with:]
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
    49
        Builder open
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
    50
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
    51
    [st80 compatibility:]
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
    52
        UIPainter := Builder. UIPainter open
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
    53
"
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
    54
! !
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
    55
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
    56
!UIPainter class methodsFor:'interface specs'!
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
    57
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
    58
actionButtonModelSpec
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
    59
    "UIPainter new openOnClass:self andSelector:#actionButtonModelSpec"
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
    60
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
    61
    <resource: #canvas>
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
    62
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
    63
    ^
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
    64
     
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
    65
       #(#FullSpec
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
    66
          #'component:' 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
    67
           #(#SpecCollection
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
    68
              #'collection:' 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
    69
               #(
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
    70
                 #(#FramedBoxSpec
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
    71
                    #'layout:' #(#LayoutFrame 0 0 -1 0 251 0 289 0)
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
    72
                    #'component:' 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
    73
                     #(#SpecCollection
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
    74
                        #'collection:' 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
    75
                         #(
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
    76
                           #(#VerticalPanelViewSpec
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
    77
                              #'layout:' #(#LayoutFrame 6 0 26 0 78 0 216 0)
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
    78
                              #'component:' 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
    79
                               #(#SpecCollection
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
    80
                                  #'collection:' 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
    81
                                   #(
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
    82
                                     #(#LabelSpec
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
    83
                                        #'name:' 'label'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
    84
                                        #'layout:' #(#LayoutFrame 0 0 47 0 57 0 71 0)
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
    85
                                        #'label:' 'aspect:'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
    86
                                    )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
    87
                                     #(#LabelSpec
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
    88
                                        #'name:' 'label'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
    89
                                        #'layout:' #(#LayoutFrame 0 0 119 0 62 0 143 0)
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
    90
                                        #'label:' 'change:'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
    91
                                    )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
    92
                                  )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
    93
                              )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
    94
                              #'horizontalLayout:' #left
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
    95
                              #'verticalLayout:' #spreadSpace
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
    96
                          )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
    97
                           #(#VerticalPanelViewSpec
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
    98
                              #'layout:' #(#LayoutFrame 80 0 24 0 231 0 214 0)
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
    99
                              #'component:' 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   100
                               #(#SpecCollection
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   101
                                  #'collection:' 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   102
                                   #(
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   103
                                     #(#InputFieldSpec
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   104
                                        #'name:' 'aspectInput'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   105
                                        #'layout:' #(#LayoutFrame 0 0 49 0 163 0 69 0)
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   106
                                        #model: #aspectChannel
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   107
                                        #acceptOnLostFocus: true
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   108
                                        #tabable: true
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   109
                                    )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   110
                                     #(#InputFieldSpec
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   111
                                        #'name:' 'changeInput'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   112
                                        #'layout:' #(#LayoutFrame 0 0 119 0 163 0 142 0)
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   113
                                        #model: #changeChannel
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   114
                                        #acceptOnLostFocus: true
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   115
                                        #tabable: true
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   116
                                    )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   117
                                  )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   118
                              )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   119
                              #'horizontalLayout:' #fit
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   120
                              #'verticalLayout:' #spreadSpace
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   121
                          )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   122
                           #(#ActionButtonSpec
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   123
                              #'name:' 'button'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   124
                              #'layout:' #(#LayoutFrame 102 0 246 0 153 0 272 0)
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   125
                              #'label:' 'apply'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   126
                              #'model:' #setModelAspects
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   127
                          )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   128
                        )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   129
                    )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   130
                    #'labelPosition:' #topLeft
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   131
                    #'showFrame:' false
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   132
                )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   133
              )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   134
          )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   135
          #'window:' 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   136
           #(#WindowSpec
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   137
              #'label:' 'unnamed'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   138
              #'bounds:' #(#Rectangle 0 0 255 292)
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   139
          )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   140
      )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   141
!
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   142
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   143
colorSpec
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   144
    "UIBuilder new openOnClass:self andSelector:#colorSpec"
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   145
    "Builder new openInterface:#colorSpec"
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   146
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   147
    <resource: #canvas>
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   148
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   149
    ^
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   150
     
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   151
       #(#FullSpec
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   152
          #'component:' 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   153
           #(#SpecCollection
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   154
              #'collection:' 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   155
               #(
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   156
                 #(#FramedBoxSpec
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   157
                    #'layout:' #(#LayoutFrame 0 0 -1 0 252 0 290 0)
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   158
                    #'component:' 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   159
                     #(#SpecCollection
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   160
                        #'collection:' 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   161
                         #(
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   162
                           #(#VerticalPanelViewSpec
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   163
                              #'layout:' #(#LayoutFrame 6 0 26 0 100 0 215 0)
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   164
                              #'component:' 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   165
                               #(#SpecCollection
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   166
                                  #'collection:' 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   167
                                   #(
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   168
                                     #(#LabelSpec
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   169
                                        #'name:' 'label'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   170
                                        #'layout:' #(#LayoutFrame 0 0 47 0 87 0 71 0)
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   171
                                        #'label:' 'foreground:'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   172
                                    )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   173
                                     #(#LabelSpec
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   174
                                        #'name:' 'label'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   175
                                        #'layout:' #(#LayoutFrame 0 0 119 0 93 0 143 0)
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   176
                                        #'label:' 'background:'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   177
                                    )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   178
                                  )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   179
                              )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   180
                              #'horizontalLayout:' #left
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   181
                              #'verticalLayout:' #spreadSpace
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   182
                          )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   183
                           #(#VerticalPanelViewSpec
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   184
                              #'layout:' #(#LayoutFrame 114 0 24 0 233 0 213 0)
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   185
                              #'component:' 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   186
                               #(#SpecCollection
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   187
                                  #'collection:' 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   188
                                   #(
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   189
                                     #(#InputFieldSpec
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   190
                                        #'layout:' #(#LayoutFrame 0 0 49 0 163 0 69 0)
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   191
                                        #model: #foregroundChannel
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   192
                                    )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   193
                                     #(#InputFieldSpec
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   194
                                        #'layout:' #(#LayoutFrame 0 0 119 0 163 0 142 0)
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   195
                                        #model: #backgroundChannel
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   196
                                    )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   197
                                  )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   198
                              )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   199
                              #'horizontalLayout:' #fit
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   200
                              #'verticalLayout:' #spreadSpace
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   201
                          )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   202
                           #(#ActionButtonSpec
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   203
                              #'name:' 'button'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   204
                              #'layout:' #(#LayoutFrame 102 0 246 0 153 0 272 0)
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   205
                              #'label:' 'apply'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   206
                              #'model:' #setColors
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   207
                          )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   208
                        )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   209
                    )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   210
                    #'labelPosition:' #topLeft
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   211
                    #'showFrame:' false
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   212
                )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   213
              )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   214
          )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   215
          #'window:' 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   216
           #(#WindowSpec
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   217
              #'label:' 'unnamed'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   218
              #'bounds:' #(#Rectangle 0 0 255 292)
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   219
          )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   220
      )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   221
!
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   222
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   223
geometrySpecForAlignmentOrigin
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   224
    "UIBuilder new openOnClass:self andSelector:#geometrySpecForAlignmentOrigin"
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   225
    "Builder new openInterface:#geometrySpecForAlignmentOrigin"
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   226
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   227
    <resource: #canvas>
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   228
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   229
    ^
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   230
     
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   231
       #(#FullSpec
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   232
          #'component:' 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   233
           #(#SpecCollection
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   234
              #'collection:' 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   235
               #(
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   236
                 #(#FramedBoxSpec
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   237
                    #'layout:' #(#LayoutFrame 0 0 -1 0 253 0 291 0)
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   238
                    #'component:' 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   239
                     #(#SpecCollection
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   240
                        #'collection:' 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   241
                         #(
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   242
                           #(#VerticalPanelViewSpec
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   243
                              #'layout:' #(#LayoutFrame 6 0 26 0 85 0 219 0)
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   244
                              #'component:' 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   245
                               #(#SpecCollection
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   246
                                  #'collection:' 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   247
                                   #(
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   248
                                     #(#LabelSpec
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   249
                                        #'layout:' #(#LayoutFrame 0 0 19 0 30 0 43 0)
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   250
                                        #'label:' 'left'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   251
                                        #'adjust:' #left
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   252
                                    )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   253
                                     #(#LabelSpec
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   254
                                        #'layout:' #(#LayoutFrame 0 0 63 0 31 0 87 0)
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   255
                                        #'label:' 'top'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   256
                                        #'adjust:' #left
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   257
                                    )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   258
                                     #(#LabelSpec
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   259
                                        #'layout:' #(#LayoutFrame 0 0 107 0 41 0 131 0)
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   260
                                        #'label:' 'align H'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   261
                                        #'adjust:' #left
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   262
                                    )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   263
                                     #(#LabelSpec
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   264
                                        #'layout:' #(#LayoutFrame 0 0 151 0 61 0 175 0)
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   265
                                        #'label:' 'align V'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   266
                                        #'adjust:' #left
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   267
                                    )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   268
                                  )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   269
                              )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   270
                              #'horizontalLayout:' #left
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   271
                              #'verticalLayout:' #spreadSpace
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   272
                          )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   273
                           #(#VerticalPanelViewSpec
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   274
                              #'layout:' #(#LayoutFrame 80 0 24 0 124 0 217 0)
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   275
                              #'component:' 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   276
                               #(#SpecCollection
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   277
                                  #'collection:' 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   278
                                   #(
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   279
                                     #(#InputFieldSpec
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   280
                                        #'layout:' #(#LayoutFrame 0 0 21 0 71 0 42 0)
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   281
                                        #'type:' #numberOrNil
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   282
                                        #model: #leftFractionChannel
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   283
                                        #acceptOnLostFocus: true
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   284
                                        #tabable: true
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   285
                                    )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   286
                                     #(#InputFieldSpec
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   287
                                        #'layout:' #(#LayoutFrame 0 0 64 0 71 0 85 0)
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   288
                                        #'type:' #numberOrNil
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   289
                                        #'model:' #'topFractionChannel'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   290
                                        #acceptOnLostFocus: true
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   291
                                        #tabable: true
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   292
                                    )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   293
                                     #(#InputFieldSpec
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   294
                                        #'layout:' #(#LayoutFrame 0 0 107 0 71 0 128 0)
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   295
                                        #'type:' #numberOrNil
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   296
                                        #model:  #'leftAlignmentFractionChannel'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   297
                                        #acceptOnLostFocus: true
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   298
                                        #tabable: true
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   299
                                    )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   300
                                     #(#InputFieldSpec
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   301
                                        #'layout:' #(#LayoutFrame 0 0 150 0 71 0 171 0)
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   302
                                        #'type:' #numberOrNil
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   303
                                        #'model:' #'topAlignmentFractionChannel'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   304
                                        #acceptOnLostFocus: true
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   305
                                        #tabable: true
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   306
                                    )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   307
                                  )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   308
                              )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   309
                              #'horizontalLayout:' #fit
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   310
                              #'verticalLayout:' #spreadSpace
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   311
                          )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   312
                           #(#VerticalPanelViewSpec
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   313
                              #'layout:' #(#LayoutFrame 150 0 24 0 220 0 216 0)
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   314
                              #'component:' 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   315
                               #(#SpecCollection
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   316
                                  #'collection:' 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   317
                                   #(
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   318
                                     #(#InputFieldSpec
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   319
                                        #'layout:' #(#LayoutFrame 0 0 21 0 114 0 42 0)
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   320
                                        #'type:' #numberOrNil
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   321
                                        #model: #leftOffsetChannel
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   322
                                        #acceptOnLostFocus: true
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   323
                                        #tabable: true
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   324
                                    )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   325
                                     #(#InputFieldSpec
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   326
                                        #'layout:' #(#LayoutFrame 0 0 64 0 114 0 85 0)
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   327
                                        #'type:' #numberOrNil
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   328
                                        #model: #topOffsetChannel
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   329
                                        #acceptOnLostFocus: true
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   330
                                        #tabable: true
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   331
                                    )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   332
                                  )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   333
                              )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   334
                              #'horizontalLayout:' #fit
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   335
                              #'verticalLayout:' #spreadSpace
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   336
                          )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   337
                           #(#ActionButtonSpec
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   338
                              #'name:' 'button'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   339
                              #'layout:' #(#LayoutFrame 16 0 210 0 76 0 240 0)
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   340
                              #'label:' 'frame'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   341
                              #'model:' #setLayoutFrame
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   342
                          )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   343
                           #(#ActionButtonSpec
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   344
                              #'name:' 'button'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   345
                              #'layout:' #(#LayoutFrame 96 0 210 0 156 0 240 0)
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   346
                              #'label:' 'origin'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   347
                              #'model:' #setLayoutOrigin
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   348
                          )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   349
                           #(#ActionButtonSpec
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   350
                              #'name:' 'button'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   351
                              #'layout:' #(#LayoutFrame 176 0 210 0 236 0 240 0)
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   352
                              #'label:' 'align'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   353
                              #'model:' #setAlignmentOrigin
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   354
                              #'initiallyDisabled:' true
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   355
                          )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   356
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   357
                           #(#ActionButtonSpec
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   358
                              #'layout:' #(#LayoutFrame 96 0 260 0 156 0 290 0)
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   359
                              #'label:' 'apply'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   360
                              #'model:' #setDimensionForAlignmentOrigin
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   361
                              #tabable: true
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   362
                          )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   363
                           #(#LabelSpec
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   364
                              #'layout:' #(#LayoutFrame 77 0 9 0 137 0 31 0)
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   365
                              #'label:' 'relative'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   366
                          )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   367
                           #(#LabelSpec
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   368
                              #'layout:' #(#LayoutFrame 167 0 9 0 213 0 30 0)
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   369
                              #'label:' 'offset'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   370
                          )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   371
                        )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   372
                    )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   373
                    #'labelPosition:' #topLeft
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   374
                    #'showFrame:' false
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   375
                )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   376
              )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   377
          )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   378
          #'window:' 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   379
           #(#WindowSpec
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   380
              #'label:' 'indy: unnamed'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   381
              #'bounds:' #(#Rectangle 0 0 255 292)
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   382
          )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   383
      )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   384
!
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   385
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   386
geometrySpecForLayoutFrame
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   387
    "UIBuilder new openOnClass:self andSelector:#geometrySpecForLayoutFrame"
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   388
    "Builder new openInterface:#geometrySpecForLayoutFrame"
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   389
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   390
    <resource: #canvas>
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   391
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   392
    ^
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   393
     
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   394
       #(#FullSpec
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   395
          #'component:' 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   396
           #(#SpecCollection
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   397
              #'collection:' 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   398
               #(
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   399
                 #(#FramedBoxSpec
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   400
                    #'layout:' #(#LayoutFrame 0 0 -1 0 253 0 291 0)
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   401
                    #'component:' 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   402
                     #(#SpecCollection
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   403
                        #'collection:' 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   404
                         #(
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   405
                           #(#VerticalPanelViewSpec
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   406
                              #'layout:' #(#LayoutFrame 6 0 26 0 85 0 219 0)
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   407
                              #'component:' 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   408
                               #(#SpecCollection
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   409
                                  #'collection:' 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   410
                                   #(
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   411
                                     #(#LabelSpec
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   412
                                        #'layout:' #(#LayoutFrame 0 0 19 0 30 0 43 0)
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   413
                                        #'label:' 'left'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   414
                                        #'adjust:' #left
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   415
                                    )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   416
                                     #(#LabelSpec
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   417
                                        #'layout:' #(#LayoutFrame 0 0 63 0 30 0 87 0)
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   418
                                        #'label:' 'top'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   419
                                        #'adjust:' #left
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   420
                                    )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   421
                                     #(#LabelSpec
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   422
                                        #'layout:' #(#LayoutFrame 0 0 107 0 40 0 131 0)
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   423
                                        #'label:' 'right'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   424
                                        #'adjust:' #left
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   425
                                    )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   426
                                     #(#LabelSpec
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   427
                                        #'layout:' #(#LayoutFrame 0 0 151 0 40 0 175 0)
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   428
                                        #'label:' 'bottom'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   429
                                        #'adjust:' #left
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   430
                                    )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   431
                                  )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   432
                              )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   433
                              #'horizontalLayout:' #left
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   434
                              #'verticalLayout:' #spreadSpace
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   435
                          )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   436
                           #(#VerticalPanelViewSpec
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   437
                              #'layout:' #(#LayoutFrame 80 0 24 0 124 0 217 0)
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   438
                              #'component:' 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   439
                               #(#SpecCollection
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   440
                                  #'collection:' 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   441
                                   #(
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   442
                                     #(#InputFieldSpec
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   443
                                        #'layout:' #(#LayoutFrame 0 0 21 0 71 0 42 0)
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   444
                                        #'type:' #numberOrNil
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   445
                                        #model: #leftFractionChannel
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   446
                                        #acceptOnLostFocus: true
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   447
                                        #tabable: true
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   448
                                    )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   449
                                     #(#InputFieldSpec
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   450
                                        #'layout:' #(#LayoutFrame 0 0 64 0 71 0 85 0)
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   451
                                        #'type:' #numberOrNil
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   452
                                        #'model:' #'topFractionChannel'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   453
                                        #acceptOnLostFocus: true
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   454
                                        #tabable: true
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   455
                                    )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   456
                                     #(#InputFieldSpec
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   457
                                        #'layout:' #(#LayoutFrame 0 0 107 0 71 0 128 0)
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   458
                                        #'type:' #numberOrNil
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   459
                                        #model:  #'rightFractionChannel'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   460
                                        #acceptOnLostFocus: true
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   461
                                        #tabable: true
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   462
                                    )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   463
                                     #(#InputFieldSpec
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   464
                                        #'layout:' #(#LayoutFrame 0 0 150 0 71 0 171 0)
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   465
                                        #'type:' #numberOrNil
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   466
                                        #'model:' #'bottomFractionChannel'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   467
                                        #acceptOnLostFocus: true
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   468
                                        #tabable: true
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   469
                                    )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   470
                                  )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   471
                              )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   472
                              #'horizontalLayout:' #fit
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   473
                              #'verticalLayout:' #spreadSpace
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   474
                          )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   475
                           #(#VerticalPanelViewSpec
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   476
                              #'layout:' #(#LayoutFrame 150 0 24 0 220 0 216 0)
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   477
                              #'component:' 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   478
                               #(#SpecCollection
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   479
                                  #'collection:' 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   480
                                   #(
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   481
                                     #(#InputFieldSpec
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   482
                                        #'layout:' #(#LayoutFrame 0 0 21 0 114 0 42 0)
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   483
                                        #'type:' #numberOrNil
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   484
                                        #model: #leftOffsetChannel
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   485
                                        #acceptOnLostFocus: true
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   486
                                        #tabable: true
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   487
                                    )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   488
                                     #(#InputFieldSpec
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   489
                                        #'layout:' #(#LayoutFrame 0 0 64 0 114 0 85 0)
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   490
                                        #'type:' #numberOrNil
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   491
                                        #model: #topOffsetChannel
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   492
                                        #acceptOnLostFocus: true
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   493
                                        #tabable: true
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   494
                                    )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   495
                                     #(#InputFieldSpec
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   496
                                        #'layout:' #(#LayoutFrame 0 0 107 0 114 0 128 0)
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   497
                                        #'type:' #numberOrNil
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   498
                                        #'model:' #rightOffsetChannel
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   499
                                        #acceptOnLostFocus: true
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   500
                                        #tabable: true
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   501
                                    )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   502
                                     #(#InputFieldSpec
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   503
                                        #'layout:' #(#LayoutFrame 0 0 150 0 114 0 171 0)
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   504
                                        #'type:' #numberOrNil
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   505
                                        #'model:' #bottomOffsetChannel
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   506
                                        #acceptOnLostFocus: true
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   507
                                        #tabable: true
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   508
                                    )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   509
                                  )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   510
                              )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   511
                              #'horizontalLayout:' #fit
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   512
                              #'verticalLayout:' #spreadSpace
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   513
                          )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   514
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   515
                           #(#ActionButtonSpec
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   516
                              #'name:' 'button'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   517
                              #'layout:' #(#LayoutFrame 16 0 210 0 76 0 240 0)
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   518
                              #'label:' 'frame'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   519
                              #'model:' #setLayoutFrame
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   520
                              #'initiallyDisabled:' true
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   521
                          )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   522
                           #(#ActionButtonSpec
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   523
                              #'name:' 'button'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   524
                              #'layout:' #(#LayoutFrame 96 0 210 0 156 0 240 0)
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   525
                              #'label:' 'origin'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   526
                              #'model:' #setLayoutOrigin
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   527
                          )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   528
                           #(#ActionButtonSpec
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   529
                              #'name:' 'button'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   530
                              #'layout:' #(#LayoutFrame 176 0 210 0 236 0 240 0)
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   531
                              #'label:' 'align'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   532
                              #'model:' #setAlignmentOrigin
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   533
                          )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   534
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   535
                           #(#ActionButtonSpec
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   536
                              #'layout:' #(#LayoutFrame 96 0 260 0 156 0 290 0)
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   537
                              #'label:' 'apply'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   538
                              #'model:' #setDimensionForLayoutFrame
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   539
                              #tabable: true
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   540
                          )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   541
                           #(#LabelSpec
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   542
                              #'layout:' #(#LayoutFrame 77 0 9 0 137 0 31 0)
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   543
                              #'label:' 'relative'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   544
                          )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   545
                           #(#LabelSpec
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   546
                              #'layout:' #(#LayoutFrame 167 0 9 0 213 0 30 0)
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   547
                              #'label:' 'offset'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   548
                          )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   549
                        )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   550
                    )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   551
                    #'labelPosition:' #topLeft
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   552
                    #'showFrame:' false
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   553
                )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   554
              )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   555
          )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   556
          #'window:' 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   557
           #(#WindowSpec
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   558
              #'label:' 'indy: unnamed'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   559
              #'bounds:' #(#Rectangle 0 0 255 292)
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   560
          )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   561
      )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   562
!
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   563
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   564
geometrySpecForLayoutOrigin
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   565
    "UIPainter new openOnClass:self andSelector:#geometrySpecForLayoutOrigin"
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   566
    "Builder new openInterface:#geometrySpecForLayoutOrigin"
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   567
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   568
    <resource: #canvas>
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   569
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   570
    ^
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   571
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   572
       #(#FullSpec
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   573
          #'component:' 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   574
           #(#SpecCollection
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   575
              #'collection:' 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   576
               #(
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   577
                 #(#FramedBoxSpec
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   578
                    #'name:' 'framedBox'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   579
                    #'layout:' #(#LayoutFrame 0 0 -1 0 253 0 291 0)
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   580
                    #'component:' 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   581
                     #(#SpecCollection
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   582
                        #'collection:' 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   583
                         #(
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   584
                           #(#VerticalPanelViewSpec
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   585
                              #'name:' 'verticalPanelView'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   586
                              #'layout:' #(#LayoutFrame 6 0 26 0 85 0 219 0)
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   587
                              #'component:' 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   588
                               #(#SpecCollection
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   589
                                  #'collection:' 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   590
                                   #(
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   591
                                     #(#LabelSpec
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   592
                                        #'name:' 'label'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   593
                                        #'layout:' #(#LayoutFrame 0 0 19 0 30 0 43 0)
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   594
                                        #'label:' 'left'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   595
                                        #'adjust:' #left
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   596
                                    )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   597
                                     #(#LabelSpec
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   598
                                        #'name:' 'label'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   599
                                        #'layout:' #(#LayoutFrame 0 0 63 0 31 0 87 0)
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   600
                                        #'label:' 'top'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   601
                                        #'adjust:' #left
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   602
                                    )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   603
                                  )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   604
                              )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   605
                              #'horizontalLayout:' #left
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   606
                              #'verticalLayout:' #spreadSpace
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   607
                          )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   608
                           #(#VerticalPanelViewSpec
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   609
                              #'name:' 'verticalPanelView'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   610
                              #'layout:' #(#LayoutFrame 80 0 24 0 124 0 217 0)
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   611
                              #'component:' 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   612
                               #(#SpecCollection
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   613
                                  #'collection:' 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   614
                                   #(
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   615
                                     #(#InputFieldSpec
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   616
                                        #'layout:' #(#LayoutFrame 0 0 21 0 71 0 42 0)
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   617
                                        #'type:' #numberOrNil
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   618
                                        #model: #leftFractionChannel
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   619
                                        #'acceptOnLostFocus:' true
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   620
                                        #tabable: true
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   621
                                    )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   622
                                     #(#InputFieldSpec
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   623
                                        #'layout:' #(#LayoutFrame 0 0 64 0 71 0 85 0)
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   624
                                        #'type:' #numberOrNil
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   625
                                        #'model:' #'topFractionChannel'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   626
                                        #acceptOnLostFocus: true
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   627
                                        #tabable: true
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   628
                                    )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   629
                                  )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   630
                              )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   631
                              #'horizontalLayout:' #fit
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   632
                              #'verticalLayout:' #spreadSpace
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   633
                          )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   634
                           #(#VerticalPanelViewSpec
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   635
                              #'name:' 'verticalPanelView'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   636
                              #'layout:' #(#LayoutFrame 150 0 24 0 220 0 216 0)
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   637
                              #'component:' 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   638
                               #(#SpecCollection
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   639
                                  #'collection:' 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   640
                                   #(
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   641
                                     #(#InputFieldSpec
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   642
                                        #'layout:' #(#LayoutFrame 0 0 21 0 114 0 42 0)
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   643
                                        #'type:' #numberOrNil
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   644
                                        #model: #leftOffsetChannel
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   645
                                        #acceptOnLostFocus: true
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   646
                                        #tabable: true
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   647
                                    )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   648
                                     #(#InputFieldSpec
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   649
                                        #'layout:' #(#LayoutFrame 0 0 64 0 114 0 85 0)
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   650
                                        #'type:' #numberOrNil
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   651
                                        #model: #topOffsetChannel
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   652
                                        #acceptOnLostFocus: true
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   653
                                        #tabable: true
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   654
                                    )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   655
                                  )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   656
                              )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   657
                              #'horizontalLayout:' #fit
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   658
                              #'verticalLayout:' #spreadSpace
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   659
                          )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   660
                           #(#ActionButtonSpec
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   661
                              #'name:' 'button'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   662
                              #'layout:' #(#LayoutFrame 16 0 210 0 76 0 240 0)
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   663
                              #'label:' 'frame'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   664
                              #'model:' #setLayoutFrame
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   665
                          )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   666
                           #(#ActionButtonSpec
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   667
                              #'name:' 'button'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   668
                              #'layout:' #(#LayoutFrame 96 0 210 0 156 0 240 0)
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   669
                              #'label:' 'origin'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   670
                              #'model:' #setLayoutOrigin
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   671
                              #'initiallyDisabled:' true
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   672
                          )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   673
                           #(#ActionButtonSpec
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   674
                              #'name:' 'button'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   675
                              #'layout:' #(#LayoutFrame 176 0 210 0 236 0 240 0)
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   676
                              #'label:' 'align'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   677
                              #'model:' #setAlignmentOrigin
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   678
                          )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   679
                           #(#ActionButtonSpec
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   680
                              #'name:' 'button'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   681
                              #'layout:' #(#LayoutFrame 96 0 260 0 156 0 290 0)
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   682
                              #'label:' 'apply'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   683
                              #'model:' #setDimensionForLayoutOrigin
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   684
                          )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   685
                           #(#LabelSpec
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   686
                              #'name:' 'label'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   687
                              #'layout:' #(#LayoutFrame 77 0 9 0 137 0 31 0)
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   688
                              #'label:' 'relative'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   689
                          )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   690
                           #(#LabelSpec
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   691
                              #'name:' 'label'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   692
                              #'layout:' #(#LayoutFrame 159 0 9 0 205 0 30 0)
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   693
                              #'label:' 'offset'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   694
                          )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   695
                        )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   696
                    )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   697
                    #'labelPosition:' #topLeft
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   698
                    #'showFrame:' false
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   699
                )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   700
              )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   701
          )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   702
          #'window:' 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   703
           #(#WindowSpec
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   704
              #'label:' 'indy: unnamed'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   705
              #'bounds:' #(#Rectangle 0 0 255 292)
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   706
          )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   707
      )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   708
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   709
!
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   710
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   711
miscSpec
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   712
    "UIBuilder new openOnClass:self andSelector:#miscSpec"
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   713
    "Builder new openInterface:#miscSpec"
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   714
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   715
    <resource: #canvas>
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   716
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   717
    ^
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   718
     
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   719
       #(#FullSpec
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   720
          #'component:' 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   721
           #(#SpecCollection
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   722
              #'collection:' 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   723
               #(
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   724
                 #(#FramedBoxSpec
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   725
                    #'layout:' #(#LayoutFrame 0 0 -1 0 251 0 289 0)
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   726
                    #'component:' 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   727
                     #(#SpecCollection
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   728
                        #'collection:' 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   729
                         #(
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   730
                           #(#VerticalPanelViewSpec
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   731
                              #'layout:' #(#LayoutFrame 6 0 26 0 61 0 215 0)
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   732
                              #'component:' 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   733
                               #(#SpecCollection
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   734
                                  #'collection:' 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   735
                                   #(
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   736
                                     #(#LabelSpec
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   737
                                        #'layout:' #(#LayoutFrame 0 0 47 0 57 0 71 0)
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   738
                                        #'label:' 'name:'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   739
                                    )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   740
                                  )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   741
                              )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   742
                              #'horizontalLayout:' #left
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   743
                              #'verticalLayout:' #spreadSpace
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   744
                          )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   745
                           #(#VerticalPanelViewSpec
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   746
                              #'layout:' #(#LayoutFrame 60 0 24 0 230 0 213 0)
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   747
                              #'component:' 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   748
                               #(#SpecCollection
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   749
                                  #'collection:' 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   750
                                   #(
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   751
                                     #(#InputFieldSpec
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   752
                                        #model: #nameChannel
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   753
                                        #'layout:' #(#LayoutFrame 0 0 49 0 163 0 69 0)
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   754
                                        #acceptOnLostFocus: true
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   755
                                        #tabable: true
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   756
                                    )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   757
                                  )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   758
                              )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   759
                              #'horizontalLayout:' #fit
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   760
                              #'verticalLayout:' #spreadSpace
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   761
                          )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   762
                           #(#ActionButtonSpec
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   763
                              #'layout:' #(#LayoutFrame 102 0 246 0 153 0 272 0)
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   764
                              #'label:' 'apply'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   765
                              #'model:' #setMiscAspects
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   766
                              #tabable: true
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   767
                          )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   768
                        )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   769
                    )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   770
                    #'labelPosition:' #topLeft
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   771
                    #'showFrame:' false
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   772
                )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   773
              )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   774
          )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   775
          #'window:' 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   776
           #(#WindowSpec
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   777
              #'label:' 'unnamed'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   778
              #'bounds:' #(#Rectangle 0 0 255 292)
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   779
          )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   780
      )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   781
!
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   782
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   783
modelSpec
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   784
    "UIBuilder new openOnClass:self andSelector:#modelSpec"
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   785
    "Builder new openInterface:#modelSpec"
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   786
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   787
    <resource: #canvas>
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   788
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   789
    ^
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   790
     
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   791
       #(#FullSpec
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   792
          #'component:' 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   793
           #(#SpecCollection
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   794
              #'collection:' 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   795
               #(
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   796
                 #(#FramedBoxSpec
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   797
                    #'layout:' #(#LayoutFrame 0 0 -1 0 251 0 289 0)
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   798
                    #'component:' 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   799
                     #(#SpecCollection
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   800
                        #'collection:' 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   801
                         #(
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   802
                           #(#VerticalPanelViewSpec
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   803
                              #'layout:' #(#LayoutFrame 6 0 26 0 78 0 216 0)
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   804
                              #'component:' 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   805
                               #(#SpecCollection
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   806
                                  #'collection:' 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   807
                                   #(
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   808
                                     #(#LabelSpec
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   809
                                        #'name:' 'label'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   810
                                        #'layout:' #(#LayoutFrame 0 0 47 0 57 0 71 0)
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   811
                                        #'label:' 'aspect:'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   812
                                    )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   813
                                     #(#LabelSpec
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   814
                                        #'name:' 'label'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   815
                                        #'layout:' #(#LayoutFrame 0 0 119 0 62 0 143 0)
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   816
                                        #'label:' 'change:'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   817
                                    )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   818
                                  )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   819
                              )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   820
                              #'horizontalLayout:' #left
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   821
                              #'verticalLayout:' #spreadSpace
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   822
                          )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   823
                           #(#VerticalPanelViewSpec
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   824
                              #'layout:' #(#LayoutFrame 80 0 24 0 231 0 214 0)
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   825
                              #'component:' 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   826
                               #(#SpecCollection
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   827
                                  #'collection:' 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   828
                                   #(
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   829
                                     #(#InputFieldSpec
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   830
                                        #'name:' 'aspectInput'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   831
                                        #'layout:' #(#LayoutFrame 0 0 49 0 163 0 69 0)
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   832
                                        #model: #aspectChannel
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   833
                                        #acceptOnLostFocus: true
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   834
                                        #tabable: true
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   835
                                    )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   836
                                     #(#InputFieldSpec
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   837
                                        #'name:' 'changeInput'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   838
                                        #'layout:' #(#LayoutFrame 0 0 119 0 163 0 142 0)
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   839
                                        #model: #changeChannel
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   840
                                        #acceptOnLostFocus: true
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   841
                                        #tabable: true
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   842
                                    )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   843
                                  )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   844
                              )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   845
                              #'horizontalLayout:' #fit
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   846
                              #'verticalLayout:' #spreadSpace
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   847
                          )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   848
                           #(#ActionButtonSpec
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   849
                              #'name:' 'button'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   850
                              #'layout:' #(#LayoutFrame 102 0 246 0 153 0 272 0)
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   851
                              #'label:' 'apply'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   852
                              #'model:' #setModelAspects
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   853
                          )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   854
                        )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   855
                    )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   856
                    #'labelPosition:' #topLeft
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   857
                    #'showFrame:' false
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   858
                )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   859
              )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   860
          )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   861
          #'window:' 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   862
           #(#WindowSpec
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   863
              #'label:' 'unnamed'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   864
              #'bounds:' #(#Rectangle 0 0 255 292)
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   865
          )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   866
      )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   867
! !
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   868
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   869
!UIPainter methodsFor:'BuilderView interface'!
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   870
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   871
setUndoLabel:aString
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   872
    aString isNil ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   873
        (menu menuAt:#edit) labelAt:#undoAction put:'undo'.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   874
        (menu menuAt:#edit) disable:#undoAction
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   875
    ] ifFalse:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   876
        (menu menuAt:#edit) labelAt:#undoAction put:'undo: ' , aString.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   877
        (menu menuAt:#edit) enable:#undoAction
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   878
    ]
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   879
!
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   880
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   881
update:something with:parameter
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   882
    |singleSelection|
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   883
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   884
    elementMenu deselect.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   885
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   886
    something == #undoHistory ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   887
        ^ self setUndoLabel:parameter
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   888
    ].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   889
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   890
    singleSelection := workView singleSelection.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   891
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   892
    (something == #layout or:[something == #any]) ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   893
        singleSelection notNil ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   894
            self fetchLayoutFrom:singleSelection
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   895
        ].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   896
        ^ self
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   897
    ].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   898
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   899
    (something == #aspects or:[something == #any]) ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   900
        singleSelection notNil ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   901
            self fetchModelAspectsFrom:singleSelection
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   902
        ].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   903
        ^ self
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   904
    ].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   905
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   906
    (something == #selection or:[something == #any]) ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   907
        self showPropertyView.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   908
        self showOutletsFor:(workView selection).
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   909
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   910
        singleSelection isNil ifFalse:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   911
            nameChannel isNil ifTrue:[self nameChannel].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   912
            nameChannel value:singleSelection name.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   913
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   914
            self fetchLayoutFrom:singleSelection.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   915
            self fetchModelAspectsFrom:singleSelection.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   916
        ].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   917
        ^ self
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   918
    ].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   919
! !
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   920
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   921
!UIPainter methodsFor:'aspects'!
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   922
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   923
aspectChannel
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   924
    ^ aspectChannel
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   925
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   926
    "Modified: 6.9.1995 / 01:00:30 / claus"
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   927
!
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   928
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   929
backgroundChannel
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   930
    ^ bgChannel
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   931
!
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   932
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   933
bottomFractionChannel
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   934
    ^ bottomFractionHolder
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   935
!
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   936
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   937
bottomOffsetChannel
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   938
    ^ bottomOffsetHolder
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   939
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   940
!
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   941
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   942
changeChannel
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   943
    ^ changeChannel
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   944
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   945
    "Modified: 6.9.1995 / 01:00:33 / claus"
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   946
!
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   947
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   948
foregroundChannel
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   949
    ^ fgChannel
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   950
!
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   951
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   952
leftAlignmentFractionChannel
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   953
    ^ leftAlignmentFractionHolder
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   954
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   955
!
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   956
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   957
leftFractionChannel
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   958
    ^ leftFractionHolder
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   959
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   960
!
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   961
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   962
leftOffsetChannel
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   963
    ^ leftOffsetHolder
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   964
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   965
!
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   966
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   967
nameChannel
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   968
    nameChannel isNil ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   969
	nameChannel := '' asValue.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   970
    ].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   971
    ^ nameChannel
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   972
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   973
    "Modified: 6.9.1995 / 00:38:00 / claus"
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   974
!
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   975
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   976
rightFractionChannel
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   977
    ^ rightFractionHolder
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   978
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   979
!
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   980
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   981
rightOffsetChannel
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   982
    ^ rightOffsetHolder
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   983
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   984
!
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   985
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   986
topAlignmentFractionChannel
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   987
    ^ topAlignmentFractionHolder
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   988
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   989
!
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   990
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   991
topFractionChannel
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   992
    ^ topFractionHolder
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   993
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   994
!
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   995
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   996
topOffsetChannel
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   997
    ^ topOffsetHolder
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   998
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
   999
! !
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1000
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1001
!UIPainter methodsFor:'filein & fileout'!
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1002
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1003
openFile:aFileName
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1004
    |aStream |
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1005
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1006
    aStream := FileStream readonlyFileNamed:aFileName.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1007
    aStream notNil ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1008
	workView fileInContentsFrom:aStream.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1009
	aStream close.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1010
	currentFileName := aFileName
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1011
    ]
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1012
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1013
!
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1014
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1015
saveAs:aFileName
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1016
    |aStream|
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1017
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1018
    aStream := FileStream newFileNamed:aFileName.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1019
    aStream notNil ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1020
	workView storeContentsOn:aStream.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1021
	aStream close
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1022
    ].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1023
    currentFileName := aFileName
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1024
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1025
! !
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1026
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1027
!UIPainter methodsFor:'help'!
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1028
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1029
helpTextFor:aComponent
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1030
    |sel|
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1031
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1032
    (aComponent isKindOf:Button) ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1033
	(sel := aComponent changeMessage) notNil ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1034
	    "/ take the buttons change symbol as resource-key
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1035
	    ^ resources string:(sel asString)
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1036
	]
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1037
    ].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1038
    ^ nil
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1039
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1040
    "Modified: 31.8.1995 / 20:49:58 / claus"
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1041
! !
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1042
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1043
!UIPainter methodsFor:'initialization'!
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1044
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1045
buttonPanelSpec
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1046
    "return a spec for the buttons in the panel;
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1047
     entries consists of selector and bitmap-filename.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1048
     nil selectors are taken as separators (see setupButtonPanel)"
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1049
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1050
    ^ #(
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1051
        #(alignSelectionLeft         true 'b_alignL.xbm'  nil false)
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1052
        #(alignSelectionRight        true 'b_alignR.xbm'  nil false)
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1053
        #(alignSelectionLeftAndRight true 'b_alignLR.xbm' nil false)
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1054
        #(nil                        nil  nil nil)
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1055
        #(alignSelectionTop          true 'b_alignT.xbm'  nil false)
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1056
        #(alignSelectionBottom       true 'b_alignB.xbm'  nil false)
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1057
        #(alignSelectionTopAndBottom true 'b_alignTB.xbm' nil false)
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1058
        #(nil                        nil  nil nil)
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1059
        #(alignSelectionCenterHor    true 'b_alignCH.xbm' nil false)
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1060
        #(alignSelectionCenterVer    true 'b_alignCV.xbm' nil false)
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1061
        #(nil                        nil  nil nil)
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1062
        #(moveSelectionLeft          true 'b_moveLeft.xbm'  nil true)
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1063
        #(moveSelectionRight         true 'b_moveRight.xbm' nil true)
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1064
        #(moveSelectionUp            true 'b_moveUp.xbm'    nil true)
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1065
        #(moveSelectionDown          true 'b_moveDown.xbm'  nil true)
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1066
        #(moveSelectionLeft10        true 'b_moveLeft2.xbm'  nil true)
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1067
        #(moveSelectionRight10       true 'b_moveRight2.xbm' nil true)
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1068
        #(moveSelectionUp10          true 'b_moveUp2.xbm'    nil true)
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1069
        #(moveSelectionDown10        true 'b_moveDown2.xbm'  nil true)
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1070
     )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1071
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1072
    "Modified: 5.9.1995 / 22:20:36 / claus"
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1073
!
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1074
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1075
createCanvas 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1076
    |topView|
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1077
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1078
    super initialize.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1079
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1080
    topView := StandardSystemView new.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1081
    topView label:'unnamed'.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1082
    topView extent:300@300.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1083
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1084
    workView := UIPainterView in:topView.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1085
    workView layout:(0.0 @ 0.0 corner:1.0 @ 1.0) asLayout.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1086
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1087
    ^ workView.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1088
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1089
    "Builder new createCanvas open"
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1090
!
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1091
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1092
createPaletteIn:aViewOrNil
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1093
    |topView v|
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1094
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1095
    aViewOrNil isNil ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1096
        topView := StandardSystemView new.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1097
        topView label:'element palette'.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1098
        topView extent:200@400.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1099
    ] ifFalse:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1100
        topView := aViewOrNil
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1101
    ].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1102
    v := HVScrollableView for:SelectionInListView miniScrollerH:true in:topView.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1103
    v origin:(0.0 @ 0.0) corner:(1.0 @ 1.0).
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1104
    elementMenu := v scrolledView.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1105
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1106
    ^ elementMenu.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1107
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1108
    "(Builder new createPaletteIn:nil) topView open"
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1109
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1110
    "Modified: 5.9.1995 / 23:52:57 / claus"
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1111
!
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1112
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1113
initChannels
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1114
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1115
    bottomFractionHolder        := nil asValue.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1116
    bottomOffsetHolder          := nil asValue.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1117
    leftFractionHolder          := nil asValue.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1118
    leftOffsetHolder            := nil asValue.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1119
    rightFractionHolder         := nil asValue.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1120
    rightOffsetHolder           := nil asValue.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1121
    topFractionHolder           := nil asValue.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1122
    topOffsetHolder             := nil asValue.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1123
    leftAlignmentFractionHolder := nil asValue.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1124
    topAlignmentFractionHolder  := nil asValue.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1125
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1126
    fgChannel := nil asValue.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1127
    bgChannel := nil asValue.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1128
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1129
    aspectChannel := nil asValue.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1130
    changeChannel := nil asValue.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1131
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1132
!
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1133
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1134
initPullDownMenu
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1135
    menu labels:(resources  array:#(
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1136
                                    'file'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1137
                                    'edit'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1138
                                    'font'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1139
                                    'type'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1140
                                    'align'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1141
                                    'dimension'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1142
                                    'form'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1143
                                    'special'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1144
                                    'code'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1145
                                    'debug'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1146
                                    'test'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1147
                                 )).
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1148
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1149
    menu selectors:#(#file
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1150
                     #edit
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1151
                     #font
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1152
                     #type
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1153
                     #align 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1154
                     #dimension 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1155
                     #form
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1156
                     #special
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1157
                     #code
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1158
                     #debugging
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1159
                     #test
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1160
                    ).
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1161
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1162
    menu at:#file 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1163
            putLabels:(resources  array:
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1164
                      #('new'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1165
                        'from class' 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1166
                        'pick a view ' 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1167
                        '-'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1168
                        'save' 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1169
                        'save as ...' 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1170
                        '-'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1171
                        'compile' 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1172
                        '-'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1173
                        'source' 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1174
                        'windowSpec' 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1175
                        'inspect me' 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1176
                        '-'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1177
                        'print'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1178
                        '-'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1179
                        'quit'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1180
                       ))
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1181
            selectors:#(doNew 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1182
                        doFromClass
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1183
                        doPickAView
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1184
                        nil
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1185
                        doSave 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1186
                        doSaveAs 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1187
                        nil 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1188
                        doCompile 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1189
                        nil 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1190
                        doSource 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1191
                        doWindowSpec 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1192
                        inspect
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1193
                        nil 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1194
                        doPrint
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1195
                        nil 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1196
                        doFinish
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1197
                       )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1198
             receiver:self.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1199
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1200
    menu at:#edit 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1201
            putLabels:(resources  array:#(
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1202
                        'undo' 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1203
"/                        'copy' 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1204
                        'cut'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1205
"/                        'paste'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1206
                       ))
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1207
            selectors:#(
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1208
                        undoAction
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1209
"/                        copySelection 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1210
                        deleteSelection
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1211
"/                        pasteBuffer
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1212
                       )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1213
             receiver:workView.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1214
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1215
    menu at:#font 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1216
            putLabels:(resources  array:#(
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1217
                        'larger' 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1218
                        'smaller'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1219
                        '-'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1220
                        'normal'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1221
                        'bold'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1222
                        'italic'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1223
                        'bold italic'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1224
                        '-'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1225
                        'font panel'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1226
                       ) )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1227
            selectors:#(largerFont 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1228
                        smallerFont
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1229
                        nil
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1230
                        normalFont
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1231
                        boldFont
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1232
                        italicFont
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1233
                        boldItalicFont
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1234
                        nil
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1235
                        showFontPanel
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1236
                       )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1237
             receiver:workView.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1238
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1239
    menu at:#type 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1240
            putLabels:(resources  array:#(
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1241
                        'basic widgets' 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1242
                        'layout'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1243
                        'text'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1244
                        'interactors'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1245
                        'modal'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1246
                        'other'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1247
                        '-'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1248
                        'all'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1249
                       ) )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1250
            selectors:#(showBasicWidgets 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1251
                        showLayoutWidgets
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1252
                        showTextWidgets
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1253
                        showInteractorWidgets
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1254
                        showModalWidgets
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1255
                        showOtherWidgets
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1256
                        nil
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1257
                        showAllWidgets
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1258
                       )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1259
             receiver:self.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1260
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1261
    menu at:#align 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1262
            putLabels:(resources  array:#(
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1263
"/                        'raise' 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1264
"/                        'lower'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1265
"/                        '-'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1266
                        'align left' 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1267
                        'align right'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1268
                        'align left & right'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1269
                        'align top' 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1270
                        'align bottom'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1271
                        'align centered vertical'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1272
                        'align centered horizontal'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1273
                        '-'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1274
                        'spread horizontal'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1275
                        'spread vertical'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1276
                        'center horizontal in frame'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1277
                        'center vertical in frame'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1278
                       ) )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1279
            selectors:#(
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1280
"/                        raiseSelection 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1281
"/                        lowerSelection
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1282
"/                        nil
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1283
                        alignSelectionLeft
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1284
                        alignSelectionRight
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1285
                        alignSelectionLeftAndRight
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1286
                        alignSelectionTop
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1287
                        alignSelectionBottom
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1288
                        alignSelectionCenterHor
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1289
                        alignSelectionCenterVer
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1290
                        nil
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1291
                        spreadSelectionHor
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1292
                        spreadSelectionVer
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1293
                        centerSelectionHor
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1294
                        centerSelectionVer
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1295
                       )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1296
             receiver:workView.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1297
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1298
    menu at:#dimension 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1299
            putLabels:(resources  array:#(
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1300
                        'default extent' 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1301
                        'default width' 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1302
                        'default height'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1303
                        '-'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1304
                        'copy extent' 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1305
                        'paste extent'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1306
                        'paste width'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1307
                        'paste height'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1308
                        '-'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1309
                        'insert'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1310
                       ) )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1311
            selectors:#(
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1312
                        setToDefaultExtent
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1313
                        setToDefaultWidth
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1314
                        setToDefaultHeight
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1315
                        nil
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1316
                        copyExtent
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1317
                        pasteExtent
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1318
                        pasteWidth
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1319
                        pasteHeight
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1320
                        nil
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1321
                        insertSelection
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1322
                       )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1323
             receiver:workView.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1324
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1325
    menu at:#form 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1326
            putLabels:(resources  array:#(
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1327
                        'align to grid'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1328
                        'show grid' 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1329
                       ) )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1330
            selectors:#(
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1331
                        alignOn
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1332
                        toggleGrid
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1333
                       )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1334
             receiver:self.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1335
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1336
    menu at:#special 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1337
            putLabels:(resources  array:#(
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1338
                        'group radioButtons' 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1339
                        'group enterFields' 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1340
                       ) )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1341
            selectors:#(
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1342
                        groupRadioButtons 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1343
                        groupEnterFields
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1344
                       )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1345
             receiver:workView.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1346
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1347
    menu at:#code 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1348
            putLabels:(resources  array:#(
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1349
                        'class' 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1350
                        'method' 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1351
"/                        'variables' 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1352
                       ) )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1353
            selectors:#(
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1354
                        changeClass
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1355
                        changeMethod
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1356
"/                        changeVariables
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1357
                       )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1358
             receiver:self.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1359
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1360
    menu at:#debugging 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1361
            putLabels:(resources array:#(
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1362
                        'inspect'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1363
                        'inspect attributes'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1364
                       ) )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1365
            selectors:#(
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1366
                        inspectSelection
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1367
                        inspectAttributes
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1368
                       )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1369
             receiver:workView.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1370
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1371
    menu at:#test 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1372
            putLabels:(resources array:#(
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1373
                        'test on' 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1374
                       ) )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1375
            selectors:#(toggleTest 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1376
                       )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1377
             receiver:self.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1378
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1379
    self setUndoLabel:nil.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1380
!
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1381
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1382
openInterface 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1383
    |list panel topPane botPanel v 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1384
     leftPanel middlePanel rightPanel buttonPanel propSelector|
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1385
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1386
    super initialize.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1387
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1388
    self initChannels.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1389
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1390
    whichProperty := SelectionInList new.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1391
    whichProperty list:#('dimension' 'colors' 'model' 'misc' 'attribute list').
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1392
    whichProperty onChangeSend:#propertySelectionChanged to:self.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1393
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1394
    workView :=self createCanvas.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1395
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1396
    topView := StandardSystemView new.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1397
    topView label:'Interface Builder'.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1398
    topView icon:(Image fromFile:'bitmaps/Builder.xbm' resolution:100).
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1399
    topView extent:(600 @ 400).
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1400
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1401
    menu := PullDownMenu in:topView.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1402
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1403
    buttonPanel := self setupButtonPanelIn:topView below:menu.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1404
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1405
    leftPanel := View in:topView.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1406
    leftPanel origin:(0.0 @ 0.0) corner:0.3@1.0.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1407
    leftPanel topInset:menu height + buttonPanel height + View viewSpacing.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1408
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1409
    middlePanel := View in:topView.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1410
    middlePanel origin:(0.3 @ 0.0) corner:0.6@1.0.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1411
    middlePanel topInset:menu height + buttonPanel height + View viewSpacing.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1412
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1413
    rightPanel := View in:topView.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1414
    rightPanel origin:(0.6 @ 0.0) corner:1.0@1.0.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1415
    rightPanel topInset:menu height + buttonPanel height + View viewSpacing.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1416
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1417
    v := HVScrollableView for:UIPainterView miniScrollerH:true in:middlePanel.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1418
    v origin:(0.0 @ 0.0) corner:(1.0 @ 1.0).
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1419
    treeView := v scrolledView.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1420
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1421
    propSelector := PopUpList label:'properties' in:rightPanel.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1422
    propSelector origin:(0.0 @ 0.0) corner:1.0@(propSelector preferredExtent y).
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1423
    propSelector horizontalInset:View viewSpacing.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1424
    propSelector model:whichProperty.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1425
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1426
    propertyFrame := View in:rightPanel.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1427
    propertyFrame origin:(0.0 @ 0.0) corner:1.0@1.0.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1428
    propertyFrame topInset:propSelector height + View viewSpacing.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1429
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1430
"/    panel := VariableVerticalPanel in:topView.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1431
"/    panel origin:(0.0 @ 0.0) corner:0.5@1.0.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1432
"/    panel topInset:menu height + buttonPanel height + View viewSpacing.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1433
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1434
"/    topPane := View in:panel.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1435
"/    topPane origin:(0.0 @ 0.0) corner:(1.0 @ 0.5).
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1436
"/    topPane borderWidth:0.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1437
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1438
"/    botPanel := VariableHorizontalPanel in:panel.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1439
"/    botPanel origin:(0.0 @ 0.5) corner:(1.0 @ 1.0).
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1440
"/    botPanel borderWidth:0.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1441
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1442
    elementMenu := self createPaletteIn:leftPanel.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1443
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1444
"/    v := ScrollableView for:UIPainterView in:botPanel.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1445
"/    v origin:(0.0 @ 0.0) corner:(0.5 @ 1.0).
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1446
"/    treeView := v scrolledView.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1447
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1448
"/    v := ScrollableView for:SelectionInListView in:botPanel.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1449
"/    v origin:(0.5 @ 0.0) corner:(1.0 @ 1.0).
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1450
"/    outletView := v scrolledView.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1451
"/    outletView action:[:lineNr | self selectOutlet:lineNr].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1452
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1453
"/    v := ScrollableView for:TextCollector in:topPane.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1454
"/    v origin:(0.0 @ 0.0) corner:(1.0 @ 1.0).
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1455
"/    infoView := v scrolledView.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1456
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1457
    treeView builderView:workView.  "link workview with treeview"
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1458
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1459
    workView addDependent:treeView.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1460
    workView addDependent:self.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1461
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1462
    self initPullDownMenu.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1463
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1464
    elementMenu action:[:selection |
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1465
        workView testMode ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1466
            elementMenu deselect
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1467
        ] ifFalse:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1468
            selection notNil ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1469
                workView createWidgetWithClass:
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1470
                        (Smalltalk at:(elementMenu selectionValue asSymbol))
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1471
            ]
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1472
        ]
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1473
    ].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1474
    topView application:self.   
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1475
    builder window:topView.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1476
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1477
    topView beMaster.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1478
    workView topView beSlave.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1479
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1480
    "/ can be created as embedded or side-menu
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1481
    elementMenu topView ~~ topView ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1482
        elementMenu topView beSlave.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1483
    ].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1484
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1485
    topView open.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1486
    workView topView openInGroup:(topView windowGroup).
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1487
    elementMenu topView ~~ topView ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1488
        elementMenu topView openInGroup:(topView windowGroup).
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1489
    ]
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1490
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1491
    "
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1492
     Builder open
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1493
    "
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1494
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1495
    "Modified: 6.9.1995 / 00:26:59 / claus"
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1496
!
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1497
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1498
openNewWindowCanvas
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1499
    self open.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1500
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1501
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1502
!
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1503
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1504
openOnClass:aClass andSelector:aSelector
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1505
    "open up an interface builder, fetching a spec from someClass
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1506
     via some selector"
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1507
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1508
    |specArray|
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1509
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1510
    specClass := aClass.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1511
    specSelector :=  aSelector.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1512
    self openInterface.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1513
    workView className:aClass name.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1514
    workView methodName:aSelector.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1515
    workView setupFromSpec:(aClass perform:aSelector).
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1516
!
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1517
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1518
openOnSpec:aSpecOrSpecArray
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1519
    "open up an interface builder, given some specArray"
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1520
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1521
    |newBuilder|
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1522
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1523
    newBuilder := self new.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1524
!
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1525
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1526
setupButtonPanelIn:aTopView below:aMenu
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1527
    "create the buttonPanel"
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1528
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1529
    |spc mh buttonPanel|
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1530
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1531
    spc := View viewSpacing // 2.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1532
    buttonPanel := HorizontalPanelView in:aTopView.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1533
    buttonPanel level:-1; borderWidth:0.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1534
    buttonPanel horizontalLayout:#leftSpace.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1535
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1536
    self buttonPanelSpec do:[:entry |
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1537
	|sel toCanvas imgFile label b sep autoRepeat|
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1538
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1539
	sel := entry at:1.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1540
	sel isNil ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1541
	    sep := View in:buttonPanel.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1542
	    sep extent:20@1; borderWidth:0.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1543
	] ifFalse:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1544
	    toCanvas := entry at:2.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1545
	    imgFile := entry at:3.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1546
	    label := entry at:4.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1547
	    autoRepeat := entry at:5.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1548
	    b := Button in:buttonPanel.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1549
	    autoRepeat ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1550
		b autoRepeat:autoRepeat.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1551
		b controller beTriggerOnDown.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1552
	    ].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1553
	    imgFile notNil ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1554
		b logo:(Image fromFile:imgFile).
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1555
	    ] ifFalse:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1556
		b logo:label
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1557
	    ].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1558
	    toCanvas ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1559
		b model:workView 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1560
	    ] ifFalse:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1561
		b model:self
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1562
	    ].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1563
	    b changeMessage:sel
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1564
	]
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1565
    ].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1566
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1567
    mh := aMenu height.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1568
    buttonPanel origin:0.0 @ (mh + spc)
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1569
		corner:(1.0 @ (mh + spc + buttonPanel preferredExtent y)).
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1570
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1571
    buttonPanel leftInset:spc; rightInset:spc.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1572
    ^ buttonPanel
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1573
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1574
    "Modified: 5.9.1995 / 22:23:13 / claus"
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1575
! !
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1576
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1577
!UIPainter methodsFor:'misc'!
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1578
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1579
listOfOutletsFor:aViewClass
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1580
    "return a list of outlets for a view-class"
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1581
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1582
    |l1 l2 all rej|
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1583
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1584
    (aViewClass == Object) ifTrue:[^ nil].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1585
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1586
    l1 := self listOfOutletsFor:(aViewClass superclass).
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1587
    l2 := self listOfOutletsForClass:aViewClass.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1588
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1589
    l2 isNil ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1590
	all := l1
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1591
    ] ifFalse:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1592
	l1 isNil ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1593
	    all := l2
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1594
	] ifFalse:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1595
	    all := l1 , l2
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1596
	]
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1597
    ].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1598
    rej := self rejectOutletsForClass:aViewClass.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1599
    rej notNil ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1600
	rej do:[:x |
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1601
	    all := all copyWithout:x
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1602
	]
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1603
    ].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1604
    ^ all
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1605
!
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1606
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1607
listOfOutletsForClass:aViewClass
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1608
    "return a list of outlets for a view-class"
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1609
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1610
    "could this be done automatically ?"
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1611
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1612
    (aViewClass == Label) ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1613
	^ #('label'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1614
	    'iconic-label'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1615
	    'label layout'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1616
	    'fixed size'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1617
	    'foreground-color'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1618
	    'background-color'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1619
	   )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1620
    ].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1621
    (aViewClass == Button) ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1622
	^ #(
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1623
	    'active foreground-color'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1624
	    'active background-color'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1625
	    'active level'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1626
	    'passive level'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1627
	    'press action'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1628
	   )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1629
    ].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1630
    (aViewClass == Toggle) ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1631
	^ #(
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1632
	    'release action'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1633
	   )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1634
    ].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1635
    (aViewClass == CheckBox) ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1636
	^ #(
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1637
	    'label'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1638
	   )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1639
    ].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1640
    (aViewClass == FramedBox) ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1641
	^ #(
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1642
	    'label'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1643
	    'label position'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1644
	    'frame shown'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1645
	   )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1646
    ].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1647
    (aViewClass == VerticalPanelView) ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1648
	^ #(
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1649
	    'horizontal layout'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1650
	    'vertical layout'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1651
	   )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1652
    ].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1653
    (aViewClass == HorizontalPanelView) ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1654
	^ #(
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1655
	    'horizontal layout'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1656
	    'vertical layout'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1657
	   )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1658
    ].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1659
    (aViewClass == VariableVerticalPanel) ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1660
	^ #(
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1661
	    'handle position'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1662
	    'style'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1663
	   )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1664
    ].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1665
    (aViewClass == ListView) ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1666
	^ #(
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1667
	    'contents'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1668
	   )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1669
    ].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1670
    (aViewClass == SelectionInListView) ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1671
	^ #(
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1672
	    'press action'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1673
	   )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1674
    ].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1675
    (aViewClass == EditField) ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1676
	^#(
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1677
	   'initialText'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1678
	   'field type'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1679
	   'field length'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1680
	  )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1681
    ].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1682
    (aViewClass == View) ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1683
	^ #(
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1684
	    'level'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1685
	    'view background-color'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1686
	   )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1687
    ].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1688
    (aViewClass == Scroller) ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1689
	^ #(
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1690
	    'scroll action'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1691
	    'asynchronous'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1692
	    'synchronous'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1693
	   )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1694
    ].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1695
    (aViewClass == ScrollBar) ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1696
	^ #(
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1697
	    'scroll action'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1698
	    'scrollDown action'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1699
	    'scrollUp action'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1700
	    'asynchronous'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1701
	    'synchronous'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1702
	   )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1703
    ].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1704
    (aViewClass == HorizontalScrollBar) ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1705
	^ #(
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1706
	    'scrollLeft action'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1707
	    'scrollRight action'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1708
	   )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1709
    ].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1710
    (aViewClass == PullDownMenu) ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1711
	^ #(
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1712
	    'labels'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1713
	    'actions'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1714
	   )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1715
    ].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1716
    (aViewClass == Separator) ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1717
	^ #(
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1718
	    'orientation'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1719
	   )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1720
    ].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1721
    ^ nil
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1722
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1723
    "Modified: 6.9.1995 / 13:42:09 / claus"
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1724
!
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1725
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1726
rejectOutletsForClass:aViewClass
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1727
    "return a list of suppressed outlets for a view-class"
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1728
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1729
    "could this be done automatically ?"
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1730
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1731
    (aViewClass == CheckToggle) ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1732
	^ #(
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1733
	    'iconic-label'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1734
	   )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1735
    ].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1736
    (aViewClass == CheckBox) ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1737
	^ #(
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1738
	    'horizontal layout'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1739
	    'vertical layout'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1740
	   )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1741
    ].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1742
    (aViewClass == HorizontalScrollBar) ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1743
	^ #(
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1744
	    'scrollUp action'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1745
	    'scrollDown action'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1746
	   )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1747
    ].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1748
    ^ nil
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1749
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1750
    "Modified: 4.9.1995 / 18:55:03 / claus"
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1751
!
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1752
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1753
setupPropertyFromSpec:aSpec
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1754
    "setup menu from spec
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1755
    "
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1756
    outletView := nil.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1757
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1758
    specShown ~= aSpec ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1759
        propertyFrame destroySubViews.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1760
        builder buildFromSpec:aSpec in:propertyFrame.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1761
        propertyFrame realizeAllSubViews.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1762
    ].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1763
    specShown := aSpec
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1764
!
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1765
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1766
showOutletsFor:aView
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1767
    |c outlets|
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1768
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1769
    outletView isNil ifTrue:[^ self].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1770
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1771
    (aView isKindOf:SimpleView) ifFalse:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1772
	outletView list:nil.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1773
	^ self
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1774
    ].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1775
    c := aView class.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1776
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1777
    outlets := self listOfOutletsFor:c.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1778
    outletView list:outlets
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1779
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1780
    "Modified: 5.9.1995 / 21:51:57 / claus"
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1781
! !
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1782
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1783
!UIPainter methodsFor:'private - fetch'!
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1784
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1785
fetchLayoutFrom:aView
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1786
    |layout extent|
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1787
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1788
    layout := aView geometryLayout.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1789
    layout isNil ifTrue:[^ self].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1790
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1791
    layout isLayout ifFalse:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1792
        layout isRectangle ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1793
            leftOffsetHolder   value:(layout left).
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1794
            rightOffsetHolder  value:(layout right).
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1795
            topOffsetHolder    value:(layout top).
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1796
            bottomOffsetHolder value:(layout bottom).
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1797
            ^ self
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1798
        ].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1799
        layout isPoint ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1800
            leftOffsetHolder   value:(layout left).
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1801
            rightOffsetHolder  value:(layout right).
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1802
            ^ self
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1803
        ].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1804
    ].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1805
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1806
    leftOffsetHolder   value:(layout leftOffset).
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1807
    leftFractionHolder value:(layout leftFraction).
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1808
    topFractionHolder  value:(layout topFraction).
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1809
    topOffsetHolder    value:(layout topOffset).
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1810
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1811
    layout isLayoutFrame ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1812
        rightOffsetHolder    value:(layout rightOffset).
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1813
        bottomOffsetHolder   value:(layout bottomOffset).
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1814
        rightFractionHolder  value:(layout rightFraction).
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1815
        bottomFractionHolder value:(layout bottomFraction).
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1816
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1817
        leftAlignmentFractionHolder value:0.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1818
        topAlignmentFractionHolder  value:0.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1819
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1820
    ] ifFalse:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1821
        extent := aView extent.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1822
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1823
        rightOffsetHolder    value:(layout leftOffset + extent x).
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1824
        bottomOffsetHolder   value:(layout topOffset  + extent y).
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1825
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1826
        rightFractionHolder  value:0.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1827
        bottomFractionHolder value:0.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1828
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1829
        layout isAlignmentOrigin ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1830
            leftAlignmentFractionHolder value:(layout leftAlignmentFraction).
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1831
            topAlignmentFractionHolder  value:(layout topAlignmentFraction)
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1832
        ] ifFalse:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1833
            leftAlignmentFractionHolder value:0.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1834
            topAlignmentFractionHolder  value:0
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1835
        ]
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1836
    ].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1837
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1838
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1839
!
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1840
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1841
fetchModelAspectsFrom:aView
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1842
    aspectChannel value:(workView aspectSelectorForView:aView).
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1843
    changeChannel value:(workView changeSelectorForView:aView).
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1844
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1845
! !
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1846
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1847
!UIPainter methodsFor:'setup choices'!
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1848
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1849
showAllWidgets
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1850
    "create list of basic widgets"
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1851
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1852
    self showWidgetsWhere:[:class | true]
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1853
!
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1854
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1855
showBasicWidgets
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1856
    "create list of basic widgets"
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1857
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1858
    self showWidgetsInCategory:'Views-Basic' 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1859
			butNot:[:class | class isKindOf:ModalBox class]
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1860
!
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1861
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1862
showInteractorWidgets
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1863
    "create list of interactor widgets"
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1864
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1865
    self showWidgetsInCategory:'Views-Interactors'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1866
			butNot:[:class | class isKindOf:ModalBox class]
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1867
!
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1868
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1869
showLayoutWidgets
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1870
    "create list of basic widgets"
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1871
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1872
    self showWidgetsInCategory:'Views-Layout'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1873
			butNot:[:class | class isKindOf:ModalBox class]
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1874
!
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1875
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1876
showModalWidgets
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1877
    "create list of modal widgets"
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1878
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1879
    self showWidgetsWhere:[:class | class isKindOf:ModalBox class]
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1880
!
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1881
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1882
showOtherWidgets
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1883
    "create list of other widgets"
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1884
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1885
    |check cat|
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1886
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1887
    check := [:class |
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1888
		(#('Views-Basic' 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1889
		   'Views-Interactors'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1890
		   'Views-Layout'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1891
		   'Views-Text') includes:class category) not].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1892
    self showWidgetsWhere:check
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1893
		   butNot:[:class | class isKindOf:ModalBox class]
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1894
!
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1895
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1896
showTextWidgets
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1897
    "create list of basic widgets"
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1898
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1899
    self showWidgetsInCategory:'Views-Text'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1900
			butNot:[:class | class isKindOf:ModalBox class]
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1901
!
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1902
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1903
showWidgetsInCategory:aCategory
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1904
    "create list of basic widgets"
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1905
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1906
    self showWidgetsWhere:[:class | class category = aCategory]
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1907
!
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1908
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1909
showWidgetsInCategory:aCategory butNot:excludeBlock
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1910
    "create list of basic widgets"
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1911
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1912
    self showWidgetsWhere:[:class | class category = aCategory]
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1913
		   butNot:excludeBlock
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1914
!
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1915
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1916
showWidgetsWhere:aBlock
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1917
    "create list of widgets where aBlock avaluates to true"
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1918
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1919
    self showWidgetsWhere:aBlock butNot:[:class | false]
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1920
!
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1921
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1922
showWidgetsWhere:aBlock butNot:excludeBlock
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1923
    "create list of widgets where aBlock evaluates to true and excludeBlock
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1924
     evaluates to false"
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1925
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1926
    |list|
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1927
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1928
    list := OrderedCollection new:0.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1929
    SimpleView allSubclassesDo:[:aSubclass |
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1930
        (aBlock value:aSubclass) ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1931
            (excludeBlock value:aSubclass) ifFalse:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1932
                list add:(aSubclass name)
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1933
            ]
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1934
        ]
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1935
    ].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1936
    (aBlock value:View) ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1937
        (excludeBlock value:View) ifFalse:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1938
            list add:'View'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1939
        ]
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1940
    ].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1941
    (list size == 0) ifFalse:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1942
        list sort
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1943
    ].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1944
    elementMenu list:list
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1945
! !
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1946
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1947
!UIPainter methodsFor:'user actions - dimension'!
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1948
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1949
setAlignmentOrigin
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1950
    "apply is pressed in the geometry-sub view, with a alignmentOrigin selected
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1951
    "
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1952
    self setupPropertyFromSpec:(self class geometrySpecForAlignmentOrigin)
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1953
!
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1954
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1955
setDimensionForAlignmentOrigin
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1956
    |view layout|
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1957
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1958
    view := workView singleSelection.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1959
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1960
    view notNil ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1961
        layout := AlignmentOrigin new.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1962
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1963
        layout   leftOffset:(leftOffsetHolder   value) ? 0.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1964
        layout    topOffset:(topOffsetHolder    value) ? 0.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1965
        layout leftFraction:(leftFractionHolder value) ? 0.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1966
        layout  topFraction:(topFractionHolder  value) ? 0.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1967
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1968
        layout leftAlignmentFraction:(leftAlignmentFractionHolder value) ? 0.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1969
        layout  topAlignmentFraction:(topAlignmentFractionHolder  value) ? 0.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1970
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1971
        workView setDimension:layout.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1972
    ]
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1973
!
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1974
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1975
setDimensionForLayoutFrame
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1976
    |view layout|
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1977
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1978
    view := workView singleSelection.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1979
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1980
    view notNil ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1981
        layout := LayoutFrame new.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1982
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1983
        layout leftOffset:(leftOffsetHolder value) ? 0.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1984
        layout rightOffset:(rightOffsetHolder value) ? 0.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1985
        layout topOffset:(topOffsetHolder value) ? 0.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1986
        layout bottomOffset:(bottomOffsetHolder value) ? 0.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1987
        layout leftFraction:(leftFractionHolder value) ? 0.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1988
        layout rightFraction:(rightFractionHolder value) ? 0.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1989
        layout topFraction:(topFractionHolder value) ? 0.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1990
        layout bottomFraction:(bottomFractionHolder value) ? 0.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1991
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1992
        workView setDimension:layout.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1993
    ]
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1994
!
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1995
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1996
setDimensionForLayoutOrigin
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1997
    |view layout|
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1998
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  1999
    view := workView singleSelection.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2000
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2001
    view notNil ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2002
        layout := LayoutOrigin new.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2003
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2004
        layout leftOffset:(leftOffsetHolder value) ? 0.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2005
        layout topOffset:(topOffsetHolder value) ? 0.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2006
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2007
        layout leftFraction:(leftFractionHolder value) ? 0.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2008
        layout topFraction:(topFractionHolder value) ? 0.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2009
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2010
        workView setDimension:layout.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2011
    ]
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2012
!
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2013
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2014
setLayoutFrame
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2015
    "apply is pressed in the geometry-sub view, with a layoutFrame selected
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2016
    "
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2017
    self setupPropertyFromSpec:(self class geometrySpecForLayoutFrame)
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2018
!
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2019
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2020
setLayoutOrigin
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2021
    "apply is pressed in the geometry-sub view, with a layoutOrigin selected
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2022
    "
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2023
    self setupPropertyFromSpec:(self class geometrySpecForLayoutOrigin)
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2024
! !
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2025
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2026
!UIPainter methodsFor:'user actions - form'!
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2027
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2028
alignOff
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2029
    |m|
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2030
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2031
    m := menu menuAt:#form.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2032
    m labelAt:#alignOff put:(resources string:'align to grid').
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2033
    m selectorAt:#alignOff put:#alignOn.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2034
    workView alignOff
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2035
!
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2036
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2037
alignOn
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2038
    |m|
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2039
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2040
    m := menu menuAt:#form.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2041
    m labelAt:#alignOn put:(resources string:'do not align to grid').
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2042
    m selectorAt:#alignOn put:#alignOff.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2043
    workView alignOn
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2044
!
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2045
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2046
toggleGrid
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2047
    |m|
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2048
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2049
    m := menu menuAt:#form.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2050
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2051
    workView gridShown ifFalse:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2052
        m labelAt:#toggleGrid put:(resources string:'hide grid').
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2053
        workView showGrid
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2054
    ] ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2055
        m labelAt:#toggleGrid put:(resources string:'show grid').
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2056
        workView hideGrid
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2057
    ]
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2058
! !
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2059
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2060
!UIPainter methodsFor:'user interaction'!
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2061
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2062
closeRequest
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2063
    workView  notNil ifTrue:[workView  release].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2064
    fileBox   notNil ifTrue:[fileBox   destroy].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2065
    stringBox notNil ifTrue:[stringBox destroy].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2066
    actionBox notNil ifTrue:[actionBox destroy].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2067
    listBox   notNil ifTrue:[listBox   destroy].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2068
    super closeRequest
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2069
!
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2070
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2071
doCompile
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2072
   |code|
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2073
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2074
   code := workView generateCode.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2075
   (ReadStream on:code) fileIn.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2076
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2077
    "Modified: 4.9.1995 / 17:06:10 / claus"
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2078
!
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2079
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2080
doFinish
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2081
    self closeRequest
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2082
!
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2083
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2084
doFromClass
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2085
        |className methodName cls sel accepted failed spec s|
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2086
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2087
        className := '' asValue.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2088
        methodName := '' asValue.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2089
        (s := workView className) notNil ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2090
            className value:s
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2091
        ].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2092
        (s := workView methodName) notNil ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2093
            methodName value:s
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2094
        ].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2095
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2096
        failed := false.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2097
        [
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2098
            accepted :=
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2099
                (DialogBox new
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2100
                    addTextLabel:'Classes name:';
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2101
                    addInputFieldOn:className; 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2102
                    addVerticalSpace;
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2103
                    addTextLabel:'methods name:';
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2104
                    addInputFieldOn:methodName; 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2105
                    addAbortButton; 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2106
                    addOkButton; 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2107
                    open
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2108
                ) accepted.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2109
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2110
             accepted ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2111
                cls := Smalltalk classNamed:className value.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2112
                cls isNil ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2113
                    failed := true.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2114
                    self warn:'no such class'.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2115
                ] ifFalse:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2116
                    sel := methodName value asSymbol.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2117
                    (cls respondsTo:sel ) ifFalse:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2118
                        failed := true.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2119
                        self warn:'no such method'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2120
                    ] ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2121
                        spec := cls perform:sel.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2122
                        spec isArray ifFalse:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2123
                            failed := true.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2124
                            self warn:'not a windowSpec method'    
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2125
                        ].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2126
                        "/ ok, got it
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2127
                        workView className:className value.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2128
                        workView methodName:methodName value.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2129
                        workView setupFromSpec:spec.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2130
                        ^ self
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2131
                     ]
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2132
                ]
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2133
             ]
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2134
        ] doWhile:[accepted and:[failed]].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2135
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2136
    "Modified: 5.9.1995 / 18:47:57 / claus"
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2137
!
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2138
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2139
doNew
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2140
    workView removeAll.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2141
    ^ self
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2142
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2143
    "Modified: 5.9.1995 / 20:52:21 / claus"
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2144
!
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2145
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2146
doOpen
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2147
    fileBox isNil ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2148
	fileBox := FileSelectionBox
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2149
			title:''
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2150
			"pattern:'*.sib'"
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2151
			okText:''
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2152
			abortText:(Resource name:'BUILDER_ABORT_LABEL'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2153
					fromFile:'Builder.rs')
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2154
			action:[nil]
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2155
    ].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2156
    fileBox title:(Resource name:'BUILDER_OPEN_TITLE' fromFile:'Builder.rs').
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2157
    fileBox action:[:fileName | self openFile:fileName].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2158
    fileBox okText:(Resource name:'BUILDER_OPEN_OK_LABEL' fromFile:'Builder.rs').
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2159
    fileBox showAtPointer
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2160
!
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2161
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2162
doPickAView
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2163
    |view className methodName cls sel accepted spec s|
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2164
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2165
    view := Display viewFromUser.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2166
    view isNil ifTrue:[^ self].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2167
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2168
    spec := UISpecification fromView:view topView.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2169
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2170
    "/ ok, got it
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2171
    workView setupFromSpec:spec.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2172
    workView className:view class name.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2173
    workView methodName:#newSpec.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2174
    ^ self
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2175
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2176
    "Modified: 5.9.1995 / 23:25:53 / claus"
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2177
!
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2178
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2179
doPrint
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2180
    ^ self
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2181
!
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2182
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2183
doSave
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2184
    currentFileName notNil ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2185
	self saveAs:currentFileName
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2186
    ] ifFalse:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2187
	self doSaveAs
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2188
    ]
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2189
!
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2190
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2191
doSaveAs
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2192
    fileBox isNil ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2193
	fileBox := FileSelectionBox
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2194
			title:''
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2195
			"pattern:'*.draw'"
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2196
			okText:''
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2197
			abortText:(Resource name:'BUILDER_ABORT_LABEL'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2198
					fromFile:'Builder.rs')
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2199
			action:[nil]
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2200
    ].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2201
    fileBox title:(Resource name:'BUILDER_SAVE_TITLE' fromFile:'Builder.rs').
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2202
    fileBox action:[:fileName | self saveAs:fileName].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2203
    fileBox okText:(Resource name:'BUILDER_SAVE_OK_LABEL' fromFile:'Builder.rs').
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2204
    fileBox showAtPointer
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2205
!
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2206
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2207
doSource
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2208
   |code v|
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2209
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2210
   code := workView generateCode.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2211
   v := CodeView open.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2212
   v contents:code.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2213
   v label:(workView applicationName).
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2214
    ^ self
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2215
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2216
    "Modified: 5.9.1995 / 21:02:05 / claus"
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2217
!
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2218
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2219
doWindowSpec
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2220
   |code v|
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2221
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2222
   code := workView generateWindowSpec.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2223
   v := CodeView open.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2224
   v contents:code.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2225
   v label:'windowSpec'.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2226
    ^ self
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2227
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2228
    "Modified: 5.9.1995 / 21:04:14 / claus"
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2229
!
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2230
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2231
propertySelectionChanged
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2232
    workView singleSelectionDo:[:selectedView |
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2233
        propertyShown   := whichProperty selection.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2234
        self showPropertyView
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2235
    ]
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2236
!
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2237
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2238
selectOutlet:nr
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2239
    |outlet type sel text box action initialText initialList
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2240
     view prop t val|
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2241
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2242
    outlet := outletView selectionValue.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2243
    outletView deselect.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2244
    view := workView selection.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2245
    view isNil ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2246
        self notify:'select something first'.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2247
        ^ self
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2248
    ].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2249
    action := [:s | self setOutlet:sel type:type to:s in:view].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2250
    (outlet = 'label') ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2251
        type := #string.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2252
        sel := #label:.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2253
        text := 'label-text:'.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2254
        initialText := view label
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2255
    ].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2256
    (outlet = 'fixed size') ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2257
        type := #boolean.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2258
        sel := #sizeFixed:.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2259
        text := 'size is fix:'.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2260
    ].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2261
    (outlet = 'frame shown') ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2262
        type := #boolean.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2263
        sel := #showFrame:.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2264
        text := 'frame is to be drawn:'.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2265
    ].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2266
    (outlet = 'labels') ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2267
        type := #strings.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2268
        sel := #labels:.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2269
        initialText := view labels
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2270
    ].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2271
    (outlet = 'contents') ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2272
        type := #text.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2273
        sel := #contents:.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2274
        initialText := view contents
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2275
    ].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2276
    (outlet = 'initialText') ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2277
        type := #string.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2278
        sel := #initialText:.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2279
        initialText := view contents
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2280
    ].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2281
    (outlet = 'field type') ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2282
        type := #fieldTypeSymbol.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2283
        sel := #type:.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2284
        initialList := #(number    
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2285
                         string
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2286
                         password
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2287
                        ).
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2288
        initialText := view converter isNil ifTrue:[#string] ifFalse:[view converter type].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2289
    ].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2290
    (outlet = 'field length') ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2291
        type := #numberOrNil.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2292
        sel := #maxChars:.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2293
        text := 'field length (empty -> unlimited)'.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2294
        initialText := view maxChars isNil ifTrue:[''] ifFalse:[view maxChars printString].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2295
    ].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2296
    (outlet = 'level') ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2297
        type := #number.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2298
        sel := #level:.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2299
        initialText := view level printString
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2300
    ].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2301
    (outlet = 'active level') ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2302
        type := #number.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2303
        sel := #onLevel:.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2304
        initialText := view onLevel printString
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2305
    ].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2306
    (outlet = 'passive level') ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2307
        type := #number.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2308
        sel := #offLevel:.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2309
        initialText := view offLevel printString
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2310
    ].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2311
    (outlet = 'iconic-label') ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2312
        type := #form.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2313
        sel := #label:.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2314
        text := 'label-icon:'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2315
    ].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2316
    (outlet = 'view background-color') ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2317
        type := #color.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2318
        sel := #viewBackground:.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2319
        text := 'view background color'.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2320
        initialText := 'Black'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2321
    ].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2322
    (outlet = 'foreground-color') ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2323
        type := #color.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2324
        sel := #foregroundColor:.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2325
        text := 'foreground color'.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2326
        initialText := 'Black'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2327
    ].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2328
    (outlet = 'background-color') ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2329
        type := #color.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2330
        sel := #backgroundColor:.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2331
        text := 'background color'.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2332
        initialText := 'Grey'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2333
    ].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2334
    (outlet = 'active foreground-color') ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2335
        type := #color.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2336
        sel := #activeForegroundColor:.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2337
        text := 'active foreground color'.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2338
        initialText := 'Yellow'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2339
    ].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2340
    (outlet = 'active background-color') ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2341
        type := #color.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2342
        sel := #activeBackgroundColor:.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2343
        text := 'active background color'.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2344
        initialText := 'Grey'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2345
    ].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2346
    (outlet = 'scroll action') ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2347
        type := #block.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2348
        sel := #scrollAction:.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2349
        text := 'action block when scrolled'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2350
    ].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2351
    (outlet = 'scrollUp action') ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2352
        type := #block.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2353
        sel := #scrollUpAction:.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2354
        text := 'action block when scrolled up'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2355
    ].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2356
    (outlet = 'scrollDown action') ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2357
        type := #block.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2358
        sel := #scrollDownAction:.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2359
        text := 'action block when scrolled down'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2360
    ].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2361
    (outlet = 'scrollLeft action') ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2362
        type := #block.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2363
        sel := #scrollLeftAction:.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2364
        text := 'action block when scrolled left'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2365
    ].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2366
    (outlet = 'scrollRight action') ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2367
        type := #block.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2368
        sel := #scrollRightAction:.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2369
        text := 'action block when scrolled right'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2370
    ].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2371
    (outlet = 'press action') ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2372
        type := #block.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2373
        sel := #pressAction:.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2374
        text := 'action block when pressed'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2375
    ].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2376
    (outlet = 'release action') ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2377
        type := #block.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2378
        sel := #releaseAction:.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2379
        text := 'action block when released'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2380
    ].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2381
    (outlet = 'style') ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2382
        type := #symbol.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2383
        sel := #style:.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2384
        initialList := #(motif next)
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2385
    ].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2386
    (outlet = 'handle position') ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2387
        type := #symbol.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2388
        sel := #handlePosition:.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2389
        initialList := #(left center right)
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2390
    ].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2391
    (outlet = 'horizontal layout') ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2392
        type := #symbol.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2393
        sel := #horizontalLayout:.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2394
        text := 'horizontal components layout'.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2395
        initialList := #(left
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2396
                         leftSpace
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2397
                         leftMax
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2398
                         leftSpaceMax
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2399
                         center 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2400
                         centerMax 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2401
                         right 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2402
                         rightSpace 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2403
                         rightMax 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2404
                         rightSpaceMax 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2405
                         spread 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2406
                         spreadSpace 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2407
                         spreadMax 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2408
                         spreadSpaceMax 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2409
                         fit
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2410
                         fitSpace).
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2411
        initialText := view horizontalLayout printString
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2412
    ].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2413
    (outlet = 'vertical layout') ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2414
        type := #symbol.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2415
        sel := #verticalLayout:.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2416
        text := 'vertical components layout'.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2417
        initialList := #(top    
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2418
                         topSpace
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2419
                         center 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2420
                         bottom 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2421
                         bottomSpace 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2422
                         spread 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2423
                         spreadSpace 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2424
                         fit
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2425
                         fitSpace).
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2426
        initialText := view verticalLayout printString
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2427
    ].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2428
    (outlet = 'label position') ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2429
        type := #symbol.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2430
        sel := #labelPosition:.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2431
        initialList := #(topLeft topCenter topRight bottomLeft bottomCenter bottomRight).
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2432
        initialText := view labelPosition printString
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2433
    ].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2434
    (outlet = 'label layout') ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2435
        type := #symbol.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2436
        sel := #adjust:.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2437
        initialList := #( left right center centerLeft centerRight fit ).
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2438
        initialText := view adjust printString
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2439
    ].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2440
    (outlet = 'orientation') ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2441
        type := #symbol.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2442
        sel := #orientation:.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2443
        initialList := #( horizontal vertical ).
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2444
        initialText := view orientation printString
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2445
    ].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2446
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2447
    (type == #color) ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2448
        initialList := #('Black'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2449
                         'White'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2450
                         'LightGrey'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2451
                         'Grey'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2452
                         'DarkGrey'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2453
                         'Yellow'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2454
                         'Red'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2455
                         'Green'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2456
                         'Blue'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2457
                        )
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2458
    ].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2459
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2460
    text isNil ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2461
        text := outlet
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2462
    ].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2463
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2464
    "what type of box do we need"
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2465
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2466
    t := type.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2467
    ((type == #color) or:[type == #symbol or:[type == #fieldTypeSymbol]]) ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2468
        t := #list
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2469
    ].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2470
    ((type == #number) or:[type == #numberOrNil]) ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2471
        t := #string
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2472
    ].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2473
    (type == #strings) ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2474
        t := #text
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2475
    ].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2476
    (type == #block) ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2477
        t := #text.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2478
        initialText := workView outletValueOf:sel for:view.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2479
        initialText isNil ifTrue:[initialText := '[statements]']
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2480
    ].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2481
    (type == #block1) ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2482
        t := #text.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2483
        type := #block.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2484
        initialText := workView outletValueOf:sel for:view.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2485
        initialText isNil ifTrue:[initialText := '[:argument | statements ]']
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2486
    ].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2487
    (type == #block2) ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2488
        t := #text.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2489
        type := #block.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2490
        initialText := workView outletValueOf:sel for:view.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2491
        initialText isNil ifTrue:[initialText := '[:arg1 :arg2 | statements ]']
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2492
    ].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2493
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2494
    "show a box to enter thing"
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2495
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2496
    (t == #boolean) ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2497
        val := Dialog confirmWithCancel:text.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2498
        (val == true or:[val == false]) ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2499
            action value:val
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2500
        ].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2501
        ^ self
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2502
    ].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2503
    (t == #string) ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2504
"/        stringBox isNil ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2505
            stringBox := EnterBox new.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2506
"/        ].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2507
        box := stringBox
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2508
    ].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2509
    (t == #list) ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2510
"/        listBox isNil ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2511
            listBox := ListSelectionBox new.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2512
"/        ].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2513
        listBox list:initialList.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2514
        box := listBox
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2515
    ].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2516
    (t == #text) ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2517
"/        actionBox isNil ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2518
            actionBox := TextBox new.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2519
"/        ].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2520
        actionBox initialText:initialText.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2521
        box := actionBox
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2522
    ].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2523
"
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2524
Transcript show:'outlet: '. Transcript showCR:outlet.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2525
Transcript show:'type:   '. Transcript showCR:type.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2526
Transcript show:'sel:    '. Transcript showCR:sel.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2527
Transcript show:'text:   '. Transcript showCR:text.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2528
"
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2529
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2530
    box isNil ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2531
        self notify:'not yet implemented'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2532
    ] ifFalse:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2533
        box initialText:initialText.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2534
        box title:text.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2535
        box action:action.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2536
        box showAtPointer
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2537
    ]
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2538
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2539
    "Modified: 6.9.1995 / 13:46:29 / claus"
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2540
!
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2541
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2542
setColors
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2543
    |fg bg|
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2544
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2545
    fg := fgChannel value.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2546
    (fg notNil and:[fg notEmpty]) ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2547
        fg := Color readFrom:fg.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2548
        workView singleSelectionDo:[:selectedView |
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2549
            selectedView ~~ workView ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2550
                selectedView foregroundColor:fg
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2551
            ].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2552
        ].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2553
    ].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2554
    bg := bgChannel value.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2555
    (bg notNil and:[bg notEmpty]) ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2556
        bg := Color readFrom:bg.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2557
        workView singleSelectionDo:[:selectedView |
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2558
            selectedView ~~ workView ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2559
                selectedView backgroundColor:bg
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2560
            ].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2561
        ].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2562
    ].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2563
!
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2564
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2565
setMiscAspects
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2566
    "sent when apply is pressen in the misc-sub view"
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2567
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2568
    workView singleSelectionDo:[:selectedView |
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2569
        selectedView ~~ workView ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2570
            workView changeVariableNameOf:selectedView to:nameChannel value
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2571
        ]
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2572
    ].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2573
!
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2574
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2575
setModelAspects
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2576
    "sent when apply is pressen in the model-sub view"
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2577
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2578
    |aspectSymbol|
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2579
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2580
    aspectSymbol := aspectChannel value.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2581
    (aspectSymbol notNil and:[aspectSymbol notEmpty]) ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2582
        aspectSymbol := aspectSymbol asSymbol.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2583
        workView singleSelectionDo:[:selectedView |
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2584
            selectedView ~~ workView ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2585
                workView setAspectSelector:aspectSymbol forView:selectedView
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2586
            ].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2587
        ].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2588
    ].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2589
!
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2590
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2591
setOutlet:outletSymbol type:type to:outletValue in:aView
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2592
    |block val messageSymbol|
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2593
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2594
    messageSymbol := outletSymbol.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2595
    val := outletValue.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2596
    (type == #block) ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2597
	block := Compiler evaluate:val.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2598
	(block == #Error) ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2599
	    self warn:'action will not work in test-mode'.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2600
	    workView addOutletDefinitionFor:outletSymbol
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2601
				       type:type
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2602
				      value:outletValue
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2603
					for:aView.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2604
	    ^ self
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2605
	].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2606
	val := block
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2607
    ].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2608
    (type == #number) ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2609
	val := Number readFromString:outletValue onError:0 
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2610
    ].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2611
    (type == #numberOrNil) ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2612
	val := Number readFromString:outletValue onError:nil
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2613
    ].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2614
    (type == #text) ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2615
	val := outletValue asString
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2616
    ].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2617
    (type == #strings) ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2618
	val := outletValue asText
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2619
    ].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2620
    (type == #symbol) ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2621
	val := outletValue asSymbol.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2622
    ].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2623
    (type == #fieldTypeSymbol) ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2624
	val := outletValue asSymbol.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2625
	val == #password ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2626
	    aView passwordCharacter:$*
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2627
	] ifFalse:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2628
	    aView passwordCharacter:nil
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2629
	].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2630
	val := (PrintConverter new initFor:val).
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2631
	messageSymbol := #converter:
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2632
    ].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2633
    (type == #color) ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2634
	val := Color name:outletValue.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2635
	val isNil ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2636
	    self warn:('no such color:' , outletValue).
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2637
	    ^ self
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2638
	]
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2639
    ].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2640
Transcript show:(val printString).
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2641
Transcript showCR:('(' , val class printString , ')').
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2642
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2643
    workView selectionHiddenDo:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2644
	aView perform:messageSymbol with:val.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2645
	workView elementChanged:aView.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2646
	aView redraw.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2647
    ].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2648
    workView addOutletDefinitionFor:outletSymbol
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2649
			       type:type
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2650
			      value:outletValue
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2651
				for:aView
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2652
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2653
    "Modified: 6.9.1995 / 13:44:46 / claus"
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2654
!
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2655
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2656
showPropertyView
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2657
    |v l spec|
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2658
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2659
    workView singleSelectionDo:[:selectedView |
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2660
        propertyShown = 'dimension' ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2661
            (l := selectedView geometryLayout) notNil ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2662
                l isLayout ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2663
                    l isAlignmentOrigin ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2664
                        spec := self class geometrySpecForAlignmentOrigin
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2665
                    ] ifFalse:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2666
                        l isLayoutFrame ifFalse:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2667
                            spec := self class geometrySpecForLayoutOrigin
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2668
                        ]
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2669
                    ]
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2670
                ]
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2671
            ].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2672
            spec isNil ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2673
                spec := self class geometrySpecForLayoutFrame
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2674
            ].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2675
            ^ self setupPropertyFromSpec:spec
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2676
        ].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2677
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2678
        propertyShown = 'colors' ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2679
            ^ self setupPropertyFromSpec:(self class colorSpec)
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2680
        ].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2681
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2682
        propertyShown = 'model' ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2683
            ^ self setupPropertyFromSpec:(self class modelSpec)
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2684
        ].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2685
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2686
        propertyShown = 'misc' ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2687
            ^ self setupPropertyFromSpec:(self class miscSpec)
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2688
        ].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2689
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2690
        propertyShown = 'attribute list' ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2691
            specShown ~~ #attributeList ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2692
                propertyFrame destroySubViews.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2693
                v := ScrollableView for:SelectionInListView in:propertyFrame.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2694
                v origin:(0.0 @ 0.0) corner:(1.0 @ 1.0).
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2695
                outletView := v scrolledView.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2696
                outletView action:[:lineNr | lineNr notNil ifTrue:[self selectOutlet:lineNr]].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2697
                propertyFrame realizeAllSubViews.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2698
                specShown := #attributeList.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2699
            ].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2700
            self showOutletsFor:(workView selection).
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2701
            ^ self
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2702
        ].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2703
    ].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2704
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2705
    propertyFrame destroySubViews.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2706
    outletView := nil.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2707
    specShown := nil.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2708
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2709
!
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2710
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2711
toggleTest
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2712
    |m t|
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2713
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2714
    m := menu menuAt:#test.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2715
    t := workView testMode not.
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2716
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2717
    t ifTrue:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2718
        m labelAt:#toggleTest put:(resources string:'test off')
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2719
    ] ifFalse:[
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2720
        m labelAt:#toggleTest put:(resources string:'test on')
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2721
    ].
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2722
    workView testMode:t
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2723
! !
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2724
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2725
!UIPainter class methodsFor:'documentation'!
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2726
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2727
version
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2728
    ^ '$Header$'
877a25e8f5aa intitial checkin
ca
parents:
diff changeset
  2729
! !