Files
qt6-migration-pipeline/Lts/Common/LtsScriptTimeline/track_drag_handler.h
T

36 lines
802 B
C++
Executable File

#pragma once
#include <LtsScriptTimeline/ltsscripttimeline_export.h>
#include <QWidget>
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<TrackContentWidget *> m_tcwCorresponding;
QPoint m_dragStartPos;
QVector<TrackEntry *> m_vecCollisions, m_vecParallel;
int m_dropPos;
};
}