X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fgui%2FSeqPanel.java;fp=src%2Fjalview%2Fgui%2FSeqPanel.java;h=08c74e8ac761a79cc912e438bc20eec5eb05e957;hb=c9b03515daddb7666215ef3d0f19026aa601534b;hp=1176df5583060aca696178a2dbdf6e45b0ac6f39;hpb=fe89eb16394e69db5448f386de6402850286418b;p=jalview.git diff --git a/src/jalview/gui/SeqPanel.java b/src/jalview/gui/SeqPanel.java index 1176df5..08c74e8 100644 --- a/src/jalview/gui/SeqPanel.java +++ b/src/jalview/gui/SeqPanel.java @@ -255,6 +255,11 @@ public class SeqPanel extends JPanel int wrappedBlock = -1; + MousePos findMousePosition(MouseEvent evt) + { + return findMousePosition(evt, false); + } + /** * Computes the column and sequence row (and possibly annotation row when in * wrapped mode) for the given mouse position @@ -262,15 +267,22 @@ public class SeqPanel extends JPanel * @param evt * @return */ - MousePos findMousePosition(MouseEvent evt) + MousePos findMousePosition(MouseEvent evt, boolean debug) { - int col = findColumn(evt); + int col = findColumn(evt, debug); int seqIndex = -1; int annIndex = -1; int y = evt.getY(); int charHeight = av.getCharHeight(); int alignmentHeight = av.getAlignment().getHeight(); + if (debug) + { + System.out.println(String.format( + "charHeight %d alHeight %d canvasWidth %d canvasHeight %d", + charHeight, alignmentHeight, seqCanvas.getWidth(), + seqCanvas.getHeight())); + } if (av.getWrapAlignment()) { seqCanvas.calculateWrappedGeometry(seqCanvas.getWidth(), @@ -331,6 +343,11 @@ public class SeqPanel extends JPanel */ int findColumn(MouseEvent evt) { + return findColumn(evt, true); + } + + int findColumn(MouseEvent evt, boolean debug) + { int res = 0; int x = evt.getX(); @@ -351,6 +368,12 @@ public class SeqPanel extends JPanel int y = evt.getY(); y = Math.max(0, y - hgap); x -= seqCanvas.getLabelWidthWest(); + if (debug) + { + System.out.println( + String.format("findColumn: x %d labelWest %d charWidth %d ", + x, seqCanvas.getLabelWidthWest(), charWidth)); + } if (x < 0) { // mouse is over left scale @@ -364,6 +387,10 @@ public class SeqPanel extends JPanel } if (x >= cwidth * charWidth) { + if (debug) + { + System.out.println("findColumn: cwidth = " + cwidth); + } // mouse is over right scale return -1; }