File indexing completed on 2024-05-12 15:34:16

0001 /*
0002     This file is part of KDE.
0003 
0004     SPDX-FileCopyrightText: 2003 Cornelius Schumacher <schumacher@kde.org>
0005     SPDX-FileCopyrightText: 2003 Waldo Bastian <bastian@kde.org>
0006     SPDX-FileCopyrightText: 2003 Zack Rusin <zack@kde.org>
0007     SPDX-FileCopyrightText: 2006 Michaƫl Larouche <michael.larouche@kdemail.net>
0008     SPDX-FileCopyrightText: 2008 Allen Winter <winter@kde.org>
0009     SPDX-FileCopyrightText: 2020 Tomaz Cananbrava <tcanabrava@kde.org>
0010 
0011     SPDX-License-Identifier: LGPL-2.0-or-later
0012 */
0013 
0014 #ifndef KCONFIGXTPARAMETERS_H
0015 #define KCONFIGXTPARAMETERS_H
0016 
0017 #include <QSettings>
0018 #include <QString>
0019 #include <QStringList>
0020 
0021 /**
0022    Configuration Compiler Configuration
0023 */
0024 class KConfigParameters
0025 {
0026 public:
0027     KConfigParameters(const QString &codegenFilename);
0028 
0029 public:
0030     enum TranslationSystem {
0031         QtTranslation,
0032         KdeTranslation,
0033     };
0034 
0035     // These are read from the .kcfgc configuration file
0036     QString nameSpace; // The namespace for the class to be generated
0037     QString className; // The class name to be generated
0038     QString inherits; // The class the generated class inherits (if empty, from KConfigSkeleton)
0039     QString visibility;
0040     bool parentInConstructor; // The class has the optional parent parameter in its constructor
0041     bool forceStringFilename;
0042     bool singleton; // The class will be a singleton
0043     bool staticAccessors; // provide or not static accessors
0044     bool customAddons;
0045     QString memberVariables;
0046     QStringList headerIncludes;
0047     QStringList sourceIncludes;
0048     QStringList mutators;
0049     QStringList defaultGetters;
0050     QStringList notifiers;
0051     QString qCategoryLoggingName;
0052     QString headerExtension;
0053     QString sourceExtension;
0054     bool allMutators;
0055     bool setUserTexts;
0056     bool allDefaultGetters;
0057     bool dpointer;
0058     bool globalEnums;
0059     bool useEnumTypes;
0060     bool itemAccessors;
0061     bool allNotifiers;
0062     TranslationSystem translationSystem;
0063     QString translationDomain;
0064     bool generateProperties;
0065     QString baseName;
0066 };
0067 
0068 #endif