- overviewSeq.drawPanel(mg,\r
- (int) (col * sampleCol),\r
- (int) (col * sampleCol),\r
- (int) (row * sampleRow),\r
- (int) (row * sampleRow) + 1,\r
- (int) (col * sampleCol),\r
- (int) (row * sampleRow), 0);\r
- mg.translate(0, 1);\r
-\r
- if (av.conservation != null)\r
+ sameRow ++;\r
+ continue;\r
+ }\r
+\r
+ hiddenRow = false;\r
+ if (av.hasHiddenRows)\r
+ {\r
+ seq = av.alignment.getHiddenSequences().getHiddenSequence(lastrow);\r
+ if (seq == null)\r
+ {\r
+ int index =\r
+ av.alignment.getHiddenSequences().findIndexWithoutHiddenSeqs(lastrow);\r
+\r
+ seq = av.alignment.getSequenceAt(index);\r
+ }\r
+ else\r
+ {\r
+ hiddenRow = true;\r
+ }\r
+ }\r
+ else\r
+ seq = av.alignment.getSequenceAt(lastrow);\r
+\r
+ for (col = 0; col < width; col++)\r
+ {\r
+ if ( (int) (col * sampleCol) == lastcol && (int) (row * sampleRow) == lastrow)\r
+ {\r
+ sameCol ++;\r
+ continue;\r
+ }\r
+\r
+ lastcol = (int) (col * sampleCol);\r
+\r
+ if (seq.getLength() > lastcol)\r
+ {\r
+ color = sr.getResidueBoxColour(\r
+ seq, lastcol);\r
+\r
+ if (av.showSequenceFeatures)\r
+ color = fr.findFeatureColour(color, seq, lastcol);\r
+ }\r
+ else\r
+ {\r
+ color = Color.white; //White\r
+ }\r
+\r
+ if (hiddenRow ||\r
+ (av.hasHiddenColumns && !av.getColumnSelection().isVisible(lastcol)))\r
+ {\r
+ color = color.darker().darker();\r
+ }\r
+\r
+ mg.setColor(color);\r
+ if (sameCol == 1 && sameRow == 1)\r
+ mg.drawLine(xstart, ystart, xstart, ystart);\r
+ else\r
+ mg.fillRect(xstart, ystart, sameCol, sameRow);\r
+\r
+ xstart = col;\r
+ sameCol = 1;\r
+ }\r
+ lastrow = (int)(row*sampleRow);\r
+ ystart = row;\r
+ sameRow = 1;\r
+ }\r
+\r
+ if (av.conservation != null)\r
+ {\r
+ for (col = 0; col < width; col++)\r
+ {\r
+ lastcol = (int) (col * sampleCol);\r
+ {\r
+ mg.translate(col, sequencesHeight);\r