29 #ifndef _CEGUIEditbox_h_ 30 #define _CEGUIEditbox_h_ 32 #include "CEGUI/Base.h" 33 #include "CEGUI/Window.h" 34 #include "CEGUI/RegexMatcher.h" 37 # pragma warning(push) 38 # pragma warning(disable : 4251) 45 class CEGUIEXPORT EditboxWindowRenderer :
public WindowRenderer
49 EditboxWindowRenderer(
const String& name);
63 virtual size_t getTextIndexFromPosition(
const Vector2f& pt)
const = 0;
69 class CEGUIEXPORT Editbox :
public Window
75 static const String EventNamespace;
77 static const String WidgetTypeName;
83 static const String EventReadOnlyModeChanged;
89 static const String EventMaskedRenderingModeChanged;
96 static const String EventMaskCodePointChanged;
102 static const String EventValidationStringChanged;
108 static const String EventMaximumTextLengthChanged;
122 static const String EventTextValidityChanged;
128 static const String EventCaretMoved;
134 static const String EventTextSelectionChanged;
140 static const String EventEditboxFull;
147 static const String EventTextAccepted;
157 bool hasInputFocus(
void)
const;
201 MatchState getTextMatchState()
const;
222 {
return d_validationString;}
231 size_t getCaretIndex(
void)
const;
242 size_t getSelectionStartIndex(
void)
const;
252 size_t getSelectionEndIndex(
void)
const;
263 size_t getSelectionLength(
void)
const;
275 {
return d_maskCodePoint; }
291 {
return d_maxTextLen;}
304 void setReadOnly(
bool setting);
318 void setTextMasked(
bool setting);
341 void setValidationString(
const String& validation_string);
355 void setCaretIndex(
size_t caret_pos);
374 void setSelection(
size_t start_pos,
size_t end_pos);
387 void setSelectionStart(
size_t start_pos);
399 void setSelectionLength(
size_t length);
431 void setMaxTextLength(
size_t max_len);
453 virtual bool performCopy(
Clipboard& clipboard);
456 virtual bool performCut(
Clipboard& clipboard);
459 virtual bool performPaste(
Clipboard& clipboard);
480 size_t getTextIndexFromPosition(
const Vector2f& pt)
const;
483 void clearSelection(
void);
493 void eraseSelectedText(
bool modify_text =
true);
500 MatchState getStringMatchState(
const String& str)
const;
510 bool handleValidityChangeForString(
const String& str);
513 void handleBackspace(
void);
516 void handleDelete(
void);
519 void handleCharLeft(uint sysKeys);
522 void handleWordLeft(uint sysKeys);
525 void handleCharRight(uint sysKeys);
528 void handleWordRight(uint sysKeys);
531 void handleHome(uint sysKeys);
534 void handleEnd(uint sysKeys);
537 virtual bool validateWindowRenderer(
const WindowRenderer* renderer)
const;
626 size_t d_selectionStart;
628 size_t d_selectionEnd;
630 String d_validationString;
634 bool d_weOwnValidator;
638 size_t d_dragAnchorIdx;
640 MatchState d_validatorMatchState;
642 bool d_previousValidityChangeResponse;
646 void addEditboxProperties(
void);
651 #if defined(_MSC_VER) 652 # pragma warning(pop) 655 #endif // end of guard _CEGUIEditbox_h_
Main namespace for Crazy Eddie's GUI Library.
Definition: cegui/include/CEGUI/Affector.h:42
size_t getMaxTextLength(void) const
return the maximum text length set for this Editbox.
Definition: debian/tmp/usr/include/cegui-0.8.7/CEGUI/widgets/Editbox.h:290
Interface for Regex matching support classes.
Definition: cegui/include/CEGUI/RegexMatcher.h:39
Definition: cegui/include/CEGUI/RegexMatcher.h:69
Base-class for the assignable WindowRenderer object.
Definition: cegui/include/CEGUI/WindowRenderer.h:50
MatchState
Enumeration of possible states when cosidering a regex match.
Definition: cegui/include/CEGUI/RegexMatcher.h:44
Defines a clipboard handling class.
Definition: cegui/include/CEGUI/Clipboard.h:82
EventArgs based class that is used for objects passed to input event handlers concerning keyboard inp...
Definition: cegui/include/CEGUI/InputEvent.h:314
String::value_type getMaskCodePoint(void) const
return the code point used when rendering masked text.
Definition: debian/tmp/usr/include/cegui-0.8.7/CEGUI/widgets/Editbox.h:274
bool isTextMasked(void) const
return true if the text for the Editbox will be rendered masked.
Definition: debian/tmp/usr/include/cegui-0.8.7/CEGUI/widgets/Editbox.h:179
const String & getValidationString(void) const
return the currently set validation string
Definition: debian/tmp/usr/include/cegui-0.8.7/CEGUI/widgets/Editbox.h:221
Base class for an Editbox widget.
Definition: cegui/include/CEGUI/widgets/Editbox.h:69
utf32 value_type
Basic 'code point' type used for String (utf32)
Definition: cegui/include/CEGUI/String.h:69
EventArgs based class that is used for objects passed to handlers triggered for events concerning som...
Definition: cegui/include/CEGUI/InputEvent.h:251
EventArgs based class that is used for objects passed to input event handlers concerning mouse input...
Definition: cegui/include/CEGUI/InputEvent.h:280
bool isReadOnly(void) const
return true if the Editbox is read-only.
Definition: debian/tmp/usr/include/cegui-0.8.7/CEGUI/widgets/Editbox.h:167
String class used within the GUI system.
Definition: cegui/include/CEGUI/String.h:62