X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/76b49cf49ba9ee9f3eeec9730cb4bc4569ab17f1..9d5507f7a2701395e1d5c121bd877bb9066ee6ea:/src/xrc/xh_menu.cpp diff --git a/src/xrc/xh_menu.cpp b/src/xrc/xh_menu.cpp index 47e5494d7c..7174aa7dda 100644 --- a/src/xrc/xh_menu.cpp +++ b/src/xrc/xh_menu.cpp @@ -15,16 +15,15 @@ #pragma hdrstop #endif -#if wxUSE_XRC +#if wxUSE_XRC && wxUSE_MENUS #include "wx/xrc/xh_menu.h" #ifndef WX_PRECOMP #include "wx/frame.h" + #include "wx/menu.h" #endif -#include "wx/menu.h" - IMPLEMENT_DYNAMIC_CLASS(wxMenuXmlHandler, wxXmlResourceHandler) wxMenuXmlHandler::wxMenuXmlHandler() : @@ -37,7 +36,9 @@ wxObject *wxMenuXmlHandler::DoCreateResource() { if (m_class == wxT("wxMenu")) { - wxMenu *menu = new wxMenu(GetStyle()); + wxMenu *menu = m_instance ? wxStaticCast(m_instance, wxMenu) + : new wxMenu(GetStyle()); + wxString title = GetText(wxT("label")); wxString help = GetText(wxT("help")); @@ -87,7 +88,7 @@ wxObject *wxMenuXmlHandler::DoCreateResource() kind = wxITEM_RADIO; if (GetBool(wxT("checkable"))) { - wxASSERT_MSG( kind == wxITEM_NORMAL, _T("can't have both checkable and radion button at once") ); + wxASSERT_MSG( kind == wxITEM_NORMAL, _T("can't have both checkable and radio button at once") ); kind = wxITEM_CHECK; } @@ -148,4 +149,4 @@ bool wxMenuBarXmlHandler::CanHandle(wxXmlNode *node) return IsOfClass(node, wxT("wxMenuBar")); } -#endif // wxUSE_XRC +#endif // wxUSE_XRC && wxUSE_MENUS