--- a/Tools__SearchDialog.st Wed Mar 21 14:05:42 2012 +0000
+++ b/Tools__SearchDialog.st Wed Mar 21 17:50:14 2012 +0000
@@ -241,7 +241,7 @@
].
sel := sel string.
- browser rememberSearchPattern:sel.
+ (browser ? SystemBrowser) rememberSearchPattern:sel.
searchWhat == #globalName ifTrue:[
LastGlobalSearched := sel.
] ifFalse:[
@@ -260,7 +260,7 @@
].
].
where isNil ifTrue:[
- browser warn:'No class(es) for search'.
+ (browser ? Dialog) warn:'No class(es) for search'.
^ self.
].
self getClassesAndMethodsFor:where.
@@ -283,13 +283,13 @@
classes size == 0 ifTrue:[
classes := nil.
methods size == 0 ifTrue:[
- browser warn:'No class(es) given for search.'.
+ (browser ? Dialog) warn:'No class(es) given for search.'.
^ self.
].
] ifFalse:[
classes := classes asOrderedCollection.
methods size ~~ 0 ifTrue:[
- browser warn:'oops'.
+ (browser ? Dialog) warn:'oops'.
methods := nil.
].
].
@@ -319,7 +319,7 @@
aBlock value.
]
- "Modified: / 04-08-2011 / 23:18:42 / cg"
+ "Modified: / 14-02-2012 / 14:12:49 / cg"
!
setupToAskForMethodSearchTitle:title forBrowser:brwsrArg searchWhat:searchWhatArg
@@ -335,25 +335,29 @@
searchWhat := searchWhatArg.
withTextEntry := withTextEntryArg.
- browser := brwsrArg.
- resources := browser resources.
+
+ (browser := brwsrArg) isNil ifTrue:[
+ resources := NewSystemBrowser classResources.
+ ] ifFalse:[
+ resources := browser resources.
+ selectedClasses := browser selectedClasses value.
+ selectedCategories := browser selectedCategoriesValue.
+ selectedCategories := selectedCategories reject:[:cat | NavigatorModel isPseudoCategory:cat].
+ selectedMethods := browser selectedMethods value.
+ currentClass := browser theSingleSelectedClass.
+ currentClassCategory := browser theSingleSelectedCategory.
+ currentPackage := browser theSingleSelectedProject.
+ currentClass isNil ifTrue:[
+ browser hasMethodSelected ifTrue:[
+ currentClass := selectedMethods first mclass.
+ "/ selectedClasses := (selectedMethods collect:[:each | each mclass ]) asIdentitySet.
+ "/ selectedClasses := selectedClasses select:[:each | each notNil ].
+ ].
+ ].
+ ].
(self addTextLabel:(resources stringWithCRs:title)) adjust:#left.
- selectedClasses := browser selectedClasses value.
- selectedCategories := browser selectedCategoriesValue.
- selectedCategories := selectedCategories reject:[:cat | NavigatorModel isPseudoCategory:cat].
- selectedMethods := browser selectedMethods value.
- currentClass := browser theSingleSelectedClass.
- currentClassCategory := browser theSingleSelectedCategory.
- currentPackage := browser theSingleSelectedProject.
- currentClass isNil ifTrue:[
- browser hasMethodSelected ifTrue:[
- currentClass := selectedMethods first mclass.
- "/ selectedClasses := (selectedMethods collect:[:each | each mclass ]) asIdentitySet.
- "/ selectedClasses := selectedClasses select:[:each | each notNil ].
- ].
- ].
currentClass notNil ifTrue:[
currentClass := currentClass theNonMetaclass.
].
@@ -452,7 +456,7 @@
self addCheckBoxForOwnerAndItsSubclassesAndItsPrivateClasses.
].
] ifFalse:[
- browser currentNamespace ~~ Smalltalk ifTrue:[
+ (browser notNil and:[browser currentNamespace ~~ Smalltalk]) ifTrue:[
self addCheckBoxForEverywhere.
currentNamespace := browser currentNamespace.
currentNamespace ~= (browser nameListEntryForALL) ifTrue:[
@@ -472,20 +476,23 @@
].
self addCheckBoxForChangedClassesList.
- (withMethodList and:[ browser isMethodListBrowser ]) ifTrue:[
- searchAreas size == 0 ifTrue:[
- self addCheckBoxForEverywhere.
+ withMethodList ifTrue:[
+ browser isMethodListBrowser ifTrue:[
+ searchAreas size == 0 ifTrue:[
+ self addCheckBoxForEverywhere.
+ ].
+ self addCheckBoxForMethodList.
+ browser selectedMethods value size > 1 ifTrue:[
+ self addCheckBoxForSelectedMethods.
+ ].
+ self addCheckBoxForSelectedMethodClasses.
+ self addCheckBoxForSelectedMethodPackages.
+ ] ifFalse:[
+ searchAreas size == 0 ifTrue:[
+ self addCheckBoxForEverywhere.
+ ].
+ self addCheckBoxForChangedMethodList.
].
- self addCheckBoxForMethodList.
- browser selectedMethods value size > 1 ifTrue:[
- self addCheckBoxForSelectedMethods.
- ].
- self addCheckBoxForSelectedMethodClasses.
- ] ifFalse:[
- searchAreas size == 0 ifTrue:[
- self addCheckBoxForEverywhere.
- ].
- self addCheckBoxForChangedMethodList.
].
searchAreas size == 0 ifTrue:[
@@ -549,7 +556,7 @@
self label:(resources string:'Search').
- "Modified: / 06-12-2011 / 11:47:06 / cg"
+ "Modified: / 29-02-2012 / 19:48:17 / cg"
! !
!SearchDialog methodsFor:'setup'!
@@ -804,7 +811,7 @@
select:[:m | m mclass notNil]
thenCollect:[:m | m mclass theNonMetaclass]) asSet.
classes size == 1 ifTrue:[
- b := CheckBox label:(resources string:'Selected method''s class (%1)'
+ b := CheckBox label:(resources string:'Selected method''s class ("%1")'
with:classes first name).
] ifFalse:[
b := CheckBox label:(resources string:'Selected methods'' classes (%1)'
@@ -813,7 +820,26 @@
self addCheckBox:b forSearchArea:#listOfSelectedMethodClasses.
^ b.
- "Modified: / 01-11-2010 / 21:35:46 / cg"
+ "Modified: / 29-02-2012 / 19:42:33 / cg"
+!
+
+addCheckBoxForSelectedMethodPackages
+ |b packages|
+
+ packages := ((browser selectedMethods value ? #())
+ collect:[:m | m package]) asSet.
+
+ packages size == 1 ifTrue:[
+ b := CheckBox label:(resources string:'Selected method''s package ("%1")'
+ with:packages first).
+ ] ifFalse:[
+ b := CheckBox label:(resources string:'Selected methods'' packages (%1)'
+ with:packages size).
+ ].
+ self addCheckBox:b forSearchArea:#listOfSelectedMethodPackages.
+ ^ b.
+
+ "Created: / 29-02-2012 / 19:42:26 / cg"
!
addCheckBoxForSelectedMethods
@@ -885,25 +911,27 @@
addInputFieldForSelectorOrNameOrString
|sel lastSearchPatterns|
- searchWhat == #selector ifTrue:[
- sel := browser selectorToSearchFor.
- ] ifFalse:[
- searchWhat == #globalName ifTrue:[
- sel := browser globalNameToSearchFor ? LastGlobalSearched.
+ browser notNil ifTrue:[
+ searchWhat == #selector ifTrue:[
+ sel := browser selectorToSearchFor.
] ifFalse:[
- searchWhat == #string ifTrue:[
- sel := browser stringToSearchFor ? LastStringSearched.
- ] ifFalse:[
- searchWhat == #resource ifTrue:[
- sel := browser stringToSearchFor ? LastResourceSearched.
+ searchWhat == #globalName ifTrue:[
+ sel := browser globalNameToSearchFor ? LastGlobalSearched.
+ ] ifFalse:[
+ searchWhat == #string ifTrue:[
+ sel := browser stringToSearchFor ? LastStringSearched.
] ifFalse:[
- sel := browser selectorToSearchFor.
+ searchWhat == #resource ifTrue:[
+ sel := browser stringToSearchFor ? LastResourceSearched.
+ ] ifFalse:[
+ sel := browser selectorToSearchFor.
+ ]
]
- ]
+ ].
].
].
+ lastSearchPatterns := (browser ? SystemBrowser) lastSearchPatterns.
- lastSearchPatterns := browser lastSearchPatterns.
sel isEmptyOrNil ifTrue:[
"/ use last searchString
lastSearchPatterns size > 0 ifTrue:[
@@ -940,14 +968,14 @@
inputField contents:best.
"/ listHolder contents:matching.
matching size ~~ 1 ifTrue:[
- browser window beep.
+ (browser ? self) window beep.
].
].
].
selectorHolder onChangeEvaluate:[ self updateListOfMatchingSelectorsFor:inputField contents ].
- "Modified: / 06-07-2011 / 12:07:12 / cg"
+ "Modified: / 14-02-2012 / 14:13:52 / cg"
!
addTextEntryFieldForCode
@@ -1156,6 +1184,12 @@
methods := nil.
^ self.
].
+ (where == #listOfSelectedMethodPackages) ifTrue:[
+ classes := (((browser selectedMethods value ? #()) collect:[:m | m package]) asSet
+ collectAll:[:p | Smalltalk allClassesInPackage:p ]) asOrderedCollection.
+ methods := nil.
+ ^ self.
+ ].
(where == #listOfChangedClasses) ifTrue:[
classes := ChangeSet current changedClasses.
methods := nil.
@@ -1182,8 +1216,8 @@
self halt:'inumplemented search'.
- "Modified: / 19-11-2010 / 12:01:15 / cg"
"Modified: / 05-10-2011 / 15:48:20 / az"
+ "Modified: / 29-02-2012 / 19:47:42 / cg"
!
helpTextForMetaPatterns
@@ -1291,11 +1325,11 @@
!SearchDialog class methodsFor:'documentation'!
version_CVS
- ^ '§Header: /cvs/stx/stx/libtool/Tools_SearchDialog.st,v 1.67 2011/12/06 10:47:22 cg Exp §'
+ ^ '§Header: /cvs/stx/stx/libtool/Tools_SearchDialog.st,v 1.69 2012/02/29 18:50:58 cg Exp §'
!
version_SVN
- ^ '$Id: Tools__SearchDialog.st 7911 2012-02-22 09:55:48Z vranyj1 $'
+ ^ '$Id: Tools__SearchDialog.st 7952 2012-03-21 17:50:14Z vranyj1 $'
! !
SearchDialog initialize!