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 2010/05/18 16:53:18 UTC

svn commit: r945684 - in /uima/uimaj/trunk/uimaj-ep-cas-editor/src/main/java/org/apache/uima/caseditor/editor: AnnotationEditor.java action/DeleteFeatureStructureAction.java

Author: joern
Date: Tue May 18 14:53:18 2010
New Revision: 945684

URL: http://svn.apache.org/viewvc?rev=945684&view=rev
Log:
UIMA-1785: Actions are now disable/enabled depending on selection and not just always enabled

Modified:
    uima/uimaj/trunk/uimaj-ep-cas-editor/src/main/java/org/apache/uima/caseditor/editor/AnnotationEditor.java
    uima/uimaj/trunk/uimaj-ep-cas-editor/src/main/java/org/apache/uima/caseditor/editor/action/DeleteFeatureStructureAction.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=945684&r1=945683&r2=945684&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 May 18 14:53:18 2010
@@ -71,6 +71,8 @@ import org.eclipse.jface.text.source.IAn
 import org.eclipse.jface.text.source.ISourceViewer;
 import org.eclipse.jface.text.source.SourceViewer;
 import org.eclipse.jface.viewers.ISelection;
+import org.eclipse.jface.viewers.ISelectionChangedListener;
+import org.eclipse.jface.viewers.SelectionChangedEvent;
 import org.eclipse.jface.viewers.StructuredSelection;
 import org.eclipse.swt.SWT;
 import org.eclipse.swt.custom.StyleRange;
@@ -120,10 +122,21 @@ import org.eclipse.ui.views.contentoutli
  * add an action to decrease right side on an annotation
  */
 public final class AnnotationEditor extends StatusTextEditor implements ICasEditor, ISelectionListener {
+	
+  private abstract class AbstractAnnotateAction extends Action
+      implements ISelectionChangedListener {
+	
+    public void selectionChanged(SelectionChangedEvent event) {
+      setEnabled(AnnotationEditor.this.getSelection().y - 
+          AnnotationEditor.this.getSelection().x > 0);
+    }
+  }
+	
   /**
    * This action annotates the selected text with a defined tag.
    */
-  private class AnnotateAction extends Action {
+  private class AnnotateAction extends AbstractAnnotateAction {
+	  
     private StyledText mTextWidget;
 
     /**
@@ -169,7 +182,7 @@ public final class AnnotationEditor exte
     }
   }
 
-  private class SmartAnnotateAction extends Action {
+  private class SmartAnnotateAction extends AbstractAnnotateAction {
 
     @Override
     public void run() {
@@ -1082,6 +1095,8 @@ public final class AnnotationEditor exte
     annotateAction.setActionDefinitionId(annotateActionID);
     annotateAction.setText("Quick Annotate");
     annotateAction.setAccelerator(SWT.CR);
+    getSite().getSelectionProvider().addSelectionChangedListener(annotateAction);
+    
     setAction(annotateActionID, annotateAction);
     setActionActivationCode(annotateActionID, '\r', SWT.CR,
             SWT.NONE);
@@ -1090,6 +1105,7 @@ public final class AnnotationEditor exte
     smartAnnotateAction.setActionDefinitionId(ITextEditorActionDefinitionIds.SMART_ENTER);
     smartAnnotateAction.setText("Annotate");
     smartAnnotateAction.setAccelerator(SWT.SHIFT | SWT.CR);
+    getSite().getSelectionProvider().addSelectionChangedListener(smartAnnotateAction);
     setAction(ITextEditorActionDefinitionIds.SMART_ENTER, smartAnnotateAction);
 
     setActionActivationCode(ITextEditorActionDefinitionIds.SMART_ENTER, '\r', SWT.CR,

Modified: uima/uimaj/trunk/uimaj-ep-cas-editor/src/main/java/org/apache/uima/caseditor/editor/action/DeleteFeatureStructureAction.java
URL: http://svn.apache.org/viewvc/uima/uimaj/trunk/uimaj-ep-cas-editor/src/main/java/org/apache/uima/caseditor/editor/action/DeleteFeatureStructureAction.java?rev=945684&r1=945683&r2=945684&view=diff
==============================================================================
--- uima/uimaj/trunk/uimaj-ep-cas-editor/src/main/java/org/apache/uima/caseditor/editor/action/DeleteFeatureStructureAction.java (original)
+++ uima/uimaj/trunk/uimaj-ep-cas-editor/src/main/java/org/apache/uima/caseditor/editor/action/DeleteFeatureStructureAction.java Tue May 18 14:53:18 2010
@@ -41,7 +41,7 @@ public class DeleteFeatureStructureActio
 
     mDocument = document;
 
-    setEnabled(true);
+    setEnabled(false);
   }
 
   @Override