Node node = ....; node.addEventHandler(OPTIONS_ALL, event -> handle(...)); node.addEventHandler(BEFORE_STORE, event -> handle(...));
public static void addPressAndHoldHandler(Node node, Duration holdTime, EventHandler<MouseEvent> handler) { Wrapper<MouseEvent> eventWrapper = new Wrapper<>(); PauseTransition holdTimer = new PauseTransition(holdTime); holdTimer.setOnFinished(event -> handler.handle(eventWrapper.content)); node.addEventHandler(MouseEvent.MOUSE_PRESSED, event -> { eventWrapper.content = event; holdTimer.playFromStart(); }); node.addEventHandler(MouseEvent.MOUSE_RELEASED, event -> holdTimer.stop()); node.addEventHandler(MouseEvent.DRAG_DETECTED, event -> holdTimer.stop()); }
private void initChild(Node node, int index, BiFunction<Boolean, Duration, Collection<KeyFrame>> animationFramesFunction, boolean addTriggerListener) { if (index > 0) { initNode(node); node.setVisible(false); } else { if (addTriggerListener) { if (node instanceof Button) { node.addEventHandler(ActionEvent.ACTION, event -> animateList()); } else { node.addEventHandler(MouseEvent.MOUSE_CLICKED, event-> animateList()); } } node.getStyleClass().add("trigger-node"); node.setVisible(true); } if (animationFramesFunction == null && index != 0) { animationFramesFunction = initDefaultAnimation(node); } else if (animationFramesFunction == null && index == 0) { animationFramesFunction = (aBoolean, duration) -> new ArrayList<>(); } animationsMap.put(node, animationFramesFunction); }
public static <T extends Event> EventHandler<? super T> addDelayedEventHandler(Node control, Duration delayTime, final EventType<T> eventType, final EventHandler<? super T> eventHandler) { Wrapper<T> eventWrapper = new Wrapper<>(); PauseTransition holdTimer = new PauseTransition(delayTime); holdTimer.setOnFinished(finish -> eventHandler.handle(eventWrapper.content)); final EventHandler<? super T> eventEventHandler = event -> { eventWrapper.content = event; holdTimer.playFromStart(); }; control.addEventHandler(eventType, eventEventHandler); return eventEventHandler; }
protected void initControlListeners() { // if the control got resized the overlay rect must be rest control.layoutBoundsProperty().addListener(observable -> resetRippler()); if (getChildren().contains(control)) { control.boundsInParentProperty().addListener(observable -> resetRippler()); } control.addEventHandler(MouseEvent.MOUSE_PRESSED, (event) -> createRipple(event.getX() + padding, event.getY() + padding)); // create fade out transition for the ripple control.addEventHandler(MouseEvent.MOUSE_RELEASED, e -> releaseRipple()); }
/** * init mouse listeners on the control */ protected void initControlListeners() { // if the control got resized the overlay rect must be rest control.layoutBoundsProperty().addListener(observable -> resetRippler()); if(getChildren().contains(control)) control.boundsInParentProperty().addListener(observable -> resetRippler()); control.addEventHandler(MouseEvent.MOUSE_PRESSED, (event) -> createRipple(event.getX(), event.getY())); // create fade out transition for the ripple control.addEventHandler(MouseEvent.MOUSE_RELEASED, e -> releaseRipple()); }
materialNode.addEventHandler(MouseEvent.MOUSE_CLICKED, Event::consume);
node.addEventHandler(MouseEvent.MOUSE_MOVED, listener); node.addEventHandler(MouseEvent.MOUSE_PRESSED, listener); node.addEventHandler(MouseEvent.MOUSE_DRAGGED, listener); node.addEventHandler(MouseEvent.MOUSE_EXITED, listener); node.addEventHandler(MouseEvent.MOUSE_EXITED_TARGET, listener); if (node instanceof Parent) { Parent parent = (Parent) node;
for (Node element : gridpane.getChildren()) { element.addEventHandler(MouseEvent.MOUSE_CLICKED, new EventHandler<MouseEvent>() { @Override public void handle(MouseEvent event) { System.out.println("Row: " + GridPane.getRowIndex(element)); System.out.println("Column: " + GridPane.getColumnIndex(element)); } }); }
/** * Enable dnd for the node */ public void enable() { this.node.addEventHandler(MouseEvent.MOUSE_PRESSED, this::handleMousePressed); this.node.addEventHandler(MouseEvent.MOUSE_DRAGGED, this::handleMouseDragged); this.node.addEventHandler(MouseEvent.MOUSE_RELEASED, this::handleMouseReleased); }
/** * Enable dnd for the node */ public void enable() { this.node.addEventHandler(MouseEvent.MOUSE_PRESSED, this::handleMousePressed); this.node.addEventHandler(MouseEvent.MOUSE_DRAGGED, this::handleMouseDragged); this.node.addEventHandler(MouseEvent.MOUSE_RELEASED, this::handleMouseReleased); }
private void attachEvenHandlers() { if (!isRayCastInterceptorAttached) { if (VERBOSE) PrintTools.info(this, "Attaching ray cast event handler."); sceneNode.addEventHandler(MouseEvent.ANY, rayCastInterceptor); isRayCastInterceptorAttached = true; } }
/** * Adds an event registration, optionally adding it to the target immediately. */ public <T extends Event> void addEventHandler( boolean addImmediately, EventType<T> type, EventHandler<? super T> handler ) { Registration<T> reg = new Registration<T>( type, handler ); registrations.add( reg ); if ( addImmediately ) { target.addEventHandler( type, handler ); reg.setRegistered( true ); } }
@Override public void initBehavior() { data().node().addEventHandler(SwipeEvent.ANY, this::onSwipe); }
public static void addPressAndHoldHandler(Node node, Duration holdTime, EventHandler<MouseEvent> handler) { Wrapper<MouseEvent> eventWrapper = new Wrapper<>(); PauseTransition holdTimer = new PauseTransition(holdTime); holdTimer.setOnFinished(event -> handler.handle(eventWrapper.content)); node.addEventHandler(MouseEvent.MOUSE_PRESSED, event -> { eventWrapper.content = event; holdTimer.playFromStart(); }); node.addEventHandler(MouseEvent.MOUSE_RELEASED, event -> holdTimer.stop()); node.addEventHandler(MouseEvent.DRAG_DETECTED, event -> holdTimer.stop()); }
public static <T extends Event> Observable<T> fromNodeEvents(final Node source, final EventType<T> eventType) { return Observable.create((ObservableEmitter<T> emitter) -> { final EventHandler<T> handler = emitter::onNext; source.addEventHandler(eventType, handler); emitter.setDisposable(JavaFxSubscriptions.unsubscribeInEventDispatchThread(() -> source.removeEventHandler(eventType, handler))); }).subscribeOn(JavaFxScheduler.platform()); } }
public static <T extends Event> Observable<T> fromNodeEvents(final Node source, final EventType<T> eventType) { return Observable.create((ObservableEmitter<T> emitter) -> { final EventHandler<T> handler = emitter::onNext; source.addEventHandler(eventType, handler); emitter.setDisposable(JavaFxSubscriptions.unsubscribeInEventDispatchThread(() -> source.removeEventHandler(eventType, handler))); }).subscribeOn(JavaFxScheduler.platform()); } }
/** * Add all currently unadded handlers (this method will not re-add). */ @SuppressWarnings( "unchecked" ) public void addAllHandlers() { for ( Registration<?> registration : registrations ) { if ( !registration.isRegistered() ) { target.addEventHandler( (EventType) registration.getType(), (EventHandler) registration.getHandler() ); registration.setRegistered( true ); } } }
protected void initControlListeners() { // if the control got resized the overlay rect must be rest control.layoutBoundsProperty().addListener(observable -> resetRippler()); if (getChildren().contains(control)) { control.boundsInParentProperty().addListener(observable -> resetRippler()); } control.addEventHandler(MouseEvent.MOUSE_PRESSED, (event) -> createRipple(event.getX() + padding, event.getY() + padding)); // create fade out transition for the ripple control.addEventHandler(MouseEvent.MOUSE_RELEASED, e -> releaseRipple()); }
/** * init mouse listeners on the control */ protected void initControlListeners() { // if the control got resized the overlay rect must be rest control.layoutBoundsProperty().addListener(observable -> resetRippler()); if(getChildren().contains(control)) control.boundsInParentProperty().addListener(observable -> resetRippler()); control.addEventHandler(MouseEvent.MOUSE_PRESSED, (event) -> createRipple(event.getX(), event.getY())); // create fade out transition for the ripple control.addEventHandler(MouseEvent.MOUSE_RELEASED, e -> releaseRipple()); }