X-Git-Url: https://sigrok.org/gitweb/?p=pulseview.git;a=blobdiff_plain;f=pv%2Fviews%2Ftrace%2Fstandardbar.hpp;h=9c27f43ee171a4e8b9bfde6a3393672c758876c6;hp=09c7907f3da3f4fc5fdb55bfa548267bd0fbce28;hb=f6b6c9bf50999dc99f9517318ffd3114cae4960f;hpb=f23c46921d031dba4c96062164cc9f3ca3c4809c diff --git a/pv/views/trace/standardbar.hpp b/pv/views/trace/standardbar.hpp index 09c7907f..9c27f43e 100644 --- a/pv/views/trace/standardbar.hpp +++ b/pv/views/trace/standardbar.hpp @@ -24,11 +24,15 @@ #include #include +#include #include +#include #include #include +#include "trace.hpp" + namespace pv { class MainWindow; @@ -55,21 +59,31 @@ public: QAction* action_view_zoom_in() const; QAction* action_view_zoom_out() const; QAction* action_view_zoom_fit() const; - QAction* action_view_zoom_one_to_one() const; QAction* action_view_show_cursors() const; protected: virtual void add_toolbar_widgets(); + virtual void show_multi_segment_ui(const bool state); + Session &session_; trace::View *view_; QAction *const action_view_zoom_in_; QAction *const action_view_zoom_out_; QAction *const action_view_zoom_fit_; - QAction *const action_view_zoom_one_to_one_; QAction *const action_view_show_cursors_; + QToolButton *segment_display_mode_selector_; + QAction *const action_sdm_last_; + QAction *const action_sdm_last_complete_; + QAction *const action_sdm_single_; + + QSpinBox *segment_selector_; + +Q_SIGNALS: + void segment_selected(int segment_id); + protected Q_SLOTS: void on_actionViewZoomIn_triggered(); @@ -77,11 +91,22 @@ protected Q_SLOTS: void on_actionViewZoomFit_triggered(bool checked); - void on_actionViewZoomOneToOne_triggered(); - void on_actionViewShowCursors_triggered(); + void on_cursor_state_changed(bool show); + + void on_actionSDMLast_triggered(); + void on_actionSDMLastComplete_triggered(); + void on_actionSDMSingle_triggered(); void on_always_zoom_to_fit_changed(bool state); + + void on_new_segment(int new_segment_id); + void on_segment_changed(int segment_id); + void on_segment_selected(int ui_segment_id); + void on_segment_display_mode_changed(int mode, bool segment_selectable); + +private: + vector multi_segment_actions_; }; } // namespace trace