allCallsOn fix
authorClaus Gittinger <cg@exept.de>
Wed, 15 Nov 2000 13:52:28 +0100
changeset 2846 b332c41c3daa
parent 2845 e7d49909cab3
child 2847 c87ad06a8f72
allCallsOn fix
SystemBrowser.st
--- a/SystemBrowser.st	Wed Nov 15 13:36:59 2000 +0100
+++ b/SystemBrowser.st	Wed Nov 15 13:52:28 2000 +0100
@@ -249,7 +249,8 @@
 @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@H@@@@B@B@ @@H@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
 @@@@@@@@@@@@@@@@@@@@@@@@H@@@@@@@@@H@@ @@@@Hb') ; colorMapFromArray:#[0 0 0 0 255 0 127 127 127 170 170 170 255 0 0 255 255 0 255 255 255]; mask:((Depth1Image new) width: 28; height: 28; photometric:(#blackIs0); bitsPerSample:(#(1 )); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'
 ??0@@O?<@@C??@@@??0@@O?<@@C??@@@@ @@@@H@@@@B@?? A0O?8@_??>@G@?? @ O?8@H@@@@B@?? A0O?8@_??>@G@?? @@O?8@@@@@@@@@@@9O\7\IRT
-QDBD%DQ@!!OH''HHRQEABT$QPP99]7\@@a') ; yourself); yourself]!
+QDBD%DQ@!!OH''HHRQEABT$QPP99]7\@@a') ; yourself); yourself]
+!
 
 fileImageIcon
     "This resource specification was automatically generated
@@ -267,7 +268,8 @@
 
     ^Icon
         constantNamed:#'SystemBrowser fileImageIcon'
