Merge branch 'develop' into features/mchmmer
[jalview.git] / src / jalview / api / AlignViewportI.java
index 0239762..6b3cbe8 100644 (file)
 package jalview.api;
 
 import jalview.analysis.Conservation;
+import jalview.analysis.TreeModel;
 import jalview.datamodel.AlignmentAnnotation;
 import jalview.datamodel.AlignmentI;
 import jalview.datamodel.AlignmentView;
-import jalview.datamodel.CigarArray;
 import jalview.datamodel.ColumnSelection;
 import jalview.datamodel.ProfilesI;
 import jalview.datamodel.SearchResultsI;
@@ -54,7 +54,7 @@ public interface AlignViewportI extends ViewStyleI
    * 
    * @return
    */
-  public ViewportRanges getRanges();
+  ViewportRanges getRanges();
 
   /**
    * calculate the height for visible annotation, revalidating bounds where
@@ -62,7 +62,7 @@ public interface AlignViewportI extends ViewStyleI
    * 
    * @return total height of annotation
    */
-  public int calcPanelHeight();
+  int calcPanelHeight();
 
   /**
    * Answers true if the viewport has at least one column selected
@@ -86,6 +86,12 @@ public interface AlignViewportI extends ViewStyleI
 
   boolean isNormaliseSequenceLogo();
 
+  boolean isShowInformationHistogram();
+
+  boolean isShowHMMSequenceLogo();
+
+  boolean isNormaliseHMMSequenceLogo();
+
   ColourSchemeI getGlobalColourScheme();
 
   /**
@@ -100,7 +106,7 @@ public interface AlignViewportI extends ViewStyleI
 
   ColumnSelection getColumnSelection();
 
-  ProfilesI getSequenceConsensusHash();
+  ProfilesI getConsensusProfiles();
 
   /**
    * Get consensus data table for the cDNA complement of this alignment (if any)
@@ -113,6 +119,8 @@ public interface AlignViewportI extends ViewStyleI
 
   boolean isIgnoreGapsConsensus();
 
+  boolean isIgnoreBelowBackground();
+
   boolean isCalculationInProgress(AlignmentAnnotation alignmentAnnotation);
 
   AlignmentAnnotation getAlignmentQualityAnnot();
@@ -131,7 +139,7 @@ public interface AlignViewportI extends ViewStyleI
    * 
    * @return
    */
-  AlignmentAnnotation getAlignmentGapAnnotation();
+  AlignmentAnnotation getOccupancyAnnotation();
 
   /**
    * get the container for cDNA complement consensus annotation
@@ -170,7 +178,7 @@ public interface AlignViewportI extends ViewStyleI
    * 
    * @param hconsensus
    */
-  void setSequenceConsensusHash(ProfilesI hconsensus);
+  void setConsensusProfiles(ProfilesI hconsensus);
 
   /**
    * Set the cDNA complement consensus for the viewport
@@ -243,16 +251,6 @@ public interface AlignViewportI extends ViewStyleI
   void clearSequenceColours();
 
   /**
-   * This method returns the visible alignment as text, as seen on the GUI, ie
-   * if columns are hidden they will not be returned in the result. Use this for
-   * calculating trees, PCA, redundancy etc on views which contain hidden
-   * columns.
-   * 
-   * @return String[]
-   */
-  CigarArray getViewAsCigars(boolean selectedRegionOnly);
-
-  /**
    * return a compact representation of the current alignment selection to pass
    * to an analysis function
    * 
@@ -390,14 +388,14 @@ public interface AlignViewportI extends ViewStyleI
    * 
    * @return a copy of this view's current display settings
    */
-  public ViewStyleI getViewStyle();
+  ViewStyleI getViewStyle();
 
   /**
    * update the view's display settings with the given style set
    * 
    * @param settingsForView
    */
-  public void setViewStyle(ViewStyleI settingsForView);
+  void setViewStyle(ViewStyleI settingsForView);
 
   /**
    * Returns a viewport which holds the cDna for this (protein), or vice versa,
@@ -441,7 +439,7 @@ public interface AlignViewportI extends ViewStyleI
    */
   void setFollowHighlight(boolean b);
 
-  public void applyFeaturesStyle(FeatureSettingsModelI featureSettings);
+  void applyFeaturesStyle(FeatureSettingsModelI featureSettings);
 
   /**
    * check if current selection group is defined on the view, or is simply a
@@ -480,4 +478,38 @@ public interface AlignViewportI extends ViewStyleI
    *          when true, charWidth/height is set according to font metrics
    */
   void setFont(Font newFont, boolean b);
+
+  /**
+   * Answers true if split screen protein and cDNA use the same font
+   * 
+   * @return
+   */
+  @Override
+  boolean isProteinFontAsCdna();
+
+  /**
+   * Set the flag for whether split screen protein and cDNA use the same font
+   * 
+   * @return
+   */
+  @Override
+  void setProteinFontAsCdna(boolean b);
+
+  void setHmmProfiles(ProfilesI info);
+
+  ProfilesI getHmmProfiles();
+
+  /**
+   * Registers and starts a worker thread to calculate Information Content
+   * annotation, if it is not already registered
+   * 
+   * @param ap
+   */
+  void initInformationWorker(AlignmentViewPanel ap);
+
+  boolean isInfoLetterHeight();
+
+  abstract TreeModel getCurrentTree();
+
+  abstract void setCurrentTree(TreeModel tree);
 }