OwnedAnnotationEditor.java
01 /*
02  * Copyright (c) 1995-2012, The University of Sheffield. See the file
03  * COPYRIGHT.txt in the software or at http://gate.ac.uk/gate/COPYRIGHT.txt
04  
05  * This file is part of GATE (see http://gate.ac.uk/), and is free software,
06  * licenced under the GNU Library General Public License, Version 2, June 1991
07  * (in the distribution as file licence.html, and also available at
08  * http://gate.ac.uk/gate/licence.html).
09  
10  * Valentin Tablan, Sep 11, 2007
11  
12  * $Id: OwnedAnnotationEditor.java 17077 2013-11-12 16:13:30Z markagreenwood $
13  */
14 package gate.gui.annedit;
15 
16 import gate.creole.AnnotationVisualResource;
17 
18 import java.awt.ComponentOrientation;
19 
20 /**
21  * Interface for all annotation editor components
22  */
23 public interface OwnedAnnotationEditor extends AnnotationVisualResource {
24   /**
25    * Finds the best location for the editor dialog for a given span of text
26    */
27   public void placeDialog(int start, int end);
28 
29   /**
30    * Sets the owner (i.e. controller) for this editor.
31    
32    @param owner
33    */
34   public void setOwner(AnnotationEditorOwner owner);
35 
36   /**
37    @return owner The owner (i.e. controller) for this editor.
38    */
39   public AnnotationEditorOwner getOwner();
40 
41   /**
42    @param pinned
43    *          true if the window should not move when an annotation is selected.
44    */
45   public void setPinnedMode(boolean pinned);
46 
47   /**
48    * Enable or disable the editing GUI components.
49    
50    @param isEditingEnabled
51    *          true to enable the editing, false to disable it
52    */
53   public void setEditingEnabled(boolean isEditingEnabled);
54 
55   /**
56    * Changes the orientation of components
57    
58    @param orientation
59    */
60   public void changeOrientation(ComponentOrientation orientation);
61 }