diff options
author | Martin Gräßlin <mgraesslin@kde.org> | 2016-11-16 14:59:28 +0100 |
---|---|---|
committer | Martin Gräßlin <mgraesslin@kde.org> | 2016-12-02 19:04:13 +0100 |
commit | cd4e6504dfbdface00037625f0cedda511e6d839 (patch) | |
tree | 249936486aab5e16f9d002c73f1829dcfb7f53fa /autotests/kconfig_compiler/test8main.cpp | |
parent | 5950ee535d24565c434a410e70913856b2d58c23 (diff) | |
download | kconfig-cd4e6504dfbdface00037625f0cedda511e6d839.tar.gz kconfig-cd4e6504dfbdface00037625f0cedda511e6d839.tar.bz2 |
Generate an instance with KSharedConfig::Ptr for singleton and arg
Summary:
In case a kcfg with arg="true" was used and singleton the static
instance method only accepted a QString config name. This made it
impossible to combine a singleton config with an already existing and
open KSharedConfig::Ptr.
With this change an overloaded instance method is added which takes a
KSharedConfig::Ptr as argument. The private ctor, though, only takes a
KSharedConfig::Ptr and the instance method taking a QString argument
uses KSharedConfig::openConfig on the config file name.
This provides full API compatibility and at the same time allows to use
KSharedConfig in addition to the arg name based variant.
Test Plan:
kconfigcompiler tests still pass and a config with singleton
and arg="true" generates the code as I need it
Reviewers: #frameworks
Differential Revision: https://phabricator.kde.org/D3386
Diffstat (limited to 'autotests/kconfig_compiler/test8main.cpp')
-rw-r--r-- | autotests/kconfig_compiler/test8main.cpp | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/autotests/kconfig_compiler/test8main.cpp b/autotests/kconfig_compiler/test8main.cpp index b8fcc492..9843df72 100644 --- a/autotests/kconfig_compiler/test8main.cpp +++ b/autotests/kconfig_compiler/test8main.cpp @@ -21,6 +21,7 @@ CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. #include "test8a.h" #include "test8b.h" +#include "test8c.h" #include <QGuiApplication> int main(int argc, char **argv) @@ -30,6 +31,8 @@ int main(int argc, char **argv) Test8a *config1 = new Test8a(KSharedConfig::openConfig(QString())); Test8a *config2 = new Test8a(); Test8b::self(); + Test8c::instance(KSharedConfig::openConfig(QString())); + Test8c::self(); delete config1; delete config2; return 0; |