Update of /cvsroot/audacity/audacity-src/src
In directory 23jxhf1.ch3.sourceforge.com:/tmp/cvs-serv5625
Modified Files:
TrackPanel.cpp TrackPanel.h
Log Message:
Add a new 'Split Stereo to Mono' menu item on the popup menu. Patch from 'Tim'
via Steve the Fiddle.
Index: TrackPanel.cpp
===================================================================
RCS file: /cvsroot/audacity/audacity-src/src/TrackPanel.cpp,v
retrieving revision 1.428
retrieving revision 1.429
diff -u -d -r1.428 -r1.429
--- TrackPanel.cpp 15 Feb 2009 23:16:00 -0000 1.428
+++ TrackPanel.cpp 17 Feb 2009 19:57:15 -0000 1.429
@@ -307,6 +307,7 @@
OnPitchID,
OnSplitStereoID,
+ OnSplitStereoMonoID,
OnMergeStereoID,
OnSetTimeTrackRangeID,
@@ -341,6 +342,7 @@
EVT_MENU_RANGE(On16BitID, OnFloatID, TrackPanel::OnFormatChange)
EVT_MENU(OnRateOtherID, TrackPanel::OnRateOther)
EVT_MENU(OnSplitStereoID, TrackPanel::OnSplitStereo)
+ EVT_MENU(OnSplitStereoMonoID, TrackPanel::OnSplitStereoMono)
EVT_MENU(OnMergeStereoID, TrackPanel::OnMergeStereo)
EVT_MENU(OnCutSelectedTextID, TrackPanel::OnCutSelectedText)
@@ -559,6 +561,7 @@
mWaveTrackMenu->AppendCheckItem(OnChannelRightID, _("Right Channel"));
mWaveTrackMenu->Append(OnMergeStereoID, _("Make Stereo Track"));
mWaveTrackMenu->Append(OnSplitStereoID, _("Split Stereo Track"));
+ mWaveTrackMenu->Append(OnSplitStereoMonoID, _("Split Stereo to Mono"));
mWaveTrackMenu->AppendSeparator();
mWaveTrackMenu->Append(0, _("Set Sample Format"), mFormatMenu);
mWaveTrackMenu->AppendSeparator();
@@ -5733,6 +5736,7 @@
theMenu->Enable(OnMergeStereoID, canMakeStereo);
theMenu->Enable(OnSplitStereoID, t->GetLinked());
+ theMenu->Enable(OnSplitStereoMonoID, t->GetLinked());
theMenu->Check(OnChannelMonoID, t->GetChannel() == Track::MonoChannel);
theMenu->Check(OnChannelLeftID, t->GetChannel() == Track::LeftChannel);
theMenu->Check(OnChannelRightID, t->GetChannel() == Track::RightChannel);
@@ -6144,6 +6148,34 @@
Refresh(false);
}
+/// Split a stereo track into two mono tracks...
+void TrackPanel::OnSplitStereoMono(wxCommandEvent &event)
+{
+ wxASSERT(mPopupMenuTarget);
+ Track *partner = mTracks->GetLink(mPopupMenuTarget);
+ if (partner)
+ partner->SetTeamed(false);
+ mPopupMenuTarget->SetLinked(false);
+
+ //make the split tracks mono
+ mPopupMenuTarget->SetChannel(Track::MonoChannel);
+ if(partner)
+ partner->SetChannel(Track::MonoChannel);
+
+ //On Demand - have each channel add it's own.
+//#ifdef EXPERIMENTAL_ONDEMAND
+ if(ODManager::IsInstanceCreated() && partner->GetKind() == Track::Wave)
+ ODManager::Instance()->MakeWaveTrackIndependent((WaveTrack*)partner);
+//#endif
+
+ MakeParentPushState(wxString::Format(_("Split Stereo to Mono '%s'"),
+ mPopupMenuTarget->GetName().
+ c_str()),
+ _("Split"));
+
+ Refresh(false);
+}
+
/// Merge two tracks into one stereo track ??
void TrackPanel::OnMergeStereo(wxCommandEvent &event)
{
Index: TrackPanel.h
===================================================================
RCS file: /cvsroot/audacity/audacity-src/src/TrackPanel.h,v
retrieving revision 1.128
retrieving revision 1.129
diff -u -d -r1.128 -r1.129
--- TrackPanel.h 28 Dec 2008 01:20:14 -0000 1.128
+++ TrackPanel.h 17 Feb 2009 19:57:17 -0000 1.129
@@ -336,6 +336,7 @@
void OnFormatChange(wxCommandEvent &event);
void OnSplitStereo(wxCommandEvent &event);
+ void OnSplitStereoMono(wxCommandEvent &event);
void OnMergeStereo(wxCommandEvent &event);
void OnCutSelectedText(wxCommandEvent &event);
void OnCopySelectedText(wxCommandEvent &event);
------------------------------------------------------------------------------
Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
-OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
-Strategies to boost innovation and cut costs with open source participation
-Receive a $600 discount off the registration fee with the source code: SFAD
http://p.sf.net/sfu/XcvMzF8H
_______________________________________________
Audacity-cvs mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/audacity-cvs