diff options
author | Ben Boeckel <MathStuf@gmail.com> | 2009-03-17 21:29:22 -0400 |
---|---|---|
committer | Ben Boeckel <MathStuf@gmail.com> | 2009-03-17 21:29:22 -0400 |
commit | 847e73d18f27e960493780b3f570dd036e32dd8b (patch) | |
tree | 81b2d88d36e750e50d0b46ff2b2fdb95ab6e01f4 /sigscript/Config.cpp | |
parent | e8e5acd7f0a9e0dc0f31c6d214d86a847e45c5f6 (diff) | |
download | sigen-847e73d18f27e960493780b3f570dd036e32dd8b.tar.gz sigen-847e73d18f27e960493780b3f570dd036e32dd8b.tar.xz sigen-847e73d18f27e960493780b3f570dd036e32dd8b.zip |
Overrides let us be smarter
Diffstat (limited to 'sigscript/Config.cpp')
-rw-r--r-- | sigscript/Config.cpp | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/sigscript/Config.cpp b/sigscript/Config.cpp index 00dcc21e..25efc677 100644 --- a/sigscript/Config.cpp +++ b/sigscript/Config.cpp @@ -99,7 +99,7 @@ QStringList Config::values(const bool recursive) const bool Config::setOptions(const QString& name, const ConfigOptions newOptions) { - if ((~options(name) & newOptions) || addValue(name, QVariant())) + if ((~options(name) & newOptions) || (overrides(name) & newOptions) || addValue(name, QVariant())) { m_values.setOptions(name, newOptions); emit(optionsChanged(name, options(name))); @@ -110,7 +110,7 @@ bool Config::setOptions(const QString& name, const ConfigOptions newOptions) bool Config::unsetOptions(const QString& name, const ConfigOptions oldOptions) { - if (options(name) & oldOptions) + if ((options(name) & oldOptions) || (overrides(name) & oldOptions)) { m_values.unsetOptions(name, oldOptions); emit(optionsChanged(name, options(name))); @@ -133,6 +133,7 @@ bool Config::setOverrides(const QString& name, const ConfigOptions newOverrides) { if ((~overrides(name) & newOverrides) || addValue(name, QVariant())) { + m_values.setOptions(name, options(name) & newOverrides); m_values.setOverrides(name, newOverrides); emit(overridesChanged(name, overrides(name))); return true; |