Audacity 3.2.0
Public Member Functions | List of all members
anonymous_namespace{WaveTrackMenuItems.cpp}::Handler Struct Reference
Inheritance diagram for anonymous_namespace{WaveTrackMenuItems.cpp}::Handler:
[legend]
Collaboration diagram for anonymous_namespace{WaveTrackMenuItems.cpp}::Handler:
[legend]

Public Member Functions

void OnNewWaveTrack (const CommandContext &context)
 
void OnNewStereoTrack (const CommandContext &context)
 

Detailed Description

Definition at line 26 of file WaveTrackMenuItems.cpp.

Member Function Documentation

◆ OnNewStereoTrack()

void anonymous_namespace{WaveTrackMenuItems.cpp}::Handler::OnNewStereoTrack ( const CommandContext context)
inline

Definition at line 52 of file WaveTrackMenuItems.cpp.

53{
54 auto &project = context.project;
55 auto &tracks = TrackList::Get( project );
56 auto &trackFactory = WaveTrackFactory::Get( project );
57 auto &window = ProjectWindow::Get( project );
58
59 auto defaultFormat = QualitySettings::SampleFormatChoice();
60 auto rate = ProjectRate::Get(project).GetRate();
61
63
64 auto left = trackFactory.Create(defaultFormat, rate);
65 left->SetName(tracks.MakeUniqueTrackName(WaveTrack::GetDefaultAudioTrackNamePreference()));
66 tracks.Add(left);
67 left->SetSelected(true);
68
69 auto right = trackFactory.Create(defaultFormat, rate);
70 right->SetName(left->GetName());
71 tracks.Add(right);
72 right->SetSelected(true);
73
74 tracks.MakeMultiChannelTrack(*left, 2, true);
75
76 ProjectHistory::Get( project )
77 .PushState(XO("Created new stereo audio track"), XO("New Track"));
78
79 TrackFocus::Get(project).Set(left.get());
80 left->EnsureVisible();
81}
#define XO(s)
Definition: Internat.h:31
AudacityProject & project
void PushState(const TranslatableString &desc, const TranslatableString &shortDesc)
static ProjectHistory & Get(AudacityProject &project)
static ProjectRate & Get(AudacityProject &project)
Definition: ProjectRate.cpp:28
double GetRate() const
Definition: ProjectRate.cpp:53
static ProjectWindow & Get(AudacityProject &project)
Track * Get()
void EnsureVisible(bool modifyState=false)
Definition: Track.cpp:97
static TrackList & Get(AudacityProject &project)
Definition: Track.cpp:486
static WaveTrackFactory & Get(AudacityProject &project)
Definition: WaveTrack.cpp:2810
static wxString GetDefaultAudioTrackNamePreference()
Definition: WaveTrack.cpp:100
PROJECT_RATE_API sampleFormat SampleFormatChoice()
void SelectNone(AudacityProject &project)

References Track::EnsureVisible(), TrackFocus::Get(), ProjectHistory::Get(), ProjectRate::Get(), TrackList::Get(), ProjectWindow::Get(), WaveTrackFactory::Get(), WaveTrack::GetDefaultAudioTrackNamePreference(), ProjectRate::GetRate(), CommandContext::project, ProjectHistory::PushState(), QualitySettings::SampleFormatChoice(), SelectUtilities::SelectNone(), and XO.

Here is the call graph for this function:

◆ OnNewWaveTrack()

void anonymous_namespace{WaveTrackMenuItems.cpp}::Handler::OnNewWaveTrack ( const CommandContext context)
inline

Definition at line 27 of file WaveTrackMenuItems.cpp.

28{
29 auto &project = context.project;
30 auto &tracks = TrackList::Get( project );
31 auto &trackFactory = WaveTrackFactory::Get( project );
32 auto &window = ProjectWindow::Get( project );
33
34 auto defaultFormat = QualitySettings::SampleFormatChoice();
35
36 auto rate = ProjectRate::Get(project).GetRate();
37
38 auto track = trackFactory.Create(defaultFormat, rate);
39 track->SetName(tracks.MakeUniqueTrackName(WaveTrack::GetDefaultAudioTrackNamePreference()));
40 tracks.Add(track);
42
43 track->SetSelected(true);
44
45 ProjectHistory::Get( project )
46 .PushState(XO("Created new audio track"), XO("New Track"));
47
48 TrackFocus::Get(project).Set(track.get());
49 track->EnsureVisible();
50}

References Track::EnsureVisible(), TrackFocus::Get(), ProjectHistory::Get(), ProjectRate::Get(), TrackList::Get(), ProjectWindow::Get(), WaveTrackFactory::Get(), WaveTrack::GetDefaultAudioTrackNamePreference(), ProjectRate::GetRate(), CommandContext::project, ProjectHistory::PushState(), QualitySettings::SampleFormatChoice(), SelectUtilities::SelectNone(), and XO.

Here is the call graph for this function:

The documentation for this struct was generated from the following file: