#include "samplingbar.h"
+#include <pv/devicemanager.h>
#include <pv/dialogs/deviceoptions.h>
+using namespace std;
+
namespace pv {
namespace toolbars {
_configure_button(this),
_record_length_selector(this),
_sample_rate_list(this),
+ _icon_red(":/icons/status-red.svg"),
_icon_green(":/icons/status-green.svg"),
_icon_grey(":/icons/status-grey.svg"),
_run_stop_button(this)
_record_length_selector.setCurrentIndex(i);
}
- set_sampling(false);
+ set_capture_state(pv::SigSession::Stopped);
_configure_button.setIcon(QIcon::fromTheme("configure",
QIcon(":/icons/configure.png")));
_device_selector.clear();
BOOST_FOREACH (sr_dev_inst *sdi, devices) {
- QString title;
- if (sdi->vendor && sdi->vendor[0])
- title += sdi->vendor + QString(" ");
- if (sdi->model && sdi->model[0])
- title += sdi->model + QString(" ");
- if (sdi->version && sdi->version[0])
- title += sdi->version + QString(" ");
-
- _device_selector.addItem(title, qVariantFromValue(
- (void*)sdi));
+ const string title = DeviceManager::format_device_title(sdi);
+ _device_selector.addItem(title.c_str(),
+ qVariantFromValue((void*)sdi));
}
update_sample_rate_selector();
return _record_length_selector.itemData(index).value<uint64_t>();
}
-void SamplingBar::set_sampling(bool sampling)
+void SamplingBar::set_capture_state(pv::SigSession::capture_state state)
{
- _run_stop_button.setIcon(sampling ? _icon_green : _icon_grey);
- _run_stop_button.setText(sampling ? "Stop" : "Run");
+ const QIcon *icons[] = {&_icon_grey, &_icon_red, &_icon_green};
+ _run_stop_button.setIcon(*icons[state]);
+ _run_stop_button.setText((state == pv::SigSession::Stopped) ?
+ tr("Run") : tr("Stop"));
}
void SamplingBar::update_sample_rate_selector()