\r
SearchResults searchResults = null;\r
\r
- int chunkHeight;\r
- int chunkWidth;\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
av.endRes = av.startRes + cWidth;\r
\r
\r
- int endx = (startRes + cWidth) - 1;\r
+ int endx;\r
int ypos = hgap;\r
\r
\r
while ((ypos <= canvasHeight) && (startRes < av.alignment.getWidth()))\r
{\r
+ endx = startRes + cWidth;\r
+\r
+ if (endx > al.getWidth())\r
+ {\r
+ endx = al.getWidth();\r
+ }\r
+\r
g.setColor(Color.black);\r
\r
if (av.scaleLeftWrapped)\r
drawNorthScale(g, startRes, endx, ypos);\r
}\r
\r
-\r
- if (av.vconsensus!=null && av.alignment.getWidth() >= av.vconsensus.size())\r
- {\r
- endx = av.vconsensus.size() - 2;\r
- }\r
-\r
-\r
if(g.getClip()==null)\r
g.setClip(0, 0, cWidth * av.charWidth, canvasHeight);\r
\r
if(annotations==null)\r
annotations = new AnnotationPanel(av);\r
\r
- annotations.drawComponent( g, startRes, endx + 1);\r
+ annotations.drawComponent( g, startRes, endx );\r
g.translate(0, -cHeight - ypos-4);\r
}\r
g.translate(-LABEL_WEST, 0);\r
\r
\r
startRes += cWidth;\r
- endx = (startRes + cWidth) - 1;\r
-\r
- if (endx > al.getWidth())\r
- {\r
- endx = al.getWidth();\r
- }\r
}\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