X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/4f97cb83cfce5027a8c000afb176e74757524cc7..71a77e77d1738cd48d7505efda59ab8110d88766:/src/ribbon/buttonbar.cpp diff --git a/src/ribbon/buttonbar.cpp b/src/ribbon/buttonbar.cpp index a40938b9e0..b558e6daac 100644 --- a/src/ribbon/buttonbar.cpp +++ b/src/ribbon/buttonbar.cpp @@ -1139,6 +1139,32 @@ void wxRibbonButtonBar::OnMouseLeave(wxMouseEvent& WXUNUSED(evt)) if(repaint) Refresh(false); } +wxRibbonButtonBarButtonBase *wxRibbonButtonBar::GetItem(size_t n) const +{ + wxCHECK_MSG(n >= 0 && n < m_buttons.GetCount(), NULL, "wxRibbonButtonBar item's index is out of bound"); + return m_buttons.Item(n); +} + +wxRibbonButtonBarButtonBase *wxRibbonButtonBar::GetItemById(int button_id) const +{ + size_t count = m_buttons.GetCount(); + for ( size_t i = 0; i < count; ++i ) + { + wxRibbonButtonBarButtonBase* button = m_buttons.Item(i); + if ( button->id == button_id ) + return button; + } + + return NULL; + +} + +int wxRibbonButtonBar::GetItemId(wxRibbonButtonBarButtonBase *item) const +{ + wxCHECK_MSG(item != NULL, wxNOT_FOUND, "wxRibbonButtonBar item should not be NULL"); + return item->id; +} + bool wxRibbonButtonBarEvent::PopupMenu(wxMenu* menu) {