}
_updating_device_selector = false;
-
- on_device_selected();
}
shared_ptr<pv::device::DevInst> SamplingBar::get_selected_device() const
for (int i = 0; i < _device_selector.count(); i++)
if (dev_inst->dev_inst() ==
_device_selector.itemData(i).value<void*>()) {
+ // Calling this leads to on_device_selected being
+ // invoked, which updates the sampling bar widgets.
_device_selector.setCurrentIndex(i);
return;
}
if (_sample_count_supported)
{
- uint64_t sample_count = DefaultSampleCount;
+ uint64_t sample_count = _sample_count.value();
uint64_t min_sample_count = 0;
uint64_t max_sample_count = MaxSampleCount;
+ if (sample_count == 0)
+ sample_count = DefaultSampleCount;
+
if ((gvar = dev_inst->list_config(NULL, SR_CONF_LIMIT_SAMPLES)))
{
g_variant_get(gvar, "(tt)",
// Set the sample count
assert(!_updating_sample_count);
_updating_sample_count = true;
- if (!dev_inst->set_config(NULL, SR_CONF_LIMIT_SAMPLES,
+ if (_sample_count_supported &&
+ !dev_inst->set_config(NULL, SR_CONF_LIMIT_SAMPLES,
g_variant_new_uint64(sample_count))) {
qDebug() << "Failed to configure sample count.";
return;