CEGUI::FalagardMultiLineEditbox Class Reference

MultiLineEditbox class for the FalagardBase module. More...

Inheritance diagram for CEGUI::FalagardMultiLineEditbox:

Inheritance graph
[legend]
Collaboration diagram for CEGUI::FalagardMultiLineEditbox:

Collaboration graph
[legend]

List of all members.

Public Member Functions

 FalagardMultiLineEditbox (const String &type)
 Constructor.
Rect 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.

Static Public Attributes

static const utf8 TypeName [] = "Falagard/MultiLineEditbox"
static const String UnselectedTextColourPropertyName
 Name of property to use to obtain unselected text rendering colour.
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.

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 cacheCaratImagery (const Rect &textArea)
 Render the carat.
void cacheTextLines (const Rect &dest_area)
 Render text lines.
colour getUnselectedTextColour () const
 return the colour to be used for rendering Editbox text oustside of the selected region.
colour getActiveSelectionColour () const
 return the colour to be used for rendering the selection highlight when the editbox is active.
colour getInactiveSelectionColour () const
 return the colour to be used for rendering the selection highlight when the editbox is inactive.
colour getSelectedTextColour () const
 return the colour to be used for rendering Editbox text falling within the selected region.
colour getOptionalPropertyColour (const String &propertyName) const
 Return a colour object fetched from the named property if it exists, else a default colour (black).


Detailed Description

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 carat 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__"


Member Function Documentation

void CEGUI::FalagardMultiLineEditbox::cacheCaratImagery ( const Rect textArea  )  [protected]

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..

Returns:
Nothing.

References CEGUI::WindowRenderer::d_window, CEGUI::WindowRenderer::getLookNFeel(), CEGUI::WidgetLookFeel::getStateImagery(), CEGUI::Window::isDisabled(), CEGUI::MultiLineEditbox::isReadOnly(), and CEGUI::StateImagery::render().

Referenced by render().

colour CEGUI::FalagardMultiLineEditbox::getActiveSelectionColour (  )  const [protected]

return the colour to be used for rendering the selection highlight when the editbox is active.

Returns:
colour value describing the colour to be used.

References ActiveSelectionColourPropertyName, and getOptionalPropertyColour().

Referenced by cacheTextLines().

colour CEGUI::FalagardMultiLineEditbox::getInactiveSelectionColour (  )  const [protected]

return the colour to be used for rendering the selection highlight when the editbox is inactive.

Returns:
colour value describing the colour to be used.

References getOptionalPropertyColour(), and InactiveSelectionColourPropertyName.

Referenced by cacheTextLines().

colour CEGUI::FalagardMultiLineEditbox::getOptionalPropertyColour ( const String propertyName  )  const [protected]

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

Parameters:
propertyName String object holding the name of the property to be accessed if it exists.

References CEGUI::WindowRenderer::d_window, CEGUI::PropertySet::getProperty(), and CEGUI::PropertySet::isPropertyPresent().

Referenced by getActiveSelectionColour(), getInactiveSelectionColour(), getSelectedTextColour(), and getUnselectedTextColour().

colour CEGUI::FalagardMultiLineEditbox::getSelectedTextColour (  )  const [protected]

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

Returns:
colour value describing the colour to be used.

References getOptionalPropertyColour(), and SelectedTextColourPropertyName.

Referenced by cacheTextLines().

Rect CEGUI::FalagardMultiLineEditbox::getTextRenderArea ( void   )  const [virtual]

colour CEGUI::FalagardMultiLineEditbox::getUnselectedTextColour (  )  const [protected]

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

Returns:
colour value describing the colour to be used.

References getOptionalPropertyColour(), and UnselectedTextColourPropertyName.

Referenced by cacheTextLines().

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.

References cacheCaratImagery(), cacheEditboxBaseImagery(), cacheTextLines(), CEGUI::WindowRenderer::d_window, getTextRenderArea(), CEGUI::MultiLineEditbox::hasInputFocus(), and CEGUI::MultiLineEditbox::isReadOnly().


Member Data Documentation

Name of property to use to obtain unselected text rendering colour.

type name for this widget.

Referenced by getUnselectedTextColour().


Generated on Thu Nov 27 20:34:45 2008 for Crazy Eddies GUI System by  doxygen 1.5.7.1