MethodFinderWindow.st
changeset 3322 7fa5dfa1832f
parent 3315 17b0d3a76b7c
child 3482 de4a67d603bb
equal deleted inserted replaced
3321:08f3a7af6975 3322:7fa5dfa1832f
  1053     UserPreferences browserClass browseSendersOf:selector.
  1053     UserPreferences browserClass browseSendersOf:selector.
  1054 !
  1054 !
  1055 
  1055 
  1056 search
  1056 search
  1057     "Do a search based on the input in the various text editors. Return the receiver."
  1057     "Do a search based on the input in the various text editors. Return the receiver."
  1058     
  1058 
  1059     |tempReceiver tempAnswer tempArguments anArray resultArray receiverWithArgument mf|
  1059     |tempReceiver tempAnswer tempArguments anArray resultArray receiverWithArgument mf|
  1060 
  1060 
  1061     self resultHolder value:nil.
  1061     self resultHolder value:nil.
  1062     self classOfResultHolder value:nil.
  1062     self classOfResultHolder value:nil.
  1063     self codeHolder value:nil.
  1063     self codeHolder value:nil.
  1069     receiverWithArgument := self mergeReceiver:(tempReceiver value)
  1069     receiverWithArgument := self mergeReceiver:(tempReceiver value)
  1070                                  withArgument:(tempArguments values).
  1070                                  withArgument:(tempArguments values).
  1071     anArray
  1071     anArray
  1072         at:1 put:receiverWithArgument;
  1072         at:1 put:receiverWithArgument;
  1073         at:2 put:tempAnswer value.
  1073         at:2 put:tempAnswer value.
  1074      "an array now holds the following array #(#(receiver argument) answer) or #(#(reciever) answer). which should
  1074      "an array now holds the following array #(#(receiver argument) answer) or #(#(receiver) answer). which should
  1075      be suitable input for the method finder."
  1075      be suitable input for the method finder."
  1076     self withCursor:Cursor execute
  1076     self withCursor:Cursor execute
  1077         do:[
  1077         do:[
  1078             mf := MethodFinder new.
  1078             mf := MethodFinder new.
  1079             resultArray := mf
  1079             resultArray := mf
  1083     ((resultArray at:1) includesSubString:'no single') ifTrue:[
  1083     ((resultArray at:1) includesSubString:'no single') ifTrue:[
  1084         self warn:(resultArray at:1).
  1084         self warn:(resultArray at:1).
  1085         ^ self
  1085         ^ self
  1086     ].
  1086     ].
  1087      "the following then replaces data1 and data2 created by the method finder to the appropriate arguments"
  1087      "the following then replaces data1 and data2 created by the method finder to the appropriate arguments"
  1088     resultArray 
  1088     resultArray
  1089         keysAndValuesDo:[:key :value | 
  1089         keysAndValuesDo:[:key :value |
  1090             |newValue|
  1090             |newValue|
  1091 
  1091 
  1092             newValue := value replString:'data1' withString:(tempReceiver key).
  1092             newValue := value replString:'data1' withString:(tempReceiver key).
  1093             (tempArguments size) >= 1 ifTrue:[
  1093             (tempArguments size) >= 1 ifTrue:[
  1094                 newValue := newValue replString:'data2'
  1094                 newValue := newValue replString:'data2'
  1733     ^ false
  1733     ^ false
  1734 !
  1734 !
  1735 
  1735 
  1736 receiverEditorContents
  1736 receiverEditorContents
  1737     "Return a cleaned up version of receiver taken from the receiverEditor
  1737     "Return a cleaned up version of receiver taken from the receiverEditor
  1738      as an association. The association has aCleanedRecieverString as a key and the
  1738      as an association. The association has aCleanedReceiverString as a key and the
  1739      compiledReceiver as value."
  1739      compiledReceiver as value."
  1740     
  1740 
  1741     |aCleanedRecieverString compiledReceiver|
  1741     |aCleanedReceiverString compiledReceiver|
  1742 
  1742 
  1743     aCleanedRecieverString := self cleanInputs:(receiverEditor contents).
  1743     aCleanedReceiverString := self cleanInputs:(receiverEditor contents).
  1744     compiledReceiver := Compiler evaluate:aCleanedRecieverString.
  1744     compiledReceiver := Compiler evaluate:aCleanedReceiverString.
  1745     ((self isExpression:aCleanedRecieverString) or:[ compiledReceiver isNil ]) ifTrue:[
  1745     ((self isExpression:aCleanedReceiverString) or:[ compiledReceiver isNil ]) ifTrue:[
  1746         aCleanedRecieverString := compiledReceiver printString
  1746         aCleanedReceiverString := compiledReceiver printString
  1747     ].
  1747     ].
  1748     ^ aCleanedRecieverString -> compiledReceiver.
  1748     ^ aCleanedReceiverString -> compiledReceiver.
  1749 !
  1749 !
  1750 
  1750 
  1751 waitForBackgroundSearchFinished
  1751 waitForBackgroundSearchFinished
  1752     | p |
  1752     | p |
  1753 
  1753