Irrlicht 3D Engine
IGUIComboBox.h
Go to the documentation of this file.
00001 // Copyright (C) 2002-2012 Nikolaus Gebhardt
00002 // This file is part of the "Irrlicht Engine".
00003 // For conditions of distribution and use, see copyright notice in irrlicht.h
00004 
00005 #ifndef __I_GUI_COMBO_BOX_H_INCLUDED__
00006 #define __I_GUI_COMBO_BOX_H_INCLUDED__
00007 
00008 #include "IGUIElement.h"
00009 
00010 namespace irr
00011 {
00012 namespace gui
00013 {
00014 
00016 
00019     class IGUIComboBox : public IGUIElement
00020     {
00021     public:
00022 
00024         IGUIComboBox(IGUIEnvironment* environment, IGUIElement* parent, s32 id, core::rect<s32> rectangle)
00025             : IGUIElement(EGUIET_COMBO_BOX, environment, parent, id, rectangle) {}
00026 
00028         virtual u32 getItemCount() const = 0;
00029 
00031         virtual const wchar_t* getItem(u32 idx) const = 0;
00032 
00034         virtual u32 getItemData(u32 idx) const = 0;
00035 
00037         virtual s32 getIndexForItemData(u32 data ) const = 0;
00038 
00040         virtual u32 addItem(const wchar_t* text, u32 data = 0) = 0;
00041 
00043 
00044         virtual void removeItem(u32 idx) = 0;
00045 
00047         virtual void clear() = 0;
00048 
00050         virtual s32 getSelected() const = 0;
00051 
00053         virtual void setSelected(s32 idx) = 0;
00054 
00056 
00060         virtual void setTextAlignment(EGUI_ALIGNMENT horizontal, EGUI_ALIGNMENT vertical) = 0;
00061 
00063         virtual void setMaxSelectionRows(u32 max) = 0;
00064 
00066         virtual u32 getMaxSelectionRows() const = 0;
00067     };
00068 
00069 
00070 } // end namespace gui
00071 } // end namespace irr
00072 
00073 #endif
00074