--- a/Tools_ClassCategoryList.st Thu Feb 26 19:57:02 2004 +0100
+++ b/Tools_ClassCategoryList.st Thu Feb 26 20:03:55 2004 +0100
@@ -1,4 +1,4 @@
-"{ Package: 'stx:__NoProject__' }"
+"{ Package: 'stx:libtool' }"
"{ NameSpace: Tools }"
@@ -40,29 +40,29 @@
^
#(#FullSpec
- #name: #singleCategoryWindowSpec
- #window:
+ #name: #singleCategoryWindowSpec
+ #window:
#(#WindowSpec
- #label: 'ClassCategoryList'
- #name: 'ClassCategoryList'
- #min: #(#Point 0 0)
- #max: #(#Point 1024 721)
- #bounds: #(#Rectangle 218 175 518 475)
- )
- #component:
+ #label: 'ClassCategoryList'
+ #name: 'ClassCategoryList'
+ #min: #(#Point 0 0)
+ #max: #(#Point 1024 721)
+ #bounds: #(#Rectangle 218 175 518 475)
+ )
+ #component:
#(#SpecCollection
- #collection: #(
- #(#LabelSpec
- #label: 'ClassCategoryName'
- #name: 'ClassCategoryLabel'
- #layout: #(#LayoutFrame 0 0.0 0 0 0 1.0 25 0)
- #translateLabel: true
- #labelChannel: #classCategoryLabelHolder
- #menu: #menuHolder
- )
- )
+ #collection: #(
+ #(#LabelSpec
+ #label: 'ClassCategoryName'
+ #name: 'ClassCategoryLabel'
+ #layout: #(#LayoutFrame 0 0.0 0 0 0 1.0 25 0)
+ #translateLabel: true
+ #labelChannel: #classCategoryLabelHolder
+ #menu: #menuHolder
+ )
+ )
- )
+ )
)
!
@@ -83,43 +83,43 @@
^
#(#FullSpec
- #name: #windowSpec
- #window:
+ #name: #windowSpec
+ #window:
#(#WindowSpec
- #label: 'ClassCategoryList'
- #name: 'ClassCategoryList'
- #min: #(#Point 0 0)
- #max: #(#Point 1024 721)
- #bounds: #(#Rectangle 13 23 313 323)
- )
- #component:
+ #label: 'ClassCategoryList'
+ #name: 'ClassCategoryList'
+ #min: #(#Point 0 0)
+ #max: #(#Point 1024 721)
+ #bounds: #(#Rectangle 13 23 313 323)
+ )
+ #component:
#(#SpecCollection
- #collection: #(
- #(#SequenceViewSpec
- #name: 'List'
- #layout: #(#LayoutFrame 0 0.0 0 0.0 0 1.0 0 1.0)
- #tabable: true
- #model: #selectedCategories
- #menu: #menuHolder
- #hasHorizontalScrollBar: true
- #hasVerticalScrollBar: true
- #miniScrollerHorizontal: true
- #isMultiSelect: true
- #valueChangeSelector: #selectionChangedByClick
- #useIndex: false
- #sequenceList: #categoryList
- #doubleClickChannel: #doubleClickChannel
- #properties:
- #(#PropertyListDictionary
- #dragArgument: nil
- #dropArgument: nil
- #canDropSelector: #canDrop:
- #dropSelector: #doDrop:
- )
- )
- )
+ #collection: #(
+ #(#SequenceViewSpec
+ #name: 'List'
+ #layout: #(#LayoutFrame 0 0.0 0 0.0 0 1.0 0 1.0)
+ #tabable: true
+ #model: #selectedCategories
+ #menu: #menuHolder
+ #hasHorizontalScrollBar: true
+ #hasVerticalScrollBar: true
+ #miniScrollerHorizontal: true
+ #isMultiSelect: true
+ #valueChangeSelector: #selectionChangedByClick
+ #useIndex: false
+ #sequenceList: #categoryList
+ #doubleClickChannel: #doubleClickChannel
+ #properties:
+ #(#PropertyListDictionary
+ #dragArgument: nil
+ #dropArgument: nil
+ #canDropSelector: #canDrop:
+ #dropSelector: #doDrop:
+ )
+ )
+ )
- )
+ )
)
"Created: / 5.2.2000 / 13:42:11 / cg"
@@ -202,120 +202,120 @@
selectedCategories := self selectedCategoriesStrings.
changedObject == Smalltalk ifTrue:[
- ((something == #classVariables)
- or:[something == #classDefinition]) ifTrue:[
- listValid == true ifTrue:[
- categoryOfClass := aParameter category.
- (categoryList value includes:categoryOfClass) ifFalse:[
- self invalidateList.
- ].
- slaveMode value ~~ true ifTrue:[
- (selectedCategories includes:categoryOfClass) ifTrue:[
- "/ a selected class has changed
- "/ in order to give others a chance to update their list before,
- "/ this one is always enqueued for delayed update (even if immediateUpdate is true)
- "/ self enqueueDelayedUpdateOutputGenerator
- self enqueueMessage:#updateOutputGenerator for:self arguments:#()
- ].
- ].
- ].
- ^ self
- ].
- something == #newClass ifTrue:[
- categoryOfClass := aParameter category.
+ ((something == #classVariables)
+ or:[something == #classDefinition]) ifTrue:[
+ listValid == true ifTrue:[
+ categoryOfClass := aParameter category.
+ (categoryList value includes:categoryOfClass) ifFalse:[
+ self invalidateList.
+ ].
+ slaveMode value ~~ true ifTrue:[
+ (selectedCategories includes:categoryOfClass) ifTrue:[
+ "/ a selected class has changed
+ "/ in order to give others a chance to update their list before,
+ "/ this one is always enqueued for delayed update (even if immediateUpdate is true)
+ "/ self enqueueDelayedUpdateOutputGenerator
+ self enqueueMessage:#updateOutputGenerator for:self arguments:#()
+ ].
+ ].
+ ].
+ ^ self
+ ].
+ something == #newClass ifTrue:[
+ categoryOfClass := aParameter category.
"/ listValid == true ifTrue:[
- (categoryList value includes:categoryOfClass) ifFalse:[
- self invalidateList.
- ].
+ (categoryList value includes:categoryOfClass) ifFalse:[
+ self invalidateList.
+ ].
"/ ].
- slaveMode value ~~ true ifTrue:[
- (selectedCategories includes:categoryOfClass) ifTrue:[
- self enqueueDelayedUpdateOutputGenerator
- ].
- ].
- ^ self
- ].
+ slaveMode value ~~ true ifTrue:[
+ (selectedCategories includes:categoryOfClass) ifTrue:[
+ self enqueueDelayedUpdateOutputGenerator
+ ].
+ ].
+ ^ self
+ ].
- self invalidateList.
+ self invalidateList.
- (something == #classRemove
- or:[something == #projectOrganization
- or:[something == #organization]]) ifTrue:[
- slaveMode value ~~ true ifTrue:[
- "/ sorry: cannot filter on category (already changed to #removed)
- self enqueueDelayedUpdateOutputGenerator
- ].
- ].
- ^ self
+ (something == #classRemove
+ or:[something == #projectOrganization
+ or:[something == #organization]]) ifTrue:[
+ slaveMode value ~~ true ifTrue:[
+ "/ sorry: cannot filter on category (already changed to #removed)
+ self enqueueDelayedUpdateOutputGenerator
+ ].
+ ].
+ ^ self
].
changedObject == ChangeSet ifTrue:[
- "/ remove all other change notifications from the eventQueue
- wg := self windowGroup.
- wg isNil ifTrue:[
- "/ oops - should no longer be dependent...
- changedObject removeDependent:self.
- ] ifFalse:[
- wg sensor
- flushEventsFor:self
- where:[:ev | ev isMessageSendEvent
- and:[ev selector == #delayedUpdate:with:from:
- and:[(ev arguments at:3) == ChangeSet]]].
- ].
+ "/ remove all other change notifications from the eventQueue
+ wg := self windowGroup.
+ wg isNil ifTrue:[
+ "/ oops - should no longer be dependent...
+ changedObject removeDependent:self.
+ ] ifFalse:[
+ wg sensor
+ flushEventsFor:self
+ where:[:ev | ev isMessageSendEvent
+ and:[ev selector == #delayedUpdate:with:from:
+ and:[(ev arguments at:3) == ChangeSet]]].
+ ].
- something == #addChange: ifTrue:[
- "/ only need to invalidate, if that change changes my emphasis
- "/ (i.e. if its a new methodChange)
+ something == #addChange: ifTrue:[
+ "/ only need to invalidate, if that change changes my emphasis
+ "/ (i.e. if its a new methodChange)
"/ self invalidateList.
- aParameter isMethodChange ifTrue:[
- (ChangeSet current
- count:[:chg | chg notNil and:[chg isMethodChange
- and:[ chg className = aParameter className ]]])
- == 1 ifTrue:[
- "/ that methodChange is the first for this method.
- aParameter changeClass ifNotNil:[
- self colorizeCategoryAsChanged:(aParameter changeClass category).
- ]
- ]
- ].
- ^ self
- ].
+ aParameter isMethodChange ifTrue:[
+ (ChangeSet current
+ count:[:chg | chg notNil and:[chg isMethodChange
+ and:[ chg className = aParameter className ]]])
+ == 1 ifTrue:[
+ "/ that methodChange is the first for this method.
+ aParameter changeClass ifNotNil:[
+ self colorizeCategoryAsChanged:(aParameter changeClass category).
+ ]
+ ]
+ ].
+ ^ self
+ ].
- self invalidateList.
- ^ self
+ self invalidateList.
+ ^ self
].
changedObject == nameSpaceFilter ifTrue:[
- "/ all might be more or less than before ...
- allSelected := false.
+ "/ all might be more or less than before ...
+ allSelected := false.
].
changedObject == packageFilter ifTrue:[
- "/ all might be more or less than before ...
- allSelected := false.
+ "/ all might be more or less than before ...
+ allSelected := false.
].
selectedCategoriesHolder := self selectedCategories.
changedObject == selectedCategoriesHolder ifTrue:[
- categoryList isNil ifTrue:[
- "/ oops - hurry up
- self invalidateList.
- ].
+ categoryList isNil ifTrue:[
+ "/ oops - hurry up
+ self invalidateList.
+ ].
- nameListEntryForALL := self class nameListEntryForALL.
+ nameListEntryForALL := self class nameListEntryForALL.
- selectedCategories size > 1 ifTrue:[
- (selectedCategories includes:nameListEntryForALL) ifTrue:[
- self makeSelectionOtherThanAllVisible.
- ]
- ].
+ selectedCategories size > 1 ifTrue:[
+ (selectedCategories includes:nameListEntryForALL) ifTrue:[
+ self makeSelectionOtherThanAllVisible.
+ ]
+ ].
- "/ if all selected before AND allSelected after, no need to update the output generator
- allSelectedBefore := allSelected ? false.
- allSelected := selectedCategories includes:nameListEntryForALL.
- (allSelectedBefore and:[allSelected]) ifTrue:[
- ^ self
- ].
+ "/ if all selected before AND allSelected after, no need to update the output generator
+ allSelectedBefore := allSelected ? false.
+ allSelected := selectedCategories includes:nameListEntryForALL.
+ (allSelectedBefore and:[allSelected]) ifTrue:[
+ ^ self
+ ].
].
super delayedUpdate:something with:aParameter from:changedObject
@@ -754,5 +754,5 @@
!ClassCategoryList class methodsFor:'documentation'!
version
- ^ '$Header: /cvs/stx/stx/libtool/Tools_ClassCategoryList.st,v 1.1 2004-02-26 18:55:56 cg Exp $'
+ ^ '$Header: /cvs/stx/stx/libtool/Tools_ClassCategoryList.st,v 1.2 2004-02-26 19:03:55 cg Exp $'
! !