DataSetBuilder.st
author Claus Gittinger <cg@exept.de>
Wed, 15 Oct 1997 17:57:40 +0200
changeset 336 e0920419a12b
parent 333 a2e23dea36bf
child 338 ea36cf31c084
permissions -rw-r--r--
*** empty log message ***
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
332
b895330fc7aa intitial checkin
ca
parents:
diff changeset
     1
"
b895330fc7aa intitial checkin
ca
parents:
diff changeset
     2
 COPYRIGHT (c) 1997 by eXept Software AG / Claus Gittinger
b895330fc7aa intitial checkin
ca
parents:
diff changeset
     3
              All Rights Reserved
b895330fc7aa intitial checkin
ca
parents:
diff changeset
     4
b895330fc7aa intitial checkin
ca
parents:
diff changeset
     5
 This software is furnished under a license and may be used
b895330fc7aa intitial checkin
ca
parents:
diff changeset
     6
 only in accordance with the terms of that license and with the
b895330fc7aa intitial checkin
ca
parents:
diff changeset
     7
 inclusion of the above copyright notice.   This software may not
b895330fc7aa intitial checkin
ca
parents:
diff changeset
     8
 be provided or otherwise made available to, or used by, any
b895330fc7aa intitial checkin
ca
parents:
diff changeset
     9
 other person.  No title to or ownership of the software is
b895330fc7aa intitial checkin
ca
parents:
diff changeset
    10
 hereby transferred.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
    11
"
b895330fc7aa intitial checkin
ca
parents:
diff changeset
    12
b895330fc7aa intitial checkin
ca
parents:
diff changeset
    13
b895330fc7aa intitial checkin
ca
parents:
diff changeset
    14
b895330fc7aa intitial checkin
ca
parents:
diff changeset
    15
b895330fc7aa intitial checkin
ca
parents:
diff changeset
    16
b895330fc7aa intitial checkin
ca
parents:
diff changeset
    17
ApplicationModel subclass:#DataSetBuilder
b895330fc7aa intitial checkin
ca
parents:
diff changeset
    18
	instanceVariableNames:'className superclassName hasChanged columnView columns
b895330fc7aa intitial checkin
ca
parents:
diff changeset
    19
		selectedColumnIndex tabSelectionIndex aspects isModified'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
    20
	classVariableNames:'Number'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
    21
	poolDictionaries:''
b895330fc7aa intitial checkin
ca
parents:
diff changeset
    22
	category:'Interface-UIPainter'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
    23
!
b895330fc7aa intitial checkin
ca
parents:
diff changeset
    24
b895330fc7aa intitial checkin
ca
parents:
diff changeset
    25
!DataSetBuilder class methodsFor:'documentation'!
b895330fc7aa intitial checkin
ca
parents:
diff changeset
    26
b895330fc7aa intitial checkin
ca
parents:
diff changeset
    27
copyright
b895330fc7aa intitial checkin
ca
parents:
diff changeset
    28
"
b895330fc7aa intitial checkin
ca
parents:
diff changeset
    29
 COPYRIGHT (c) 1997 by eXept Software AG / Claus Gittinger
b895330fc7aa intitial checkin
ca
parents:
diff changeset
    30
              All Rights Reserved
b895330fc7aa intitial checkin
ca
parents:
diff changeset
    31
b895330fc7aa intitial checkin
ca
parents:
diff changeset
    32
 This software is furnished under a license and may be used
b895330fc7aa intitial checkin
ca
parents:
diff changeset
    33
 only in accordance with the terms of that license and with the
b895330fc7aa intitial checkin
ca
parents:
diff changeset
    34
 inclusion of the above copyright notice.   This software may not
b895330fc7aa intitial checkin
ca
parents:
diff changeset
    35
 be provided or otherwise made available to, or used by, any
b895330fc7aa intitial checkin
ca
parents:
diff changeset
    36
 other person.  No title to or ownership of the software is
b895330fc7aa intitial checkin
ca
parents:
diff changeset
    37
 hereby transferred.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
    38
"
b895330fc7aa intitial checkin
ca
parents:
diff changeset
    39
b895330fc7aa intitial checkin
ca
parents:
diff changeset
    40
b895330fc7aa intitial checkin
ca
parents:
diff changeset
    41
b895330fc7aa intitial checkin
ca
parents:
diff changeset
    42
b895330fc7aa intitial checkin
ca
parents:
diff changeset
    43
!
b895330fc7aa intitial checkin
ca
parents:
diff changeset
    44
b895330fc7aa intitial checkin
ca
parents:
diff changeset
    45
documentation
b895330fc7aa intitial checkin
ca
parents:
diff changeset
    46
"
b895330fc7aa intitial checkin
ca
parents:
diff changeset
    47
    create and modify or inspect dataset columns; used by UIPainter (DataSetColumnSpec)
b895330fc7aa intitial checkin
ca
parents:
diff changeset
    48
b895330fc7aa intitial checkin
ca
parents:
diff changeset
    49
    [see also:]
b895330fc7aa intitial checkin
ca
parents:
diff changeset
    50
        DataSetColumnSpec
b895330fc7aa intitial checkin
ca
parents:
diff changeset
    51
        DataSetSpec
b895330fc7aa intitial checkin
ca
parents:
diff changeset
    52
        DataSetView
b895330fc7aa intitial checkin
ca
parents:
diff changeset
    53
        DataSetColumn
b895330fc7aa intitial checkin
ca
parents:
diff changeset
    54
b895330fc7aa intitial checkin
ca
parents:
diff changeset
    55
    [author:]
b895330fc7aa intitial checkin
ca
parents:
diff changeset
    56
        Claus Atzkern
b895330fc7aa intitial checkin
ca
parents:
diff changeset
    57
"
b895330fc7aa intitial checkin
ca
parents:
diff changeset
    58
b895330fc7aa intitial checkin
ca
parents:
diff changeset
    59
! !
b895330fc7aa intitial checkin
ca
parents:
diff changeset
    60
b895330fc7aa intitial checkin
ca
parents:
diff changeset
    61
!DataSetBuilder class methodsFor:'columns specs'!
b895330fc7aa intitial checkin
ca
parents:
diff changeset
    62
b895330fc7aa intitial checkin
ca
parents:
diff changeset
    63
basicsEditSpec
b895330fc7aa intitial checkin
ca
parents:
diff changeset
    64
    "this window spec was automatically generated by the ST/X UIPainter"
b895330fc7aa intitial checkin
ca
parents:
diff changeset
    65
b895330fc7aa intitial checkin
ca
parents:
diff changeset
    66
    "do not manually edit this - the painter/builder may not be able to
b895330fc7aa intitial checkin
ca
parents:
diff changeset
    67
     handle the specification if its corrupted."
b895330fc7aa intitial checkin
ca
parents:
diff changeset
    68
b895330fc7aa intitial checkin
ca
parents:
diff changeset
    69
    "
b895330fc7aa intitial checkin
ca
parents:
diff changeset
    70
     UIPainter new openOnClass:DataSetBuilder andSelector:#basicsEditSpec
b895330fc7aa intitial checkin
ca
parents:
diff changeset
    71
     DataSetBuilder new openInterface:#basicsEditSpec
b895330fc7aa intitial checkin
ca
parents:
diff changeset
    72
    "
b895330fc7aa intitial checkin
ca
parents:
diff changeset
    73
b895330fc7aa intitial checkin
ca
parents:
diff changeset
    74
    <resource: #canvas>
b895330fc7aa intitial checkin
ca
parents:
diff changeset
    75
b895330fc7aa intitial checkin
ca
parents:
diff changeset
    76
    ^
b895330fc7aa intitial checkin
ca
parents:
diff changeset
    77
     
b895330fc7aa intitial checkin
ca
parents:
diff changeset
    78
       #(#FullSpec
b895330fc7aa intitial checkin
ca
parents:
diff changeset
    79
          #'window:' 
b895330fc7aa intitial checkin
ca
parents:
diff changeset
    80
           #(#WindowSpec
