UISelectionPanel.st
changeset 985 ec4907d7cdfd
parent 962 54f981030675
child 987 1147acb8ac80
equal deleted inserted replaced
984:f1b6d6b68510 985:ec4907d7cdfd
     1 "
     1 "
     2  COPYRIGHT (c) 1997 by Claus Gittinger / eXept Software AG
     2  COPYRIGHT (c) 1997 by Claus Gittinger / eXept Software AG
     3               All Rights Reserved
     3 	      All Rights Reserved
     4 
     4 
     5  This software is furnished under a license and may be used
     5  This software is furnished under a license and may be used
     6  only in accordance with the terms of that license and with the
     6  only in accordance with the terms of that license and with the
     7  inclusion of the above copyright notice.   This software may not
     7  inclusion of the above copyright notice.   This software may not
     8  be provided or otherwise made available to, or used by, any
     8  be provided or otherwise made available to, or used by, any
    29 !UISelectionPanel class methodsFor:'documentation'!
    29 !UISelectionPanel class methodsFor:'documentation'!
    30 
    30 
    31 copyright
    31 copyright
    32 "
    32 "
    33  COPYRIGHT (c) 1997 by Claus Gittinger / eXept Software AG
    33  COPYRIGHT (c) 1997 by Claus Gittinger / eXept Software AG
    34               All Rights Reserved
    34 	      All Rights Reserved
    35 
    35 
    36  This software is furnished under a license and may be used
    36  This software is furnished under a license and may be used
    37  only in accordance with the terms of that license and with the
    37  only in accordance with the terms of that license and with the
    38  inclusion of the above copyright notice.   This software may not
    38  inclusion of the above copyright notice.   This software may not
    39  be provided or otherwise made available to, or used by, any
    39  be provided or otherwise made available to, or used by, any
    48 "
    48 "
    49     implements a selection panel, keeping widgets which could be placed
    49     implements a selection panel, keeping widgets which could be placed
    50     into the UIPainter by drag & drop.
    50     into the UIPainter by drag & drop.
    51 
    51 
    52     [start with:]
    52     [start with:]
    53         UISelectionPanel open
    53 	UISelectionPanel open
    54 
    54 
    55     [author:]
    55     [author:]
    56         Claus Gittinger
    56 	Claus Gittinger
    57         Claus Atzkern
    57 	Claus Atzkern
    58 
    58 
    59     [see also:]
    59     [see also:]
    60         TabView
    60 	TabView
    61         NoteBookView
    61 	NoteBookView
    62         UIGalleryView
    62 	UIGalleryView
    63         UIPainter
    63 	UIPainter
    64 
    64 
    65 "
    65 "
    66 
    66 
    67 ! !
    67 ! !
    68 
    68 
    80 !UISelectionPanel class methodsFor:'accessing'!
    80 !UISelectionPanel class methodsFor:'accessing'!
    81 
    81 
    82 specifications
    82 specifications
    83 
    83 
    84     ^ #(
    84     ^ #(
    85         #( 'Standard'  #( 
    85 	#( 'Standard'  #( 
    86                             #('Buttons' standardButtons)
    86 			    #('Buttons' standardButtons)
    87                             #('Menus'   standardMenus)
    87 			    #('Menus'   standardMenus)
    88                             #('Text'    standardTexts)
    88 			    #('Text'    standardTexts)
    89                             #('Lists'   standardLists)
    89 			    #('Lists'   standardLists)
    90                             #('Groups'  standardGroups)
    90 			    #('Groups'  standardGroups)
    91                             #('Misc'    standardMisc)
    91 			    #('Misc'    standardMisc)
    92                          )
    92 			 )
    93          )
    93 	 )
    94 
    94 
    95         #( 'Clipboard'  #(
    95 	#( 'Clipboard'  #(
    96                             #('Copy & Paste Buffer'     clipBoardSpec)
    96 			    #('Copy & Paste Buffer'     clipBoardSpec)
    97                           )
    97 			  )
    98          )
    98 	 )
    99 
    99 
   100         #( 'User Def.'   #userDefined )
   100 	#( 'User Def.'   #userDefined )
   101      )
   101      )
   102 
   102 
   103     "Modified: / 21.4.1998 / 12:04:22 / cg"
   103     "Modified: / 21.4.1998 / 12:04:22 / cg"
   104 !
   104 !
   105 
   105 
   118     UserSpecs := aSpecAccessSelector.
   118     UserSpecs := aSpecAccessSelector.
   119     UserLabels := aLabelListAccessSelector.
   119     UserLabels := aLabelListAccessSelector.
   120 
   120 
   121     "
   121     "
   122      UISelectionPanel 
   122      UISelectionPanel 
   123         userClass:UISelectionPanel::VariableUserDefinedGallery
   123 	userClass:UISelectionPanel::VariableUserDefinedGallery
   124         specSelector:#listOfSelectors
   124 	specSelector:#listOfSelectors
   125         labelSelector:#listOfLabels
   125 	labelSelector:#listOfLabels
   126     "
   126     "
   127 
   127 
   128     "Modified: / 5.12.1997 / 13:54:47 / cg"
   128     "Modified: / 5.12.1997 / 13:54:47 / cg"
   129     "Created: / 5.12.1997 / 13:56:10 / cg"
   129     "Created: / 5.12.1997 / 13:56:10 / cg"
   130 ! !
   130 ! !
   145     <resource: #canvas>
   145     <resource: #canvas>
   146 
   146 
   147     ^
   147     ^
   148      
   148      
   149        #(#FullSpec
   149        #(#FullSpec
   150           #window: 
   150 	  #window: 
   151            #(#WindowSpec
   151 	   #(#WindowSpec
   152               #name: 'uIPainterView'
   152 	      #name: 'uIPainterView'
   153               #layout: #(#LayoutFrame 110 0 366 0 424 0 581 0)
   153 	      #layout: #(#LayoutFrame 110 0 366 0 424 0 581 0)
   154               #label: 'Painter'
   154 	      #label: 'Painter'
   155               #min: #(#Point 10 10)
   155 	      #min: #(#Point 10 10)
   156               #max: #(#Point 1280 1024)
   156 	      #max: #(#Point 1280 1024)
   157               #bounds: #(#Rectangle 110 366 425 582)
   157 	      #bounds: #(#Rectangle 110 366 425 582)
   158               #usePreferredExtent: false
   158 	      #usePreferredExtent: false
   159           )
   159 	  )
   160           #component: 
   160 	  #component: 
   161            #(#SpecCollection
   161 	   #(#SpecCollection
   162               #collection: 
   162 	      #collection: 
   163                #(
   163 	       #(
   164                  #(#LabelSpec
   164 		 #(#LabelSpec
   165                     #name: 'title'
   165 		    #name: 'title'
   166                     #layout: #(#Point 5 10)
   166 		    #layout: #(#Point 5 10)
   167                     #label: 'Class & selectors to access user specs:'
   167 		    #label: 'Class & selectors to access user specs:'
   168                     #adjust: #left
   168 		    #adjust: #left
   169                     #resizeForLabel: true
   169 		    #resizeForLabel: true
   170                 )
   170 		)
   171                  #(#LabelSpec
   171 		 #(#LabelSpec
   172                     #name: 'classLabel'
   172 		    #name: 'classLabel'
   173                     #layout: #(#AlignmentOrigin 68 0.11 51 0 1 0.5)
   173 		    #layout: #(#AlignmentOrigin 68 0.11 51 0 1 0.5)
   174                     #label: 'Class:'
   174 		    #label: 'Class:'
   175                     #adjust: #right
   175 		    #adjust: #right
   176                     #resizeForLabel: true
   176 		    #resizeForLabel: true
   177                 )
   177 		)
   178                  #(#InputFieldSpec
   178 		 #(#InputFieldSpec
   179                     #name: 'classField'
   179 		    #name: 'classField'
   180                     #layout: #(#LayoutFrame 74 0.11 39 0 -5 1.0 61 0)
   180 		    #layout: #(#LayoutFrame 74 0.11 39 0 -5 1.0 61 0)
   181                     #tabable: true
   181 		    #tabable: true
   182                     #model: #className
   182 		    #model: #className
   183                     #type: #string
   183 		    #type: #string
   184                 )
   184 		)
   185                  #(#LabelSpec
   185 		 #(#LabelSpec
   186                     #name: 'labelsLabel'
   186 		    #name: 'labelsLabel'
   187                     #layout: #(#AlignmentOrigin 68 0.11 74 0 1 0.5)
   187 		    #layout: #(#AlignmentOrigin 68 0.11 74 0 1 0.5)
   188                     #label: 'Labels:'
   188 		    #label: 'Labels:'
   189                     #adjust: #right
   189 		    #adjust: #right
   190                     #resizeForLabel: true
   190 		    #resizeForLabel: true
   191                 )
   191 		)
   192                  #(#InputFieldSpec
   192 		 #(#InputFieldSpec
   193                     #name: 'labelsField'
   193 		    #name: 'labelsField'
   194                     #layout: #(#LayoutFrame 74 0.11 64 0 -5 1.0 86 0)
   194 		    #layout: #(#LayoutFrame 74 0.11 64 0 -5 1.0 86 0)
   195                     #tabable: true
   195 		    #tabable: true
   196                     #model: #labelsKey
   196 		    #model: #labelsKey
   197                     #type: #symbolOrNil
   197 		    #type: #symbolOrNil
   198                 )
   198 		)
   199                  #(#LabelSpec
   199 		 #(#LabelSpec
   200                     #name: 'specsLabel'
   200 		    #name: 'specsLabel'
   201                     #layout: #(#AlignmentOrigin 68 0.11 99 0 1 0.5)
   201 		    #layout: #(#AlignmentOrigin 68 0.11 99 0 1 0.5)
   202                     #label: 'Specifications:'
   202 		    #label: 'Specifications:'
   203                     #adjust: #right
   203 		    #adjust: #right
   204                     #resizeForLabel: true
   204 		    #resizeForLabel: true
   205                 )
   205 		)
   206                  #(#InputFieldSpec
   206 		 #(#InputFieldSpec
   207                     #name: 'specsField'
   207 		    #name: 'specsField'
   208                     #layout: #(#LayoutFrame 74 0.11 89 0 -5 1.0 111 0)
   208 		    #layout: #(#LayoutFrame 74 0.11 89 0 -5 1.0 111 0)
   209                     #tabable: true
   209 		    #tabable: true
   210                     #model: #specsKey
   210 		    #model: #specsKey
   211                     #type: #symbolOrNil
   211 		    #type: #symbolOrNil
   212                 )
   212 		)
   213                  #(#HorizontalPanelViewSpec
   213 		 #(#HorizontalPanelViewSpec
   214                     #name: 'commitPanel'
   214 		    #name: 'commitPanel'
   215                     #layout: #(#LayoutFrame 0 0.0 -23 1.0 0 1.0 0 1.0)
   215 		    #layout: #(#LayoutFrame 0 0.0 -23 1.0 0 1.0 0 1.0)
   216                     #component: 
   216 		    #component: 
   217                      #(#SpecCollection
   217 		     #(#SpecCollection
   218                         #collection: 
   218 			#collection: 
   219                          #(
   219 			 #(
   220                            #(#ActionButtonSpec
   220 			   #(#ActionButtonSpec
   221                               #name: 'cancel'
   221 			      #name: 'cancel'
   222                               #label: 'cancel'
   222 			      #label: 'cancel'
   223                               #tabable: true
   223 			      #tabable: true
   224                               #model: #cancel
   224 			      #model: #cancel
   225                               #extent: #(#Point 153 23)
   225 			      #extent: #(#Point 153 23)
   226                           )
   226 			  )
   227                            #(#ActionButtonSpec
   227 			   #(#ActionButtonSpec
   228                               #name: 'accept'
   228 			      #name: 'accept'
   229                               #label: 'ok'
   229 			      #label: 'ok'
   230                               #tabable: true
   230 			      #tabable: true
   231                               #model: #accept
   231 			      #model: #accept
   232                               #isDefault: true
   232 			      #isDefault: true
   233                               #extent: #(#Point 153 23)
   233 			      #extent: #(#Point 153 23)
   234                           )
   234 			  )
   235                         )
   235 			)
   236                     )
   236 		    )
   237                     #horizontalLayout: #fitSpace
   237 		    #horizontalLayout: #fitSpace
   238                     #verticalLayout: #fit
   238 		    #verticalLayout: #fit
   239                     #horizontalSpace: 3
   239 		    #horizontalSpace: 3
   240                     #verticalSpace: 3
   240 		    #verticalSpace: 3
   241                 )
   241 		)
   242                  #(#CheckBoxSpec
   242 		 #(#CheckBoxSpec
   243                     #name: 'updateDefaultResources'
   243 		    #name: 'updateDefaultResources'
   244                     #layout: #(#Point 5 133)
   244 		    #layout: #(#Point 5 133)
   245                     #model: #updateDefaultResources
   245 		    #model: #updateDefaultResources
   246                     #label: 'Update Default Resources'
   246 		    #label: 'Update Default Resources'
   247                 )
   247 		)
   248               )
   248 	      )
   249           )
   249 	  )
   250       )
   250       )
   251 !
   251 !
   252 
   252 
   253 windowSpec
   253 windowSpec
   254     "this window spec was automatically generated by the ST/X UIPainter"
   254     "This resource specification was automatically generated
   255 
   255      by the UIPainter of ST/X."
   256     "do not manually edit this - the painter/builder may not be able to
   256 
   257      handle the specification if its corrupted."
   257     "Do not manually edit this!! If it is corrupted,
       
   258      the UIPainter may not be able to read the specification."
   258 
   259 
   259     "
   260     "
   260      UIPainter new openOnClass:UISelectionPanel andSelector:#windowSpec
   261      UIPainter new openOnClass:UISelectionPanel andSelector:#windowSpec
   261      UISelectionPanel new openInterface:#windowSpec
   262      UISelectionPanel new openInterface:#windowSpec
   262     "
   263      UISelectionPanel open
   263     "UISelectionPanel open"
   264     "
       
   265 
       
   266     <resource: #canvas>
       
   267 
       
   268     ^
       
   269 
       
   270        #(#FullSpec
       
   271 	  #window: 
       
   272 	   #(#WindowSpec
       
   273 	      #name: 'Widget Gallery'
       
   274 	      #layout: #(#LayoutFrame 134 0 100 0 654 0 382 0)
       
   275 	      #label: 'Widget Gallery'
       
   276 	      #min: #(#Point 100 280)
       
   277 	      #max: #(#Point 1160 870)
       
   278 	      #bounds: #(#Rectangle 134 100 655 383)
       
   279 	      #usePreferredExtent: false
       
   280 	  )
       
   281 	  #component: 
       
   282 	   #(#SpecCollection
       
   283 	      #collection: 
       
   284 	       #(
       
   285 		 #(#UIGalleryViewSpec
       
   286 		    #name: 'gallery'
       
   287 		    #layout: #(#LayoutFrame 0 0.0 0 0.0 -40 1.0 0 1.0)
       
   288 		    #tabable: true
       
   289 		    #model: #galleryModel
       
   290 		    #menu: #galleryList
       
   291 		    #useIndex: true
       
   292 		    #minorKeys: #minorKeys
       
   293 		    #clientSpec: #clientSpec
       
   294 		    #raiseMenu: #raiseMenu
       
   295 		)
       
   296 		 #(#TabViewSpec
       
   297 		    #name: 'major'
       
   298 		    #layout: #(#LayoutFrame -40 1.0 30 0.0 0 1.0 0 1.0)
       
   299 		    #model: #majorChannel
       
   300 		    #menu: #majorList
       
   301 		    #direction: #right
       
   302 		    #useIndex: true
       
   303 		)
       
   304 	      )
       
   305 	  )
       
   306       )
       
   307 
       
   308     "Modified: / 5.9.1998 / 17:43:14 / cg"
       
   309 ! !
       
   310 
       
   311 !UISelectionPanel class methodsFor:'menus'!
       
   312 
       
   313 menuSelected
       
   314 
       
   315     <resource: #menu>
       
   316 
       
   317     ^ #(#Menu #(
       
   318 		#(#MenuItem
       
   319 			#'label:' 'copy'
       
   320 			#'value:' #copy
       
   321 		 )
       
   322 		#(#MenuItem
       
   323 			#'label:' 'cut'
       
   324 			#'value:' #cut
       
   325 		 )
       
   326 		)
       
   327 	       nil
       
   328 	       nil
       
   329 	)
       
   330 
       
   331     "Modified: / 29.10.1997 / 03:20:30 / cg"
       
   332 !
       
   333 
       
   334 menuUnselected
       
   335     <resource: #menu>
       
   336 
       
   337     ^ #(#Menu #(
       
   338 		#(#MenuItem
       
   339 			#'label:' 'paste'
       
   340 			#'value:' #paste
       
   341 		 )
       
   342 		)
       
   343 	       nil
       
   344 	       nil
       
   345 	)
       
   346 
       
   347     "Modified: / 29.10.1997 / 03:20:38 / cg"
       
   348 ! !
       
   349 
       
   350 !UISelectionPanel class methodsFor:'standard specifications'!
       
   351 
       
   352 standardButtons
       
   353     "This resource specification was automatically generated
       
   354      by the UIPainter of ST/X."
       
   355 
       
   356     "Do not manually edit this!! If it is corrupted,
       
   357      the UIPainter may not be able to read the specification."
       
   358 
       
   359     "
       
   360      UIPainter new openOnClass:UISelectionPanel andSelector:#standardButtons
       
   361      UISelectionPanel new openInterface:#standardButtons
       
   362     "
   264 
   363 
   265     <resource: #canvas>
   364     <resource: #canvas>
   266 
   365 
   267     ^
   366     ^
   268      
   367      
   269        #(#FullSpec
   368        #(#FullSpec
   270           #'window:' 
   369 	  #window: 
   271            #(#WindowSpec
   370 	   #(#WindowSpec
   272               #'name:' 'Widget Gallery'
   371 	      #name: 'Buttons'
   273               #'layout:' #(#LayoutFrame 78 0 70 0 598 0 352 0)
   372 	      #layout: #(#LayoutFrame 39 0 189 0 517 0 392 0)
   274               #'label:' 'Widget Gallery'
   373 	      #label: 'Buttons'
   275               #'min:' #(#Point 100 280)
   374 	      #min: #(#Point 10 10)
   276               #'max:' #(#Point 1160 870)
   375 	      #max: #(#Point 1280 1024)
   277               #'bounds:' #(#Rectangle 78 70 599 353)
   376 	      #bounds: #(#Rectangle 39 189 518 393)
   278           )
   377 	      #usePreferredExtent: false
   279           #'component:' 
   378 	  )
   280            #(#SpecCollection
   379 	  #component: 
   281               #'collection:' 
   380 	   #(#SpecCollection
   282                #(
   381 	      #collection: 
   283                  #(#UIGalleryViewSpec
   382 	       #(
   284                     #'name:' 'gallery'
   383 		 #(#ActionButtonSpec
   285                     #'layout:' #(#LayoutFrame 0 0.0 0 0.0 -40 1.0 0 1.0)
   384 		    #name: 'Button'
   286                     #'tabable:' true
   385 		    #layout: #(#LayoutFrame 15 0 15 0 140 0 37 0)
   287                     #'menu:' #galleryList
   386 		    #label: 'Button'
   288                     #'style:' 
   387 		    #translateLabel: true
   289                      #(#FontDescription
   388 		)
   290                         #helvetica #medium
   389 		 #(#ActionButtonSpec
   291                         #roman #'10'
   390 		    #name: 'Button - OK'
   292                     )
   391 		    #layout: #(#LayoutFrame 15 0 47 0 140 0 69 0)
   293                     #'model:' #galleryModel
   392 		    #label: 'OK'
   294                     #'useIndex:' true
   393 		    #translateLabel: true
   295                     #'minorKeys:' #minorKeys
   394 		    #model: #accept
   296                     #'clientSpec:' #clientSpec
   395 		)
   297                     #'raiseMenu:' #raiseMenu
   396 		 #(#ActionButtonSpec
   298                 )
   397 		    #name: 'Button - Cancel'
   299                  #(#TabViewSpec
   398 		    #layout: #(#LayoutFrame 15 0 79 0 140 0 101 0)
   300                     #'name:' 'major'
   399 		    #label: 'Cancel'
   301                     #'layout:' #(#LayoutFrame -40 1.0 30 0.0 0 1.0 0 1.0)
   400 		    #translateLabel: true
   302                     #'menu:' #majorList
   401 		    #model: #cancel
   303                     #'style:' 
   402 		)
   304                      #(#FontDescription
   403 		 #(#ActionButtonSpec
   305                         #helvetica #medium
   404 		    #name: 'Button - Help'
   306                         #roman #'10'
   405 		    #layout: #(#LayoutFrame 15 0 111 0 140 0 133 0)
   307                     )
   406 		    #label: 'Help'
   308                     #'model:' #majorChannel
   407 		    #translateLabel: true
   309                     #'direction:' #right
   408 		    #model: #help
   310                     #'useIndex:' true
   409 		)
   311                 )
   410 		 #(#ActionButtonSpec
   312               )
   411 		    #name: 'Button - Close'
   313           )
   412 		    #layout: #(#LayoutFrame 15 0 143 0 140 0 165 0)
       
   413 		    #label: 'Close'
       
   414 		    #translateLabel: true
       
   415 		    #model: #closeRequest
       
   416 		)
       
   417 		 #(#ToggleSpec
       
   418 		    #name: 'Toggle'
       
   419 		    #layout: #(#LayoutFrame 157 0 15 0 293 0 37 0)
       
   420 		    #label: 'Toggle'
       
   421 		    #isTriggerOnDown: true
       
   422 		    #translateLabel: true
       
   423 		    #lampColor: #(#Color 100.0 100.0 0.0)
       
   424 		)
       
   425 		 #(#RadioButtonSpec
       
   426 		    #name: 'Radio Button'
       
   427 		    #layout: #(#LayoutFrame 157 0.0 47 0 293 0 69 0)
       
   428 		    #label: 'Radio Button'
       
   429 		    #isTriggerOnDown: true
       
   430 		    #translateLabel: true
       
   431 		    #lampColor: #(#Color 100.0 100.0 0.0)
       
   432 		)
       
   433 		 #(#CheckBoxSpec
       
   434 		    #name: 'Check Box'
       
   435 		    #layout: #(#LayoutFrame 157 0 79 0 293 0 101 0)
       
   436 		    #translateLabel: true
       
   437 		    #label: 'Check Box'
       
   438 		)
       
   439 		 #(#CheckToggleSpec
       
   440 		    #name: 'Check Toggle'
       
   441 		    #layout: #(#LayoutOrigin 157 0 113 0)
       
   442 		    #isTriggerOnDown: true
       
   443 		    #showLamp: false
       
   444 		    #lampColor: #(#Color 100.0 100.0 0.0)
       
   445 		)
       
   446 		 #(#LabelSpec
       
   447 		    #name: 'CheckToggleLabel'
       
   448 		    #layout: #(#AlignmentOrigin 183 0 112 0 0 0)
       
   449 		    #label: 'Check Toggle'
       
   450 		    #adjust: #left
       
   451 		    #resizeForLabel: true
       
   452 		    #canUIDrag: false
       
   453 		)
       
   454 		 #(#ButtonSpec
       
   455 		    #name: 'Model Button'
       
   456 		    #layout: #(#LayoutFrame 309 0 15 0 445 0 37 0)
       
   457 		    #label: 'Model Button'
       
   458 		    #translateLabel: true
       
   459 		)
       
   460 		 #(#LabelSpec
       
   461 		    #name: 'UpDownButtonLabel'
       
   462 		    #layout: #(#AlignmentOrigin 361 0 49 0 0 0)
       
   463 		    #label: 'Spin Button'
       
   464 		    #adjust: #left
       
   465 		    #resizeForLabel: true
       
   466 		    #canUIDrag: false
       
   467 		)
       
   468 		 #(#UpDownButtonSpec
       
   469 		    #name: 'UpDown Button'
       
   470 		    #layout: #(#LayoutFrame 309 0 47 0 354 0 69 0)
       
   471 		    #orientation: #horizontal
       
   472 		)
       
   473 		 #(#LabelSpec
       
   474 		    #name: 'ArrowButtonsLabel'
       
   475 		    #layout: #(#AlignmentOrigin 361 0 83 0 0 0)
       
   476 		    #label: 'Arrow Button'
       
   477 		    #adjust: #left
       
   478 		    #resizeForLabel: true
       
   479 		    #canUIDrag: false
       
   480 		)
       
   481 		 #(#ArrowButtonSpec
       
   482 		    #name: 'Arrow Button'
       
   483 		    #layout: #(#LayoutFrame 309 0 79 0 331 0 101 0)
       
   484 		    #isTriggerOnDown: true
       
   485 		    #direction: #right
       
   486 		)
       
   487 	      )
       
   488 	  )
   314       )
   489       )
   315 ! !
   490 
   316 
   491     "Modified: / 20.5.1998 / 03:25:21 / cg"
   317 !UISelectionPanel class methodsFor:'menus'!
   492 !
   318 
   493 
   319 menuSelected
   494 standardGraphs
   320 
   495     "this window spec was automatically generated by the ST/X UIPainter"
   321     <resource: #menu>
   496 
   322 
   497     "do not manually edit this - the painter/builder may not be able to
   323     ^ #(#Menu #(
   498      handle the specification if its corrupted."
   324                 #(#MenuItem
   499 
   325                         #'label:' 'copy'
   500     "
   326                         #'value:' #copy
   501      UIPainter new openOnClass:UISelectionPanel andSelector:#standardGraphs
   327                  )
   502      UISelectionPanel new openInterface:#standardGraphs
   328                 #(#MenuItem
       
   329                         #'label:' 'cut'
       
   330                         #'value:' #cut
       
   331                  )
       
   332                 )
       
   333                nil
       
   334                nil
       
   335         )
       
   336 
       
   337     "Modified: / 29.10.1997 / 03:20:30 / cg"
       
   338 !
       
   339 
       
   340 menuUnselected
       
   341     <resource: #menu>
       
   342 
       
   343     ^ #(#Menu #(
       
   344                 #(#MenuItem
       
   345                         #'label:' 'paste'
       
   346                         #'value:' #paste
       
   347                  )
       
   348                 )
       
   349                nil
       
   350                nil
       
   351         )
       
   352 
       
   353     "Modified: / 29.10.1997 / 03:20:38 / cg"
       
   354 ! !
       
   355 
       
   356 !UISelectionPanel class methodsFor:'standard specifications'!
       
   357 
       
   358 standardButtons
       
   359     "This resource specification was automatically generated
       
   360      by the UIPainter of ST/X."
       
   361 
       
   362     "Do not manually edit this!! If it is corrupted,
       
   363      the UIPainter may not be able to read the specification."
       
   364 
       
   365     "
       
   366      UIPainter new openOnClass:UISelectionPanel andSelector:#standardButtons
       
   367      UISelectionPanel new openInterface:#standardButtons
       
   368     "
   503     "
   369 
   504 
   370     <resource: #canvas>
   505     <resource: #canvas>
   371 
   506 
   372     ^
   507     ^
   373      
   508      
   374        #(#FullSpec
   509        #(#FullSpec
   375           #window: 
   510 	  #window: 
   376            #(#WindowSpec
   511 	   #(#WindowSpec
   377               #name: 'Buttons'
   512 	      #name: 'Graphs'
   378               #layout: #(#LayoutFrame 39 0 189 0 517 0 392 0)
   513 	      #layout: #(#LayoutFrame 114 0 373 0 583 0 615 0)
   379               #label: 'Buttons'
   514 	      #label: 'Graphs'
   380               #min: #(#Point 10 10)
   515 	      #min: #(#Point 10 10)
   381               #max: #(#Point 1280 1024)
   516 	      #max: #(#Point 1280 1024)
   382               #bounds: #(#Rectangle 39 189 518 393)
   517 	      #bounds: #(#Rectangle 114 373 584 616)
   383               #usePreferredExtent: false
   518 	      #usePreferredExtent: false
   384           )
   519 	  )
   385           #component: 
   520 	  #component: 
   386            #(#SpecCollection
   521 	   #(#SpecCollection
   387               #collection: 
   522 	      #collection: 
   388                #(
   523 	       #(
   389                  #(#ActionButtonSpec
   524 		 #(#GraphColumnView2DSpec
   390                     #name: 'Button'
   525 		    #name: 'GraphColumnView2D'
   391                     #layout: #(#LayoutFrame 15 0 15 0 140 0 37 0)
   526 		    #layout: #(#LayoutFrame 15 0 15 0 220 0 110 0)
   392                     #label: 'Button'
   527 		    #gridX: 0
   393                     #translateLabel: true
   528 		    #gridY: 0
   394                 )
   529 		)
   395                  #(#ActionButtonSpec
   530 		 #(#LabelSpec
   396                     #name: 'Button - OK'
   531 		    #name: 'GraphColumnView2DLabel'
   397                     #layout: #(#LayoutFrame 15 0 47 0 140 0 69 0)
   532 		    #layout: #(#AlignmentOrigin 19 0 19 0 0 0)
   398                     #label: 'OK'
   533 		    #label: 'GraphColumnViewView2D'
   399                     #translateLabel: true
   534 		    #style: #(#FontDescription #helvetica #medium #roman 10)
   400                     #model: #accept
   535 		    #adjust: #left
   401                 )
   536 		    #resizeForLabel: true
   402                  #(#ActionButtonSpec
   537 		    #canUIDrag: false
   403                     #name: 'Button - Cancel'
   538 		)
   404                     #layout: #(#LayoutFrame 15 0 79 0 140 0 101 0)
   539 		 #(#GraphColumnView3DSpec
   405                     #label: 'Cancel'
   540 		    #name: 'GraphColumnView3D'
   406                     #translateLabel: true
   541 		    #layout: #(#LayoutFrame 240 0 15 0 445 0 110 0)
   407                     #model: #cancel
   542 		)
   408                 )
   543 		 #(#LabelSpec
   409                  #(#ActionButtonSpec
   544 		    #name: 'GraphColumnView3DLabel'
   410                     #name: 'Button - Help'
   545 		    #layout: #(#AlignmentOrigin 244 0 19 0 0 0)
   411                     #layout: #(#LayoutFrame 15 0 111 0 140 0 133 0)
   546 		    #label: 'GraphColumnViewView3D'
   412                     #label: 'Help'
   547 		    #style: #(#FontDescription #helvetica #medium #roman 10)
   413                     #translateLabel: true
   548 		    #adjust: #left
   414                     #model: #help
   549 		    #resizeForLabel: true
   415                 )
   550 		    #canUIDrag: false
   416                  #(#ActionButtonSpec
   551 		)
   417                     #name: 'Button - Close'
   552 	      )
   418                     #layout: #(#LayoutFrame 15 0 143 0 140 0 165 0)
   553 	  )
   419                     #label: 'Close'
       
   420                     #translateLabel: true
       
   421                     #model: #closeRequest
       
   422                 )
       
   423                  #(#ToggleSpec
       
   424                     #name: 'Toggle'
       
   425                     #layout: #(#LayoutFrame 157 0 15 0 293 0 37 0)
       
   426                     #label: 'Toggle'
       
   427                     #isTriggerOnDown: true
       
   428                     #translateLabel: true
       
   429                     #lampColor: #(#Color 100.0 100.0 0.0)
       
   430                 )
       
   431                  #(#RadioButtonSpec
       
   432                     #name: 'Radio Button'
       
   433                     #layout: #(#LayoutFrame 157 0.0 47 0 293 0 69 0)
       
   434                     #label: 'Radio Button'
       
   435                     #isTriggerOnDown: true
       
   436                     #translateLabel: true
       
   437                     #lampColor: #(#Color 100.0 100.0 0.0)
       
   438                 )
       
   439                  #(#CheckBoxSpec
       
   440                     #name: 'Check Box'
       
   441                     #layout: #(#LayoutFrame 157 0 79 0 293 0 101 0)
       
   442                     #translateLabel: true
       
   443                     #label: 'Check Box'
       
   444                 )
       
   445                  #(#CheckToggleSpec
       
   446                     #name: 'Check Toggle'
       
   447                     #layout: #(#LayoutOrigin 157 0 113 0)
       
   448                     #isTriggerOnDown: true
       
   449                     #showLamp: false
       
   450                     #lampColor: #(#Color 100.0 100.0 0.0)
       
   451                 )
       
   452                  #(#LabelSpec
       
   453                     #name: 'CheckToggleLabel'
       
   454                     #layout: #(#AlignmentOrigin 183 0 112 0 0 0)
       
   455                     #label: 'Check Toggle'
       
   456                     #adjust: #left
       
   457                     #resizeForLabel: true
       
   458                     #canUIDrag: false
       
   459                 )
       
   460                  #(#ButtonSpec
       
   461                     #name: 'Model Button'
       
   462                     #layout: #(#LayoutFrame 309 0 15 0 445 0 37 0)
       
   463                     #label: 'Model Button'
       
   464                     #translateLabel: true
       
   465                 )
       
   466                  #(#LabelSpec
       
   467                     #name: 'UpDownButtonLabel'
       
   468                     #layout: #(#AlignmentOrigin 361 0 49 0 0 0)
       
   469                     #label: 'Spin Button'
       
   470                     #adjust: #left
       
   471                     #resizeForLabel: true
       
   472                     #canUIDrag: false
       
   473                 )
       
   474                  #(#UpDownButtonSpec
       
   475                     #name: 'UpDown Button'
       
   476                     #layout: #(#LayoutFrame 309 0 47 0 354 0 69 0)
       
   477                     #orientation: #horizontal
       
   478                 )
       
   479                  #(#LabelSpec
       
   480                     #name: 'ArrowButtonsLabel'
       
   481                     #layout: #(#AlignmentOrigin 361 0 83 0 0 0)
       
   482                     #label: 'Arrow Button'
       
   483                     #adjust: #left
       
   484                     #resizeForLabel: true
       
   485                     #canUIDrag: false
       
   486                 )
       
   487                  #(#ArrowButtonSpec
       
   488                     #name: 'Arrow Button'
       
   489                     #layout: #(#LayoutFrame 309 0 79 0 331 0 101 0)
       
   490                     #isTriggerOnDown: true
       
   491                     #direction: #right
       
   492                 )
       
   493               )
       
   494           )
       
   495       )
   554       )
   496 
   555 !
   497     "Modified: / 20.5.1998 / 03:25:21 / cg"
   556 
   498 !
   557 standardGroups
   499 
       
   500 standardGraphs
       
   501     "this window spec was automatically generated by the ST/X UIPainter"
   558     "this window spec was automatically generated by the ST/X UIPainter"
   502 
   559 
   503     "do not manually edit this - the painter/builder may not be able to
   560     "do not manually edit this - the painter/builder may not be able to
   504      handle the specification if its corrupted."
   561      handle the specification if its corrupted."
   505 
   562 
   506     "
   563     "
   507      UIPainter new openOnClass:UISelectionPanel andSelector:#standardGraphs
   564      UIPainter new openOnClass:UISelectionPanel andSelector:#standardGroups
   508      UISelectionPanel new openInterface:#standardGraphs
   565      UISelectionPanel new openInterface:#standardGroups
   509     "
   566     "
   510 
   567 
   511     <resource: #canvas>
   568     <resource: #canvas>
   512 
   569 
   513     ^
   570     ^
   514      
   571      
   515        #(#FullSpec
   572        #(#FullSpec
   516           #window: 
   573 	  #window: 
   517            #(#WindowSpec
   574 	   #(#WindowSpec
   518               #name: 'Graphs'
   575 	      #name: 'Groups'
   519               #layout: #(#LayoutFrame 114 0 373 0 583 0 615 0)
   576 	      #layout: #(#LayoutFrame 147 0 281 0 647 0 520 0)
   520               #label: 'Graphs'
   577 	      #label: 'Groups'
   521               #min: #(#Point 10 10)
   578 	      #min: #(#Point 10 10)
   522               #max: #(#Point 1280 1024)
   579 	      #max: #(#Point 1280 1024)
   523               #bounds: #(#Rectangle 114 373 584 616)
   580 	      #bounds: #(#Rectangle 147 281 648 521)
   524               #usePreferredExtent: false
   581 	      #usePreferredExtent: false
   525           )
   582 	  )
   526           #component: 
   583 	  #component: 
   527            #(#SpecCollection
   584 	   #(#SpecCollection
   528               #collection: 
   585 	      #collection: 
   529                #(
   586 	       #(
   530                  #(#GraphColumnView2DSpec
   587 		 #(#ViewSpec
   531                     #name: 'GraphColumnView2D'
   588 		    #name: 'Box'
   532                     #layout: #(#LayoutFrame 15 0 15 0 220 0 110 0)
   589 		    #layout: #(#LayoutFrame 15 0 15 0 220 0 110 0)
   533                     #gridX: 0
   590 		)
   534                     #gridY: 0
   591 		 #(#LabelSpec
   535                 )
   592 		    #name: 'ViewLabel'
   536                  #(#LabelSpec
   593 		    #layout: #(#AlignmentOrigin 18 0 17 0 0 0)
   537                     #name: 'GraphColumnView2DLabel'
   594 		    #label: 'Box'
   538                     #layout: #(#AlignmentOrigin 19 0 19 0 0 0)
   595 		    #style: #(#FontDescription #helvetica #medium #roman 10)
   539                     #label: 'GraphColumnViewView2D'
   596 		    #adjust: #left
   540                     #style: #(#FontDescription #helvetica #medium #roman 10)
   597 		    #resizeForLabel: true
   541                     #adjust: #left
   598 		    #canUIDrag: false
   542                     #resizeForLabel: true
   599 		)
   543                     #canUIDrag: false
   600 		 #(#LabelSpec
   544                 )
   601 		    #name: 'VPanelLabel'
   545                  #(#GraphColumnView3DSpec
   602 		    #layout: #(#LayoutFrame 15 0 116 0 220 0 139 0)
   546                     #name: 'GraphColumnView3D'
   603 		    #label: 'Variable Panels'
   547                     #layout: #(#LayoutFrame 240 0 15 0 445 0 110 0)
   604 		    #style: #(#FontDescription #helvetica #medium #roman 10)
   548                 )
   605 		    #adjust: #left
   549                  #(#LabelSpec
   606 		    #canUIDrag: false
   550                     #name: 'GraphColumnView3DLabel'
   607 		)
   551                     #layout: #(#AlignmentOrigin 244 0 19 0 0 0)
   608 		 #(#VariableHorizontalPanelSpec
   552                     #label: 'GraphColumnViewView3D'
   609 		    #name: 'Variable Horizontal Panel'
   553                     #style: #(#FontDescription #helvetica #medium #roman 10)
   610 		    #layout: #(#LayoutFrame 15 0 140 0 110 0 230 0)
   554                     #adjust: #left
   611 		    #component: 
   555                     #resizeForLabel: true
   612 		     #(#SpecCollection
   556                     #canUIDrag: false
   613 			#collection: 
   557                 )
   614 			 #(
   558               )
   615 			   #(#LabelSpec
   559           )
   616 			      #name: 'label4'
       
   617 			      #label: 'A'
       
   618 			      #style: #(#FontDescription #helvetica #medium #roman 12)
       
   619 			      #level: 2
       
   620 			      #canUIDrag: false
       
   621 			  )
       
   622 			   #(#LabelSpec
       
   623 			      #name: 'label5'
       
   624 			      #label: 'B'
       
   625 			      #style: #(#FontDescription #helvetica #medium #roman 12)
       
   626 			      #level: 2
       
   627 			      #canUIDrag: false
       
   628 			  )
       
   629 			)
       
   630 		    )
       
   631 		    #handles: #(#Any 0.5 1.0)
       
   632 		)
       
   633 		 #(#VariableVerticalPanelSpec
       
   634 		    #name: 'Variable Vertical Panel'
       
   635 		    #layout: #(#LayoutFrame 125 0 140 0 220 0 230 0)
       
   636 		    #component: 
       
   637 		     #(#SpecCollection
       
   638 			#collection: 
       
   639 			 #(
       
   640 			   #(#LabelSpec
       
   641 			      #name: 'label9'
       
   642 			      #label: 'A'
       
   643 			      #style: #(#FontDescription #helvetica #medium #roman 12)
       
   644 			      #level: 2
       
   645 			      #canUIDrag: false
       
   646 			  )
       
   647 			   #(#LabelSpec
       
   648 			      #name: 'label10'
       
   649 			      #label: 'B'
       
   650 			      #style: #(#FontDescription #helvetica #medium #roman 12)
       
   651 			      #level: 2
       
   652 			      #canUIDrag: false
       
   653 			  )
       
   654 			)
       
   655 		    )
       
   656 		    #handles: #(#Any 0.5 1.0)
       
   657 		)
       
   658 		 #(#FramedBoxSpec
       
   659 		    #name: 'Framed Box'
       
   660 		    #layout: #(#LayoutFrame 240 0 15 0 445 0 110 0)
       
   661 		    #label: 'Framed Box'
       
   662 		    #labelPosition: #topLeft
       
   663 		    #translateLabel: true
       
   664 		)
       
   665 		 #(#LabelSpec
       
   666 		    #name: 'PanelLabel'
       
   667 		    #layout: #(#LayoutFrame 240 0 116 0 445 0 139 0)
       
   668 		    #label: 'Panels'
       
   669 		    #style: #(#FontDescription #helvetica #medium #roman 10)
       
   670 		    #adjust: #left
       
   671 		    #canUIDrag: false
       
   672 		)
       
   673 		 #(#HorizontalPanelViewSpec
       
   674 		    #name: 'Horizontal Panel'
       
   675 		    #layout: #(#LayoutFrame 240 0 140 0 324 0 230 0)
       
   676 		    #component: 
       
   677 		     #(#SpecCollection
       
   678 			#collection: 
       
   679 			 #(
       
   680 			   #(#LabelSpec
       
   681 			      #name: 'label1'
       
   682 			      #label: 'A'
       
   683 			      #style: #(#FontDescription #helvetica #medium #roman 12)
       
   684 			      #level: 2
       
   685 			      #extent: #(#Point 23 23)
       
   686 			      #canUIDrag: false
       
   687 			  )
       
   688 			   #(#LabelSpec
       
   689 			      #name: 'label2'
       
   690 			      #label: 'B'
       
   691 			      #style: #(#FontDescription #helvetica #medium #roman 12)
       
   692 			      #level: 2
       
   693 			      #extent: #(#Point 23 23)
       
   694 			      #canUIDrag: false
       
   695 			  )
       
   696 			   #(#LabelSpec
       
   697 			      #name: 'label3'
       
   698 			      #label: 'C'
       
   699 			      #style: #(#FontDescription #helvetica #medium #roman 12)
       
   700 			      #level: 2
       
   701 			      #extent: #(#Point 23 23)
       
   702 			      #canUIDrag: false
       
   703 			  )
       
   704 			)
       
   705 		    )
       
   706 		    #horizontalLayout: #center
       
   707 		    #verticalLayout: #center
       
   708 		    #horizontalSpace: 3
       
   709 		    #verticalSpace: 3
       
   710 		)
       
   711 		 #(#VerticalPanelViewSpec
       
   712 		    #name: 'Vertical Panel'
       
   713 		    #layout: #(#LayoutFrame 332 0 140 0 379 0 230 0)
       
   714 		    #component: 
       
   715 		     #(#SpecCollection
       
   716 			#collection: 
       
   717 			 #(
       
   718 			   #(#LabelSpec
       
   719 			      #name: 'label6'
       
   720 			      #label: 'A'
       
   721 			      #style: #(#FontDescription #helvetica #medium #roman 12)
       
   722 			      #level: 2
       
   723 			      #extent: #(#Point 23 23)
       
   724 			      #canUIDrag: false
       
   725 			  )
       
   726 			   #(#LabelSpec
       
   727 			      #name: 'label7'
       
   728 			      #label: 'B'
       
   729 			      #style: #(#FontDescription #helvetica #medium #roman 12)
       
   730 			      #level: 2
       
   731 			      #extent: #(#Point 23 23)
       
   732 			      #canUIDrag: false
       
   733 			  )
       
   734 			   #(#LabelSpec
       
   735 			      #name: 'label8'
       
   736 			      #label: 'C'
       
   737 			      #style: #(#FontDescription #helvetica #medium #roman 12)
       
   738 			      #level: 2
       
   739 			      #extent: #(#Point 23 23)
       
   740 			      #canUIDrag: false
       
   741 			  )
       
   742 			)
       
   743 		    )
       
   744 		    #horizontalLayout: #center
       
   745 		    #verticalLayout: #center
       
   746 		    #horizontalSpace: 3
       
   747 		    #verticalSpace: 3
       
   748 		)
       
   749 		 #(#PanelViewSpec
       
   750 		    #name: 'Panel'
       
   751 		    #layout: #(#LayoutFrame 387 0 140 0 445 0 230 0)
       
   752 		    #component: 
       
   753 		     #(#SpecCollection
       
   754 			#collection: 
       
   755 			 #(
       
   756 			   #(#LabelSpec
       
   757 			      #name: 'label11'
       
   758 			      #label: 'A'
       
   759 			      #style: #(#FontDescription #helvetica #medium #roman 12)
       
   760 			      #level: 2
       
   761 			      #extent: #(#Point 23 23)
       
   762 			      #canUIDrag: false
       
   763 			  )
       
   764 			   #(#LabelSpec
       
   765 			      #name: 'label12'
       
   766 			      #label: 'B'
       
   767 			      #style: #(#FontDescription #helvetica #medium #roman 12)
       
   768 			      #level: 2
       
   769 			      #extent: #(#Point 23 23)
       
   770 			      #canUIDrag: false
       
   771 			  )
       
   772 			   #(#LabelSpec
       
   773 			      #name: 'label13'
       
   774 			      #label: 'C'
       
   775 			      #style: #(#FontDescription #helvetica #medium #roman 12)
       
   776 			      #level: 2
       
   777 			      #extent: #(#Point 23 23)
       
   778 			      #canUIDrag: false
       
   779 			  )
       
   780 			   #(#LabelSpec
       
   781 			      #name: 'label14'
       
   782 			      #label: 'D'
       
   783 			      #style: #(#FontDescription #helvetica #medium #roman 12)
       
   784 			      #level: 2
       
   785 			      #extent: #(#Point 23 23)
       
   786 			      #canUIDrag: false
       
   787 			  )
       
   788 			   #(#LabelSpec
       
   789 			      #name: 'label15'
       
   790 			      #label: 'E'
       
   791 			      #style: #(#FontDescription #helvetica #medium #roman 12)
       
   792 			      #level: 2
       
   793 			      #extent: #(#Point 23 23)
       
   794 			      #canUIDrag: false
       
   795 			  )
       
   796 			)
       
   797 		    )
       
   798 		    #horizontalLayout: #fitSpace
       
   799 		    #verticalLayout: #fitSpace
       
   800 		    #horizontalSpace: 3
       
   801 		    #verticalSpace: 3
       
   802 		)
       
   803 	      )
       
   804 	  )
   560       )
   805       )
   561 !
   806 
   562 
   807     "Modified: / 20.5.1998 / 03:26:08 / cg"
   563 standardGroups
   808 !
   564     "this window spec was automatically generated by the ST/X UIPainter"
   809 
   565 
   810 standardLists
   566     "do not manually edit this - the painter/builder may not be able to
   811     "This resource specification was automatically generated
   567      handle the specification if its corrupted."
   812      by the UIPainter of ST/X."
   568 
   813 
   569     "
   814     "Do not manually edit this!! If it is corrupted,
   570      UIPainter new openOnClass:UISelectionPanel andSelector:#standardGroups
   815      the UIPainter may not be able to read the specification."
   571      UISelectionPanel new openInterface:#standardGroups
   816 
       
   817     "
       
   818      UIPainter new openOnClass:UISelectionPanel andSelector:#standardLists
       
   819      UISelectionPanel new openInterface:#standardLists
   572     "
   820     "
   573 
   821 
   574     <resource: #canvas>
   822     <resource: #canvas>
   575 
   823 
   576     ^
   824     ^
   577      
   825      
   578        #(#FullSpec
   826        #(#FullSpec
   579           #window: 
   827 	  #window: 
   580            #(#WindowSpec
   828 	   #(#WindowSpec
   581               #name: 'Groups'
   829 	      #name: 'Lists'
   582               #layout: #(#LayoutFrame 147 0 281 0 647 0 520 0)
   830 	      #layout: #(#LayoutFrame 164 0 52 0 633 0 294 0)
   583               #label: 'Groups'
   831 	      #label: 'Lists'
   584               #min: #(#Point 10 10)
   832 	      #min: #(#Point 10 10)
   585               #max: #(#Point 1280 1024)
   833 	      #max: #(#Point 1280 1024)
   586               #bounds: #(#Rectangle 147 281 648 521)
   834 	      #bounds: #(#Rectangle 164 52 634 295)
   587               #usePreferredExtent: false
   835 	      #usePreferredExtent: false
   588           )
   836 	  )
   589           #component: 
   837 	  #component: 
   590            #(#SpecCollection
   838 	   #(#SpecCollection
   591               #collection: 
   839 	      #collection: 
   592                #(
   840 	       #(
   593                  #(#ViewSpec
   841 		 #(#SequenceViewSpec
   594                     #name: 'Box'
   842 		    #name: 'List'
   595                     #layout: #(#LayoutFrame 15 0 15 0 220 0 110 0)
   843 		    #layout: #(#LayoutFrame 15 0 30 0 220 0 110 0)
   596                 )
   844 		    #hasHorizontalScrollBar: true
   597                  #(#LabelSpec
   845 		    #hasVerticalScrollBar: true
   598                     #name: 'ViewLabel'
   846 		    #useIndex: false
   599                     #layout: #(#AlignmentOrigin 18 0 17 0 0 0)
   847 		)
   600                     #label: 'Box'
   848 		 #(#LabelSpec
   601                     #style: #(#FontDescription #helvetica #medium #roman 10)
   849 		    #name: 'ListLabel'
   602                     #adjust: #left
   850 		    #layout: #(#AlignmentOrigin 15 0 30 0 0 1)
   603                     #resizeForLabel: true
   851 		    #label: 'List'
   604                     #canUIDrag: false
   852 		    #style: #(#FontDescription #helvetica #medium #roman 10)
   605                 )
   853 		    #adjust: #left
   606                  #(#LabelSpec
   854 		    #resizeForLabel: true
   607                     #name: 'VPanelLabel'
   855 		    #canUIDrag: false
   608                     #layout: #(#LayoutFrame 15 0 116 0 220 0 139 0)
   856 		)
   609                     #label: 'Variable Panels'
   857 		 #(#SelectionInTreeViewSpec
   610                     #style: #(#FontDescription #helvetica #medium #roman 10)
   858 		    #name: 'Tree List'
   611                     #adjust: #left
   859 		    #layout: #(#LayoutFrame 15 0 145 0 220 0 225 0)
   612                     #canUIDrag: false
   860 		    #hasHorizontalScrollBar: true
   613                 )
   861 		    #hasVerticalScrollBar: true
   614                  #(#VariableHorizontalPanelSpec
   862 		)
   615                     #name: 'Variable Horizontal Panel'
   863 		 #(#LabelSpec
   616                     #layout: #(#LayoutFrame 15 0 140 0 110 0 230 0)
   864 		    #name: 'TreeListLabel'
   617                     #component: 
   865 		    #layout: #(#AlignmentOrigin 15 0 145 0 0 1)
   618                      #(#SpecCollection
   866 		    #label: 'Tree List'
   619                         #collection: 
   867 		    #style: #(#FontDescription #helvetica #medium #roman 10)
   620                          #(
   868 		    #adjust: #left
   621                            #(#LabelSpec
   869 		    #resizeForLabel: true
   622                               #name: 'label4'
   870 		    #canUIDrag: false
   623                               #label: 'A'
   871 		)
   624                               #style: #(#FontDescription #helvetica #medium #roman 12)
   872 		 #(#DataSetSpec
   625                               #level: 2
   873 		    #name: 'Table'
   626                               #canUIDrag: false
   874 		    #layout: #(#LayoutFrame 240 0 30 0 445 0 110 0)
   627                           )
   875 		    #hasHorizontalScrollBar: true
   628                            #(#LabelSpec
   876 		    #hasVerticalScrollBar: true
   629                               #name: 'label5'
   877 		)
   630                               #label: 'B'
   878 		 #(#LabelSpec
   631                               #style: #(#FontDescription #helvetica #medium #roman 12)
   879 		    #name: 'TableLabel'
   632                               #level: 2
   880 		    #layout: #(#AlignmentOrigin 240 0 30 0 0 1)
   633                               #canUIDrag: false
   881 		    #label: 'Table'
   634                           )
   882 		    #style: #(#FontDescription #helvetica #medium #roman 10)
   635                         )
   883 		    #adjust: #left
   636                     )
   884 		    #resizeForLabel: true
   637                     #handles: #(#Any 0.5 1.0)
   885 		    #canUIDrag: false
   638                 )
   886 		)
   639                  #(#VariableVerticalPanelSpec
   887 		 #(#FileSelectionTreeSpec
   640                     #name: 'Variable Vertical Panel'
   888 		    #name: 'File Tree List'
   641                     #layout: #(#LayoutFrame 125 0 140 0 220 0 230 0)
   889 		    #layout: #(#LayoutFrame 240 0 145 0 445 0 225 0)
   642                     #component: 
   890 		    #hasHorizontalScrollBar: true
   643                      #(#SpecCollection
   891 		    #hasVerticalScrollBar: true
   644                         #collection: 
   892 		)
   645                          #(
   893 		 #(#LabelSpec
   646                            #(#LabelSpec
   894 		    #name: 'FileTreeListLabel'
   647                               #name: 'label9'
   895 		    #layout: #(#AlignmentOrigin 240 0 145 0 0 1)
   648                               #label: 'A'
   896 		    #label: 'File Tree List'
   649                               #style: #(#FontDescription #helvetica #medium #roman 12)
   897 		    #style: #(#FontDescription #helvetica #medium #roman 10)
   650                               #level: 2
   898 		    #adjust: #left
   651                               #canUIDrag: false
   899 		    #resizeForLabel: true
   652                           )
   900 		    #canUIDrag: false
   653                            #(#LabelSpec
   901 		)
   654                               #name: 'label10'
   902 	      )
   655                               #label: 'B'
   903 	  )
   656                               #style: #(#FontDescription #helvetica #medium #roman 12)
       
   657                               #level: 2
       
   658                               #canUIDrag: false
       
   659                           )
       
   660                         )
       
   661                     )
       
   662                     #handles: #(#Any 0.5 1.0)
       
   663                 )
       
   664                  #(#FramedBoxSpec
       
   665                     #name: 'Framed Box'
       
   666                     #layout: #(#LayoutFrame 240 0 15 0 445 0 110 0)
       
   667                     #label: 'Framed Box'
       
   668                     #labelPosition: #topLeft
       
   669                     #translateLabel: true
       
   670                 )
       
   671                  #(#LabelSpec
       
   672                     #name: 'PanelLabel'
       
   673                     #layout: #(#LayoutFrame 240 0 116 0 445 0 139 0)
       
   674                     #label: 'Panels'
       
   675                     #style: #(#FontDescription #helvetica #medium #roman 10)
       
   676                     #adjust: #left
       
   677                     #canUIDrag: false
       
   678                 )
       
   679                  #(#HorizontalPanelViewSpec
       
   680                     #name: 'Horizontal Panel'
       
   681                     #layout: #(#LayoutFrame 240 0 140 0 324 0 230 0)
       
   682                     #component: 
       
   683                      #(#SpecCollection
       
   684                         #collection: 
       
   685                          #(
       
   686                            #(#LabelSpec
       
   687                               #name: 'label1'
       
   688                               #label: 'A'
       
   689                               #style: #(#FontDescription #helvetica #medium #roman 12)
       
   690                               #level: 2
       
   691                               #extent: #(#Point 23 23)
       
   692                               #canUIDrag: false
       
   693                           )
       
   694                            #(#LabelSpec
       
   695                               #name: 'label2'
       
   696                               #label: 'B'
       
   697                               #style: #(#FontDescription #helvetica #medium #roman 12)
       
   698                               #level: 2
       
   699                               #extent: #(#Point 23 23)
       
   700                               #canUIDrag: false
       
   701                           )
       
   702                            #(#LabelSpec
       
   703                               #name: 'label3'
       
   704                               #label: 'C'
       
   705                               #style: #(#FontDescription #helvetica #medium #roman 12)
       
   706                               #level: 2
       
   707                               #extent: #(#Point 23 23)
       
   708                               #canUIDrag: false
       
   709                           )
       
   710                         )
       
   711                     )
       
   712                     #horizontalLayout: #center
       
   713                     #verticalLayout: #center
       
   714                     #horizontalSpace: 3
       
   715                     #verticalSpace: 3
       
   716                 )
       
   717                  #(#VerticalPanelViewSpec
       
   718                     #name: 'Vertical Panel'
       
   719                     #layout: #(#LayoutFrame 332 0 140 0 379 0 230 0)
       
   720                     #component: 
       
   721                      #(#SpecCollection
       
   722                         #collection: 
       
   723                          #(
       
   724                            #(#LabelSpec
       
   725                               #name: 'label6'
       
   726                               #label: 'A'
       
   727                               #style: #(#FontDescription #helvetica #medium #roman 12)
       
   728                               #level: 2
       
   729                               #extent: #(#Point 23 23)
       
   730                               #canUIDrag: false
       
   731                           )
       
   732                            #(#LabelSpec
       
   733                               #name: 'label7'
       
   734                               #label: 'B'
       
   735                               #style: #(#FontDescription #helvetica #medium #roman 12)
       
   736                               #level: 2
       
   737                               #extent: #(#Point 23 23)
       
   738                               #canUIDrag: false
       
   739                           )
       
   740                            #(#LabelSpec
       
   741                               #name: 'label8'
       
   742                               #label: 'C'
       
   743                               #style: #(#FontDescription #helvetica #medium #roman 12)
       
   744                               #level: 2
       
   745                               #extent: #(#Point 23 23)
       
   746                               #canUIDrag: false
       
   747                           )
       
   748                         )
       
   749                     )
       
   750                     #horizontalLayout: #center
       
   751                     #verticalLayout: #center
       
   752                     #horizontalSpace: 3
       
   753                     #verticalSpace: 3
       
   754                 )
       
   755                  #(#PanelViewSpec
       
   756                     #name: 'Panel'
       
   757                     #layout: #(#LayoutFrame 387 0 140 0 445 0 230 0)
       
   758                     #component: 
       
   759                      #(#SpecCollection
       
   760                         #collection: 
       
   761                          #(
       
   762                            #(#LabelSpec
       
   763                               #name: 'label11'
       
   764                               #label: 'A'
       
   765                               #style: #(#FontDescription #helvetica #medium #roman 12)
       
   766                               #level: 2
       
   767                               #extent: #(#Point 23 23)
       
   768                               #canUIDrag: false
       
   769                           )
       
   770                            #(#LabelSpec
       
   771                               #name: 'label12'
       
   772                               #label: 'B'
       
   773                               #style: #(#FontDescription #helvetica #medium #roman 12)
       
   774                               #level: 2
       
   775                               #extent: #(#Point 23 23)
       
   776                               #canUIDrag: false
       
   777                           )
       
   778                            #(#LabelSpec
       
   779                               #name: 'label13'
       
   780                               #label: 'C'
       
   781                               #style: #(#FontDescription #helvetica #medium #roman 12)
       
   782                               #level: 2
       
   783                               #extent: #(#Point 23 23)
       
   784                               #canUIDrag: false
       
   785                           )
       
   786                            #(#LabelSpec
       
   787                               #name: 'label14'
       
   788                               #label: 'D'
       
   789                               #style: #(#FontDescription #helvetica #medium #roman 12)
       
   790                               #level: 2
       
   791                               #extent: #(#Point 23 23)
       
   792                               #canUIDrag: false
       
   793                           )
       
   794                            #(#LabelSpec
       
   795                               #name: 'label15'
       
   796                               #label: 'E'
       
   797                               #style: #(#FontDescription #helvetica #medium #roman 12)
       
   798                               #level: 2
       
   799                               #extent: #(#Point 23 23)
       
   800                               #canUIDrag: false
       
   801                           )
       
   802                         )
       
   803                     )
       
   804                     #horizontalLayout: #fitSpace
       
   805                     #verticalLayout: #fitSpace
       
   806                     #horizontalSpace: 3
       
   807                     #verticalSpace: 3
       
   808                 )
       
   809               )
       
   810           )
       
   811       )
   904       )
   812 
   905 
   813     "Modified: / 20.5.1998 / 03:26:08 / cg"
   906     "Modified: / 21.4.1998 / 20:36:36 / cg"
   814 !
   907 !
   815 
   908 
   816 standardLists
   909 standardMenus
   817     "This resource specification was automatically generated
   910     "This resource specification was automatically generated
   818      by the UIPainter of ST/X."
   911      by the UIPainter of ST/X."
   819 
   912 
   820     "Do not manually edit this!! If it is corrupted,
   913     "Do not manually edit this!! If it is corrupted,
   821      the UIPainter may not be able to read the specification."
   914      the UIPainter may not be able to read the specification."
   822 
   915 
   823     "
   916     "
   824      UIPainter new openOnClass:UISelectionPanel andSelector:#standardLists
   917      UIPainter new openOnClass:UISelectionPanel andSelector:#standardMenus
   825      UISelectionPanel new openInterface:#standardLists
   918      UISelectionPanel new openInterface:#standardMenus
   826     "
   919     "
   827 
   920 
   828     <resource: #canvas>
   921     <resource: #canvas>
   829 
   922 
   830     ^
   923     ^
   831      
   924      
   832        #(#FullSpec
   925        #(#FullSpec
   833           #window: 
   926 	  #window: 
   834            #(#WindowSpec
   927 	   #(#WindowSpec
   835               #name: 'Lists'
   928 	      #name: 'Menus'
   836               #layout: #(#LayoutFrame 164 0 52 0 633 0 294 0)
   929 	      #layout: #(#LayoutFrame 216 0 173 0 692 0 395 0)
   837               #label: 'Lists'
   930 	      #label: 'Menus'
   838               #min: #(#Point 10 10)
   931 	      #min: #(#Point 10 10)
   839               #max: #(#Point 1280 1024)
   932 	      #max: #(#Point 1280 1024)
   840               #bounds: #(#Rectangle 164 52 634 295)
   933 	      #bounds: #(#Rectangle 216 173 693 396)
   841               #usePreferredExtent: false
   934 	      #usePreferredExtent: false
   842           )
   935 	  )
   843           #component: 
   936 	  #component: 
   844            #(#SpecCollection
   937 	   #(#SpecCollection
   845               #collection: 
   938 	      #collection: 
   846                #(
   939 	       #(
   847                  #(#SequenceViewSpec
   940 		 #(#MenuPanelSpec
   848                     #name: 'List'
   941 		    #name: 'Tool Bar'
   849                     #layout: #(#LayoutFrame 15 0 30 0 220 0 110 0)
   942 		    #layout: #(#LayoutFrame 15 0 123 0 140 0 155 0)
   850                     #hasHorizontalScrollBar: true
   943 		    #textDefault: true
   851                     #hasVerticalScrollBar: true
   944 		)
   852                     #useIndex: false
   945 		 #(#LabelSpec
   853                 )
   946 		    #name: 'ToolBarLabel'
   854                  #(#LabelSpec
   947 		    #layout: #(#AlignmentOrigin 15 0 123 0 0 1)
   855                     #name: 'ListLabel'
   948 		    #label: 'Tool Bar'
   856                     #layout: #(#AlignmentOrigin 15 0 30 0 0 1)
   949 		    #style: #(#FontDescription #helvetica #medium #roman 10)
   857                     #label: 'List'
   950 		    #adjust: #left
   858                     #style: #(#FontDescription #helvetica #medium #roman 10)
   951 		    #resizeForLabel: true
   859                     #adjust: #left
   952 		    #canUIDrag: false
   860                     #resizeForLabel: true
   953 		)
   861                     #canUIDrag: false
   954 		 #(#MenuPanelSpec
   862                 )
   955 		    #name: 'Menu Bar'
   863                  #(#SelectionInTreeViewSpec
   956 		    #layout: #(#LayoutFrame 15 0 181 0 140 0 203 0)
   864                     #name: 'Tree List'
   957 		)
   865                     #layout: #(#LayoutFrame 15 0 145 0 220 0 225 0)
   958 		 #(#LabelSpec
   866                     #hasHorizontalScrollBar: true
   959 		    #name: 'MenuBarLabel'
   867                     #hasVerticalScrollBar: true
   960 		    #layout: #(#AlignmentOrigin 15 0 181 0 0 1)
   868                 )
   961 		    #label: 'Menu Bar'
   869                  #(#LabelSpec
   962 		    #style: #(#FontDescription #helvetica #medium #roman 10)
   870                     #name: 'TreeListLabel'
   963 		    #adjust: #left
   871                     #layout: #(#AlignmentOrigin 15 0 145 0 0 1)
   964 		    #resizeForLabel: true
   872                     #label: 'Tree List'
   965 		    #canUIDrag: false
   873                     #style: #(#FontDescription #helvetica #medium #roman 10)
   966 		)
   874                     #adjust: #left
   967 		 #(#PopUpListSpec
   875                     #resizeForLabel: true
   968 		    #name: 'PopUp List'
   876                     #canUIDrag: false
   969 		    #layout: #(#LayoutFrame 15 0 15 0 140 0 37 0)
   877                 )
   970 		    #label: 'PopUp List'
   878                  #(#DataSetSpec
   971 		    #useIndex: false
   879                     #name: 'Table'
   972 		)
   880                     #layout: #(#LayoutFrame 240 0 30 0 445 0 110 0)
   973 		 #(#ComboListSpec
   881                     #hasHorizontalScrollBar: true
   974 		    #name: 'Combo List'
   882                     #hasVerticalScrollBar: true
   975 		    #layout: #(#LayoutFrame 15 0 45 0 140 0 65 0)
   883                 )
   976 		    #useIndex: false
   884                  #(#LabelSpec
   977 		)
   885                     #name: 'TableLabel'
   978 		 #(#LabelSpec
   886                     #layout: #(#AlignmentOrigin 240 0 30 0 0 1)
   979 		    #name: 'ComboListLabel'
   887                     #label: 'Table'
   980 		    #layout: #(#AlignmentOrigin 17 0 65 0 0 1)
   888                     #style: #(#FontDescription #helvetica #medium #roman 10)
   981 		    #label: 'Combo List'
   889                     #adjust: #left
   982 		    #style: #(#FontDescription #helvetica #medium #roman 10)
   890                     #resizeForLabel: true
   983 		    #adjust: #left
   891                     #canUIDrag: false
   984 		    #resizeForLabel: true
   892                 )
   985 		    #canUIDrag: false
   893                  #(#FileSelectionTreeSpec
   986 		)
   894                     #name: 'File Tree List'
   987 		 #(#ComboBoxSpec
   895                     #layout: #(#LayoutFrame 240 0 145 0 445 0 225 0)
   988 		    #name: 'Combo Box'
   896                     #hasHorizontalScrollBar: true
   989 		    #layout: #(#LayoutFrame 15 0 73 0 140 0 93 0)
   897                     #hasVerticalScrollBar: true
   990 		)
   898                 )
   991 		 #(#LabelSpec
   899                  #(#LabelSpec
   992 		    #name: 'ComboBoxLabel'
   900                     #name: 'FileTreeListLabel'
   993 		    #layout: #(#AlignmentOrigin 17 0 93 0 0 1)
   901                     #layout: #(#AlignmentOrigin 240 0 145 0 0 1)
   994 		    #label: 'Combo Box'
   902                     #label: 'File Tree List'
   995 		    #style: #(#FontDescription #helvetica #medium #roman 10)
   903                     #style: #(#FontDescription #helvetica #medium #roman 10)
   996 		    #adjust: #left
   904                     #adjust: #left
   997 		    #resizeForLabel: true
   905                     #resizeForLabel: true
   998 		    #canUIDrag: false
   906                     #canUIDrag: false
   999 		)
   907                 )
  1000 		 #(#TabViewSpec
   908               )
  1001 		    #name: 'Tab Header'
   909           )
  1002 		    #layout: #(#LayoutFrame 157 0 15 0 292 0 51 0)
       
  1003 		)
       
  1004 		 #(#LabelSpec
       
  1005 		    #name: 'TabHeaderLabel'
       
  1006 		    #layout: #(#Point 160 33)
       
  1007 		    #label: 'Tab Header'
       
  1008 		    #style: #(#FontDescription #helvetica #medium #roman 10)
       
  1009 		    #adjust: #left
       
  1010 		    #resizeForLabel: true
       
  1011 		    #canUIDrag: false
       
  1012 		)
       
  1013 		 #(#NoteBookViewSpec
       
  1014 		    #name: 'Note Book'
       
  1015 		    #layout: #(#LayoutFrame 157 0 58 0 292 0 150 0)
       
  1016 		)
       
  1017 		 #(#LabelSpec
       
  1018 		    #name: 'NoteBookLabel'
       
  1019 		    #layout: #(#Point 161 132)
       
  1020 		    #label: 'Note Book'
       
  1021 		    #style: #(#FontDescription #helvetica #medium #roman 10)
       
  1022 		    #adjust: #left
       
  1023 		    #resizeForLabel: true
       
  1024 		    #canUIDrag: false
       
  1025 		)
       
  1026 		 #(#UIGalleryViewSpec
       
  1027 		    #name: 'Gallery'
       
  1028 		    #layout: #(#LayoutFrame 309 0 15 0 445 0 150 0)
       
  1029 		)
       
  1030 		 #(#LabelSpec
       
  1031 		    #name: 'GalleryLabel'
       
  1032 		    #layout: #(#Point 313 132)
       
  1033 		    #label: 'Gallery'
       
  1034 		    #style: #(#FontDescription #helvetica #medium #roman 10)
       
  1035 		    #adjust: #left
       
  1036 		    #resizeForLabel: true
       
  1037 		    #canUIDrag: false
       
  1038 		)
       
  1039 	      )
       
  1040 	  )
   910       )
  1041       )
   911 
  1042 
   912     "Modified: / 21.4.1998 / 20:36:36 / cg"
  1043     "Modified: / 6.6.1998 / 16:54:56 / cg"
   913 !
  1044 !
   914 
  1045 
   915 standardMenus
  1046 standardMisc
   916     "This resource specification was automatically generated
  1047     "This resource specification was automatically generated
   917      by the UIPainter of ST/X."
  1048      by the UIPainter of ST/X."
   918 
  1049 
   919     "Do not manually edit this!! If it is corrupted,
  1050     "Do not manually edit this!! If it is corrupted,
   920      the UIPainter may not be able to read the specification."
  1051      the UIPainter may not be able to read the specification."
   921 
  1052 
   922     "
  1053     "
   923      UIPainter new openOnClass:UISelectionPanel andSelector:#standardMenus
  1054      UIPainter new openOnClass:UISelectionPanel andSelector:#standardMisc
   924      UISelectionPanel new openInterface:#standardMenus
  1055      UISelectionPanel new openInterface:#standardMisc
   925     "
  1056     "
   926 
  1057 
   927     <resource: #canvas>
  1058     <resource: #canvas>
   928 
  1059 
   929     ^
  1060     ^
   930      
  1061      
   931        #(#FullSpec
  1062        #(#FullSpec
   932           #window: 
  1063 	  #window: 
   933            #(#WindowSpec
  1064 	   #(#WindowSpec
   934               #name: 'Menus'
  1065 	      #name: 'Misc'
   935               #layout: #(#LayoutFrame 216 0 173 0 692 0 395 0)
  1066 	      #layout: #(#LayoutFrame 50 0 73 0 517 0 357 0)
   936               #label: 'Menus'
  1067 	      #label: 'Misc'
   937               #min: #(#Point 10 10)
  1068 	      #min: #(#Point 10 10)
   938               #max: #(#Point 1280 1024)
  1069 	      #max: #(#Point 1280 1024)
   939               #bounds: #(#Rectangle 216 173 693 396)
  1070 	      #bounds: #(#Rectangle 50 73 518 358)
   940               #usePreferredExtent: false
  1071 	      #usePreferredExtent: false
   941           )
  1072 	  )
   942           #component: 
  1073 	  #component: 
   943            #(#SpecCollection
  1074 	   #(#SpecCollection
   944               #collection: 
  1075 	      #collection: 
   945                #(
  1076 	       #(
   946                  #(#MenuPanelSpec
  1077 		 #(#ArbitraryComponentSpec
   947                     #name: 'Tool Bar'
  1078 		    #name: 'Arbitrary Component'
   948                     #layout: #(#LayoutFrame 15 0 123 0 140 0 155 0)
  1079 		    #layout: #(#LayoutFrame 15 0 15 0 140 0 110 0)
   949                     #textDefault: true
  1080 		    #hasBorder: false
   950                 )
  1081 		)
   951                  #(#LabelSpec
  1082 		 #(#LabelSpec
   952                     #name: 'ToolBarLabel'
  1083 		    #name: 'ArbitraryComponentLabel1'
   953                     #layout: #(#AlignmentOrigin 15 0 123 0 0 1)
  1084 		    #layout: #(#AlignmentOrigin 19 0 19 0 0 0)
   954                     #label: 'Tool Bar'
  1085 		    #label: 'Arbitrary'
   955                     #style: #(#FontDescription #helvetica #medium #roman 10)
  1086 		    #style: #(#FontDescription #helvetica #medium #roman 10)
   956                     #adjust: #left
  1087 		    #adjust: #left
   957                     #resizeForLabel: true
  1088 		    #resizeForLabel: true
   958                     #canUIDrag: false
  1089 		    #canUIDrag: false
   959                 )
  1090 		)
   960                  #(#MenuPanelSpec
  1091 		 #(#LabelSpec
   961                     #name: 'Menu Bar'
  1092 		    #name: 'ArbitraryComponentLabel2'
   962                     #layout: #(#LayoutFrame 15 0 181 0 140 0 203 0)
  1093 		    #layout: #(#AlignmentOrigin 19 0 43 0 0 0)
   963                 )
  1094 		    #label: 'Component'
   964                  #(#LabelSpec
  1095 		    #style: #(#FontDescription #helvetica #medium #roman 10)
   965                     #name: 'MenuBarLabel'
  1096 		    #adjust: #left
   966                     #layout: #(#AlignmentOrigin 15 0 181 0 0 1)
  1097 		    #resizeForLabel: true
   967                     #label: 'Menu Bar'
  1098 		    #canUIDrag: false
   968                     #style: #(#FontDescription #helvetica #medium #roman 10)
  1099 		)
   969                     #adjust: #left
  1100 		 #(#UISubSpecification
   970                     #resizeForLabel: true
  1101 		    #name: 'SubSpecification'
   971                     #canUIDrag: false
  1102 		    #layout: #(#LayoutFrame 157 0 15 0 292 0 110 0)
   972                 )
  1103 		)
   973                  #(#PopUpListSpec
  1104 		 #(#LabelSpec
   974                     #name: 'PopUp List'
  1105 		    #name: 'SubSpecificationLabel'
   975                     #layout: #(#LayoutFrame 15 0 15 0 140 0 37 0)
  1106 		    #layout: #(#Point 161 19)
   976                     #label: 'PopUp List'
  1107 		    #label: 'SubSpecification'
   977                     #useIndex: false
  1108 		    #style: #(#FontDescription #helvetica #medium #roman 10)
   978                 )
  1109 		    #resizeForLabel: true
   979                  #(#ComboListSpec
  1110 		    #canUIDrag: false
   980                     #name: 'Combo List'
  1111 		)
   981                     #layout: #(#LayoutFrame 15 0 45 0 140 0 65 0)
  1112 		 #(#SubCanvasSpec
   982                     #useIndex: false
  1113 		    #name: 'SubCanvas'
   983                 )
  1114 		    #layout: #(#LayoutFrame 309 0 15 0 445 0 110 0)
   984                  #(#LabelSpec
  1115 		    #hasHorizontalScrollBar: true
   985                     #name: 'ComboListLabel'
  1116 		    #hasVerticalScrollBar: true
   986                     #layout: #(#AlignmentOrigin 17 0 65 0 0 1)
  1117 		)
   987                     #label: 'Combo List'
  1118 		 #(#LabelSpec
   988                     #style: #(#FontDescription #helvetica #medium #roman 10)
  1119 		    #name: 'SubCanvasLabel'
   989                     #adjust: #left
  1120 		    #layout: #(#AlignmentOrigin 336 0 19 0 0 0)
   990                     #resizeForLabel: true
  1121 		    #label: 'SubCanvas'
   991                     #canUIDrag: false
  1122 		    #style: #(#FontDescription #helvetica #medium #roman 10)
   992                 )
  1123 		    #adjust: #left
   993                  #(#ComboBoxSpec
  1124 		    #resizeForLabel: true
   994                     #name: 'Combo Box'
  1125 		    #canUIDrag: false
   995                     #layout: #(#LayoutFrame 15 0 73 0 140 0 93 0)
  1126 		)
   996                 )
  1127 		 #(#LabelSpec
   997                  #(#LabelSpec
  1128 		    #name: 'SliderLabel'
   998                     #name: 'ComboBoxLabel'
  1129 		    #layout: #(#AlignmentOrigin 95 0 129 0 1 0)
   999                     #layout: #(#AlignmentOrigin 17 0 93 0 0 1)
  1130 		    #label: 'Slider'
  1000                     #label: 'Combo Box'
  1131 		    #style: #(#FontDescription #helvetica #medium #roman 10)
  1001                     #style: #(#FontDescription #helvetica #medium #roman 10)
  1132 		    #resizeForLabel: true
  1002                     #adjust: #left
  1133 		    #canUIDrag: false
  1003                     #resizeForLabel: true
  1134 		)
  1004                     #canUIDrag: false
  1135 		 #(#SliderSpec
  1005                 )
  1136 		    #name: 'Slider'
  1006                  #(#TabViewSpec
  1137 		    #layout: #(#LayoutFrame 100 0 126 0 215 0 144 0)
  1007                     #name: 'Tab Header'
  1138 		    #orientation: #horizontal
  1008                     #layout: #(#LayoutFrame 157 0 15 0 292 0 51 0)
  1139 		    #step: 1
  1009                 )
  1140 		)
  1010                  #(#LabelSpec
  1141 		 #(#LabelSpec
  1011                     #name: 'TabHeaderLabel'
  1142 		    #name: 'ThumbWheelLabel'
  1012                     #layout: #(#Point 160 33)
  1143 		    #layout: #(#AlignmentOrigin 95 0 157 0 1 0)
  1013                     #label: 'Tab Header'
  1144 		    #label: 'Thumb Wheel'
  1014                     #style: #(#FontDescription #helvetica #medium #roman 10)
  1145 		    #style: #(#FontDescription #helvetica #medium #roman 10)
  1015                     #adjust: #left
  1146 		    #resizeForLabel: true
  1016                     #resizeForLabel: true
  1147 		    #canUIDrag: false
  1017                     #canUIDrag: false
  1148 		)
  1018                 )
  1149 		 #(#ThumbWheelSpec
  1019                  #(#NoteBookViewSpec
  1150 		    #name: 'Thumb Wheel'
  1020                     #name: 'Note Book'
  1151 		    #layout: #(#LayoutFrame 100 0 152 0 215 0 172 0)
  1021                     #layout: #(#LayoutFrame 157 0 58 0 292 0 150 0)
  1152 		    #orientation: #horizontal
  1022                 )
  1153 		    #step: 1
  1023                  #(#LabelSpec
  1154 		)
  1024                     #name: 'NoteBookLabel'
  1155 		 #(#LabelSpec
  1025                     #layout: #(#Point 161 132)
  1156 		    #name: 'RegionLabel'
  1026                     #label: 'Note Book'
  1157 		    #layout: #(#AlignmentOrigin 95 0 189 0 1 0)
  1027                     #style: #(#FontDescription #helvetica #medium #roman 10)
  1158 		    #label: 'Region'
  1028                     #adjust: #left
  1159 		    #style: #(#FontDescription #helvetica #medium #roman 10)
  1029                     #resizeForLabel: true
  1160 		    #adjust: #left
  1030                     #canUIDrag: false
  1161 		    #resizeForLabel: true
  1031                 )
  1162 		    #canUIDrag: false
  1032                  #(#UIGalleryViewSpec
  1163 		)
  1033                     #name: 'Gallery'
  1164 		 #(#RegionSpec
  1034                     #layout: #(#LayoutFrame 309 0 15 0 445 0 150 0)
  1165 		    #name: 'Region'
  1035                 )
  1166 		    #layout: #(#LayoutFrame 100 0 183 0 215 0 212 0)
  1036                  #(#LabelSpec
  1167 		    #lineWidth: 2
  1037                     #name: 'GalleryLabel'
  1168 		    #regionType: #ellipse
  1038                     #layout: #(#Point 313 132)
  1169 		)
  1039                     #label: 'Gallery'
  1170 		 #(#LabelSpec
  1040                     #style: #(#FontDescription #helvetica #medium #roman 10)
  1171 		    #name: 'SeparatorLabel'
  1041                     #adjust: #left
  1172 		    #layout: #(#AlignmentOrigin 95 0 219 0 1 0)
  1042                     #resizeForLabel: true
  1173 		    #label: 'Separator'
  1043                     #canUIDrag: false
  1174 		    #style: #(#FontDescription #helvetica #medium #roman 10)
  1044                 )
  1175 		    #adjust: #left
  1045               )
  1176 		    #resizeForLabel: true
  1046           )
  1177 		    #canUIDrag: false
       
  1178 		)
       
  1179 		 #(#DividerSpec
       
  1180 		    #name: 'Separator'
       
  1181 		    #layout: #(#LayoutFrame 100 0 225 0 215 0 229 0)
       
  1182 		)
       
  1183 		 #(#LabelSpec
       
  1184 		    #name: 'ProgressIndicatorsLabel'
       
  1185 		    #layout: #(#AlignmentOrigin 345 0 129 0 1 0)
       
  1186 		    #label: 'Progress Indicator'
       
  1187 		    #style: #(#FontDescription #helvetica #medium #roman 10)
       
  1188 		    #adjust: #left
       
  1189 		    #resizeForLabel: true
       
  1190 		    #canUIDrag: false
       
  1191 		)
       
  1192 		 #(#ProgressIndicatorSpec
       
  1193 		    #name: 'Progress Indicator'
       
  1194 		    #layout: #(#LayoutFrame 350 0 126 0 445 0 144 0)
       
  1195 		)
       
  1196 		 #(#LabelSpec
       
  1197 		    #name: 'RoundProgressIndicatorsLabel'
       
  1198 		    #layout: #(#AlignmentOrigin 345 0 179 0 1 0)
       
  1199 		    #label: 'Round
       
  1200 Progress Indicator'
       
  1201 		    #style: #(#FontDescription #helvetica #medium #roman 10)
       
  1202 		    #adjust: #left
       
  1203 		    #resizeForLabel: true
       
  1204 		    #canUIDrag: false
       
  1205 		)
       
  1206 		 #(#RoundProgressIndicatorSpec
       
  1207 		    #name: 'Round Progress Indicator'
       
  1208 		    #layout: #(#LayoutFrame 350 0 148 0 445 0 243 0)
       
  1209 		    #level: 0
       
  1210 		    #borderWidth: 1
       
  1211 		)
       
  1212 	      )
       
  1213 	  )
  1047       )
  1214       )
  1048 
  1215 
  1049     "Modified: / 6.6.1998 / 16:54:56 / cg"
  1216     "Modified: / 21.8.1998 / 20:53:14 / cg"
  1050 !
  1217 !
  1051 
  1218 
  1052 standardMisc
  1219 standardTexts
  1053     "This resource specification was automatically generated
  1220     "This resource specification was automatically generated
  1054      by the UIPainter of ST/X."
  1221      by the UIPainter of ST/X."
  1055 
  1222 
  1056     "Do not manually edit this!! If it is corrupted,
  1223     "Do not manually edit this!! If it is corrupted,
  1057      the UIPainter may not be able to read the specification."
  1224      the UIPainter may not be able to read the specification."
  1058 
  1225 
  1059     "
  1226     "
  1060      UIPainter new openOnClass:UISelectionPanel andSelector:#standardMisc
  1227      UIPainter new openOnClass:UISelectionPanel andSelector:#standardTexts
  1061      UISelectionPanel new openInterface:#standardMisc
  1228      UISelectionPanel new openInterface:#standardTexts
  1062     "
  1229     "
  1063 
  1230 
  1064     <resource: #canvas>
  1231     <resource: #canvas>
  1065 
  1232 
  1066     ^
  1233     ^
  1067      
  1234      
  1068        #(#FullSpec
  1235        #(#FullSpec
  1069           #window: 
  1236 	  #window: 
  1070            #(#WindowSpec
  1237 	   #(#WindowSpec
  1071               #name: 'Misc'
  1238 	      #name: 'Texts'
  1072               #layout: #(#LayoutFrame 50 0 73 0 517 0 357 0)
  1239 	      #layout: #(#LayoutFrame 102 0 279 0 568 0 485 0)
  1073               #label: 'Misc'
  1240 	      #label: 'Texts'
  1074               #min: #(#Point 10 10)
  1241 	      #min: #(#Point 10 10)
  1075               #max: #(#Point 1280 1024)
  1242 	      #max: #(#Point 1280 1024)
  1076               #bounds: #(#Rectangle 50 73 518 358)
  1243 	      #bounds: #(#Rectangle 102 279 569 486)
  1077               #usePreferredExtent: false
  1244 	      #usePreferredExtent: false
  1078           )
  1245 	  )
  1079           #component: 
  1246 	  #component: 
  1080            #(#SpecCollection
  1247 	   #(#SpecCollection
  1081               #collection: 
  1248 	      #collection: 
  1082                #(
  1249 	       #(
  1083                  #(#ArbitraryComponentSpec
  1250 		 #(#TextEditorSpec
  1084                     #name: 'Arbitrary Component'
  1251 		    #name: 'Text Editor'
  1085                     #layout: #(#LayoutFrame 15 0 15 0 140 0 110 0)
  1252 		    #layout: #(#LayoutFrame 15 0 15 0 220 0 110 0)
  1086                     #hasBorder: false
  1253 		    #hasHorizontalScrollBar: true
  1087                 )
  1254 		    #hasVerticalScrollBar: true
  1088                  #(#LabelSpec
  1255 		)
  1089                     #name: 'ArbitraryComponentLabel1'
  1256 		 #(#LabelSpec
  1090                     #layout: #(#AlignmentOrigin 19 0 19 0 0 0)
  1257 		    #name: 'TextEditorLabel'
  1091                     #label: 'Arbitrary'
  1258 		    #layout: #(#AlignmentOrigin 53 0 19 0 0 0)
  1092                     #style: #(#FontDescription #helvetica #medium #roman 10)
  1259 		    #label: 'Text Editor'
  1093                     #adjust: #left
  1260 		    #style: #(#FontDescription #helvetica #medium #roman 10)
  1094                     #resizeForLabel: true
  1261 		    #adjust: #left
  1095                     #canUIDrag: false
  1262 		    #resizeForLabel: true
  1096                 )
  1263 		    #canUIDrag: false
  1097                  #(#LabelSpec
  1264 		)
  1098                     #name: 'ArbitraryComponentLabel2'
  1265 		 #(#HTMLViewSpec
  1099                     #layout: #(#AlignmentOrigin 19 0 43 0 0 0)
  1266 		    #name: 'HTML Browser'
  1100                     #label: 'Component'
  1267 		    #layout: #(#LayoutFrame 240 0 15 0 445 0 110 0)
  1101                     #style: #(#FontDescription #helvetica #medium #roman 10)
  1268 		    #hasHorizontalScrollBar: true
  1102                     #adjust: #left
  1269 		    #hasVerticalScrollBar: true
  1103                     #resizeForLabel: true
  1270 		)
  1104                     #canUIDrag: false
  1271 		 #(#LabelSpec
  1105                 )
  1272 		    #name: 'HTMLViewLabel'
  1106                  #(#UISubSpecification
  1273 		    #layout: #(#AlignmentOrigin 267 0 19 0 0 0)
  1107                     #name: 'SubSpecification'
  1274 		    #label: 'HTML View'
  1108                     #layout: #(#LayoutFrame 157 0 15 0 292 0 110 0)
  1275 		    #style: #(#FontDescription #helvetica #medium #roman 10)
  1109                 )
  1276 		    #adjust: #left
  1110                  #(#LabelSpec
  1277 		    #resizeForLabel: true
  1111                     #name: 'SubSpecificationLabel'
  1278 		    #canUIDrag: false
  1112                     #layout: #(#Point 161 19)
  1279 		)
  1113                     #label: 'SubSpecification'
  1280 		 #(#InputFieldSpec
  1114                     #style: #(#FontDescription #helvetica #medium #roman 10)
  1281 		    #name: 'Entry Field'
  1115                     #resizeForLabel: true
  1282 		    #layout: #(#LayoutFrame 15 0 125 0 220 0 147 0)
  1116                     #canUIDrag: false
  1283 		)
  1117                 )
  1284 		 #(#LabelSpec
  1118                  #(#SubCanvasSpec
  1285 		    #name: 'EntryFieldLabel'
  1119                     #name: 'SubCanvas'
  1286 		    #layout: #(#AlignmentOrigin 53 0 147 0 0 1)
  1120                     #layout: #(#LayoutFrame 309 0 15 0 445 0 110 0)
  1287 		    #label: 'Entry Field'
  1121                     #hasHorizontalScrollBar: true
  1288 		    #style: #(#FontDescription #helvetica #medium #roman 10)
  1122                     #hasVerticalScrollBar: true
  1289 		    #adjust: #left
  1123                 )
  1290 		    #resizeForLabel: true
  1124                  #(#LabelSpec
  1291 		    #canUIDrag: false
  1125                     #name: 'SubCanvasLabel'
  1292 		)
  1126                     #layout: #(#AlignmentOrigin 336 0 19 0 0 0)
  1293 		 #(#LabelSpec
  1127                     #label: 'SubCanvas'
  1294 		    #name: 'Label'
  1128                     #style: #(#FontDescription #helvetica #medium #roman 10)
  1295 		    #layout: #(#LayoutFrame 240 0 125 0 445 0 147 0)
  1129                     #adjust: #left
  1296 		    #label: 'Label'
  1130                     #resizeForLabel: true
  1297 		    #translateLabel: true
  1131                     #canUIDrag: false
  1298 		)
  1132                 )
  1299 	      )
  1133                  #(#LabelSpec
  1300 	  )
  1134                     #name: 'SliderLabel'
       
  1135                     #layout: #(#AlignmentOrigin 95 0 129 0 1 0)
       
  1136                     #label: 'Slider'
       
  1137                     #style: #(#FontDescription #helvetica #medium #roman 10)
       
  1138                     #resizeForLabel: true
       
  1139                     #canUIDrag: false
       
  1140                 )
       
  1141                  #(#SliderSpec
       
  1142                     #name: 'Slider'
       
  1143                     #layout: #(#LayoutFrame 100 0 126 0 215 0 144 0)
       
  1144                     #orientation: #horizontal
       
  1145                     #step: 1
       
  1146                 )
       
  1147                  #(#LabelSpec
       
  1148                     #name: 'ThumbWheelLabel'
       
  1149                     #layout: #(#AlignmentOrigin 95 0 157 0 1 0)
       
  1150                     #label: 'Thumb Wheel'
       
  1151                     #style: #(#FontDescription #helvetica #medium #roman 10)
       
  1152                     #resizeForLabel: true
       
  1153                     #canUIDrag: false
       
  1154                 )
       
  1155                  #(#ThumbWheelSpec
       
  1156                     #name: 'Thumb Wheel'
       
  1157                     #layout: #(#LayoutFrame 100 0 152 0 215 0 172 0)
       
  1158                     #orientation: #horizontal
       
  1159                     #step: 1
       
  1160                 )
       
  1161                  #(#LabelSpec
       
  1162                     #name: 'RegionLabel'
       
  1163                     #layout: #(#AlignmentOrigin 95 0 189 0 1 0)
       
  1164                     #label: 'Region'
       
  1165                     #style: #(#FontDescription #helvetica #medium #roman 10)
       
  1166                     #adjust: #left
       
  1167                     #resizeForLabel: true
       
  1168                     #canUIDrag: false
       
  1169                 )
       
  1170                  #(#RegionSpec
       
  1171                     #name: 'Region'
       
  1172                     #layout: #(#LayoutFrame 100 0 183 0 215 0 212 0)
       
  1173                     #lineWidth: 2
       
  1174                     #regionType: #ellipse
       
  1175                 )
       
  1176                  #(#LabelSpec
       
  1177                     #name: 'SeparatorLabel'
       
  1178                     #layout: #(#AlignmentOrigin 95 0 219 0 1 0)
       
  1179                     #label: 'Separator'
       
  1180                     #style: #(#FontDescription #helvetica #medium #roman 10)
       
  1181                     #adjust: #left
       
  1182                     #resizeForLabel: true
       
  1183                     #canUIDrag: false
       
  1184                 )
       
  1185                  #(#DividerSpec
       
  1186                     #name: 'Separator'
       
  1187                     #layout: #(#LayoutFrame 100 0 225 0 215 0 229 0)
       
  1188                 )
       
  1189                  #(#LabelSpec
       
  1190                     #name: 'ProgressIndicatorsLabel'
       
  1191                     #layout: #(#AlignmentOrigin 345 0 129 0 1 0)
       
  1192                     #label: 'Progress Indicator'
       
  1193                     #style: #(#FontDescription #helvetica #medium #roman 10)
       
  1194                     #adjust: #left
       
  1195                     #resizeForLabel: true
       
  1196                     #canUIDrag: false
       
  1197                 )
       
  1198                  #(#ProgressIndicatorSpec
       
  1199                     #name: 'Progress Indicator'
       
  1200                     #layout: #(#LayoutFrame 350 0 126 0 445 0 144 0)
       
  1201                 )
       
  1202                  #(#LabelSpec
       
  1203                     #name: 'RoundProgressIndicatorsLabel'
       
  1204                     #layout: #(#AlignmentOrigin 345 0 179 0 1 0)
       
  1205                     #label: 'Round
       
  1206 Progress Indicator'
       
  1207                     #style: #(#FontDescription #helvetica #medium #roman 10)
       
  1208                     #adjust: #left
       
  1209                     #resizeForLabel: true
       
  1210                     #canUIDrag: false
       
  1211                 )
       
  1212                  #(#RoundProgressIndicatorSpec
       
  1213                     #name: 'Round Progress Indicator'
       
  1214                     #layout: #(#LayoutFrame 350 0 148 0 445 0 243 0)
       
  1215                     #level: 0
       
  1216                     #borderWidth: 1
       
  1217                 )
       
  1218               )
       
  1219           )
       
  1220       )
  1301       )
  1221 
  1302 
  1222     "Modified: / 21.8.1998 / 20:53:14 / cg"
  1303     "Modified: / 20.5.1998 / 03:25:40 / cg"
  1223 !
  1304 !
  1224 
  1305 
  1225 standardTexts
  1306 standardUserPanel
  1226     "This resource specification was automatically generated
  1307     "this window spec was automatically generated by the ST/X UIPainter"
  1227      by the UIPainter of ST/X."
  1308 
  1228 
  1309     "do not manually edit this - the painter/builder may not be able to
  1229     "Do not manually edit this!! If it is corrupted,
  1310      handle the specification if its corrupted."
  1230      the UIPainter may not be able to read the specification."
  1311 
  1231 
  1312     "
  1232     "
  1313      UIPainter new openOnClass:UISelectionPanel andSelector:#standardUserPanel
  1233      UIPainter new openOnClass:UISelectionPanel andSelector:#standardTexts
  1314      UISelectionPanel new openInterface:#standardUserPanel
  1234      UISelectionPanel new openInterface:#standardTexts
       
  1235     "
  1315     "
  1236 
  1316 
  1237     <resource: #canvas>
  1317     <resource: #canvas>
  1238 
  1318 
  1239     ^
  1319     ^
  1240      
  1320      
  1241        #(#FullSpec
  1321        #(#FullSpec
  1242           #window: 
  1322 	  #'window:' 
  1243            #(#WindowSpec
  1323 	   #(#WindowSpec
  1244               #name: 'Texts'
  1324 	      #'name:' 'UserPanel'
  1245               #layout: #(#LayoutFrame 102 0 279 0 568 0 485 0)
  1325 	      #'layout:' #(#LayoutFrame 0 0.0 0 0.0 0 1.0 0 1.0)
  1246               #label: 'Texts'
  1326 	      #'label:' 'UserPanel'
  1247               #min: #(#Point 10 10)
  1327 	      #'bounds:' #(#Rectangle 0 0 445 162)
  1248               #max: #(#Point 1280 1024)
  1328 	  )
  1249               #bounds: #(#Rectangle 102 279 569 486)
  1329 	  #'component:' 
  1250               #usePreferredExtent: false
  1330 	   #(#SpecCollection
  1251           )
  1331 	      #'collection:' 
  1252           #component: 
  1332 	       #(
  1253            #(#SpecCollection
  1333 		 #(#LabelSpec
  1254               #collection: 
  1334 		    #'name:' 'helpText'
  1255                #(
  1335 		    #'layout:' #(#Point 10 0)
  1256                  #(#TextEditorSpec
  1336 		    #'labelChannel:' #userDefinedHelpText
  1257                     #name: 'Text Editor'
  1337 		    #'resizeForLabel:' true
  1258                     #layout: #(#LayoutFrame 15 0 15 0 220 0 110 0)
  1338 		    #'canUIDrag:' false
  1259                     #hasHorizontalScrollBar: true
  1339 		)
  1260                     #hasVerticalScrollBar: true
  1340 	      )
  1261                 )
  1341 	  )
  1262                  #(#LabelSpec
       
  1263                     #name: 'TextEditorLabel'
       
  1264                     #layout: #(#AlignmentOrigin 53 0 19 0 0 0)
       
  1265                     #label: 'Text Editor'
       
  1266                     #style: #(#FontDescription #helvetica #medium #roman 10)
       
  1267                     #adjust: #left
       
  1268                     #resizeForLabel: true
       
  1269                     #canUIDrag: false
       
  1270                 )
       
  1271                  #(#HTMLViewSpec
       
  1272                     #name: 'HTML Browser'
       
  1273                     #layout: #(#LayoutFrame 240 0 15 0 445 0 110 0)
       
  1274                     #hasHorizontalScrollBar: true
       
  1275                     #hasVerticalScrollBar: true
       
  1276                 )
       
  1277                  #(#LabelSpec
       
  1278                     #name: 'HTMLViewLabel'
       
  1279                     #layout: #(#AlignmentOrigin 267 0 19 0 0 0)
       
  1280                     #label: 'HTML View'
       
  1281                     #style: #(#FontDescription #helvetica #medium #roman 10)
       
  1282                     #adjust: #left
       
  1283                     #resizeForLabel: true
       
  1284                     #canUIDrag: false
       
  1285                 )
       
  1286                  #(#InputFieldSpec
       
  1287                     #name: 'Entry Field'
       
  1288                     #layout: #(#LayoutFrame 15 0 125 0 220 0 147 0)
       
  1289                 )
       
  1290                  #(#LabelSpec
       
  1291                     #name: 'EntryFieldLabel'
       
  1292                     #layout: #(#AlignmentOrigin 53 0 147 0 0 1)
       
  1293                     #label: 'Entry Field'
       
  1294                     #style: #(#FontDescription #helvetica #medium #roman 10)
       
  1295                     #adjust: #left
       
  1296                     #resizeForLabel: true
       
  1297                     #canUIDrag: false
       
  1298                 )
       
  1299                  #(#LabelSpec
       
  1300                     #name: 'Label'
       
  1301                     #layout: #(#LayoutFrame 240 0 125 0 445 0 147 0)
       
  1302                     #label: 'Label'
       
  1303                     #translateLabel: true
       
  1304                 )
       
  1305               )
       
  1306           )
       
  1307       )
       
  1308 
       
  1309     "Modified: / 20.5.1998 / 03:25:40 / cg"
       
  1310 !
       
  1311 
       
  1312 standardUserPanel
       
  1313     "this window spec was automatically generated by the ST/X UIPainter"
       
  1314 
       
  1315     "do not manually edit this - the painter/builder may not be able to
       
  1316      handle the specification if its corrupted."
       
  1317 
       
  1318     "
       
  1319      UIPainter new openOnClass:UISelectionPanel andSelector:#standardUserPanel
       
  1320      UISelectionPanel new openInterface:#standardUserPanel
       
  1321     "
       
  1322 
       
  1323     <resource: #canvas>
       
  1324 
       
  1325     ^
       
  1326      
       
  1327        #(#FullSpec
       
  1328           #'window:' 
       
  1329            #(#WindowSpec
       
  1330               #'name:' 'UserPanel'
       
  1331               #'layout:' #(#LayoutFrame 0 0.0 0 0.0 0 1.0 0 1.0)
       
  1332               #'label:' 'UserPanel'
       
  1333               #'bounds:' #(#Rectangle 0 0 445 162)
       
  1334           )
       
  1335           #'component:' 
       
  1336            #(#SpecCollection
       
  1337               #'collection:' 
       
  1338                #(
       
  1339                  #(#LabelSpec
       
  1340                     #'name:' 'helpText'
       
  1341                     #'layout:' #(#Point 10 0)
       
  1342                     #'labelChannel:' #userDefinedHelpText
       
  1343                     #'resizeForLabel:' true
       
  1344                     #'canUIDrag:' false
       
  1345                 )
       
  1346               )
       
  1347           )
       
  1348       )
  1342       )
  1349 ! !
  1343 ! !
  1350 
  1344 
  1351 !UISelectionPanel methodsFor:'actions'!
  1345 !UISelectionPanel methodsFor:'actions'!
  1352 
  1346 
  1358     bd at:#specsKey  put:( (userSpecs  ? '') asValue).
  1352     bd at:#specsKey  put:( (userSpecs  ? '') asValue).
  1359     bd at:#labelsKey put:( (userLabels ? '') asValue).
  1353     bd at:#labelsKey put:( (userLabels ? '') asValue).
  1360     bd at:#updateDefaultResources put:(false asValue).
  1354     bd at:#updateDefaultResources put:(false asValue).
  1361 
  1355 
  1362     (self openDialogInterface:#nameAndSelectorSpec withBindings:bd) ifTrue:[
  1356     (self openDialogInterface:#nameAndSelectorSpec withBindings:bd) ifTrue:[
  1363         (      (cls := (bd at:#className) value) notNil
  1357 	(      (cls := (bd at:#className) value) notNil
  1364           and:[(sel := (bd at:#specsKey)  value) notNil
  1358 	  and:[(sel := (bd at:#specsKey)  value) notNil
  1365           and:[(lbl := (bd at:#labelsKey) value) notNil]]
  1359 	  and:[(lbl := (bd at:#labelsKey) value) notNil]]
  1366         ) ifTrue:[
  1360 	) ifTrue:[
  1367             userClass  := cls.
  1361 	    userClass  := cls.
  1368             userSpecs  := sel.
  1362 	    userSpecs  := sel.
  1369             userLabels := lbl.
  1363 	    userLabels := lbl.
  1370 
  1364 
  1371             (bd at:#updateDefaultResources) value ifTrue:[
  1365 	    (bd at:#updateDefaultResources) value ifTrue:[
  1372                 UserClass  := userClass.
  1366 		UserClass  := userClass.
  1373                 UserSpecs  := userSpecs.
  1367 		UserSpecs  := userSpecs.
  1374                 UserLabels := userLabels.
  1368 		UserLabels := userLabels.
  1375             ]
  1369 	    ]
  1376         ]
  1370 	]
  1377     ].
  1371     ].
  1378 !
  1372 !
  1379 
  1373 
  1380 paste:something
  1374 paste:something
  1381     "paste something at a point
  1375     "paste something at a point
  1382     "
  1376     "
  1383     |coll specs point device gallery ext spec|
  1377     |coll specs point device gallery ext spec|
  1384 
  1378 
  1385     clipBoardSpec isNil ifTrue:[
  1379     clipBoardSpec isNil ifTrue:[
  1386         clipBoardSpec := SpecCollection new.
  1380 	clipBoardSpec := SpecCollection new.
  1387         clipBoardSpec collection:(OrderedCollection new).
  1381 	clipBoardSpec collection:(OrderedCollection new).
  1388     ].
  1382     ].
  1389     coll    := clipBoardSpec collection.
  1383     coll    := clipBoardSpec collection.
  1390     gallery := self builder componentAt:#gallery.
  1384     gallery := self builder componentAt:#gallery.
  1391     device  := gallery device.
  1385     device  := gallery device.
  1392 
  1386 
  1393     point   := device translatePoint:(device pointerPosition)
  1387     point   := device translatePoint:(device pointerPosition)
  1394                                 from:(device rootView id)
  1388 				from:(device rootView id)
  1395                                   to:(gallery canvas id).
  1389 				  to:(gallery canvas id).
  1396 
  1390 
  1397     point y < 1 ifTrue:[point y:1].
  1391     point y < 1 ifTrue:[point y:1].
  1398     ext := gallery extent - (10@10).
  1392     ext := gallery extent - (10@10).
  1399 
  1393 
  1400     (specs := something) isCollection ifFalse:[
  1394     (specs := something) isCollection ifFalse:[
  1401         specs := Array with:something
  1395 	specs := Array with:something
  1402     ].
  1396     ].
  1403 
  1397 
  1404     specs do:[:aSpec|
  1398     specs do:[:aSpec|
  1405         point x > ext x ifTrue:[point x:1].
  1399 	point x > ext x ifTrue:[point x:1].
  1406         point y > ext y ifTrue:[point y:1].
  1400 	point y > ext y ifTrue:[point y:1].
  1407 
  1401 
  1408         spec := aSpec copy.
  1402 	spec := aSpec copy.
  1409         spec layout:(LayoutOrigin fromPoint:point).
  1403 	spec layout:(LayoutOrigin fromPoint:point).
  1410         coll add:spec.
  1404 	coll add:spec.
  1411         point := point + (20@20).
  1405 	point := point + (20@20).
  1412     ].
  1406     ].
  1413     gallery update.
  1407     gallery update.
  1414 !
  1408 !
  1415 
  1409 
  1416 raiseMenu
  1410 raiseMenu
  1419     |spec menu value paste|
  1413     |spec menu value paste|
  1420 
  1414 
  1421     spec := self clientSpec value.
  1415     spec := self clientSpec value.
  1422 
  1416 
  1423     spec notNil ifTrue:[
  1417     spec notNil ifTrue:[
  1424         menu := self class menuSelected decodeAsLiteralArray.
  1418 	menu := self class menuSelected decodeAsLiteralArray.
  1425         self isClipBoard ifFalse:[
  1419 	self isClipBoard ifFalse:[
  1426             (menu someMenuItemWithValue:#cut) disable.
  1420 	    (menu someMenuItemWithValue:#cut) disable.
  1427         ].
  1421 	].
  1428 
  1422 
  1429         (value := menu startUp) == #cut ifTrue:[
  1423 	(value := menu startUp) == #cut ifTrue:[
  1430             clipBoardSpec collection remove:spec ifAbsent:nil.
  1424 	    clipBoardSpec collection remove:spec ifAbsent:nil.
  1431             (self builder componentAt:#gallery) update.
  1425 	    (self builder componentAt:#gallery) update.
  1432         ] ifFalse:[
  1426 	] ifFalse:[
  1433             value == #copy ifTrue:[
  1427 	    value == #copy ifTrue:[
  1434                 self window setSelection:spec
  1428 		self window setSelection:spec
  1435             ]
  1429 	    ]
  1436         ].
  1430 	].
  1437       ^ self
  1431       ^ self
  1438     ].
  1432     ].
  1439 
  1433 
  1440     self isUserBoard ifTrue:[
  1434     self isUserBoard ifTrue:[
  1441         ^ self defineClassAndSelector
  1435 	^ self defineClassAndSelector
  1442     ].
  1436     ].
  1443 
  1437 
  1444     paste := self window getSelection.
  1438     paste := self window getSelection.
  1445 
  1439 
  1446     (self canPaste:paste) ifTrue:[
  1440     (self canPaste:paste) ifTrue:[
  1447         menu := self class menuUnselected decodeAsLiteralArray.
  1441 	menu := self class menuUnselected decodeAsLiteralArray.
  1448 
  1442 
  1449         (menu startUp) == #paste ifTrue:[
  1443 	(menu startUp) == #paste ifTrue:[
  1450             self paste:paste
  1444 	    self paste:paste
  1451         ]
  1445 	]
  1452     ].
  1446     ].
  1453 ! !
  1447 ! !
  1454 
  1448 
  1455 !UISelectionPanel methodsFor:'aspects'!
  1449 !UISelectionPanel methodsFor:'aspects'!
  1456 
  1450 
  1458     "automatically generated by UIPainter ..."
  1452     "automatically generated by UIPainter ..."
  1459 
  1453 
  1460     |holder|
  1454     |holder|
  1461 
  1455 
  1462     (holder := builder bindingAt:#clientSpec) isNil ifTrue:[
  1456     (holder := builder bindingAt:#clientSpec) isNil ifTrue:[
  1463         builder aspectAt:#clientSpec put:(holder :=  ValueHolder new).
  1457 	builder aspectAt:#clientSpec put:(holder :=  ValueHolder new).
  1464         holder addDependent:self.
  1458 	holder addDependent:self.
  1465     ].
  1459     ].
  1466     ^ holder
  1460     ^ holder
  1467 !
  1461 !
  1468 
  1462 
  1469 clipBoardSpec
  1463 clipBoardSpec
  1474     "automatically generated by UIPainter ..."
  1468     "automatically generated by UIPainter ..."
  1475 
  1469 
  1476     |holder|
  1470     |holder|
  1477 
  1471 
  1478     (holder := builder bindingAt:#galleryList) isNil ifTrue:[
  1472     (holder := builder bindingAt:#galleryList) isNil ifTrue:[
  1479         builder aspectAt:#galleryList put:(holder :=  ValueHolder new).
  1473 	builder aspectAt:#galleryList put:(holder :=  ValueHolder new).
  1480     ].
  1474     ].
  1481     ^ holder
  1475     ^ holder
  1482 !
  1476 !
  1483 
  1477 
  1484 galleryModel
  1478 galleryModel
  1485     "automatically generated by UIPainter ..."
  1479     "automatically generated by UIPainter ..."
  1486 
  1480 
  1487     |holder|
  1481     |holder|
  1488 
  1482 
  1489     (holder := builder bindingAt:#galleryModel) isNil ifTrue:[
  1483     (holder := builder bindingAt:#galleryModel) isNil ifTrue:[
  1490         builder aspectAt:#galleryModel put:(holder :=  ValueHolder new).
  1484 	builder aspectAt:#galleryModel put:(holder :=  ValueHolder new).
  1491     ].
  1485     ].
  1492     ^ holder
  1486     ^ holder
  1493 !
  1487 !
  1494 
  1488 
  1495 majorChannel
  1489 majorChannel
  1496     "automatically generated by UIPainter ..."
  1490     "automatically generated by UIPainter ..."
  1497 
  1491 
  1498     |holder|
  1492     |holder|
  1499 
  1493 
  1500     (holder := builder bindingAt:#majorChannel) isNil ifTrue:[
  1494     (holder := builder bindingAt:#majorChannel) isNil ifTrue:[
  1501         holder := AspectAdaptor new subject:self; forAspect:#majorSelection.
  1495 	holder := AspectAdaptor new subject:self; forAspect:#majorSelection.
  1502         builder aspectAt:#majorChannel put:holder.
  1496 	builder aspectAt:#majorChannel put:holder.
  1503     ].
  1497     ].
  1504     ^ holder
  1498     ^ holder
  1505 !
  1499 !
  1506 
  1500 
  1507 majorList
  1501 majorList
  1514     "automatically generated by UIPainter ..."
  1508     "automatically generated by UIPainter ..."
  1515 
  1509 
  1516     |holder|
  1510     |holder|
  1517 
  1511 
  1518     (holder := builder bindingAt:#minorKeys) isNil ifTrue:[
  1512     (holder := builder bindingAt:#minorKeys) isNil ifTrue:[
  1519         builder aspectAt:#minorKeys put:(holder :=  ValueHolder new).
  1513 	builder aspectAt:#minorKeys put:(holder :=  ValueHolder new).
  1520     ].
  1514     ].
  1521     ^ holder
  1515     ^ holder
  1522 ! !
  1516 ! !
  1523 
  1517 
  1524 !UISelectionPanel methodsFor:'change & update'!
  1518 !UISelectionPanel methodsFor:'change & update'!
  1527     "one of my models changed its value
  1521     "one of my models changed its value
  1528     "
  1522     "
  1529     |channel label topView|
  1523     |channel label topView|
  1530 
  1524 
  1531     (channel := self clientSpec) == changedObject ifTrue:[
  1525     (channel := self clientSpec) == changedObject ifTrue:[
  1532         topView := builder window topView.
  1526 	topView := builder window topView.
  1533 
  1527 
  1534         (label := channel value) notNil ifTrue:[
  1528 	(label := channel value) notNil ifTrue:[
  1535             topView label:label name, ' '.
  1529 	    topView label:label name, ' '.
  1536         ] ifFalse:[
  1530 	] ifFalse:[
  1537             topView label:'Widget Gallery '
  1531 	    topView label:'Widget Gallery '
  1538         ]
  1532 	]
  1539     ].
  1533     ].
  1540 
  1534 
  1541     super update:something with:aParameter from:changedObject.
  1535     super update:something with:aParameter from:changedObject.
  1542 
  1536 
  1543 
  1537 
  1554     |spc top|
  1548     |spc top|
  1555 
  1549 
  1556     top := DragAndDropManager dragOriginatorQuerySignal raise topView.
  1550     top := DragAndDropManager dragOriginatorQuerySignal raise topView.
  1557 
  1551 
  1558     top == aComponent topView ifTrue:[
  1552     top == aComponent topView ifTrue:[
  1559         spc := self clientSpec value.
  1553 	spc := self clientSpec value.
  1560         spc isNil ifTrue:[^ self].
  1554 	spc isNil ifTrue:[^ self].
  1561 
  1555 
  1562         (clipBoardSpec collection remove:spc ifAbsent:nil) isNil ifTrue:[
  1556 	(clipBoardSpec collection remove:spc ifAbsent:nil) isNil ifTrue:[
  1563             ^ self
  1557 	    ^ self
  1564         ].
  1558 	].
  1565     ] ifFalse:[
  1559     ] ifFalse:[
  1566         spc := something collect:[:el| el theObject].
  1560 	spc := something collect:[:el| el theObject].
  1567     ].
  1561     ].
  1568     self paste:spc.
  1562     self paste:spc.
  1569 ! !
  1563 ! !
  1570 
  1564 
  1571 !UISelectionPanel methodsFor:'queries'!
  1565 !UISelectionPanel methodsFor:'queries'!
  1572 
  1566 
  1573 canPaste:something
  1567 canPaste:something
  1574     "returns true if something could be paste
  1568     "returns true if something could be paste
  1575     "
  1569     "
  1576     (self isClipBoard and:[something notNil]) ifTrue:[
  1570     (self isClipBoard and:[something notNil]) ifTrue:[
  1577         something isCollection ifTrue:[
  1571 	something isCollection ifTrue:[
  1578             something notEmpty ifTrue:[
  1572 	    something notEmpty ifTrue:[
  1579                 ^ (something at:1) isKindOf:UISpecification
  1573 		^ (something at:1) isKindOf:UISpecification
  1580             ]
  1574 	    ]
  1581         ] ifFalse:[
  1575 	] ifFalse:[
  1582             ^ something isKindOf:UISpecification
  1576 	    ^ something isKindOf:UISpecification
  1583         ]
  1577 	]
  1584     ].
  1578     ].
  1585     ^ false
  1579     ^ false
  1586 
  1580 
  1587 !
  1581 !
  1588 
  1582 
  1589 isClipBoard
  1583 isClipBoard
  1590     "returns true if current view is clip board
  1584     "returns true if current view is clip board
  1591     "
  1585     "
  1592     majorSelection ~~ 0 ifTrue:[
  1586     majorSelection ~~ 0 ifTrue:[
  1593         ^ (self majorList at:majorSelection) startsWith:'Clip'
  1587 	^ (self majorList at:majorSelection) startsWith:'Clip'
  1594     ].
  1588     ].
  1595   ^ false
  1589   ^ false
  1596 !
  1590 !
  1597 
  1591 
  1598 isUserBoard
  1592 isUserBoard
  1599     "returns true if current view is clip board
  1593     "returns true if current view is clip board
  1600     "
  1594     "
  1601     majorSelection ~~ 0 ifTrue:[
  1595     majorSelection ~~ 0 ifTrue:[
  1602         ^ (self majorList at:majorSelection) startsWith:'User'
  1596 	^ (self majorList at:majorSelection) startsWith:'User'
  1603     ].
  1597     ].
  1604   ^ false
  1598   ^ false
  1605 ! !
  1599 ! !
  1606 
  1600 
  1607 !UISelectionPanel methodsFor:'selection'!
  1601 !UISelectionPanel methodsFor:'selection'!
  1612 
  1606 
  1613 majorSelection:aSelection
  1607 majorSelection:aSelection
  1614     |spec g gallery|
  1608     |spec g gallery|
  1615 
  1609 
  1616     (majorSelection == aSelection or:[aSelection == 0]) ifTrue:[
  1610     (majorSelection == aSelection or:[aSelection == 0]) ifTrue:[
  1617         ^ self
  1611 	^ self
  1618     ].
  1612     ].
  1619 
  1613 
  1620     (g := self builder componentAt:#gallery) notNil ifTrue:[
  1614     (g := self builder componentAt:#gallery) notNil ifTrue:[
  1621         g builder:nil.
  1615 	g builder:nil.
  1622     ].
  1616     ].
  1623 
  1617 
  1624     majorSelection := aSelection.
  1618     majorSelection := aSelection.
  1625     spec := ((self class specifications) at:majorSelection) last.
  1619     spec := ((self class specifications) at:majorSelection) last.
  1626 
  1620 
  1627     gallery := self galleryModel.
  1621     gallery := self galleryModel.
  1628     gallery value:0.
  1622     gallery value:0.
  1629     self minorKeys value:nil.
  1623     self minorKeys value:nil.
  1630 
  1624 
  1631     spec isSymbol ifFalse:[
  1625     spec isSymbol ifFalse:[
  1632         self galleryList  value:(spec collect:[:a| a first]).
  1626 	self galleryList  value:(spec collect:[:a| a first]).
  1633         self minorKeys setValue:(spec collect:[:a| a last]).
  1627 	self minorKeys setValue:(spec collect:[:a| a last]).
  1634     ] ifTrue:[
  1628     ] ifTrue:[
  1635         self perform:spec.
  1629 	self perform:spec.
  1636     ].
  1630     ].
  1637     gallery value:1.
  1631     gallery value:1.
  1638 
  1632 
  1639     "Modified: / 21.4.1998 / 11:59:08 / cg"
  1633     "Modified: / 21.4.1998 / 11:59:08 / cg"
  1640 ! !
  1634 ! !
  1643 
  1637 
  1644 closeRequest
  1638 closeRequest
  1645     |sav|
  1639     |sav|
  1646 
  1640 
  1647     (sav := masterApplication) notNil ifTrue:[
  1641     (sav := masterApplication) notNil ifTrue:[
  1648         masterApplication := nil.
  1642 	masterApplication := nil.
  1649         sav closeRequestFor:(self window).
  1643 	sav closeRequestFor:(self window).
  1650         masterApplication := sav.
  1644 	masterApplication := sav.
  1651     ] ifFalse:[
  1645     ] ifFalse:[
  1652         super closeRequest.
  1646 	super closeRequest.
  1653     ]
  1647     ]
  1654 
  1648 
  1655     "Modified: 28.7.1997 / 09:44:40 / cg"
  1649     "Modified: 28.7.1997 / 09:44:40 / cg"
  1656 !
  1650 !
  1657 
  1651 
  1675     |cls lbl sel builder|
  1669     |cls lbl sel builder|
  1676 
  1670 
  1677     cls := self resolveName:userClass.
  1671     cls := self resolveName:userClass.
  1678 
  1672 
  1679     (cls notNil and:[(cls respondsTo:userLabels)]) ifTrue:[
  1673     (cls notNil and:[(cls respondsTo:userLabels)]) ifTrue:[
  1680         lbl := cls perform:userLabels.
  1674 	lbl := cls perform:userLabels.
  1681         sel := Array new:(lbl size) withAll:#userDefinedSpec.
  1675 	sel := Array new:(lbl size) withAll:#userDefinedSpec.
  1682         self galleryList value:lbl.
  1676 	self galleryList value:lbl.
  1683         self minorKeys   value:sel.
  1677 	self minorKeys   value:sel.
  1684     ] ifFalse:[
  1678     ] ifFalse:[
  1685         builder := UIBuilder new isEditing:true.
  1679 	builder := UIBuilder new isEditing:true.
  1686 
  1680 
  1687         builder application:self.
  1681 	builder application:self.
  1688         (self builder componentAt:#gallery) builder:builder. 
  1682 	(self builder componentAt:#gallery) builder:builder. 
  1689         self galleryList value:#( '???' ).
  1683 	self galleryList value:#( '???' ).
  1690         self minorKeys   value:#( standardUserPanel ).
  1684 	self minorKeys   value:#( standardUserPanel ).
  1691     ]
  1685     ]
  1692 !
  1686 !
  1693 
  1687 
  1694 userDefinedHelpText
  1688 userDefinedHelpText
  1695 
  1689 
  1704     |cls spc idx|
  1698     |cls spc idx|
  1705 
  1699 
  1706     cls := self resolveName:userClass.
  1700     cls := self resolveName:userClass.
  1707 
  1701 
  1708     (cls notNil and:[(cls respondsTo:userSpecs)]) ifTrue:[
  1702     (cls notNil and:[(cls respondsTo:userSpecs)]) ifTrue:[
  1709         spc := cls perform:userSpecs.
  1703 	spc := cls perform:userSpecs.
  1710         idx := self galleryModel value.
  1704 	idx := self galleryModel value.
  1711 
  1705 
  1712         idx <= spc size ifTrue:[
  1706 	idx <= spc size ifTrue:[
  1713             spc := spc at:idx.
  1707 	    spc := spc at:idx.
  1714             (cls respondsTo:spc) ifTrue:[
  1708 	    (cls respondsTo:spc) ifTrue:[
  1715                 ^ cls perform:spc
  1709 		^ cls perform:spc
  1716             ]
  1710 	    ]
  1717         ]
  1711 	]
  1718     ].
  1712     ].
  1719   ^ nil
  1713   ^ nil
  1720 ! !
  1714 ! !
  1721 
  1715 
  1722 !UISelectionPanel::UserDefinedGallery class methodsFor:'class initialization'!
  1716 !UISelectionPanel::UserDefinedGallery class methodsFor:'class initialization'!
  1729     SelectorList := self defaultListOfSelectors asOrderedCollection.
  1723     SelectorList := self defaultListOfSelectors asOrderedCollection.
  1730     HolderList := OrderedCollection new grow:(SelectorList size).
  1724     HolderList := OrderedCollection new grow:(SelectorList size).
  1731     NextUniqueNumber := 1.
  1725     NextUniqueNumber := 1.
  1732 
  1726 
  1733     UISelectionPanel 
  1727     UISelectionPanel 
  1734         userClass:self
  1728 	userClass:self
  1735         specSelector:#listOfSelectors
  1729 	specSelector:#listOfSelectors
  1736         labelSelector:#listOfLabels.
  1730 	labelSelector:#listOfLabels.
  1737 
  1731 
  1738     "
  1732     "
  1739      self initialize
  1733      self initialize
  1740     "
  1734     "
  1741 
  1735 
  1762 !UISelectionPanel::UserDefinedGallery class methodsFor:'documentation'!
  1756 !UISelectionPanel::UserDefinedGallery class methodsFor:'documentation'!
  1763 
  1757 
  1764 copyright
  1758 copyright
  1765 "
  1759 "
  1766  COPYRIGHT (c) 1997 by eXept Software AG
  1760  COPYRIGHT (c) 1997 by eXept Software AG
  1767               All Rights Reserved
  1761 	      All Rights Reserved
  1768 
  1762 
  1769  This software is furnished under a license and may be used
  1763  This software is furnished under a license and may be used
  1770  only in accordance with the terms of that license and with the
  1764  only in accordance with the terms of that license and with the
  1771  inclusion of the above copyright notice.   This software may not
  1765  inclusion of the above copyright notice.   This software may not
  1772  be provided or otherwise made available to, or used by, any
  1766  be provided or otherwise made available to, or used by, any
  1791     or #removeUserSpecWithLabel:.
  1785     or #removeUserSpecWithLabel:.
  1792     Typically, this is done when a framework is loaded, by one of the
  1786     Typically, this is done when a framework is loaded, by one of the
  1793     frameworks class-initialization methods.
  1787     frameworks class-initialization methods.
  1794 
  1788 
  1795     [start with:]
  1789     [start with:]
  1796         UISelectionPanel open
  1790 	UISelectionPanel open
  1797 
  1791 
  1798     [author:]
  1792     [author:]
  1799         Claus Gittinger
  1793 	Claus Gittinger
  1800         Claus Atzkern
  1794 	Claus Atzkern
  1801 
  1795 
  1802     [see also:]
  1796     [see also:]
  1803         TabView
  1797 	TabView
  1804         NoteBookView
  1798 	NoteBookView
  1805         UIGalleryView
  1799 	UIGalleryView
  1806         UIPainter
  1800 	UIPainter
  1807 
  1801 
  1808 "
  1802 "
  1809 
  1803 
  1810 
  1804 
  1811 ! !
  1805 ! !
  1823     syntheticSelector := ('userSpec' , NextUniqueNumber printString) asSymbol.
  1817     syntheticSelector := ('userSpec' , NextUniqueNumber printString) asSymbol.
  1824     NextUniqueNumber := NextUniqueNumber + 1.
  1818     NextUniqueNumber := NextUniqueNumber + 1.
  1825 
  1819 
  1826     idx := LabelList indexOf:aLabelString.
  1820     idx := LabelList indexOf:aLabelString.
  1827     idx ~~ 0 ifTrue:[
  1821     idx ~~ 0 ifTrue:[
  1828         SelectorList at:idx put:syntheticSelector.
  1822 	SelectorList at:idx put:syntheticSelector.
  1829         HolderList at:idx put:aValueHolder
  1823 	HolderList at:idx put:aValueHolder
  1830     ] ifFalse:[
  1824     ] ifFalse:[
  1831         LabelList addLast:aLabelString.
  1825 	LabelList addLast:aLabelString.
  1832         SelectorList addLast:syntheticSelector.
  1826 	SelectorList addLast:syntheticSelector.
  1833         HolderList addLast:aValueHolder
  1827 	HolderList addLast:aValueHolder
  1834     ]
  1828     ]
  1835 
  1829 
  1836     "Modified: / 5.12.1997 / 14:13:17 / cg"
  1830     "Modified: / 5.12.1997 / 14:13:17 / cg"
  1837     "Created: / 8.12.1997 / 18:50:55 / cg"
  1831     "Created: / 8.12.1997 / 18:50:55 / cg"
  1838 !
  1832 !
  1842 
  1836 
  1843     |idx|
  1837     |idx|
  1844 
  1838 
  1845     idx := LabelList indexOf:aLabelString.
  1839     idx := LabelList indexOf:aLabelString.
  1846     idx ~~ 0 ifTrue:[
  1840     idx ~~ 0 ifTrue:[
  1847         LabelList removeIndex:idx.
  1841 	LabelList removeIndex:idx.
  1848         SelectorList removeIndex:idx.
  1842 	SelectorList removeIndex:idx.
  1849         HolderList removeIndex:idx
  1843 	HolderList removeIndex:idx
  1850     ].
  1844     ].
  1851 
  1845 
  1852     "Modified: / 5.12.1997 / 14:13:45 / cg"
  1846     "Modified: / 5.12.1997 / 14:13:45 / cg"
  1853     "Created: / 8.12.1997 / 18:51:03 / cg"
  1847     "Created: / 8.12.1997 / 18:51:03 / cg"
  1854 ! !
  1848 ! !
  1870     <resource: #canvas>
  1864     <resource: #canvas>
  1871 
  1865 
  1872     ^
  1866     ^
  1873      
  1867      
  1874        #(#FullSpec
  1868        #(#FullSpec
  1875           #window: 
  1869 	  #window: 
  1876            #(#WindowSpec
  1870 	   #(#WindowSpec
  1877               #name: 'Interface Builder'
  1871 	      #name: 'Interface Builder'
  1878               #layout: #(#LayoutFrame 402 0 59 0 781 0 329 0)
  1872 	      #layout: #(#LayoutFrame 402 0 59 0 781 0 329 0)
  1879               #label: 'Interface Builder'
  1873 	      #label: 'Interface Builder'
  1880               #min: #(#Point 10 10)
  1874 	      #min: #(#Point 10 10)
  1881               #max: #(#Point 1280 1024)
  1875 	      #max: #(#Point 1280 1024)
  1882               #bounds: #(#Rectangle 402 59 782 330)
  1876 	      #bounds: #(#Rectangle 402 59 782 330)
  1883               #usePreferredExtent: false
  1877 	      #usePreferredExtent: false
  1884           )
  1878 	  )
  1885           #component: 
  1879 	  #component: 
  1886            #(#SpecCollection
  1880 	   #(#SpecCollection
  1887               #collection: 
  1881 	      #collection: 
  1888                #(
  1882 	       #(
  1889                  #(#ArbitraryComponentSpec
  1883 		 #(#ArbitraryComponentSpec
  1890                     #name: 'Analog Clock'
  1884 		    #name: 'Analog Clock'
  1891                     #layout: #(#LayoutFrame 15 0 39 0 129 0 151 0)
  1885 		    #layout: #(#LayoutFrame 15 0 39 0 129 0 151 0)
  1892                     #component: #ClockView
  1886 		    #component: #ClockView
  1893                     #hasBorder: false
  1887 		    #hasBorder: false
  1894                 )
  1888 		)
  1895                  #(#ArbitraryComponentSpec
  1889 		 #(#ArbitraryComponentSpec
  1896                     #name: 'Digital Clock'
  1890 		    #name: 'Digital Clock'
  1897                     #layout: #(#LayoutOrigin 15 0 176 0)
  1891 		    #layout: #(#LayoutOrigin 15 0 176 0)
  1898                     #component: #DigitalClockView
  1892 		    #component: #DigitalClockView
  1899                     #hasBorder: false
  1893 		    #hasBorder: false
  1900                 )
  1894 		)
  1901                  #(#ArbitraryComponentSpec
  1895 		 #(#ArbitraryComponentSpec
  1902                     #name: 'Digital Number display'
  1896 		    #name: 'Digital Number display'
  1903                     #layout: #(#LayoutOrigin 142 0 39 0)
  1897 		    #layout: #(#LayoutOrigin 142 0 39 0)
  1904                     #component: #DigitalLedDisplay
  1898 		    #component: #DigitalLedDisplay
  1905                     #hasBorder: false
  1899 		    #hasBorder: false
  1906                 )
  1900 		)
  1907                  #(#LabelSpec
  1901 		 #(#LabelSpec
  1908                     #name: 'Label1'
  1902 		    #name: 'Label1'
  1909                     #layout: #(#LayoutFrame 15 0 16 0 128 0 38 0)
  1903 		    #layout: #(#LayoutFrame 15 0 16 0 128 0 38 0)
  1910                     #label: 'Analog Clock'
  1904 		    #label: 'Analog Clock'
  1911                     #translateLabel: true
  1905 		    #translateLabel: true
  1912                     #adjust: #left
  1906 		    #adjust: #left
  1913                     #canUIDrag: false
  1907 		    #canUIDrag: false
  1914                 )
  1908 		)
  1915                  #(#LabelSpec
  1909 		 #(#LabelSpec
  1916                     #name: 'Label2'
  1910 		    #name: 'Label2'
  1917                     #layout: #(#LayoutFrame 142 0 16 0 270 0 38 0)
  1911 		    #layout: #(#LayoutFrame 142 0 16 0 270 0 38 0)
  1918                     #label: 'Number Display'
  1912 		    #label: 'Number Display'
  1919                     #translateLabel: true
  1913 		    #translateLabel: true
  1920                     #adjust: #left
  1914 		    #adjust: #left
  1921                     #canUIDrag: false
  1915 		    #canUIDrag: false
  1922                 )
  1916 		)
  1923                  #(#LabelSpec
  1917 		 #(#LabelSpec
  1924                     #name: 'Label3'
  1918 		    #name: 'Label3'
  1925                     #layout: #(#LayoutFrame 15 0 155 0 128 0 177 0)
  1919 		    #layout: #(#LayoutFrame 15 0 155 0 128 0 177 0)
  1926                     #label: 'Digital Clock'
  1920 		    #label: 'Digital Clock'
  1927                     #translateLabel: true
  1921 		    #translateLabel: true
  1928                     #adjust: #left
  1922 		    #adjust: #left
  1929                     #canUIDrag: false
  1923 		    #canUIDrag: false
  1930                 )
  1924 		)
  1931                  #(#MeterWidgetSpec
  1925 		 #(#MeterWidgetSpec
  1932                     #name: 'Meter Widget'
  1926 		    #name: 'Meter Widget'
  1933                     #layout: #(#Rectangle 143 101 248 216)
  1927 		    #layout: #(#Rectangle 143 101 248 216)
  1934                     #model: #meterValue
  1928 		    #model: #meterValue
  1935                 )
  1929 		)
  1936                  #(#LabelSpec
  1930 		 #(#LabelSpec
  1937                     #name: 'Label4'
  1931 		    #name: 'Label4'
  1938                     #layout: #(#LayoutFrame 142 0 74 0 269 0 96 0)
  1932 		    #layout: #(#LayoutFrame 142 0 74 0 269 0 96 0)
  1939                     #label: 'Meter Widget'
  1933 		    #label: 'Meter Widget'
  1940                     #translateLabel: true
  1934 		    #translateLabel: true
  1941                     #adjust: #left
  1935 		    #adjust: #left
  1942                     #canUIDrag: false
  1936 		    #canUIDrag: false
  1943                 )
  1937 		)
  1944               )
  1938 	      )
  1945           )
  1939 	  )
  1946       )
  1940       )
  1947 !
  1941 !
  1948 
  1942 
  1949 listOfLabels
  1943 listOfLabels
  1950     ^ LabelList
  1944     ^ LabelList
  1966     "catch queries for a userSpec"
  1960     "catch queries for a userSpec"
  1967 
  1961 
  1968     |sel idx|
  1962     |sel idx|
  1969 
  1963 
  1970     ((sel := aMessage selector) startsWith:'userSpec') ifTrue:[
  1964     ((sel := aMessage selector) startsWith:'userSpec') ifTrue:[
  1971         idx := SelectorList indexOf:sel.
  1965 	idx := SelectorList indexOf:sel.
  1972         idx ~~ 0 ifTrue:[
  1966 	idx ~~ 0 ifTrue:[
  1973             ^ (HolderList at:idx) value
  1967 	    ^ (HolderList at:idx) value
  1974         ]
  1968 	]
  1975     ].
  1969     ].
  1976     ^ super doesNotUnderstand:aMessage
  1970     ^ super doesNotUnderstand:aMessage
  1977 
  1971 
  1978     "Modified: / 5.12.1997 / 14:23:24 / cg"
  1972     "Modified: / 5.12.1997 / 14:23:24 / cg"
  1979     "Created: / 8.12.1997 / 18:51:50 / cg"
  1973     "Created: / 8.12.1997 / 18:51:50 / cg"
  1983     "catch queries for a userSpec"
  1977     "catch queries for a userSpec"
  1984 
  1978 
  1985     |idx|
  1979     |idx|
  1986 
  1980 
  1987     (aSelector startsWith:'userSpec') ifTrue:[
  1981     (aSelector startsWith:'userSpec') ifTrue:[
  1988         idx := Number fromString:(aSelector copyFrom:9).
  1982 	idx := Number fromString:(aSelector copyFrom:9).
  1989         idx := SelectorList indexOf:aSelector.
  1983 	idx := SelectorList indexOf:aSelector.
  1990         idx ~~ 0 ifTrue:[^ true].
  1984 	idx ~~ 0 ifTrue:[^ true].
  1991     ].
  1985     ].
  1992     ^ super respondsTo:aSelector
  1986     ^ super respondsTo:aSelector
  1993 
  1987 
  1994     "Modified: / 5.12.1997 / 14:19:55 / cg"
  1988     "Modified: / 5.12.1997 / 14:19:55 / cg"
  1995     "Created: / 8.12.1997 / 18:51:57 / cg"
  1989     "Created: / 8.12.1997 / 18:51:57 / cg"