29 #ifndef _CEGUIListboxItem_h_
30 #define _CEGUIListboxItem_h_
33 #include "../String.h"
34 #include "../ColourRect.h"
35 #include "../TextUtils.h"
40 # pragma warning(push)
41 # pragma warning(disable : 4251)
51 class CEGUIEXPORT ListboxItem :
52 public AllocatedObject<ListboxItem>
58 static const Colour DefaultSelectionColour;
68 ListboxItem(
const String& text, uint item_id = 0,
void* item_data = 0,
bool disabled =
false,
bool auto_delete =
true);
75 virtual ~ListboxItem(
void);
91 const String& getTooltipText(
void)
const {
return d_tooltipText;}
93 const String& getText(
void)
const {
return d_textLogical;}
96 const String& getTextVisual()
const;
108 uint getID(
void)
const {
return d_itemID;}
121 void* getUserData(
void)
const {
return d_itemData;}
131 bool isSelected(
void)
const {
return d_selected;}
141 bool isDisabled(
void)
const {
return d_disabled;}
154 bool isAutoDeleted(
void)
const {
return d_autoDelete;}
166 const Window* getOwnerWindow()
const {
return d_owner;}
176 ColourRect getSelectionColours(
void)
const {
return d_selectCols;}
186 const Image* getSelectionBrushImage(
void)
const {
return d_selectBrush;}
205 virtual void setText(
const String& text);
207 void setTooltipText(
const String& text) {d_tooltipText = text;}
222 void setID(uint item_id) {d_itemID = item_id;}
238 void setUserData(
void* item_data) {d_itemData = item_data;}
251 void setSelected(
bool setting) {d_selected = setting;}
264 void setDisabled(
bool setting) {d_disabled = setting;}
279 void setAutoDeleted(
bool setting) {d_autoDelete = setting;}
293 void setOwnerWindow(
const Window* owner) {d_owner = owner;}
306 void setSelectionColours(
const ColourRect& cols) {d_selectCols = cols;}
328 void setSelectionColours(
Colour top_left_colour,
Colour top_right_colour,
Colour bottom_left_colour,
Colour bottom_right_colour);
341 void setSelectionColours(
Colour col) {setSelectionColours(col, col, col, col);}
354 void setSelectionBrushImage(
const Image* image) {d_selectBrush = image;}
367 void setSelectionBrushImage(
const String& name);
384 virtual bool handleFontRenderSizeChange(
const Font*
const font);
396 virtual Sizef getPixelSize(
void)
const = 0;
416 float alpha,
const Rectf* clipper)
const = 0;
444 ColourRect getModulateAlphaColourRect(
const ColourRect& cols,
float alpha)
const;
452 Colour calculateModulatedAlphaColour(Colour col,
float alpha)
const;
458 String d_textLogical;
460 BidiVisualMapping* d_bidiVisualMapping;
462 mutable bool d_bidiDataValid;
463 String d_tooltipText;
471 const Image* d_selectBrush;
476 #if defined(_MSC_VER)
477 # pragma warning(pop)
480 #endif // end of guard _CEGUIListboxItem_h_