1/*
2 This file is part of KDE.
3
4 SPDX-FileCopyrightText: 2003 Cornelius Schumacher <schumacher@kde.org>
5 SPDX-FileCopyrightText: 2003 Waldo Bastian <bastian@kde.org>
6 SPDX-FileCopyrightText: 2003 Zack Rusin <zack@kde.org>
7 SPDX-FileCopyrightText: 2006 Michaƫl Larouche <michael.larouche@kdemail.net>
8 SPDX-FileCopyrightText: 2008 Allen Winter <winter@kde.org>
9 SPDX-FileCopyrightText: 2020 Tomaz Cananbrava <tcanabrava@kde.org>
10
11 SPDX-License-Identifier: LGPL-2.0-or-later
12*/
13
14#ifndef KCONFIGXTPARAMETERS_H
15#define KCONFIGXTPARAMETERS_H
16
17#include <QSettings>
18#include <QString>
19#include <QStringList>
20
21/**
22 Configuration Compiler Configuration
23*/
24class KConfigParameters
25{
26public:
27 KConfigParameters(const QString &codegenFilename);
28
29public:
30 enum TranslationSystem {
31 QtTranslation,
32 KdeTranslation,
33 };
34
35 // These are read from the .kcfgc configuration file
36 QString nameSpace; // The namespace for the class to be generated
37 QString className; // The class name to be generated
38 QString inherits; // The class the generated class inherits (if empty, from KConfigSkeleton)
39 QString visibility;
40 bool parentInConstructor; // The class has the optional parent parameter in its constructor
41 bool forceStringFilename;
42 bool singleton; // The class will be a singleton
43 bool staticAccessors; // provide or not static accessors
44 bool customAddons;
45 QString memberVariables;
46 QStringList headerIncludes;
47 QStringList sourceIncludes;
48 QStringList mutators;
49 QStringList defaultGetters;
50 QStringList notifiers;
51 QString qCategoryLoggingName;
52 QString headerExtension;
53 bool allMutators;
54 bool setUserTexts;
55 bool allDefaultGetters;
56 bool dpointer;
57 bool globalEnums;
58 bool useEnumTypes;
59 bool itemAccessors;
60 bool allNotifiers;
61 TranslationSystem translationSystem;
62 QString translationDomain;
63 bool generateProperties;
64 QString baseName;
65};
66
67#endif
68

source code of kconfig/src/kconfig_compiler/KConfigParameters.h