X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/1e93ca17294b6da0d8cf63bffb0017cdfa0013df..cda66071f17f062779a7009065e5ff7dd958440b:/src/common/menucmn.cpp diff --git a/src/common/menucmn.cpp b/src/common/menucmn.cpp index 7ce3d36fde..5422c06677 100644 --- a/src/common/menucmn.cpp +++ b/src/common/menucmn.cpp @@ -285,10 +285,6 @@ void wxMenuBase::Init(long style) m_style = style; m_clientData = (void *)NULL; m_eventHandler = this; - -#if wxUSE_MENU_CALLBACK - m_callback = (wxFunction) NULL; -#endif // wxUSE_MENU_CALLBACK } wxMenuBase::~wxMenuBase() @@ -520,6 +516,15 @@ wxMenuItem *wxMenuBase::FindChildItem(int id, size_t *ppos) const return item; } +// find by position +wxMenuItem* wxMenuBase::FindItemByPosition(size_t position) const +{ + wxCHECK_MSG( position < m_items.GetCount(), NULL, + _T("wxMenu::FindItemByPosition(): invalid menu index") ); + + return m_items.Item( position )->GetData(); +} + // ---------------------------------------------------------------------------- // wxMenu helpers used by derived classes // ---------------------------------------------------------------------------- @@ -548,7 +553,7 @@ void wxMenuBase::UpdateUI(wxEvtHandler* source) if ( source->ProcessEvent(event) ) { - // if anything changed, update the chanegd attribute + // if anything changed, update the changed attribute if (event.GetSetText()) SetLabel(id, event.GetText()); if (event.GetSetChecked()) @@ -561,7 +566,7 @@ void wxMenuBase::UpdateUI(wxEvtHandler* source) if ( item->GetSubMenu() ) item->GetSubMenu()->UpdateUI(source); } - //else: item is a separator (which don't process update UI events) + //else: item is a separator (which doesn't process update UI events) node = node->GetNext(); } @@ -575,15 +580,6 @@ bool wxMenuBase::SendEvent(int id, int checked) bool processed = FALSE; -#if wxUSE_MENU_CALLBACK - // Try a callback - if (m_callback) - { - (void)(*(m_callback))(*this, event); - processed = TRUE; - } -#endif // wxUSE_MENU_CALLBACK - // Try the menu's event handler if ( !processed ) {