for (int i=trackingIcons.size()-1; i>=0; i--) { // Last to first GutterIconInfo ti = getTrackingIcon(i); Icon icon = ti.getIcon(); if (icon!=null) { int iconH = icon.getIconHeight(); if (lineY<=bottomY && (lineY+iconH>=topY)) { int y2 = lineY + (cellHeight-iconH)/2; ti.getIcon().paintIcon(this, g, 0, y2); lastLine = line-1; // Paint only 1 icon per line
if (line<=lastLine && line>=topLine) { try { Icon icon = ti.getIcon(); if (icon!=null) { int lineY = rsta.yForLine(line);
if (icons[i].getIcon()==bookmarkIcon) { removeTrackingIcon(icons[i]); found = true;
@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()); }
for (int i=trackingIcons.size()-1; i>=0; i--) { // Last to first GutterIconInfo ti = getTrackingIcon(i); Icon icon = ti.getIcon(); if (icon!=null) { int iconH = icon.getIconHeight(); if (lineY<=bottomY && (lineY+iconH>=topY)) { int y2 = lineY + (cellHeight-iconH)/2; ti.getIcon().paintIcon(this, g, 0, y2); lastLine = line-1; // Paint only 1 icon per line
if (line<=lastLine && line>=topLine) { try { Icon icon = ti.getIcon(); if (icon!=null) { int lineY = rsta.yForLine(line);
if (icons[i].getIcon()==bookmarkIcon) { removeTrackingIcon(icons[i]); found = true;