From a684b88f30bf188bc8e70bb3fb164b5f06ea828a Mon Sep 17 00:00:00 2001 From: Stefan Csomor Date: Wed, 23 May 2007 04:19:39 +0000 Subject: [PATCH] bitmap support factored git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/WX_2_8_BRANCH@46180 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- include/wx/mac/carbon/menuitem.h | 2 ++ src/mac/carbon/menu.cpp | 6 ++++-- src/mac/carbon/menuitem.cpp | 7 +++++++ 3 files changed, 13 insertions(+), 2 deletions(-) diff --git a/include/wx/mac/carbon/menuitem.h b/include/wx/mac/carbon/menuitem.h index 7f89ee9420..dc2b80ecd1 100644 --- a/include/wx/mac/carbon/menuitem.h +++ b/include/wx/mac/carbon/menuitem.h @@ -47,6 +47,8 @@ public: void UpdateItemBitmap() ; void UpdateItemText() ; void UpdateItemStatus() ; + + void DoUpdateItemBitmap( WXHMENU menu, wxUint16 index) ; // mark item as belonging to the given radio group void SetAsRadioGroupStart(); diff --git a/src/mac/carbon/menu.cpp b/src/mac/carbon/menu.cpp index 84ed8d9634..305374bb50 100644 --- a/src/mac/carbon/menu.cpp +++ b/src/mac/carbon/menu.cpp @@ -754,8 +754,10 @@ void wxMenuBar::MacInstallMenuBar() if ( mh ) { UMAAppendMenuItem(mh, wxStripMenuCodes(item->GetText()) , wxFont::GetDefaultEncoding(), entry); - SetMenuItemCommandID( mh , CountMenuItems(mh) , wxIdToMacCommand ( item->GetId() ) ) ; - SetMenuItemRefCon( mh , CountMenuItems(mh) , (URefCon) item ) ; + MenuItemIndex position = CountMenuItems(mh); + SetMenuItemCommandID( mh , position, wxIdToMacCommand ( item->GetId() ) ); + SetMenuItemRefCon( mh , position, (URefCon) item ); + item->DoUpdateItemBitmap( mh, position ); } } diff --git a/src/mac/carbon/menuitem.cpp b/src/mac/carbon/menuitem.cpp index fc522da38e..402f8b5b65 100644 --- a/src/mac/carbon/menuitem.cpp +++ b/src/mac/carbon/menuitem.cpp @@ -63,6 +63,13 @@ void wxMenuItem::UpdateItemBitmap() MenuHandle mhandle = MAC_WXHMENU(m_parentMenu->GetHMenu()) ; MenuItemIndex index = m_parentMenu->MacGetIndexFromItem( this ) ; + DoUpdateItemBitmap( mhandle, index ); +} + +void wxMenuItem::DoUpdateItemBitmap( WXHMENU menu, wxUint16 index) +{ + MenuHandle mhandle = (MenuHandle) menu; + if ( mhandle == NULL || index == 0) return ;