private void onMouseMotionEventQueued(MouseMotionEvent evt, NiftyInputConsumer nic) { int wheel = evt.getDeltaWheel() / 120; x = evt.getX(); y = height - evt.getY(); nic.processMouseEvent(x, y, wheel, -1, false); // if (nic.processMouseEvent(niftyEvt) /*|| nifty.getCurrentScreen().isMouseOverElement()*/){ // Do not consume motion events //evt.setConsumed(); // } }
boolean consumed = nic.processMouseEvent(x, y, 0, button, true) | nifty.getCurrentScreen().isMouseOverElement(); niftyOwnsDragging[button] = consumed; boolean consumed = nic.processMouseEvent(x, y, 0, button, false);
boolean sendToNifty(@Nonnull final NiftyInputConsumer inputEventConsumer) { return inputEventConsumer.processMouseEvent( mouseX, mouseY, mouseWheel, button, buttonDown); }
@Override public boolean sendToNifty(@Nonnull final NiftyInputConsumer consumer) { return consumer.processMouseEvent(mouseX, mouseY, -wheelDelta, button, buttonDown); }
@Override public boolean sendToNifty(@Nonnull final NiftyInputConsumer consumer) { return consumer.processMouseEvent(mouseX, mouseY, -wheelDelta, button, buttonDown); }
@Override public void forwardEvents(@Nonnull final NiftyInputConsumer inputEventConsumer) { MouseEvent mouseEvent = mouseEvents.poll(); while (mouseEvent != null) { inputEventConsumer.processMouseEvent(mouseEvent.getX(), mouseEvent.getY(), 0, mouseEvent.getButton() - 1, mouseEvent.getButton() != MouseEvent.NOBUTTON); mouseEvent = mouseEvents.poll(); } KeyboardInputEvent keyEvent = keyboardEvents.poll(); while (keyEvent != null) { inputEventConsumer.processKeyboardEvent(keyEvent); keyEvent = keyboardEvents.poll(); } }
@Override public void forwardEvents(@Nonnull final NiftyInputConsumer inputEventConsumer) { MouseEvent mouseEvent = mouseEvents.poll(); while (mouseEvent != null) { inputEventConsumer.processMouseEvent(mouseEvent.getX(), mouseEvent.getY(), 0, mouseEvent.getButton() - 1, mouseEvent.getButton() != MouseEvent.NOBUTTON); mouseEvent = mouseEvents.poll(); } KeyboardInputEvent keyEvent = keyboardEvents.poll(); while (keyEvent != null) { inputEventConsumer.processKeyboardEvent(keyEvent); keyEvent = keyboardEvents.poll(); } }
@Override public void forwardEvents(@Nonnull final NiftyInputConsumer inputEventConsumer) { if (!initialized) return; mouseEventsOut.clear(); keyboardEventsOut.clear(); glfwPollEvents(); while (hasNextKeyboardEvent()) { inputEventConsumer.processKeyboardEvent(nextKeyboardEvent()); } while (hasNextMouseEvent()) { final MouseInputEvent mouseEvent = nextMouseEvent(); inputEventConsumer.processMouseEvent((int) mouseEvent.mouseX, (int) mouseEvent.mouseY, mouseEvent.scrollY, mouseEvent.button, mouseEvent.buttonDown); } }
private void processMouseEvents(@Nonnull final NiftyInputConsumer inputEventConsumer) { int viewportHeight = getViewportHeight(); while (Mouse.next()) { int mouseX = Mouse.getEventX(); int mouseY = viewportHeight - Mouse.getEventY(); int mouseWheel = Mouse.getEventDWheel() / 120; // not sure about that 120 here. works on my system and makes // this return 1 if the wheel is moved the minimal amount. int button = Mouse.getEventButton(); boolean buttonDown = Mouse.getEventButtonState(); // now send the event to nifty boolean mouseEventProcessedByNifty = inputEventConsumer.processMouseEvent(mouseX, mouseY, mouseWheel, button, buttonDown); if (!mouseEventProcessedByNifty) { log.fine("Nifty did not processed this mouse event. You can handle it."); // nifty did not process this event, it did not hit any element mouseEventsOut.offer(new MouseInputEvent(mouseX, mouseY, mouseWheel, button, buttonDown)); if (niftyTakesKeyboardFocusOnClick) { log.fine("Nifty gave up the keyboard focus"); niftyHasKeyboardFocus = false; // give up focus if clicked outside nifty } } else { log.fine("Nifty has processed this mouse event"); // nifty did handle that event. it hit an element and was processed by some GUI element if (niftyTakesKeyboardFocusOnClick) { // take focus if nifty element is clicked log.fine("Nifty takes the keyboard focus back"); niftyHasKeyboardFocus = true; } } } }