1
0
mirror of https://github.com/cookiengineer/audacity synced 2025-10-25 15:53:52 +02:00

Define and use the UIHandle and TrackPanelCell protocols, but...

...no actions reimplemented to them yet.

Later commits will move special cases one at a time from TrackPanel, preserving
all click and drag capabilities at each step.  With a few exceptions, but those
lost abilities are restored in yet later commits.  (Ctrl+Click on the Label
track being one.)
This commit is contained in:
Paul Licameli
2015-07-06 23:12:16 -04:00
committed by Paul Licameli
parent 07b53b4e83
commit 14d45eda33
48 changed files with 2144 additions and 161 deletions

View File

@@ -102,12 +102,16 @@ class AUDACITY_DLL_API WaveTrack final : public PlayableTrack {
using Holder = std::unique_ptr<WaveTrack>;
virtual ~WaveTrack();
HitTestResult HitTest
(const TrackPanelMouseEvent &event,
const AudacityProject *pProject) override;
double GetOffset() const override;
void SetOffset(double o) override;
virtual int GetChannel() const override;
virtual void SetPanFromChannelType() override;
/** @brief Get the time at which the first clip in the track starts
*
* @return time in seconds, or zero if there are no clips in the track
@@ -630,6 +634,10 @@ class AUDACITY_DLL_API WaveTrack final : public PlayableTrack {
std::unique_ptr<SpectrogramSettings> mpSpectrumSettings;
std::unique_ptr<WaveformSettings> mpWaveformSettings;
protected:
TrackControls *GetControls() override;
TrackVRulerControls *GetVRulerControls() override;
};
// This is meant to be a short-lived object, during whose lifetime,