1
0
mirror of https://github.com/cookiengineer/audacity synced 2025-06-23 15:50:05 +02:00

Eliminate GetActiveProject from FreqWindow.cpp

This commit is contained in:
Paul Licameli 2020-01-07 16:11:09 -05:00
parent 15d7d4271d
commit 54542c532f
3 changed files with 7 additions and 8 deletions

View File

@ -200,11 +200,13 @@ SpectrumAnalyst::~SpectrumAnalyst()
}
FrequencyPlotDialog::FrequencyPlotDialog(wxWindow * parent, wxWindowID id,
AudacityProject &project,
const TranslatableString & title,
const wxPoint & pos)
: wxDialogWrapper(parent, id, title, pos, wxDefaultSize,
wxDEFAULT_DIALOG_STYLE | wxRESIZE_BORDER | wxMAXIMIZE_BOX),
mAnalyst(std::make_unique<SpectrumAnalyst>())
, mProject{ &project }
{
SetName();
@ -213,10 +215,6 @@ FrequencyPlotDialog::FrequencyPlotDialog(wxWindow * parent, wxWindowID id,
mRate = 0;
mDataLen = 0;
p = GetActiveProject();
if (!p)
return;
TranslatableStrings algChoices{
XO("Spectrum") ,
XO("Standard Autocorrelation") ,
@ -596,8 +594,8 @@ void FrequencyPlotDialog::GetAudio()
int selcount = 0;
bool warning = false;
for (auto track : TrackList::Get( *p ).Selected< const WaveTrack >()) {
auto &selectedRegion = ViewInfo::Get( *p ).selectedRegion;
for (auto track : TrackList::Get( *mProject ).Selected< const WaveTrack >()) {
auto &selectedRegion = ViewInfo::Get( *mProject ).selectedRegion;
if (selcount==0) {
mRate = track->GetRate();
auto start = track->TimeToLongSamples(selectedRegion.t0());

View File

@ -117,6 +117,7 @@ class FrequencyPlotDialog final : public wxDialogWrapper
{
public:
FrequencyPlotDialog(wxWindow *parent, wxWindowID id,
AudacityProject &project,
const TranslatableString & title, const wxPoint & pos);
virtual ~ FrequencyPlotDialog();
@ -155,7 +156,7 @@ private:
int mFunc;
int mAxis;
int dBRange;
AudacityProject *p;
AudacityProject *mProject;
#ifdef __WXMSW__
static const int fontSize = 8;

View File

@ -39,7 +39,7 @@ AudacityProject::AttachedWindows::RegisteredFactory sFrequencyWindowKey{
[]( AudacityProject &parent ) -> wxWeakRef< wxWindow > {
auto &window = ProjectWindow::Get( parent );
return safenew FrequencyPlotDialog(
&window, -1, XO("Frequency Analysis"),
&window, -1, parent, XO("Frequency Analysis"),
wxPoint{ 150, 150 }
);
}