b895330fc7aa intitial checkin
ca
parents:
diff changeset
    81
              #'name:' 'DataSet Basic'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
    82
              #'layout:' #(#LayoutFrame 197 0 172 0 485 0 427 0)
b895330fc7aa intitial checkin
ca
parents:
diff changeset
    83
              #'label:' 'DataSet Basic'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
    84
              #'min:' #(#Point 10 10)
b895330fc7aa intitial checkin
ca
parents:
diff changeset
    85
              #'max:' #(#Point 1280 1024)
b895330fc7aa intitial checkin
ca
parents:
diff changeset
    86
              #'bounds:' #(#Rectangle 197 172 486 428)
b895330fc7aa intitial checkin
ca
parents:
diff changeset
    87
          )
b895330fc7aa intitial checkin
ca
parents:
diff changeset
    88
          #'component:' 
b895330fc7aa intitial checkin
ca
parents:
diff changeset
    89
           #(#SpecCollection
b895330fc7aa intitial checkin
ca
parents:
diff changeset
    90
              #'collection:' 
b895330fc7aa intitial checkin
ca
parents:
diff changeset
    91
               #(
b895330fc7aa intitial checkin
ca
parents:
diff changeset
    92
                 #(#LabelSpec
b895330fc7aa intitial checkin
ca
parents:
diff changeset
    93
                    #'name:' 'labelLabel'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
    94
                    #'layout:' #(#AlignmentOrigin 84 0 29 0 1 0.5)
b895330fc7aa intitial checkin
ca
parents:
diff changeset
    95
                    #'label:' 'Label:'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
    96
                    #'adjust:' #right
b895330fc7aa intitial checkin
ca
parents:
diff changeset
    97
                    #'resizeForLabel:' true
b895330fc7aa intitial checkin
ca
parents:
diff changeset
    98
                )
