X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fapi%2FAlignViewportI.java;h=fa0a3b05543a3f636680b5e4286cce9dd11282f8;hb=dd78fb858ae1d6b7704ddb29617029f429f07e9b;hp=8b0734035cef58585f485ec3870fe0fb2d868f34;hpb=84724ad7b25f65eb6009f70d9b4cb89fc6796622;p=jalview.git diff --git a/src/jalview/api/AlignViewportI.java b/src/jalview/api/AlignViewportI.java index 8b07340..fa0a3b0 100644 --- a/src/jalview/api/AlignViewportI.java +++ b/src/jalview/api/AlignViewportI.java @@ -20,11 +20,12 @@ */ package jalview.api; +import jalview.analysis.AnnotationSorter.SequenceAnnotationOrder; 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; @@ -36,6 +37,7 @@ import jalview.schemes.ColourSchemeI; import jalview.viewmodel.ViewportRanges; import java.awt.Color; +import java.awt.Font; import java.util.Hashtable; import java.util.List; import java.util.Map; @@ -242,16 +244,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 * @@ -470,4 +462,84 @@ public interface AlignViewportI extends ViewStyleI * @return search results or null */ SearchResultsI getSearchResults(); + + /** + * Updates view settings with the given font. You may need to call + * AlignmentPanel.fontChanged to update the layout geometry. + * + * @param setGrid + * 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); + + public abstract TreeModel getCurrentTree(); + + public abstract void setCurrentTree(TreeModel tree); + + /** + * @param update + * - set the flag for updating structures on next repaint + */ + void setUpdateStructures(boolean update); + + /** + * + * @return true if structure views will be updated on next refresh + */ + boolean isUpdateStructures(); + + /** + * check if structure views need to be updated, and clear the flag afterwards. + * + * @return if an update is needed + */ + boolean needToUpdateStructureViews(); + + /** + * Adds sequencegroup to the alignment in the view. Also adds a group to the + * complement view if one is defined. + * + * @param sequenceGroup + * - a group defined on sequences in the alignment held by the view + */ + void addSequenceGroup(SequenceGroup sequenceGroup); + + /** + * Returns true if autocalculated annotations are shown above other + * annotations, false if below + * + * @return + */ + boolean isShowAutocalculatedAbove(); + + /** + * Sets the flag for whether autocalculated annotations are shown above (true) + * or below (false) other annotations + * + * @param showAutocalculatedAbove + */ + void setShowAutocalculatedAbove(boolean showAutocalculatedAbove); + + /** + * Sets the sort order to apply to annotations + * + * @param sortAnnotationsBy + */ + void setSortAnnotationsBy(SequenceAnnotationOrder sortAnnotationsBy); }