From: Ben Soares Date: Tue, 2 Apr 2024 19:27:50 +0000 (+0100) Subject: JAL-4380 Improved annotation tooltips especially secondary structure tooltips X-Git-Url: http://source.jalview.org/gitweb/?a=commitdiff_plain;h=2cb06b103be32e40c74a0510789ea073adc73ca3;hp=-c;p=jalview.git JAL-4380 Improved annotation tooltips especially secondary structure tooltips --- 2cb06b103be32e40c74a0510789ea073adc73ca3 diff --git a/src/jalview/gui/AnnotationPanel.java b/src/jalview/gui/AnnotationPanel.java index c97ee53..0f6173b 100755 --- a/src/jalview/gui/AnnotationPanel.java +++ b/src/jalview/gui/AnnotationPanel.java @@ -1334,32 +1334,37 @@ public class AnnotationPanel extends JPanel implements AwtRenderPanelI, .highlightPositionsOn(ann.sequenceRef, highlightPos, null); } } - return tooltip; + return tooltip == null || tooltip.length() == 0 ? null : tooltip; } private static String getAnnotationBriefSummary(Annotation a) { - String tt = a.description; - if (tt == null || tt.trim().length() == 0) + StringBuilder ttSB = new StringBuilder(); + if (a.secondaryStructure != 0 && a.secondaryStructure != ' ') { - tt = String.valueOf(a.displayCharacter); + ttSB.append(a.secondaryStructure); } - if ((tt == null || tt.length() == 0) && !Float.isNaN(a.value)) + else if (a.description != null && a.description.trim().length() > 0) + { + ttSB.append(a.description); + } + else if (a.displayCharacter != null + && a.displayCharacter.trim().length() > 0) + { + ttSB.append(a.displayCharacter); + } + else if (!Float.isNaN(a.value)) { if (a.value == Math.floor(a.value)) // likely integer value { - tt = String.format("%.0f", a.value); + ttSB.append(String.format("%.0f", a.value)); } else // display as is { - tt = String.valueOf(a.value); + ttSB.append(String.valueOf(a.value)); } } - if (tt == null || tt.trim().length() == 0) - { - tt = String.valueOf(a.secondaryStructure); - } - return tt; + return ttSB.toString(); } /**