projects
/
pulseview.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Fix #1309 by adding a PD info box
[pulseview.git]
/
pv
/
prop
/
string.cpp
diff --git
a/pv/prop/string.cpp
b/pv/prop/string.cpp
index d93d78eddf72589190cee89a2f0a082c76a9204b..b82b496eed42175f7361cd792a4ab8196036eee7 100644
(file)
--- a/
pv/prop/string.cpp
+++ b/
pv/prop/string.cpp
@@
-19,9
+19,12
@@
#include <cassert>
#include <cassert>
+#include <QDebug>
#include <QLineEdit>
#include <QSpinBox>
#include <QLineEdit>
#include <QSpinBox>
+#include <libsigrokcxx/libsigrokcxx.hpp>
+
#include "string.hpp"
using std::string;
#include "string.hpp"
using std::string;
@@
-48,9
+51,14
@@
QWidget* String::get_widget(QWidget *parent, bool auto_commit)
if (!getter_)
return nullptr;
if (!getter_)
return nullptr;
- Glib::VariantBase variant = getter_();
- if (!variant.gobj())
+ try {
+ Glib::VariantBase variant = getter_();
+ if (!variant.gobj())
+ return nullptr;
+ } catch (const sigrok::Error &e) {
+ qWarning() << tr("Querying config key %1 resulted in %2").arg(name_, e.what());
return nullptr;
return nullptr;
+ }
line_edit_ = new QLineEdit(parent);
line_edit_ = new QLineEdit(parent);
@@
-68,7
+76,15
@@
void String::update_widget()
if (!line_edit_)
return;
if (!line_edit_)
return;
- Glib::VariantBase variant = getter_();
+ Glib::VariantBase variant;
+
+ try {
+ variant = getter_();
+ } catch (const sigrok::Error &e) {
+ qWarning() << tr("Querying config key %1 resulted in %2").arg(name_, e.what());
+ return;
+ }
+
assert(variant.gobj());
string value = Glib::VariantBase::cast_dynamic<Glib::Variant<ustring>>(
assert(variant.gobj());
string value = Glib::VariantBase::cast_dynamic<Glib::Variant<ustring>>(