X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=src%2Fsmallruler.h;h=5c18ba9d1a8c4dc2f1b4d5d043078b777c4172e4;hb=56aee6aedeeed3efd10ada8fe3c229eddc01ef05;hp=cee54b2e943f5283a7d7266340760c2b5ae30e24;hpb=790782ebf97ee653f870aa465ad2ab376ae7fe44;p=kdenlive diff --git a/src/smallruler.h b/src/smallruler.h index cee54b2e..5c18ba9d 100644 --- a/src/smallruler.h +++ b/src/smallruler.h @@ -21,22 +21,34 @@ #ifndef SMALLRULER_H #define SMALLRULER_H +#include #include -class SmallRuler : public QWidget { +#include "monitormanager.h" + + +class SmallRuler : public QWidget +{ Q_OBJECT public: - SmallRuler(QWidget *parent = 0); - virtual void mousePressEvent(QMouseEvent * event); - virtual void mouseMoveEvent(QMouseEvent * event); + explicit SmallRuler(Monitor *manager, Render *render, QWidget *parent = 0); void adjustScale(int maximum); void setZone(int start, int end); - QPoint zone(); + void setZoneStart(); + void setZoneEnd(); + QPoint zone() const; + void setMarkers(const QList < CommentedTime >& list); + void updatePalette(); + void refreshRuler(); protected: - virtual void paintEvent(QPaintEvent *e); - virtual void resizeEvent(QResizeEvent *); + void paintEvent(QPaintEvent *e); + void resizeEvent(QResizeEvent *); + void leaveEvent(QEvent * event); + void mousePressEvent(QMouseEvent * event); + void mouseMoveEvent(QMouseEvent * event); + void mouseReleaseEvent(QMouseEvent * event); private: int m_cursorPosition; @@ -47,12 +59,19 @@ private: int m_maxval; int m_zoneStart; int m_zoneEnd; + QColor m_zoneColor; + QList m_markers; + QPixmap m_pixmap; + Monitor *m_monitor; + Render *m_render; + int m_lastSeekPosition; + QBrush m_cursorColor; + void updatePixmap(); public slots: - void slotNewValue(int value); + bool slotNewValue(int value); signals: - void seekRenderer(int); void zoneChanged(QPoint); };