diff options
author | Christian Kandeler <christian.kandeler@qt.io> | 2019-07-09 17:41:30 +0200 |
---|---|---|
committer | Christian Kandeler <christian.kandeler@qt.io> | 2019-07-22 14:31:01 +0000 |
commit | 4d71c0f13e5854849a9836186f534dfab1ef9869 (patch) | |
tree | 3af786598de0a84221e20f9c3703bc8d8afee8c6 /src/libs/utils/namevaluedictionary.h | |
parent | b1dbd7e3580fb92879e0b3e0c9d21c1fd8dc4012 (diff) |
Let users disable environment entries
It's helpful to be able to temporarily disable environment variables, as
opposed to having to remove (and then re-add) them entirely.
Fixes: QTCREATORBUG-20984
Change-Id: Ib0d287035b9357507c4c19faaf3a1517382506b5
Reviewed-by: hjk <hjk@qt.io>
Diffstat (limited to 'src/libs/utils/namevaluedictionary.h')
-rw-r--r-- | src/libs/utils/namevaluedictionary.h | 18 |
1 files changed, 8 insertions, 10 deletions
diff --git a/src/libs/utils/namevaluedictionary.h b/src/libs/utils/namevaluedictionary.h index af414a0c625..acb9800745c 100644 --- a/src/libs/utils/namevaluedictionary.h +++ b/src/libs/utils/namevaluedictionary.h @@ -33,7 +33,7 @@ namespace Utils { using NameValuePair = std::pair<QString, QString>; using NameValuePairs = QVector<NameValuePair>; -using NameValueMap = QMap<QString, QString>; +using NameValueMap = QMap<QString, QPair<QString, bool>>; class QTCREATOR_UTILS_EXPORT NameValueDictionary { @@ -48,7 +48,7 @@ public: QStringList toStringList() const; QString value(const QString &key) const; - void set(const QString &key, const QString &value); + void set(const QString &key, const QString &value, bool enabled = true); void unset(const QString &key); void modify(const NameValueItems &items); /// Return the KeyValueDictionary changes necessary to modify this into the other environment. @@ -61,15 +61,13 @@ public: void clear(); int size() const; - QString key(NameValueDictionary::const_iterator it) const { return it.key(); } + QString key(const_iterator it) const { return it.key(); } + QString value(const_iterator it) const { return it.value().first; } + bool isEnabled(const_iterator it) const { return it.value().second; } - QString value(NameValueDictionary::const_iterator it) const { return it.value(); } - - NameValueDictionary::const_iterator constBegin() const { return m_values.constBegin(); } - - NameValueDictionary::const_iterator constEnd() const { return m_values.constEnd(); } - - NameValueDictionary::const_iterator constFind(const QString &name) const; + const_iterator constBegin() const { return m_values.constBegin(); } + const_iterator constEnd() const { return m_values.constEnd(); } + const_iterator constFind(const QString &name) const; friend bool operator!=(const NameValueDictionary &first, const NameValueDictionary &second) { |