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
Must be 1.1 compliant
[jalview.git]
/
src
/
jalview
/
appletgui
/
SeqCanvas.java
diff --git
a/src/jalview/appletgui/SeqCanvas.java
b/src/jalview/appletgui/SeqCanvas.java
index
465dd38
..
0df4322
100755
(executable)
--- a/
src/jalview/appletgui/SeqCanvas.java
+++ b/
src/jalview/appletgui/SeqCanvas.java
@@
-37,12
+37,13
@@
public class SeqCanvas
\r
SearchResults searchResults = null;
\r
\r
\r
SearchResults searchResults = null;
\r
\r
- int chunkHeight;
\r
- int chunkWidth;
\r
-
\r
boolean fastPaint = false;
\r
\r
\r
boolean fastPaint = false;
\r
\r
\r
+ int cursorX = 0;
\r
+ int cursorY = 0;
\r
+
\r
+
\r
public SeqCanvas(AlignViewport av)
\r
{
\r
this.av = av;
\r
public SeqCanvas(AlignViewport av)
\r
{
\r
this.av = av;
\r
@@
-140,7
+141,7
@@
public class SeqCanvas
continue;
\r
}
\r
\r
continue;
\r
}
\r
\r
- value = av.alignment.getSequenceAt(i).findPosition(index);
\r
+ value = seq.findPosition(index);
\r
break;
\r
}
\r
if (value != -1)
\r
break;
\r
}
\r
if (value != -1)
\r
@@
-293,6
+294,8
@@
public class SeqCanvas
int LABEL_WEST, LABEL_EAST;
\r
public int getWrappedCanvasWidth(int cwidth)
\r
{
\r
int LABEL_WEST, LABEL_EAST;
\r
public int getWrappedCanvasWidth(int cwidth)
\r
{
\r
+ cwidth -= cwidth % av.charWidth;
\r
+
\r
FontMetrics fm = getFontMetrics(av.getFont());
\r
\r
LABEL_EAST = 0;
\r
FontMetrics fm = getFontMetrics(av.getFont());
\r
\r
LABEL_EAST = 0;
\r
@@
-333,15
+336,12
@@
public class SeqCanvas
\r
FontMetrics fm = getFontMetrics(av.getFont());
\r
\r
\r
FontMetrics fm = getFontMetrics(av.getFont());
\r
\r
- int LABEL_EAST = 0;
\r
\r
if (av.scaleRightWrapped)
\r
{
\r
LABEL_EAST = fm.stringWidth(getMask());
\r
}
\r
\r
\r
if (av.scaleRightWrapped)
\r
{
\r
LABEL_EAST = fm.stringWidth(getMask());
\r
}
\r
\r
- int LABEL_WEST = 0;
\r
-
\r
if (av.scaleLeftWrapped)
\r
{
\r
LABEL_WEST = fm.stringWidth(getMask());
\r
if (av.scaleLeftWrapped)
\r
{
\r
LABEL_WEST = fm.stringWidth(getMask());
\r
@@
-365,7
+365,7
@@
public class SeqCanvas
\r
while ((ypos <= canvasHeight) && (startRes < av.alignment.getWidth()))
\r
{
\r
\r
while ((ypos <= canvasHeight) && (startRes < av.alignment.getWidth()))
\r
{
\r
- endx = startRes + cWidth;
\r
+ endx = startRes + cWidth -1;
\r
\r
if (endx > al.getWidth())
\r
{
\r
\r
if (endx > al.getWidth())
\r
{
\r
@@
-406,7
+406,7
@@
public class SeqCanvas
if(annotations==null)
\r
annotations = new AnnotationPanel(av);
\r
\r
if(annotations==null)
\r
annotations = new AnnotationPanel(av);
\r
\r
- annotations.drawComponent( g, startRes, endx );
\r
+ annotations.drawComponent( g, startRes, endx+1 );
\r
g.translate(0, -cHeight - ypos-4);
\r
}
\r
g.translate(-LABEL_WEST, 0);
\r
g.translate(0, -cHeight - ypos-4);
\r
}
\r
g.translate(-LABEL_WEST, 0);
\r
@@
-468,6
+468,14
@@
public class SeqCanvas
av.charWidth, av.charHeight);
\r
}
\r
}
\r
av.charWidth, av.charHeight);
\r
}
\r
}
\r
+
\r
+ if (av.cursorMode && cursorY == i
\r
+ && cursorX >= startRes && cursorX <= endRes)
\r
+ {
\r
+ sr.drawCursor(nextSeq, cursorX, (cursorX - startRes) * av.charWidth,
\r
+ offset + ( (i - startSeq) * av.charHeight));
\r
+ }
\r
+
\r
}
\r
\r
//
\r
}
\r
\r
//
\r
@@
-487,7
+495,7
@@
public class SeqCanvas
groupIndex = 0;
\r
}
\r
\r
groupIndex = 0;
\r
}
\r
\r
- if ( group != null)
\r
+ if ( group != null )
\r
{
\r
do
\r
{
\r
{
\r
do
\r
{
\r
@@
-496,6
+504,7
@@
public class SeqCanvas
boolean inGroup = false;
\r
int top = -1;
\r
int bottom = -1;
\r
boolean inGroup = false;
\r
int top = -1;
\r
int bottom = -1;
\r
+ int alHeight = av.alignment.getHeight()-1;
\r
\r
for (i = startSeq; i < endSeq; i++)
\r
{
\r
\r
for (i = startSeq; i < endSeq; i++)
\r
{
\r
@@
-510,21
+519,21
@@
public class SeqCanvas
}
\r
\r
if ( (sx <= (endRes-startRes)*av.charWidth) &&
\r
}
\r
\r
if ( (sx <= (endRes-startRes)*av.charWidth) &&
\r
- group.sequences.contains(av.alignment.getSequenceAt(
\r
+ group.getSequences(false).contains(av.alignment.getSequenceAt(
\r
i)))
\r
{
\r
i)))
\r
{
\r
- if (bottom == -1)
\r
+ if ( (bottom == -1) &&
\r
+ (i >= alHeight ||
\r
+ !group.getSequences(false).contains(
\r
+ av.alignment.getSequenceAt(i + 1))))
\r
{
\r
{
\r
- if(i == endSeq-1 || // Dont check for i+1 if on the bottom row
\r
- !group.sequences.contains(av.alignment.getSequenceAt(i+1 )))
\r
-
\r
bottom = sy + av.charHeight;
\r
}
\r
\r
if (!inGroup)
\r
{
\r
if (((top == -1) && (i == 0)) ||
\r
bottom = sy + av.charHeight;
\r
}
\r
\r
if (!inGroup)
\r
{
\r
if (((top == -1) && (i == 0)) ||
\r
- !group.sequences.contains(
\r
+ !group.getSequences(false).contains(
\r
av.alignment.getSequenceAt(i - 1)))
\r
{
\r
top = sy;
\r
av.alignment.getSequenceAt(i - 1)))
\r
{
\r
top = sy;
\r