--- a/ResourceSelectionBrowser.st Sat Jan 10 11:25:55 1998 +0100
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,304 +0,0 @@
-SelectionBrowser subclass:#ResourceSelectionBrowser
- instanceVariableNames:'resourceMethod resourceClass resourceSuperclass resourceSelector
- resourceTypes'
- classVariableNames:''
- poolDictionaries:''
- category:'Interface-Advanced-Tools'
-!
-
-
-!ResourceSelectionBrowser class methodsFor:'instance creation'!
-
-openOnSuperclass: aSuperclass class: aClass selector: aSelector resourceTypes: aResourceTypes
-
- ^self new openOnSuperclass: aSuperclass class: aClass selector: aSelector resourceTypes: aResourceTypes
-! !
-
-!ResourceSelectionBrowser class methodsFor:'interface specs'!
-
-windowSpec
- "this window spec was automatically generated by the ST/X UIPainter"
-
- "do not manually edit this - the painter/builder may not be able to
- handle the specification if its corrupted."
-
- "
- UIPainter new openOnClass:ResourceBrowser andSelector:#windowSpec
- ResourceBrowser new openInterface:#windowSpec
- "
- "ResourceBrowser open"
-
- <resource: #canvas>
-
- ^
-
- #(#FullSpec
- #'window:'
- #(#WindowSpec
- #'name:' 'Resource Browser'
- #'layout:' #(#LayoutFrame 541 0 280 0 940 0 579 0)
- #'label:' 'Resource Browser'
- #'min:' #(#Point 400 300)
- #'max:' #(#Point 1152 864)
- #'bounds:' #(#Rectangle 541 280 941 580)
- #'usePreferredExtent:' false
- )
- #'component:'
- #(#SpecCollection
- #'collection:'
- #(
- #(#VariableHorizontalPanelSpec
- #'name:' 'variableHorizontalPanel'
- #'layout:' #(#LayoutFrame 0 0.0 0 0.0 0 1.0 -40 1.0)
- #'component:'
- #(#SpecCollection
- #'collection:'
- #(
- #(#ViewSpec
- #'name:' 'view1'
- #'component:'
- #(#SpecCollection
- #'collection:'
- #(
- #(#SelectionInTreeViewSpec
- #'name:' 'listOfClassesView'
- #'layout:' #(#LayoutFrame 0 0.0 0 0.0 0 1.0 0 1.0)
- #'model:' #selectionOfClass
- #'hasHorizontalScrollBar:' true
- #'hasVerticalScrollBar:' true
- #'miniScrollerHorizontal:' true
- #'showRoot:' false
- #'valueChangeSelector:' #'classSelected:'
- #'hierarchicalList:' #listOfClasses
- )
- )
- )
- #'level:' -1
- )
- #(#ViewSpec
- #'name:' 'view2'
- #'component:'
- #(#SpecCollection
- #'collection:'
- #(
- #(#DataSetSpec
- #'name:' 'resourcesDataSetView'
- #'layout:' #(#LayoutFrame 2 0.0 0 0.0 2 1.0 -22 1.0)
- #'model:' #selectionOfResource
- #'hasHorizontalScrollBar:' true
- #'hasVerticalScrollBar:' true
- #'miniScrollerHorizontal:' true
- #'dataList:' #listOfResources
- #'useIndex:' false
- #'doubleClickSelector:' #resourceDoubleClicked
- #'valueChangeSelector:' #resourceSelected
- #'verticalSpacing:' 1
- #'columns:'
- #(
- #(#DataSetColumnSpec
- #'width:' 20
- #'model:' #icon
- #'printSelector:' #'iconOn:'
- #'canSelect:' false
- )
- #(#DataSetColumnSpec
- #'label:' 'selector'
- #'model:' #selector
- #'canSelect:' false
- )
- #(#DataSetColumnSpec
- #'label:' 'resource'
- #'model:' #resourceType
- #'canSelect:' false
- )
- )
- )
- #(#InputFieldSpec
- #'name:' 'selectorInputField'
- #'layout:' #(#LayoutFrame 2 0.0 -22 1 2 1.0 0 1)
- #'model:' #valueOfSelector
- )
- )
- )
- #'level:' -1
- )
- )
- )
- #'handles:' #(#Any 0.5 1.0)
- )
- #(#HorizontalPanelViewSpec
- #'name:' 'horizontalPanelView'
- #'layout:' #(#LayoutFrame 0 0.0 -40 1 0 1.0 0 1.0)
- #'component:'
- #(#SpecCollection
- #'collection:'
- #(
- #(#ActionButtonSpec
- #'name:' 'actionButton2'
- #'label:' 'Cancel'
- #'model:' #cancel
- #'extent:' #(#Point 99 22)
- )
- #(#ActionButtonSpec
- #'name:' 'actionButton1'
- #'label:' 'OK'
- #'model:' #accept
- #'extent:' #(#Point 99 22)
- )
- )
- )
- #'level:' 1
- #'horizontalLayout:' #center
- #'verticalLayout:' #center
- #'horizontalSpace:' 3
- #'verticalSpace:' 3
- )
- )
- )
- )
-! !
-
-!ResourceSelectionBrowser methodsFor:'actions'!
-
-classSelected
- |a|
- self selectionOfClass value isNil ifTrue: [^nil].
- self listOfResources contents:
- (a := (Smalltalk at: self selectionOfClass value name ) class methodDictionary
-asOrderedCollection select: [:m| m resources notNil]).
-
-!
-
-classSelected: anIndex
-
- self selectionOfClass value isNil ifTrue: [^nil].
- self withWaitCursorDo:
- [
- |clsName|
- clsName := ((builder componentAt: #listOfClassesView) list at: anIndex).
- self class lastSelection: clsName.
- self listOfResources contents:
- ((Smalltalk at: clsName)
- class methodDictionary
- asOrderedCollection select:
- [:m| m resources notNil and: [resourceTypes includes: m resourceType]]).
- ]
-!
-
-closeCancel
-
- resourceMethod := nil.
- super closeCancel
-!
-
-resourceDoubleClicked
-
- resourceMethod := self selectionOfResource value.
- accept value: true.
- self close
-!
-
-resourceSelected
-
- resourceMethod := self selectionOfResource value.
- self valueOfSelector value: self selectionOfResource value selector
-! !
-
-!ResourceSelectionBrowser methodsFor:'aspects'!
-
-listOfClasses
-
- |holder|
- (holder := builder bindingAt:#listOfClasses) isNil ifTrue:[
- builder aspectAt:#listOfClasses put:(holder := TreeItem newAsTreeFromSmalltalkClass:
- (Smalltalk at: resourceSuperclass)).
- ].
- ^ holder
-
-
-!
-
-listOfResources
- "automatically generated by UIPainter ..."
-
- "*** the code below creates a default model when invoked."
- "*** (which may not be the one you wanted)"
- "*** Please change as required and accept in the browser."
-
- |holder|
-
- (holder := builder bindingAt:#listOfResources) isNil ifTrue:[
- builder aspectAt:#listOfResources put:(holder := List new).
- ].
- ^ holder
-!
-
-selectionOfClass
-
- |holder|
-
- (holder := builder bindingAt:#selectionOfClass) isNil ifTrue:[
- builder aspectAt:#selectionOfClass put:(holder := ValueHolder new).
- ].
- ^ holder
-!
-
-selectionOfResource
-
- |holder|
-
- (holder := builder bindingAt:#selectionOfResource) isNil ifTrue:[
- builder aspectAt:#selectionOfResource put:(holder := ValueHolder new).
- ].
- ^ holder
-!
-
-valueOfSelector
- "automatically generated by UIPainter ..."
-
- "*** the code below creates a default model when invoked."
- "*** (which may not be the one you wanted)"
- "*** Please change as required and accept in the browser."
-
- |holder|
-
- (holder := builder bindingAt:#valueOfSelector) isNil ifTrue:[
- builder aspectAt:#valueOfSelector put:(holder := ValueHolder new).
- ].
- ^ holder
-! !
-
-!ResourceSelectionBrowser methodsFor:'initialization'!
-
-postBuildWith:aBuilder
-
- resourceClass notNil ifTrue:
- [(builder componentAt: #listOfClassesView) selectFromListOfNames:
- (((Smalltalk at: self class lastSelection ? resourceClass ifAbsent: [Object])) withAllSuperclasses reverse collect: [:cls| cls name asString])].
- ^super postBuildWith:aBuilder
-
-! !
-
-!ResourceSelectionBrowser methodsFor:'instance creation'!
-
-openOnSuperclass: aSuperclass class: aClass selector: aSelector resourceTypes: aResourceTypes
-
- resourceTypes := aResourceTypes.
- resourceSuperclass := aSuperclass.
- resourceClass := aClass.
- resourceSelector := aSelector.
-
- self open.
- accept value
- ifTrue:
- [
- ^self selectionOfClass value name, ' ', self valueOfSelector value
- ].
- ^nil
-! !
-
-!ResourceSelectionBrowser class methodsFor:'documentation'!
-
-version
- ^ '$Header$'
-! !