Implement Trace::ShowLastCompleteSegmentOnly display mode
[pulseview.git] / pv / views / trace / trace.hpp
index 75705226780e8c7a7aea029806fbf5ffdf78b4d4..777ea5001198a3cb355540006a43bfbc2f222e82 100644 (file)
@@ -67,10 +67,16 @@ public:
        /**
         * Allowed values for the multi-segment display mode.
         *
-        * Note: Consider @ref View::set_segment_display_mode when updating the list.
+        * Note: Consider these locations when updating the list:
+        * *
+        * @ref View::set_segment_display_mode
+        * @ref AnalogSignal::get_analog_segment_to_paint
+        * @ref AnalogSignal::get_logic_segment_to_paint
+        * @ref LogicSignal::get_logic_segment_to_paint
         */
        enum SegmentDisplayMode {
                ShowLastSegmentOnly = 1,
+               ShowLastCompleteSegmentOnly,
                ShowSingleSegmentOnly,
                ShowAllSegments,
                ShowAccumulatedIntensity
@@ -126,6 +132,10 @@ public:
         */
        QRectF label_rect(const QRectF &rect) const;
 
+       void set_current_segment(const int segment);
+
+       int get_current_segment() const;
+
 protected:
        /**
         * Paints the background layer of the signal with a QPainter.
@@ -166,6 +176,9 @@ protected:
 
        SegmentDisplayMode segment_display_mode_;
 
+       /// The ID of the currently displayed segment
+       int current_segment_;
+
 private:
        pv::widgets::Popup *popup_;
        QFormLayout *popup_form_;