b895330fc7aa intitial checkin
ca
parents:
diff changeset
    99
                 #(#InputFieldSpec
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   100
                    #'name:' 'labelField'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   101
                    #'layout:' #(#LayoutFrame 86 0 20 0 -12 1.0 40 0)
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   102
                    #'model:' #label
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   103
                )
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   104
                 #(#FramedBoxSpec
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   105
                    #'name:' 'typesFrame'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   106
                    #'layout:' #(#LayoutFrame 0 0.0 51 0 0 1.0 131 0)
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   107
                    #'component:' 
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   108
                     #(#SpecCollection
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   109
                        #'collection:' 
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   110
                         #(
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   111
                           #(#LabelSpec
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   112
                              #'name:' 'rendererLabel'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   113
                              #'layout:' #(#AlignmentOrigin 84 0 26 0 1 0.5)
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   114
                              #'label:' 'Renderer:'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   115
                              #'resizeForLabel:' true
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   116
                          )
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   117
                           #(#ComboListSpec
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   118
                              #'name:' 'rendererField'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   119
                              #'layout:' #(#LayoutFrame 86 0 16 0 17 1.0 36 0)
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   120
                              #'model:' #rendererType
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   121
                              #'comboList:' #rendererTypeList
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   122
                              #'useIndex:' false
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   123
                          )
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   124
                           #(#LabelSpec
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   125
                              #'name:' 'editorLabel'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   126
                              #'layout:' #(#AlignmentOrigin 84 0 50 0 1 0.5)
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   127
                              #'label:' 'Editor:'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   128
                              #'resizeForLabel:' true
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   129
                          )
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   130
                           #(#ComboBoxSpec
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   131
                              #'name:' 'editorField'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   132
                              #'layout:' #(#LayoutFrame 86 0 41 0 17 1.0 61 0)
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   133
                              #'model:' #editorType
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   134
                              #'type:' #symbolOrNil
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   135
                              #'comboList:' #editorTypeList
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   136
                              #'useIndex:' false
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   137
                          )
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   138
                        )
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   139
                    )
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   140
                    #'label:' 'Types:'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   141
                    #'labelPosition:' #topLeft
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   142
                )
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   143
                 #(#FramedBoxSpec
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   144
                    #'name:' 'selectorsFrame'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   145
                    #'layout:' #(#LayoutFrame 0 0.0 143 0 0 1.0 245 0)
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   146
                    #'component:' 
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   147
                     #(#SpecCollection
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   148
                        #'collection:' 
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   149
                         #(
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   150
                           #(#LabelSpec
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   151
                              #'name:' 'readLabel'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   152
                              #'layout:' #(#AlignmentOrigin 84 0 25 0 1 0.5)
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   153
                              #'label:' 'Read:'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   154
                              #'adjust:' #right
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   155
                              #'resizeForLabel:' true
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   156
                          )
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   157
                           #(#InputFieldSpec
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   158
                              #'name:' 'readSelector'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   159
                              #'layout:' #(#LayoutFrame 86 0 16 0 17 1.0 36 0)
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   160
                              #'model:' #readSelector
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   161
                              #'type:' #symbolOrNil
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   162
                          )
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   163
                           #(#LabelSpec
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   164
                              #'name:' 'menuLabel'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   165
                              #'layout:' #(#AlignmentOrigin 84 0 51 0 1 0.5)
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   166
                              #'label:' 'Menu:'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   167
                              #'adjust:' #right
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   168
                              #'resizeForLabel:' true
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   169
                          )
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   170
                           #(#InputFieldSpec
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   171
                              #'name:' 'menuField'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   172
                              #'layout:' #(#LayoutFrame 86 0 41 0 17 1.0 61 0)
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   173
                              #'model:' #menu
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   174
                              #'type:' #symbolOrNil
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   175
                          )
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   176
                           #(#LabelSpec
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   177
                              #'name:' 'printLabel'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   178
                              #'layout:' #(#AlignmentOrigin 84 0 75 0 1 0.5)
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   179
                              #'label:' 'Print:'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   180
                              #'adjust:' #right
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   181
                              #'resizeForLabel:' true
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   182
                          )
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   183
                           #(#InputFieldSpec
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   184
                              #'name:' 'printSelector'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   185
                              #'layout:' #(#LayoutFrame 86 0 66 0 17 1.0 86 0)
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   186
                              #'model:' #printSelector
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   187
                              #'type:' #symbolOrNil
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   188
                          )
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   189
                        )
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   190
                    )
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   191
                    #'label:' 'Selectors:'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   192
                    #'labelPosition:' #topLeft
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   193
                )
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   194
              )
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   195
          )
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   196
      )
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   197
!
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   198
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   199
detailsEditSpec
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   200
    "this window spec was automatically generated by the ST/X UIPainter"
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   201
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   202
    "do not manually edit this - the painter/builder may not be able to
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   203
     handle the specification if its corrupted."
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   204
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   205
    "
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   206
     UIPainter new openOnClass:DataSetBuilder andSelector:#detailsEditSpec
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   207
     DataSetBuilder new openInterface:#detailsEditSpec
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   208
    "
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   209
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   210
    <resource: #canvas>
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   211
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   212
    ^
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   213
     
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   214
       #(#FullSpec
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   215
          #'window:' 
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   216
           #(#WindowSpec
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   217
              #'name:' 'DataSet Details'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   218
              #'layout:' #(#LayoutFrame 197 0 172 0 487 0 385 0)
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   219
              #'label:' 'DataSet Details'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   220
              #'min:' #(#Point 10 10)
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   221
              #'max:' #(#Point 1280 1024)
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   222
              #'bounds:' #(#Rectangle 197 172 488 386)
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   223
          )
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   224
          #'component:' 
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   225
           #(#SpecCollection
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   226
              #'collection:' 
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   227
               #(
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   228
                 #(#LabelSpec
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   229
                    #'name:' 'textDescription'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   230
                    #'layout:' #(#Point 10 15)
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   231
                    #'label:' 'Text Description:'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   232
                    #'resizeForLabel:' true
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   233
                )
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   234
                 #(#LabelSpec
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   235
                    #'name:' 'formatLabel'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   236
                    #'layout:' #(#AlignmentOrigin 83 0 47 0 1 0.5)
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   237
                    #'label:' 'Format:'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   238
                    #'resizeForLabel:' true
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   239
                )
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   240
                 #(#InputFieldSpec
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   241
                    #'name:' 'formatField'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   242
                    #'layout:' #(#LayoutFrame 87 0 37 0 -19 1.0 59 0)
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   243
                    #'model:' #formatString
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   244
                )
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   245
                 #(#LabelSpec
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   246
                    #'name:' 'inpFieldDescription'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   247
                    #'layout:' #(#Point 10 80)
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   248
                    #'label:' 'InputField Description:'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   249
                    #'resizeForLabel:' true
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   250
                )
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   251
                 #(#LabelSpec
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   252
                    #'name:' 'typeLabel'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   253
                    #'layout:' #(#AlignmentOrigin 83 0 111 0 1 0.5)
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   254
                    #'label:' 'Type:'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   255
                    #'resizeForLabel:' true
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   256
                )
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   257
                 #(#ComboListSpec
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   258
                    #'name:' 'typeCombo'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   259
                    #'layout:' #(#LayoutFrame 87 0 102 0 289 0 122 0)
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   260
                    #'model:' #type
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   261
                    #'comboList:' #typeList
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   262
                    #'useIndex:' false
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   263
                )
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   264
                 #(#LabelSpec
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   265
                    #'name:' 'sizeLabel'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   266
                    #'layout:' #(#AlignmentOrigin 83 0 136 0 1 0.5)
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   267
                    #'label:' 'Size:'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   268
                    #'resizeForLabel:' true
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   269
                )
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   270
                 #(#InputFieldSpec
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   271
                    #'name:' 'sizeField'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   272
                    #'layout:' #(#LayoutFrame 87 0 126 0 -19 1.0 148 0)
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   273
                    #'model:' #size
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   274
                    #'type:' #numberOrNil
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   275
                )
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   276
                 #(#LabelSpec
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   277
                    #'name:' 'choicesLabel'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   278
                    #'layout:' #(#Point 10 165)
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   279
                    #'label:' 'Choices:'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   280
                    #'resizeForLabel:' true
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   281
                )
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   282
                 #(#LabelSpec
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   283
                    #'name:' 'selectorLabel'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   284
                    #'layout:' #(#AlignmentOrigin 83 0 198 0 1 0.5)
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   285
                    #'label:' 'Selector:'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   286
                    #'resizeForLabel:' true
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   287
                )
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   288
                 #(#InputFieldSpec
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   289
                    #'name:' 'choiceField'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   290
                    #'layout:' #(#LayoutFrame 87 0 188 0 -19 1.0 210 0)
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   291
                    #'model:' #choices
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   292
                    #'type:' #symbolOrNil
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   293
                )
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   294
              )
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   295
          )
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   296
      )
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   297
!
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   298
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   299
dimensionEditSpec
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   300
    "this window spec was automatically generated by the ST/X UIPainter"
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   301
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   302
    "do not manually edit this - the painter/builder may not be able to
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   303
     handle the specification if its corrupted."
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   304
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   305
    "
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   306
     UIPainter new openOnClass:DataSetBuilder andSelector:#dimensionEditSpec
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   307
     DataSetBuilder new openInterface:#dimensionEditSpec
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   308
    "
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   309
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   310
    <resource: #canvas>
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   311
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   312
    ^
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   313
     
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   314
       #(#FullSpec
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   315
          #'window:' 
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   316
           #(#WindowSpec
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   317
              #'name:' 'DataSet Dimension'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   318
              #'layout:' #(#LayoutFrame 197 0 172 0 487 0 385 0)
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   319
              #'label:' 'DataSet Dimension'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   320
              #'min:' #(#Point 10 10)
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   321
              #'max:' #(#Point 1280 1024)
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   322
              #'bounds:' #(#Rectangle 197 172 488 386)
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   323
          )
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   324
          #'component:' 
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   325
           #(#SpecCollection
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   326
              #'collection:' 
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   327
               #(
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   328
                 #(#FramedBoxSpec
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   329
                    #'name:' 'columnWidthFrame'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   330
                    #'layout:' #(#LayoutFrame 0 0.0 20 0 0 1.0 107 0)
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   331
                    #'component:' 
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   332
                     #(#SpecCollection
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   333
                        #'collection:' 
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   334
                         #(
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   335
                           #(#LabelSpec
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   336
                              #'name:' 'widthLabel'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   337
                              #'layout:' #(#AlignmentOrigin 68 0.0 27 0 1 0.5)
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   338
                              #'label:' 'width:'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   339
                              #'resizeForLabel:' true
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   340
                          )
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   341
                           #(#InputFieldSpec
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   342
                              #'name:' 'widthField'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   343
                              #'layout:' #(#LayoutFrame 70 0 17 0 0 1.0 39 0)
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   344
                              #'model:' #width
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   345
                              #'type:' #numberOrNil
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   346
                          )
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   347
                           #(#LabelSpec
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   348
                              #'name:' 'minWidthLabel'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   349
                              #'layout:' #(#AlignmentOrigin 68 0.0 56 0 1 0.5)
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   350
                              #'label:' 'minWidth:'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   351
                              #'resizeForLabel:' true
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   352
                          )
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   353
                           #(#InputFieldSpec
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   354
                              #'name:' 'minWidthField'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   355
                              #'layout:' #(#LayoutFrame 70 0 46 0 0 1.0 68 0)
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   356
                              #'model:' #minWidth
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   357
                              #'type:' #numberOrNil
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   358
                          )
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   359
                        )
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   360
                    )
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   361
                    #'label:' 'Column Width:'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   362
                    #'labelPosition:' #topLeft
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   363
                )
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   364
                 #(#FramedBoxSpec
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   365
                    #'name:' 'rowHeightFrame'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   366
                    #'layout:' #(#LayoutFrame 0 0.0 134 0 0 1.0 194 0)
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   367
                    #'component:' 
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   368
                     #(#SpecCollection
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   369
                        #'collection:' 
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   370
                         #(
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   371
                           #(#LabelSpec
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   372
                              #'name:' 'heightLabel'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   373
                              #'layout:' #(#AlignmentOrigin 68 0.0 29 0 1 0.5)
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   374
                              #'label:' 'height:'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   375
                              #'resizeForLabel:' true
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   376
                          )
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   377
                           #(#InputFieldSpec
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   378
                              #'name:' 'heightField'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   379
                              #'layout:' #(#LayoutFrame 70 0 19 0 0 1.0 41 0)
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   380
                              #'model:' #height
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   381
                              #'type:' #numberOrNil
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   382
                          )
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   383
                        )
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   384
                    )
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   385
                    #'label:' 'Row Height:'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   386
                    #'labelPosition:' #topLeft
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   387
                )
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   388
              )
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   389
          )
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   390
      )
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   391
!
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   392
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   393
miscEditSpec
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   394
    "this window spec was automatically generated by the ST/X UIPainter"
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   395
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   396
    "do not manually edit this - the painter/builder may not be able to
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   397
     handle the specification if its corrupted."
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   398
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   399
    "
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   400
     UIPainter new openOnClass:DataSetBuilder andSelector:#miscEditSpec
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   401
     DataSetBuilder new openInterface:#miscEditSpec
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   402
    "
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   403
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   404
    <resource: #canvas>
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   405
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   406
    ^
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   407
     
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   408
       #(#FullSpec
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   409
          #'window:' 
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   410
           #(#WindowSpec
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   411
              #'name:' 'DataSet Misc'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   412
              #'layout:' #(#LayoutFrame 197 0 172 0 487 0 385 0)
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   413
              #'label:' 'DataSet Misc'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   414
              #'min:' #(#Point 10 10)
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   415
              #'max:' #(#Point 1280 1024)
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   416
              #'bounds:' #(#Rectangle 197 172 488 386)
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   417
          )
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   418
          #'component:' 
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   419
           #(#SpecCollection
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   420
              #'collection:' 
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   421
               #(
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   422
                 #(#CheckBoxSpec
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   423
                    #'name:' 'canSelect'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   424
                    #'layout:' #(#Point 17 21)
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   425
                    #'model:' #canSelect
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   426
                    #'label:' 'Is Selectable'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   427
                )
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   428
                 #(#LabelSpec
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   429
                    #'name:' 'separatorsLabel'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   430
                    #'layout:' #(#AlignmentOrigin 84 0 154 0 1 0.5)
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   431
                    #'label:' 'Separators:'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   432
                    #'resizeForLabel:' true
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   433
                )
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   434
                 #(#CheckBoxSpec
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   435
                    #'name:' 'showRowSeparator'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   436
                    #'layout:' #(#AlignmentOrigin 86 0 156 0 0 0.5)
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   437
                    #'model:' #showRowSeparator
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   438
                    #'label:' 'Show Row-Separator'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   439
                )
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   440
                 #(#CheckBoxSpec
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   441
                    #'name:' 'showColSeparator'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   442
                    #'layout:' #(#AlignmentOrigin 86 0 182 0 0 0.5)
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   443
                    #'model:' #showColSeparator
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   444
                    #'label:' 'Show Column-Separator'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   445
                )
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   446
              )
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   447
          )
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   448
      )
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   449
! !
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   450
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   451
!DataSetBuilder class methodsFor:'images'!
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   452
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   453
iconCreateItem
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   454
    ^ MenuEditor iconCreateItem
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   455
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   456
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   457
! !
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   458
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   459
!DataSetBuilder class methodsFor:'interface specs'!
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   460
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   461
defineClassNameSpec
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   462
    "this window spec was automatically generated by the ST/X UIPainter"
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   463
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   464
    "do not manually edit this - the painter/builder may not be able to
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   465
     handle the specification if its corrupted."
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   466
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   467
    "
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   468
     UIPainter new openOnClass:DataSetBuilder andSelector:#defineClassNameSpec
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   469
     DataSetBuilder new openInterface:#defineClassNameSpec
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   470
    "
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   471
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   472
    <resource: #canvas>
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   473
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   474
    ^
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   475
     
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   476
       #(#FullSpec
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   477
          #'window:' 
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   478
           #(#WindowSpec
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   479
              #'name:' 'Class Definition'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   480
              #'layout:' #(#LayoutFrame 76 0 249 0 401 0 378 0)
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   481
              #'label:' 'Class Definition'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   482
              #'min:' #(#Point 10 10)
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   483
              #'max:' #(#Point 1152 900)
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   484
              #'bounds:' #(#Rectangle 76 249 402 379)
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   485
          )
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   486
          #'component:' 
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   487
           #(#SpecCollection
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   488
              #'collection:' 
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   489
               #(
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   490
                 #(#LabelSpec
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   491
                    #'name:' 'classLabel'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   492
                    #'layout:' #(#AlignmentOrigin 50 0.11 50 0 1 0.5)
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   493
                    #'label:' 'class:'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   494
                    #'adjust:' #right
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   495
                    #'resizeForLabel:' true
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   496
                )
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   497
                 #(#LabelSpec
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   498
                    #'name:' 'superClassLabel'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   499
                    #'layout:' #(#AlignmentOrigin 50 0.11 77 0 1 0.5)
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   500
                    #'label:' 'superclass:'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   501
                    #'adjust:' #right
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   502
                    #'resizeForLabel:' true
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   503
                )
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   504
                 #(#LabelSpec
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   505
                    #'name:' 'topLabel'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   506
                    #'layout:' #(#Point 2 10)
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   507
                    #'label:' 'class for code:'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   508
                    #'adjust:' #left
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   509
                    #'resizeForLabel:' true
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   510
                )
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   511
                 #(#InputFieldSpec
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   512
                    #'name:' 'classNameField'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   513
                    #'layout:' #(#LayoutFrame 51 0.11 39 0 -2 1.0 61 0)
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   514
                    #'tabable:' true
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   515
                    #'model:' #classNameChannel
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   516
                )
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   517
                 #(#HorizontalPanelViewSpec
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   518
                    #'name:' 'commitPanel'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   519
                    #'layout:' #(#LayoutFrame 2 0.0 -30 1.0 -2 1.0 -2 1.0)
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   520
                    #'component:' 
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   521
                     #(#SpecCollection
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   522
                        #'collection:' 
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   523
                         #(
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   524
                           #(#ActionButtonSpec
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   525
                              #'name:' 'button1'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   526
                              #'label:' 'cancel'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   527
                              #'tabable:' true
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   528
                              #'model:' #cancel
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   529
                              #'extent:' #(#Point 156 22)
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   530
                          )
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   531
                           #(#ActionButtonSpec
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   532
                              #'name:' 'button2'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   533
                              #'label:' 'ok'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   534
                              #'tabable:' true
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   535
                              #'isDefault:' true
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   536
                              #'model:' #accept
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   537
                              #'extent:' #(#Point 157 22)
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   538
                          )
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   539
                        )
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   540
                    )
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   541
                    #'horizontalLayout:' #fitSpace
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   542
                    #'verticalLayout:' #fitSpace
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   543
                    #'horizontalSpace:' 3
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   544
                    #'verticalSpace:' 3
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   545
                )
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   546
                 #(#InputFieldSpec
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   547
                    #'name:' 'inputField1'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   548
                    #'layout:' #(#LayoutFrame 51 0.11 67 0 -2 1.0 89 0)
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   549
                    #'tabable:' true
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   550
                    #'model:' #superclassNameChannel
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   551
                )
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   552
              )
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   553
          )
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   554
      )
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   555
!
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   556
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   557
slices
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   558
    ^  #(       (Basics         basicsEditSpec)
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   559
                (Details        detailsEditSpec)
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   560
                (Misc           miscEditSpec)
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   561
                (Dimension      dimensionEditSpec)
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   562
        )
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   563
!
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   564
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   565
windowSpec
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   566
    "this window spec was automatically generated by the ST/X UIPainter"
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   567
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   568
    "do not manually edit this - the painter/builder may not be able to
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   569
     handle the specification if its corrupted."
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   570
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   571
    "
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   572
     UIPainter new openOnClass:DataSetBuilder andSelector:#windowSpec
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   573
     DataSetBuilder new openInterface:#windowSpec
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   574
    "
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   575
    "DataSetBuilder open"
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   576
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   577
    <resource: #canvas>
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   578
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   579
    ^
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   580
     
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   581
       #(#FullSpec
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   582
          #'window:' 
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   583
           #(#WindowSpec
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   584
              #'name:' 'unnamed canvas'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   585
              #'layout:' #(#LayoutFrame 197 0 172 0 668 0 512 0)
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   586
              #'label:' 'unnamed canvas'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   587
              #'min:' #(#Point 10 10)
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   588
              #'max:' #(#Point 1152 900)
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   589
              #'bounds:' #(#Rectangle 197 172 669 513)
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   590
          )
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   591
          #'component:' 
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   592
           #(#SpecCollection
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   593
              #'collection:' 
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   594
               #(
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   595
                 #(#MenuPanelSpec
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   596
                    #'name:' 'mainMenu'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   597
                    #'layout:' #(#LayoutFrame 0 0.0 0 0.0 0 1.0 25 0)
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   598
                    #'menu:' #mainMenu
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   599
                )
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   600
                 #(#VariableHorizontalPanelSpec
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   601
                    #'name:' 'VariablePanel'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   602
                    #'layout:' #(#LayoutFrame 0 0.0 25 0.0 0 1.0 0 1.0)
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   603
                    #'component:' 
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   604
                     #(#SpecCollection
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   605
                        #'collection:' 
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   606
                         #(
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   607
                           #(#ViewSpec
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   608
                              #'name:' 'labelsView'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   609
                              #'component:' 
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   610
                               #(#SpecCollection
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   611
                                  #'collection:' 
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   612
                                   #(
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   613
                                     #(#MenuPanelSpec
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   614
                                        #'name:' 'subMenu'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   615
                                        #'layout:' #(#LayoutFrame 0 0.0 0 0.0 0 1.0 35 0)
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   616
                                        #'menu:' #subMenu
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   617
                                    )
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   618
                                     #(#SequenceViewSpec
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   619
                                        #'name:' 'columnView'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   620
                                        #'layout:' #(#LayoutFrame 0 0.0 35 0.0 0 1.0 0 1.0)
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   621
                                        #'model:' #selectedColumnModel
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   622
                                        #'menu:' #columnMenu
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   623
                                        #'hasVerticalScrollBar:' true
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   624
                                        #'useIndex:' true
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   625
                                        #'sequenceList:' #seqList
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   626
                                    )
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   627
                                  )
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   628
                              )
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   629
                          )
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   630
                           #(#ViewSpec
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   631
                              #'name:' 'specView'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   632
                              #'component:' 
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   633
                               #(#SpecCollection
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   634
                                  #'collection:' 
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   635
                                   #(
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   636
                                     #(#TabViewSpec
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   637
                                        #'name:' 'tabView'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   638
                                        #'layout:' #(#LayoutFrame 0 0.0 0 0 0 1.0 35 0)
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   639
                                        #'model:' #tabModel
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   640
                                        #'menu:' #tabList
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   641
                                        #'useIndex:' true
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   642
                                    )
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   643
                                     #(#SubCanvasSpec
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   644
                                        #'name:' 'specCanvas'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   645
                                        #'layout:' #(#LayoutFrame 0 0.0 35 0.0 0 1.0 -30 1.0)
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   646
                                        #'specHolder:' #specChannel
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   647
                                    )
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   648
                                     #(#HorizontalPanelViewSpec
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   649
                                        #'name:' 'modifyPanel'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   650
                                        #'layout:' #(#LayoutFrame 0 0.0 -30 1.0 0 1.0 0 1.0)
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   651
                                        #'component:' 
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   652
                                         #(#SpecCollection
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   653
                                            #'collection:' 
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   654
                                             #(
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   655
                                               #(#ActionButtonSpec
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   656
                                                  #'name:' 'cancelButton'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   657
                                                  #'label:' 'cancel'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   658
                                                  #'model:' #cancel
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   659
                                                  #'enableChannel:' #modifiedChannel
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   660
                                                  #'extent:' #(#Point 150 24)
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   661
                                              )
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   662
                                               #(#ActionButtonSpec
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   663
                                                  #'name:' 'acceptButton'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   664
                                                  #'label:' 'ok'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   665
                                                  #'model:' #accept
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   666
                                                  #'enableChannel:' #modifiedChannel
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   667
                                                  #'extent:' #(#Point 151 24)
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   668
                                              )
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   669
                                            )
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   670
                                        )
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   671
                                        #'horizontalLayout:' #fitSpace
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   672
                                        #'verticalLayout:' #fitSpace
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   673
                                        #'horizontalSpace:' 3
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   674
                                        #'verticalSpace:' 3
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   675
                                    )
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   676
                                  )
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   677
                              )
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   678
                              #'borderWidth:' 1
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   679
                          )
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   680
                        )
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   681
                    )
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   682
                    #'handles:' #(#Any 0.334746 1.0)
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   683
                )
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   684
              )
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   685
          )
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   686
      )
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   687
! !
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   688
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   689
!DataSetBuilder class methodsFor:'menu specs'!
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   690
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   691
columnMenu
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   692
    "this window spec was automatically generated by the ST/X MenuEditor"
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   693
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   694
    "do not manually edit this - the builder may not be able to
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   695
     handle the specification if its corrupted."
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   696
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   697
    "
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   698
     MenuEditor new openOnClass:DataSetBuilder andSelector:#columnMenu
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   699
     (Menu new fromLiteralArrayEncoding:(DataSetBuilder columnMenu)) startUp
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   700
    "
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   701
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   702
    <resource: #menu>
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   703
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   704
    ^
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   705
     
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   706
       #(#Menu
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   707
          
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   708
           #(
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   709
             #(#MenuItem
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   710
                #'label:' 'cut'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   711
                #'value:' #doCutColumn
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   712
            )
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   713
          ) nil
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   714
          nil
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   715
      )
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   716
!
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   717
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   718
mainMenu
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   719
    "this window spec was automatically generated by the ST/X MenuEditor"
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   720
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   721
    "do not manually edit this - the builder may not be able to
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   722
     handle the specification if its corrupted."
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   723
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   724
    "
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   725
     MenuEditor new openOnClass:DataSetBuilder andSelector:#mainMenu
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   726
     (Menu new fromLiteralArrayEncoding:(DataSetBuilder mainMenu)) startUp
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   727
    "
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   728
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   729
    <resource: #menu>
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   730
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   731
    ^
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   732
     
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   733
       #(#Menu
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   734
          
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   735
           #(
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   736
             #(#MenuItem
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   737
                #'label:' 'file'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   738
                #'submenu:' 
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   739
                 #(#Menu
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   740
                    
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   741
                     #(
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   742
                       #(#MenuItem
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   743
                          #'label:' 'close'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   744
                          #'value:' #closeRequest
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   745
                      )
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   746
                    ) nil
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   747
                    nil
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   748
                )
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   749
            )
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   750
             #(#MenuItem
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   751
                #'label:' 'code'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   752
                #'submenu:' 
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   753
                 #(#Menu
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   754
                    
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   755
                     #(
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   756
                       #(#MenuItem
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   757
                          #'label:' 'class'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   758
                          #'value:' #doDefineClass
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   759
                      )
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   760
                       #(#MenuItem
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   761
                          #'label:' 'generate code'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   762
                          #'value:' #doGenerateCode
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   763
                      )
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   764
                       #(#MenuItem
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   765
                          #'label:' '-'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   766
                      )
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   767
                       #(#MenuItem
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   768
                          #'label:' 'browse class'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   769
                          #'value:' #doBrowseClass
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   770
                      )
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   771
                    ) nil
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   772
                    nil
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   773
                )
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   774
            )
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   775
          ) nil
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   776
          nil
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   777
      )
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   778
!
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   779
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   780
subMenu
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   781
    "this window spec was automatically generated by the ST/X MenuEditor"
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   782
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   783
    "do not manually edit this - the builder may not be able to
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   784
     handle the specification if its corrupted."
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   785
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   786
    "
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   787
     MenuEditor new openOnClass:DataSetBuilder andSelector:#subMenu
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   788
     (Menu new fromLiteralArrayEncoding:(DataSetBuilder subMenu)) startUp
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   789
    "
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   790
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   791
    <resource: #menu>
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   792
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   793
    ^
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   794
     
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   795
       #(#Menu
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   796
          
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   797
           #(
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   798
             #(#MenuItem
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   799
                #'label:' 'createColumn'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   800
                #'value:' #doCreateColumn
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   801
                #'enabled:' #isNotModified
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   802
                #'labelImage:' #(#ResourceRetriever #MenuEditor #iconCreateItem)
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   803
            )
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   804
             #(#MenuItem
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   805
                #'label:' '-'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   806
            )
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   807
             #(#MenuItem
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   808
                #'label:' ''
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   809
            )
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   810
             #(#MenuItem
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   811
                #'label:' '-'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   812
            )
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   813
             #(#MenuItem
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   814
                #'label:' 'stepUp'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   815
                #'value:' #'doMoveColumn:'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   816
                #'enabled:' #isNotModified
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   817
                #'argument:' #up
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   818
                #'labelImage:' #(#ResourceRetriever #UIPainter #iconStepUp)
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   819
            )
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   820
             #(#MenuItem
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   821
                #'label:' '-'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   822
            )
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   823
             #(#MenuItem
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   824
                #'label:' 'stepDown'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   825
                #'value:' #'doMoveColumn:'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   826
                #'enabled:' #notModified
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   827
                #'argument:' #down
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   828
                #'labelImage:' #(#ResourceRetriever #UIPainter #iconStepDown)
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   829
            )
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   830
             #(#MenuItem
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   831
                #'label:' '-'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   832
            )
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   833
          ) nil
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   834
          nil
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   835
      )
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   836
! !
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   837
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   838
!DataSetBuilder methodsFor:'accessing'!
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   839
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   840
columns
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   841
    "returns list of columns
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   842
    "
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   843
    ^ columns
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   844
!
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   845
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   846
columns:aListOfColumns fromView:aColumnView
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   847
    "setup columns from a column view
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   848
    "
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   849
    |list|
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   850
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   851
    columnView := aColumnView.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   852
    columns    := OrderedCollection new.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   853
    list       := self seqList.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   854
    hasChanged := false.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   855
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   856
    list removeAll.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   857
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   858
    aListOfColumns size ~~ 0 ifTrue:[
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   859
        aListOfColumns do:[:aCol|
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   860
            columns add:(aCol copy).
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   861
            aCol rendererType == #rowSelector ifFalse:[list add:(aCol label)]
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   862
                                               ifTrue:[list add:'Row Selector'].
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   863
        ]
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   864
    ].
