X-Git-Url: http://git.code-monkey.de/?a=blobdiff_plain;f=pv%2Fviews%2Ftrace%2Fview.hpp;h=e80198d329062f8175b04e9e28dbf4c1be543c75;hb=4349dc21e726fe6e9e1fba59f9f06a9bdc718078;hp=da05691f42f5274b8c8fd86d54ffeccd80230927;hpb=7daebd054e65a244dce36933cbf173b8d7532a09;p=pulseview.git diff --git a/pv/views/trace/view.hpp b/pv/views/trace/view.hpp index da05691..e80198d 100644 --- a/pv/views/trace/view.hpp +++ b/pv/views/trace/view.hpp @@ -191,12 +191,18 @@ public: */ unsigned int depth() const; + /** + * Returns the currently displayed segment, starting at 0. + */ + uint32_t current_segment() const; + /** * Returns whether the currently shown segment can be influenced * (selected) or not. */ bool segment_is_selectable() const; + Trace::SegmentDisplayMode segment_display_mode() const; void set_segment_display_mode(Trace::SegmentDisplayMode mode); void zoom(double steps); @@ -308,7 +314,8 @@ Q_SIGNALS: void segment_changed(int segment_id); /// Emitted when the multi-segment display mode changed - void segment_display_mode_changed(bool segment_selectable); + /// @param mode is a value of Trace::SegmentDisplayMode + void segment_display_mode_changed(int mode, bool segment_selectable); public Q_SLOTS: void trigger_event(util::Timestamp location); @@ -382,6 +389,7 @@ private Q_SLOTS: void capture_state_updated(int state); void on_new_segment(int new_segment_id); + void on_segment_completed(int new_segment_id); void on_segment_changed(int segment); virtual void perform_delayed_view_update(); @@ -424,6 +432,11 @@ private Q_SLOTS: */ void set_time_unit(pv::util::TimeUnit time_unit); + /** + * Sets the current segment with the first segment starting at 0. + */ + void set_current_segment(uint32_t segment_id); + private: CustomScrollArea *scrollarea_; Viewport *viewport_; @@ -437,8 +450,6 @@ private: vector< shared_ptr > decode_traces_; #endif - /// The ID of the currently displayed segment - int current_segment_; Trace::SegmentDisplayMode segment_display_mode_; /// Signals whether the user can change the currently shown segment.