import jalview.datamodel.SequenceI;
import jalview.schemes.ColourSchemeI;
-import java.awt.Color;
import java.util.Hashtable;
import java.util.List;
import java.util.Map;
public interface AlignViewportI extends ViewStyleI
{
- int getCharWidth();
-
int getEndRes();
- int getCharHeight();
-
/**
* calculate the height for visible annotation, revalidating bounds where
* necessary ABSTRACT GUI METHOD
*/
public int calcPanelHeight();
+ /**
+ * Answers true if the viewport has at least one column selected
+ *
+ * @return
+ */
+ boolean hasSelectedColumns();
+
+ /**
+ * Answers true if the viewport has at least one hidden column
+ *
+ * @return
+ */
boolean hasHiddenColumns();
boolean isValidCharWidth();
*/
void updateGroupAnnotationSettings(boolean applyGlobalSettings,
boolean preserveNewGroupSettings);
-
- /**
- * @return true if a reference sequence is set and should be displayed
- */
- public boolean isDisplayReferenceSeq();
- /**
- * @return set the flag for displaying reference sequences when they are
- * available
- */
- public void setDisplayReferenceSeq(boolean displayReferenceSeq);
+ void setSequenceColour(SequenceI seq, ColorI col);
- /**
- * @return true if colourschemes should render according to reference sequence
- * rather than consensus if available
- */
- public boolean isColourByReferenceSeq();
-
- /**
- * @return true set flag for deciding if colourschemes should render according
- * to reference sequence rather than consensus if available
- */
- public void setColourByReferenceSeq(boolean colourByReferenceSeq);
-
- void setSequenceColour(SequenceI seq, Color col);
-
- Color getSequenceColour(SequenceI seq);
+ ColorI getSequenceColour(SequenceI seq);
void updateSequenceIdColours();
* 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. This method doesn't exclude hidden sequences from the output.
+ *
+ * @param selectedRegionOnly
+ * - determines if only the selected region or entire alignment is
+ * exported
+ * @return String[]
+ */
+ String[] getViewAsString(boolean selectedRegionOnly);
+
+ /**
+ * 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.
*
+ * @param selectedRegionOnly
+ * - determines if only the selected region or entire alignment is
+ * exported
+ * @param isExportHiddenSeqs
+ * - determines if hidden sequences would be exported or not.
+ *
* @return String[]
*/
- String[] getViewAsString(boolean selectedRegionOnly);
+ String[] getViewAsString(boolean selectedRegionOnly, boolean isExportHiddenSeqs);
void setSelectionGroup(SequenceGroup sg);
/**
* get a copy of the currently visible alignment annotation
- * @param selectedOnly if true - trim to selected regions on the alignment
- * @return an empty list or new alignment annotation objects shown only visible columns trimmed to selected region only
+ *
+ * @param selectedOnly
+ * if true - trim to selected regions on the alignment
+ * @return an empty list or new alignment annotation objects shown only
+ * visible columns trimmed to selected region only
*/
List<AlignmentAnnotation> getVisibleAlignmentAnnotation(
boolean selectedOnly);
String getSequenceSetId();
- boolean isShowSequenceFeatures();
-
- void setShowSequenceFeatures(boolean b);
-
- /**
- *
- * @param flag
- * indicating if annotation panel shown below alignment
- *
- */
- void setShowAnnotation(boolean b);
-
- /**
- * flag indicating if annotation panel shown below alignment
- *
- * @return
- */
- boolean isShowAnnotation();
-
- boolean isRightAlignIds();
-
- void setRightAlignIds(boolean rightAlignIds);
-
boolean areFeaturesDisplayed();
- void setShowSequenceFeaturesHeight(boolean selected);
-
- boolean isShowSequenceFeaturesHeight();
-
void setFeaturesDisplayed(FeaturesDisplayedI featuresDisplayedI);
void alignmentChanged(AlignmentViewPanel ap);
* @return
*/
String getViewId();
+
+ /**
+ * Return true if view should scroll to show the highlighted region of a
+ * sequence
+ *
+ * @return
+ */
+ boolean isFollowHighlight();
+
+ /**
+ * Set whether view should scroll to show the highlighted region of a sequence
+ */
+ void setFollowHighlight(boolean b);
+
+
+ public void applyFeaturesStyle(FeatureSettingsModelI featureSettings);
+
+ /**
+ * check if current selection group is defined on the view, or is simply a
+ * temporary group.
+ *
+ * @return true if group is defined on the alignment
+ */
+ boolean isSelectionDefinedGroup();
}