Added get_context_bar_actions
[pulseview.git] / pv / view / timemarker.h
index e8dac5d470792c1234e0708369ff6c69c2f9921d..8d8ae162e909c3738e628477fbdc327b77f59bc0 100644 (file)
@@ -25,6 +25,8 @@
 #include <QObject>
 #include <QRectF>
 
+#include "selectableitem.h"
+
 class QPainter;
 class QRect;
 
@@ -33,7 +35,7 @@ namespace view {
 
 class View;
 
-class TimeMarker : public QObject
+class TimeMarker : public SelectableItem
 {
        Q_OBJECT
 
@@ -46,11 +48,6 @@ protected:
         */
        TimeMarker(const View &view, const QColor &colour, double time);
 
-       /**
-        * Copy constructor
-        */
-       TimeMarker(const TimeMarker &s);
-
 public:
        /**
         * Gets the time of the marker.
@@ -80,8 +77,16 @@ public:
         * Paints the marker's label to the ruler.
         * @param p The painter to draw with.
         * @param rect The rectangle of the ruler client area.
+        * @param prefix The SI prefix to paint time value with.
+        */
+       virtual void paint_label(QPainter &p, const QRect &rect,
+               unsigned int prefix) = 0;
+
+       /**
+        * Returns a list of context menu items to show in the context
+        * bar.
         */
-       virtual void paint_label(QPainter &p, const QRect &rect) = 0;
+       const std::list<QAction*> get_context_bar_actions();
 
 signals:
        void time_changed();
@@ -98,4 +103,4 @@ protected:
 } // namespace view
 } // namespace pv
 
-#endif // PULSEVIEW_PV_VIEW_MARKER_H
\ No newline at end of file
+#endif // PULSEVIEW_PV_VIEW_MARKER_H