- sr_probe *const probe = (sr_probe*)
- item->data(UserRole).value<void*>();
- assert(probe);
- probe->enabled = item->checkState() == Checked;
+ _updating_probes = false;
+}
+
+void Probes::showEvent(QShowEvent *e)
+{
+ pv::widgets::Popup::showEvent(e);
+
+ _updating_probes = true;
+
+ _probes.clear();
+
+ const vector< shared_ptr<pv::view::Signal> > sigs =
+ _session.get_signals();
+ for (unsigned int i = 0; i < sigs.size(); i++)
+ {
+ const shared_ptr<pv::view::Signal> &s = sigs[i];
+ assert(s);
+ QListWidgetItem *const item = new QListWidgetItem(
+ s->get_name(), &_probes);
+ assert(item);
+ item->setCheckState(s->enabled() ? Checked : Unchecked);
+ item->setData(UserRole, qVariantFromValue(i));
+ _probes.addItem(item);