RTTI accessors for menus

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@23220 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Stefan Csomor
2003-08-25 23:26:49 +00:00
parent 252b53f55c
commit 6c7a1f8274

View File

@@ -123,6 +123,25 @@ private:
// Menu Bar (a la Windows) // Menu Bar (a la Windows)
// ---------------------------------------------------------------------------- // ----------------------------------------------------------------------------
class WXDLLEXPORT wxMenuInfo : public wxObject
{
public :
wxMenuInfo() { m_menu = NULL ; }
virtual ~wxMenuInfo() { }
void Create( wxMenu *menu , const wxString &title )
{ m_menu = menu ; m_title = title ; }
wxMenu* GetMenu() const { return m_menu ; }
wxString GetTitle() const { return m_title ; }
private :
wxMenu *m_menu ;
wxString m_title ;
DECLARE_DYNAMIC_CLASS(wxMenuInfo) ;
} ;
WX_DECLARE_EXPORTED_LIST(wxMenuInfo, wxMenuInfoList );
class WXDLLEXPORT wxMenuBar : public wxMenuBarBase class WXDLLEXPORT wxMenuBar : public wxMenuBarBase
{ {
public: public:
@@ -136,6 +155,9 @@ public:
virtual ~wxMenuBar(); virtual ~wxMenuBar();
// menubar construction // menubar construction
bool Append( wxMenuInfo *info ) { return Append( info->GetMenu() , info->GetTitle() ) ; }
const wxMenuInfoList& GetMenuInfos() const ;
virtual bool Append( wxMenu *menu, const wxString &title ); virtual bool Append( wxMenu *menu, const wxString &title );
virtual bool Insert(size_t pos, wxMenu *menu, const wxString& title); virtual bool Insert(size_t pos, wxMenu *menu, const wxString& title);
virtual wxMenu *Replace(size_t pos, wxMenu *menu, const wxString& title); virtual wxMenu *Replace(size_t pos, wxMenu *menu, const wxString& title);
@@ -180,6 +202,7 @@ protected:
void Init(); void Init();
wxArrayString m_titles ; wxArrayString m_titles ;
wxMenuInfoList m_menuInfos;
WXHMENU m_hMenu; WXHMENU m_hMenu;