mirror of
https://github.com/cookiengineer/audacity
synced 2025-10-29 08:43:56 +01:00
Move code for Time track menu items
This commit is contained in:
committed by
Paul Licameli
parent
0e5e7b1c05
commit
516d812f3a
@@ -178,7 +178,6 @@ is time to refresh some aspect of the screen.
|
||||
#include "Prefs.h"
|
||||
#include "RefreshCode.h"
|
||||
#include "ShuttleGui.h"
|
||||
#include "TimeTrack.h"
|
||||
#include "TrackArtist.h"
|
||||
#include "TrackPanelAx.h"
|
||||
#include "UndoManager.h"
|
||||
@@ -327,12 +326,6 @@ enum {
|
||||
OnMergeStereoID,
|
||||
OnSwapChannelsID,
|
||||
|
||||
OnSetTimeTrackRangeID,
|
||||
|
||||
OnTimeTrackLinID,
|
||||
OnTimeTrackLogID,
|
||||
OnTimeTrackLogIntID,
|
||||
|
||||
// Reserve an ample block of ids for waveform scale types
|
||||
OnFirstWaveformScaleID,
|
||||
OnLastWaveformScaleID = OnFirstWaveformScaleID + 9,
|
||||
@@ -358,7 +351,6 @@ BEGIN_EVENT_TABLE(TrackPanel, OverlayPanel)
|
||||
EVT_KILL_FOCUS(TrackPanel::OnKillFocus)
|
||||
EVT_CONTEXT_MENU(TrackPanel::OnContextMenu)
|
||||
EVT_MENU(OnSetFontID, TrackPanel::OnSetFont)
|
||||
EVT_MENU(OnSetTimeTrackRangeID, TrackPanel::OnSetTimeTrackRange)
|
||||
|
||||
EVT_MENU_RANGE(OnUpOctaveID, OnDownOctaveID, TrackPanel::OnChangeOctave)
|
||||
EVT_MENU_RANGE(OnChannelLeftID, OnChannelMonoID,
|
||||
@@ -373,10 +365,6 @@ BEGIN_EVENT_TABLE(TrackPanel, OverlayPanel)
|
||||
EVT_MENU(OnSplitStereoMonoID, TrackPanel::OnSplitStereoMono)
|
||||
EVT_MENU(OnMergeStereoID, TrackPanel::OnMergeStereo)
|
||||
|
||||
EVT_MENU(OnTimeTrackLinID, TrackPanel::OnTimeTrackLin)
|
||||
EVT_MENU(OnTimeTrackLogID, TrackPanel::OnTimeTrackLog)
|
||||
EVT_MENU(OnTimeTrackLogIntID, TrackPanel::OnTimeTrackLogInt)
|
||||
|
||||
EVT_MENU_RANGE(OnFirstWaveformScaleID, OnLastWaveformScaleID, TrackPanel::OnWaveformScaleType)
|
||||
EVT_MENU_RANGE(OnFirstSpectrumScaleID, OnLastSpectrumScaleID, TrackPanel::OnSpectrumScaleType)
|
||||
|
||||
@@ -491,7 +479,6 @@ TrackPanel::TrackPanel(wxWindow * parent, wxWindowID id,
|
||||
|
||||
mNoteTrackMenu = NULL;
|
||||
mLabelTrackMenu = NULL;
|
||||
mTimeTrackMenu = NULL;
|
||||
|
||||
mTrackArtist = std::make_unique<TrackArtist>();
|
||||
|
||||
@@ -655,15 +642,6 @@ void TrackPanel::BuildMenus(void)
|
||||
mLabelTrackMenu = std::make_unique<wxMenu>();
|
||||
mLabelTrackMenu->Append(OnSetFontID, _("&Font..."));
|
||||
|
||||
/* build the pop-down menu used on time warping tracks */
|
||||
mTimeTrackMenu = std::make_unique<wxMenu>();
|
||||
mTimeTrackMenu->AppendRadioItem(OnTimeTrackLinID, wxT("&Linear scale"));
|
||||
mTimeTrackMenu->AppendRadioItem(OnTimeTrackLogID, _("L&ogarithmic scale"));
|
||||
|
||||
mTimeTrackMenu->AppendSeparator();
|
||||
mTimeTrackMenu->Append(OnSetTimeTrackRangeID, _("&Range..."));
|
||||
mTimeTrackMenu->AppendCheckItem(OnTimeTrackLogIntID, _("Logarithmic &Interpolation"));
|
||||
|
||||
/*
|
||||
mRulerWaveformMenu = std::make_unique<wxMenu>();
|
||||
BuildVRulerMenuItems
|
||||
@@ -703,7 +681,6 @@ void TrackPanel::DeleteMenus(void)
|
||||
mWaveTrackMenu.reset();
|
||||
mNoteTrackMenu.reset();
|
||||
mLabelTrackMenu.reset();
|
||||
mTimeTrackMenu.reset();
|
||||
mRulerWaveformMenu.reset();
|
||||
mRulerSpectrumMenu.reset();
|
||||
}
|
||||
@@ -5954,13 +5931,6 @@ void TrackPanel::OnTrackMenu(Track *t)
|
||||
Track *next = mTracks->GetNext(t);
|
||||
|
||||
wxMenu *theMenu = NULL;
|
||||
if (t->GetKind() == Track::Time) {
|
||||
theMenu = mTimeTrackMenu.get();
|
||||
|
||||
TimeTrack *tt = (TimeTrack*) t;
|
||||
|
||||
theMenu->Check(OnTimeTrackLogIntID, tt->GetInterpolateLog());
|
||||
}
|
||||
|
||||
if (t->GetKind() == Track::Wave) {
|
||||
theMenu = mWaveTrackMenu.get();
|
||||
@@ -6755,78 +6725,6 @@ void TrackPanel::OnRateOther(wxCommandEvent &event)
|
||||
Refresh(false);
|
||||
}
|
||||
|
||||
void TrackPanel::OnSetTimeTrackRange(wxCommandEvent & /*event*/)
|
||||
{
|
||||
TimeTrack *t = (TimeTrack*)mPopupMenuTarget;
|
||||
|
||||
if (t) {
|
||||
long lower = (long) (t->GetRangeLower() * 100.0 + 0.5);
|
||||
long upper = (long) (t->GetRangeUpper() * 100.0 + 0.5);
|
||||
|
||||
// MB: these lower/upper limits match the maximum allowed range of the time track
|
||||
// envelope, but this is not strictly required
|
||||
lower = wxGetNumberFromUser(_("Change lower speed limit (%) to:"),
|
||||
_("Lower speed limit"),
|
||||
_("Lower speed limit"),
|
||||
lower,
|
||||
10,
|
||||
1000);
|
||||
|
||||
upper = wxGetNumberFromUser(_("Change upper speed limit (%) to:"),
|
||||
_("Upper speed limit"),
|
||||
_("Upper speed limit"),
|
||||
upper,
|
||||
lower+1,
|
||||
1000);
|
||||
|
||||
if( lower >= 10 && upper <= 1000 && lower < upper ) {
|
||||
t->SetRangeLower((double)lower / 100.0);
|
||||
t->SetRangeUpper((double)upper / 100.0);
|
||||
MakeParentPushState(wxString::Format(_("Set range to '%ld' - '%ld'"),
|
||||
lower,
|
||||
upper),
|
||||
/* i18n-hint: (verb)*/
|
||||
|
||||
_("Set Range"));
|
||||
Refresh(false);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void TrackPanel::OnTimeTrackLin(wxCommandEvent & /*event*/)
|
||||
{
|
||||
// Come here only from the time track menu
|
||||
const auto t = static_cast<TimeTrack*>(mPopupMenuTarget);
|
||||
t->SetDisplayLog(false);
|
||||
UpdateVRuler(t);
|
||||
MakeParentPushState(_("Set time track display to linear"), _("Set Display"));
|
||||
Refresh(false);
|
||||
}
|
||||
|
||||
void TrackPanel::OnTimeTrackLog(wxCommandEvent & /*event*/)
|
||||
{
|
||||
// Come here only from the time track menu
|
||||
const auto t = static_cast<TimeTrack*>(mPopupMenuTarget);
|
||||
t->SetDisplayLog(true);
|
||||
UpdateVRuler(t);
|
||||
MakeParentPushState(_("Set time track display to logarithmic"), _("Set Display"));
|
||||
Refresh(false);
|
||||
}
|
||||
|
||||
void TrackPanel::OnTimeTrackLogInt(wxCommandEvent & /*event*/)
|
||||
{
|
||||
// Come here only from the time track menu
|
||||
const auto t = static_cast<TimeTrack*>(mPopupMenuTarget);
|
||||
if(t->GetInterpolateLog()) {
|
||||
t->SetInterpolateLog(false);
|
||||
MakeParentPushState(_("Set time track interpolation to linear"), _("Set Interpolation"));
|
||||
} else {
|
||||
t->SetInterpolateLog(true);
|
||||
MakeParentPushState(_("Set time track interpolation to logarithmic"), _("Set Interpolation"));
|
||||
}
|
||||
Refresh(false);
|
||||
}
|
||||
|
||||
void TrackPanel::OnWaveformScaleType(wxCommandEvent &evt)
|
||||
{
|
||||
// Get here only from vertical ruler menu for wave tracks
|
||||
|
||||
Reference in New Issue
Block a user