From: Vadim Zeitlin Date: Mon, 18 Aug 2008 13:27:58 +0000 (+0000) Subject: add support for using bitmap2 for checked menu item bitmap in XRC (#9878) X-Git-Url: https://git.saurik.com/wxWidgets.git/commitdiff_plain/d2ffaf168d8c992e7e431032d6f3e53989b33ffe add support for using bitmap2 for checked menu item bitmap in XRC (#9878) git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@55118 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- diff --git a/docs/tech/tn0014.txt b/docs/tech/tn0014.txt index 7d0713fab1..ce22912fdf 100644 --- a/docs/tech/tn0014.txt +++ b/docs/tech/tn0014.txt @@ -404,6 +404,30 @@ wxMenuBar and wxStatusBar children; objects of these types are automatically set as frame's tool-, menu- and statusbar respectively. +wxMenu +------ + +wxMenu objects can contain objects of class "separator" and "break" as well as +normal menu items, of class "wxMenuItem" described below. The menu itself can +also have the following elements: + +label I18nString "" +help I18nString "" +enabled Boolean true +style Style[wxMenu] only wxMENU_TEAROFF currently + +wxMenuItem +---------- + +label I18nString "" +accel String "" +bitmap Bitmap (empty) +bitmap2 Bitmap checked bitmap, wxMSW only +checkable Boolean false +radio Boolean false +enabled Boolean true +checked Boolean false ("checkable" and "radio") + wxMDIParentFrame ---------------- diff --git a/src/xrc/xh_menu.cpp b/src/xrc/xh_menu.cpp index 7174aa7dda..c278e30691 100644 --- a/src/xrc/xh_menu.cpp +++ b/src/xrc/xh_menu.cpp @@ -97,7 +97,17 @@ wxObject *wxMenuXmlHandler::DoCreateResource() #if (!defined(__WXMSW__) && !defined(__WXPM__)) || wxUSE_OWNER_DRAWN if (HasParam(wxT("bitmap"))) - mitem->SetBitmap(GetBitmap(wxT("bitmap"), wxART_MENU)); + { + // currently only wxMSW has support for using different checked + // and unchecked bitmaps for menu items +#ifdef __WXMSW__ + if (HasParam(wxT("bitmap2"))) + mitem->SetBitmaps(GetBitmap(wxT("bitmap2"), wxART_MENU), + GetBitmap(wxT("bitmap"), wxART_MENU)); + else +#endif // __WXMSW__ + mitem->SetBitmap(GetBitmap(wxT("bitmap"), wxART_MENU)); + } #endif p_menu->Append(mitem); mitem->Enable(GetBool(wxT("enabled"), true));