Irrlicht 3D Engine
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
IGUIListBox.h
Go to the documentation of this file.
1 // Copyright (C) 2002-2012 Nikolaus Gebhardt
2 // This file is part of the "Irrlicht Engine".
3 // For conditions of distribution and use, see copyright notice in irrlicht.h
4 
5 #ifndef __I_GUI_LIST_BOX_H_INCLUDED__
6 #define __I_GUI_LIST_BOX_H_INCLUDED__
7 
8 #include "IGUIElement.h"
9 #include "SColor.h"
10 
11 namespace irr
12 {
13 namespace gui
14 {
15  class IGUISpriteBank;
16 
19  {
30  };
31 
32 
34 
38  class IGUIListBox : public IGUIElement
39  {
40  public:
42  IGUIListBox(IGUIEnvironment* environment, IGUIElement* parent, s32 id, core::rect<s32> rectangle)
43  : IGUIElement(EGUIET_LIST_BOX, environment, parent, id, rectangle) {}
44 
46  virtual u32 getItemCount() const = 0;
47 
49  virtual const wchar_t* getListItem(u32 id) const = 0;
50 
52  virtual u32 addItem(const wchar_t* text) = 0;
53 
55 
58  virtual u32 addItem(const wchar_t* text, s32 icon) = 0;
59 
61  virtual void removeItem(u32 index) = 0;
62 
64 
65  virtual s32 getItemAt(s32 xpos, s32 ypos) const = 0;
66 
68  virtual s32 getIcon(u32 index) const = 0;
69 
71 
75  virtual void setSpriteBank(IGUISpriteBank* bank) = 0;
76 
78  virtual void clear() = 0;
79 
81  virtual s32 getSelected() const = 0;
82 
84  virtual void setSelected(s32 index) = 0;
85 
87  virtual void setSelected(const wchar_t *item) = 0;
88 
90  virtual void setAutoScrollEnabled(bool scroll) = 0;
91 
93  virtual bool isAutoScrollEnabled() const = 0;
94 
96  virtual void setItemOverrideColor(u32 index, video::SColor color) = 0;
97 
99  virtual void setItemOverrideColor(u32 index, EGUI_LISTBOX_COLOR colorType, video::SColor color) = 0;
100 
102  virtual void clearItemOverrideColor(u32 index) = 0;
103 
105  virtual void clearItemOverrideColor(u32 index, EGUI_LISTBOX_COLOR colorType) = 0;
106 
108  virtual bool hasItemOverrideColor(u32 index, EGUI_LISTBOX_COLOR colorType) const = 0;
109 
111  virtual video::SColor getItemOverrideColor(u32 index, EGUI_LISTBOX_COLOR colorType) const = 0;
112 
114  virtual video::SColor getItemDefaultColor(EGUI_LISTBOX_COLOR colorType) const = 0;
115 
117  virtual void setItem(u32 index, const wchar_t* text, s32 icon) = 0;
118 
120 
121  virtual s32 insertItem(u32 index, const wchar_t* text, s32 icon) = 0;
122 
124  virtual void swapItems(u32 index1, u32 index2) = 0;
125 
127  virtual void setItemHeight( s32 height ) = 0;
128 
130  virtual void setDrawBackground(bool draw) = 0;
131 };
132 
133 
134 } // end namespace gui
135 } // end namespace irr
136 
137 #endif
138