--- a/Tools_ClassCategoryList.st Wed Nov 07 14:57:05 2012 +0100
+++ b/Tools_ClassCategoryList.st Wed Nov 07 15:19:04 2012 +0100
@@ -523,7 +523,7 @@
"return a generator which enumerates the classes from the selected category."
|cats hideUnloadedClasses allName nameSpaceFilter packageFilter
- showChangedClasses showUnloaded showUndocumented inclusionTest changedClasses|
+ showChangedClasses showUnloaded showUndocumented showExtendedClasses inclusionTest changedClasses|
cats := self selectedCategoriesStrings.
cats size == 0 ifTrue:[
@@ -541,6 +541,7 @@
showChangedClasses := cats includes:(self class nameListEntryForChanged).
showUnloaded := cats includes:(self class nameListEntryForUnloaded).
showUndocumented := cats includes:(self class nameListEntryForUndocumented).
+ showExtendedClasses := cats includes:(self class nameListEntryForExtendedClasses).
hideUnloadedClasses := self hideUnloadedClasses value ? false.
nameSpaceFilter := self nameSpaceFilter value.
@@ -578,6 +579,10 @@
and:[ isLoaded
and:[ cls isPrivate not
and:[ (cls theMetaclass includesSelector:#documentation) not ]]].
+ included ifFalse:[
+ included := showExtendedClasses
+ and:[ cls hasExtensions ].
+ ].
].
].
].
@@ -628,8 +633,8 @@
listOfCategories
|categories categoriesBag hideUnloadedClasses generator nameSpaceFilter packageFilter allName
categoriesWithExtensions categoriesWithChangedCode categoriesWithRemoteChangedCode
- classesInChangeSet classesInRemoteChangeSet
- numClassesInChangeSet numClasses numUnloaded numUndocumented pseudoEntryColor|
+ classesInChangeSet classesInRemoteChangeSet classesWithExtensions
+ numClassesInChangeSet numClasses numUnloaded numUndocumented numExtendedClasses pseudoEntryColor|
allName := self class nameListEntryForALL.
@@ -643,7 +648,7 @@
(packageFilter includes:allName) ifTrue:[packageFilter := nil].
].
- numClasses := numUndocumented := numUnloaded := numClassesInChangeSet := 0.
+ numClasses := numUndocumented := numUnloaded := numClassesInChangeSet := numExtendedClasses := 0.
categories := Set new.
categoriesBag := Bag new.
@@ -657,6 +662,8 @@
classesInRemoteChangeSet := SmallTeam isNil ifTrue:[#()] ifFalse:[ SmallTeam changedClasses ].
classesInRemoteChangeSet := classesInRemoteChangeSet collect:[:each | each theNonMetaclass].
+ classesWithExtensions := IdentitySet new.
+
classes := IdentitySet new.
inGeneratorHolder isNil ifTrue:[
Smalltalk allClassesDo:[:cls |
@@ -695,7 +702,9 @@
categoriesWithRemoteChangedCode add:cat
].
cls hasExtensions ifTrue:[
- categoriesWithExtensions add:cat
+ categoriesWithExtensions add:cat.
+ classesWithExtensions add:cls.
+ numExtendedClasses := numExtendedClasses + 1.
].
]
]
@@ -775,6 +784,10 @@
rawCategoryList add:self class nameListEntryForUnloaded.
categories add:((self class nameListEntryForUnloadedWithCount bindWith:numUnloaded) allItalic colorizeAllWith:pseudoEntryColor).
].
+ numExtendedClasses > 0 ifTrue:[
+ rawCategoryList add:self class nameListEntryForExtendedClasses.
+ categories add:((self class nameListEntryForExtendedClassesWithCount bindWith:numExtendedClasses) allItalic colorizeAllWith:pseudoEntryColor).
+ ].
numClassesInChangeSet := ChangeSet current changedClasses size.
numClassesInChangeSet > 0 ifTrue:[
rawCategoryList addFirst:self class nameListEntryForChanged.
@@ -958,9 +971,9 @@
!ClassCategoryList class methodsFor:'documentation'!
version
- ^ '$Header: /cvs/stx/stx/libtool/Tools_ClassCategoryList.st,v 1.39 2012-10-27 10:35:12 cg Exp $'
+ ^ '$Header: /cvs/stx/stx/libtool/Tools_ClassCategoryList.st,v 1.40 2012-11-07 14:19:04 cg Exp $'
!
version_CVS
- ^ '$Header: /cvs/stx/stx/libtool/Tools_ClassCategoryList.st,v 1.39 2012-10-27 10:35:12 cg Exp $'
+ ^ '$Header: /cvs/stx/stx/libtool/Tools_ClassCategoryList.st,v 1.40 2012-11-07 14:19:04 cg Exp $'
! !