Crazy Eddie's GUI System
0.8.4
|
MultiLineEditbox class for the FalagardBase module. More...
Public Member Functions | |
FalagardMultiLineEditbox (const String &type) | |
Constructor. | |
Rectf | getTextRenderArea (void) const |
Return a Rect object describing, in un-clipped pixels, the window relative area that the text should be rendered in to. | |
void | render () |
Populate render cache. | |
void | update (float elapsed) |
perform any time based updates for this WindowRenderer. | |
bool | isCaretBlinkEnabled () const |
return whether the blinking caret is enabled. | |
float | getCaretBlinkTimeout () const |
return the caret blink timeout period (only used if blink is enabled). | |
void | setCaretBlinkEnabled (bool enable) |
set whether the blinking caret is enabled. | |
void | setCaretBlinkTimeout (float seconds) |
set the caret blink timeout period (only used if blink is enabled). | |
bool | handleFontRenderSizeChange (const Font *const font) |
Perform any updates needed because the given font's render size has changed. | |
Static Public Attributes | |
static const String | TypeName |
static const String | UnselectedTextColourPropertyName |
type name for this widget. | |
static const String | SelectedTextColourPropertyName |
Name of property to use to obtain selected text rendering colour. | |
static const String | ActiveSelectionColourPropertyName |
Name of property to use to obtain active selection rendering colour. | |
static const String | InactiveSelectionColourPropertyName |
Name of property to use to obtain inactive selection rendering colour. | |
static const float | DefaultCaretBlinkTimeout |
The default timeout (in seconds) used when blinking the caret. | |
Protected Member Functions | |
void | cacheEditboxBaseImagery () |
Perform rendering of the widget control frame and other 'static' areas. This method should not render the actual text. Note that the text will be rendered to layer 4 and the selection brush to layer 3, other layers can be used for rendering imagery behind and infront of the text & selection.. | |
void | cacheCaretImagery (const Rectf &textArea) |
Render the caret. | |
void | cacheTextLines (const Rectf &dest_area) |
Render text lines. | |
void | setColourRectToUnselectedTextColour (ColourRect &colour_rect) const |
Set the given ColourRect to the colour to be used for rendering Editbox text oustside of the selected region. | |
void | setColourRectToSelectedTextColour (ColourRect &colour_rect) const |
Set the given ColourRect to the colour to be used for rendering Editbox text falling within the selected region. | |
void | setColourRectToActiveSelectionColour (ColourRect &colour_rect) const |
Set the given ColouRect to the colours to be used for rendering the selection highlight when the editbox is active. | |
void | setColourRectToInactiveSelectionColour (ColourRect &colour_rect) const |
set the given ColourRect to the colours to be used for rendering the selection highlight when the editbox is inactive. | |
void | setColourRectToOptionalPropertyColour (const String &propertyName, ColourRect &colour_rect) const |
Set the given ColourRect to the colour(s) fetched from the named property if it exists, else the default colour of black. | |
Protected Attributes | |
bool | d_blinkCaret |
true if the caret imagery should blink. | |
float | d_caretBlinkTimeout |
time-out in seconds used for blinking the caret. | |
float | d_caretBlinkElapsed |
current time elapsed since last caret blink state change. | |
bool | d_showCaret |
true if caret should be shown. |
MultiLineEditbox class for the FalagardBase module.
This class requires LookNFeel to be assigned. The LookNFeel should provide the following:
States:
NamedAreas: TextArea - area where text, selection, and caret imagery will appear. TextAreaHScroll - TextArea when only horizontal scrollbar is visible. TextAreaVScroll - TextArea when only vertical scrollbar is visible. TextAreaHVScroll - TextArea when both horizontal and vertical scrollbar is visible.
PropertyDefinitions (optional, defaults will be black):
Imagery Sections:
Child Widgets: Scrollbar based widget with name suffix "__auto_vscrollbar__" Scrollbar based widget with name suffix "__auto_hscrollbar__"
void CEGUI::FalagardMultiLineEditbox::cacheCaretImagery | ( | const Rectf & | textArea | ) | [protected] |
Render the caret.
void CEGUI::FalagardMultiLineEditbox::cacheEditboxBaseImagery | ( | ) | [protected] |
Perform rendering of the widget control frame and other 'static' areas. This method should not render the actual text. Note that the text will be rendered to layer 4 and the selection brush to layer 3, other layers can be used for rendering imagery behind and infront of the text & selection..
Rectf CEGUI::FalagardMultiLineEditbox::getTextRenderArea | ( | void | ) | const [virtual] |
Return a Rect object describing, in un-clipped pixels, the window relative area that the text should be rendered in to.
Implements CEGUI::MultiLineEditboxWindowRenderer.
bool CEGUI::FalagardMultiLineEditbox::handleFontRenderSizeChange | ( | const Font *const | font | ) | [virtual] |
Perform any updates needed because the given font's render size has changed.
/note This base implementation deals with updates needed for various definitions in the assigned widget look. If you override, you should generally always call this base class implementation.
font | Pointer to the Font whose render size has changed. |
Reimplemented from CEGUI::WindowRenderer.
void CEGUI::FalagardMultiLineEditbox::render | ( | ) | [virtual] |
Populate render cache.
This method must be implemented by all window renderers and should perform the rendering operations needed for this widget. Normally using the Falagard API...
Implements CEGUI::WindowRenderer.
void CEGUI::FalagardMultiLineEditbox::setColourRectToOptionalPropertyColour | ( | const String & | propertyName, |
ColourRect & | colour_rect | ||
) | const [protected] |
Set the given ColourRect to the colour(s) fetched from the named property if it exists, else the default colour of black.
propertyName | String object holding the name of the property to be accessed if it exists. |
colour_rect | Reference to a ColourRect that will be set. |
type name for this widget.
Name of property to use to obtain unselected text rendering colour.