/** * Overridden to display the tool tip of any icons on this line. * * @param e The location the mouse is hovering over. */ @Override public String getToolTipText(MouseEvent e) { try { int line = viewToModelLine(e.getPoint()); if (line>-1) { GutterIconInfo[] infos = getTrackingIcons(line); if (infos.length>0) { // TODO: Display all messages? return infos[infos.length-1].getToolTip(); } } } catch (BadLocationException ble) { ble.printStackTrace(); // Never happens } return null; }
@Test public void testAddLineTrackingIcon_3Arg_Valid() throws Exception { RTextArea textArea = new RTextArea(PLAIN_TEXT); Gutter gutter = new Gutter(textArea); Icon icon = new TestIcon(); String tip = "tip text"; GutterIconInfo gii = gutter.addLineTrackingIcon(1, icon, tip); int line1Start = textArea.getText().indexOf('\n') + 1; Assert.assertTrue(gii.getIcon() == icon); Assert.assertEquals(line1Start, gii.getMarkedOffset()); Assert.assertEquals(tip, gii.getToolTip()); textArea.insert("a", 0); line1Start = textArea.getText().indexOf('\n') + 1; // Should have advanced 1 Assert.assertEquals(line1Start, gii.getMarkedOffset()); }
@Test public void testAddLineTrackingIcon_2Arg_Valid() throws Exception { RTextArea textArea = new RTextArea(PLAIN_TEXT); Gutter gutter = new Gutter(textArea); Icon icon = new TestIcon(); GutterIconInfo gii = gutter.addLineTrackingIcon(1, icon); int line1Start = textArea.getText().indexOf('\n') + 1; Assert.assertTrue(gii.getIcon() == icon); Assert.assertEquals(line1Start, gii.getMarkedOffset()); Assert.assertNull(gii.getToolTip()); textArea.insert("a", 0); line1Start = textArea.getText().indexOf('\n') + 1; // Should have advanced 1 Assert.assertEquals(line1Start, gii.getMarkedOffset()); }
@Test public void testAddOffsetTrackingIcon_2Arg_Valid() throws Exception { RTextArea textArea = new RTextArea(PLAIN_TEXT); Gutter gutter = new Gutter(textArea); Icon icon = new TestIcon(); GutterIconInfo gii = gutter.addOffsetTrackingIcon(17, icon); Assert.assertTrue(gii.getIcon() == icon); Assert.assertEquals(17, gii.getMarkedOffset()); Assert.assertNull(gii.getToolTip()); textArea.insert("a", 3); Assert.assertEquals(18, gii.getMarkedOffset()); }
@Test public void testAddOffsetTrackingIcon_3Arg_Valid() throws Exception { RTextArea textArea = new RTextArea(PLAIN_TEXT); Gutter gutter = new Gutter(textArea); Icon icon = new TestIcon(); String tip = "tip text"; GutterIconInfo gii = gutter.addOffsetTrackingIcon(17, icon, tip); Assert.assertTrue(gii.getIcon() == icon); Assert.assertEquals(17, gii.getMarkedOffset()); Assert.assertEquals(tip, gii.getToolTip()); textArea.insert("a", 3); Assert.assertEquals(18, gii.getMarkedOffset()); }
/** * Overridden to display the tool tip of any icons on this line. * * @param e The location the mouse is hovering over. */ @Override public String getToolTipText(MouseEvent e) { try { int line = viewToModelLine(e.getPoint()); if (line>-1) { GutterIconInfo[] infos = getTrackingIcons(line); if (infos.length>0) { // TODO: Display all messages? return infos[infos.length-1].getToolTip(); } } } catch (BadLocationException ble) { ble.printStackTrace(); // Never happens } return null; }