X-Git-Url: https://sigrok.org/gitweb/?a=blobdiff_plain;f=pv%2Fviews%2Ftrace%2Fruler.hpp;h=18a09d9baf5fce069f8ebeaf8b584a142058e36f;hb=93dbad3ed4954c3e0c140c26e867bda219cd683f;hp=40aa31bfefb4a9f42887b41d3035464a21994b33;hpb=79b53a1ae4a451ef60c18dff9957d311ab90c396;p=pulseview.git diff --git a/pv/views/trace/ruler.hpp b/pv/views/trace/ruler.hpp index 40aa31bf..18a09d9b 100644 --- a/pv/views/trace/ruler.hpp +++ b/pv/views/trace/ruler.hpp @@ -117,11 +117,18 @@ public: unsigned precision = 0, bool sign = true); - pv::util::Timestamp get_time_from_x_pos(uint32_t x) const; + pv::util::Timestamp get_absolute_time_from_x_pos(uint32_t x) const; + pv::util::Timestamp get_ruler_time_from_x_pos(uint32_t x) const; + + pv::util::Timestamp get_ruler_time_from_absolute_time(const pv::util::Timestamp& abs_time) const; + pv::util::Timestamp get_absolute_time_from_ruler_time(const pv::util::Timestamp& ruler_time) const; + + shared_ptr get_reference_item() const; protected: virtual void contextMenuEvent(QContextMenuEvent *event) override; void resizeEvent(QResizeEvent*) override; + virtual void item_hover(const shared_ptr &item, QPoint pos) override; private: /** @@ -171,11 +178,12 @@ private: function format_function); private Q_SLOTS: - void hover_point_changed(const QPoint &hp); + void on_hover_point_changed(const QWidget* widget, const QPoint &hp); void invalidate_tick_position_cache(); void on_createMarker(); + void on_setZeroPosition(); void on_toggleHoverMarker(); private: @@ -185,6 +193,8 @@ private: */ boost::optional tick_position_cache_; + shared_ptr hover_item_; + uint32_t context_menu_x_pos_; };