]> sigrok.org Git - pulseview.git/blobdiff - pv/toolbars/samplingbar.cpp
SamplingBar: Add Space as a shortcut to Run/Stop.
[pulseview.git] / pv / toolbars / samplingbar.cpp
index 2350a45f8f76269f6457f67e3cf46d4652f25242..21421bca34f16b235b644ca3096996f2aa9e0a2d 100644 (file)
@@ -109,7 +109,7 @@ SamplingBar::SamplingBar(SigSession &session, QWidget *parent) :
 }
 
 void SamplingBar::set_device_list(
-       const std::map< shared_ptr<Device>, string > &device_names,
+       const std::list< std::pair<std::shared_ptr<sigrok::Device>, std::string> > &devices,
        shared_ptr<Device> selected)
 {
        int selected_index = -1;
@@ -120,16 +120,16 @@ void SamplingBar::set_device_list(
 
        _device_selector.clear();
 
-       for (auto entry : device_names) {
+       for (auto entry : devices) {
                auto device = entry.first;
-               auto description = entry.second;
+               auto display_name = entry.second;
 
                assert(device);
 
                if (selected == device)
                        selected_index = _device_selector.count();
 
-               _device_selector.addItem(description.c_str(),
+               _device_selector.addItem(display_name.c_str(),
                        qVariantFromValue(device));
        }
 
@@ -157,6 +157,7 @@ void SamplingBar::set_capture_state(pv::SigSession::capture_state state)
        _run_stop_button.setIcon(*icons[state]);
        _run_stop_button.setText((state == pv::SigSession::Stopped) ?
                tr("Run") : tr("Stop"));
+       _run_stop_button.setShortcut(QKeySequence(Qt::Key_Space));
 }
 
 void SamplingBar::update_sample_rate_selector()
@@ -237,7 +238,7 @@ void SamplingBar::update_sample_rate_selector_value()
        try {
                auto gvar = device->config_get(ConfigKey::SAMPLERATE);
                uint64_t samplerate =
-                       Glib::VariantBase::cast_dynamic<Glib::Variant<uint64_t>>(gvar).get();
+                       Glib::VariantBase::cast_dynamic<Glib::Variant<guint64>>(gvar).get();
                assert(!_updating_sample_rate);
                _updating_sample_rate = true;
                _sample_rate.set_value(samplerate);
@@ -333,7 +334,7 @@ void SamplingBar::update_device_config_widgets()
                                if (capabilities.count(Capability::SET))
                                {
                                        device->config_set(ConfigKey::LIMIT_FRAMES,
-                                               Glib::Variant<uint64_t>::create(1));
+                                               Glib::Variant<guint64>::create(1));
                                        on_config_changed();
                                }
                                break;
@@ -373,7 +374,7 @@ void SamplingBar::commit_sample_count()
        {
                try {
                        device->config_set(ConfigKey::LIMIT_SAMPLES,
-                               Glib::Variant<uint64_t>::create(sample_count));
+                               Glib::Variant<guint64>::create(sample_count));
                        on_config_changed();
                } catch (Error error) {
                        qDebug() << "Failed to configure sample count.";
@@ -403,7 +404,7 @@ void SamplingBar::commit_sample_rate()
        _updating_sample_rate = true;
        try {
                device->config_set(ConfigKey::SAMPLERATE,
-                       Glib::Variant<uint64_t>::create(sample_rate));
+                       Glib::Variant<guint64>::create(sample_rate));
                on_config_changed();
        } catch (Error error) {
                qDebug() << "Failed to configure samplerate.";