JAl-3187 JAL-3535 JAL-3534 update open feature settings when a different view is...
[jalview.git] / src / jalview / api / SplitContainerI.java
index 6a67be6..6b037f5 100644 (file)
@@ -1,6 +1,6 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.9.0b2)
- * Copyright (C) 2015 The Jalview Authors
+ * Jalview - A Sequence Alignment Editor and Viewer ($$Version-Rel$$)
+ * Copyright (C) $$Year-Rel$$ The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
@@ -20,6 +20,7 @@
  */
 package jalview.api;
 
+import jalview.controller.FeatureSettingsControllerGuiI;
 import jalview.datamodel.AlignmentI;
 
 /**
@@ -55,4 +56,41 @@ public interface SplitContainerI
    */
   String getComplementTitle(Object af);
 
+  /**
+   * get the 'other' alignFrame in the SplitFrame
+   * 
+   * @param alignFrame
+   * @return the complement alignFrame - or null if alignFrame wasn't held by this
+   *         frame
+   */
+  AlignViewControllerGuiI getComplementAlignFrame(
+          AlignViewControllerGuiI alignFrame);
+
+  /**
+   * add the given UI to the splitframe's feature settings UI holder
+   * 
+   * @param featureSettings
+   * @return
+   */
+  void addFeatureSettingsUI(
+          FeatureSettingsControllerGuiI featureSettings);
+
+  /**
+   * Request to close all feature settings originating from a particular panel.
+   * 
+   * @param featureSettings
+   * @param closeContainingFrame
+   *                               - if false then the tab containing the feature
+   *                               settings will be 'reset' ready for a new
+   *                               feature settings
+   */
+  void closeFeatureSettings(FeatureSettingsControllerI featureSettings,
+          boolean closeContainingFrame);
+
+  /**
+   * 
+   * @return true if a feature settings panel is currently open
+   */
+  boolean isFeatureSettingsOpen();
+
 }