]> sigrok.org Git - pulseview.git/blobdiff - pv/view/timemarker.hpp
DecodeTrace: Let the view know when we need more space
[pulseview.git] / pv / view / timemarker.hpp
index 10e3331c639ba4eee64bd146d1ea1d07c7fdd49c..c65dab78a7006f89c98a26298d754c677c0f1ee9 100644 (file)
@@ -33,6 +33,10 @@ class QPainter;
 class QRect;
 
 namespace pv {
+namespace widgets {
+       class TimestampSpinBox;
+}
+
 namespace view {
 
 class View;
@@ -64,27 +68,27 @@ public:
         */
        void set_time(const pv::util::Timestamp& time) override;
 
-       float get_x() const;
+       float get_x() const override;
 
        /**
         * Gets the arrow-tip point of the time marker.
         * @param rect the rectangle of the ruler area.
         */
-       QPoint point(const QRect &rect) const;
+       QPoint point(const QRect &rect) const override;
 
        /**
         * Computes the outline rectangle of a label.
         * @param rect the rectangle of the header area.
         * @return Returns the rectangle of the signal label.
         */
-       QRectF label_rect(const QRectF &rect) const;
+       QRectF label_rect(const QRectF &rect) const override;
 
        /**
         * Computes the outline rectangle of the viewport hit-box.
         * @param rect the rectangle of the viewport area.
         * @return Returns the rectangle of the hit-box.
         */
-       QRectF hit_box_rect(const QRectF &rect) const;
+       QRectF hit_box_rect(const ViewItemPaintParams &pp) const override;
 
        /**
         * Gets the text to show in the marker.
@@ -97,19 +101,19 @@ public:
         * @param rect The rectangle of the ruler client area.
         * @param hover true if the label is being hovered over by the mouse.
         */
-       void paint_label(QPainter &p, const QRect &rect, bool hover);
+       void paint_label(QPainter &p, const QRect &rect, bool hover) override;
 
        /**
         * Paints the foreground layer of the item with a QPainter
         * @param p the QPainter to paint into.
         * @param pp the painting parameters object to paint with.
-        **/
-       void paint_fore(QPainter &p, const ViewItemPaintParams &pp);
+        */
+       void paint_fore(QPainter &p, const ViewItemPaintParams &pp) override;
 
-       virtual pv::widgets::Popup* create_popup(QWidget *parent);
+       virtual pv::widgets::Popup* create_popup(QWidget *parent) override;
 
 private Q_SLOTS:
-       void on_value_changed(double value);
+       void on_value_changed(const pv::util::Timestamp& value);
 
 protected:
        const QColor &colour_;
@@ -119,7 +123,7 @@ protected:
        QSizeF text_size_;
 
        QWidgetAction *value_action_;
-       QDoubleSpinBox *value_widget_;
+       pv::widgets::TimestampSpinBox *value_widget_;
        bool updating_value_widget_;
 };