*** empty log message ***
authorca
Tue, 17 Dec 2002 15:44:06 +0100
changeset 1663 60bd14266560
parent 1662 76cd515f008a
child 1664 782f3bda3c88
*** empty log message ***
UIHelpTool.st
UIPainter.st
--- a/UIHelpTool.st	Tue Dec 17 11:20:46 2002 +0100
+++ b/UIHelpTool.st	Tue Dec 17 15:44:06 2002 +0100
@@ -647,6 +647,25 @@
 
 !UIHelpTool methodsFor:'building'!
 
+buildAndMergeFromClass:aClass
+    "class and selector changed; merge old definitions
+     into definitions loaded from a class
+    "
+    |saveDictionary saveHelpKey|
+
+    saveDictionary := dictionary.
+    saveHelpKey    := self helpKey.
+
+    self buildFromClass:aClass.
+
+    saveDictionary notEmpty ifTrue:[
+        dictionary declareAllFrom:saveDictionary.
+        self updateList.
+    ].
+    self helpKey:saveHelpKey.
+    self modified:true.
+!
+
 buildFromClass:aClass
     "reads the help dictionary from aClass and find remaining classes 
      'between' aClass and ApplicationModel" 
--- a/UIPainter.st	Tue Dec 17 11:20:46 2002 +0100
+++ b/UIPainter.st	Tue Dec 17 15:44:06 2002 +0100
@@ -3526,7 +3526,7 @@
 doDefineClassAndSelector
     "launches a dialog for defining class, superclass, and selector of the application"
 
-    |again tmp helpDict helpKey helpTool|
+    |again tmp|
 
     [
         again := false.
@@ -3572,16 +3572,8 @@
     specClass := specClass isBehavior ifTrue:[specClass name]
                                       ifFalse:[specClass].
 
-    helpTool := self helpTool.
-    helpDict := helpTool dictionary.
-    helpKey  := helpTool helpKey.
-    helpTool buildFromClass:specClass.    
-    helpTool dictionary declareAllFrom: helpDict.
-    helpTool updateList.
-    helpTool helpKey: helpKey.
     self clearModifiedFlag.
-    helpTool modified: true.
-
+    self helpTool buildAndMergeFromClass:specClass.
     self updateInfoLabel
 
     "Modified: / 16.7.1998 / 18:26:33 / cg"