Crazy Eddies GUI System  0.7.7
Public Member Functions | Static Public Attributes | Protected Member Functions | Protected Attributes | Static Protected Attributes | List of all members
CEGUI::FalagardEditbox Class Reference

Editbox class for the FalagardBase module. More...

+ Inheritance diagram for CEGUI::FalagardEditbox:
+ Collaboration diagram for CEGUI::FalagardEditbox:

Public Member Functions

 FalagardEditbox (const String &type)
 Constructor.
 
colour getUnselectedTextColour () const
 return the colour to be used for rendering Editbox text oustside of the selected region. More...
 
colour getSelectedTextColour () const
 return the colour to be used for rendering Editbox text falling within the selected region. More...
 
colour getOptionalPropertyColour (const String &propertyName) const
 Return a colour object fetched from the named property if it exists, else a default colour (black). More...
 
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).
 
void setTextFormatting (const HorizontalTextFormatting format)
 Sets the horizontal text formatting to be used from now onwards. More...
 
HorizontalTextFormatting getTextFormatting () const
 
void render ()
 Populate render cache. More...
 
size_t getTextIndexFromPosition (const Point &pt) const
 Return the text code point index that is rendered closest to screen position pt. More...
 
void update (float elapsed)
 perform any time based updates for this WindowRenderer.
 
- Public Member Functions inherited from CEGUI::EditboxWindowRenderer
 EditboxWindowRenderer (const String &name)
 Constructor.
 
- Public Member Functions inherited from CEGUI::WindowRenderer
 WindowRenderer (const String &name, const String &class_name="Window")
 Constructor. More...
 
virtual ~WindowRenderer ()
 Destructor.
 
const StringgetName () const
 Returns the factory type name of this window renderer.
 
WindowgetWindow () const
 Get the window this windowrenderer is attached to.
 
const StringgetClass () const
 Get the "minimum" Window class this renderer requires.
 
const WidgetLookFeelgetLookNFeel () const
 Get the Look'N'Feel assigned to our window.
 
virtual Rect getUnclippedInnerRect () const
 Get unclipped inner rectangle that our window should return from its member function with the same name.
 
virtual void performChildWindowLayout ()
 Method called to perform extended laying out of the window's attached child windows.
 
virtual void getRenderingContext (RenderingContext &ctx) const
 update the RenderingContext as needed for our window. This is normally invoked via our window's member function with the same name.
 

Static Public Attributes

static const utf8 TypeName []
 type name for this widget.
 
static const String UnselectedTextColourPropertyName
 Name of property to access for unselected text colour.
 
static const String SelectedTextColourPropertyName
 Name of property to access for selected text colour.
 
static const float DefaultCaretBlinkTimeout
 The default timeout (in seconds) used when blinking the caret.
 

Protected Member Functions

void renderBaseImagery (const WidgetLookFeel &wlf) const
 helper to draw the base imagery (container and what have you)
 
void setupVisualString (String &visual) const
 helper to set 'visual' to the string we will render (part of)
 
size_t getCaretIndex (const String &visual_string) const
 
float calculateTextOffset (const Rect &text_area, const float text_extent, const float caret_width, const float extent_to_caret)
 
void renderTextNoBidi (const WidgetLookFeel &wlf, const String &text, const Rect &text_area, float text_offset)
 
void renderTextBidi (const WidgetLookFeel &wlf, const String &text, const Rect &text_area, float text_offset)
 
bool editboxIsFocussed () const
 
void renderCaret (const ImagerySection &imagery, const Rect &text_area, const float text_offset, const float extent_to_caret) const
 
bool isUnsupportedFormat (const HorizontalTextFormatting format)
 

Protected Attributes

float d_lastTextOffset
 x rendering offset used last time we drew the widget.
 
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.
 
HorizontalTextFormatting d_textFormatting
 horizontal formatting. Only supports left, right, and centred.
 

Static Protected Attributes

static
FalagardEditboxProperties::BlinkCaret 
d_blinkCaretProperty
 
static
FalagardEditboxProperties::BlinkCaretTimeout 
d_blinkCaretTimeoutProperty
 
static
FalagardEditboxProperties::TextFormatting 
d_textFormattingProperty
 

Additional Inherited Members

- Protected Types inherited from CEGUI::WindowRenderer
typedef std::pair< Property
*, bool > 
PropertyEntry
 type used for entries in the PropertyList.
 
typedef std::vector
< PropertyEntry
PropertyList
 type to use for the property list.
 

Detailed Description

Editbox class for the FalagardBase module.

This class requires LookNFeel to be assigned. The LookNFeel should provide the following:

States:

NamedAreas:

PropertyDefinitions (optional)

Imagery Sections:

Member Function Documentation

colour CEGUI::FalagardEditbox::getOptionalPropertyColour ( const String propertyName) const

Return a colour object fetched from the named property if it exists, else a default colour (black).

Parameters
propertyNameString object holding the name of the property to be accessed if it exists.
colour CEGUI::FalagardEditbox::getSelectedTextColour ( ) const

return the colour to be used for rendering Editbox text falling within the selected region.

Returns
colour value describing the colour to be used.
size_t CEGUI::FalagardEditbox::getTextIndexFromPosition ( const Point pt) const
virtual

Return the text code point index that is rendered closest to screen position pt.

Parameters
ptPoint object describing a position on the screen in pixels.
Returns
Code point index into the text that is rendered closest to screen position pt.

Implements CEGUI::EditboxWindowRenderer.

colour CEGUI::FalagardEditbox::getUnselectedTextColour ( ) const

return the colour to be used for rendering Editbox text oustside of the selected region.

Returns
colour value describing the colour to be used.
void CEGUI::FalagardEditbox::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::FalagardEditbox::setTextFormatting ( const HorizontalTextFormatting  format)

Sets the horizontal text formatting to be used from now onwards.

Parameters
formatSpecifies the formatting to use. Currently can only be one of the following HorizontalTextFormatting values:
  • HTF_LEFT_ALIGNED (default)
  • HTF_RIGHT_ALIGNED
  • HTF_CENTRE_ALIGNED