X-Git-Url: http://git.code-monkey.de/?a=blobdiff_plain;f=pv%2Ftoolbars%2Fsamplingbar.cpp;h=7ee4d98150b5ccdb491ff9e2093a3507a9e7ad0d;hb=53a7cce47482b2220e023bfcb9b4069b6eb88805;hp=ddca7b5961a8145155c2a64ab0f9f6df0e1fea33;hpb=ed1d9d81f46c6595bea7278aa5dc9c1213c81609;p=pulseview.git diff --git a/pv/toolbars/samplingbar.cpp b/pv/toolbars/samplingbar.cpp index ddca7b5..7ee4d98 100644 --- a/pv/toolbars/samplingbar.cpp +++ b/pv/toolbars/samplingbar.cpp @@ -30,6 +30,7 @@ #include "samplingbar.hpp" #include +#include #include #include #include @@ -55,9 +56,10 @@ const uint64_t SamplingBar::MinSampleCount = 100ULL; const uint64_t SamplingBar::MaxSampleCount = 1000000000000ULL; const uint64_t SamplingBar::DefaultSampleCount = 1000000; -SamplingBar::SamplingBar(SigSession &session, QWidget *parent) : - QToolBar("Sampling Bar", parent), +SamplingBar::SamplingBar(Session &session, MainWindow &main_window) : + QToolBar("Sampling Bar", &main_window), session_(session), + main_window_(main_window), device_selector_(this), updating_device_selector_(false), configure_button_(this), @@ -86,7 +88,7 @@ SamplingBar::SamplingBar(SigSession &session, QWidget *parent) : sample_count_.show_min_max_step(0, UINT64_MAX, 1); - set_capture_state(pv::SigSession::Stopped); + set_capture_state(pv::Session::Stopped); configure_button_.setIcon(QIcon::fromTheme("configure", QIcon(":/icons/configure.png"))); @@ -109,7 +111,7 @@ SamplingBar::SamplingBar(SigSession &session, QWidget *parent) : } void SamplingBar::set_device_list( - const std::list< std::pair, std::string> > &devices, + const std::list< std::shared_ptr > &devices, shared_ptr selected) { int selected_index = -1; @@ -120,12 +122,12 @@ void SamplingBar::set_device_list( device_selector_.clear(); - for (auto entry : devices) { - auto device = entry.first; - auto display_name = entry.second; - + for (auto device : devices) { assert(device); + string display_name = + session_.device_manager().get_display_name(device); + if (selected == device) selected_index = device_selector_.count(); @@ -151,11 +153,11 @@ shared_ptr SamplingBar::get_selected_device() const return device_selector_.itemData(index).value>(); } -void SamplingBar::set_capture_state(pv::SigSession::capture_state state) +void SamplingBar::set_capture_state(pv::Session::capture_state state) { const QIcon *icons[] = {&icon_grey_, &icon_red_, &icon_green_}; run_stop_button_.setIcon(*icons[state]); - run_stop_button_.setText((state == pv::SigSession::Stopped) ? + run_stop_button_.setText((state == pv::Session::Stopped) ? tr("Run") : tr("Stop")); run_stop_button_.setShortcut(QKeySequence(Qt::Key_Space)); } @@ -430,7 +432,7 @@ void SamplingBar::on_device_selected() if (!device) return; - session_.set_device(device); + main_window_.select_device(device); update_device_config_widgets(); } @@ -449,7 +451,7 @@ void SamplingBar::on_run_stop() { commit_sample_count(); commit_sample_rate(); - run_stop(); + main_window_.run_stop(); } void SamplingBar::on_config_changed()