X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fapi%2FAlignViewportI.java;h=32f9ecd1a0416162cb2d9d0aebc9ef77fc777da9;hb=0a5ce6145bb76fc7eb8a5cc2670e20453fbedd29;hp=c49ee392d7c336add9e9c1d3be9dc3b473e44ffb;hpb=be32c14cd8e48fe0a207cd7030cb9cd46f894678;p=jalview.git diff --git a/src/jalview/api/AlignViewportI.java b/src/jalview/api/AlignViewportI.java index c49ee39..32f9ecd 100644 --- a/src/jalview/api/AlignViewportI.java +++ b/src/jalview/api/AlignViewportI.java @@ -26,6 +26,7 @@ import jalview.datamodel.AlignmentI; import jalview.datamodel.AlignmentView; import jalview.datamodel.CigarArray; import jalview.datamodel.ColumnSelection; +import jalview.datamodel.Profile; import jalview.datamodel.SequenceCollectionI; import jalview.datamodel.SequenceGroup; import jalview.datamodel.SequenceI; @@ -43,12 +44,8 @@ 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 @@ -57,6 +54,18 @@ public interface AlignViewportI extends ViewStyleI */ 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(); @@ -73,7 +82,7 @@ public interface AlignViewportI extends ViewStyleI ColumnSelection getColumnSelection(); - Hashtable[] getSequenceConsensusHash(); + Profile[] getSequenceConsensusHash(); /** * Get consensus data table for the cDNA complement of this alignment (if any) @@ -114,6 +123,11 @@ public interface AlignViewportI extends ViewStyleI boolean isClosed(); /** + * Dispose of all references or resources held by the viewport + */ + void dispose(); + + /** * get the associated calculation thread manager for the view * * @return @@ -131,7 +145,7 @@ public interface AlignViewportI extends ViewStyleI * * @param hconsensus */ - void setSequenceConsensusHash(Hashtable[] hconsensus); + void setSequenceConsensusHash(Profile[] hconsensus); /** * Set the cDNA complement consensus for the viewport @@ -182,29 +196,6 @@ public interface AlignViewportI extends ViewStyleI */ 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); - - /** - * @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); @@ -262,11 +253,31 @@ public interface AlignViewportI extends ViewStyleI * 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); @@ -278,8 +289,11 @@ public interface AlignViewportI extends ViewStyleI /** * 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 getVisibleAlignmentAnnotation( boolean selectedOnly); @@ -288,35 +302,8 @@ public interface AlignViewportI extends ViewStyleI 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); @@ -413,4 +400,27 @@ public interface AlignViewportI extends ViewStyleI * @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(); }