|
| | CUITextBox (CUIContainer *container, CGUIElement *element) |
| | Create a CUITextBox by locating child elements named "Background", "Text", and "Hint".
|
| | CUITextBox (CUIContainer *container, CGUIElement *element, CGUIElement *background, CGUIText *text, CGUIText *hint) |
| | Create a CUITextBox with explicitly supplied background and text elements.
|
|
CGUIElement * | getBackground () |
| | Get the background GUI element (may be null).
|
|
CGUIText * | getTextGUI () |
| | Get the underlying CGUIText used by this text box.
|
| void | setText (const char *text) |
| | Set the text content (UTF-8 / narrow string).
|
| void | setText (const wchar_t *text) |
| | Set the text content (wide string).
|
| void | setHintText (const char *text) |
| | Set the hint text content (UTF-8 / narrow string).
|
| void | setHintText (const wchar_t *text) |
| | Set the hint text content (wide string).
|
|
const char * | getText () |
| | Get the current text (UTF-8 / narrow C string). Returns empty string if no m_text.
|
|
const wchar_t * | getTextW () |
| | Get the current text (wide string). Returns empty wide string if no m_text.
|
|
int | getTextLength () |
| | Get the current text length in characters.
|
|
void | setEditable (bool b) |
| | Enable or disable user editing.
|
|
bool | isEditable () |
| | Returns true when the control is editable.
|
|
void | setPassword (bool b) |
| | Enable or disable user editing password.
|
|
bool | isPassword () |
| | Returns true when the control is password.
|
|
void | setMaxLength (int l) |
| | Set maximum allowed characters that can be inserted.
|
|
int | getMaxLength () |
| | Get maximum allowed characters.
|
| virtual void | onPointerHover (int pointerId, float pointerX, float pointerY) |
| | Called when pointer enters or hovers over the element.
|
| virtual void | onPointerOut (int pointerId, float pointerX, float pointerY) |
| | Called when pointer leaves the element.
|
| virtual void | onPointerDown (int pointerId, float pointerX, float pointerY) |
| | Called when pointer is pressed down on the element.
|
| virtual void | onPointerUp (int pointerId, float pointerX, float pointerY) |
| | Called when pointer is released over the element.
|
| virtual void | onPointerMove (int pointerId, float pointerX, float pointerY) |
| | Called when pointer moves while over or dragging the element.
|
| virtual void | onFocus () |
| | Called when element receives focus.
|
| virtual void | onLostFocus () |
| | Called when element loses focus.
|
| virtual void | onKeyEvent (const SEvent &event) |
| | Keyboard event handler for navigation and editing.
|
| | CUIBase (CUIContainer *container, CGUIElement *element) |
| | Constructor.
|
|
virtual | ~CUIBase () |
| | Virtual destructor.
|
| void | remove () |
| | Remove this UI object from its container and perform cleanup.
|
|
virtual void | update () |
| virtual void | setEnable (bool b) |
| | Enable or disable this UI object.
|
| virtual void | setVisible (bool b) |
| | Set visibility of this UI object.
|
|
bool | isEnable () |
| | Returns true if the object is enabled.
|
|
bool | isVisible () |
| | Returns true if the object is visible.
|
|
int | getPointerId () |
| | Get the pointer ID associated with this UI object.
|
|
void | setPointerId (int id) |
| | Set the pointer ID for this UI object.
|
|
void | resetTouch () |
| | Reset pointer internal state (hover/down).
|
| void | setContinueGameEvent (bool b) |
| | Control whether input events continue to the game layer.
|
|
bool | isContinueGameEvent () |
| | Returns true when events are allowed to continue to the game layer.
|
|
bool | isContinueKeyEvent () |
| void | setSkipPointerEventWhenDrag (bool b) |
| | When true pointer events will be skipped while dragging.
|
|
bool | isPointerHover () |
| | Returns true if pointer is hovering this object.
|
|
bool | isPointerDown () |
| | Returns true if pointer is down on this object.
|
|
CGUIElement * | getElement () |
| | Get the underlying CGUIElement pointer.
|
|
CCanvas * | getCanvas () |
| | Retrieve the canvas that the underlying element belongs to.
|
|
CUIContainer * | getContainer () |
| | Get parent container.
|
|
core::vector3df * | getRectTransform () |
| | Returns a pointer to the internal rect transform (4 corners).
|
|
void | getRectTransform (CGUIElement *element, core::vector3df *t) |
| virtual void | onPressed () |
| | Called when the element is considered "pressed" (high-level event). Subclasses may trigger OnPressed callback from here.
|
| void | startMotion (EMotionEvent event) |
| | Start motions associated with a specific motion event.
|
| void | stopMotion (EMotionEvent event) |
| | Stop motions associated with a specific motion event.
|
| bool | isMotionPlaying (EMotionEvent event) |
| | Query whether any motion is currently playing for the given event.
|
| virtual CMotion * | addMotion (EMotionEvent event, CMotion *motion) |
| | Add a CMotion instance to the list for the given event. The motion will be initialized and managed by this object.
|
| virtual CMotion * | addMotion (EMotionEvent event, CGUIElement *element, CMotion *motion) |
| | Add a CMotion instance bound to a specific CGUIElement for the given event.
|
| bool | removeMotion (EMotionEvent event, CMotion *motion) |
| | Remove a motion instance from the given event list.
|
| void | removeMotions (EMotionEvent event) |
| | Remove all motions attached to the specified event.
|
| std::vector< CMotion * > & | getMotions (EMotionEvent event) |
| | Access the motion vector for a specific event.
|
| void | convertToUICoordinate (float &pointerX, float &pointerY) |
| | Convert screen pointer coordinates to this UI object's local UI coordinates.
|
| void | convertWorldToLocal (CGUIElement *element, float &x, float &y) |
| | Convert world coordinates to the local coordinate space of a CGUIElement.
|
| void | convertLocalToWorld (CGUIElement *element, float &x, float &y) |
| | Convert local coordinates of a CGUIElement to world coordinates.
|
| virtual bool | acceptDragFocus () |
| | Whether this UI element should accept drag-focus when the pointer is already down and the user drags over it.
|
| void | setSoundId (int slot, int soundId) |
| | Set the sound id associated with this UI object.
|
| int | getSoundId (int slot) |
| | Get the sound id associated with this UI object.
|
| void | setUserData (void *data) |
| | Attach an application-defined pointer to this UI object.
|
| void * | getUserData () |
| | Retrieve the pointer previously set via setUserData.
|
Single-line / multi-line editable text box control.
CUITextBox wraps a CGUIText element and provides basic text editing behaviour: caret management, text insertion/deletion, keyboard navigation, and mouse caret placement. The control forwards focus and capture to the global CUIEventManager when the user interacts with the text area.
Important behaviours implemented by this class:
- Shows the I-beam cursor while hovering and resets it on pointer out.
- On pointer down: places the caret at the clicked character, shows the caret, sets focus and capture to this control.
- While pointer is down and moved: caret follows the pointer.
- On lost focus: hides the caret.
- Keyboard handling (in onKeyEvent):
- Arrow keys, Home/End, Page Up/Down (skeleton) move the caret.
- Backspace/Delete perform editing when m_editable is true and invoke OnTextChanged.
- Character input is inserted when current length < m_maxLength.
By default, the control is editable and the maximum text length is 64.
Note: the internal CGUIText has setEnableTextFormnat(false) applied by the constructors to disable automatic text formatting behaviour.