00001 #ifndef __CSubMenuMenuItem__ 00002 #define __CSubMenuMenuItem__ 00003 00004 #include "CMenu.hpp" 00005 #include "CMenuItem.hpp" 00006 00007 // =========================================================================== 00008 00009 using Exponent::GUI::Controls::CMenu; 00010 using Exponent::GUI::Controls::CMenuItem; 00011 00012 // =========================================================================== 00013 00014 namespace Exponent 00015 { 00016 namespace GUI 00017 { 00018 namespace Controls 00019 { 00037 class CSubMenuMenuItem : public CMenuItem 00038 { 00040 EXPONENT_CLASS_DECLARATION; 00043 // =========================================================================== 00044 00045 public: 00046 00047 // =========================================================================== 00048 00054 CSubMenuMenuItem(const CString &text, const long id); 00055 00059 virtual ~CSubMenuMenuItem(); 00060 00061 // =========================================================================== 00062 00067 virtual CMenu *getMutableSubMenu() const { return m_menu; } 00068 00073 virtual const CMenu *getSubMenu() const { return m_menu; } 00074 00075 // =========================================================================== 00076 00077 protected: 00078 00079 // =========================================================================== 00080 00081 CMenu *m_menu; 00082 }; 00083 } 00084 } 00085 } 00086 #endif // End of CSubMenuMenuItem.hpp