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 */ 24 class KConfigParameters 25 { 26 public: 27 KConfigParameters(const QString &codegenFilename); 28 29 public: 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 QString sourceExtension; 54 bool allMutators; 55 bool setUserTexts; 56 bool allDefaultGetters; 57 bool dpointer; 58 bool globalEnums; 59 bool useEnumTypes; 60 bool itemAccessors; 61 bool allNotifiers; 62 TranslationSystem translationSystem; 63 QString translationDomain; 64 bool generateProperties; 65 QString baseName; 66 }; 67 68 #endif 69