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