changed:
authorClaus Gittinger <cg@exept.de>
Sun, 30 Jan 2011 15:32:37 +0100
changeset 9723 1f088ae4657e
parent 9722 14be18de210f
child 9724 4824f70e9956
changed: #generateUndoableChange:overClasses:via: #generateUndoableChangeOverSelectedMethods:via:
NewSystemBrowser.st
Tools__NewSystemBrowser.st
--- a/NewSystemBrowser.st	Sun Jan 30 10:56:43 2011 +0100
+++ b/NewSystemBrowser.st	Sun Jan 30 15:32:37 2011 +0100
@@ -22317,7 +22317,7 @@
         Dialog warn:('Sorry.\\For now, this works only for Smalltalk classes.' withCRs).
         ^ self.
     ].
-    codeGeneratorClass := classes first programmingLanguage codeGeneratorToolClass.
+    codeGeneratorClass := classes first programmingLanguage codeGeneratorClass.
     codeGeneratorClass isNil ifTrue:[
         Dialog warn:('Sorry.\\For now, there seems to be no codeGeneratorClass defined for this language.' withCRs).
         ^ self.
@@ -22362,7 +22362,7 @@
         ]
     ]
 
-    "Modified: / 30-01-2011 / 10:43:55 / cg"
+    "Modified: / 30-01-2011 / 15:20:03 / cg"
 !
 
 generateUndoableChangeOverSelectedClasses:nameOfOperation via:aBlock
@@ -22377,9 +22377,15 @@
 generateUndoableChangeOverSelectedMethods:nameOfOperation via:aBlock
     "helper for code generators"
 
-    |generator count dict method methodName|
-
-    generator := CodeGeneratorTool new.
+    |generator count dict method methodName languageOfFirstMethod|
+
+    languageOfFirstMethod := self selectedMethods value first mclass language.
+    (self selectedMethods value conform:[:mthd | (mthd mclass language) = languageOfFirstMethod]) ifFalse:[
+        Dialog warn:'All methods must be defined in the same programming language'.
+        ^ self
+    ].
+
+    generator := languageOfFirstMethod codeGeneratorClass new.
     generator startCollectChanges.
 
     count := 0.
@@ -22408,6 +22414,8 @@
     ].
 
     generator executeCollectedChangesNamed:(nameOfOperation expandPlaceholdersWith:dict)
+
+    "Modified: / 30-01-2011 / 15:20:35 / cg"
 !
 
 launchSelectedApplication
@@ -44837,11 +44845,11 @@
 !NewSystemBrowser class methodsFor:'documentation'!
 
 version
-    ^ '$Header: /cvs/stx/stx/libtool/Attic/NewSystemBrowser.st,v 1.1503 2011-01-30 09:56:43 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/libtool/Attic/NewSystemBrowser.st,v 1.1504 2011-01-30 14:32:37 cg Exp $'
 !
 
 version_CVS
-    ^ '$Header: /cvs/stx/stx/libtool/Attic/NewSystemBrowser.st,v 1.1503 2011-01-30 09:56:43 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/libtool/Attic/NewSystemBrowser.st,v 1.1504 2011-01-30 14:32:37 cg Exp $'
 ! !
 
 NewSystemBrowser initialize!
--- a/Tools__NewSystemBrowser.st	Sun Jan 30 10:56:43 2011 +0100
+++ b/Tools__NewSystemBrowser.st	Sun Jan 30 15:32:37 2011 +0100
@@ -22317,7 +22317,7 @@
         Dialog warn:('Sorry.\\For now, this works only for Smalltalk classes.' withCRs).
         ^ self.
     ].
-    codeGeneratorClass := classes first programmingLanguage codeGeneratorToolClass.
+    codeGeneratorClass := classes first programmingLanguage codeGeneratorClass.
     codeGeneratorClass isNil ifTrue:[
         Dialog warn:('Sorry.\\For now, there seems to be no codeGeneratorClass defined for this language.' withCRs).
         ^ self.
@@ -22362,7 +22362,7 @@
         ]
     ]
 
-    "Modified: / 30-01-2011 / 10:43:55 / cg"
+    "Modified: / 30-01-2011 / 15:20:03 / cg"
 !
 
 generateUndoableChangeOverSelectedClasses:nameOfOperation via:aBlock
@@ -22377,9 +22377,15 @@
 generateUndoableChangeOverSelectedMethods:nameOfOperation via:aBlock
     "helper for code generators"
 
-    |generator count dict method methodName|
-
-    generator := CodeGeneratorTool new.
+    |generator count dict method methodName languageOfFirstMethod|
+
+    languageOfFirstMethod := self selectedMethods value first mclass language.
+    (self selectedMethods value conform:[:mthd | (mthd mclass language) = languageOfFirstMethod]) ifFalse:[
+        Dialog warn:'All methods must be defined in the same programming language'.
+        ^ self
+    ].
+
+    generator := languageOfFirstMethod codeGeneratorClass new.
     generator startCollectChanges.
 
     count := 0.
@@ -22408,6 +22414,8 @@
     ].
 
     generator executeCollectedChangesNamed:(nameOfOperation expandPlaceholdersWith:dict)
+
+    "Modified: / 30-01-2011 / 15:20:35 / cg"
 !
 
 launchSelectedApplication
@@ -44837,11 +44845,11 @@
 !NewSystemBrowser class methodsFor:'documentation'!
 
 version
-    ^ '$Header: /cvs/stx/stx/libtool/Tools__NewSystemBrowser.st,v 1.1503 2011-01-30 09:56:43 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/libtool/Tools__NewSystemBrowser.st,v 1.1504 2011-01-30 14:32:37 cg Exp $'
 !
 
 version_CVS
-    ^ '$Header: /cvs/stx/stx/libtool/Tools__NewSystemBrowser.st,v 1.1503 2011-01-30 09:56:43 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/libtool/Tools__NewSystemBrowser.st,v 1.1504 2011-01-30 14:32:37 cg Exp $'
 ! !
 
 NewSystemBrowser initialize!