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/10/14 12:57:11 UTC

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

Author: joern
Date: Fri Oct 14 10:57:11 2011
New Revision: 1183294

URL: http://svn.apache.org/viewvc?rev=1183294&view=rev
Log:
UIMA-2260 Annotation Editor now sends out a selection object which implements both, ITextSelection and IStructuredSelection.

Added:
    uima/uimaj/trunk/uimaj-ep-cas-editor/src/main/java/org/apache/uima/caseditor/editor/AnnotationEditorSelection.java   (with props)
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=1183294&r1=1183293&r2=1183294&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 Fri Oct 14 10:57:11 2011
@@ -69,6 +69,7 @@ import org.eclipse.jface.action.Separato
 import org.eclipse.jface.dialogs.MessageDialog;
 import org.eclipse.jface.preference.IPreferenceStore;
 import org.eclipse.jface.text.IPainter;
+import org.eclipse.jface.text.ITextSelection;
 import org.eclipse.jface.text.Position;
 import org.eclipse.jface.text.information.InformationPresenter;
 import org.eclipse.jface.text.source.Annotation;
@@ -84,6 +85,7 @@ import org.eclipse.jface.util.IPropertyC
 import org.eclipse.jface.util.PropertyChangeEvent;
 import org.eclipse.jface.viewers.ISelection;
 import org.eclipse.jface.viewers.ISelectionChangedListener;
+import org.eclipse.jface.viewers.IStructuredSelection;
 import org.eclipse.jface.viewers.SelectionChangedEvent;
 import org.eclipse.jface.viewers.StructuredSelection;
 import org.eclipse.swt.SWT;
@@ -717,7 +719,8 @@ public final class AnnotationEditor exte
     // can be detected
     getSourceViewer().getSelectionProvider().addSelectionChangedListener(new ISelectionChangedListener() {
       public void selectionChanged(SelectionChangedEvent event) {
-        refreshSelection();
+        mFeatureStructureSelectionProvider.setSelection(new AnnotationEditorSelection((ITextSelection) event.getSelection(), 
+                new StructuredSelection(ModelFeatureStructure.create(getDocument(), getSelectedAnnotations()))));
       }
     });
     

Added: uima/uimaj/trunk/uimaj-ep-cas-editor/src/main/java/org/apache/uima/caseditor/editor/AnnotationEditorSelection.java
URL: http://svn.apache.org/viewvc/uima/uimaj/trunk/uimaj-ep-cas-editor/src/main/java/org/apache/uima/caseditor/editor/AnnotationEditorSelection.java?rev=1183294&view=auto
==============================================================================
--- uima/uimaj/trunk/uimaj-ep-cas-editor/src/main/java/org/apache/uima/caseditor/editor/AnnotationEditorSelection.java (added)
+++ uima/uimaj/trunk/uimaj-ep-cas-editor/src/main/java/org/apache/uima/caseditor/editor/AnnotationEditorSelection.java Fri Oct 14 10:57:11 2011
@@ -0,0 +1,82 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+package org.apache.uima.caseditor.editor;
+
+import java.util.Iterator;
+import java.util.List;
+
+import org.eclipse.jface.text.ITextSelection;
+import org.eclipse.jface.viewers.IStructuredSelection;
+
+class AnnotationEditorSelection implements ITextSelection, IStructuredSelection {
+
+  private ITextSelection textSelection;
+  
+  private IStructuredSelection structuredSelection;
+  
+  AnnotationEditorSelection(ITextSelection textSelection, IStructuredSelection structuredSelection) {
+    this.textSelection = textSelection;
+    this.structuredSelection = structuredSelection;
+  }
+  
+  public int getOffset() {
+    return textSelection.getOffset();
+  }
+
+  public int getLength() {
+    return textSelection.getLength();
+  }
+
+  public int getStartLine() {
+    return textSelection.getStartLine();
+  }
+
+  public int getEndLine() {
+    return textSelection.getEndLine();
+  }
+
+  public String getText() {
+    return textSelection.getText();
+  }
+
+  public boolean isEmpty() {
+    return structuredSelection.isEmpty() && textSelection.isEmpty();
+  }
+
+  public Object getFirstElement() {
+    return structuredSelection.getFirstElement();
+  }
+
+  public Iterator iterator() {
+    return structuredSelection.iterator();
+  }
+
+  public int size() {
+    return structuredSelection.size();
+  }
+
+  public Object[] toArray() {
+    return structuredSelection.toArray();
+  }
+
+  public List toList() {
+    return structuredSelection.toList();
+  }
+}

Propchange: uima/uimaj/trunk/uimaj-ep-cas-editor/src/main/java/org/apache/uima/caseditor/editor/AnnotationEditorSelection.java
------------------------------------------------------------------------------
    svn:mime-type = text/plain