#include "wx/wxprec.h"
+#if wxUSE_MENUS
+
#include "wx/menuitem.h"
#include "wx/stockitem.h"
m_radioGroup.start = -1;
m_isRadioGroupStart = false;
-
+
wxString text = wxStripMenuCodes(m_text);
if (text.IsEmpty() && !IsSeparator())
{
wxASSERT_MSG(wxIsStockID(GetId()), wxT("A non-stock menu item with an empty label?"));
text = wxGetStockLabel(GetId(), wxSTOCK_WITH_ACCELERATOR|wxSTOCK_WITH_MNEMONIC);
}
-
+
wxAcceleratorEntry *entry = wxAcceleratorEntry::Create( m_text ) ;
- m_peer = wxMenuItemImpl::Create( this, pParentMenu, id, text, entry, strHelp, kind, pSubMenu );
+ // use accessors for ID and Kind because they might have been changed in the base constructor
+ m_peer = wxMenuItemImpl::Create( this, pParentMenu, GetId(), text, entry, strHelp, GetKind(), pSubMenu );
delete entry;
}
// eg. BeginAppModalStateForWindow() will disable menus and ignore this change
// which in turn causes m_isEnabled to become out of sync with real menuitem state
#if wxOSX_USE_CARBON
- && !(m_parentMenu && !IsMenuItemEnabled(MAC_WXHMENU(m_parentMenu->GetHMenu()), 0))
+ && !(m_parentMenu && !IsMenuItemEnabled(MAC_WXHMENU(m_parentMenu->GetHMenu()), 0))
#endif
)
// always update builtin menuitems
const wxMenuItemList& items = m_parentMenu->GetMenuItems();
int pos = items.IndexOf(this);
wxCHECK_RET( pos != wxNOT_FOUND,
- _T("menuitem not found in the menu items list?") );
+ wxT("menuitem not found in the menu items list?") );
// get the radio group range
int start, end;
{
if ( !m_parentMenu )
return;
-
+
if ( m_bitmap.Ok() )
{
m_peer->SetBitmap( m_bitmap );
if ( IsSeparator() )
return ;
-
+
if ( IsCheckable() && IsChecked() )
m_peer->Check( true );
else
m_peer->Check( false );
-
+
m_peer->Enable( IsEnabled() );
}
wxASSERT_MSG(wxIsStockID(GetId()), wxT("A non-stock menu item with an empty label?"));
text = wxGetStockLabel(GetId(), wxSTOCK_WITH_ACCELERATOR|wxSTOCK_WITH_MNEMONIC);
}
-
+
wxAcceleratorEntry *entry = wxAcceleratorEntry::Create( m_text ) ;
m_peer->SetLabel( text, entry );
delete entry ;
{
return new wxMenuItem(parentMenu, id, name, help, kind, subMenu);
}
+
+#endif