# CEGUI::ListboxItem Class Reference

Base class for list box items. More...

Inheritance diagram for CEGUI::ListboxItem:

[legend]
Collaboration diagram for CEGUI::ListboxItem:

[legend]
List of all members.

## Public Member Functions

| ListboxItem (const String &text, uint item_id=0, void *item_data=NULL, bool disabled=false, bool auto_delete=true)
| base class constructor
virtual | ~ListboxItem (void)
| base class destructor
const String & | getText (void) const
| return the text string set for this list box item.
const String & | getTooltipText (void) const
uint | getID (void) const
| Return the current ID assigned to this list box item.
void * | getUserData (void) const
| Return the pointer to any client assigned user data attached to this lis box item.
bool | isSelected (void) const
| return whether this item is selected.
bool | isDisabled (void) const
| return whether this item is disabled.
bool | isAutoDeleted (void) const
| return whether this item will be automatically deleted when the list box it is attached to is destroyed, or when the item is removed from the list box.
const Window * | getOwnerWindow (const Window *owner)
| Get the owner window for this ListboxItem.
ColourRect | getSelectionColours (void) const
| Return the current colours used for selection highlighting.
const Image * | getSelectionBrushImage (void) const
| Return the current selection highlighting brush.
void | setText (const String &text)
| set the text string for this list box item.
void | setTooltipText (const String &text)
void | setID (uint item_id)
| Set the ID assigned to this list box item.
void | setUserData (void *item_data)
| Set the client assigned user data attached to this lis box item.
void | setSelected (bool setting)
| set whether this item is selected.
void | setDisabled (bool setting)
| set whether this item is disabled.
void | setAutoDeleted (bool setting)
| Set whether this item will be automatically deleted when the list box it is attached to is destroyed, or when the item is removed from the list box.
void | setOwnerWindow (const Window *owner)
| Set the owner window for this ListboxItem. This is called by all the list box widgets when an item is added or inserted.
void | setSelectionColours (const ColourRect &cols)
| Set the colours used for selection highlighting.
void | setSelectionColours (colour top_left_colour, colour top_right_colour, colour bottom_left_colour, colour bottom_right_colour)
| Set the colours used for selection highlighting.
void | setSelectionColours (colour col)
| Set the colours used for selection highlighting.
void | setSelectionBrushImage (const Image *image)
| Set the selection highlighting brush image.
void | setSelectionBrushImage (const String &imageset, const String &image)
| Set the selection highlighting brush image.
virtual Size | getPixelSize (void) const =0
| Return the rendered pixel size of this list box item.
virtual void | draw (const Vector3 &position, float alpha, const Rect &clipper) const =0
| Draw the list box item in its current state.
virtual void | draw (RenderCache &cache, const Rect &targetRect, float zBase, float alpha, const Rect *clipper) const =0
virtual bool | operator< (const ListboxItem &rhs) const
| Less-than operator, compares item texts.
virtual bool | operator> (const ListboxItem &rhs) const
| Greater-than operator, compares item texts.

## Static Public Attributes

static const colour | DefaultSelectionColour = 0xFF4444AA
| Default selection brush colour.

## Protected Member Functions

ColourRect | getModulateAlphaColourRect (const ColourRect &cols, float alpha) const
| Return a ColourRect object describing the colours in cols after having their alpha component modulated by the value alpha.
colour | calculateModulatedAlphaColour (colour col, float alpha) const
| Return a colour value describing the colour specified by col after having its alpha component modulated by the value alpha.

## Protected Attributes

String | d_itemText
| Text for this list box item. If not rendered, this is still used for list sorting.
String | d_tooltipText
| Text for the individual tooltip of this item.
uint | d_itemID
| ID code assigned by client code. This has no meaning within the GUI system.
void * | d_itemData
| Pointer to some client code data. This has no meaning within the GUI system.
bool | d_selected
| true if this item is selected. false if the item is not selected.
bool | d_disabled
| true if this item is disabled. false if the item is not disabled.
bool | d_autoDelete
| true if the system should destroy this item, false if client code will destroy the item.
const Window * | d_owner
| Pointer to the window that owns this item.
ColourRect | d_selectCols
| Colours used for selection highlighting.
const Image * | d_selectBrush
| Image used for rendering selection.

## Detailed Description

Base class for list box items.

## Member Function Documentation

virtual void CEGUI::ListboxItem::draw | ( | const Vector3 & | position,
|  | float | alpha,
|  | const Rect & | clipper
| ) | const`[pure virtual]`

Draw the list box item in its current state.

Parameters:

  | position | Vecor3 object describing the upper-left corner of area that should be rendered in to for the draw operation.
  | alpha | Alpha value to be used when rendering the item (between 0.0f and 1.0f).
  | clipper | Rect object describing the clipping rectangle for the draw operation.

Returns:
  Nothing.

Implemented in CEGUI::ListboxTextItem.

uint CEGUI::ListboxItem::getID | ( | void |  | ) | const`[inline]`

Return the current ID assigned to this list box item.

Note that the system does not make use of this value, client code can assign any meaning it wishes to the ID.

Returns:
  ID code currently assigned to this list box item

const Window* CEGUI::ListboxItem::getOwnerWindow | ( | const Window * | owner | ) | `[inline]`

Get the owner window for this ListboxItem.

The owner of a ListboxItem is typically set by the list box widgets when an item is added or inserted.

Returns:
  Ponter to the window that is considered the owner of this ListboxItem.

virtual Size CEGUI::ListboxItem::getPixelSize | ( | void |  | ) | const`[pure virtual]`

Return the rendered pixel size of this list box item.

Returns:
  Size object describing the size of the list box item in pixels.

