Respect wxUSE_MENUS in toolbar base classes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64854 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
parent
7304f3850d
commit
4e8d90a7ce
@ -199,10 +199,12 @@ public:
|
||||
virtual void Detach() { m_tbar = NULL; }
|
||||
virtual void Attach(wxToolBarBase *tbar) { m_tbar = tbar; }
|
||||
|
||||
#if wxUSE_MENUS
|
||||
// these methods are only for tools of wxITEM_DROPDOWN kind (but even such
|
||||
// tools can have a NULL associated menu)
|
||||
virtual void SetDropdownMenu(wxMenu *menu);
|
||||
wxMenu *GetDropdownMenu() const { return m_dropdownMenu; }
|
||||
#endif
|
||||
|
||||
protected:
|
||||
// common part of all ctors
|
||||
@ -222,7 +224,10 @@ protected:
|
||||
m_toggled = false;
|
||||
m_enabled = true;
|
||||
|
||||
#if wxUSE_MENUS
|
||||
m_dropdownMenu = NULL;
|
||||
#endif
|
||||
|
||||
}
|
||||
|
||||
wxToolBarBase *m_tbar; // the toolbar to which we belong (may be NULL)
|
||||
@ -257,7 +262,9 @@ protected:
|
||||
wxString m_shortHelpString;
|
||||
wxString m_longHelpString;
|
||||
|
||||
#if wxUSE_MENUS
|
||||
wxMenu *m_dropdownMenu;
|
||||
#endif
|
||||
|
||||
DECLARE_DYNAMIC_CLASS_NO_COPY(wxToolBarToolBase)
|
||||
};
|
||||
@ -569,8 +576,10 @@ public:
|
||||
// don't want toolbars to accept the focus
|
||||
virtual bool AcceptsFocus() const { return false; }
|
||||
|
||||
#if wxUSE_MENUS
|
||||
// Set dropdown menu
|
||||
bool SetDropdownMenu(int toolid, wxMenu *menu);
|
||||
#endif
|
||||
|
||||
protected:
|
||||
// to implement in derived classes
|
||||
|
@ -61,7 +61,10 @@ IMPLEMENT_DYNAMIC_CLASS(wxToolBarToolBase, wxObject)
|
||||
|
||||
wxToolBarToolBase::~wxToolBarToolBase()
|
||||
{
|
||||
#if wxUSE_MENUS
|
||||
delete m_dropdownMenu;
|
||||
#endif
|
||||
|
||||
if ( IsControl() )
|
||||
GetControl()->Destroy();
|
||||
}
|
||||
@ -121,11 +124,13 @@ bool wxToolBarToolBase::SetLongHelp(const wxString& help)
|
||||
}
|
||||
|
||||
|
||||
#if wxUSE_MENUS
|
||||
void wxToolBarToolBase::SetDropdownMenu(wxMenu* menu)
|
||||
{
|
||||
delete m_dropdownMenu;
|
||||
m_dropdownMenu = menu;
|
||||
}
|
||||
#endif
|
||||
|
||||
|
||||
// ----------------------------------------------------------------------------
|
||||
@ -729,6 +734,7 @@ void wxToolBarBase::UpdateWindowUI(long flags)
|
||||
}
|
||||
}
|
||||
|
||||
#if wxUSE_MENUS
|
||||
bool wxToolBarBase::SetDropdownMenu(int toolid, wxMenu* menu)
|
||||
{
|
||||
wxToolBarToolBase * const tool = FindById(toolid);
|
||||
@ -741,6 +747,7 @@ bool wxToolBarBase::SetDropdownMenu(int toolid, wxMenu* menu)
|
||||
|
||||
return true;
|
||||
}
|
||||
#endif
|
||||
|
||||
#if WXWIN_COMPATIBILITY_2_8
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user