From 89f974ad6e9f8b8c3d33e45d29f491f2209e3624 Mon Sep 17 00:00:00 2001 From: Stanislaw Halik Date: Sat, 20 Aug 2016 11:32:51 +0200 Subject: options/{connector,base_value}: add missing dtor call. rename callees. --- options/connector.cpp | 8 ++++---- options/connector.hpp | 4 ++-- options/value.hpp | 6 +++++- 3 files changed, 11 insertions(+), 7 deletions(-) diff --git a/options/connector.cpp b/options/connector.cpp index 4ba532d4..f23db06d 100644 --- a/options/connector.cpp +++ b/options/connector.cpp @@ -6,12 +6,12 @@ namespace detail { connector::~connector() {} -void connector::on_bundle_destructed(const QString& name, const base_value* val) +void connector::on_value_destructed(const QString& name, const base_value* val) { QMutexLocker l(get_mtx()); auto it = connected_values.find(name); - if (it != connected_values.end()) + if (it != connected_values.cend()) { std::vector& values = (*it).second; for (auto it = values.begin(); it != values.end(); ) @@ -25,7 +25,7 @@ void connector::on_bundle_destructed(const QString& name, const base_value* val) } } -void connector::on_bundle_created(const QString& name, const base_value* val) +void connector::on_value_created(const QString& name, const base_value* val) { QMutexLocker l(get_mtx()); auto it = connected_values.find(name); @@ -46,7 +46,7 @@ void connector::on_bundle_created(const QString& name, const base_value* val) void connector::notify_values(const QString& name) const { auto it = connected_values.find(name); - if (it != connected_values.end()) + if (it != connected_values.cend()) { for (const base_value* val : (*it).second) { diff --git a/options/connector.hpp b/options/connector.hpp index dea9fd0f..ef9e4dbf 100644 --- a/options/connector.hpp +++ b/options/connector.hpp @@ -20,8 +20,8 @@ class OPENTRACK_OPTIONS_EXPORT connector std::map> connected_values; - void on_bundle_destructed(const QString& name, const base_value* val); - void on_bundle_created(const QString& name, const base_value* val); + void on_value_destructed(const QString& name, const base_value* val); + void on_value_created(const QString& name, const base_value* val); protected: void notify_values(const QString& name) const; diff --git a/options/value.hpp b/options/value.hpp index 4d067af1..f0ecf0c7 100644 --- a/options/value.hpp +++ b/options/value.hpp @@ -31,7 +31,11 @@ public: QString name() const { return self_name; } base_value(bundle b, const QString& name) : b(b), self_name(name) { - b->on_bundle_created(name, this); + b->on_value_created(name, this); + } + ~base_value() override + { + b->on_value_destructed(self_name, this); } signals: OPENTRACK_DEFINE_SIGNAL(double); -- cgit v1.2.3