Audacity 3.2.0
|
UI Panel that displays realtime effects from the effect stack of an individual track, provides controls for accessing effect settings, stack manipulation (reorder, add, remove) More...
#include <RealtimeEffectPanel.h>
Classes | |
struct | PrefsListenerHelper |
Public Member Functions | |
RealtimeEffectPanel (AudacityProject &project, wxWindow *parent, wxWindowID id, const wxPoint &pos=wxDefaultPosition, const wxSize &size=wxDefaultSize, long style=0, const wxString &name=wxPanelNameStr) | |
~RealtimeEffectPanel () override | |
void | ShowPanel (SampleTrack *track, bool focus) |
void | HidePanel () |
void | SetTrack (const std::shared_ptr< SampleTrack > &track) |
Shows effects from the effect stack of the track. More... | |
void | ResetTrack () |
bool | IsTopNavigationDomain (NavigationKind) const override |
void | SetFocus () override |
Static Public Member Functions | |
static RealtimeEffectPanel & | Get (AudacityProject &project) |
static const RealtimeEffectPanel & | Get (const AudacityProject &project) |
Private Member Functions | |
void | MakeTrackEffectPane () |
void | MakeMasterEffectPane () |
void | OnCharHook (wxKeyEvent &evt) |
Private Attributes | |
AButton * | mToggleTrackEffects {nullptr} |
AButton * | mToggleMasterEffects {nullptr} |
wxStaticText * | mTrackTitle {nullptr} |
wxWindow * | mTrackEffectsPanel {nullptr} |
wxWindow * | mProjectEffectsPanel {nullptr} |
RealtimeEffectListWindow * | mTrackEffectList {nullptr} |
RealtimeEffectListWindow * | mMasterEffectList {nullptr} |
wxWindow * | mTrackEffectsHeader {nullptr} |
AudacityProject & | mProject |
std::weak_ptr< SampleTrack > | mCurrentTrack |
Observer::Subscription | mTrackListChanged |
Observer::Subscription | mUndoSubscription |
Observer::Subscription | mFocusChangeSubscription |
std::vector< std::shared_ptr< SampleTrack > > | mPotentiallyRemovedTracks |
std::unique_ptr< PrefsListenerHelper > | mPrefsListenerHelper |
UI Panel that displays realtime effects from the effect stack of an individual track, provides controls for accessing effect settings, stack manipulation (reorder, add, remove)
Definition at line 35 of file RealtimeEffectPanel.h.
RealtimeEffectPanel::RealtimeEffectPanel | ( | AudacityProject & | project, |
wxWindow * | parent, | ||
wxWindowID | id, | ||
const wxPoint & | pos = wxDefaultPosition , |
||
const wxSize & | size = wxDefaultSize , |
||
long | style = 0 , |
||
const wxString & | name = wxPanelNameStr |
||
) |
Definition at line 1158 of file RealtimeEffectPanel.cpp.
References TrackListEvent::ADDITION, TrackList::Any(), TrackListEvent::DELETION, for(), TrackFocus::Get(), UndoManager::Get(), RealtimeEffectList::Get(), PendingTracks::Get(), TrackList::Get(), HidePanel(), RealtimeEffectList::IsActive(), MakeMasterEffectPane(), MakeTrackEffectPane(), mCurrentTrack, TrackListEvent::mExtra, mFocusChangeSubscription, mMasterEffectList, mPotentiallyRemovedTracks, mProject, mProjectEffectsPanel, TrackListEvent::mpTrack, mToggleMasterEffects, mTrackEffectsPanel, mTrackListChanged, mTrackTitle, TrackListEvent::mType, mUndoSubscription, OnCharHook(), AButton::PopUp(), project, AButton::PushDown(), RealtimeEffectListWindow::SetDelegate(), ShowPanel(), Observer::Publisher< Message, NotifyAll >::Subscribe(), TrackListEvent::TRACK_DATA_CHANGE, UndoRedoMessage::type, anonymous_namespace{RealtimeEffectPanel.cpp}::UpdateRealtimeEffectUIData(), and anonymous_namespace{RealtimeEffectPanel.cpp}::VisitRealtimeEffectStateUIs().
|
override |
Definition at line 1300 of file RealtimeEffectPanel.cpp.
|
static |
Definition at line 1147 of file RealtimeEffectPanel.cpp.
References ClientData::Site< Host, ClientData, ObjectCopyingPolicy, Pointer, ObjectLockingPolicy, RegistryLockingPolicy >::Get(), GetAttachedWindows(), project, and anonymous_namespace{RealtimeEffectPanel.cpp}::sKey.
Referenced by EffectsButtonHandle::CommitChanges(), anonymous_namespace{PluginMenus.cpp}::DoManageRealtimeEffectsSidePanel(), Get(), and anonymous_namespace{NavigationMenus.cpp}::NextOrPrevFrame().
|
static |
Definition at line 1153 of file RealtimeEffectPanel.cpp.
References Get(), and project.
void RealtimeEffectPanel::HidePanel | ( | ) |
Definition at line 1331 of file RealtimeEffectPanel.cpp.
References ProjectWindow::Get(), and mProject.
Referenced by RealtimeEffectPanel().
|
inlineoverride |
Definition at line 84 of file RealtimeEffectPanel.h.
|
private |
Definition at line 1577 of file RealtimeEffectPanel.cpp.
References anonymous_namespace{ExportPCM.cpp}::desc, RealtimeEffectListWindow::EnableEffects(), ProjectHistory::Get(), UndoManager::Get(), AButton::IsDown(), UndoManager::MarkUnsaved(), mMasterEffectList, ProjectHistory::ModifyState(), mProject, mProjectEffectsPanel, mToggleMasterEffects, safenew, and XO().
Referenced by RealtimeEffectPanel().
|
private |
Definition at line 1385 of file RealtimeEffectPanel.cpp.
References _, RealtimeEffectListWindow::EnableEffects(), ProjectHistory::Get(), UndoManager::Get(), AButton::IsDown(), UndoManager::MarkUnsaved(), ProjectHistory::ModifyState(), mProject, mToggleTrackEffects, mTrackEffectList, mTrackEffectsHeader, mTrackEffectsPanel, mTrackTitle, BasicUI::OpenInDefaultBrowser(), safenew, and XO().
Referenced by RealtimeEffectPanel().
|
private |
Definition at line 1647 of file RealtimeEffectPanel.cpp.
References BasicUI::FindFocus().
Referenced by RealtimeEffectPanel().
void RealtimeEffectPanel::ResetTrack | ( | ) |
Definition at line 1371 of file RealtimeEffectPanel.cpp.
References AButton::Disable(), mCurrentTrack, mToggleTrackEffects, mTrackEffectList, mTrackEffectsHeader, mTrackTitle, and RealtimeEffectListWindow::ResetDelegate().
Referenced by SetTrack(), and ShowPanel().
|
override |
Definition at line 1380 of file RealtimeEffectPanel.cpp.
References mTrackEffectsHeader.
Referenced by ShowPanel().
void RealtimeEffectPanel::SetTrack | ( | const std::shared_ptr< SampleTrack > & | track | ) |
Shows effects from the effect stack of the track.
track | Pointer to the existing track, or null |
Definition at line 1348 of file RealtimeEffectPanel.cpp.
References _, AButton::Enable(), RealtimeEffectList::Get(), RealtimeEffectList::IsActive(), mCurrentTrack, mProject, mToggleTrackEffects, mTrackEffectList, mTrackEffectsHeader, mTrackTitle, AButton::PopUp(), AButton::PushDown(), ResetTrack(), and RealtimeEffectListWindow::SetDelegate().
Referenced by ShowPanel().
void RealtimeEffectPanel::ShowPanel | ( | SampleTrack * | track, |
bool | focus | ||
) |
Definition at line 1304 of file RealtimeEffectPanel.cpp.
References ProjectWindow::Get(), mProject, ResetTrack(), SetFocus(), SetTrack(), and Track::SharedPointer().
Referenced by EffectsButtonHandle::CommitChanges(), and RealtimeEffectPanel().
|
private |
Definition at line 47 of file RealtimeEffectPanel.h.
Referenced by RealtimeEffectPanel(), ResetTrack(), and SetTrack().
|
private |
Definition at line 51 of file RealtimeEffectPanel.h.
Referenced by RealtimeEffectPanel().
|
private |
Definition at line 43 of file RealtimeEffectPanel.h.
Referenced by MakeMasterEffectPane(), and RealtimeEffectPanel().
|
private |
Definition at line 53 of file RealtimeEffectPanel.h.
Referenced by RealtimeEffectPanel().
|
private |
Definition at line 58 of file RealtimeEffectPanel.h.
|
private |
Definition at line 45 of file RealtimeEffectPanel.h.
Referenced by HidePanel(), MakeMasterEffectPane(), MakeTrackEffectPane(), RealtimeEffectPanel(), SetTrack(), and ShowPanel().
|
private |
Definition at line 41 of file RealtimeEffectPanel.h.
Referenced by MakeMasterEffectPane(), and RealtimeEffectPanel().
|
private |
Definition at line 38 of file RealtimeEffectPanel.h.
Referenced by MakeMasterEffectPane(), and RealtimeEffectPanel().
|
private |
Definition at line 37 of file RealtimeEffectPanel.h.
Referenced by MakeTrackEffectPane(), ResetTrack(), and SetTrack().
|
private |
Definition at line 42 of file RealtimeEffectPanel.h.
Referenced by MakeTrackEffectPane(), ResetTrack(), and SetTrack().
|
private |
Definition at line 44 of file RealtimeEffectPanel.h.
Referenced by MakeTrackEffectPane(), ResetTrack(), SetFocus(), and SetTrack().
|
private |
Definition at line 40 of file RealtimeEffectPanel.h.
Referenced by MakeTrackEffectPane(), and RealtimeEffectPanel().
|
private |
Definition at line 49 of file RealtimeEffectPanel.h.
Referenced by RealtimeEffectPanel().
|
private |
Definition at line 39 of file RealtimeEffectPanel.h.
Referenced by MakeTrackEffectPane(), RealtimeEffectPanel(), ResetTrack(), and SetTrack().
|
private |
Definition at line 50 of file RealtimeEffectPanel.h.
Referenced by RealtimeEffectPanel().