00001
00002
00003
00004
00005 #ifndef __I_GUI_LIST_BOX_H_INCLUDED__
00006 #define __I_GUI_LIST_BOX_H_INCLUDED__
00007
00008 #include "IGUIElement.h"
00009 #include "SColor.h"
00010
00011 namespace irr
00012 {
00013 namespace gui
00014 {
00015 class IGUISpriteBank;
00016
00018 enum EGUI_LISTBOX_COLOR
00019 {
00021 EGUI_LBC_TEXT=0,
00023 EGUI_LBC_TEXT_HIGHLIGHT,
00025 EGUI_LBC_ICON,
00027 EGUI_LBC_ICON_HIGHLIGHT,
00029 EGUI_LBC_COUNT
00030 };
00031
00032
00034 class IGUIListBox : public IGUIElement
00035 {
00036 public:
00038 IGUIListBox(IGUIEnvironment* environment, IGUIElement* parent, s32 id, core::rect<s32> rectangle)
00039 : IGUIElement(EGUIET_LIST_BOX, environment, parent, id, rectangle) {}
00040
00042 virtual u32 getItemCount() const = 0;
00043
00045 virtual const wchar_t* getListItem(u32 id) const = 0;
00046
00048 virtual u32 addItem(const wchar_t* text) = 0;
00049
00051
00054 virtual u32 addItem(const wchar_t* text, s32 icon) = 0;
00055
00057 virtual void removeItem(u32 index) = 0;
00058
00060 virtual s32 getIcon(u32 index) const = 0;
00061
00063
00067 virtual void setSpriteBank(IGUISpriteBank* bank) = 0;
00068
00070 virtual void clear() = 0;
00071
00073 virtual s32 getSelected() const = 0;
00074
00076 virtual void setSelected(s32 index) = 0;
00077
00079 virtual void setSelected(const wchar_t *item) = 0;
00080
00082 virtual void setAutoScrollEnabled(bool scroll) = 0;
00083
00085 virtual bool isAutoScrollEnabled() const = 0;
00086
00088 virtual void setItemOverrideColor(u32 index, const video::SColor &color) = 0;
00089
00091 virtual void setItemOverrideColor(u32 index, EGUI_LISTBOX_COLOR colorType, const video::SColor &color) = 0;
00092
00094 virtual void clearItemOverrideColor(u32 index) = 0;
00095
00097 virtual void clearItemOverrideColor(u32 index, EGUI_LISTBOX_/a> &color) = 0"namespaceirr.html#a0416a53257075833e7002efd0a18e804" title="32 bit unsigned variable.">u32 index, EGUI_LISTBOX_/a> &color) = 0"namespaceirr.html#a0416a53257075833e7002efd0a18e804" title="32 bit unsigned variable.">u32 index, EGUI_LISTBOX_/a> &color) = 0"namespaceirr.html#a0416a53257075833e7002efd0a18e804" title="32 bit unsigned variable.">u32 index, EGUI_LISTBOX_/a> &color) = 0"namespaceirr.html#a0416a53257075833e7002efd0a18e804" title="32 bit unsigned variable.">u32 index, EGUI_LISTBOX_/a> &color) = 0"namespaceirr.html#a0416a53257075833e7002efd0a18e804" title="32 bit unsigned variable.">u32 index, EGUI_LISTBOX_/a> &color) = 0"namespaceirr.html#a0416a53257075833e7002efd0a18e804" title="32 bit unsigned variable.">u32 index, EGUI_LISTBOX_/a> &color) = 0"namespaceirr.html#a0416a53257075833e7002efd0a18e804" title="32 bit unsigned variable.">u32 index, EGUI_LISTBOX_/a> &color) = 0"namespaceirr.html#a0416a53257075833e7002efd0a18e804" title="32 bit unsigned variable.">u32 index, EGUI_LISTBOX_/a> &color) = 0"namespaceirr.html#a0416a53257075833e7002efd0a18e804" title="32 bit unsigned variable.">u32 index, EGUI_LISTBOX_/a> &color) = 0"namespaceirr.html#a0416a53257075833e7002efd0a18e804" title="32 bit unsigned variable.">u32 index, EGUI_LISTBOX_/a> &color) = 0"namespaceirr.html#a0416a53257075833e7002efd0a18e804" title="32 bit unsigned variable.">u32 index, EGUI_LISTBOX_/a> &color) = 0"namespaceirr.html#a0416a53257075833e7002efd0a18e804" title="32 bit unsigned variable.">u32 index, EGUI_LISTBOX_/a> &color) = 0"namespaceirr.html#a0416a53257075833e7002efd0a18e804" title="32 bit unsigned variable.">u32 index, EGUI_LISTBOX_/a> &color) = 0"namespaceirr.html#a0416a53257075833e7002efd0a18e804" title="32 bit unsigned variable.">u32 index, EGUI_LISTBOX_/a> &color) = 0"namespaceirr.html#a0416a53257075833e7002efd0a18e804" title="32 bit unsigned variable.">u32 index, EGUI_LISTBOX_/a> &color) = 0"namespaceirr.html#a0416a53257075833e7002efd0a18e804" title="32 bit unsigned variable.">u32 index, EGUI_LISTBOX_/a> &color) = 0"namespaceirr.html#a0416a53257075833e7002efd0a18e804" title="32 bit unsigned variable.">u32 index, EGUI_LISTBOX_/a> &color) = 0"namespaceirr.html#a0416a53257075833e7002efd0a18e804" title="32 bit unsigned variable.">u32 index, EGUI_LISTBOX_/a> &color) = 0"namespaceirr.html#a0416a53257075833e7002efd0a18e804" title="32 bit unsigned variable.">u32 index, EGUI_LISTBOX_/a> &color) = 0"namespaceirr.html#a0416a53257075833e7002efd0a18e804" title="32 bit unsigned variable.">u32 index, EGUI_LISTBOX_/a> &color) = 0"namespaceirr.html#a0416a53257075833e7002efd0a18e804" title="32 bit unsigned variable.">u32 index, EGUI_LISTBOX_/a> &color) = 0"namespaceirr.html#a0416a53257075833e7002efd0a18e804" title="32 bit unsigned variable.">u32 index, EGUI_LISTBOX_/a> &color) = 0"namespaceirr.html#a0416a53257075833e7002efd0a18e804" title="32 bit unsigned variable.">u32 index, EGUI_LISTBOX_/a> &color) = 0"namespaceirr.html#a0416a53257075833e7002efd0a18e804" title="32 bit unsigned variable.">u32 index,