 |
CUGL 1.3
Cornell University Game Library
|
48 #ifndef __CU_TEXT_FIELD_H__
49 #define __CU_TEXT_FIELD_H__
51 #include <cugl/2d/CULabel.h>
52 #include <cugl/input/CUTextInput.h>
53 #include <cugl/input/CUKeyboard.h>
59 #pragma mark TextField
83 #pragma mark TextFieldListener
103 typedef std::function<void (
const std::string& name,
const std::string& current)>
Listener;
144 #pragma mark Constructors
172 virtual void dispose()
override;
176 #pragma mark Static Constructors
188 static std::shared_ptr<TextField>
alloc(
const Size& size,
const std::shared_ptr<Font>& font) {
189 std::shared_ptr<TextField> result = std::make_shared<TextField>();
190 return (result->Label::init(size,font) ? result :
nullptr);
210 static std::shared_ptr<TextField>
alloc(
const std::string& text,
const std::shared_ptr<Font>& font) {
211 std::shared_ptr<TextField> result = std::make_shared<TextField>();
212 return (result->initWithText(text,font) ? result :
nullptr);
232 static std::shared_ptr<TextField>
alloc(
const char* text,
const std::shared_ptr<Font>& font) {
233 std::shared_ptr<TextField> result = std::make_shared<TextField>();
234 return (result->initWithText(text,font) ? result :
nullptr);
263 const std::shared_ptr<JsonValue> data) {
264 std::shared_ptr<TextField> node = std::make_shared<TextField>();
265 if (!node->initWithData(loader,data)) { node =
nullptr; }
266 return std::dynamic_pointer_cast<Node>(node);
271 #pragma mark Listener
388 virtual void setText(
const std::string& text,
bool resize=
false)
override;
476 #pragma mark Rendering
496 virtual void draw(
const std::shared_ptr<SpriteBatch>& batch,
const Mat4& transform,
Color4 tint)
override;
500 #pragma mark Internal Helpers
511 bool validate(
const std::string& value);
Rect _cursor
Definition: CUTextField.h:109
static std::shared_ptr< TextField > alloc(const std::string &text, const std::shared_ptr< Font > &font)
Definition: CUTextField.h:210
bool _active
Definition: CUTextField.h:119
void setExitListener(Listener listener)
Definition: CUTextField.h:352
virtual void setText(const std::string &text, bool resize=false) override
bool _backDown
Definition: CUTextField.h:137
bool hasFocus() const
Definition: CUTextField.h:471
Definition: CUTextField.h:81
Definition: CUColor4.h:1084
bool validate(const std::string &value)
bool hasExitListener() const
Definition: CUTextField.h:328
Uint32 _inputKey
Definition: CUTextField.h:125
Listener _exitListener
Definition: CUTextField.h:130
std::function< void(const std::string &name, const std::string ¤t)> Listener
Definition: CUTextField.h:103
bool activate(Uint32 key)
int skipWord(bool forward)
virtual void dispose() override
float _textLength
Definition: CUTextField.h:115
Definition: CUKeyboard.h:293
bool hasTypeListener() const
Definition: CUTextField.h:281
Definition: CUSceneLoader.h:77
int _cursorBlink
Definition: CUTextField.h:111
void setTypeListener(Listener listener)
Definition: CUTextField.h:305
static std::shared_ptr< TextField > alloc(const Size &size, const std::shared_ptr< Font > &font)
Definition: CUTextField.h:188
const Listener getExitListener() const
Definition: CUTextField.h:340
virtual void draw(const std::shared_ptr< SpriteBatch > &batch, const Mat4 &transform, Color4 tint) override
bool isActive() const
Definition: CUTextField.h:436
bool removeTypeListener()
Uint32 _backCount
Definition: CUTextField.h:139
~TextField()
Definition: CUTextField.h:161
int _cursorIndex
Definition: CUTextField.h:113
bool _metaDown
Definition: CUTextField.h:135
bool _mouse
Definition: CUTextField.h:123
bool deactivate(bool dispose=false)
bool removeExitListener()
bool _focused
Definition: CUTextField.h:121
void updatePress(Vec2 pos, bool focus)
bool _altDown
Definition: CUTextField.h:133
void updateKey(const KeyEvent &event, bool focus, bool down)
Definition: CUTextInput.h:51
bool deleteMany(Uint32 counter)
static std::shared_ptr< Node > allocWithData(const SceneLoader *loader, const std::shared_ptr< JsonValue > data)
Definition: CUTextField.h:262
void updateInput(const TextInputEvent &event, bool focus)
static std::shared_ptr< TextField > alloc(const char *text, const std::shared_ptr< Font > &font)
Definition: CUTextField.h:232
const Listener getTypeListener() const
Definition: CUTextField.h:293
Listener _typeListener
Definition: CUTextField.h:128