15#include "../../../RefreshCode.h"
16#include "../../../RealtimeEffectPanel.h"
19#include "../../ui/CommonTrackInfo.h"
20#include "../../../TrackPanelMouseEvent.h"
21#include "../../../TrackUtilities.h"
26(
const std::shared_ptr<Track> &pTrack,
const wxRect &rect )
55 return commandManager.DescribeCommandsAndShortcuts(&command, 1u);
59(std::weak_ptr<MuteButtonHandle> &holder,
60 const wxMouseState &state,
const wxRect &rect,
70 if ( pTrack && buttonRect.Contains(state.m_x, state.m_y) ) {
71 auto result = std::make_shared<MuteButtonHandle>(pTrack, buttonRect);
82(
const std::shared_ptr<Track> &pTrack,
const wxRect &rect )
91(
const wxMouseEvent &event,
AudacityProject *pProject, wxWindow *WXUNUSED(pParent))
111 return commandManager.DescribeCommandsAndShortcuts( &command, 1u );
115(std::weak_ptr<SoloButtonHandle> &holder,
116 const wxMouseState &state,
const wxRect &rect,
127 if ( pTrack && buttonRect.Contains(state.m_x, state.m_y) ) {
128 auto result = std::make_shared<SoloButtonHandle>( pTrack, buttonRect );
139(
const std::shared_ptr<Track> &pTrack,
const wxRect &rect )
148(
const wxMouseEvent &event,
AudacityProject *pProject, wxWindow *pParent)
158 auto name =
XO(
"Effects");
175(std::weak_ptr<EffectsButtonHandle> &holder,
176 const wxMouseState &state,
const wxRect &rect,
187 if ( pTrack && buttonRect.Contains(state.m_x, state.m_y) ) {
188 auto result = std::make_shared<EffectsButtonHandle>( pTrack, buttonRect );
std::shared_ptr< UIHandle > UIHandlePtr
Extends Track with notions of mute and solo setting.
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 GetMuteSoloRect(const wxRect &rect, wxRect &dest, bool solo, const Track *pTrack)
static void GetEffectsButtonRect(const wxRect &rect, wxRect &dest, const Track *pTrack)
AudioTrack subclass that can also be audibly replayed by the program.
void ShowPanel(SampleTrack *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)
AUDACITY_DLL_API void DoTrackSolo(AudacityProject &project, Track &track, bool exclusive)
AUDACITY_DLL_API void DoTrackMute(AudacityProject &project, Track &track, bool exclusive)
"exclusive" mute means mute the chosen track and unmute all others.