Search in sources :

Example 1 with SoftTextDialogInputListener

use of com.jme3.input.controls.SoftTextDialogInputListener in project jmonkeyengine by jMonkeyEngine.

the class InputSystemJme method processSoftKeyboard.

private void processSoftKeyboard() {
    SoftTextDialogInput softTextDialogInput = JmeSystem.getSoftTextDialogInput();
    if (softTextDialogInput != null) {
        Element element = nifty.getCurrentScreen().getFocusHandler().getKeyboardFocusElement();
        if (element != null) {
            final TextField textField = element.getNiftyControl(TextField.class);
            if (textField != null) {
                Logger.getLogger(InputSystemJme.class.getName()).log(Level.FINE, "Current TextField: {0}", textField.getId());
                String initialValue = textField.getText();
                if (initialValue == null) {
                    initialValue = "";
                }
                softTextDialogInput.requestDialog(SoftTextDialogInput.TEXT_ENTRY_DIALOG, "Enter Text", initialValue, new SoftTextDialogInputListener() {

                    public void onSoftText(int action, String text) {
                        if (action == SoftTextDialogInputListener.COMPLETE) {
                            textField.setText(text);
                        }
                    }
                });
            }
        }
    }
}
Also used : SoftTextDialogInputListener(com.jme3.input.controls.SoftTextDialogInputListener) SoftTextDialogInput(com.jme3.input.SoftTextDialogInput) Element(de.lessvoid.nifty.elements.Element) TextField(de.lessvoid.nifty.controls.TextField)

Aggregations

SoftTextDialogInput (com.jme3.input.SoftTextDialogInput)1 SoftTextDialogInputListener (com.jme3.input.controls.SoftTextDialogInputListener)1 TextField (de.lessvoid.nifty.controls.TextField)1 Element (de.lessvoid.nifty.elements.Element)1