X-Git-Url: https://sigrok.org/gitweb/?a=blobdiff_plain;f=pv%2Fviews%2Ftrace%2Fview.hpp;h=bf8b64325feef171b3c7fb17b01dff461985284f;hb=38b77a3ba1738aebf516491cc95e25219938a877;hp=7fe2bf720181a04b3523efbed7f6e93b78c116a2;hpb=74bf66669012692f7eda790abe724bd5bb4ae8c6;p=pulseview.git diff --git a/pv/views/trace/view.hpp b/pv/views/trace/view.hpp index 7fe2bf72..bf8b6432 100644 --- a/pv/views/trace/view.hpp +++ b/pv/views/trace/view.hpp @@ -96,6 +96,7 @@ private: static const pv::util::Timestamp MinScale; static const int MaxScrollValue; + static const int ViewScrollMargin; static const int ScaleUnits[3]; @@ -149,6 +150,8 @@ public: Viewport* viewport(); const Viewport* viewport() const; + QAbstractScrollArea* scrollarea() const; + const Ruler* ruler() const; virtual void save_settings(QSettings &settings) const; @@ -269,7 +272,7 @@ public: bool colored_bg() const; /** - * Returns true if cursors are displayed. false otherwise. + * Returns true if cursors are displayed, false otherwise. */ bool cursors_shown() const; @@ -279,14 +282,16 @@ public: void show_cursors(bool show = true); /** - * Sets the cursors to the given offsets. You will still have to call show_cursors separately. + * Sets the cursors to the given offsets. + * You still have to call show_cursors() separately. */ void set_cursors(pv::util::Timestamp& first, pv::util::Timestamp& second); /** * Moves the cursors to a convenient position in the view. + * You still have to call show_cursors() separately. */ - void centre_cursors(); + void center_cursors(); /** * Returns a reference to the pair of cursors. @@ -437,6 +442,8 @@ private Q_SLOTS: void h_scroll_value_changed(int value); void v_scroll_value_changed(); + void on_grab_ruler(int ruler_id); + void signals_changed(); void capture_state_updated(int state); @@ -501,6 +508,8 @@ private: QShortcut *zoom_in_shortcut_, *zoom_in_shortcut_2_; QShortcut *zoom_out_shortcut_, *zoom_out_shortcut_2_; QShortcut *home_shortcut_, *end_shortcut_; + QShortcut *grab_ruler_left_shortcut_, *grab_ruler_right_shortcut_; + QShortcut *cancel_grab_shortcut_; unordered_set< shared_ptr > signals_; @@ -522,6 +531,8 @@ private: pv::util::Timestamp ruler_offset_; /// The offset of the zero point in seconds. pv::util::Timestamp zero_offset_; + /// Shows whether the user set a custom zero offset that we should keep + bool custom_zero_offset_set_; bool updating_scroll_; bool settings_restored_; @@ -546,6 +557,7 @@ private: vector< shared_ptr > trigger_markers_; QWidget* hover_widget_; + TimeMarker* grabbed_widget_; QPoint hover_point_; shared_ptr signal_under_mouse_cursor_; uint16_t snap_distance_;