X-Git-Url: http://git.code-monkey.de/?a=blobdiff_plain;f=pv%2Fview%2Ftimemarker.h;h=d57b4dd1d6d0b654d8d46214d34cada4ad8c6cdd;hb=8dbbc7f0b9ea59d0f0d62225772f8a56eee125f5;hp=3c9198899a7ec1b0ea7eeacf073eabfc873f636d;hpb=3a6fe0818affcb40b2821eab3f633e536377dd81;p=pulseview.git diff --git a/pv/view/timemarker.h b/pv/view/timemarker.h index 3c91988..d57b4dd 100644 --- a/pv/view/timemarker.h +++ b/pv/view/timemarker.h @@ -22,8 +22,12 @@ #define PULSEVIEW_PV_VIEW_MARKER_H #include +#include #include #include +#include + +#include "selectableitem.h" class QPainter; class QRect; @@ -33,7 +37,7 @@ namespace view { class View; -class TimeMarker : public QObject +class TimeMarker : public SelectableItem { Q_OBJECT @@ -44,12 +48,7 @@ protected: * @param colour A reference to the colour of this cursor. * @param time The time to set the flag to. */ - TimeMarker(const View &view, const QColor &colour, double time); - - /** - * Copy constructor - */ - TimeMarker(const TimeMarker &s); + TimeMarker(View &view, const QColor &colour, double time); public: /** @@ -62,6 +61,13 @@ public: */ void set_time(double time); + float get_x() const; + + /** + * Gets the drag point of the row item. + */ + QPoint point() const; + /** * Paints the marker to the viewport. * @param p The painter to draw with. @@ -85,16 +91,25 @@ public: virtual void paint_label(QPainter &p, const QRect &rect, unsigned int prefix) = 0; -signals: + pv::widgets::Popup* create_popup(QWidget *parent); + +private Q_SLOTS: + void on_value_changed(double value); + +Q_SIGNALS: void time_changed(); protected: - const View &_view; - const QColor &_colour; + View &view_; + const QColor &colour_; + + double time_; - double _time; + QSizeF text_size_; - QSizeF _text_size; + QWidgetAction *value_action_; + QDoubleSpinBox *value_widget_; + bool updating_value_widget_; }; } // namespace view