#pragma once #include namespace LtsScriptTimeline { class Tools; class TrackHeader : public QWidget { Q_OBJECT public: explicit TrackHeader(QWidget *parent = nullptr); void recreatePositionLabels(); void updateMe(); void setIndicatorTime(int time); void lockIndicator(bool lock = true) { m_indicatorLock = lock; } void setTools(Tools *tools); int indicatorTime() const { return m_indicatorTime; } private: void resizeEvent(QResizeEvent *event) override; void paintEvent(QPaintEvent *event) override; void mousePressEvent(QMouseEvent *event) override; int m_indicatorTime; int m_textMargin; int m_textSpacing; QString m_timeFormat; QVector m_positionMarkers; bool m_indicatorLock; Tools *m_tools; signals: void signalHeaderIndicatorTimeChanged(int time); void signalHeaderIndicatorTimeUserChanged(qint64 time); }; }