mirror of
https://github.com/cookiengineer/audacity
synced 2025-04-30 07:39:42 +02:00
TrackClip moved to TimeShiftHandle; Snap doesn't use Track subclasses
This commit is contained in:
parent
dc9eaf6a3a
commit
4653b5ed3d
17
src/Snap.cpp
17
src/Snap.cpp
@ -16,29 +16,14 @@
|
||||
|
||||
#include "Project.h"
|
||||
#include "ProjectSettings.h"
|
||||
#include "LabelTrack.h"
|
||||
#include "NoteTrack.h"
|
||||
#include "WaveClip.h"
|
||||
#include "Track.h"
|
||||
#include "ViewInfo.h"
|
||||
#include "WaveTrack.h"
|
||||
|
||||
inline bool operator < (SnapPoint s1, SnapPoint s2)
|
||||
{
|
||||
return s1.t < s2.t;
|
||||
}
|
||||
|
||||
TrackClip::TrackClip(Track *t, WaveClip *c)
|
||||
{
|
||||
track = origTrack = t;
|
||||
dstTrack = NULL;
|
||||
clip = c;
|
||||
}
|
||||
|
||||
TrackClip::~TrackClip()
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
SnapManager::SnapManager(const AudacityProject &project,
|
||||
SnapPointArray candidates,
|
||||
const ZoomInfo &zoomInfo,
|
||||
|
22
src/Snap.h
22
src/Snap.h
@ -21,32 +21,10 @@
|
||||
|
||||
class AudacityProject;
|
||||
class Track;
|
||||
using TrackArray = std::vector< Track* >;
|
||||
class TrackClipArray;
|
||||
class WaveClip;
|
||||
class WaveTrack;
|
||||
class TrackList;
|
||||
class ZoomInfo;
|
||||
class wxDC;
|
||||
|
||||
class TrackClip
|
||||
{
|
||||
public:
|
||||
TrackClip(Track *t, WaveClip *c);
|
||||
|
||||
~TrackClip();
|
||||
|
||||
Track *track;
|
||||
Track *origTrack;
|
||||
WaveClip *clip;
|
||||
|
||||
// These fields are used only during time-shift dragging
|
||||
WaveTrack *dstTrack;
|
||||
std::shared_ptr<WaveClip> holder;
|
||||
};
|
||||
|
||||
class TrackClipArray : public std::vector < TrackClip > {};
|
||||
|
||||
const int kPixelTolerance = 4;
|
||||
|
||||
class SnapPoint
|
||||
|
@ -21,6 +21,7 @@ Paul Licameli split from TrackPanel.cpp
|
||||
#include "../../ProjectHistory.h"
|
||||
#include "../../ProjectSettings.h"
|
||||
#include "../../RefreshCode.h"
|
||||
#include "../../Snap.h"
|
||||
#include "../../TrackArtist.h"
|
||||
#include "../../TrackPanelDrawingContext.h"
|
||||
#include "../../TrackPanelMouseEvent.h"
|
||||
@ -30,6 +31,18 @@ Paul Licameli split from TrackPanel.cpp
|
||||
#include "../../WaveTrack.h"
|
||||
#include "../../../images/Cursors.h"
|
||||
|
||||
TrackClip::TrackClip(Track *t, WaveClip *c)
|
||||
{
|
||||
track = origTrack = t;
|
||||
dstTrack = NULL;
|
||||
clip = c;
|
||||
}
|
||||
|
||||
TrackClip::~TrackClip()
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
TimeShiftHandle::TimeShiftHandle
|
||||
( const std::shared_ptr<Track> &pTrack, bool gripHit )
|
||||
: mCapturedTrack{ pTrack }
|
||||
|
@ -13,10 +13,31 @@ Paul Licameli
|
||||
|
||||
#include "../../UIHandle.h"
|
||||
|
||||
#include "../../Snap.h"
|
||||
|
||||
class SnapManager;
|
||||
class Track;
|
||||
using TrackArray = std::vector<Track*>;
|
||||
class TrackList;
|
||||
class ViewInfo;
|
||||
class WaveClip;
|
||||
class WaveTrack;
|
||||
|
||||
class TrackClip
|
||||
{
|
||||
public:
|
||||
TrackClip(Track *t, WaveClip *c);
|
||||
|
||||
~TrackClip();
|
||||
|
||||
Track *track;
|
||||
Track *origTrack;
|
||||
WaveClip *clip;
|
||||
|
||||
// These fields are used only during time-shift dragging
|
||||
WaveTrack *dstTrack;
|
||||
std::shared_ptr<WaveClip> holder;
|
||||
};
|
||||
|
||||
using TrackClipArray = std::vector <TrackClip>;
|
||||
|
||||
struct ClipMoveState {
|
||||
// non-NULL only if click was in a WaveTrack and without Shift key:
|
||||
|
Loading…
x
Reference in New Issue
Block a user