You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@uima.apache.org by jo...@apache.org on 2011/11/08 12:53:28 UTC
svn commit: r1199205 -
/uima/uimaj/trunk/uimaj-ep-cas-editor/src/main/java/org/apache/uima/caseditor/editor/AnnotationEditor.java
Author: joern
Date: Tue Nov 8 11:53:27 2011
New Revision: 1199205
URL: http://svn.apache.org/viewvc?rev=1199205&view=rev
Log:
UIMA-2273 Unregisters old listeners when input is changed.
Modified:
uima/uimaj/trunk/uimaj-ep-cas-editor/src/main/java/org/apache/uima/caseditor/editor/AnnotationEditor.java
Modified: uima/uimaj/trunk/uimaj-ep-cas-editor/src/main/java/org/apache/uima/caseditor/editor/AnnotationEditor.java
URL: http://svn.apache.org/viewvc/uima/uimaj/trunk/uimaj-ep-cas-editor/src/main/java/org/apache/uima/caseditor/editor/AnnotationEditor.java?rev=1199205&r1=1199204&r2=1199205&view=diff
==============================================================================
--- uima/uimaj/trunk/uimaj-ep-cas-editor/src/main/java/org/apache/uima/caseditor/editor/AnnotationEditor.java (original)
+++ uima/uimaj/trunk/uimaj-ep-cas-editor/src/main/java/org/apache/uima/caseditor/editor/AnnotationEditor.java Tue Nov 8 11:53:27 2011
@@ -803,6 +803,18 @@ public final class AnnotationEditor exte
protected void doSetInput(IEditorInput input) throws CoreException {
IEditorInput oldInput = getEditorInput();
ICasDocument oldDocument = getDocument();
+
+ // Unregister the editor listeners on the old input
+ // TODO: Should we make methods to encapsulate the register/unregister code?
+ if (oldDocument != null) {
+ oldDocument.removeChangeListener(mAnnotationSynchronizer);
+ mAnnotationSynchronizer = null;
+
+ getCasDocumentProvider().getTypeSystemPreferenceStore(getEditorInput()).
+ removePropertyChangeListener(mAnnotationStyleListener);
+ mAnnotationStyleListener = null;
+ }
+
super.doSetInput(input);
if (CasEditorPlugin.getDefault().