Go to the documentation of this file.00001
00002
00003
00004
00005 #ifndef __I_GUI_CONTEXT_MENU_H_INCLUDED__
00006 #define __I_GUI_CONTEXT_MENU_H_INCLUDED__
00007
00008 #include "IGUIElement.h"
00009
00010 namespace irr
00011 {
00012 namespace gui
00013 {
00016 enum ECONTEXT_MENU_CLOSE
00017 {
00019 ECMC_IGNORE = 0,
00020
00022 ECMC_REMOVE = 1,
00023
00025 ECMC_HIDE = 2
00026
00027
00028 };
00029
00031
00035 class IGUIContextMenu : public IGUIElement
00036 {
00037 public:
00038
00040 IGUIContextMenu(IGUIEnvironment* environment, IGUIElement* parent, s32 id, core::rect<s32> rectangle)
00041 : IGUIElement(EGUIET_CONTEXT_MENU, environment, parent, id, rectangle) {}
00042
00044 virtual void setCloseHandling(ECONTEXT_MENU_CLOSE onClose) = 0;
00045
00047 virtual ECONTEXT_MENU_CLOSE getCloseHandling() const = 0;
00048
00050 virtual u32 getItemCount() const = 0;
00051
00053
00064 virtual u32 addItem(const wchar_t* text, s32 commandId=-1, bool enabled=true,
00065 bool hasSubMenu=false, bool checked=false, bool autoChecking=false) = 0;
00066
00068
00081 virtual u32 insertItem(u32 idx, const wchar_t* text, s32 commandId=-1, bool enabled=true,
00082 bool hasSubMenu=false, bool checked=false, bool autoChecking=false) = 0;
00083
00085
00089 virtual s32 findItemWithCommandId(s32 commandId, u32 idxStartSearch=0) const = 0;
00090
00092 virtual void addSeparator() = 0;
00093
00095
00096 virtual const wchar_t* getItemText(u32 idx) const = 0;
00097
00099
00101 virtual void setItemText(u32 idx, const wchar_t* text) = 0;
00102
00104
00105 virtual bool isItemEnabled(u32 idx) const = 0;
00106
00108
00110 virtual void setItemEnabled(u32 idx, bool enabled) = 0;
00111
00113
00115 virtual void setItemChecked(u32 idx, bool enabled) = 0;
00116
00118
00119 virtual bool isItemChecked(u32 idx) const = 0;
00120
00122
00123 virtual void removeItem(u32 idx) = 0;
00124
00126 virtual void removeAllItems() = 0;
00127
00129
00130 virtual s32 getSelectedItem() const = 0;
00131
00133
00134 virtual s32 getItemCommandId(u32 idx) const = 0;
00135
00137
00140 virtual void setItemCommandId(u32 idx, s32 id) = 0;
00141
00143
00146 virtual IGUIContextMenu* getSubMenu(u32 idx) const = 0;
00147
00149 virtual void setItemAutoChecking(u32 idx, bool autoChecking) = 0;
00150
00152 virtual bool getItemAutoChecking(u32 idx) const = 0;
00153
00155 virtual void setEventParent(IGUIElement *parent) = 0;
00156 };
00157
00158 }
00159 }
00160
00161 #endif
00162