6 import java.util.Hashtable;
9 import jalview.datamodel.AlignmentAnnotation;
10 import jalview.datamodel.AlignmentI;
11 import jalview.datamodel.AnnotatedCollectionI;
12 import jalview.datamodel.ColumnSelection;
13 import jalview.datamodel.SequenceCollectionI;
14 import jalview.datamodel.SequenceI;
15 import jalview.schemes.ColourSchemeI;
16 import jalview.schemes.RNAHelicesColour;
22 public interface AlignViewportI
32 * calculate the height for visible annotation, revalidating bounds where
33 * necessary ABSTRACT GUI METHOD
35 * @return total height of annotation
37 public int calcPanelHeight();
39 boolean hasHiddenColumns();
41 boolean isValidCharWidth();
43 boolean isShowConsensusHistogram();
45 boolean isShowSequenceLogo();
47 boolean isNormaliseSequenceLogo();
49 ColourSchemeI getGlobalColourScheme();
51 AlignmentI getAlignment();
53 ColumnSelection getColumnSelection();
55 Hashtable[] getSequenceConsensusHash();
57 Hashtable[] getRnaStructureConsensusHash();
59 boolean getIgnoreGapsConsensus();
61 boolean getCentreColumnLabels();
63 boolean isCalculationInProgress(AlignmentAnnotation alignmentAnnotation);
65 AlignmentAnnotation getAlignmentQualityAnnot();
67 AlignmentAnnotation getAlignmentConservationAnnotation();
69 * get the container for alignment consensus annotation
72 AlignmentAnnotation getAlignmentConsensusAnnotation();
75 * Test to see if viewport is still open and active
76 * @return true indicates that all references to viewport should be dropped
80 * get the associated calculation thread manager for the view
83 AlignCalcManagerI getCalcManager();
86 * get the percentage gaps allowed in a conservation calculation
89 public int getConsPercGaps();
92 * set the consensus result object for the viewport
95 void setSequenceConsensusHash(Hashtable[] hconsensus);
99 * @return the alignment annotatino row for the structure consensus calculation
101 AlignmentAnnotation getAlignmentStrucConsensusAnnotation();
104 * set the Rna structure consensus result object for the viewport
105 * @param hStrucConsensus
107 void setRnaStructureConsensusHash(Hashtable[] hStrucConsensus);
110 * set global colourscheme
113 void setGlobalColourScheme(ColourSchemeI rhc);
115 Map<SequenceI, SequenceCollectionI> getHiddenRepSequences();
117 void setHiddenRepSequences(
118 Map<SequenceI, SequenceCollectionI> hiddenRepSequences);
121 * hides or shows dynamic annotation rows based on groups and group and alignment associated auto-annotation state flags
122 * apply the current group/autoannotation settings to the alignment view.
123 * Usually you should call the AlignmentViewPanel.adjustAnnotationHeight() method afterwards to ensure the annotation panel bounds are set correctly.
124 * @param applyGlobalSettings - apply to all autoannotation rows or just the ones associated with the current visible region
125 * @param preserveNewGroupSettings - don't apply global settings to groups which don't already have group associated annotation
127 void updateGroupAnnotationSettings(boolean applyGlobalSettings,
128 boolean preserveNewGroupSettings);