#pragma once #include "AbstractTimelineModel.h" #include "Range.h" #include namespace LtsTimelineClassic { class EventDelegate : public QStyledItemDelegate { Q_OBJECT public: EventDelegate(QWidget *parent = nullptr); void setKnownRanges(const QVector &knownRanges); QSize sizeHint(const QStyleOptionViewItem &option = QStyleOptionViewItem(), const QModelIndex &index = QModelIndex()) const; void setLiveTime(qint64 liveTime); private: void paint(QPainter *painter, const QStyleOptionViewItem &option, const QModelIndex &index) const; LineMap m_lineMap; QVector m_knownRanges; qint64 m_liveTime; public slots: void slotResetLineList(); void slotAddLine(int posX, qint64 time); }; }