Bugfix in EditService: correctly react on classHolder/methodHolder changes.
--- a/SmallSense__EditService.st Mon Sep 16 16:38:23 2013 +0100
+++ b/SmallSense__EditService.st Mon Sep 16 16:57:32 2013 +0100
@@ -9,6 +9,7 @@
category:'SmallSense-Core-Services'
!
+
!EditService class methodsFor:'accessing'!
label
@@ -50,31 +51,36 @@
update:something with:aParameter from:changedObject
"Invoked when an object that I depend upon sends a change notification."
- | lang |
-
-
changedObject == codeView ifTrue:[
(#(methodHolder classHolder languageHolder) includes: something) ifTrue:[
aParameter key removeDependent: self.
aParameter value addDependent: self.
- ]
+ ].
].
(changedObject == codeView languageHolder
- or:[something == codeView classHolder
- or:[something == codeView methodHolder]]) ifTrue:[
- UserPreferences current smallSenseElectricEditSupportEnabled ifTrue:[
- support language ~~ (lang := codeView language) ifTrue:[
- support := EditSupport forLanguage: lang.
- support service: self.
- ].
- ].
+ or:[changedObject == codeView classHolder
+ or:[changedObject == codeView methodHolder]]) ifTrue:[
+ self updateSupport.
^self.
].
super update:something with:aParameter from:changedObject
- "Modified: / 27-07-2013 / 22:32:28 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+ "Modified: / 16-09-2013 / 16:36:36 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+updateSupport
+ | lang |
+
+ UserPreferences current smallSenseElectricEditSupportEnabled ifTrue:[
+ support language ~~ (lang := codeView language) ifTrue:[
+ support := EditSupport forLanguage: lang.
+ support service: self.
+ ].
+ ].
+
+ "Created: / 16-09-2013 / 16:31:51 / Jan Vrany <jan.vrany@fit.cvut.cz>"
! !
!EditService methodsFor:'event handling'!
@@ -119,3 +125,10 @@
"Created: / 24-07-2013 / 23:14:18 / Jan Vrany <jan.vrany@fit.cvut.cz>"
! !
+!EditService class methodsFor:'documentation'!
+
+version_HG
+
+ ^ '$Changeset: <not expanded> $'
+! !
+