{
public static final String HTML_PREFIX = "<html><div style=\"width:350px;white-space:pre-wrap;padding:2px;overflow-wrap:break-word;\">";
+
/**
* wrap a bare html safe string to around 60 characters per line using a CSS
* style class specifying word-wrap and break-word
"Tootip text to format must not be null!");
ttext = ttext.trim();
boolean maxLengthExceeded = false;
-
- if (ttext.contains("<br>"))
+ boolean isHTML = ttext.startsWith("<html>");
+ if (isHTML)
+ {
+ ttext = ttext.substring(6);
+ }
+ if (ttext.endsWith("</html>"))
+ {
+ isHTML = true;
+ ttext = ttext.substring(0, ttext.length() - 7);
+ }
+ boolean hasBR = ttext.contains("<br>");
+ enclose |= isHTML || hasBR;
+ if (hasBR)
{
String[] htmllines = ttext.split("<br>");
for (String line : htmllines)
*/
package jalview.gui;
+import static org.junit.Assert.assertTrue;
import static org.testng.AssertJUnit.assertEquals;
-import static org.testng.AssertJUnit.assertFalse;
import javax.swing.JScrollBar;
JvSwingUtils.wrapTooltip(true, tip));
tip = "0123456789012345678901234567890123456789012345678901234567890"; // 61
- assertFalse(tip.equals(JvSwingUtils.wrapTooltip(false, tip)));
- assertFalse(("<html>" + tip + "</html>").equals(JvSwingUtils
+ assertTrue(tip.equals(JvSwingUtils.wrapTooltip(false, tip)));
+ assertTrue((JvSwingUtils.HTML_PREFIX + tip + "</div></html>")
+ .equals(JvSwingUtils
.wrapTooltip(true, tip)));
+
+// was:
+//
+// assertFalse(tip.equals(JvSwingUtils.wrapTooltip(false, tip)));
+// assertFalse(("<html>" + tip + "</html>").equals(JvSwingUtils
+// .wrapTooltip(true, tip)));
+
}
/**
public void testWrapTooltip_multilineShortText()
{
String tip = "Now is the winter of our discontent<br>Made glorious summer by this sun of York";
- assertEquals(tip, JvSwingUtils.wrapTooltip(false, tip));
+
+ // System.out.println(
+ // JvSwingUtils.wrapTooltip(false, "<html>" + tip + "</html>"));
+ // System.out.println(JvSwingUtils.wrapTooltip(true, tip));
+
+ assertEquals("<html>" + tip + "</html>",
+ JvSwingUtils.wrapTooltip(false, "<html>" + tip + "</html>"));
assertEquals("<html>" + tip + "</html>",
JvSwingUtils.wrapTooltip(true, tip));
+
+// was:
+//
+// assertEquals(tip, JvSwingUtils.wrapTooltip(false, tip));
+// assertEquals("<html>" + tip + "</html>",
+// JvSwingUtils.wrapTooltip(true, tip));
+//
+
}
/**
public void testWrapTooltip_longText()
{
String tip = "Now is the winter of our discontent made glorious summer by this sun of York";
- String expected = JvSwingUtils.HTML_PREFIX + tip + " </div></html>";
+ String expected = JvSwingUtils.HTML_PREFIX + tip + "</div></html>";
assertEquals(expected,
JvSwingUtils.wrapTooltip(true, tip));
- assertEquals(expected, JvSwingUtils.wrapTooltip(false, tip));
+ assertEquals(tip, JvSwingUtils.wrapTooltip(false, tip));
}
}