Color currentColor = null;\r
Color currentTextColor = null;\r
\r
- pg.setFont(new Font(av.getFont().getName(),\r
- Font.ITALIC,\r
- av.getFont().getSize()));\r
+ pg.setFont(idPanel.idCanvas.idfont);\r
+\r
+ SequenceI seq;\r
for (int i = startSeq; i < endSeq; i++)\r
{\r
+ seq = av.getAlignment().getSequenceAt(i);\r
if ( (av.getSelectionGroup() != null) &&\r
- av.getSelectionGroup().getSequences(false).contains(\r
- av.getAlignment().getSequenceAt(i)))\r
+ av.getSelectionGroup().getSequences(null).contains(seq))\r
{\r
currentColor = Color.gray;\r
currentTextColor = Color.black;\r
}\r
else\r
{\r
- currentColor = av.getAlignment().getSequenceAt(i).getColor();\r
+ currentColor = av.getSequenceColour(seq);\r
currentTextColor = Color.black;\r
}\r
\r
\r
pg.setColor(currentTextColor);\r
\r
- String string = av.getAlignment().getSequenceAt(i).getDisplayId\r
- ( av.getShowJVSuffix());\r
+ int xPos = 0;\r
+ if (av.rightAlignIds)\r
+ {\r
+ fm = pg.getFontMetrics();\r
+ xPos = idWidth - fm.stringWidth(\r
+ seq.getDisplayId(av.getShowJVSuffix())\r
+ ) - 4;\r
+ }\r
\r
- pg.drawString(string, 0,\r
+ pg.drawString(seq.getDisplayId( av.getShowJVSuffix()),\r
+ xPos,\r
( ( (i - startSeq) * av.charHeight) + av.getCharHeight()) -\r
(av.getCharHeight() / 5));\r
}\r
pg.setClip(0, pi * pheight, pwidth, pheight);\r
\r
int ypos = hgap;\r
- Font italic = new Font(av.getFont().getName(), Font.ITALIC,\r
- av.getFont().getSize());\r
- pg.setFont(italic);\r
+\r
+\r
\r
do\r
{\r
for (int i = 0; i < av.alignment.getHeight(); i++)\r
{\r
+ pg.setFont(idPanel.idCanvas.idfont);\r
SequenceI s = av.alignment.getSequenceAt(i);\r
String string = s.getDisplayId( av.getShowJVSuffix());\r
-\r
- pg.drawString(string, 0,\r
+ int xPos = 0;\r
+ if (av.rightAlignIds)\r
+ {\r
+ FontMetrics fm = pg.getFontMetrics();\r
+ xPos = idWidth - fm.stringWidth( string ) - 4;\r
+ }\r
+ pg.drawString(string, xPos,\r
( (i * av.charHeight) + ypos + av.charHeight) -\r
(av.charHeight / 5));\r
}\r
\r
pg.setFont(av.getFont());\r
labels.drawComponent(pg, idWidth);\r
- pg.setFont(italic);\r
pg.translate(+3,\r
-ypos -\r
(av.getAlignment().getHeight() * av.charHeight));\r
if (System.getProperty("java.awt.headless") != null\r
&& System.getProperty("java.awt.headless").equals("true"))\r
{\r
- width = alignFrame.getWidth() - 22;\r
+ width = alignFrame.getWidth()\r
+ - vscroll.getPreferredSize().width\r
+ - alignFrame.getInsets().left\r
+ - alignFrame.getInsets().right;\r
}\r
else\r
width = seqPanel.getWidth() + getVisibleIdWidth();\r
{\r
int seqPanelWidth = seqPanel.seqCanvas.getWidth();\r
\r
- //If headless, seqPanel will have 0 width\r
if (System.getProperty("java.awt.headless") != null\r
- && System.getProperty("java.awt.headless").equals("true"))\r
+ && System.getProperty("java.awt.headless").equals("true"))\r
{\r
- seqPanelWidth = alignFrame.getWidth() - getVisibleIdWidth();\r
+ seqPanelWidth = alignFrame.getWidth()\r
+ - getVisibleIdWidth()\r
+ - vscroll.getPreferredSize().width\r
+ - alignFrame.getInsets().left\r
+ - alignFrame.getInsets().right;\r
}\r
\r
int chunkWidth = seqPanel.seqCanvas.getWrappedCanvasWidth(\r