X-Git-Url: http://git.code-monkey.de/?a=blobdiff_plain;f=pv%2Ftoolbars%2Fsamplingbar.h;h=cf425775aeb83bbb01bca1413b8c4eb718bb2c22;hb=8575601295c4853ae73fa404eb157bd063af0c20;hp=1f40d0452ff6ca8d7265cc30703eab46bcf388d4;hpb=2b49eeb02d92b4744f8ebfcfd38ef27384cdd751;p=pulseview.git diff --git a/pv/toolbars/samplingbar.h b/pv/toolbars/samplingbar.h index 1f40d04..cf42577 100644 --- a/pv/toolbars/samplingbar.h +++ b/pv/toolbars/samplingbar.h @@ -31,11 +31,16 @@ #include #include +#include +#include struct st_dev_inst; class QAction; namespace pv { + +class SigSession; + namespace toolbars { class SamplingBar : public QToolBar @@ -43,11 +48,10 @@ class SamplingBar : public QToolBar Q_OBJECT private: - static const uint64_t RecordLengths[20]; static const uint64_t DefaultRecordLength; public: - SamplingBar(QWidget *parent); + SamplingBar(SigSession &session, QWidget *parent); void set_device_list(const std::list &devices); @@ -59,31 +63,36 @@ public: void set_capture_state(pv::SigSession::capture_state state); signals: - void device_selected(); - void run_stop(); private: void update_sample_rate_selector(); void update_sample_rate_selector_value(); + void update_sample_count_selector(); void commit_sample_rate(); + void commit_sample_count(); private slots: void on_device_selected(); + void on_sample_count_changed(); void on_sample_rate_changed(); - void on_configure(); void on_run_stop(); private: + SigSession &_session; + QComboBox _device_selector; - QToolButton _configure_button; + bool _updating_device_selector; + + pv::widgets::PopupToolButton _configure_button; + QAction *_configure_button_action; - QComboBox _record_length_selector; + pv::widgets::PopupToolButton _probes_button; - QComboBox _sample_rate_list; - QAction *_sample_rate_list_action; - QDoubleSpinBox _sample_rate_value; - QAction *_sample_rate_value_action; + pv::widgets::SweepTimingWidget _sample_count; + pv::widgets::SweepTimingWidget _sample_rate; + bool _updating_sample_rate; + bool _updating_sample_count; QIcon _icon_red; QIcon _icon_green;