]> sigrok.org Git - pulseview.git/blobdiff - pv/view/timeitem.hpp
Change namespace for the trace view and implement ViewBase
[pulseview.git] / pv / view / timeitem.hpp
index eb313a7ec6825d379d011c1ec12a358cf8b86254..35cbab3f097e8af5d76359aa947d93ed17e0ebd2 100644 (file)
  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301 USA
  */
 
-#ifndef PULSEVIEW_PV_VIEW_TIMEITEM_H
-#define PULSEVIEW_PV_VIEW_TIMEITEM_H
+#ifndef PULSEVIEW_PV_VIEWS_TRACEVIEW_TIMEITEM_HPP
+#define PULSEVIEW_PV_VIEWS_TRACEVIEW_TIMEITEM_HPP
 
-#include "selectableitem.hpp"
+#include "viewitem.hpp"
 
 namespace pv {
-namespace view {
+namespace views {
+namespace TraceView {
 
 class View;
 
-class TimeItem : public SelectableItem
+class TimeItem : public ViewItem
+
 {
        Q_OBJECT
 
@@ -43,13 +45,22 @@ public:
        /**
         * Sets the time of the marker.
         */
-       virtual void set_time(double time) = 0;
+       virtual void set_time(const pv::util::Timestamp& time) = 0;
+
+       virtual float get_x() const = 0;
+
+       /**
+        * 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);
 
 protected:
        View &view_;
 };
 
-} // namespace view
+} // namespace TraceView
+} // namespace views
 } // namespace pv
 
-#endif // PULSEVIEW_PV_VIEW_TIMEITEM_H
+#endif // PULSEVIEW_PV_VIEWS_TRACEVIEW_TIMEITEM_HPP