X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=src%2Fsmallruler.h;h=5c18ba9d1a8c4dc2f1b4d5d043078b777c4172e4;hb=c3302003093710ee247ad84c0fe2ef3c579d417f;hp=02f55433e0b63940087b27d3280b9cd316c5e3b4;hpb=aa44a64120acd518139b74d1c7b8a33ee2b1b72a;p=kdenlive diff --git a/src/smallruler.h b/src/smallruler.h index 02f55433..5c18ba9d 100644 --- a/src/smallruler.h +++ b/src/smallruler.h @@ -21,20 +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); + 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; @@ -43,12 +57,22 @@ private: int m_medium; int m_small; 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); }; #endif