X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fapi%2FAlignmentViewPanel.java;h=9593a5b7aa2019e0c9c32be3dac2900e0372def9;hb=a83adb45bdf9554e270921b4baad94defd314b36;hp=fcda0772683d173ccee03e93a49e97176b4acb0a;hpb=362f2db1b01f3562784864a1d6ac5f7b9be0a18a;p=jalview.git diff --git a/src/jalview/api/AlignmentViewPanel.java b/src/jalview/api/AlignmentViewPanel.java index fcda077..9593a5b 100644 --- a/src/jalview/api/AlignmentViewPanel.java +++ b/src/jalview/api/AlignmentViewPanel.java @@ -1,19 +1,73 @@ -/** +/* + * Jalview - A Sequence Alignment Editor and Viewer ($$Version-Rel$$) + * Copyright (C) $$Year-Rel$$ The Jalview Authors + * + * This file is part of Jalview. * + * Jalview is free software: you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation, either version 3 + * of the License, or (at your option) any later version. + * + * Jalview is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty + * of MERCHANTABILITY or FITNESS FOR A PARTICULAR + * PURPOSE. See the GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with Jalview. If not, see . + * The Jalview Authors are detailed in the 'AUTHORS' file. */ package jalview.api; import jalview.datamodel.AlignmentI; import jalview.structure.StructureSelectionManager; +import java.awt.image.BufferedImage; + /** * abstract interface implemented by alignment panels holding an alignment view + * * @author JimP - * + * */ -public interface AlignmentViewPanel +public interface AlignmentViewPanel extends OOMHandlerI { + AlignViewportI getAlignViewport(); + AlignmentI getAlignment(); + StructureSelectionManager getStructureSelectionManager(); + + /** + * repaint the alignment view after a datamodel update. + * + * @param updateOverview + * - if true, the overview panel will also be updated and repainted + * @param updateStructures + * - if true then any linked structure views will also be updated + */ + void paintAlignment(boolean updateOverview, boolean updateStructures); + + /** + * automatically adjust annotation panel height for new annotation whilst + * ensuring the alignment is still visible. + */ + void adjustAnnotationHeight(); + + FeatureRenderer getFeatureRenderer(); + + FeatureRenderer cloneFeatureRenderer(); + + /** + * + * @return displayed name for the view + */ + String getViewName(); + + SequenceRenderer getSequenceRenderer(); + + void overviewDone(BufferedImage miniMe); + }