mirror of
https://github.com/cookiengineer/audacity
synced 2025-06-15 15:49:36 +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 "Project.h"
|
||||||
#include "ProjectSettings.h"
|
#include "ProjectSettings.h"
|
||||||
#include "LabelTrack.h"
|
#include "Track.h"
|
||||||
#include "NoteTrack.h"
|
|
||||||
#include "WaveClip.h"
|
|
||||||
#include "ViewInfo.h"
|
#include "ViewInfo.h"
|
||||||
#include "WaveTrack.h"
|
|
||||||
|
|
||||||
inline bool operator < (SnapPoint s1, SnapPoint s2)
|
inline bool operator < (SnapPoint s1, SnapPoint s2)
|
||||||
{
|
{
|
||||||
return s1.t < s2.t;
|
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,
|
SnapManager::SnapManager(const AudacityProject &project,
|
||||||
SnapPointArray candidates,
|
SnapPointArray candidates,
|
||||||
const ZoomInfo &zoomInfo,
|
const ZoomInfo &zoomInfo,
|
||||||
|
22
src/Snap.h
22
src/Snap.h
@ -21,32 +21,10 @@
|
|||||||
|
|
||||||
class AudacityProject;
|
class AudacityProject;
|
||||||
class Track;
|
class Track;
|
||||||
using TrackArray = std::vector< Track* >;
|
|
||||||
class TrackClipArray;
|
|
||||||
class WaveClip;
|
|
||||||
class WaveTrack;
|
|
||||||
class TrackList;
|
class TrackList;
|
||||||
class ZoomInfo;
|
class ZoomInfo;
|
||||||
class wxDC;
|
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;
|
const int kPixelTolerance = 4;
|
||||||
|
|
||||||
class SnapPoint
|
class SnapPoint
|
||||||
|
@ -21,6 +21,7 @@ Paul Licameli split from TrackPanel.cpp
|
|||||||
#include "../../ProjectHistory.h"
|
#include "../../ProjectHistory.h"
|
||||||
#include "../../ProjectSettings.h"
|
#include "../../ProjectSettings.h"
|
||||||
#include "../../RefreshCode.h"
|
#include "../../RefreshCode.h"
|
||||||
|
#include "../../Snap.h"
|
||||||
#include "../../TrackArtist.h"
|
#include "../../TrackArtist.h"
|
||||||
#include "../../TrackPanelDrawingContext.h"
|
#include "../../TrackPanelDrawingContext.h"
|
||||||
#include "../../TrackPanelMouseEvent.h"
|
#include "../../TrackPanelMouseEvent.h"
|
||||||
@ -30,6 +31,18 @@ Paul Licameli split from TrackPanel.cpp
|
|||||||
#include "../../WaveTrack.h"
|
#include "../../WaveTrack.h"
|
||||||
#include "../../../images/Cursors.h"
|
#include "../../../images/Cursors.h"
|
||||||
|
|
||||||
|
TrackClip::TrackClip(Track *t, WaveClip *c)
|
||||||
|
{
|
||||||
|
track = origTrack = t;
|
||||||
|
dstTrack = NULL;
|
||||||
|
clip = c;
|
||||||
|
}
|
||||||
|
|
||||||
|
TrackClip::~TrackClip()
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
TimeShiftHandle::TimeShiftHandle
|
TimeShiftHandle::TimeShiftHandle
|
||||||
( const std::shared_ptr<Track> &pTrack, bool gripHit )
|
( const std::shared_ptr<Track> &pTrack, bool gripHit )
|
||||||
: mCapturedTrack{ pTrack }
|
: mCapturedTrack{ pTrack }
|
||||||
|
@ -13,10 +13,31 @@ Paul Licameli
|
|||||||
|
|
||||||
#include "../../UIHandle.h"
|
#include "../../UIHandle.h"
|
||||||
|
|
||||||
#include "../../Snap.h"
|
class SnapManager;
|
||||||
|
class Track;
|
||||||
|
using TrackArray = std::vector<Track*>;
|
||||||
|
class TrackList;
|
||||||
class ViewInfo;
|
class ViewInfo;
|
||||||
class WaveClip;
|
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 {
|
struct ClipMoveState {
|
||||||
// non-NULL only if click was in a WaveTrack and without Shift key:
|
// non-NULL only if click was in a WaveTrack and without Shift key:
|
||||||
|
Loading…
x
Reference in New Issue
Block a user