diff --git a/src/WaveTrack.cpp b/src/WaveTrack.cpp index 394ed1c5e..cdf207283 100644 --- a/src/WaveTrack.cpp +++ b/src/WaveTrack.cpp @@ -86,7 +86,14 @@ WaveTrack::WaveTrack(DirManager *projDirManager, sampleFormat format, double rat rate = GetActiveProject()->GetRate(); } + // Force creation always: + WaveformSettings &settings = GetIndependentWaveformSettings(); + mDisplay = FindDefaultViewMode(); + if (mDisplay == obsoleteWaveformDBDisplay) { + mDisplay = Waveform; + settings.scaleType = WaveformSettings::stLogarithmic; + } mLegacyProjectFileOffset = 0; @@ -113,7 +120,14 @@ WaveTrack::WaveTrack(WaveTrack &orig): , mpWaveformSettings(orig.mpWaveformSettings ? new WaveformSettings(*orig.mpWaveformSettings) : 0) { + // Force creation always: + WaveformSettings &settings = GetIndependentWaveformSettings(); + mDisplay = FindDefaultViewMode(); + if (mDisplay == obsoleteWaveformDBDisplay) { + mDisplay = Waveform; + settings.scaleType = WaveformSettings::stLinear; + } mLastScaleType = -1; mLegacyProjectFileOffset = 0; @@ -236,12 +250,9 @@ WaveTrack::ConvertLegacyDisplayValue(int oldValue) switch (oldValue) { default: case Waveform: - case WaveformDB: newValue = WaveTrack::Waveform; break; - /* case WaveformDB: - newValue = WaveTrack::WaveformDBDisplay; break; - */ + newValue = WaveTrack::obsoleteWaveformDBDisplay; break; case Spectrogram: case SpectrogramLogF: case Pitch: @@ -263,6 +274,7 @@ WaveTrack::ValidateWaveTrackDisplay(WaveTrackDisplay display) switch (display) { // non-obsolete codes case Waveform: + case obsoleteWaveformDBDisplay: case Spectrum: return display; @@ -273,9 +285,6 @@ WaveTrack::ValidateWaveTrackDisplay(WaveTrackDisplay display) case obsolete4: // was PitchDisplay return Spectrum; - case obsolete5: // was WaveformDBDisplay - return Waveform; - // codes out of bounds (from future prefs files?) default: return MinDisplay; diff --git a/src/WaveTrack.h b/src/WaveTrack.h index 61c063e36..68d259a87 100644 --- a/src/WaveTrack.h +++ b/src/WaveTrack.h @@ -407,7 +407,7 @@ class AUDACITY_DLL_API WaveTrack : public Track { Waveform = 0, MinDisplay = Waveform, - obsolete5, // was WaveformDBDisplay + obsoleteWaveformDBDisplay, Spectrum, diff --git a/src/prefs/TracksPrefs.cpp b/src/prefs/TracksPrefs.cpp index 495fc7ad4..6f350cdff 100644 --- a/src/prefs/TracksPrefs.cpp +++ b/src/prefs/TracksPrefs.cpp @@ -62,6 +62,9 @@ void TracksPrefs::Populate() mViewChoices.Add(_("Waveform")); mViewCodes.Add(int(WaveTrack::Waveform)); + mViewChoices.Add(_("Waveform (dB)")); + mViewCodes.Add(int(WaveTrack::obsoleteWaveformDBDisplay)); + mViewChoices.Add(_("Spectrum")); mViewCodes.Add(WaveTrack::Spectrum);