From: Ben Soares Date: Mon, 7 Aug 2023 11:28:53 +0000 (+0100) Subject: JAL-244 Avoid working on the Ids Graphics object when we don't mean to X-Git-Tag: Release_2_11_4_0~216^2~3 X-Git-Url: http://source.jalview.org/gitweb/?a=commitdiff_plain;h=c20414631b8a5dc40df351562ddd94c70e13dbdb;p=jalview.git JAL-244 Avoid working on the Ids Graphics object when we don't mean to --- diff --git a/src/jalview/gui/AnnotationLabels.java b/src/jalview/gui/AnnotationLabels.java index 255e1ff..56efe53 100755 --- a/src/jalview/gui/AnnotationLabels.java +++ b/src/jalview/gui/AnnotationLabels.java @@ -1244,10 +1244,7 @@ public class AnnotationLabels extends JPanel } else { - Graphics2D g2d = (Graphics2D) g; - Graphics dummy = g2d.create(); - int newAnnotationIdWidth = drawLabels(dummy, clip, width, false, - null); + int newAnnotationIdWidth = drawLabels(g, clip, width, false, null); width = Math.max(newAnnotationIdWidth, givenWidth); } drawLabels(g, clip, width, true, null); @@ -1271,7 +1268,7 @@ public class AnnotationLabels extends JPanel * @param fmetrics * FontMetrics if Graphics object g is null */ - public int drawLabels(Graphics g, boolean clip, int width, + public int drawLabels(Graphics g0, boolean clip, int width, boolean actuallyDraw, FontMetrics fmetrics) { if (clip) @@ -1279,6 +1276,20 @@ public class AnnotationLabels extends JPanel clip = Cache.getDefault("MOVE_SEQUENCE_ID_WITH_VISIBLE_ANNOTATIONS", true); } + Graphics g = null; + // create a dummy Graphics object if not drawing and one is supplied + if (g0 != null) + { + if (!actuallyDraw) + { + Graphics2D g2d = (Graphics2D) g0; + g = g2d.create(); + } + else + { + g = g0; + } + } int actualWidth = 0; if (g != null) {