mirror of
https://github.com/cookiengineer/audacity
synced 2025-07-31 07:59:27 +02:00
Remove EXPERIMENTAL_LYRICS_WINDOW and EXPERIMENTAL_MIXER_BOARD. They've been in every beta for almost a year, so they're no longer experimental.
This commit is contained in:
parent
64360a2cd4
commit
e30ce7ddb7
@ -142,9 +142,6 @@ extern void AddPages( AudacityProject * pProj, GuiFactory & Factory, wxNotebo
|
||||
#ifdef EXPERIMENTAL_AUDACITY_TESTER
|
||||
#endif
|
||||
|
||||
#define EXPERIMENTAL_LYRICS_WINDOW //vvv Vaughan, 2009-07-06
|
||||
#define EXPERIMENTAL_MIXER_BOARD //vvv Vaughan, 2009-07-07
|
||||
|
||||
#if USE_PORTMIXER
|
||||
//Automatically tries to find an acceptable input volume
|
||||
//#define AUTOMATED_INPUT_LEVEL_ADJUSTMENT
|
||||
@ -154,15 +151,3 @@ extern void AddPages( AudacityProject * pProj, GuiFactory & Factory, wxNotebo
|
||||
//#define EXPERIMENTAL_TRUNC_SILENCE
|
||||
|
||||
#endif
|
||||
|
||||
// Indentation settings for Vim and Emacs and unique identifier for Arch, a
|
||||
// version control system. Please do not modify past this point.
|
||||
//
|
||||
// Local Variables:
|
||||
// c-basic-offset: 3
|
||||
// indent-tabs-mode: nil
|
||||
// End:
|
||||
//
|
||||
// vim: et sts=3 sw=3
|
||||
// arch-tag:
|
||||
|
||||
|
@ -10,7 +10,6 @@
|
||||
**********************************************************************/
|
||||
|
||||
#include "Experimental.h"
|
||||
#ifdef EXPERIMENTAL_LYRICS_WINDOW
|
||||
|
||||
#include "LyricsWindow.h"
|
||||
#include "Lyrics.h"
|
||||
@ -141,4 +140,3 @@ void LyricsWindow::OnStyle_Highlight(wxCommandEvent &evt)
|
||||
mLyricsPanel->SetLyricsStyle(Lyrics::kHighlightLyrics);
|
||||
}
|
||||
|
||||
#endif // EXPERIMENTAL_LYRICS_WINDOW
|
||||
|
@ -10,7 +10,6 @@
|
||||
**********************************************************************/
|
||||
|
||||
#include "Experimental.h"
|
||||
#ifdef EXPERIMENTAL_LYRICS_WINDOW
|
||||
|
||||
#ifndef __AUDACITY_LYRICS_WINDOW__
|
||||
#define __AUDACITY_LYRICS_WINDOW__
|
||||
@ -42,4 +41,3 @@ class LyricsWindow : public wxFrame {
|
||||
};
|
||||
|
||||
#endif
|
||||
#endif // EXPERIMENTAL_LYRICS_WINDOW
|
||||
|
@ -65,12 +65,8 @@ simplifies construction of menu items.
|
||||
#include "widgets/TimeTextCtrl.h"
|
||||
#include "ShuttleGui.h"
|
||||
#include "HistoryWindow.h"
|
||||
#ifdef EXPERIMENTAL_LYRICS_WINDOW
|
||||
#include "LyricsWindow.h"
|
||||
#endif
|
||||
#ifdef EXPERIMENTAL_MIXER_BOARD
|
||||
#include "MixerBoard.h"
|
||||
#endif
|
||||
#include "LyricsWindow.h"
|
||||
#include "MixerBoard.h"
|
||||
#include "Internat.h"
|
||||
#include "FileFormats.h"
|
||||
#include "LoadModules.h"
|
||||
@ -556,12 +552,8 @@ void AudacityProject::CreateMenusAndCommands()
|
||||
AudioIONotBusyFlag | UndoAvailableFlag,
|
||||
AudioIONotBusyFlag | UndoAvailableFlag);
|
||||
|
||||
#ifdef EXPERIMENTAL_LYRICS_WINDOW
|
||||
c->AddItem(wxT("Karaoke"), _("&Karaoke..."), FN(OnKaraoke), LabelTracksExistFlag, LabelTracksExistFlag);
|
||||
#endif
|
||||
#ifdef EXPERIMENTAL_MIXER_BOARD
|
||||
c->AddItem(wxT("MixerBoard"), _("&Mixer Board..."), FN(OnMixerBoard), WaveTracksExistFlag, WaveTracksExistFlag);
|
||||
#endif
|
||||
c->AddItem(wxT("Karaoke"), _("&Karaoke..."), FN(OnKaraoke), LabelTracksExistFlag, LabelTracksExistFlag);
|
||||
c->AddItem(wxT("MixerBoard"), _("&Mixer Board..."), FN(OnMixerBoard), WaveTracksExistFlag, WaveTracksExistFlag);
|
||||
|
||||
c->AddSeparator();
|
||||
|
||||
@ -4085,10 +4077,8 @@ void AudacityProject::OnSelectAll()
|
||||
ModifyState();
|
||||
|
||||
mTrackPanel->Refresh(false);
|
||||
#ifdef EXPERIMENTAL_MIXER_BOARD
|
||||
if (mMixerBoard)
|
||||
mMixerBoard->Refresh(false);
|
||||
#endif
|
||||
if (mMixerBoard)
|
||||
mMixerBoard->Refresh(false);
|
||||
}
|
||||
|
||||
void AudacityProject::OnSelectNone()
|
||||
@ -4155,10 +4145,8 @@ void AudacityProject::OnSelectSyncSel()
|
||||
}
|
||||
|
||||
mTrackPanel->Refresh(false);
|
||||
#ifdef EXPERIMENTAL_MIXER_BOARD
|
||||
if (mMixerBoard)
|
||||
mMixerBoard->Refresh(false);
|
||||
#endif
|
||||
if (mMixerBoard)
|
||||
mMixerBoard->Refresh(false);
|
||||
}
|
||||
|
||||
void AudacityProject::OnSelectAllTracks()
|
||||
@ -4169,10 +4157,8 @@ void AudacityProject::OnSelectAllTracks()
|
||||
}
|
||||
|
||||
mTrackPanel->Refresh(false);
|
||||
#ifdef EXPERIMENTAL_MIXER_BOARD
|
||||
if (mMixerBoard)
|
||||
mMixerBoard->Refresh(false);
|
||||
#endif
|
||||
}
|
||||
|
||||
//
|
||||
@ -4379,29 +4365,26 @@ void AudacityProject::OnHistory()
|
||||
mHistoryWindow->UpdateDisplay();
|
||||
}
|
||||
|
||||
#ifdef EXPERIMENTAL_LYRICS_WINDOW
|
||||
void AudacityProject::OnKaraoke()
|
||||
void AudacityProject::OnKaraoke()
|
||||
{
|
||||
if (!mLyricsWindow)
|
||||
mLyricsWindow = new LyricsWindow(this);
|
||||
wxASSERT(mLyricsWindow);
|
||||
mLyricsWindow->Show();
|
||||
mLyricsWindow->Raise();
|
||||
}
|
||||
|
||||
void AudacityProject::OnMixerBoard()
|
||||
{
|
||||
if (!mMixerBoardFrame)
|
||||
{
|
||||
if (!mLyricsWindow)
|
||||
mLyricsWindow = new LyricsWindow(this);
|
||||
wxASSERT(mLyricsWindow);
|
||||
mLyricsWindow->Show();
|
||||
mLyricsWindow->Raise();
|
||||
mMixerBoardFrame = new MixerBoardFrame(this);
|
||||
mMixerBoard = mMixerBoardFrame->mMixerBoard;
|
||||
}
|
||||
#endif
|
||||
#ifdef EXPERIMENTAL_MIXER_BOARD
|
||||
void AudacityProject::OnMixerBoard()
|
||||
{
|
||||
if (!mMixerBoardFrame)
|
||||
{
|
||||
mMixerBoardFrame = new MixerBoardFrame(this);
|
||||
mMixerBoard = mMixerBoardFrame->mMixerBoard;
|
||||
}
|
||||
mMixerBoardFrame->Show();
|
||||
mMixerBoardFrame->Raise();
|
||||
mMixerBoardFrame->SetFocus();
|
||||
}
|
||||
#endif
|
||||
mMixerBoardFrame->Show();
|
||||
mMixerBoardFrame->Raise();
|
||||
mMixerBoardFrame->SetFocus();
|
||||
}
|
||||
|
||||
void AudacityProject::OnPlotSpectrum()
|
||||
{
|
||||
@ -5407,10 +5390,8 @@ void AudacityProject::OnRemoveTracks()
|
||||
|
||||
while (t) {
|
||||
if (t->GetSelected()) {
|
||||
#ifdef EXPERIMENTAL_MIXER_BOARD
|
||||
if (mMixerBoard && (t->GetKind() == Track::Wave))
|
||||
mMixerBoard->RemoveTrackCluster((WaveTrack*)t);
|
||||
#endif
|
||||
if (mMixerBoard && (t->GetKind() == Track::Wave))
|
||||
mMixerBoard->RemoveTrackCluster((WaveTrack*)t);
|
||||
if (!f)
|
||||
f = l; // Capture the track preceeding the first removed track
|
||||
t = iter.RemoveCurrent(true);
|
||||
@ -5440,10 +5421,8 @@ void AudacityProject::OnRemoveTracks()
|
||||
PushState(_("Removed audio track(s)"), _("Remove Track"));
|
||||
|
||||
mTrackPanel->Refresh(false);
|
||||
#ifdef EXPERIMENTAL_MIXER_BOARD
|
||||
if (mMixerBoard)
|
||||
mMixerBoard->Refresh(true);
|
||||
#endif
|
||||
if (mMixerBoard)
|
||||
mMixerBoard->Refresh(true);
|
||||
}
|
||||
|
||||
//
|
||||
@ -5551,10 +5530,8 @@ void AudacityProject::OnMuteAllTracks()
|
||||
|
||||
ModifyState();
|
||||
RedrawProject();
|
||||
#ifdef EXPERIMENTAL_MIXER_BOARD
|
||||
if (mMixerBoard)
|
||||
mMixerBoard->UpdateMute();
|
||||
#endif
|
||||
if (mMixerBoard)
|
||||
mMixerBoard->UpdateMute();
|
||||
}
|
||||
|
||||
void AudacityProject::OnUnMuteAllTracks()
|
||||
@ -5570,10 +5547,8 @@ void AudacityProject::OnUnMuteAllTracks()
|
||||
|
||||
ModifyState();
|
||||
RedrawProject();
|
||||
#ifdef EXPERIMENTAL_MIXER_BOARD
|
||||
if (mMixerBoard)
|
||||
mMixerBoard->UpdateMute();
|
||||
#endif
|
||||
if (mMixerBoard)
|
||||
mMixerBoard->UpdateMute();
|
||||
}
|
||||
|
||||
void AudacityProject::OnLockPlayRegion()
|
||||
|
@ -252,12 +252,8 @@ void OnShowClipping();
|
||||
|
||||
void OnHistory();
|
||||
|
||||
#ifdef EXPERIMENTAL_LYRICS_WINDOW
|
||||
void OnKaraoke();
|
||||
#endif
|
||||
#ifdef EXPERIMENTAL_MIXER_BOARD
|
||||
void OnMixerBoard();
|
||||
#endif
|
||||
void OnKaraoke();
|
||||
void OnMixerBoard();
|
||||
|
||||
void OnPlotSpectrum();
|
||||
void OnContrast();
|
||||
|
@ -10,7 +10,6 @@
|
||||
**********************************************************************/
|
||||
|
||||
#include "Experimental.h"
|
||||
#ifdef EXPERIMENTAL_MIXER_BOARD
|
||||
|
||||
#include <math.h>
|
||||
|
||||
@ -1376,5 +1375,4 @@ void MixerBoardFrame::OnSize(wxSizeEvent &event)
|
||||
mMixerBoard->SetSize(this->GetClientSize());
|
||||
}
|
||||
|
||||
#endif // EXPERIMENTAL_MIXER_BOARD
|
||||
|
||||
|
@ -9,7 +9,6 @@
|
||||
**********************************************************************/
|
||||
|
||||
#include "Experimental.h"
|
||||
#ifdef EXPERIMENTAL_MIXER_BOARD
|
||||
|
||||
#ifndef __AUDACITY_MIXER_BOARD__
|
||||
#define __AUDACITY_MIXER_BOARD__
|
||||
@ -270,5 +269,4 @@ public:
|
||||
|
||||
#endif // __AUDACITY_MIXER_BOARD__
|
||||
|
||||
#endif // EXPERIMENTAL_MIXER_BOARD
|
||||
|
||||
|
126
src/Project.cpp
126
src/Project.cpp
@ -97,13 +97,9 @@ scroll information. It also has some status flags.
|
||||
#include "AudioIO.h"
|
||||
#include "Dependencies.h"
|
||||
#include "HistoryWindow.h"
|
||||
#ifdef EXPERIMENTAL_LYRICS_WINDOW
|
||||
#include "Lyrics.h"
|
||||
#include "LyricsWindow.h"
|
||||
#endif
|
||||
#ifdef EXPERIMENTAL_MIXER_BOARD
|
||||
#include "MixerBoard.h"
|
||||
#endif
|
||||
#include "Lyrics.h"
|
||||
#include "LyricsWindow.h"
|
||||
#include "MixerBoard.h"
|
||||
#include "Internat.h"
|
||||
#include "import/Import.h"
|
||||
#include "LabelTrack.h"
|
||||
@ -735,13 +731,9 @@ AudacityProject::AudacityProject(wxWindow * parent, wxWindowID id,
|
||||
mAutoScrolling(false),
|
||||
mActive(true),
|
||||
mHistoryWindow(NULL),
|
||||
#ifdef EXPERIMENTAL_LYRICS_WINDOW
|
||||
mLyricsWindow(NULL),
|
||||
#endif
|
||||
#ifdef EXPERIMENTAL_MIXER_BOARD
|
||||
mMixerBoard(NULL),
|
||||
mMixerBoardFrame(NULL),
|
||||
#endif
|
||||
mLyricsWindow(NULL),
|
||||
mMixerBoard(NULL),
|
||||
mMixerBoardFrame(NULL),
|
||||
mFreqWindow(NULL),
|
||||
mToolManager(NULL),
|
||||
mAudioIOToken(-1),
|
||||
@ -1041,10 +1033,8 @@ void AudacityProject::UpdatePrefs()
|
||||
if (mTrackPanel) {
|
||||
mTrackPanel->UpdatePrefs();
|
||||
}
|
||||
#ifdef EXPERIMENTAL_MIXER_BOARD
|
||||
if (mMixerBoard)
|
||||
mMixerBoard->ResizeTrackClusters(); // in case prefs "/GUI/Solo" changed
|
||||
#endif
|
||||
if (mMixerBoard)
|
||||
mMixerBoard->ResizeTrackClusters(); // in case prefs "/GUI/Solo" changed
|
||||
|
||||
SetSnapTo(gPrefs->Read(wxT("/SnapTo"), 0L)!=0);
|
||||
|
||||
@ -3494,12 +3484,8 @@ void AudacityProject::InitialState()
|
||||
ModifyUndoMenus();
|
||||
|
||||
UpdateMenus();
|
||||
#ifdef EXPERIMENTAL_LYRICS_WINDOW
|
||||
this->UpdateLyrics();
|
||||
#endif
|
||||
#ifdef EXPERIMENTAL_MIXER_BOARD
|
||||
this->UpdateMixerBoard();
|
||||
#endif
|
||||
this->UpdateLyrics();
|
||||
this->UpdateMixerBoard();
|
||||
}
|
||||
|
||||
void AudacityProject::PushState(wxString desc,
|
||||
@ -3523,15 +3509,11 @@ void AudacityProject::PushState(wxString desc,
|
||||
// Others, such as deleting a label or adding a wave track, obviously do.
|
||||
// Could categorize these state changes, but for now...
|
||||
// It's crucial to not do that repopulating during playback.
|
||||
//vvv These can be combined in the same conditional when both features are made non-experimental.
|
||||
#ifdef EXPERIMENTAL_LYRICS_WINDOW
|
||||
if (!gAudioIO->IsStreamActive(GetAudioIOToken()))
|
||||
this->UpdateLyrics();
|
||||
#endif
|
||||
#ifdef EXPERIMENTAL_MIXER_BOARD
|
||||
if (!gAudioIO->IsStreamActive(GetAudioIOToken()))
|
||||
this->UpdateMixerBoard();
|
||||
#endif
|
||||
if (!gAudioIO->IsStreamActive(GetAudioIOToken()))
|
||||
{
|
||||
this->UpdateLyrics();
|
||||
this->UpdateMixerBoard();
|
||||
}
|
||||
|
||||
if (GetTracksFitVerticallyZoomed())
|
||||
this->DoZoomFitV();
|
||||
@ -3592,12 +3574,8 @@ void AudacityProject::PopState(TrackList * l)
|
||||
HandleResize();
|
||||
|
||||
UpdateMenus();
|
||||
#ifdef EXPERIMENTAL_LYRICS_WINDOW
|
||||
this->UpdateLyrics();
|
||||
#endif
|
||||
#ifdef EXPERIMENTAL_MIXER_BOARD
|
||||
this->UpdateMixerBoard();
|
||||
#endif
|
||||
this->UpdateLyrics();
|
||||
this->UpdateMixerBoard();
|
||||
|
||||
AutoSave();
|
||||
}
|
||||
@ -3612,47 +3590,39 @@ void AudacityProject::SetStateTo(unsigned int n)
|
||||
mTrackPanel->SetFocusedTrack(NULL);
|
||||
mTrackPanel->Refresh(false);
|
||||
ModifyUndoMenus();
|
||||
#ifdef EXPERIMENTAL_LYRICS_WINDOW
|
||||
this->UpdateLyrics();
|
||||
#endif
|
||||
#ifdef EXPERIMENTAL_MIXER_BOARD
|
||||
this->UpdateMixerBoard();
|
||||
#endif
|
||||
this->UpdateLyrics();
|
||||
this->UpdateMixerBoard();
|
||||
}
|
||||
|
||||
#ifdef EXPERIMENTAL_LYRICS_WINDOW
|
||||
void AudacityProject::UpdateLyrics()
|
||||
void AudacityProject::UpdateLyrics()
|
||||
{
|
||||
TrackListOfKindIterator iter(Track::Label, mTracks);
|
||||
LabelTrack* pLabelTrack = (LabelTrack*)(iter.First()); // Lyrics come from only the first label track.
|
||||
if (!pLabelTrack)
|
||||
return;
|
||||
|
||||
if (!mLyricsWindow)
|
||||
{
|
||||
TrackListOfKindIterator iter(Track::Label, mTracks);
|
||||
LabelTrack* pLabelTrack = (LabelTrack*)(iter.First()); // Lyrics come from only the first label track.
|
||||
if (!pLabelTrack)
|
||||
return;
|
||||
|
||||
if (!mLyricsWindow)
|
||||
{
|
||||
mLyricsWindow = new LyricsWindow(this);
|
||||
mLyricsWindow->Show(false); // Don't show it. Need to update content regardless.
|
||||
}
|
||||
|
||||
Lyrics* pLyricsPanel = mLyricsWindow->GetLyricsPanel();
|
||||
pLyricsPanel->Clear();
|
||||
for (int i = 0; i < pLabelTrack->GetNumLabels(); i++)
|
||||
pLyricsPanel->Add(pLabelTrack->GetLabel(i)->t,
|
||||
pLabelTrack->GetLabel(i)->title);
|
||||
pLyricsPanel->Finish(pLabelTrack->GetEndTime());
|
||||
pLyricsPanel->Update(this->GetSel0());
|
||||
mLyricsWindow = new LyricsWindow(this);
|
||||
mLyricsWindow->Show(false); // Don't show it. Need to update content regardless.
|
||||
}
|
||||
#endif
|
||||
|
||||
#ifdef EXPERIMENTAL_MIXER_BOARD
|
||||
void AudacityProject::UpdateMixerBoard()
|
||||
{
|
||||
if (!mMixerBoard)
|
||||
return;
|
||||
mMixerBoard->UpdateTrackClusters();
|
||||
mMixerBoard->UpdateMeters(gAudioIO->GetStreamTime(), (mLastPlayMode == loopedPlay));
|
||||
}
|
||||
#endif
|
||||
Lyrics* pLyricsPanel = mLyricsWindow->GetLyricsPanel();
|
||||
pLyricsPanel->Clear();
|
||||
for (int i = 0; i < pLabelTrack->GetNumLabels(); i++)
|
||||
pLyricsPanel->Add(pLabelTrack->GetLabel(i)->t,
|
||||
pLabelTrack->GetLabel(i)->title);
|
||||
pLyricsPanel->Finish(pLabelTrack->GetEndTime());
|
||||
pLyricsPanel->Update(this->GetSel0());
|
||||
}
|
||||
|
||||
void AudacityProject::UpdateMixerBoard()
|
||||
{
|
||||
if (!mMixerBoard)
|
||||
return;
|
||||
mMixerBoard->UpdateTrackClusters();
|
||||
mMixerBoard->UpdateMeters(gAudioIO->GetStreamTime(), (mLastPlayMode == loopedPlay));
|
||||
}
|
||||
|
||||
//
|
||||
// Clipboard methods
|
||||
@ -3721,10 +3691,8 @@ void AudacityProject::SelectNone()
|
||||
t = iter.Next();
|
||||
}
|
||||
mTrackPanel->Refresh(false);
|
||||
#ifdef EXPERIMENTAL_MIXER_BOARD
|
||||
if (mMixerBoard)
|
||||
mMixerBoard->Refresh(false);
|
||||
#endif
|
||||
if (mMixerBoard)
|
||||
mMixerBoard->Refresh(false);
|
||||
}
|
||||
|
||||
// Utility function called by other zoom methods
|
||||
|
@ -49,33 +49,32 @@ class wxScrollEvent;
|
||||
class wxScrollBar;
|
||||
class wxPanel;
|
||||
|
||||
class ToolManager;
|
||||
class Toolbar;
|
||||
class AudacityProject;
|
||||
class Importer;
|
||||
class ODLock;
|
||||
class RecordingRecoveryHandler;
|
||||
class TrackList;
|
||||
class Tags;
|
||||
|
||||
// toolbar classes
|
||||
class ControlToolBar;
|
||||
class DeviceToolBar;
|
||||
class EditToolBar;
|
||||
class MeterToolBar;
|
||||
class MixerToolBar;
|
||||
class SelectionToolBar;
|
||||
class Toolbar;
|
||||
class ToolManager;
|
||||
class ToolsToolBar;
|
||||
class TranscriptionToolBar;
|
||||
|
||||
class TrackList;
|
||||
class Tags;
|
||||
class HistoryWindow;
|
||||
#ifdef EXPERIMENTAL_LYRICS_WINDOW
|
||||
class LyricsWindow;
|
||||
#endif
|
||||
#ifdef EXPERIMENTAL_MIXER_BOARD
|
||||
class MixerBoard;
|
||||
class MixerBoardFrame;
|
||||
#endif
|
||||
class Importer;
|
||||
// windows and frames
|
||||
class AdornedRulerPanel;
|
||||
class HistoryWindow;
|
||||
class LyricsWindow;
|
||||
class MixerBoard;
|
||||
class MixerBoardFrame;
|
||||
|
||||
class AudacityProject;
|
||||
class RecordingRecoveryHandler;
|
||||
class ODLock;
|
||||
|
||||
AudacityProject *CreateNewAudacityProject();
|
||||
AUDACITY_DLL_API AudacityProject *GetActiveProject();
|
||||
@ -120,13 +119,9 @@ class AUDACITY_DLL_API AudacityProject: public wxFrame,
|
||||
public AudioIOListener
|
||||
{
|
||||
public:
|
||||
|
||||
// Constructor and Destructor
|
||||
|
||||
AudacityProject(wxWindow * parent, wxWindowID id,
|
||||
const wxPoint & pos, const wxSize & size);
|
||||
|
||||
virtual ~ AudacityProject();
|
||||
virtual ~AudacityProject();
|
||||
|
||||
TrackList *GetTracks() { return mTracks; };
|
||||
UndoManager *GetUndoManager() { return &mUndoManager; }
|
||||
@ -345,12 +340,8 @@ class AUDACITY_DLL_API AudacityProject: public wxFrame,
|
||||
ToolsToolBar *GetToolsToolBar();
|
||||
TranscriptionToolBar *GetTranscriptionToolBar();
|
||||
|
||||
#ifdef EXPERIMENTAL_LYRICS_WINDOW
|
||||
LyricsWindow* GetLyricsWindow() { return mLyricsWindow; };
|
||||
#endif
|
||||
#ifdef EXPERIMENTAL_MIXER_BOARD
|
||||
MixerBoard* GetMixerBoard() { return mMixerBoard; };
|
||||
#endif
|
||||
LyricsWindow* GetLyricsWindow() { return mLyricsWindow; };
|
||||
MixerBoard* GetMixerBoard() { return mMixerBoard; };
|
||||
|
||||
// SelectionBar callback methods
|
||||
|
||||
@ -399,12 +390,8 @@ class AUDACITY_DLL_API AudacityProject: public wxFrame,
|
||||
void ModifyState();
|
||||
void PopState(TrackList * l);
|
||||
|
||||
#ifdef EXPERIMENTAL_LYRICS_WINDOW
|
||||
void UpdateLyrics();
|
||||
#endif
|
||||
#ifdef EXPERIMENTAL_MIXER_BOARD
|
||||
void UpdateMixerBoard();
|
||||
#endif
|
||||
void UpdateLyrics();
|
||||
void UpdateMixerBoard();
|
||||
|
||||
void GetRegionsByLabel( Regions ®ions );
|
||||
|
||||
@ -475,13 +462,9 @@ class AUDACITY_DLL_API AudacityProject: public wxFrame,
|
||||
bool mIconized;
|
||||
|
||||
HistoryWindow *mHistoryWindow;
|
||||
#ifdef EXPERIMENTAL_LYRICS_WINDOW
|
||||
LyricsWindow* mLyricsWindow;
|
||||
#endif
|
||||
#ifdef EXPERIMENTAL_MIXER_BOARD
|
||||
MixerBoard* mMixerBoard;
|
||||
MixerBoardFrame* mMixerBoardFrame;
|
||||
#endif
|
||||
LyricsWindow* mLyricsWindow;
|
||||
MixerBoard* mMixerBoard;
|
||||
MixerBoardFrame* mMixerBoardFrame;
|
||||
|
||||
FreqWindow *mFreqWindow;
|
||||
|
||||
|
@ -188,13 +188,9 @@ is time to refresh some aspect of the screen.
|
||||
#include "float_cast.h"
|
||||
#include "Internat.h"
|
||||
#include "LabelTrack.h"
|
||||
#ifdef EXPERIMENTAL_LYRICS_WINDOW
|
||||
#include "Lyrics.h"
|
||||
#include "LyricsWindow.h"
|
||||
#endif
|
||||
#ifdef EXPERIMENTAL_MIXER_BOARD
|
||||
#include "MixerBoard.h"
|
||||
#endif
|
||||
#include "Lyrics.h"
|
||||
#include "LyricsWindow.h"
|
||||
#include "MixerBoard.h"
|
||||
|
||||
#include "NoteTrack.h"
|
||||
#include "Prefs.h"
|
||||
@ -861,29 +857,26 @@ void TrackPanel::OnTimer()
|
||||
wxCommandEvent dummyEvent;
|
||||
AudacityProject *p = GetProject();
|
||||
|
||||
#ifdef EXPERIMENTAL_LYRICS_WINDOW
|
||||
if ((p->GetAudioIOToken() > 0) &&
|
||||
gAudioIO->IsStreamActive(p->GetAudioIOToken()))
|
||||
if ((p->GetAudioIOToken() > 0) &&
|
||||
gAudioIO->IsStreamActive(p->GetAudioIOToken()))
|
||||
{
|
||||
// Update lyrics display.
|
||||
LyricsWindow* pLyricsWindow = p->GetLyricsWindow();
|
||||
if (pLyricsWindow)
|
||||
{
|
||||
// Update lyrics display.
|
||||
LyricsWindow* pLyricsWindow = p->GetLyricsWindow();
|
||||
if (pLyricsWindow)
|
||||
{
|
||||
Lyrics* pLyricsPanel = pLyricsWindow->GetLyricsPanel();
|
||||
pLyricsPanel->Update(gAudioIO->GetStreamTime());
|
||||
}
|
||||
Lyrics* pLyricsPanel = pLyricsWindow->GetLyricsPanel();
|
||||
pLyricsPanel->Update(gAudioIO->GetStreamTime());
|
||||
}
|
||||
#endif
|
||||
#ifdef EXPERIMENTAL_MIXER_BOARD
|
||||
MixerBoard* pMixerBoard = this->GetMixerBoard();
|
||||
if (pMixerBoard &&
|
||||
(p->GetAudioIOToken() > 0) &&
|
||||
gAudioIO->IsStreamActive(p->GetAudioIOToken()))
|
||||
{
|
||||
pMixerBoard->UpdateMeters(gAudioIO->GetStreamTime(),
|
||||
(p->mLastPlayMode == loopedPlay));
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
||||
MixerBoard* pMixerBoard = this->GetMixerBoard();
|
||||
if (pMixerBoard &&
|
||||
(p->GetAudioIOToken() > 0) &&
|
||||
gAudioIO->IsStreamActive(p->GetAudioIOToken()))
|
||||
{
|
||||
pMixerBoard->UpdateMeters(gAudioIO->GetStreamTime(),
|
||||
(p->mLastPlayMode == loopedPlay));
|
||||
}
|
||||
|
||||
// Check whether we were playing or recording, but the stream has stopped.
|
||||
if (p->GetAudioIOToken()>0 &&
|
||||
@ -896,19 +889,17 @@ void TrackPanel::OnTimer()
|
||||
//the stream may have been started up after this one finished (by some other project)
|
||||
//in that case reset the buttons don't stop the stream
|
||||
p->GetControlToolBar()->StopPlaying(!gAudioIO->IsStreamActive());
|
||||
#ifdef EXPERIMENTAL_LYRICS_WINDOW
|
||||
// Reset lyrics display.
|
||||
LyricsWindow* pLyricsWindow = p->GetLyricsWindow();
|
||||
if (pLyricsWindow)
|
||||
{
|
||||
Lyrics* pLyricsPanel = pLyricsWindow->GetLyricsPanel();
|
||||
pLyricsPanel->Update(p->GetSel0());
|
||||
}
|
||||
#endif
|
||||
#ifdef EXPERIMENTAL_MIXER_BOARD
|
||||
if (pMixerBoard)
|
||||
pMixerBoard->ResetMeters();
|
||||
#endif
|
||||
|
||||
// Reset lyrics display.
|
||||
LyricsWindow* pLyricsWindow = p->GetLyricsWindow();
|
||||
if (pLyricsWindow)
|
||||
{
|
||||
Lyrics* pLyricsPanel = pLyricsWindow->GetLyricsPanel();
|
||||
pLyricsPanel->Update(p->GetSel0());
|
||||
}
|
||||
|
||||
if (pMixerBoard)
|
||||
pMixerBoard->ResetMeters();
|
||||
}
|
||||
|
||||
// Next, check to see if we were playing or recording
|
||||
@ -1360,14 +1351,12 @@ void TrackPanel::HandleCursorForLastMouseEvent()
|
||||
HandleCursor(mLastMouseEvent);
|
||||
}
|
||||
|
||||
#ifdef EXPERIMENTAL_MIXER_BOARD
|
||||
MixerBoard* TrackPanel::GetMixerBoard()
|
||||
{
|
||||
AudacityProject *p = GetProject();
|
||||
wxASSERT(p);
|
||||
return p->GetMixerBoard();
|
||||
}
|
||||
#endif
|
||||
MixerBoard* TrackPanel::GetMixerBoard()
|
||||
{
|
||||
AudacityProject *p = GetProject();
|
||||
wxASSERT(p);
|
||||
return p->GetMixerBoard();
|
||||
}
|
||||
|
||||
/// Used to determine whether it is safe or not to perform certain
|
||||
/// edits at the moment.
|
||||
@ -1768,16 +1757,15 @@ void TrackPanel::HandleSelect(wxMouseEvent & event)
|
||||
}
|
||||
done:
|
||||
SelectionHandleDrag(event, t);
|
||||
#ifdef EXPERIMENTAL_LYRICS_WINDOW
|
||||
// Update lyrics display for new selection.
|
||||
AudacityProject* pProj = GetActiveProject();
|
||||
LyricsWindow* pLyricsWindow = pProj->GetLyricsWindow();
|
||||
if (pLyricsWindow && pLyricsWindow->IsShown())
|
||||
{
|
||||
Lyrics* pLyricsPanel = pLyricsWindow->GetLyricsPanel();
|
||||
pLyricsPanel->Update(pProj->GetSel0());
|
||||
}
|
||||
#endif
|
||||
|
||||
// Update lyrics display for new selection.
|
||||
AudacityProject* pProj = GetActiveProject();
|
||||
LyricsWindow* pLyricsWindow = pProj->GetLyricsWindow();
|
||||
if (pLyricsWindow && pLyricsWindow->IsShown())
|
||||
{
|
||||
Lyrics* pLyricsPanel = pLyricsWindow->GetLyricsPanel();
|
||||
pLyricsPanel->Update(pProj->GetSel0());
|
||||
}
|
||||
}
|
||||
|
||||
/// This function gets called when we're handling selection
|
||||
@ -3491,15 +3479,13 @@ void TrackPanel::RemoveTrack(Track * toRemove)
|
||||
wxString name = toRemove->GetName();
|
||||
Track *partner = toRemove->GetLink();
|
||||
|
||||
#ifdef EXPERIMENTAL_MIXER_BOARD
|
||||
if (toRemove->GetKind() == Track::Wave)
|
||||
{
|
||||
// Update mixer board displayed tracks.
|
||||
MixerBoard* pMixerBoard = this->GetMixerBoard();
|
||||
if (pMixerBoard)
|
||||
pMixerBoard->RemoveTrackCluster((WaveTrack*)toRemove); // Will remove partner shown in same cluster.
|
||||
}
|
||||
#endif
|
||||
if (toRemove->GetKind() == Track::Wave)
|
||||
{
|
||||
// Update mixer board displayed tracks.
|
||||
MixerBoard* pMixerBoard = this->GetMixerBoard();
|
||||
if (pMixerBoard)
|
||||
pMixerBoard->RemoveTrackCluster((WaveTrack*)toRemove); // Will remove partner shown in same cluster.
|
||||
}
|
||||
|
||||
mTracks->Remove(toRemove, true);
|
||||
if (partner) {
|
||||
@ -3638,29 +3624,23 @@ void TrackPanel::HandleSliders(wxMouseEvent &event, bool pan)
|
||||
|
||||
float newValue = slider->Get();
|
||||
WaveTrack *link = (WaveTrack *)mTracks->GetLink(mCapturedTrack);
|
||||
#ifdef EXPERIMENTAL_MIXER_BOARD
|
||||
MixerBoard* pMixerBoard = this->GetMixerBoard(); // Update mixer board, too.
|
||||
#endif
|
||||
MixerBoard* pMixerBoard = this->GetMixerBoard(); // Update mixer board, too.
|
||||
|
||||
if (pan) {
|
||||
((WaveTrack *)mCapturedTrack)->SetPan(newValue);
|
||||
if (link)
|
||||
link->SetPan(newValue);
|
||||
|
||||
#ifdef EXPERIMENTAL_MIXER_BOARD
|
||||
if (pMixerBoard)
|
||||
pMixerBoard->UpdatePan((WaveTrack*)mCapturedTrack);
|
||||
#endif
|
||||
if (pMixerBoard)
|
||||
pMixerBoard->UpdatePan((WaveTrack*)mCapturedTrack);
|
||||
}
|
||||
else {
|
||||
((WaveTrack *)mCapturedTrack)->SetGain(newValue);
|
||||
if (link)
|
||||
link->SetGain(newValue);
|
||||
|
||||
#ifdef EXPERIMENTAL_MIXER_BOARD
|
||||
if (pMixerBoard)
|
||||
pMixerBoard->UpdateGain((WaveTrack*)mCapturedTrack);
|
||||
#endif
|
||||
if (pMixerBoard)
|
||||
pMixerBoard->UpdateGain((WaveTrack*)mCapturedTrack);
|
||||
}
|
||||
|
||||
VisibleTrackIterator iter(GetProject());
|
||||
@ -3800,11 +3780,9 @@ void TrackPanel::HandleLabelClick(wxMouseEvent & event)
|
||||
if (event.ShiftDown()) {
|
||||
mTracks->Select(t, !t->GetSelected());
|
||||
Refresh(false);
|
||||
#ifdef EXPERIMENTAL_MIXER_BOARD
|
||||
MixerBoard* pMixerBoard = this->GetMixerBoard();
|
||||
if (pMixerBoard && (t->GetKind() == Track::Wave))
|
||||
pMixerBoard->RefreshTrackCluster((WaveTrack*)t);
|
||||
#endif
|
||||
MixerBoard* pMixerBoard = this->GetMixerBoard();
|
||||
if (pMixerBoard && (t->GetKind() == Track::Wave))
|
||||
pMixerBoard->RefreshTrackCluster((WaveTrack*)t);
|
||||
return;
|
||||
}
|
||||
|
||||
@ -3814,11 +3792,9 @@ void TrackPanel::HandleLabelClick(wxMouseEvent & event)
|
||||
SelectTrackLength(t);
|
||||
|
||||
this->Refresh(false);
|
||||
#ifdef EXPERIMENTAL_MIXER_BOARD
|
||||
MixerBoard* pMixerBoard = this->GetMixerBoard();
|
||||
if (pMixerBoard)
|
||||
pMixerBoard->RefreshTrackClusters();
|
||||
#endif
|
||||
MixerBoard* pMixerBoard = this->GetMixerBoard();
|
||||
if (pMixerBoard)
|
||||
pMixerBoard->RefreshTrackClusters();
|
||||
|
||||
if (!unsafe)
|
||||
MakeParentModifyState();
|
||||
@ -3835,25 +3811,19 @@ void TrackPanel::HandleRearrange(wxMouseEvent & event)
|
||||
return;
|
||||
}
|
||||
|
||||
#ifdef EXPERIMENTAL_MIXER_BOARD
|
||||
MixerBoard* pMixerBoard = this->GetMixerBoard(); // Update mixer board, too.
|
||||
#endif
|
||||
MixerBoard* pMixerBoard = this->GetMixerBoard(); // Update mixer board, too.
|
||||
wxString dir;
|
||||
if (event.m_y < mMoveUpThreshold || event.m_y < 0) {
|
||||
mTracks->MoveUp(mCapturedTrack);
|
||||
dir = _("up");
|
||||
#ifdef EXPERIMENTAL_MIXER_BOARD
|
||||
if (pMixerBoard && (mCapturedTrack->GetKind() == Track::Wave))
|
||||
pMixerBoard->MoveTrackCluster((WaveTrack*)mCapturedTrack, true);
|
||||
#endif
|
||||
if (pMixerBoard && (mCapturedTrack->GetKind() == Track::Wave))
|
||||
pMixerBoard->MoveTrackCluster((WaveTrack*)mCapturedTrack, true);
|
||||
}
|
||||
else if (event.m_y > mMoveDownThreshold || event.m_y > GetRect().GetHeight()) {
|
||||
mTracks->MoveDown(mCapturedTrack);
|
||||
dir = _("down");
|
||||
#ifdef EXPERIMENTAL_MIXER_BOARD
|
||||
if (pMixerBoard && (mCapturedTrack->GetKind() == Track::Wave))
|
||||
pMixerBoard->MoveTrackCluster((WaveTrack*)mCapturedTrack, false);
|
||||
#endif
|
||||
if (pMixerBoard && (mCapturedTrack->GetKind() == Track::Wave))
|
||||
pMixerBoard->MoveTrackCluster((WaveTrack*)mCapturedTrack, false);
|
||||
}
|
||||
else
|
||||
{
|
||||
@ -6176,15 +6146,13 @@ void TrackPanel::OnTrackMute(bool shiftDown, Track *t)
|
||||
}
|
||||
GetProject()->HandleTrackMute(t, shiftDown);
|
||||
|
||||
#ifdef EXPERIMENTAL_MIXER_BOARD
|
||||
// Update mixer board, too.
|
||||
MixerBoard* pMixerBoard = this->GetMixerBoard();
|
||||
if (pMixerBoard)
|
||||
{
|
||||
pMixerBoard->UpdateMute(); // Update for all tracks.
|
||||
pMixerBoard->UpdateSolo(); // Update for all tracks.
|
||||
}
|
||||
#endif
|
||||
// Update mixer board, too.
|
||||
MixerBoard* pMixerBoard = this->GetMixerBoard();
|
||||
if (pMixerBoard)
|
||||
{
|
||||
pMixerBoard->UpdateMute(); // Update for all tracks.
|
||||
pMixerBoard->UpdateSolo(); // Update for all tracks.
|
||||
}
|
||||
|
||||
mAx->Updated();
|
||||
Refresh(false);
|
||||
@ -6201,15 +6169,13 @@ void TrackPanel::OnTrackSolo(bool shiftDown, Track *t)
|
||||
}
|
||||
GetProject()->HandleTrackSolo(t, shiftDown);
|
||||
|
||||
#ifdef EXPERIMENTAL_MIXER_BOARD
|
||||
// Update mixer board, too.
|
||||
MixerBoard* pMixerBoard = this->GetMixerBoard();
|
||||
if (pMixerBoard)
|
||||
{
|
||||
pMixerBoard->UpdateMute(); // Update for all tracks.
|
||||
pMixerBoard->UpdateSolo(); // Update for all tracks.
|
||||
}
|
||||
#endif
|
||||
// Update mixer board, too.
|
||||
MixerBoard* pMixerBoard = this->GetMixerBoard();
|
||||
if (pMixerBoard)
|
||||
{
|
||||
pMixerBoard->UpdateMute(); // Update for all tracks.
|
||||
pMixerBoard->UpdateSolo(); // Update for all tracks.
|
||||
}
|
||||
|
||||
mAx->Updated();
|
||||
Refresh(false);
|
||||
@ -6750,11 +6716,9 @@ void TrackPanel::OnMoveTrack(wxCommandEvent & event)
|
||||
wxASSERT(event.GetId() == OnMoveUpID || event.GetId() == OnMoveDownID);
|
||||
bool bUp = (OnMoveUpID == event.GetId());
|
||||
if (mTracks->Move(mPopupMenuTarget, bUp)) {
|
||||
#ifdef EXPERIMENTAL_MIXER_BOARD
|
||||
MixerBoard* pMixerBoard = this->GetMixerBoard(); // Update mixer board, too.
|
||||
if (pMixerBoard && (mPopupMenuTarget->GetKind() == Track::Wave))
|
||||
pMixerBoard->MoveTrackCluster((WaveTrack*)mPopupMenuTarget, bUp);
|
||||
#endif
|
||||
MixerBoard* pMixerBoard = this->GetMixerBoard(); // Update mixer board, too.
|
||||
if (pMixerBoard && (mPopupMenuTarget->GetKind() == Track::Wave))
|
||||
pMixerBoard->MoveTrackCluster((WaveTrack*)mPopupMenuTarget, bUp);
|
||||
|
||||
MakeParentPushState(wxString::Format(_("Moved '%s' %s"),
|
||||
mPopupMenuTarget->GetName().
|
||||
@ -6801,11 +6765,10 @@ void TrackPanel::OnSetName(wxCommandEvent &event)
|
||||
t->GetLink()->SetName(newName);
|
||||
}
|
||||
}
|
||||
#ifdef EXPERIMENTAL_MIXER_BOARD
|
||||
MixerBoard* pMixerBoard = this->GetMixerBoard();
|
||||
if (pMixerBoard && (t->GetKind() == Track::Wave))
|
||||
pMixerBoard->UpdateName((WaveTrack*)t);
|
||||
#endif
|
||||
|
||||
MixerBoard* pMixerBoard = this->GetMixerBoard();
|
||||
if (pMixerBoard && (t->GetKind() == Track::Wave))
|
||||
pMixerBoard->UpdateName((WaveTrack*)t);
|
||||
|
||||
MakeParentPushState(wxString::Format(_("Renamed '%s' to '%s'"),
|
||||
defaultStr.c_str(),
|
||||
|
@ -34,9 +34,7 @@ class AdornedRulerPanel;
|
||||
class LWSlider;
|
||||
class ControlToolBar; //Needed because state of controls can affect what gets drawn.
|
||||
class ToolsToolBar; //Needed because state of controls can affect what gets drawn.
|
||||
#ifdef EXPERIMENTAL_MIXER_BOARD
|
||||
class MixerBoard;
|
||||
#endif
|
||||
class MixerBoard;
|
||||
class AudacityProject;
|
||||
|
||||
class TrackPanelAx;
|
||||
@ -245,9 +243,7 @@ class TrackPanel:public wxPanel {
|
||||
void UpdateVRulerSize();
|
||||
|
||||
private:
|
||||
#ifdef EXPERIMENTAL_MIXER_BOARD
|
||||
MixerBoard* GetMixerBoard();
|
||||
#endif
|
||||
MixerBoard* GetMixerBoard();
|
||||
bool IsUnsafe();
|
||||
bool HandleLabelTrackMouseEvent(LabelTrack * lTrack, wxRect &r, wxMouseEvent & event);
|
||||
bool HandleTrackLocationMouseEvent(WaveTrack * track, wxRect &r, wxMouseEvent &event);
|
||||
|
Loading…
x
Reference in New Issue
Block a user