protected void nativeKeyEvent(android.view.KeyEvent event) { // event.isPrintingKey() returns false for whitespace and others, // which is a problem if the space bar or tab key are used. char key = (char) event.getUnicodeChar(); // if not mappable to a unicode character, instead mark as coded key if (key == 0 || key == 0xFFFF) { key = CODED; } int keyCode = event.getKeyCode(); int keAction = 0; int action = event.getAction(); if (action == android.view.KeyEvent.ACTION_DOWN) { keAction = KeyEvent.PRESS; } else if (action == android.view.KeyEvent.ACTION_UP) { keAction = KeyEvent.RELEASE; } // TODO set up proper key modifier handling int keModifiers = 0; KeyEvent ke = new KeyEvent(event, event.getEventTime(), keAction, keModifiers, key, keyCode); postEvent(ke); }
sketch.postEvent(new MouseEvent(nativeEvent, nativeEvent.getWhen(), peAction, peModifiers, nativeEvent.getX() / windowScaleFactor,
protected void nativeKeyEvent(java.awt.event.KeyEvent event) { int peAction = 0; switch (event.getID()) { case java.awt.event.KeyEvent.KEY_PRESSED: peAction = KeyEvent.PRESS; break; case java.awt.event.KeyEvent.KEY_RELEASED: peAction = KeyEvent.RELEASE; break; case java.awt.event.KeyEvent.KEY_TYPED: peAction = KeyEvent.TYPE; break; } // int peModifiers = event.getModifiersEx() & // (InputEvent.SHIFT_DOWN_MASK | // InputEvent.CTRL_DOWN_MASK | // InputEvent.META_DOWN_MASK | // InputEvent.ALT_DOWN_MASK); int peModifiers = event.getModifiers() & (InputEvent.SHIFT_MASK | InputEvent.CTRL_MASK | InputEvent.META_MASK | InputEvent.ALT_MASK); sketch.postEvent(new KeyEvent(event, event.getWhen(), peAction, peModifiers, event.getKeyChar(), event.getKeyCode())); }
case MotionEvent.ACTION_DOWN: motionPointerId = motionEvent.getPointerId(0); postEvent(new MouseEvent(motionEvent, motionEvent.getEventTime(), MouseEvent.PRESS, modifiers, (int) motionEvent.getX(), (int) motionEvent.getY(), postEvent(new MouseEvent(motionEvent, motionEvent.getEventTime(), MouseEvent.DRAG, modifiers, (int) motionEvent.getX(index), (int) motionEvent.getY(index), index = motionEvent.findPointerIndex(motionPointerId); if (index != -1) { postEvent(new MouseEvent(motionEvent, motionEvent.getEventTime(), MouseEvent.RELEASE, modifiers, (int) motionEvent.getX(index), (int) motionEvent.getY(index),
protected void fxKeyEvent(javafx.scene.input.KeyEvent fxEvent) { int action = 0; EventType<? extends KeyEvent> et = fxEvent.getEventType(); if (et == KeyEvent.KEY_PRESSED) { action = processing.event.KeyEvent.PRESS; } else if (et == KeyEvent.KEY_RELEASED) { action = processing.event.KeyEvent.RELEASE; } else if (et == KeyEvent.KEY_TYPED) { action = processing.event.KeyEvent.TYPE; } int modifiers = 0; if (fxEvent.isShiftDown()) { modifiers |= processing.event.Event.SHIFT; } if (fxEvent.isControlDown()) { modifiers |= processing.event.Event.CTRL; } if (fxEvent.isMetaDown()) { modifiers |= processing.event.Event.META; } if (fxEvent.isAltDown()) { modifiers |= processing.event.Event.ALT; } long when = System.currentTimeMillis(); char keyChar = getKeyChar(fxEvent); int keyCode = getKeyCode(fxEvent); sketch.postEvent(new processing.event.KeyEvent(fxEvent, when, action, modifiers, keyChar, keyCode)); }
protected void fxScrollEvent(ScrollEvent fxEvent) { // the number of steps/clicks on the wheel for a mouse wheel event. int count = (int) -(fxEvent.getDeltaY() / fxEvent.getMultiplierY()); int action = processing.event.MouseEvent.WHEEL; int modifiers = 0; if (fxEvent.isShiftDown()) { modifiers |= processing.event.Event.SHIFT; } if (fxEvent.isControlDown()) { modifiers |= processing.event.Event.CTRL; } if (fxEvent.isMetaDown()) { modifiers |= processing.event.Event.META; } if (fxEvent.isAltDown()) { modifiers |= processing.event.Event.ALT; } // FX does not supply button info int button = 0; long when = System.currentTimeMillis(); int x = (int) fxEvent.getX(); // getSceneX()? int y = (int) fxEvent.getY(); sketch.postEvent(new processing.event.MouseEvent(fxEvent, when, action, modifiers, x, y, button, count)); }
int y = (int) fxEvent.getY(); sketch.postEvent(new processing.event.MouseEvent(fxEvent, when, action, modifiers, x, y, button, count));
peCount); sketch.postEvent(me);