-        ifAbsentPut:[(Depth4Image new) width: 13; height: 11; photometric:(#palette); bitsPerSample:(#(4 )); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'@@@@@@@@@@H"H"H"@@@BQBH!!D"@@@$P"HQH"@@H"H"DQH @BH"HQDRH@@"H"DQH"@@L3L3DSL0@CL3L1D3L@@3L3L3L3@@@@@@@@@@@b') ; colorMapFromArray:#[0 0 0 51 153 153 51 255 255 255 153 0 255 255 0]; mask:((Depth1Image new) width: 13; height: 11; photometric:(#blackIs0); bitsPerSample:(#(1 )); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'?<C?8O?0??#?>O?8??#?>O?8??#?>@@a') ; yourself); yourself]!
+        ifAbsentPut:[(Depth4Image new) width: 13; height: 11; photometric:(#palette); bitsPerSample:(#(4 )); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'@@@@@@@@@@H"H"H"@@@BQBH!!D"@@@$P"HQH"@@H"H"DQH @BH"HQDRH@@"H"DQH"@@L3L3DSL0@CL3L1D3L@@3L3L3L3@@@@@@@@@@@b') ; colorMapFromArray:#[0 0 0 51 153 153 51 255 255 255 153 0 255 255 0]; mask:((Depth1Image new) width: 13; height: 11; photometric:(#blackIs0); bitsPerSample:(#(1 )); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'?<C?8O?0??#?>O?8??#?>O?8??#?>@@a') ; yourself); yourself]
+!
 
 greenLockIcon
     "This resource specification was automatically generated
@@ -510,7 +512,8 @@
 
     ^Icon
         constantNamed:#'SystemBrowser programImageIcon'
-        ifAbsentPut:[(Depth4Image new) width: 13; height: 11; photometric:(#palette); bitsPerSample:(#(4 )); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'@@@@@@@@@@H"H"H"H @BQBH!!D"H@@$P"HQH"@@H"H"DQH @BH"HQDRH@@"H"DQH"@@L3L3DSL0@CL3L1D3L@@3L3L3L3@@@@@@@@@@@b') ; colorMapFromArray:#[0 0 0 25 77 77 51 255 255 128 128 0 128 77 0]; mask:((Depth1Image new) width: 13; height: 11; photometric:(#blackIs0); bitsPerSample:(#(1 )); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'??#?>O?8??#?>O?8??#?>O?8??#?>@@a') ; yourself); yourself]!
+        ifAbsentPut:[(Depth4Image new) width: 13; height: 11; photometric:(#palette); bitsPerSample:(#(4 )); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'@@@@@@@@@@H"H"H"H @BQBH!!D"H@@$P"HQH"@@H"H"DQH @BH"HQDRH@@"H"DQH"@@L3L3DSL0@CL3L1D3L@@3L3L3L3@@@@@@@@@@@b') ; colorMapFromArray:#[0 0 0 25 77 77 51 255 255 128 128 0 128 77 0]; mask:((Depth1Image new) width: 13; height: 11; photometric:(#blackIs0); bitsPerSample:(#(1 )); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'??#?>O?8??#?>O?8??#?>O?8??#?>@@a') ; yourself); yourself]
+!
 
 programMenuIcon
     "This resource specification was automatically generated
@@ -667,7 +670,8 @@
 
     ^Icon
         constantNamed:#'SystemBrowser visualStartableClassIcon'
-        ifAbsentPut:[(Depth4Image new) width: 13; height: 11; photometric:(#palette); bitsPerSample:(#(4 )); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'@@@@H@@@@@@@@B@@@@@@@@H2@@@L@@@#L2@@@@@@H#H @@@@@BL#H@@O@@@#L2@@@@@@H@@ @@@@@BQDH@@F@@@DQ@@@@@@@@@@@@@\b') ; colorMapFromArray:#[255 0 0 255 255 255 0 0 0 127 127 127 255 255 0]; mask:((Depth1Image new) width: 13; height: 11; photometric:(#blackIs0); bitsPerSample:(#(1 )); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'@ @B@@\@C8@O @>@C8@H @>@A0@G@@@a') ; yourself); yourself]! !
+        ifAbsentPut:[(Depth4Image new) width: 13; height: 11; photometric:(#palette); bitsPerSample:(#(4 )); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'@@@@H@@@@@@@@B@@@@@@@@H2@@@L@@@#L2@@@@@@H#H @@@@@BL#H@@O@@@#L2@@@@@@H@@ @@@@@BQDH@@F@@@DQ@@@@@@@@@@@@@\b') ; colorMapFromArray:#[255 0 0 255 255 255 0 0 0 127 127 127 255 255 0]; mask:((Depth1Image new) width: 13; height: 11; photometric:(#blackIs0); bitsPerSample:(#(1 )); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'@ @B@@\@C8@O @>@C8@H @>@A0@G@@@a') ; yourself); yourself]
+! !
 
 !SystemBrowser class methodsFor:'interface specs'!
 
@@ -873,27 +877,31 @@
     "return a collection of methods which send aSelector.
      Methods from classes in aCollectionOfClasses are searched only."
 
-    |sel searchBlock lcString|
+    |sel searchBlock selMatch lcString  quickMatch|
 
     ((aSelectorString ~= '*') 
      and:[(aSelectorString includesMatchCharacters or:[ignoreCase])]) ifTrue:[
         "/ a matchString - need string matching procedure
 
+        ignoreCase ifTrue:[
+            lcString := aSelectorString asLowercase.
+        ] ifFalse:[
+            lcString := aSelectorString.
+        ].
+
+        quickMatch := aSelectorString.
+        (quickMatch startsWith:'*') ifTrue:[
+            quickMatch := quickMatch copyFrom:2
+        ].
+        (quickMatch endsWith:'*') ifTrue:[
+            quickMatch := quickMatch copyWithoutLast:1
+        ].
+        (quickMatch includes:$:) ifTrue:[
+            quickMatch := quickMatch copyTo:(quickMatch indexOf:$:)-1.
+        ].
         searchBlock := [:class :method :s |
-                            |src quickMatch|
-
-                            ignoreCase ifTrue:[
-                                lcString := aSelectorString asLowercase.
-                            ] ifFalse:[
-                                lcString := aSelectorString.
-                            ].
-                            quickMatch := aSelectorString.
-                            (quickMatch startsWith:'*') ifTrue:[
-                                quickMatch := quickMatch copyFrom:2
-                            ].
-                            (quickMatch endsWith:'*') ifTrue:[
-                                quickMatch := quickMatch copyWithoutLast:1
-                            ].
+                            |src|
+
                             (ignoreCase not and:[quickMatch includesMatchCharacters not]) ifTrue:[
                                 "/ do quick search first
                                 method isLazyMethod ifTrue:[
@@ -949,12 +957,16 @@
             sel isNil ifTrue:[
                 ^ nil     "/ none
             ].
+            quickMatch := sel.
+            (quickMatch includes:$:) ifTrue:[
+                quickMatch := quickMatch copyTo:(quickMatch indexOf:$:)-1.
+            ].
             searchBlock := [:class :method :s |
                                 |src|
 
                                 method isLazyMethod ifTrue:[
                                     src := method source.
-                                    (src notNil and:[src includesString:sel]) ifTrue:[
+                                    (src notNil and:[src includesString:quickMatch]) ifTrue:[
                                         method makeRealMethod.
                                         method sends:sel.
                                     ] ifFalse:[
@@ -3233,6 +3245,6 @@
 !SystemBrowser class methodsFor:'documentation'!
 
 version
-    ^ '$Header: /cvs/stx/stx/libtool/SystemBrowser.st,v 1.123 2000-10-31 15:25:37 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/libtool/SystemBrowser.st,v 1.124 2000-11-15 12:52:28 cg Exp $'
 ! !
 SystemBrowser initialize!