X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fappletgui%2FOverviewPanel.java;h=e2d986e6e5f8531263c2f72b7544db85bb9f3508;hb=34d5dfb25731d7d797177cadfce954258ae90991;hp=0e22af96a155017ea3c632e707fbe1cfcca2711d;hpb=571d15a897c11bdc2dda76ce03686604596f220d;p=jalview.git diff --git a/src/jalview/appletgui/OverviewPanel.java b/src/jalview/appletgui/OverviewPanel.java index 0e22af9..e2d986e 100755 --- a/src/jalview/appletgui/OverviewPanel.java +++ b/src/jalview/appletgui/OverviewPanel.java @@ -20,6 +20,7 @@ */ package jalview.appletgui; +import jalview.datamodel.SequenceI; import jalview.viewmodel.OverviewDimensions; import java.awt.Color; @@ -61,10 +62,10 @@ public class OverviewPanel extends Panel implements Runnable, private Frame nullFrame; - public OverviewPanel(AlignmentPanel ap) + public OverviewPanel(AlignmentPanel alPanel) { - this.av = ap.av; - this.ap = ap; + this.av = alPanel.av; + this.ap = alPanel; setLayout(null); nullFrame = new Frame(); nullFrame.addNotify(); @@ -75,7 +76,7 @@ public class OverviewPanel extends Panel implements Runnable, sr.forOverview = true; fr = new FeatureRenderer(av); - od = new OverviewDimensions(av); + od = new OverviewDimensions(av.getRanges(), av.isShowAnnotation()); setSize(new Dimension(od.getWidth(), od.getHeight())); addComponentListener(new ComponentAdapter() @@ -140,13 +141,15 @@ public class OverviewPanel extends Panel implements Runnable, private void mouseAction(MouseEvent evt) { - od.setBoxPositionByMouse(evt.getX(), evt.getY()); + od.updateViewportFromMouse(evt.getX(), evt.getY(), av.getAlignment() + .getHiddenSequences(), av.getColumnSelection(), av + .getRanges()); ap.setScrollValues(od.getScrollCol(), od.getScrollRow()); ap.paintAlignment(false); } /** - * DOCUMENT ME! + * Updates the overview image when the related alignment panel is updated */ public void updateOverviewImage() { @@ -163,10 +166,10 @@ public class OverviewPanel extends Panel implements Runnable, resizing = true; - if ((getWidth() > 0) && (getHeight() > 0)) + if ((getSize().width > 0) && (getSize().height > 0)) { - od.setWidth(getWidth()); // width = getWidth(); - od.setHeight(getHeight()); // sequencesHeight = getHeight() - graphHeight; + od.setWidth(getSize().width); + od.setHeight(getSize().height); } setSize(new Dimension(od.getWidth(), od.getHeight())); @@ -188,7 +191,7 @@ public class OverviewPanel extends Panel implements Runnable, if (getSize().width > 0 && getSize().height > 0) { od.setWidth(getSize().width); - od.setHeight(getSize().height - od.getGraphHeight()); + od.setHeight(getSize().height); } setSize(new Dimension(od.getWidth(), od.getHeight())); @@ -198,8 +201,6 @@ public class OverviewPanel extends Panel implements Runnable, Graphics mg = miniMe.getGraphics(); - // od.updateScales(); - int alwidth = av.getAlignment().getWidth(); int alheight = av.getAlignment().getAbsoluteHeight(); float sampleCol = alwidth / (float) od.getWidth(); @@ -207,7 +208,7 @@ public class OverviewPanel extends Panel implements Runnable, buildImage(sampleRow, sampleCol, mg); - if (av.getAlignmentConservationAnnotation() != null) + if (av.isShowAnnotation()) { for (int col = 0; col < od.getWidth() && !resizeAgain; col++) { @@ -233,6 +234,9 @@ public class OverviewPanel extends Panel implements Runnable, } } + /* + * Build the overview panel image + */ private void buildImage(float sampleRow, float sampleCol, Graphics mg) { int lastcol = 0; @@ -243,7 +247,7 @@ public class OverviewPanel extends Panel implements Runnable, int sameRow = 0; int sameCol = 0; - jalview.datamodel.SequenceI seq = null; + SequenceI seq = null; final boolean hasHiddenCols = av.hasHiddenColumns(); boolean hiddenRow = false; @@ -294,7 +298,6 @@ public class OverviewPanel extends Panel implements Runnable, sameRow = 1; } } - } /* @@ -316,7 +319,7 @@ public class OverviewPanel extends Panel implements Runnable, } else { - color = Color.white; // White + color = Color.white; } if (hiddenRow @@ -335,7 +338,8 @@ public class OverviewPanel extends Panel implements Runnable, */ public void setBoxPosition() { - od.setBoxPosition(); + od.setBoxPosition(av.getAlignment() + .getHiddenSequences(), av.getColumnSelection(), av.getRanges()); repaint(); }