... Never written, because WaveformPrefs is never constructed and added to
the Preferences dialog.
It's still an old unrealized experiment, to make a Waveform preferences page
analogous to Spectrogram preferences. Until such time as it happens, don't
complicate the fix of bug 2480 at commit 238bb95.
... This is a vestige of the time when "Waveform" and "Waveform dB" were
considered separate wave track view types. But now that scale choice is
independent of Waveform vs. Spectrogram choice, there is no possible change of
scale type happening here, requiring invalidation of the vertical ruler.
... Problem began at commit 238bb95 and is fixed by supplying correct default
values to gPrefs->Read(...)
The bug was introduced only for Spectrogram settings, not for Waveform.
The clip left/right commands can now time shift clips, notetracks, and labels.
So:
1. Rename them Time Shift Left/Right
2. Move them the to edit sub menu of the extra menu, which is more appropriate than the Cursor sub menu.
Problem:
In DoClipMove() in ClipMenus.cpp, there are a couple of problems in the code for the adjustment of the new value t0 due to potential rounding errors:
1. The code uses the start and end of intervals, and these values are not updated after the move.
2. It's assumed that the same correction is valid for all track types.
Fix:
Implement an adjustment which depends on track type, and does not use the start and end values of intervals.
... These do not require header files; they are tiny proto-plugins that work
by registration of AttachedVirtualFunction overrides at startup.
Dependency may go from them to TrackView subclasses but not back; so in
principle a reduced Audacity without time-shift could be linked that still uses
the TrackView subclasses.
But other work to make the hit test for the Time Shift tool registrable would
have to precede that.
These now all have help buttons to page Error:_Unable_to_export
And they have an error code such as OGG:355 so that (later) on that page
we can describe them better - if they ever happen.
... Implemented non-invasively just with overrides in LabelTrackShifter
Exceeding the bug description: it's also possible to drag just the subset of
labels that fall partly or wholly in the selected region.
I expect details of the new behavior may be debated.