DataSetBuilder.st
author ca
Wed, 15 Oct 1997 12:59:56 +0200
changeset 332 b895330fc7aa
child 333 a2e23dea36bf
permissions -rw-r--r--
intitial checkin
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
className
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   841
    ^ (Smalltalk resolveName:className inClass:self class) notNil ifTrue:[className] ifFalse:[nil]
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   842
!
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   843
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   844
className:aClassName
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   845
    |cls|
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   846
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   847
    superclassName := nil.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   848
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   849
    (className := aClassName) notNil ifTrue:[
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   850
        (cls := self resolveClassNamed) notNil ifTrue:[
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   851
            superclassName := cls superclass name asString.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   852
        ] ifFalse:[
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   853
            superclassName := 'Object'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   854
        ]
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   855
    ]
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   856
!
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   857
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   858
columns
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   859
    "returns list of columns
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   860
    "
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   861
    ^ columns
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   862
!
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   863
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   864
columns:aListOfColumns fromView:aColumnView
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   865
    "setup columns from a column view
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   866
    "
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   867
    |list|
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   868
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   869
    columnView := aColumnView.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   870
    columns    := OrderedCollection new.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   871
    list       := self seqList.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   872
    hasChanged := false.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   873
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   874
    list removeAll.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   875
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   876
    aListOfColumns size ~~ 0 ifTrue:[
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   877
        aListOfColumns do:[:aCol|
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   878
            columns add:(aCol copy).
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   879
            aCol rendererType == #rowSelector ifFalse:[list add:(aCol label)]
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   880
                                               ifTrue:[list add:'Row Selector'].
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   881
        ]
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   882
    ].
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   883
! !
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   884
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   885
!DataSetBuilder methodsFor:'accessing menu'!
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   886
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   887
columnMenu
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   888
    "this window spec was automatically generated by the UI Builder"
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   889
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   890
    ^ self class columnMenu
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   891
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
doBrowseClass
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   896
    |cls|
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   897
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   898
    (cls := self resolveClassNamed) notNil ifTrue:[
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   899
        SystemBrowser openInClass:cls
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   900
    ] ifFalse:[
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   901
        self information:'no class yet'.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   902
    ].
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
doCreateColumn
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   909
    "create a new column after selected column or at left (nothing selected)
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   910
    "
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   911
    |label list|
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   912
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   913
    list := self seqList.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   914
    label := 'column ', list size printString.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   915
    columns add:(DataSetColumnSpec label:label selector:#ToBeDefined) afterIndex:selectedColumnIndex.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   916
    self seqList add:label afterIndex:selectedColumnIndex.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   917
    hasChanged := true.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   918
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   919
    self modified ifFalse:[
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   920
        self selectedColumnModel value:(selectedColumnIndex + 1)
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   921
    ].
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   922
    self updateColumnView.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   923
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   924
!
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   925
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   926
doCutColumn
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   927
    "remove selected column
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   928
    "
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   929
    |idx|
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   930
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   931
    (idx := selectedColumnIndex) ~~ 0 ifTrue:[
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   932
        self selectedColumnModel value:0.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   933
        self seqList removeIndex:idx.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   934
    ].
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   935
!
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   936
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   937
doDefineClass
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   938
    "launch a dialog to define class and superclass
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   939
    "
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   940
    |aspects cls oldClass oldSuper|
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   941
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   942
    aspects  := IdentityDictionary new.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   943
    oldClass := className.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   944
    oldSuper := superclassName.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   945
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   946
    [true] whileTrue:[
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   947
        className notNil ifTrue:[
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   948
            (cls := self resolveClassNamed) notNil ifTrue:[
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   949
                superclassName := cls superclass name asString.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   950
            ].
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   951
            aspects at:#classNameChannel put:className asValue
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   952
        ] ifFalse:[
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   953
            aspects at:#classNameChannel put:'DSVRow' asValue
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   954
        ].
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   955
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   956
        superclassName notNil ifTrue:[
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   957
            aspects at:#superclassNameChannel put:superclassName asValue
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   958
        ] ifFalse:[
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   959
            aspects at:#superclassNameChannel put:'Object' asValue
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   960
        ].
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   961
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   962
        (self openDialogInterface:#defineClassNameSpec withBindings:aspects) ifFalse:[
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   963
            className := oldClass.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   964
            superclassName := oldSuper.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   965
          ^ self
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   966
        ].
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   967
        className      := ((aspects at:#classNameChannel) value)      withoutSeparators.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   968
        superclassName := ((aspects at:#superclassNameChannel) value) withoutSeparators.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   969
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   970
        className size == 0 ifTrue:[
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   971
            className := nil.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   972
            self information:'no valid className'.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   973
        ] ifFalse:[
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   974
            cls := self resolveClassNamed.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   975
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   976
            cls notNil ifTrue:[
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   977
                cls := cls superclass name asString
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   978
            ].
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   979
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   980
            superclassName size == 0 ifTrue:[        
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   981
                cls notNil ifTrue:[
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   982
                    superclassName := cls
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   983
                ] ifFalse:[
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   984
                    superclassName := 'Object'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   985
                ].
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   986
                self information:( 'set superclassName' ).
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   987
            ] ifFalse:[
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   988
                (cls isNil or:[superclassName = cls]) ifTrue:[
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   989
                    hasChanged := true.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   990
                    ^ self
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   991
                ].
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   992
                self information:('a global named ' , className , ' exists,\' ,
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   993
                                  'but is not a subclass of ' , superclassName, '.\\' ,
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   994
                                  'Check and try again if that is not what you want.') withCRs.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   995
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   996
                superclassName := cls.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
   997
            ]
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
doGenerateCode
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1003
    |cls superclass|
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1004
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1005
    className isNil ifTrue:[
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1006
        ^ self information:'no class defined'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1007
    ].
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1008
    cls := self resolveClassNamed.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1009
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1010
    cls isNil ifTrue:[
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1011
        superclass := Smalltalk resolveName:superclassName inClass:self class.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1012
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1013
        superclass isNil ifTrue:[
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1014
            ^ self information:'no superclass defined'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1015
        ].
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1016
        (self confirm:'create ' , className , ' ?') ifFalse:[
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1017
            ^ self
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1018
        ].
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1019
        cls := superclass subclass:(className asSymbol)
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1020
                     instanceVariableNames:''
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1021
                     classVariableNames:''
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1022
                     poolDictionaries:''
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1023
                     category:'Applications'.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1024
    ].
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1025
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1026
    self generateChoicesIn:cls.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1027
    self generateMenuIn:cls.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1028
    self generatePrintSelectorIn:cls.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1029
    self generateReadSelectorIn:cls.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1030
    self generateWriteSelectorIn:cls.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1031
!
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1032
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1033
doMoveColumn:upOrDown
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1034
    "move selected column up or down
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1035
    "
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1036
    |idx list label col size|
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1037
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1038
    (idx := selectedColumnIndex) == 0 ifTrue:[
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1039
        ^ self
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1040
    ].
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1041
    list := self seqList.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1042
    size := list size.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1043
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1044
    size == 1 ifTrue:[
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1045
        ^ self
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1046
    ].
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1047
    hasChanged := true.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1048
    selectedColumnIndex := 0.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1049
    label := list at:idx.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1050
    col   := columns at:idx.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1051
    list    removeIndex:idx.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1052
    columns removeIndex:idx.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1053
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1054
    upOrDown == #up ifTrue:[
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1055
        idx == 1 ifTrue:[idx := size]
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1056
                ifFalse:[idx := idx - 1]
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1057
    ] ifFalse:[
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1058
        idx == size ifTrue:[idx := 1]
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1059
                   ifFalse:[idx := idx + 1]
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1060
    ].
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1061
    columns add:col   beforeIndex:idx.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1062
    list    add:label beforeIndex:idx.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1063
    self selectedColumnModel value:idx.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1064
    self updateColumnView.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1065
!
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1066
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1067
mainMenu
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1068
    "this window spec was automatically generated by the UI Builder"
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1069
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1070
    ^ self class mainMenu
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1071
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
subMenu
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1076
    "this window spec was automatically generated by the UI Builder"
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1077
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1078
    ^ self class subMenu
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1079
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
!DataSetBuilder methodsFor:'actions'!
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1084
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1085
accept
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1086
    "accept changes made
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1087
    "
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1088
    |column type|
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1089
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1090
    self modifiedChannel value == false ifTrue:[
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1091
        ^ self
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1092
    ].
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1093
    isModified := true.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1094
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1095
    (column := self selectedColumn) isNil ifTrue:[
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1096
        ^ self cancel
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1097
    ].
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1098
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1099
    type := (aspects at:#rendererType) value.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1100
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1101
    type == #rowSelector ifTrue:[
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1102
        #( label width minWidth editorType choices readSelector printSelector
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1103
           formatString type size height canSelect
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1104
         ) do:[:aKey| (aspects at:aKey) value:nil ].
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1105
    ].
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1106
        
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1107
    aspects keysAndValuesDo:[:aKey :aModel|
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1108
        column perform:(aKey , ':') asSymbol with:(aModel value)
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1109
    ].
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1110
    self seqList at:selectedColumnIndex put:((aspects at:#label) value).
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1111
    self updateColumnView.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1112
    self cancel
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1113
!
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1114
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1115
cancel
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1116
    "remove all changes and reload selected column
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1117
    "
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1118
    |column|
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1119
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1120
    isModified := true.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1121
    (column := self selectedColumn) isNil ifTrue:[
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1122
        self tabModel value:0.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1123
    ] ifFalse:[
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1124
        aspects keysAndValuesDo:[:aKey :aModel|
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1125
            aModel value:(column perform:aKey)
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1126
        ].
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1127
        tabSelectionIndex == 0 ifTrue:[self tabModel value:1].
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1128
    ].
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1129
    self modifiedChannel value:false.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1130
    self isNotModified   value:true.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1131
    isModified := false.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1132
! !
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1133
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1134
!DataSetBuilder methodsFor:'aspects'!
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1135
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1136
aspectFor:aKey
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1137
    "returns aspect for a key or nil
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1138
    "
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1139
  ^ aspects at:aKey ifAbsent:[ super aspectFor:aKey ]
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1140
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
editorTypeList
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1145
    "generate list of supported editor types
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1146
    "
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1147
    |list|
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1148
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1149
    (list := builder bindingAt:#editorTypeList) isNil ifTrue:[
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1150
        list := OrderedCollection new.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1151
        DataSetColumnSpec slices do:[:aSlice||type|
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1152
            type := aSlice at:1.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1153
            (list includes:type) ifFalse:[list add:type].
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1154
        ].
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1155
        builder aspectAt:#editorTypeList put:list.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1156
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1157
    ].
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1158
    ^ list
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1159
!
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1160
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1161
isNotModified
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1162
    "returns a boolean value holder which is set to true if something is modified
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1163
     and not accepted
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1164
    "
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1165
    ^ builder valueAspectFor:#isNotModified initialValue:true
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1166
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
modifiedChannel
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1172
    "returns a boolean value holder which is set to true if something is modified
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1173
     and not accepted
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1174
    "
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1175
    ^ builder booleanValueAspectFor:#modifiedChannel
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1176
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
rendererTypeList
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1182
    "generate list of supported renderer types
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1183
    "
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1184
    |list|
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1185
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1186
    (list := builder bindingAt:#rendererTypeList) isNil ifTrue:[
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1187
        list := OrderedCollection new.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1188
        DataSetColumnSpec slices do:[:aSlice||type|
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1189
            type := aSlice at:2.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1190
            (list includes:type) ifFalse:[list add:type].
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1191
        ].
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1192
        builder aspectAt:#rendererTypeList put:list.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1193
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1194
    ].
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1195
    ^ list
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1196
!
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1197
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1198
selectedColumnModel
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1199
    "automatically generated by UIPainter ..."
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1200
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1201
    |holder|
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1202
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1203
    (holder := builder bindingAt:#selectedColumnModel) isNil ifTrue:[
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1204
        holder := AspectAdaptor new subject:self; forAspect:#selectedColumnIndex.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1205
        builder aspectAt:#selectedColumnModel put:holder.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1206
    ].
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1207
    ^ holder
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1208
!
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1209
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1210
seqList
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1211
    "automatically generated by UIPainter ..."
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1212
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1213
    |list|
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1214
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1215
    (list := builder bindingAt:#seqList) isNil ifTrue:[
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1216
        builder aspectAt:#seqList put:(list :=  List new).
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1217
    ].
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1218
    ^ list
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1219
!
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1220
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1221
specChannel
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1222
    "automatically generated by UIPainter ..."
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1223
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1224
    |holder|
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1225
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1226
    (holder := builder bindingAt:#specChannel) isNil ifTrue:[
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1227
        builder aspectAt:#specChannel put:(holder :=  ValueHolder new).
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1228
    ].
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1229
    ^ holder
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1230
!
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1231
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1232
tabList
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1233
    "automatically generated by UIPainter ..."
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1234
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1235
    ^ self class slices collect:[:aSlice| aSlice first ]
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1236
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1237
!
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1238
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1239
tabModel
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1240
    "returns a value holder which keeps the index of the current selected tab or 0
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1241
    "
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1242
    |holder|
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1243
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1244
    (holder := builder bindingAt:#tabModel) isNil ifTrue:[
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1245
        holder := AspectAdaptor new subject:self; forAspect:#tabSelectionIndex.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1246
        builder aspectAt:#tabModel put:holder.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1247
    ].
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1248
    ^ holder
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1249
!
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1250
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1251
typeList
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1252
    "automatically generated by UIPainter ..."
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1253
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1254
    ^ #( string password number numberOrNil symbolOrNil )
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1255
! !
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1256
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1257
!DataSetBuilder methodsFor:'change & update'!
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1258
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1259
update:something with:aParameter from:someObject
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1260
    "one of my aspects has changed; update modified channel
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1261
    "
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1262
    isModified ifFalse:[
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1263
        isModified := hasChanged := true.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1264
        self modifiedChannel value:true.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1265
        self isNotModified   value:false.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1266
    ]
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1267
! !
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1268
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1269
!DataSetBuilder methodsFor:'code generation'!
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1270
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1271
compile:aCode forClass:aClass inCategory:aCategory
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1272
    "compile method for class in a category
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1273
    "
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1274
    ByteCodeCompiler compile:aCode withCRs forClass:aClass inCategory:aCategory
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1275
!
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1276
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1277
generateChoicesIn:aClass
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1278
    "generate code for #choices
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1279
    "
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1280
    |sel catg code|
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1281
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1282
    catg := 'accessing choices' asSymbol.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1283
    code :=   '\'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1284
            , '    "automatically generated by DataSetBuilder ..."\'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1285
            , '\'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1286
            , '    "get choices for visual editor; (a list of labels)\'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1287
            , '\'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1288
            , '    ^ nil'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1289
            .
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1290
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1291
    columns do:[:aColumn|
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1292
        (     aColumn canSelect
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1293
         and:[aColumn rendererType ~~ #rowSelector
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1294
         and:[(sel := aColumn choices) notNil
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1295
         and:[(aClass implements:sel) not]]]
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1296
        ) ifTrue:[
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1297
            self compile:(sel asString, code) forClass:aClass inCategory:catg
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1298
        ]
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
generateMenuIn:aClass
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1303
    "generate code for #menu
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1304
    "
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1305
    |sel catg code|
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1306
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1307
    catg := 'accessing menus' asSymbol.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1308
    code :=   '\'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1309
            , '    "automatically generated by DataSetBuilder ..."\'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1310
            , '\'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1311
            , '    "get middleButton menu for selected cell in column"\'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1312
            , '\'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1313
            , '    ^ nil'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1314
            .
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1315
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1316
    columns do:[:aColumn|
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1317
        (     aColumn canSelect
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1318
         and:[(sel := aColumn menu) notNil
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1319
         and:[(aClass implements:sel) not]]
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1320
        ) ifTrue:[
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1321
            self compile:(sel asString, code) forClass:aClass inCategory:catg
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1322
        ]
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
generatePrintSelectorIn:aClass
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1327
    "generate code for #printSelector
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1328
    "
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1329
    |sel catg code|
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1330
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1331
    catg := 'accessing printSelector' asSymbol.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1332
    code :=   'aGC\'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1333
            , '    "automatically generated by DataSetBuilder ..."\'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1334
            , '\'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1335
            , '    "get drawable image or text on a gc"\'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1336
            , '\'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1337
            , '    ^ nil'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1338
            .
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1339
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1340
    columns do:[:aColumn|
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1341
        (     aColumn rendererType ~~ #rowSelector
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1342
         and:[(sel := aColumn printSelector) notNil
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1343
         and:[(aClass implements:sel) not]]
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1344
        ) ifTrue:[
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1345
            self compile:(sel asString, code) forClass:aClass inCategory:catg
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1346
        ]
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
generateReadSelectorIn:aClass
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1351
    "generate code for #readSelector
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1352
    "
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1353
    |sel catg code bCode|
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1354
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1355
    catg := 'accessing readSelector' asSymbol.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1356
    code :=   '\'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1357
            , '    "automatically generated by DataSetBuilder ..."\'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1358
            , '\'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1359
            , '    "get value"\'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1360
            , '\'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1361
            .
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1362
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1363
    columns do:[:aColumn|
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1364
        (     aColumn rendererType ~~ #rowSelector 
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1365
         and:[(sel := aColumn readSelector) notNil
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1366
         and:[(aClass implements:sel) not]]
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1367
        ) ifTrue:[
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1368
            (aColumn printSelector isNil or:[aColumn canSelect]) ifTrue:[
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1369
                bCode := sel asString, code.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1370
                aColumn rendererType == #CheckToggle ifFalse:[
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1371
                    bCode := bCode, '    ^ nil'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1372
                ] ifTrue:[
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1373
                    bCode := bCode, '    ^ true'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1374
                ]. 
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1375
                self compile:bCode forClass:aClass inCategory:catg
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1376
            ]
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
generateWriteSelectorIn:aClass
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1382
    "generate code for #writeSelector
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1383
    "
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1384
    |sel catg code|
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1385
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1386
    catg := 'accessing writeSelector' asSymbol.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1387
    code :=   'aValue\'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1388
            , '    "automatically generated by DataSetBuilder ..."\'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1389
            , '\'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1390
            , '    "set value"\'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1391
            .
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1392
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1393
    columns do:[:aColumn|
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1394
        (     (sel := aColumn writeSelector) notNil 
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1395
         and:[(aClass implements:sel) not]
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1396
        ) ifTrue:[
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1397
            self compile:(sel asString, code) forClass:aClass inCategory:catg
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1398
        ]
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
!DataSetBuilder methodsFor:'initialization'!
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1403
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1404
initialize
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1405
    "setup aspects used by column description specifications
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1406
    "
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1407
    |holder|
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1408
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1409
    super initialize.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1410
    selectedColumnIndex := 0.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1411
    tabSelectionIndex   := 0.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1412
    columns := OrderedCollection new.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1413
    aspects := IdentityDictionary new.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1414
    hasChanged := false.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1415
    isModified := false.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1416
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1417
    #(
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1418
        label
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1419
        canSelect
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1420
        choices
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1421
        editorType
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1422
        formatString
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1423
        size
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1424
        type
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1425
        width
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1426
        minWidth
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1427
        height
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1428
        menu
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1429
        printSelector
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1430
        readSelector
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1431
        rendererType
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1432
        showColSeparator
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1433
        showRowSeparator
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1434
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1435
     ) do:[:aKey|
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1436
        aspects at:aKey put:(holder := ValueHolder new).
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1437
        holder addDependent:self.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1438
    ].
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
!DataSetBuilder methodsFor:'private'!
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1443
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1444
resolveClassNamed
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1445
    "returns current class or nil
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1446
    "
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1447
    ^ Smalltalk resolveName:className inClass:self class.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1448
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1449
!
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1450
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1451
updateColumnView
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1452
    "update column view from column descriptions
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1453
    "
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1454
    columnView notNil ifTrue:[
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1455
        columnView columnDescriptors:columns.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1456
    ].
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1457
! !
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1458
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1459
!DataSetBuilder methodsFor:'queries'!
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1460
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1461
hasChanged
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1462
    "returns true if changes are done to the original column description
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1463
    "
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1464
    ^ hasChanged
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1465
!
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1466
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1467
modified
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1468
    "returns true if current specification is modified
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1469
    "
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1470
    ^ self modifiedChannel value
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1471
! !
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1472
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1473
!DataSetBuilder methodsFor:'selection'!
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1474
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1475
selectedColumn
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1476
    "returns selected column or nil
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1477
    "
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1478
    ^ selectedColumnIndex == 0 ifFalse:[columns at:selectedColumnIndex]
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1479
                                ifTrue:[nil]
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1480
!
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1481
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1482
selectedColumnIndex
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1483
    "returns selected column index or 0
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1484
    "
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1485
    ^ selectedColumnIndex
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1486
!
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1487
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1488
selectedColumnIndex:something
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1489
    "change selected column and update specifications
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1490
    "
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1491
    something == selectedColumnIndex ifFalse:[
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1492
        selectedColumnIndex := something ? 0.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1493
        self cancel.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1494
    ].
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
tabSelectionIndex
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1499
    "returns selected tab index or 0
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1500
    "
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1501
    ^ tabSelectionIndex
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1502
!
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1503
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1504
tabSelectionIndex:something
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1505
    "change selected tab and set corresponding specification
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1506
    "
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1507
    |specSelector|
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1508
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1509
    something == tabSelectionIndex ifTrue:[
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1510
        ^ self
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1511
    ].
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1512
    self selectedColumn isNil ifTrue:[
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1513
        tabSelectionIndex == 0 ifTrue:[^ self ].
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1514
        tabSelectionIndex := 0
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1515
    ] ifFalse:[
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1516
        (tabSelectionIndex := something) ~~ 0 ifTrue:[
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1517
            specSelector := (self class slices at:tabSelectionIndex) last.
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1518
        ]
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1519
    ].
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1520
    self specChannel value:specSelector
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1521
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
!DataSetBuilder class methodsFor:'documentation'!
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1526
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1527
version
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1528
    ^ '$Header$'
b895330fc7aa intitial checkin
ca
parents:
diff changeset
  1529
! !