X-Git-Url: https://sigrok.org/gitweb/?p=pulseview.git;a=blobdiff_plain;f=pv%2Fviews%2Ftrace%2Ftimeitem.hpp;h=acac3273955f49c862932fbfe4ad3654e6e0ac07;hp=a9b21c7258ec79ccd9f504ec6883632e1328b709;hb=0bb3dd25421a8638afb881d46799a13378d3f00b;hpb=1373fec59223e7511078abe3dbf4a6b61b4af234 diff --git a/pv/views/trace/timeitem.hpp b/pv/views/trace/timeitem.hpp index a9b21c72..acac3273 100644 --- a/pv/views/trace/timeitem.hpp +++ b/pv/views/trace/timeitem.hpp @@ -17,8 +17,8 @@ * along with this program; if not, see . */ -#ifndef PULSEVIEW_PV_VIEWS_TRACEVIEW_TIMEITEM_HPP -#define PULSEVIEW_PV_VIEWS_TRACEVIEW_TIMEITEM_HPP +#ifndef PULSEVIEW_PV_VIEWS_TRACE_TIMEITEM_HPP +#define PULSEVIEW_PV_VIEWS_TRACE_TIMEITEM_HPP #include "viewitem.hpp" @@ -33,7 +33,6 @@ class View; * nature, not making assumptions about the kind of item shown. */ class TimeItem : public ViewItem - { Q_OBJECT @@ -44,20 +43,32 @@ protected: */ TimeItem(View &view); + bool snapping_disabled_ = false; + public: /** * Sets the time of the marker. */ virtual void set_time(const pv::util::Timestamp& time) = 0; + /** + * Returns the time this time item is set to. + * @return 0 in case there is no valid time (e.g. for a cursor pair) + */ + virtual const pv::util::Timestamp time() const = 0; + virtual float get_x() const = 0; + virtual const pv::util::Timestamp delta(const pv::util::Timestamp& other) const; + /** * Drags the item to a delta relative to the drag point. * @param delta the offset from the drag point. */ void drag_by(const QPoint &delta); + bool is_snapping_disabled() const; + protected: View &view_; }; @@ -66,4 +77,4 @@ protected: } // namespace views } // namespace pv -#endif // PULSEVIEW_PV_VIEWS_TRACEVIEW_TIMEITEM_HPP +#endif // PULSEVIEW_PV_VIEWS_TRACE_TIMEITEM_HPP