X-Git-Url: http://git.code-monkey.de/?p=pulseview.git;a=blobdiff_plain;f=pv%2Fviews%2Ftrace%2Fanalogsignal.cpp;h=bbc23fb70074bace6adc25e304d70d50583de3dd;hp=e6bd875600130141e5789f9f9b7626aec3c0b75c;hb=d0c0573b3ee694827a747727f862c5f91736ca05;hpb=451dc5f33fbc4f559881acdf338c476a976fcbf2 diff --git a/pv/views/trace/analogsignal.cpp b/pv/views/trace/analogsignal.cpp index e6bd875..bbc23fb 100644 --- a/pv/views/trace/analogsignal.cpp +++ b/pv/views/trace/analogsignal.cpp @@ -118,8 +118,7 @@ AnalogSignal::AnalogSignal( connect(analog_data, SIGNAL(min_max_changed(float, float)), this, SLOT(on_min_max_changed(float, float))); - GlobalSettings::register_change_handler(GlobalSettings::Key_View_ConversionThresholdDispMode, - bind(&AnalogSignal::on_settingViewConversionThresholdDispMode_changed, this, _1)); + GlobalSettings::add_change_handler(this); GlobalSettings gs; conversion_threshold_disp_mode_ = @@ -131,6 +130,11 @@ AnalogSignal::AnalogSignal( update_scale(); } +AnalogSignal::~AnalogSignal() +{ + GlobalSettings::remove_change_handler(this); +} + shared_ptr AnalogSignal::data() const { return base_->analog_data(); @@ -206,6 +210,12 @@ void AnalogSignal::scale_handle_drag_release() update_scale(); } +void AnalogSignal::on_setting_changed(const QString &key, const QVariant &value) +{ + if (key == GlobalSettings::Key_View_ConversionThresholdDispMode) + on_settingViewConversionThresholdDispMode_changed(value); +} + void AnalogSignal::paint_back(QPainter &p, ViewItemPaintParams &pp) { if (!base_->enabled())