relocate the tooltip when a new cell is hovered over, even if it contains the same text

This commit is contained in:
myk
2013-02-10 21:58:11 +00:00
parent 72db91a228
commit 1be0bffab2

View File

@@ -174,9 +174,28 @@ public final class EditorTableView<T extends InventoryItem> {
if (null == val) { if (null == val) {
return null; return null;
} }
return _getCellTooltip(getCellRenderer(row, col), row, col, val); return _getCellTooltip(getCellRenderer(row, col), row, col, val);
} }
private int lastTooltipRow = -1;
private int lastTooltipCol = -1;
private Point lastTooltipPt;
@Override
public Point getToolTipLocation(MouseEvent e) {
Point p = e.getPoint();
final int row = rowAtPoint(p);
final int col = columnAtPoint(p);
if (row == lastTooltipRow && col == lastTooltipCol) {
p = lastTooltipPt;
} else {
lastTooltipRow = row;
lastTooltipCol = col;
lastTooltipPt = p;
}
return new Point(p.x + 10, p.y + 20);
}
}; };
table.addFocusListener(new FocusListener() { table.addFocusListener(new FocusListener() {