private void onKeyEventQueued(KeyInputEvent evt, NiftyInputConsumer nic) { int code = evt.getKeyCode(); if (code == KeyInput.KEY_LSHIFT || code == KeyInput.KEY_RSHIFT) { shiftDown = evt.isPressed(); } else if (code == KeyInput.KEY_LCONTROL || code == KeyInput.KEY_RCONTROL) { ctrlDown = evt.isPressed(); } KeyboardInputEvent keyEvt = new KeyboardInputEvent(code, evt.getKeyChar(), evt.isPressed(), shiftDown, ctrlDown); if (nic.processKeyboardEvent(keyEvt)) { evt.setConsumed(); } }
@Override public void setConsumed() { // We want to consume the original event that JME delivered to us delegate.setConsumed(); } }
@Override public void onKeyEvent( KeyInputEvent evt ) { ModifiedKeyInputEvent mEvt = (ModifiedKeyInputEvent)evt; if( mEvt.isPressed() || mEvt.isRepeating() ) { KeyAction key = mEvt.toKeyAction(); //new KeyAction(code, (control?KeyAction.CONTROL_DOWN:0), (shift?KeyAction.SHIFT_DOWN:0) ); KeyActionListener handler = actionMap.get(key); if( handler != null ) { handler.keyAction(TextEntryComponent.this, key); evt.setConsumed(); return; } // Making sure that no matter what, certain // characters never make it directly to the // document if( evt.getKeyChar() >= 32 ) { model.insert(evt.getKeyChar()); evt.setConsumed(); //resetText(); ...should be automatic now } } } }