3253-omnibus save
[jalview.git] / src / jalview / api / AlignViewControllerGuiI.java
index b08a0aa..6549d64 100644 (file)
  */
 package jalview.api;
 
-import java.util.List;
-
 import jalview.commands.CommandI;
 import jalview.schemes.ColourSchemeI;
 
+import java.awt.Rectangle;
+
 /**
  * Interface implemented by gui implementations managing a Jalview Alignment
  * View
@@ -45,12 +45,44 @@ public interface AlignViewControllerGuiI
   void addHistoryItem(CommandI command);
 
   void setShowSeqFeatures(boolean show);
-  
+
   void setMenusForViewport();
-  
+
   void changeColour(ColourSchemeI cs);
 
-  void hideColumns(List<int[]> colsToHide);
+  /**
+   * trigger an update of the UI in response to a model data change, and if
+   * necessary enable the display of sequence feature annotation on the view.
+   * 
+   * @param enableIfNecessary
+   */
+  void refreshFeatureUI(boolean enableIfNecessary);
+
+  /**
+   * get the Feature Settings control panel for the alignment view if one exists
+   * 
+   * @return
+   */
+  FeatureSettingsControllerI getFeatureSettingsUI();
+
+  /**
+   * displays the Feature Settigns control panel for the alignment view - if one
+   * exists it is closed and re-opened.
+   * 
+   * @return the current feature settings controller
+   */
+  FeatureSettingsControllerI showFeatureSettingsUI();
 
-  void syncHiddenSequences();
+  /**
+   * record the last position of a feature settings dialog before it was closed
+   * 
+   * @param bounds
+   */
+  void setFeatureSettingsGeometry(Rectangle bounds);
+
+  /**
+   * 
+   * @return last position of feature settings for this alignment view GUI
+   */
+  Rectangle getFeatureSettingsGeometry();
 }