Implemented in CEGUI::ListboxTextItem.

const Image* CEGUI::ListboxItem::getSelectionBrushImage | ( | void |  | ) | const`[inline]`

Return the current selection highlighting brush.

Returns:
  Pointer to the Image object currently used for selection highlighting.

ColourRect CEGUI::ListboxItem::getSelectionColours | ( | void |  | ) | const`[inline]`

Return the current colours used for selection highlighting.

Returns:
  ColourRect object describing the currently set colours

const String& CEGUI::ListboxItem::getText | ( | void |  | ) | const`[inline]`

return the text string set for this list box item.

Note that even if the item does not render text, the text string can still be useful, since it is used for sorting list box items.

Returns:
  String object containing the current text for the list box item.

void* CEGUI::ListboxItem::getUserData | ( | void |  | ) | const`[inline]`

Return the pointer to any client assigned user data attached to this lis box item.

Note that the system does not make use of this data, client code can assign any meaning it wishes to the attached data.

Returns:
  Pointer to the currently assigned user data.

bool CEGUI::ListboxItem::isAutoDeleted | ( | void |  | ) | const`[inline]`

return whether this item will be automatically deleted when the list box it is attached to is destroyed, or when the item is removed from the list box.

Returns:
  true if the item object will be deleted by the system when the list box it is attached to is destroyed, or when the item is removed from the list. false if client code must destroy the item after it is removed from the list.

bool CEGUI::ListboxItem::isDisabled | ( | void |  | ) | const`[inline]`

return whether this item is disabled.

Returns:
  true if the item is disabled, false if the item is enabled.

bool CEGUI::ListboxItem::isSelected | ( | void |  | ) | const`[inline]`

return whether this item is selected.

Returns:
  true if the item is selected, false if the item is not selected.

void CEGUI::ListboxItem::setAutoDeleted | ( | bool | setting | ) | `[inline]`

Set whether this item will be automatically deleted when the list box it is attached to is destroyed, or when the item is removed from the list box.

Parameters:

  | setting | true if the item object should be deleted by the system when the list box it is attached to is destroyed, or when the item is removed from the list. false if client code will destroy the item after it is removed from the list.

Returns:
  Nothing.

void CEGUI::ListboxItem::setDisabled | ( | bool | setting | ) | `[inline]`

set whether this item is disabled.

Parameters:

  | setting | true if the item is disabled, false if the item is enabled.

Returns:
  Nothing.

void CEGUI::ListboxItem::setID | ( | uint | item_id | ) | `[inline]`

Set the ID assigned to this list box item.

Note that the system does not make use of this value, client code can assign any meaning it wishes to the ID.

Parameters:

  | item_id | ID code to be assigned to this list box item

Returns:
  Nothing.

void CEGUI::ListboxItem::setOwnerWindow | ( | const Window * | owner | ) | `[inline]`

Set the owner window for this ListboxItem. This is called by all the list box widgets when an item is added or inserted.

Parameters:

  | owner | Ponter to the window that should be considered the owner of this ListboxItem.

Returns:
  Nothing

void CEGUI::ListboxItem::setSelected | ( | bool | setting | ) | `[inline]`

set whether this item is selected.

Parameters:

  | setting | true if the item is selected, false if the item is not selected.

Returns:
  Nothing.

void CEGUI::ListboxItem::setSelectionBrushImage | ( | const String & | imageset,
|  | const String & | image
| ) |

Set the selection highlighting brush image.

Parameters:

  | imageset | Name of the imagest containing the image to be used.
  | image | Name of the image to be used

Returns:
  Nothing.

void CEGUI::ListboxItem::setSelectionBrushImage | ( | const Image * | image | ) | `[inline]`

Set the selection highlighting brush image.

Parameters:

  | image | Pointer to the Image object to be used for selection highlighting.

Returns:
  Nothing.

void CEGUI::ListboxItem::setSelectionColours | ( | colour | col | ) | `[inline]`

Set the colours used for selection highlighting.

Parameters:

  | col | colour value to be used when rendering.

Returns:
  Nothing.

void CEGUI::ListboxItem::setSelectionColours | ( | colour | top_left_colour,
|  | colour | top_right_colour,
|  | colour | bottom_left_colour,
|  | colour | bottom_right_colour
| ) |

Set the colours used for selection highlighting.

Parameters:

  | top_left_colour | Colour (as ARGB value) to be applied to the top-left corner of the selection area.
  | top_right_colour | Colour (as ARGB value) to be applied to the top-right corner of the selection area.
  | bottom_left_colour | Colour (as ARGB value) to be applied to the bottom-left corner of the selection area.
  | bottom_right_colour | Colour (as ARGB value) to be applied to the bottom-right corner of the selection area.

Returns:
  Nothing.

void CEGUI::ListboxItem::setSelectionColours | ( | const ColourRect & | cols | ) | `[inline]`

Set the colours used for selection highlighting.

Parameters:

  | cols | ColourRect object describing the colours to be used.

Returns:
  Nothing.

void CEGUI::ListboxItem::setText | ( | const String & | text | ) | `[inline]`

set the text string for this list box item.

Note that even if the item does not render text, the text string can still be useful, since it is used for sorting list box items.

Parameters:

  | text | String object containing the text to set for the list box item.

Returns:
  Nothing.

void CEGUI::ListboxItem::setUserData | ( | void * | item_data | ) | `[inline]`

Set the client assigned user data attached to this lis box item.

Note that the system does not make use of this data, client code can assign any meaning it wishes to the attached data.

Parameters:

  | item_data | Pointer to the user data to attach to this list item.

Returns:
  Nothing.