X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fgui%2FIdCanvas.java;h=2df84a9eede25350b8220b742db40c4dc023d2bd;hb=ca160187a050f6d4e50158cd5b51f75c83a7179e;hp=eb0715afa67030053672afd42acf12d686cd4f05;hpb=eafbd1f2802db36625b54f9f2037e0df82afe2a5;p=jalview.git diff --git a/src/jalview/gui/IdCanvas.java b/src/jalview/gui/IdCanvas.java index eb0715a..2df84a9 100755 --- a/src/jalview/gui/IdCanvas.java +++ b/src/jalview/gui/IdCanvas.java @@ -199,7 +199,7 @@ public class IdCanvas extends JPanel implements ViewportListenerI gg.translate(0, transY); - drawIds(gg, av, ss, es, searchResults); + drawIds(gg, av, ss, es, searchResults, true, getWidth()); gg.translate(0, -transY); @@ -256,7 +256,7 @@ public class IdCanvas extends JPanel implements ViewportListenerI gg.fillRect(0, 0, getWidth(), imgHeight); drawIds(gg, av, av.getRanges().getStartSeq(), - av.getRanges().getEndSeq(), searchResults); + av.getRanges().getEndSeq(), searchResults,true, getWidth()); gg.dispose(); @@ -274,9 +274,12 @@ public class IdCanvas extends JPanel implements ViewportListenerI * @param startSeq * @param endSeq * @param selection + * @param forGUI when false rendering for print + * @param panelWidth width used to calculate righthand margin - usually idCanvas.getWidth() + * */ void drawIds(Graphics2D g, AlignViewport alignViewport, - final int startSeq, final int endSeq, List selection) + final int startSeq, final int endSeq, List selection, boolean forGUI, int panelWidth) { Font font = alignViewport.getFont(); if (alignViewport.isSeqNameItalics()) @@ -309,7 +312,6 @@ public class IdCanvas extends JPanel implements ViewportListenerI } // Now draw the id strings - int panelWidth = getWidth(); int xPos = 0; // Now draw the id strings @@ -383,11 +385,24 @@ public class IdCanvas extends JPanel implements ViewportListenerI void drawIdsWrapped(Graphics2D g, AlignViewport alignViewport, int startSeq, int pageHeight) { - drawIdsWrapped(g, alignViewport, startSeq, pageHeight, -1); + drawIdsWrapped(g, alignViewport, startSeq, pageHeight, -1, true); + } + + /** + * render sequence IDs and annotation labels when wrapped - without GUI junk + * @param g + * @param av2 + * @param i + * @param totalHeight + */ + public void drawIdsWrappedNoGUI(Graphics2D g, AlignViewport av2, int i, + int totalHeight) + { + drawIdsWrapped(g, av2, totalHeight, totalHeight, i,false); } void drawIdsWrapped(Graphics2D g, AlignViewport alignViewport, - int startSeq, int pageHeight, int idWidth) + int startSeq, int pageHeight, int idWidth, boolean forGUI) { int alignmentWidth = alignViewport.getAlignment().getWidth(); final int alheight = alignViewport.getAlignment().getHeight(); @@ -440,8 +455,8 @@ public class IdCanvas extends JPanel implements ViewportListenerI g.translate(0, ypos + (alheight * charHeight)); if (!manuallyAdjusted()) { - int getAnnotationsIdWidth = labels.drawLabels(g, false, -1, false, - null); + int getAnnotationsIdWidth = labels.drawLabels(g, false, -1, false,forGUI, + null, false); thisIdWidth = idWidth < 0 ? getAnnotationsIdWidth : idWidth; if (thisIdWidth > getWidth) { @@ -451,7 +466,7 @@ public class IdCanvas extends JPanel implements ViewportListenerI alignViewport.setIdWidth(thisIdWidth); } } - labels.drawComponent(g, false, thisIdWidth); + labels.drawComponent(g, false, thisIdWidth, forGUI); g.translate(0, -ypos - (alheight * charHeight)); } @@ -619,4 +634,5 @@ public class IdCanvas extends JPanel implements ViewportListenerI { manuallyAdjusted = b; } + }