]> sigrok.org Git - pulseview.git/blobdiff - pv/views/trace/standardbar.hpp
Fix #1292/1294 by snapping to any edge when not hovering over a signal
[pulseview.git] / pv / views / trace / standardbar.hpp
index e1394372dc4a0a5273b9b03501f99dba24c5d48e..9c27f43ee171a4e8b9bfde6a3393672c758876c6 100644 (file)
 #include <QAction>
 #include <QSpinBox>
 #include <QToolBar>
+#include <QToolButton>
 #include <QWidget>
 
 #include <pv/session.hpp>
 
+#include "trace.hpp"
+
 namespace pv {
 
 class MainWindow;
@@ -56,7 +59,6 @@ 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:
@@ -70,11 +72,18 @@ protected:
        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();
 
@@ -82,15 +91,19 @@ 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_display_mode_changed(bool segment_selectable);
+       void on_segment_selected(int ui_segment_id);
+       void on_segment_display_mode_changed(int mode, bool segment_selectable);
 
 private:
        vector<QAction*> multi_segment_actions_;