333
a2e23dea36bf change className to rowClassName
ca
parents: 332
diff changeset
   865
!
a2e23dea36bf change className to rowClassName
ca
parents: 332
diff changeset
   866
a2e23dea36bf change className to rowClassName
ca
parents: 332
diff changeset
   867
rowClassName
a2e23dea36bf change className to rowClassName
ca
parents: 332
diff changeset
   868
    ^ (Smalltalk resolveName:className inClass:self class) notNil ifTrue:[className] ifFalse:[nil]
a2e23dea36bf change className to rowClassName
ca
parents: 332
diff changeset
   869
!
a2e23dea36bf change className to rowClassName
ca
parents: 332
diff changeset
   870
a2e23dea36bf change className to rowClassName
ca
parents: 332
diff changeset
   871
rowClassName:aClassName
a2e23dea36bf change className to rowClassName
ca
parents: 332
diff changeset
   872
    |cls|
a2e23dea36bf change className to rowClassName
ca
parents: 332
diff changeset
   873
a2e23dea36bf change className to rowClassName
ca
parents: 332
diff changeset
   874
    superclassName := nil.
a2e23dea36bf change className to rowClassName
ca
parents: 332
diff changeset
   875
a2e23dea36bf change className to rowClassName
ca
parents: 332
diff changeset
   876
    (className := aClassName) notNil ifTrue:[
a2e23dea36bf change className to rowClassName
ca
parents: 332
diff changeset
   877
        (cls := self resolveClassNamed) notNil ifTrue:[
a2e23dea36bf change className to rowClassName
ca
parents: 332
diff changeset
   878
            superclassName := cls superclass name asString.
a2e23dea36bf change className to rowClassName
ca
parents: 332
diff changeset
   879
        ] ifFalse:[
a2e23dea36bf change className to rowClassName
ca
parents: 332
diff changeset
   880
            superclassName := 'Object'
a2e23dea36bf change className to rowClassName
ca
parents: 332
diff changeset
   881
        ]
a2e23dea36bf change className to rowClassName
ca
parents: 332
diff changeset
   882
    ]
