* (with no buttons no down).
*/
public void mouseMoved(MouseEvent e) {
// Test if we are over a gem part
DisplayedPart partUnder = tableTop.getGemPartUnder(e.getPoint());
// If we are dragging over a VEP make sure to display the correct cursor.
if (valueEntryPanelHit(e.getPoint())) {
ValueEntryPanel vep = getValueEntryPanel((ValueGem)partUnder.getGem());
Point vepPoint = SwingUtilities.convertPoint(TableTopPanel.this, e.getPoint(), vep);
setCursor(vep.getCursor(vepPoint));
} else {
setCursor(Cursor.getDefaultCursor());
}
// display some help maybe
if (gemCutter.getGUIState() == GemCutter.GUIState.EDIT) {
// unconnected connectable parts of a non-broken gem
if (partUnder instanceof DisplayedPartConnectable && // connectable
!((DisplayedPartConnectable)partUnder).getPartConnectable().isConnected() && // not connected
!((partUnder.getGem().getRootGem() != null) && // not ancestor of a broken forest
GemGraph.isAncestorOfBrokenGemForest(partUnder.getGem().getRootGem()))) {
if (partUnder instanceof DisplayedPartInput) {
// double click to burn/unburn an unconnected input
gemCutter.getStatusMessageDisplayer().setMessageFromResource(TableTopPanel.this, "SM_DblClickBurn", StatusMessageDisplayer.MessageType.PERSISTENT);