X-Git-Url: https://sigrok.org/gitweb/?p=pulseview.git;a=blobdiff_plain;f=pv%2Fprop%2Fint.cpp;h=6a2cb7d0300b06345cbfa2422e07068812c5d13c;hp=502665daf4035a8e473b356bb17ebead87c2ef56;hb=27e8df221014d1a8c7769866773e8dbb0486eea8;hpb=a2b921574b467fd9193d06497bf0ee058e8f7470 diff --git a/pv/prop/int.cpp b/pv/prop/int.cpp index 502665da..6a2cb7d0 100644 --- a/pv/prop/int.cpp +++ b/pv/prop/int.cpp @@ -42,7 +42,11 @@ Int::Int(QString name, { } -QWidget* Int::get_widget(QWidget *parent) +Int::~Int() +{ +} + +QWidget* Int::get_widget(QWidget *parent, bool auto_commit) { if (_spin_box) return _spin_box; @@ -51,6 +55,8 @@ QWidget* Int::get_widget(QWidget *parent) _spin_box->setSuffix(_suffix); if (_range) _spin_box->setRange((int)_range->first, (int)_range->second); + else + _spin_box->setRange(INT_MIN, INT_MAX); GVariant *const value = _getter ? _getter() : NULL; if (value) { @@ -58,6 +64,10 @@ QWidget* Int::get_widget(QWidget *parent) g_variant_unref(value); } + if (auto_commit) + connect(_spin_box, SIGNAL(valueChanged(int)), + this, SLOT(on_value_changed(int))); + return _spin_box; } @@ -71,5 +81,10 @@ void Int::commit() _setter(g_variant_new_int64(_spin_box->value())); } +void Int::on_value_changed(int) +{ + commit(); +} + } // prop } // pv