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