git://source.jalview.org
/
jalview.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
JAL-3253-applet JAL-3423 Windows TestNG
[jalview.git]
/
src
/
jalview
/
viewmodel
/
OverviewDimensionsShowHidden.java
diff --git
a/src/jalview/viewmodel/OverviewDimensionsShowHidden.java
b/src/jalview/viewmodel/OverviewDimensionsShowHidden.java
index
eaa3413
..
0752097
100644
(file)
--- a/
src/jalview/viewmodel/OverviewDimensionsShowHidden.java
+++ b/
src/jalview/viewmodel/OverviewDimensionsShowHidden.java
@@
-28,6
+28,8
@@
import jalview.datamodel.AllRowsCollection;
import jalview.datamodel.HiddenColumns;
import jalview.datamodel.HiddenSequences;
import jalview.datamodel.HiddenColumns;
import jalview.datamodel.HiddenSequences;
+import java.awt.Dimension;
+
public class OverviewDimensionsShowHidden extends OverviewDimensions
{
private ViewportRanges ranges;
public class OverviewDimensionsShowHidden extends OverviewDimensions
{
private ViewportRanges ranges;
@@
-38,6
+40,12
@@
public class OverviewDimensionsShowHidden extends OverviewDimensions
private int ydiff; // when dragging, difference in alignment units between
// start sequence and original mouse click position
private int ydiff; // when dragging, difference in alignment units between
// start sequence and original mouse click position
+ public OverviewDimensionsShowHidden(ViewportRanges vpranges,
+ boolean showAnnotationPanel)
+ {
+ this(vpranges, showAnnotationPanel, null);
+ }
+
/**
* Create an OverviewDimensions object
*
/**
* Create an OverviewDimensions object
*
@@
-47,9
+55,9
@@
public class OverviewDimensionsShowHidden extends OverviewDimensions
* true if the annotation panel is to be shown, false otherwise
*/
public OverviewDimensionsShowHidden(ViewportRanges vpranges,
* true if the annotation panel is to be shown, false otherwise
*/
public OverviewDimensionsShowHidden(ViewportRanges vpranges,
- boolean showAnnotationPanel)
+ boolean showAnnotationPanel, Dimension dim)
{
{
- super(vpranges, showAnnotationPanel);
+ super(vpranges, showAnnotationPanel, dim);
ranges = vpranges;
resetAlignmentDims();
}
ranges = vpranges;
resetAlignmentDims();
}
@@
-80,7
+88,7
@@
public class OverviewDimensionsShowHidden extends OverviewDimensions
int yAsSeq = getTopYFromCentreY(mousey, hiddenSeqs);
// convert to visible positions
int yAsSeq = getTopYFromCentreY(mousey, hiddenSeqs);
// convert to visible positions
- int visXAsRes = hiddenCols.findColumnPosition(xAsRes);
+ int visXAsRes = hiddenCols.absoluteToVisibleColumn(xAsRes);
yAsSeq = hiddenSeqs.adjustForHiddenSeqs(
hiddenSeqs.findIndexWithoutHiddenSeqs(yAsSeq));
yAsSeq = Math.max(yAsSeq, 0); // -1 if before first visible sequence
yAsSeq = hiddenSeqs.adjustForHiddenSeqs(
hiddenSeqs.findIndexWithoutHiddenSeqs(yAsSeq));
yAsSeq = Math.max(yAsSeq, 0); // -1 if before first visible sequence
@@
-101,8
+109,8
@@
public class OverviewDimensionsShowHidden extends OverviewDimensions
// get mouse location in viewport coords, add translation in viewport
// coords,
// convert back to pixel coords
// get mouse location in viewport coords, add translation in viewport
// coords,
// convert back to pixel coords
- int vpx = Math.round(mousex * widthRatio);
- int visXAsRes = hiddenCols.findColumnPosition(vpx) + xdiff;
+ int vpx = Math.round((float) mousex * alwidth / width);
+ int visXAsRes = hiddenCols.absoluteToVisibleColumn(vpx) + xdiff;
int vpy = Math.round(mousey * heightRatio);
int visYAsRes = hiddenSeqs.findIndexWithoutHiddenSeqs(vpy) + ydiff;
int vpy = Math.round(mousey * heightRatio);
int visYAsRes = hiddenSeqs.findIndexWithoutHiddenSeqs(vpy) + ydiff;
@@
-143,7
+151,7
@@
public class OverviewDimensionsShowHidden extends OverviewDimensions
int vpwidth = ranges.getViewportWidth();
// check in case we went off the edge of the alignment
int vpwidth = ranges.getViewportWidth();
// check in case we went off the edge of the alignment
- int visAlignWidth = hiddenCols.findColumnPosition(alwidth - 1);
+ int visAlignWidth = hiddenCols.absoluteToVisibleColumn(alwidth - 1);
if (visXAsRes + vpwidth - 1 > visAlignWidth)
{
// went past the end of the alignment, adjust backwards
if (visXAsRes + vpwidth - 1 > visAlignWidth)
{
// went past the end of the alignment, adjust backwards
@@
-151,8
+159,8
@@
public class OverviewDimensionsShowHidden extends OverviewDimensions
// if last position was before the end of the alignment, need to update
if (ranges.getEndRes() < visAlignWidth)
{
// if last position was before the end of the alignment, need to update
if (ranges.getEndRes() < visAlignWidth)
{
- visXAsRes = hiddenCols.findColumnPosition(hiddenCols
- .subtractVisibleColumns(vpwidth - 1, alwidth - 1));
+ visXAsRes = hiddenCols.absoluteToVisibleColumn(hiddenCols
+ .offsetByVisibleColumns(-(vpwidth - 1), alwidth - 1));
}
else
{
}
else
{
@@
-202,8
+210,8
@@
public class OverviewDimensionsShowHidden extends OverviewDimensions
HiddenColumns hiddenCols)
{
// work with absolute values of startRes and endRes
HiddenColumns hiddenCols)
{
// work with absolute values of startRes and endRes
- int startRes = hiddenCols.adjustForHiddenColumns(ranges.getStartRes());
- int endRes = hiddenCols.adjustForHiddenColumns(ranges.getEndRes());
+ int startRes = hiddenCols.visibleToAbsoluteColumn(ranges.getStartRes());
+ int endRes = hiddenCols.visibleToAbsoluteColumn(ranges.getEndRes());
// work with absolute values of startSeq and endSeq
int startSeq = hiddenSeqs.adjustForHiddenSeqs(ranges.getStartSeq());
// work with absolute values of startSeq and endSeq
int startSeq = hiddenSeqs.adjustForHiddenSeqs(ranges.getStartSeq());
@@
-245,8
+253,8
@@
public class OverviewDimensionsShowHidden extends OverviewDimensions
@Override
protected int getLeftXFromCentreX(int mousex, HiddenColumns hidden)
{
@Override
protected int getLeftXFromCentreX(int mousex, HiddenColumns hidden)
{
- int vpx = Math.round(mousex * widthRatio);
- return hidden.subtractVisibleColumns(ranges.getViewportWidth() / 2,
+ int vpx = Math.round((float) mousex * alwidth / width);
+ return hidden.offsetByVisibleColumns(-ranges.getViewportWidth() / 2,
vpx);
}
vpx);
}
@@
-272,7
+280,7
@@
public class OverviewDimensionsShowHidden extends OverviewDimensions
int vpx = Math.round(x * widthRatio);
int vpy = Math.round(y * heightRatio);
int vpx = Math.round(x * widthRatio);
int vpy = Math.round(y * heightRatio);
- xdiff = ranges.getStartRes() - hiddenCols.findColumnPosition(vpx);
+ xdiff = ranges.getStartRes() - hiddenCols.absoluteToVisibleColumn(vpx);
ydiff = ranges.getStartSeq()
- hiddenSeqs.findIndexWithoutHiddenSeqs(vpy);
}
ydiff = ranges.getStartSeq()
- hiddenSeqs.findIndexWithoutHiddenSeqs(vpy);
}