#pragma once #include "ltsscripttimeline_export.h" #include namespace LtsScriptTimeline { class TrackContentWidget; class TrackEntry; class LTSSCRIPTTIMELINE_EXPORT DragHandler { public: explicit DragHandler(TrackContentWidget* _tcw) : m_tcw(_tcw), m_dropPos(-1) {} void dragEnterEvent(QDragEnterEvent* event); void dragLeaveEvent(QDragLeaveEvent* event); void dropEvent(QDropEvent* event); void dragMoveEvent(QDragMoveEvent* event); void mousePressEvent(QMouseEvent* event); void mouseMoveEvent(QMouseEvent* event); void keyPressEvent(QKeyEvent* event); TrackContentWidget* m_tcw; QVector m_tcwCorresponding; QPoint m_dragStartPos; QVector m_vecCollisions, m_vecParallel; int m_dropPos; }; } // namespace LtsScriptTimeline