13#ifndef __AUDACITY_TOOLMANAGER__
14#define __AUDACITY_TOOLMANAGER__
19#include <wx/eventfilter.h>
28#include "../commands/CommandFunctors.h"
29#include "../commands/CommandManager.h"
54 ,
public wxEventFilter
61 wxWindow*( wxWindow& )
74 void LayoutToolBars();
95 void RegenerateTooltips();
97 int FilterEvent(wxEvent &event)
override;
102 template<
typename F >
106 fun(pair.second.get());
117 static void ModifyAllProjectToolbarMenus();
124 void OnTimer( wxTimerEvent & event );
125 void OnMouse( wxMouseEvent & event );
126 void OnCaptureLost( wxMouseCaptureLostEvent & event );
127 void UndockBar( wxPoint mp );
129 void HandleEscapeKey();
132 void OnIndicatorCreate( wxWindowCreateEvent & event );
133 void OnIndicatorPaint( wxPaintEvent & event );
141 wxWindowRef mLastFocus{};
154 std::unique_ptr<wxRegion> mLeft,
mDown;
160#if defined(__WXMAC__)
168 std::map<Identifier, ToolBar::Holder>
mBars;
170 wxPoint mPrevPosition {};
181 DECLARE_EVENT_TABLE()
214 void OnPaint( wxPaintEvent & WXUNUSED(event) );
216 void OnMotion( wxMouseEvent & event );
218 void OnCaptureLost( wxMouseCaptureLostEvent & WXUNUSED(event) );
224 void OnClose( wxCloseEvent & event );
241 DECLARE_EVENT_TABLE()
253 std::vector< Identifier > excludeIds = {} );
Utility ClientData::Site to register hooks into a host class that attach client data.
wxEvtHandler CommandHandlerObject
const TranslatableString name
std::unique_ptr< T, Destroyer< T > > Destroy_ptr
a convenience for using Destroyer
static const AttachedProjectObjects::RegisteredFactory manager
The top-level handle to an Audacity project. It serves as a source of events that other objects can b...
CommandContext provides additional information to an 'Apply()' command. It provides the project,...
Global function-valued variable, adding a convenient Call()
An explicitly nonlocalized string, not meant for the user to see.
A move-only handle representing a connection to a Publisher.
A top-level window associated with a project, and handling scrollbars and zooming.
Holds a msgid for the translation catalog; may also bind format arguments.
Services * Get()
Fetch the global instance, or nullptr if none is yet installed.
auto end(const Ptr< Type, BaseDeleter > &p)
Enables range-for.
auto begin(const Ptr< Type, BaseDeleter > &p)
Enables range-for.
A convenient default parameter for class template Site.