List of usage examples for com.badlogic.gdx.scenes.scene2d.ui TextField setTextFieldFilter
public void setTextFieldFilter(TextFieldFilter filter)
From source file:com.bladecoder.engineeditor.ui.components.PropertyTable.java
License:Apache License
public void addProperty(String name, String value, Types type) { table.row();// ww w .ja v a 2s . co m table.add(new Label(name, skin)).expandX().left(); if (type == Types.BOOLEAN) { SelectBox<String> sb = new SelectBox<String>(skin); sb.setItems(BOOLEAN_VALUES); if (value != null) sb.setSelected(value); sb.setName(name); table.add(sb).expandX().left(); sb.addListener(new ChangeListener() { @SuppressWarnings("unchecked") @Override public void changed(ChangeEvent event, Actor actor) { updateModel(actor.getName(), ((SelectBox<String>) actor).getSelected()); } }); } else { TextField tf = new TextField(value == null ? "" : value, skin); tf.setName(name); table.add(tf).expandX().left(); if (type == Types.INTEGER) tf.setTextFieldFilter(new TextField.TextFieldFilter.DigitsOnlyFilter()); tf.setTextFieldListener(new TextFieldListener() { @Override public void keyTyped(TextField actor, char c) { if (c == 13) { // ENTER KEY updateModel(actor.getName(), ((TextField) actor).getText()); EditorLogger.debug("Updating property: " + actor.getName()); } } }); tf.addListener(new FocusListener() { @Override public void keyboardFocusChanged(FocusEvent event, Actor actor, boolean focused) { if (!focused) { updateModel(actor.getName(), ((TextField) actor).getText()); EditorLogger.debug("Updating property: " + actor.getName()); } } }); } }
From source file:com.forerunnergames.peril.client.ui.widgets.AbstractWidgetFactory.java
License:Open Source License
@Override public final TextField createTextField(final String initialText, final int maxLength, final Pattern filter, final TextField.TextFieldStyle style) { Arguments.checkIsNotNull(initialText, "initialText"); Arguments.checkIsNotNegative(maxLength, "maxLength"); Arguments.checkIsNotNull(filter, "filter"); Arguments.checkIsNotNull(style, "style"); final TextField textField = new TextField(initialText, style) { @Override/*from w ww .j a v a 2s.co m*/ protected InputListener createInputListener() { return new TextFieldClickListener() { @Override public boolean keyDown(final InputEvent event, final int keycode) { return doNotHandleEscapeKeyInTextField(event, keycode); } private boolean doNotHandleEscapeKeyInTextField(final InputEvent event, final int keycode) { return keycode != Input.Keys.ESCAPE && super.keyDown(event, keycode); } }; } }; final Matcher matcher = filter.matcher("").reset(); textField.setTextFieldFilter(new TextField.TextFieldFilter() { @Override public boolean acceptChar(final TextField textField, final char c) { return matcher.reset(String.valueOf(c)).matches(); } }); textField.setMaxLength(maxLength); return textField; }
From source file:com.strategames.ui.dialogs.GameObjectConfigurationDialog.java
License:Open Source License
private void setupConfigurationItems() { Table table = new Table(getSkin()); gameObject.initializeConfigurationItems(); ArrayList<ConfigurationItem> configurationItems = gameObject.getConfigurationItems(); if (configurationItems != null) { for (ConfigurationItem item : configurationItems) { final ConfigurationItem.Type type = item.getType(); if (item.getType() == ConfigurationItem.Type.TEXT) { Label label = new Label(item.getName(), getSkin()); table.add(label);/* ww w .jav a2 s . c o m*/ TextField tf = new TextField(String.valueOf(item.getValueText()), getSkin()); final StringBuffer buffer = new StringBuffer(); tf.setTextFieldListener(new TextFieldListener() { @Override public void keyTyped(TextField textField, char key) { if (key == '\n') { textField.getOnscreenKeyboard().show(false); ConfigurationItem nItem = getConfigurationItemFromSelectedObject(type); if (nItem != null) { nItem.setValueText(buffer.toString()); } } buffer.append(key); } }); table.add(tf).left(); table.row(); } else if (item.getType() == ConfigurationItem.Type.NUMERIC) { Label label = new Label(item.getName(), getSkin()); table.add(label).left(); TextField tf = new TextField(String.valueOf(item.getValueNumeric()), getSkin()); tf.setTextFieldFilter(new TextFieldFilter() { @Override public boolean acceptChar(TextField textField, char key) { return Character.isDigit(key); } }); final StringBuffer buffer = new StringBuffer(); tf.setTextFieldListener(new TextFieldListener() { @Override public void keyTyped(TextField textField, char key) { if (key == '\n') { textField.getOnscreenKeyboard().show(false); ConfigurationItem nItem = getConfigurationItemFromSelectedObject(type); if (nItem != null) { nItem.setValueNumeric(Float.parseFloat(buffer.toString())); } } buffer.append(key); } }); table.add(tf).left(); table.row(); } else if (item.getType() == ConfigurationItem.Type.NUMERIC_RANGE) { Label label = new Label(item.getName(), getSkin()); table.add(label).left(); Slider slider = new Slider(item.getMinValue(), item.getMaxValue(), item.getStepSize(), false, getSkin()); slider.setValue(item.getValueNumeric()); slider.addListener(new ChangeListener() { @Override public void changed(ChangeEvent event, Actor actor) { Slider slider = (Slider) actor; ConfigurationItem nItem = getConfigurationItemFromSelectedObject(type); if (nItem != null) { nItem.setValueNumeric(slider.getValue()); } } }); table.add(slider).left(); table.row(); } else if (item.getType() == ConfigurationItem.Type.BOOLEAN) { Label label = new Label(item.getName(), getSkin()); table.add(label).left(); final CheckBox cb = new CheckBox("", getSkin()); cb.setChecked(item.getValueBoolean()); cb.addListener(new ClickListener() { @Override public void clicked(InputEvent event, float x, float y) { ConfigurationItem nItem = getConfigurationItemFromSelectedObject(type); if (nItem != null) { nItem.setValueBoolean(cb.isChecked()); } } }); table.add(cb).left(); table.row(); } add(table); row(); } } }
From source file:kyle.game.besiege.MainMenuScreen.java
License:Open Source License
private void clickNew() { topTable.clear();/*w w w . j av a2s.c o m*/ topTable.add(labelTitle).colspan(2).padBottom(PAD); topTable.row(); Label prompt = new Label("Who are you?", styleButtons); topTable.add(prompt).expandX().center().colspan(2); topTable.row(); TextFieldStyle tfs = new TextFieldStyle(); tfs.fontColor = Color.WHITE; tfs.font = Assets.pixel64; TextField tf = new TextField("", tfs); TextField tf2 = new TextField("", tfs); tf2.setVisible(false); topTable.add(tf).expandX().center().colspan(2).width(300); tf.setMaxLength(MAX_NAME); topTable.row(); topTable.add(tf2).colspan(2).height(0); // needed to autoselect tf.next(true); tf.setTextFieldFilter(new TextFieldFilter() { public boolean acceptChar(TextField textField, char key) { return true; } }); tf.addListener(new InputListener() { public boolean keyDown(InputEvent event, int keyCode) { if (keyCode == Input.Keys.ENTER) enterName(((TextField) event.getTarget()).getText()); return true; } }); tf2.next(false); }