15#include "../../../commands/CommandManager.h"
17#include "../../../ProjectSettings.h"
18#include "../../../RefreshCode.h"
19#include "../../../RealtimeEffectPanel.h"
21#include "../../../TrackPanelAx.h"
22#include "../../../TrackInfo.h"
23#include "../../../TrackPanelMouseEvent.h"
24#include "../../../TrackUtilities.h"
29(
const std::shared_ptr<Track> &pTrack,
const wxRect &rect )
58 return commandManager.DescribeCommandsAndShortcuts(&command, 1u);
62(std::weak_ptr<MuteButtonHandle> &holder,
63 const wxMouseState &state,
const wxRect &rect,
73 if ( pTrack && buttonRect.Contains(state.m_x, state.m_y) ) {
74 auto result = std::make_shared<MuteButtonHandle>(pTrack, buttonRect);
85(
const std::shared_ptr<Track> &pTrack,
const wxRect &rect )
94(
const wxMouseEvent &event,
AudacityProject *pProject, wxWindow *WXUNUSED(pParent))
114 return commandManager.DescribeCommandsAndShortcuts( &command, 1u );
118(std::weak_ptr<SoloButtonHandle> &holder,
119 const wxMouseState &state,
const wxRect &rect,
130 if ( pTrack && buttonRect.Contains(state.m_x, state.m_y) ) {
131 auto result = std::make_shared<SoloButtonHandle>( pTrack, buttonRect );
142(
const std::shared_ptr<Track> &pTrack,
const wxRect &rect )
151(
const wxMouseEvent &event,
AudacityProject *pProject, wxWindow *pParent)
160 auto name =
XO(
"Effects");
177(std::weak_ptr<EffectsButtonHandle> &holder,
178 const wxMouseState &state,
const wxRect &rect,
189 if ( pTrack && buttonRect.Contains(state.m_x, state.m_y) ) {
190 auto result = std::make_shared<EffectsButtonHandle>( pTrack, buttonRect );
std::shared_ptr< UIHandle > UIHandlePtr
const TranslatableString name
declares abstract base class Track, TrackList, and iterators over TrackList
std::shared_ptr< Subclass > AssignUIHandlePtr(std::weak_ptr< Subclass > &holder, const std::shared_ptr< Subclass > &pNew)
The top-level handle to an Audacity project. It serves as a source of events that other objects can b...
Subclass & Get(const RegisteredFactory &key)
Get reference to an attachment, creating on demand if not present, down-cast it to Subclass.
static CommandManager & Get(AudacityProject &project)
ComponentInterfaceSymbol pairs a persistent string identifier used internally with an optional,...
static void GetEffectsRect(const wxRect &rect, wxRect &dest, const Track *pTrack)
static void GetMuteSoloRect(const wxRect &rect, wxRect &dest, bool solo, bool bHasSoloButton, const Track *pTrack)
AudioTrack subclass that can also be audibly replayed by the program.
static ProjectSettings & Get(AudacityProject &project)
void ShowPanel(Track *track, bool focus)
static RealtimeEffectPanel & Get(AudacityProject &project)
Holds a msgid for the translation catalog; may also bind format arguments.
AUDACITY_DLL_API bool HideTopItem(const wxRect &rect, const wxRect &subRect, int allowance=0)
void DoTrackMute(AudacityProject &project, Track *t, bool exclusive)
void DoTrackSolo(AudacityProject &project, Track *t, bool exclusive)