From 6a6e7c90df1e479e20d9b0b8df4e5db050673aad Mon Sep 17 00:00:00 2001 From: hjk Date: Thu, 25 Mar 2021 18:25:27 +0100 Subject: [PATCH] Utils: Add a StringAspect::valueChanged signal Similar to what BoolAspect already has. Will help with the NimSettings page. Change-Id: Id373cd21769c129fb8329d9102ccfd97675e8d24 Reviewed-by: David Schulz --- src/libs/utils/aspects.cpp | 6 ++++++ src/libs/utils/aspects.h | 2 ++ 2 files changed, 8 insertions(+) diff --git a/src/libs/utils/aspects.cpp b/src/libs/utils/aspects.cpp index c9a2cb0c2bc..98225f44245 100644 --- a/src/libs/utils/aspects.cpp +++ b/src/libs/utils/aspects.cpp @@ -820,6 +820,7 @@ void StringAspect::setValue(const QString &val) if (BaseAspect::setValueQuietly(QVariant(processedValue))) { update(); emit changed(); + emit valueChanged(processedValue); } } @@ -1179,6 +1180,11 @@ void StringAspect::setVolatileValue(const QVariant &val) } } +void StringAspect::emitChangedValue() +{ + emit valueChanged(value()); +} + void StringAspect::update() { const QString displayedString = d->m_displayFilter ? d->m_displayFilter(value()) : value(); diff --git a/src/libs/utils/aspects.h b/src/libs/utils/aspects.h index 5b32d082c10..ab80a89a846 100644 --- a/src/libs/utils/aspects.h +++ b/src/libs/utils/aspects.h @@ -301,6 +301,7 @@ public: QVariant volatileValue() const override; void setVolatileValue(const QVariant &val) override; + void emitChangedValue() override; // Hook between UI and StringAspect: using ValueAcceptor = std::function(const QString &, const QString &)>; @@ -354,6 +355,7 @@ public: signals: void checkedChanged(); + void valueChanged(const QString &newValue); protected: void update();