MenuEditor.st
changeset 2797 06bae3d05b78
parent 2729 b21105a0a38c
child 2798 dac473a7fcdf
equal deleted inserted replaced
2796:f589f0efbaaf 2797:06bae3d05b78
   380 'Toggle display of both image and textual label.'
   380 'Toggle display of both image and textual label.'
   381 
   381 
   382 #imageImageEditor
   382 #imageImageEditor
   383 'Open an Image Editor on the resource method defined by retriever and selector.'
   383 'Open an Image Editor on the resource method defined by retriever and selector.'
   384 
   384 
       
   385 #imageBrowseImageClass
       
   386 'Open a Browser on the resource retriever class.'
       
   387 
   385 #imageImageList
   388 #imageImageList
   386 'Currently existing image resources.'
   389 'Currently existing image resources.'
   387 
   390 
   388 #imageRetriever
   391 #imageRetriever
   389 'Class implementing the image resource method. If unspecified, the application class is taken.'
   392 'Class implementing the image resource method. If unspecified, the application class is taken.'
   406 #triggerOnDown
   409 #triggerOnDown
   407 'If on, the items action is performed on mouse-button press (default is: on button-release).'
   410 'If on, the items action is performed on mouse-button press (default is: on button-release).'
   408 
   411 
   409 )
   412 )
   410 
   413 
   411     "Modified: / 16-10-2006 / 13:20:38 / cg"
   414     "Modified: / 20-09-2010 / 13:24:49 / cg"
   412 !
   415 !
   413 
   416 
   414 localFlyHelpSpecStrings
   417 localFlyHelpSpecStrings
   415     "This resource specification was automatically generated
   418     "This resource specification was automatically generated
   416      by the UIHelpTool of ST/X."
   419      by the UIHelpTool of ST/X."
  5067      MenuEditor::ResourceEditor open
  5070      MenuEditor::ResourceEditor open
  5068     "
  5071     "
  5069 
  5072 
  5070     <resource: #canvas>
  5073     <resource: #canvas>
  5071 
  5074 
  5072     ^
  5075     ^ 
  5073      #(FullSpec
  5076      #(FullSpec
  5074 	name: windowSpec
  5077         name: windowSpec
  5075 	window:
  5078         window: 
  5076        (WindowSpec
  5079        (WindowSpec
  5077 	  label: 'Image Item'
  5080           label: 'Image Item'
  5078 	  name: 'Image Item'
  5081           name: 'Image Item'
  5079 	  min: (Point 10 10)
  5082           min: (Point 10 10)
  5080 	  bounds: (Rectangle 0 0 288 295)
  5083           bounds: (Rectangle 0 0 303 304)
  5081 	)
  5084         )
  5082 	component:
  5085         component: 
  5083        (SpecCollection
  5086        (SpecCollection
  5084 	  collection: (
  5087           collection: (
  5085 	   (LabelSpec
  5088            (LabelSpec
  5086 	      label: 'Retriever:'
  5089               label: 'Retriever:'
  5087 	      name: 'retrieverLabel'
  5090               name: 'retrieverLabel'
  5088 	      layout: (AlignmentOrigin 107 0 26 0 1 0.5)
  5091               layout: (AlignmentOrigin 107 0 26 0 1 0.5)
  5089 	      activeHelpKey: imageRetriever
  5092               activeHelpKey: imageRetriever
  5090 	      translateLabel: true
  5093               translateLabel: true
  5091 	      resizeForLabel: true
  5094               resizeForLabel: true
  5092 	      adjust: right
  5095               adjust: right
  5093 	    )
  5096             )
  5094 	   (ComboBoxSpec
  5097            (ComboBoxSpec
  5095 	      name: 'retrieverHolder'
  5098               name: 'retrieverHolder'
  5096 	      layout: (LayoutFrame 110 0 15 0 -20 1.0 37 0)
  5099               layout: (LayoutFrame 110 0 15 0 -20 1.0 37 0)
  5097 	      activeHelpKey: imageRetriever
  5100               activeHelpKey: imageRetriever
  5098 	      tabable: true
  5101               tabable: true
  5099 	      model: retrieverHolder
  5102               model: retrieverHolder
  5100 	      type: symbolOrNil
  5103               type: symbolOrNil
  5101 	      immediateAccept: true
  5104               immediateAccept: true
  5102 	      acceptOnReturn: false
  5105               acceptOnReturn: false
  5103 	      acceptOnTab: false
  5106               acceptOnTab: false
  5104 	      acceptOnPointerLeave: false
  5107               acceptOnPointerLeave: false
  5105 	      entryCompletionBlock: entryCompletionForRetriever
  5108               entryCompletionBlock: entryCompletionForRetriever
  5106 	      comboList: retrieverList
  5109               comboList: retrieverList
  5107 	      isFilenameBox: false
  5110               isFilenameBox: false
  5108 	    )
  5111             )
  5109 	   (LabelSpec
  5112            (LabelSpec
  5110 	      label: 'Selector:'
  5113               label: 'Selector:'
  5111 	      name: 'iconLabel'
  5114               name: 'iconLabel'
  5112 	      layout: (AlignmentOrigin 107 0 51 0 1 0.5)
  5115               layout: (AlignmentOrigin 107 0 51 0 1 0.5)
  5113 	      activeHelpKey: imageSelector
  5116               activeHelpKey: imageSelector
  5114 	      translateLabel: true
  5117               translateLabel: true
  5115 	      resizeForLabel: true
  5118               resizeForLabel: true
  5116 	      adjust: right
  5119               adjust: right
  5117 	    )
  5120             )
  5118 	   (InputFieldSpec
  5121            (InputFieldSpec
  5119 	      name: 'selectorHolder'
  5122               name: 'selectorHolder'
  5120 	      layout: (LayoutFrame 110 0 40 0 -42 1.0 62 0)
  5123               layout: (LayoutFrame 110 0 40 0 -42 1.0 62 0)
  5121 	      activeHelpKey: imageSelector
  5124               activeHelpKey: imageSelector
  5122 	      tabable: true
  5125               tabable: true
  5123 	      model: selectorHolder
  5126               model: selectorHolder
  5124 	      group: inputGroup
  5127               group: inputGroup
  5125 	      type: symbolOrNil
  5128               type: symbolOrNil
  5126 	      immediateAccept: true
  5129               immediateAccept: true
  5127 	      acceptOnReturn: false
  5130               acceptOnReturn: false
  5128 	      acceptOnTab: false
  5131               acceptOnTab: false
  5129 	      modifiedChannel: modifiedChannel
  5132               modifiedChannel: modifiedChannel
  5130 	      acceptOnPointerLeave: false
  5133               acceptOnPointerLeave: false
  5131 	    )
  5134             )
  5132 	   (ActionButtonSpec
  5135            (ActionButtonSpec
  5133 	      label: '...'
  5136               label: '...'
  5134 	      name: 'browseButton'
  5137               name: 'browseButton'
  5135 	      layout: (LayoutFrame -40 1 40 0 -20 1 62 0)
  5138               layout: (LayoutFrame -40 1 40 0 -20 1 62 0)
  5136 	      activeHelpKey: browseResource
  5139               activeHelpKey: browseResource
  5137 	      tabable: true
  5140               tabable: true
  5138 	      model: doBrowseForImageResource
  5141               model: doBrowseForImageResource
  5139 	    )
  5142             )
  5140 	   (HierarchicalListViewSpec
  5143            (HierarchicalListViewSpec
  5141 	      name: 'imageList'
  5144               name: 'imageList'
  5142 	      layout: (LayoutFrame 20 0.0 67 0 -20 1.0 -30 1.0)
  5145               layout: (LayoutFrame 20 0.0 67 0 -20 1.0 -60 1.0)
  5143 	      activeHelpKey: imageImageList
  5146               activeHelpKey: imageImageList
  5144 	      model: imageHolder
  5147               model: imageHolder
  5145 	      menu: menuEditImage
  5148               menu: menuEditImage
  5146 	      hasHorizontalScrollBar: true
  5149               hasHorizontalScrollBar: true
  5147 	      hasVerticalScrollBar: true
  5150               hasVerticalScrollBar: true
  5148 	      miniScrollerHorizontal: true
  5151               miniScrollerHorizontal: true
  5149 	      listModel: imageList
  5152               listModel: imageList
  5150 	      useIndex: false
  5153               useIndex: false
  5151 	      highlightMode: label
  5154               highlightMode: label
  5152 	      postBuildCallback: postBuildImageViewer:
  5155               postBuildCallback: postBuildImageViewer:
  5153 	    )
  5156             )
  5154 	   (ViewSpec
  5157            (ViewSpec
  5155 	      name: 'Box1'
  5158               name: 'Box1'
  5156 	      layout: (LayoutFrame 20 0.0 -30 1.0 -20 1.0 0 1.0)
  5159               layout: (LayoutFrame 20 0.0 -60 1.0 -20 1.0 0 1.0)
  5157 	      level: 0
  5160               level: 0
  5158 	      component:
  5161               component: 
  5159 	     (SpecCollection
  5162              (SpecCollection
  5160 		collection: (
  5163                 collection: (
  5161 		 (CheckBoxSpec
  5164                  (CheckBoxSpec
  5162 		    label: 'Image & Label'
  5165                     label: 'Image & Label'
  5163 		    name: 'iconAndLabelCheckBox'
  5166                     name: 'iconAndLabelCheckBox'
  5164 		    layout: (AlignmentOrigin 0 0 0 0.5 0 0.5)
  5167                     layout: (AlignmentOrigin 0 0 17 0 0 0.5)
  5165 		    activeHelpKey: imageImageAndLabel
  5168                     activeHelpKey: imageImageAndLabel
  5166 		    tabable: true
  5169                     tabable: true
  5167 		    model: iconAndLabelHolder
  5170                     model: iconAndLabelHolder
  5168 		    translateLabel: true
  5171                     translateLabel: true
  5169 		  )
  5172                   )
  5170 		 (ActionButtonSpec
  5173                  (ActionButtonSpec
  5171 		    label: 'Image Editor'
  5174                     label: 'Image Editor'
  5172 		    name: 'imageEditorButton'
  5175                     name: 'imageEditorButton'
  5173 		    layout: (AlignmentOrigin 0 1.0 0 0.5 1 0.5)
  5176                     layout: (AlignmentOrigin -69 1.0 17 0 0 0.5)
  5174 		    activeHelpKey: imageImageEditor
  5177                     activeHelpKey: imageImageEditor
  5175 		    hasCharacterOrientedLabel: false
  5178                     hasCharacterOrientedLabel: false
  5176 		    tabable: true
  5179                     foregroundColor: (Color 0.0 0.0 66.9993133440146)
  5177 		    model: doEditImage
  5180                     tabable: true
  5178 		  )
  5181                     model: doEditImage
  5179 		 )
  5182                   )
  5180 
  5183                  (ActionButtonSpec
  5181 	      )
  5184                     label: 'Browse'
  5182 	    )
  5185                     name: 'Button1'
  5183 	   )
  5186                     layout: (AlignmentOrigin -69 1.0 45 0 0 0.5)
  5184 
  5187                     activeHelpKey: imageBrowseImageClass
  5185 	)
  5188                     hasCharacterOrientedLabel: false
       
  5189                     foregroundColor: (Color 0.0 0.0 66.9993133440146)
       
  5190                     tabable: true
       
  5191                     model: doBrowseImageClass
       
  5192                   )
       
  5193                  )
       
  5194                
       
  5195               )
       
  5196             )
       
  5197            )
       
  5198          
       
  5199         )
  5186       )
  5200       )
  5187 ! !
  5201 ! !
  5188 
  5202 
  5189 !MenuEditor::ResourceEditor methodsFor:'accessing'!
  5203 !MenuEditor::ResourceEditor methodsFor:'accessing'!
  5190 
  5204 
  5259 
  5273 
  5260     classAndSelector isNil ifTrue:[ ^ self ].
  5274     classAndSelector isNil ifTrue:[ ^ self ].
  5261 
  5275 
  5262     retrieverHolder value:(classAndSelector methodClass) name.
  5276     retrieverHolder value:(classAndSelector methodClass) name.
  5263     selectorHolder  value:(classAndSelector methodSelector).
  5277     selectorHolder  value:(classAndSelector methodSelector).
       
  5278 !
       
  5279 
       
  5280 doBrowseImageClass
       
  5281     |cls sel|
       
  5282 
       
  5283     (cls := retrieverHolder value) isNil ifTrue:[
       
  5284         Dialog warn:'No resource retriever is defined.'.
       
  5285     ] ifFalse:[
       
  5286         sel := selectorHolder value.
       
  5287 
       
  5288         cls := Smalltalk classNamed:cls.
       
  5289         cls isNil ifTrue:[
       
  5290             Dialog warn:'No such resource retriever class.'.
       
  5291         ] ifFalse:[
       
  5292             UserPreferences current systemBrowserClass openInClass:cls class selector:sel
       
  5293         ]
       
  5294     ]
       
  5295 
       
  5296     "Created: / 20-09-2010 / 13:27:34 / cg"
  5264 !
  5297 !
  5265 
  5298 
  5266 doEditImage
  5299 doEditImage
  5267     |sel cls item|
  5300     |sel cls item|
  5268 
  5301