]> sigrok.org Git - pulseview.git/blobdiff - pv/view/timemarker.hpp
TimeMarker: Replaced time_changed signal with View::time_item_apparance_changed
[pulseview.git] / pv / view / timemarker.hpp
index ae54749e4e58055e5c73db88cbf0b28526f4511b..864a4e3865dc007c722cedbee04179f5c437e49e 100644 (file)
@@ -27,7 +27,7 @@
 #include <QRectF>
 #include <QWidgetAction>
 
-#include "selectableitem.hpp"
+#include "timeitem.hpp"
 
 class QPainter;
 class QRect;
@@ -37,7 +37,7 @@ namespace view {
 
 class View;
 
-class TimeMarker : public SelectableItem
+class TimeMarker : public TimeItem
 {
        Q_OBJECT
 
@@ -73,18 +73,16 @@ public:
        QPoint point() const;
 
        /**
-        * Paints the marker to the viewport.
-        * @param p The painter to draw with.
-        * @param rect The rectangle of the viewport client area.
+        * Computes the outline rectangle of a label.
+        * @param rect the rectangle of the header area.
+        * @return Returns the rectangle of the signal label.
         */
-       virtual void paint(QPainter &p, const QRect &rect);
+       QRectF label_rect(const QRectF &rect) const;
 
        /**
-        * Gets the marker label rectangle.
-        * @param rect The rectangle of the ruler client area.
-        * @return Returns the label rectangle.
+        * Gets the text to show in the marker.
         */
-       virtual QRectF get_label_rect(const QRect &rect) const;
+       virtual QString get_text() const = 0;
 
        /**
         * Paints the marker's label to the ruler.
@@ -93,16 +91,19 @@ public:
         */
        void paint_label(QPainter &p, const QRect &rect);
 
+       /**
+        * 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);
+
        pv::widgets::Popup* create_popup(QWidget *parent);
 
 private Q_SLOTS:
        void on_value_changed(double value);
 
-Q_SIGNALS:
-       void time_changed();
-
 protected:
-       View &view_;
        const QColor &colour_;
 
        double time_;