#pragma once #include "ltstimeline_export.h" #include #include namespace LtsTimeline { class Track; class TimelineView; class LTSTIMELINE_EXPORT TimelineViewTrackHandler { public: explicit TimelineViewTrackHandler(TimelineView* view); virtual ~TimelineViewTrackHandler(); virtual void mouseDoubleClickEvent(QMouseEvent* e); virtual void mousePressEvent(QMouseEvent* e); virtual void mouseReleaseEvent(QMouseEvent* e); bool isInsertButtonPressed(const QModelIndex& index) const { return index == m_pressedInsertButtonIndex; } bool isRemoveButtonPressed(const QModelIndex& index) const { return index == m_pressedRemoveButtonIndex; } protected: TimelineView* m_view{nullptr}; QModelIndex m_pressedInsertButtonIndex; QModelIndex m_pressedRemoveButtonIndex; }; } // namespace LtsTimeline