a2e23dea36bf change className to rowClassName
ca
parents: 332
diff changeset
   883
332
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   884
! !
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   885
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   886
!DataSetBuilder methodsFor:'accessing menu'!
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   887
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   888
columnMenu
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   889
    "this window spec was automatically generated by the UI Builder"
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   890
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   891
    ^ self class columnMenu
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   892
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   893
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   894
!
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   895
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   896
doBrowseClass
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   897
    |cls|
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   898
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   899
    (cls := self resolveClassNamed) notNil ifTrue:[
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   900
        SystemBrowser openInClass:cls
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   901
    ] ifFalse:[
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   902
        self information:'no class yet'.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   903
    ].
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   904
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   905
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   906
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   907
!
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   908
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   909
doCreateColumn
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   910
    "create a new column after selected column or at left (nothing selected)
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   911
    "
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   912
    |label list|
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   913
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   914
    list := self seqList.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   915
    label := 'column ', list size printString.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   916
    columns add:(DataSetColumnSpec label:label selector:#ToBeDefined) afterIndex:selectedColumnIndex.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   917
    self seqList add:label afterIndex:selectedColumnIndex.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   918
    hasChanged := true.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   919
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   920
    self modified ifFalse:[
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   921
        self selectedColumnModel value:(selectedColumnIndex + 1)
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   922
    ].
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   923
    self updateColumnView.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   924
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   925
!
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   926
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   927
doCutColumn
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   928
    "remove selected column
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   929
    "
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   930
    |idx|
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   931
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   932
    (idx := selectedColumnIndex) ~~ 0 ifTrue:[
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   933
        self selectedColumnModel value:0.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   934
        self seqList removeIndex:idx.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   935
    ].
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   936
!
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   937
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   938
doDefineClass
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   939
    "launch a dialog to define class and superclass
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   940
    "
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   941
    |aspects cls oldClass oldSuper|
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   942
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   943
    aspects  := IdentityDictionary new.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   944
    oldClass := className.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   945
    oldSuper := superclassName.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   946
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   947
    [true] whileTrue:[
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   948
        className notNil ifTrue:[
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   949
            (cls := self resolveClassNamed) notNil ifTrue:[
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   950
                superclassName := cls superclass name asString.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   951
            ].
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   952
            aspects at:#classNameChannel put:className asValue
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   953
        ] ifFalse:[
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   954
            aspects at:#classNameChannel put:'DSVRow' asValue
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   955
        ].
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   956
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   957
        superclassName notNil ifTrue:[
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   958
            aspects at:#superclassNameChannel put:superclassName asValue
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   959
        ] ifFalse:[
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   960
            aspects at:#superclassNameChannel put:'Object' asValue
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   961
        ].
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   962
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   963
        (self openDialogInterface:#defineClassNameSpec withBindings:aspects) ifFalse:[
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   964
            className := oldClass.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   965
            superclassName := oldSuper.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   966
          ^ self
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   967
        ].
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   968
        className      := ((aspects at:#classNameChannel) value)      withoutSeparators.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   969
        superclassName := ((aspects at:#superclassNameChannel) value) withoutSeparators.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   970
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   971
        className size == 0 ifTrue:[
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   972
            className := nil.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   973
            self information:'no valid className'.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   974
        ] ifFalse:[
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   975
            cls := self resolveClassNamed.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   976
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   977
            cls notNil ifTrue:[
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   978
                cls := cls superclass name asString
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   979
            ].
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   980
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   981
            superclassName size == 0 ifTrue:[        
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   982
                cls notNil ifTrue:[
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   983
                    superclassName := cls
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   984
                ] ifFalse:[
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   985
                    superclassName := 'Object'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   986
                ].
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   987
                self information:( 'set superclassName' ).
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   988
            ] ifFalse:[
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   989
                (cls isNil or:[superclassName = cls]) ifTrue:[
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   990
                    hasChanged := true.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   991
                    ^ self
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   992
                ].
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   993
                self information:('a global named ' , className , ' exists,\' ,
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   994
                                  'but is not a subclass of ' , superclassName, '.\\' ,
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   995
                                  'Check and try again if that is not what you want.') withCRs.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   996
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   997
                superclassName := cls.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   998
            ]
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   999
        ]
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1000
    ]
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1001
!
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1002
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1003
doGenerateCode
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1004
    |cls superclass|
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1005
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1006
    className isNil ifTrue:[
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1007
        ^ self information:'no class defined'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1008
    ].
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1009
    cls := self resolveClassNamed.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1010
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1011
    cls isNil ifTrue:[
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1012
        superclass := Smalltalk resolveName:superclassName inClass:self class.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1013
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1014
        superclass isNil ifTrue:[
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1015
            ^ self information:'no superclass defined'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1016
        ].
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1017
        (self confirm:'create ' , className , ' ?') ifFalse:[
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1018
            ^ self
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1019
        ].
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1020
        cls := superclass subclass:(className asSymbol)
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1021
                     instanceVariableNames:''
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1022
                     classVariableNames:''
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1023
                     poolDictionaries:''
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1024
                     category:'Applications'.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1025
    ].
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1026
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1027
    self generateChoicesIn:cls.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1028
    self generateMenuIn:cls.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1029
    self generatePrintSelectorIn:cls.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1030
    self generateReadSelectorIn:cls.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1031
    self generateWriteSelectorIn:cls.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1032
!
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1033
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1034
doMoveColumn:upOrDown
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1035
    "move selected column up or down
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1036
    "
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1037
    |idx list label col size|
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1038
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1039
    (idx := selectedColumnIndex) == 0 ifTrue:[
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1040
        ^ self
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1041
    ].
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1042
    list := self seqList.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1043
    size := list size.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1044
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1045
    size == 1 ifTrue:[
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1046
        ^ self
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1047
    ].
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1048
    hasChanged := true.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1049
    selectedColumnIndex := 0.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1050
    label := list at:idx.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1051
    col   := columns at:idx.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1052
    list    removeIndex:idx.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1053
    columns removeIndex:idx.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1054
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1055
    upOrDown == #up ifTrue:[
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1056
        idx == 1 ifTrue:[idx := size]
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1057
                ifFalse:[idx := idx - 1]
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1058
    ] ifFalse:[
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1059
        idx == size ifTrue:[idx := 1]
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1060
                   ifFalse:[idx := idx + 1]
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1061
    ].
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1062
    columns add:col   beforeIndex:idx.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1063
    list    add:label beforeIndex:idx.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1064
    self selectedColumnModel value:idx.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1065
    self updateColumnView.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1066
!
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1067
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1068
mainMenu
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1069
    "this window spec was automatically generated by the UI Builder"
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1070
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1071
    ^ self class mainMenu
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1072
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1073
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1074
!
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1075
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1076
subMenu
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1077
    "this window spec was automatically generated by the UI Builder"
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1078
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1079
    ^ self class subMenu
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1080
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1081
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1082
! !
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1083
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1084
!DataSetBuilder methodsFor:'actions'!
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1085
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1086
accept
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1087
    "accept changes made
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1088
    "
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1089
    |column type|
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1090
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1091
    self modifiedChannel value == false ifTrue:[
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1092
        ^ self
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1093
    ].
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1094
    isModified := true.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1095
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1096
    (column := self selectedColumn) isNil ifTrue:[
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1097
        ^ self cancel
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1098
    ].
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1099
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1100
    type := (aspects at:#rendererType) value.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1101
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1102
    type == #rowSelector ifTrue:[
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1103
        #( label width minWidth editorType choices readSelector printSelector
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1104
           formatString type size height canSelect
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1105
         ) do:[:aKey| (aspects at:aKey) value:nil ].
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1106
    ].
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1107
        
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1108
    aspects keysAndValuesDo:[:aKey :aModel|
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1109
        column perform:(aKey , ':') asSymbol with:(aModel value)
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1110
    ].
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1111
    self seqList at:selectedColumnIndex put:((aspects at:#label) value).
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1112
    self updateColumnView.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1113
    self cancel
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1114
!
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1115
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1116
cancel
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1117
    "remove all changes and reload selected column
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1118
    "
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1119
    |column|
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1120
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1121
    isModified := true.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1122
    (column := self selectedColumn) isNil ifTrue:[
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1123
        self tabModel value:0.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1124
    ] ifFalse:[
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1125
        aspects keysAndValuesDo:[:aKey :aModel|
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1126
            aModel value:(column perform:aKey)
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1127
        ].
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1128
        tabSelectionIndex == 0 ifTrue:[self tabModel value:1].
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1129
    ].
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1130
    self modifiedChannel value:false.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1131
    self isNotModified   value:true.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1132
    isModified := false.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1133
! !
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1134
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1135
!DataSetBuilder methodsFor:'aspects'!
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1136
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1137
aspectFor:aKey
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1138
    "returns aspect for a key or nil
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1139
    "
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1140
  ^ aspects at:aKey ifAbsent:[ super aspectFor:aKey ]
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1141
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1142
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1143
!
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1144
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1145
editorTypeList
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1146
    "generate list of supported editor types
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1147
    "
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1148
    |list|
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1149
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1150
    (list := builder bindingAt:#editorTypeList) isNil ifTrue:[
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1151
        list := OrderedCollection new.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1152
        DataSetColumnSpec slices do:[:aSlice||type|
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1153
            type := aSlice at:1.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1154
            (list includes:type) ifFalse:[list add:type].
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1155
        ].
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1156
        builder aspectAt:#editorTypeList put:list.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1157
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1158
    ].
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1159
    ^ list
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1160
!
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1161
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1162
isNotModified
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1163
    "returns a boolean value holder which is set to true if something is modified
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1164
     and not accepted
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1165
    "
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1166
    ^ builder valueAspectFor:#isNotModified initialValue:true
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1167
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1168
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1169
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1170
!
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1171
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1172
modifiedChannel
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1173
    "returns a boolean value holder which is set to true if something is modified
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1174
     and not accepted
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1175
    "
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1176
    ^ builder booleanValueAspectFor:#modifiedChannel
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1177
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1178
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1179
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1180
!
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1181
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1182
rendererTypeList
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1183
    "generate list of supported renderer types
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1184
    "
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1185
    |list|
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1186
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1187
    (list := builder bindingAt:#rendererTypeList) isNil ifTrue:[
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1188
        list := OrderedCollection new.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1189
        DataSetColumnSpec slices do:[:aSlice||type|
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1190
            type := aSlice at:2.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1191
            (list includes:type) ifFalse:[list add:type].
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1192
        ].
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1193
        builder aspectAt:#rendererTypeList put:list.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1194
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1195
    ].
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1196
    ^ list
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1197
!
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1198
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1199
selectedColumnModel
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1200
    "automatically generated by UIPainter ..."
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1201
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1202
    |holder|
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1203
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1204
    (holder := builder bindingAt:#selectedColumnModel) isNil ifTrue:[
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1205
        holder := AspectAdaptor new subject:self; forAspect:#selectedColumnIndex.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1206
        builder aspectAt:#selectedColumnModel put:holder.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1207
    ].
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1208
    ^ holder
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1209
!
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1210
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1211
seqList
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1212
    "automatically generated by UIPainter ..."
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1213
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1214
    |list|
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1215
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1216
    (list := builder bindingAt:#seqList) isNil ifTrue:[
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1217
        builder aspectAt:#seqList put:(list :=  List new).
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1218
    ].
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1219
    ^ list
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1220
!
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1221
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1222
specChannel
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1223
    "automatically generated by UIPainter ..."
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1224
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1225
    |holder|
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1226
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1227
    (holder := builder bindingAt:#specChannel) isNil ifTrue:[
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1228
        builder aspectAt:#specChannel put:(holder :=  ValueHolder new).
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1229
    ].
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1230
    ^ holder
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1231
!
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1232
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1233
tabList
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1234
    "automatically generated by UIPainter ..."
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1235
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1236
    ^ self class slices collect:[:aSlice| aSlice first ]
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1237
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1238
!
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1239
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1240
tabModel
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1241
    "returns a value holder which keeps the index of the current selected tab or 0
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1242
    "
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1243
    |holder|
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1244
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1245
    (holder := builder bindingAt:#tabModel) isNil ifTrue:[
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1246
        holder := AspectAdaptor new subject:self; forAspect:#tabSelectionIndex.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1247
        builder aspectAt:#tabModel put:holder.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1248
    ].
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1249
    ^ holder
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1250
!
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1251
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1252
typeList
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1253
    "automatically generated by UIPainter ..."
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1254
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1255
    ^ #( string password number numberOrNil symbolOrNil )
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1256
! !
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1257
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1258
!DataSetBuilder methodsFor:'change & update'!
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1259
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1260
update:something with:aParameter from:someObject
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1261
    "one of my aspects has changed; update modified channel
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1262
    "
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1263
    isModified ifFalse:[
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1264
        isModified := hasChanged := true.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1265
        self modifiedChannel value:true.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1266
        self isNotModified   value:false.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1267
    ]
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1268
! !
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1269
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1270
!DataSetBuilder methodsFor:'code generation'!
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1271
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1272
compile:aCode forClass:aClass inCategory:aCategory
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1273
    "compile method for class in a category
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1274
    "
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1275
    ByteCodeCompiler compile:aCode withCRs forClass:aClass inCategory:aCategory
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1276
!
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1277
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1278
generateChoicesIn:aClass
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1279
    "generate code for #choices
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1280
    "
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1281
    |sel catg code|
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1282
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1283
    catg := 'accessing choices' asSymbol.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1284
    code :=   '\'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1285
            , '    "automatically generated by DataSetBuilder ..."\'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1286
            , '\'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1287
            , '    "get choices for visual editor; (a list of labels)\'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1288
            , '\'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1289
            , '    ^ nil'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1290
            .
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1291
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1292
    columns do:[:aColumn|
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1293
        (     aColumn canSelect
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1294
         and:[aColumn rendererType ~~ #rowSelector
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1295
         and:[(sel := aColumn choices) notNil
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1296
         and:[(aClass implements:sel) not]]]
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1297
        ) ifTrue:[
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1298
            self compile:(sel asString, code) forClass:aClass inCategory:catg
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1299
        ]
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1300
    ]
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1301
!
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1302
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1303
generateMenuIn:aClass
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1304
    "generate code for #menu
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1305
    "
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1306
    |sel catg code|
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1307
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1308
    catg := 'accessing menus' asSymbol.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1309
    code :=   '\'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1310
            , '    "automatically generated by DataSetBuilder ..."\'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1311
            , '\'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1312
            , '    "get middleButton menu for selected cell in column"\'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1313
            , '\'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1314
            , '    ^ nil'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1315
            .
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1316
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1317
    columns do:[:aColumn|
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1318
        (     aColumn canSelect
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1319
         and:[(sel := aColumn menu) notNil
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1320
         and:[(aClass implements:sel) not]]
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1321
        ) ifTrue:[
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1322
            self compile:(sel asString, code) forClass:aClass inCategory:catg
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1323
        ]
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1324
    ]
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1325
!
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1326
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1327
generatePrintSelectorIn:aClass
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1328
    "generate code for #printSelector
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1329
    "
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1330
    |sel catg code|
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1331
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1332
    catg := 'accessing printSelector' asSymbol.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1333
    code :=   'aGC\'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1334
            , '    "automatically generated by DataSetBuilder ..."\'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1335
            , '\'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1336
            , '    "get drawable image or text on a gc"\'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1337
            , '\'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1338
            , '    ^ nil'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1339
            .
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1340
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1341
    columns do:[:aColumn|
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1342
        (     aColumn rendererType ~~ #rowSelector
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1343
         and:[(sel := aColumn printSelector) notNil
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1344
         and:[(aClass implements:sel) not]]
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1345
        ) ifTrue:[
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1346
            self compile:(sel asString, code) forClass:aClass inCategory:catg
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1347
        ]
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1348
    ]
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1349
!
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1350
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1351
generateReadSelectorIn:aClass
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1352
    "generate code for #readSelector
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1353
    "
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1354
    |sel catg code bCode|
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1355
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1356
    catg := 'accessing readSelector' asSymbol.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1357
    code :=   '\'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1358
            , '    "automatically generated by DataSetBuilder ..."\'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1359
            , '\'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1360
            , '    "get value"\'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1361
            , '\'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1362
            .
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1363
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1364
    columns do:[:aColumn|
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1365
        (     aColumn rendererType ~~ #rowSelector 
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1366
         and:[(sel := aColumn readSelector) notNil
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1367
         and:[(aClass implements:sel) not]]
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1368
        ) ifTrue:[
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1369
            (aColumn printSelector isNil or:[aColumn canSelect]) ifTrue:[
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1370
                bCode := sel asString, code.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1371
                aColumn rendererType == #CheckToggle ifFalse:[
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1372
                    bCode := bCode, '    ^ nil'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1373
                ] ifTrue:[
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1374
                    bCode := bCode, '    ^ true'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1375
                ]. 
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1376
                self compile:bCode forClass:aClass inCategory:catg
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1377
            ]
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1378
        ]
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1379
    ]
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1380
!
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1381
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1382
generateWriteSelectorIn:aClass
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1383
    "generate code for #writeSelector
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1384
    "
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1385
    |sel catg code|
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1386
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1387
    catg := 'accessing writeSelector' asSymbol.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1388
    code :=   'aValue\'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1389
            , '    "automatically generated by DataSetBuilder ..."\'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1390
            , '\'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1391
            , '    "set value"\'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1392
            .
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1393
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1394
    columns do:[:aColumn|
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1395
        (     (sel := aColumn writeSelector) notNil 
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1396
         and:[(aClass implements:sel) not]
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1397
        ) ifTrue:[
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1398
            self compile:(sel asString, code) forClass:aClass inCategory:catg
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1399
        ]
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1400
    ]
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1401
! !
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1402
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1403
!DataSetBuilder methodsFor:'initialization'!
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1404
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1405
initialize
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1406
    "setup aspects used by column description specifications
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1407
    "
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1408
    |holder|
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1409
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1410
    super initialize.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1411
    selectedColumnIndex := 0.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1412
    tabSelectionIndex   := 0.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1413
    columns := OrderedCollection new.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1414
    aspects := IdentityDictionary new.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1415
    hasChanged := false.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1416
    isModified := false.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1417
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1418
    #(
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1419
        label
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1420
        canSelect
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1421
        choices
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1422
        editorType
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1423
        formatString
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1424
        size
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1425
        type
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1426
        width
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1427
        minWidth
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1428
        height
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1429
        menu
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1430
        printSelector
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1431
        readSelector
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1432
        rendererType
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1433
        showColSeparator
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1434
        showRowSeparator
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1435
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1436
     ) do:[:aKey|
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1437
        aspects at:aKey put:(holder := ValueHolder new).
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1438
        holder addDependent:self.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1439
    ].
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1440
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1441
! !
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1442
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1443
!DataSetBuilder methodsFor:'private'!
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1444
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1445
resolveClassNamed
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1446
    "returns current class or nil
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1447
    "
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1448
    ^ Smalltalk resolveName:className inClass:self class.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1449
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1450
!
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1451
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1452
updateColumnView
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1453
    "update column view from column descriptions
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1454
    "
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1455
    columnView notNil ifTrue:[
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1456
        columnView columnDescriptors:columns.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1457
    ].
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1458
! !
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1459
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1460
!DataSetBuilder methodsFor:'queries'!
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1461
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1462
hasChanged
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1463
    "returns true if changes are done to the original column description
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1464
    "
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1465
    ^ hasChanged
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1466
!
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1467
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1468
modified
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1469
    "returns true if current specification is modified
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1470
    "
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1471
    ^ self modifiedChannel value
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1472
! !
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1473
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1474
!DataSetBuilder methodsFor:'selection'!
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1475
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1476
selectedColumn
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1477
    "returns selected column or nil
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1478
    "
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1479
    ^ selectedColumnIndex == 0 ifFalse:[columns at:selectedColumnIndex]
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1480
                                ifTrue:[nil]
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1481
!
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1482
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1483
selectedColumnIndex
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1484
    "returns selected column index or 0
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1485
    "
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1486
    ^ selectedColumnIndex
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1487
!
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1488
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1489
selectedColumnIndex:something
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1490
    "change selected column and update specifications
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1491
    "
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1492
    something == selectedColumnIndex ifFalse:[
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1493
        selectedColumnIndex := something ? 0.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1494
        self cancel.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1495
    ].
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1496
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1497
!
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1498
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1499
tabSelectionIndex
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1500
    "returns selected tab index or 0
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1501
    "
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1502
    ^ tabSelectionIndex
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1503
!
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1504
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1505
tabSelectionIndex:something
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1506
    "change selected tab and set corresponding specification
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1507
    "
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1508
    |specSelector|
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1509
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1510
    something == tabSelectionIndex ifTrue:[
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1511
        ^ self
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1512
    ].
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1513
    self selectedColumn isNil ifTrue:[
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1514
        tabSelectionIndex == 0 ifTrue:[^ self ].
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1515
        tabSelectionIndex := 0
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1516
    ] ifFalse:[
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1517
        (tabSelectionIndex := something) ~~ 0 ifTrue:[
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1518
            specSelector := (self class slices at:tabSelectionIndex) last.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1519
        ]
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1520
    ].
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1521
    self specChannel value:specSelector
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1522
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1523
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1524
! !
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1525
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1526
!DataSetBuilder class methodsFor:'documentation'!
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1527
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1528
version
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1529
    ^ '$Header$'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1530
! !