X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fgui%2FAlignmentPanel.java;h=b636fa7c362f6d8bd5497e4f71df7bcca86986b8;hb=da8e34c5aeee5e83aa844d374eb21e4c2e3cebef;hp=f72379453e551b21384870118062d0e9c827d830;hpb=f820a6e0b7ec599b0e040109c3361cdb3e6d9aa0;p=jalview.git diff --git a/src/jalview/gui/AlignmentPanel.java b/src/jalview/gui/AlignmentPanel.java index f723794..b636fa7 100644 --- a/src/jalview/gui/AlignmentPanel.java +++ b/src/jalview/gui/AlignmentPanel.java @@ -56,6 +56,7 @@ import java.awt.event.AdjustmentEvent; import java.awt.event.AdjustmentListener; import java.awt.event.ComponentAdapter; import java.awt.event.ComponentEvent; +import java.awt.image.BufferedImage; import java.awt.print.PageFormat; import java.awt.print.Printable; import java.awt.print.PrinterException; @@ -69,7 +70,14 @@ import java.util.List; import javax.swing.SwingUtilities; /** - * DOCUMENT ME! + * The main panel of an AlignFrame, containing holders for the IdPanel, + * SeqPanel, AnnotationLabels (a JPanel), and AnnotationPanel. + * + * Additional holders contain an IdPanelWidthAdjuster space above the idPanel, + * AnnotationScroller (JScrollPane for AnnotationPanel), and vertical and + * horizontal scrollbars. + * + * * * @author $author$ * @version $Revision: 1.161 $ @@ -136,7 +144,11 @@ public class AlignmentPanel extends GAlignmentPanel implements annotationScroller.setViewportView(getAnnotationPanel()); annotationSpaceFillerHolder.add(getAlabels(), BorderLayout.CENTER); - + if (!av.isShowAnnotation()) + { + annotationScroller.setVisible(false); + annotationSpaceFillerHolder.setVisible(false); + } scalePanelHolder.add(getScalePanel(), BorderLayout.CENTER); seqPanelHolder.add(getSeqPanel(), BorderLayout.CENTER); @@ -580,7 +592,7 @@ public class AlignmentPanel extends GAlignmentPanel implements */ public void updateLayout() { - fontChanged(); + fontChanged(); // fires repaint setAnnotationVisible(av.isShowAnnotation()); boolean wrap = av.getWrapAlignment(); ViewportRanges ranges = av.getRanges(); @@ -833,6 +845,7 @@ public class AlignmentPanel extends GAlignmentPanel implements if (overviewPanel != null) { + getAlignment().resetColors(); overviewPanel.updateOverviewImage(); } } @@ -847,6 +860,7 @@ public class AlignmentPanel extends GAlignmentPanel implements @Override public void paintComponent(Graphics g) { + invalidate(); // needed so that the id width adjuster works correctly Dimension d = getIdPanel().getIdCanvas().getPreferredSize(); @@ -1835,4 +1849,43 @@ public class AlignmentPanel extends GAlignmentPanel implements return true; } + @Override + public void overviewDone(BufferedImage miniMe) + { + overviewPanel.canvas.finalizeDraw(miniMe); + } + + + private boolean holdRepaint = false; + + public boolean getHoldRepaint() + { + return holdRepaint; + } + + public void setHoldRepaint(boolean b) + { + if (holdRepaint == b) + { + return; + } + holdRepaint = b; + if (!b) + { + repaint(); + } + } + + @Override + public void repaint() + { + if (holdRepaint) + { + // System.out.println("AP repaint holding"); + // Platform.stackTrace(); + return; + } + super.repaint(); + } + }