]> sigrok.org Git - pulseview.git/blobdiff - pv/views/trace/timeitem.cpp
Add temporary snapping disable menu to markers and cursors
[pulseview.git] / pv / views / trace / timeitem.cpp
index f2eb5957c45ce2d92f914afb2f7ba636957be916..3de62258ae4fff0e3371f001036d15df81a9f628 100644 (file)
@@ -31,13 +31,17 @@ TimeItem::TimeItem(View &view) :
 
 void TimeItem::drag_by(const QPoint &delta)
 {
 
 void TimeItem::drag_by(const QPoint &delta)
 {
-       int64_t sample_num = view_.get_nearest_level_change(drag_point_ + delta);
-
-       if (sample_num > -1)
-               set_time(sample_num / view_.get_signal_under_mouse_cursor()->base()->get_samplerate());
-       else
+       if (snapping_disabled_) {
                set_time(view_.offset() + (drag_point_.x() + delta.x() - 0.5) *
                        view_.scale());
                set_time(view_.offset() + (drag_point_.x() + delta.x() - 0.5) *
                        view_.scale());
+       } else {
+               int64_t sample_num = view_.get_nearest_level_change(drag_point_ + delta);
+
+               if (sample_num > -1)
+                       set_time(sample_num / view_.get_signal_under_mouse_cursor()->base()->get_samplerate());
+               else
+                       set_time(view_.offset() + (drag_point_.x() + delta.x() - 0.5) * view_.scale());
+       }
 }
 
 const pv::util::Timestamp TimeItem::delta(const pv::util::Timestamp& other) const
 }
 
 const pv::util::Timestamp TimeItem::delta(const pv::util::Timestamp& other) const
@@ -45,6 +49,12 @@ const pv::util::Timestamp TimeItem::delta(const pv::util::Timestamp& other) cons
        return other - time();
 }
 
        return other - time();
 }
 
+
+bool TimeItem::is_snapping_disabled() const
+{
+       return snapping_disabled_;
+}
+
 } // namespace trace
 } // namespace views
 } // namespace pv
 } // namespace trace
 } // namespace views
 } // namespace pv