public void mouseReleased(MouseEvent e) { _mouse_pressed = false; _drag_target = null; // send target node event first Node node = window.findNode(new AminoPoint(e.getPoint().getX(), e.getPoint().getY())); // console.log(node); MEvent evt = new MEvent(); evt.node = node; evt.x = e.getX(); evt.y = e.getY(); if (node != null) { Node start = node; while (start != null) { fireEvent("MOUSE_RELEASE", start, evt); if (start.isMouseBlocked()) return; start = (Node) start.getParent(); } } // send general events next fireEvent("MOUSE_RELEASE", null, evt); }
public void mouseDragged(MouseEvent e) { if (_mouse_pressed) { Node node = window.findNode(new AminoPoint(e.getPoint().getX(), e.getPoint().getY())); MEvent evt = new MEvent(); // redirect events to current drag target, if applicable if (_drag_target != null) { node = _drag_target; } evt.node = node; evt.x = e.getX(); evt.y = e.getY(); if (node != null) { Node start = node; while (start != null) { fireEvent("MOUSE_DRAG", start, evt); if (start.isMouseBlocked()) return; start = (Node) start.getParent(); } } // send general events next fireEvent("MOUSE_DRAG", null, evt); } }
// -------------------------------------------------------------------------------- public void update(final Object e, final Object source) { // threadPool.addCommand( new MCommand() { public void execute(){ //----------------- final MEvent event = (MEvent) e; final String eventName = event.getEventName(); if (event.getEventName().indexOf(event_mj_edit + "_end") == 0) { MEditAction action = (MEditAction) source; onEdit(action); } else if (event.getEventName().indexOf(event_find + "_end") == 0) { onFind(); } else if (event.getEventName().indexOf(event_use + "_end") == 0) { onUse(); } else if (event.getEventName().indexOf(event_disconnect + "_end") == 0) { onDisconnect(); } else if (event.getEventName().indexOf(event_mj_edit_field + "_end") == 0) { onEditField((MEditFieldAction) source); } // } public void breakCommand(){} } ); //------------ }