UNPKG

phaser3-rex-plugins

Version:
73 lines (58 loc) 2 kB
import CreateInputText from './utils/CreateInputText.js'; var SetInputTextReadOnly = function (gameObject, readOnly, force) { if (readOnly === undefined) { readOnly = true; } if (force === undefined) { force = false; } var inputText = gameObject.childrenMap.inputText; if (force) { gameObject.inputTextReadOnly = readOnly; inputText.setReadOnly(readOnly); } else { if (!gameObject.inputTextReadOnly) { inputText.setReadOnly(readOnly); } } } export default { name: 'TextInput', accept(config) { if (config.hasOwnProperty('view')) { return (config.view === 'string') } return typeof (config.value) === 'string'; }, // Callback after `constructor()` build(gameObject, config, inputRowStyle, styles) { var scene = gameObject.scene; gameObject.type = 'rexTweaker.TextInput'; var inputTextConfig = inputRowStyle.inputText; var inputText = CreateInputText(scene, inputTextConfig); gameObject.add( inputText, { proportion: 1, expand: true, key: 'inputText' } ) inputText.on('close', function () { gameObject.setValue(inputText.value); }); }, // Callback inside `setup()` setup(gameObject, config, setDefaults) { if (setDefaults || config.hasOwnProperty('inputTextReadOnly')) { SetInputTextReadOnly(gameObject, !!config.inputTextReadOnly, true); } }, // Callback inside `setValue()` displayValue(gameObject, value) { var inputText = gameObject.childrenMap.inputText; inputText.setText(gameObject.getFotmatText(value)); }, setReadOnly(gameObject, readOnly) { if (readOnly === undefined) { readOnly = true; } SetInputTextReadOnly(gameObject, readOnly); } }