X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fgui%2FIdCanvas.java;h=4d10db02945a1d3fab89c62585de0e8a34ab4c7f;hb=8ecde76adb5ba58ed98ee23b94c75b69f7877bb1;hp=8e49e59f071e84ce784064ce0077be7c19be118f;hpb=56b3e093761bc8b409ffc66fae03d5be40edea89;p=jalview.git diff --git a/src/jalview/gui/IdCanvas.java b/src/jalview/gui/IdCanvas.java index 8e49e59..4d10db0 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,true); + 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,true); + 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, boolean forGUI) + final int startSeq, final int endSeq, List selection, boolean forGUI, int panelWidth) { Font font = alignViewport.getFont(); if (alignViewport.isSeqNameItalics()) @@ -304,12 +307,11 @@ public class IdCanvas extends JPanel implements ViewportListenerI if (alignViewport.getWrapAlignment()) { - drawIdsWrapped(g, alignViewport, startSeq, getHeight()); + drawIdsWrapped(g, alignViewport, startSeq, getHeight(), panelWidth,forGUI); return; } // Now draw the id strings - int panelWidth = getWidth(); int xPos = 0; // Now draw the id strings @@ -399,7 +401,7 @@ public class IdCanvas extends JPanel implements ViewportListenerI drawIdsWrapped(g, av2, totalHeight, totalHeight, i,false); } - void drawIdsWrapped(Graphics2D g, AlignViewport alignViewport, + public void drawIdsWrapped(Graphics2D g, AlignViewport alignViewport, int startSeq, int pageHeight, int idWidth, boolean forGUI) { int alignmentWidth = alignViewport.getAlignment().getWidth(); @@ -416,6 +418,8 @@ public class IdCanvas extends JPanel implements ViewportListenerI AnnotationLabels labels = null; if (alignViewport.isShowAnnotation()) { + // in wrapped mode, no alignPanel reference is available + // FIXME: make the renderer not create a new object in wrapped mode everytime! labels = new AnnotationLabels(alignViewport); }