if ( !m_hMenu )
{
- wxLogLastError("UMANewMenu failed");
+ wxLogLastError(wxT("UMANewMenu failed"));
}
// if we have a title, insert it in the beginning of the menu
}
else
{
+ // MacOS counts menu items from 1 and inserts after, therefore having the
+ // same effect as wx 0 based and inserting before, we must correct pos
+ // after however for updates to be correct
UMAInsertMenuItem(MAC_WXHMENU(m_hMenu), wxT("a") , pos);
+ pos += 1 ;
}
- SetMenuItemCommandID( MAC_WXHMENU(m_hMenu) , pos+1 , pItem->GetId() ) ;
+ SetMenuItemCommandID( MAC_WXHMENU(m_hMenu) , pos , pItem->GetId() ) ;
pItem->UpdateItemText() ;
pItem->UpdateItemBitmap() ;
pItem->UpdateItemStatus() ;
{
bool processed = FALSE;
-#if WXWIN_COMPATIBILITY
- // Try a callback
- if (m_callback)
- {
- (void)(*(m_callback))(*this, event);
- processed = TRUE;
- }
-#endif WXWIN_COMPATIBILITY
-
// Try the menu's event handler
if ( !processed && GetEventHandler())
{
*/
wxMenuBar* wxMenuBar::s_macInstalledMenuBar = NULL ;
+wxMenuBar* wxMenuBar::s_macCommonMenuBar = NULL ;
void wxMenuBar::Init()
{
wxMenuBar::~wxMenuBar()
{
+ if (s_macCommonMenuBar == this)
+ s_macCommonMenuBar = NULL;
if (s_macInstalledMenuBar == this)
{
::ClearMenuBar();
::DeleteMenu( menu->MacGetMenuId() /* m_menus[pos]->MacGetMenuId() */ ) ;
}
- menu->Detach();
-
Refresh();
}
- m_titles.Remove(pos);
+ m_titles.RemoveAt(pos);
return menu;
}