X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/0e528b997e87057723d1b823dd86e3f69ebb672b..b58088819ba72c430ad028490fc45e1fc79694f0:/include/wx/menu.h diff --git a/include/wx/menu.h b/include/wx/menu.h index 83576de1cf..c297b599a6 100644 --- a/include/wx/menu.h +++ b/include/wx/menu.h @@ -35,6 +35,21 @@ class WXDLLEXPORT wxMenuItem; WX_DECLARE_LIST(wxMenu, wxMenuList); WX_DECLARE_LIST(wxMenuItem, wxMenuItemList); +// ---------------------------------------------------------------------------- +// conditional compilation +// ---------------------------------------------------------------------------- + +// having callbacks in menus is a wxWin 1.6x feature which should be replaced +// with event tables in wxWin 2.xx code - however provide it because many +// people like it a lot by default +#ifndef wxUSE_MENU_CALLBACK + #if WXWIN_COMPATIBILITY_2 + #define wxUSE_MENU_CALLBACK 1 + #else + #define wxUSE_MENU_CALLBACK 0 + #endif // WXWIN_COMPATIBILITY_2 +#endif // !defined(wxUSE_MENU_CALLBACK) + // ---------------------------------------------------------------------------- // wxMenu // ---------------------------------------------------------------------------- @@ -175,12 +190,15 @@ public: { return FindItem(itemId, itemMenu); } wxList& GetItems() const { return (wxList &)m_items; } +#endif // WXWIN_COMPATIBILITY +#if wxUSE_MENU_CALLBACK // wxWin 1.6x compatible menu event handling wxFunction GetCallback() const { return m_callback; } void Callback(const wxFunction func) { m_callback = func; } + wxFunction m_callback; -#endif // WXWIN_COMPATIBILITY +#endif // wxUSE_MENU_CALLBACK // unlike FindItem(), this function doesn't recurse but only looks through // our direct children and also may return the index of the found child if @@ -279,6 +297,9 @@ public: // if menu is !NULL, it will be filled with wxMenu this item belongs to virtual wxMenuItem* FindItem(int id, wxMenu **menu = NULL) const = 0; + // find menu by its caption, return wxNOT_FOUND on failure + int FindMenu(const wxString& title) const; + // item access // -----------