Skip to content

Commit e8eedb9

Browse files
zccrs18202781743
authored andcommitted
feat: supports create generic config by dconfig2cpp
1 parent c250cf2 commit e8eedb9

File tree

2 files changed

+78
-29
lines changed

2 files changed

+78
-29
lines changed

src/log/dconfig_org_deepin_dtk_preference.hpp

Lines changed: 33 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
/**
22
* This file is generated by dconfig2cpp.
33
* Command line arguments: /home/zccrs/projects/dtkcore/build/unknown-Debug/tools/dconfig2cpp/dconfig2cpp /home/zccrs/projects/dtkcommon/configs/org.deepin.dtk.preference.json
4-
* Generation time: 2025-03-06T19:55:15
4+
* Generation time: 2025-03-06T20:18:27
55
* JSON file version: 1.0
66
*
77
* WARNING: DO NOT MODIFY THIS FILE MANUALLY.
@@ -37,7 +37,9 @@ class dconfig_org_deepin_dtk_preference : public QObject {
3737
Q_CLASSINFO("DConfigFileVersion", "1.0")
3838

3939
public:
40-
explicit dconfig_org_deepin_dtk_preference(QThread *thread, DTK_CORE_NAMESPACE::DConfigBackend *backend, const QString &name, const QString &appId, const QString &subpath, QObject *parent)
40+
explicit dconfig_org_deepin_dtk_preference(QThread *thread, DTK_CORE_NAMESPACE::DConfigBackend *backend,
41+
const QString &name, const QString &appId, const QString &subpath,
42+
bool isGeneric, QObject *parent)
4143
: QObject(parent) {
4244
if (!thread->isRunning()) {
4345
qWarning() << QLatin1String("Warning: The provided thread is not running.");
@@ -47,19 +49,27 @@ class dconfig_org_deepin_dtk_preference : public QObject {
4749
worker->moveToThread(thread);
4850
QMetaObject::invokeMethod(worker, [=, this]() {
4951
DTK_CORE_NAMESPACE::DConfig *config = nullptr;
50-
if (backend) {
51-
if (appId.isNull()) {
52-
config = DTK_CORE_NAMESPACE::DConfig::create(backend, DTK_CORE_NAMESPACE::DSGApplication::id(),
53-
name, subpath, nullptr);
52+
if (isGeneric) {
53+
if (backend) {
54+
config = DTK_CORE_NAMESPACE::DConfig::createGeneric(backend, name, subpath, nullptr);
5455
} else {
55-
config = DTK_CORE_NAMESPACE::DConfig::create(backend, appId, name, subpath, nullptr);
56+
config = DTK_CORE_NAMESPACE::DConfig::createGeneric(name, subpath, nullptr);
5657
}
5758
} else {
58-
if (appId.isNull()) {
59-
config = DTK_CORE_NAMESPACE::DConfig::create(DTK_CORE_NAMESPACE::DSGApplication::id(),
60-
name, subpath, nullptr);
59+
if (backend) {
60+
if (appId.isNull()) {
61+
config = DTK_CORE_NAMESPACE::DConfig::create(backend, DTK_CORE_NAMESPACE::DSGApplication::id(),
62+
name, subpath, nullptr);
63+
} else {
64+
config = DTK_CORE_NAMESPACE::DConfig::create(backend, appId, name, subpath, nullptr);
65+
}
6166
} else {
62-
config = DTK_CORE_NAMESPACE::DConfig::create(appId, name, subpath, nullptr);
67+
if (appId.isNull()) {
68+
config = DTK_CORE_NAMESPACE::DConfig::create(DTK_CORE_NAMESPACE::DSGApplication::id(),
69+
name, subpath, nullptr);
70+
} else {
71+
config = DTK_CORE_NAMESPACE::DConfig::create(appId, name, subpath, nullptr);
72+
}
6373
}
6474
}
6575
if (!config) {
@@ -73,13 +83,21 @@ class dconfig_org_deepin_dtk_preference : public QObject {
7383
});
7484
}
7585
static dconfig_org_deepin_dtk_preference* create(const QString &appId = {}, const QString &subpath = {}, QObject *parent = nullptr, QThread *thread = DTK_CORE_NAMESPACE::DConfig::globalThread())
76-
{ return new dconfig_org_deepin_dtk_preference(thread, nullptr, QStringLiteral(u"\u006f\u0072\u0067\u002e\u0064\u0065\u0065\u0070\u0069\u006e\u002e\u0064\u0074\u006b\u002e\u0070\u0072\u0065\u0066\u0065\u0072\u0065\u006e\u0063\u0065"), appId, subpath, parent); }
86+
{ return new dconfig_org_deepin_dtk_preference(thread, nullptr, QStringLiteral(u"\u006f\u0072\u0067\u002e\u0064\u0065\u0065\u0070\u0069\u006e\u002e\u0064\u0074\u006b\u002e\u0070\u0072\u0065\u0066\u0065\u0072\u0065\u006e\u0063\u0065"), appId, subpath, false, parent); }
7787
static dconfig_org_deepin_dtk_preference* create(DTK_CORE_NAMESPACE::DConfigBackend *backend, const QString &appId = {}, const QString &subpath = {}, QObject *parent = nullptr, QThread *thread = DTK_CORE_NAMESPACE::DConfig::globalThread())
78-
{ return new dconfig_org_deepin_dtk_preference(thread, backend, QStringLiteral(u"\u006f\u0072\u0067\u002e\u0064\u0065\u0065\u0070\u0069\u006e\u002e\u0064\u0074\u006b\u002e\u0070\u0072\u0065\u0066\u0065\u0072\u0065\u006e\u0063\u0065"), appId, subpath, parent); }
88+
{ return new dconfig_org_deepin_dtk_preference(thread, backend, QStringLiteral(u"\u006f\u0072\u0067\u002e\u0064\u0065\u0065\u0070\u0069\u006e\u002e\u0064\u0074\u006b\u002e\u0070\u0072\u0065\u0066\u0065\u0072\u0065\u006e\u0063\u0065"), appId, subpath, false, parent); }
7989
static dconfig_org_deepin_dtk_preference* createByName(const QString &name, const QString &appId = {}, const QString &subpath = {}, QObject *parent = nullptr, QThread *thread = DTK_CORE_NAMESPACE::DConfig::globalThread())
80-
{ return new dconfig_org_deepin_dtk_preference(thread, nullptr, name, appId, subpath, parent); }
90+
{ return new dconfig_org_deepin_dtk_preference(thread, nullptr, name, appId, subpath, false, parent); }
8191
static dconfig_org_deepin_dtk_preference* createByName(DTK_CORE_NAMESPACE::DConfigBackend *backend, const QString &name, const QString &appId = {}, const QString &subpath = {}, QObject *parent = nullptr, QThread *thread = DTK_CORE_NAMESPACE::DConfig::globalThread())
82-
{ return new dconfig_org_deepin_dtk_preference(thread, backend, name, appId, subpath, parent); }
92+
{ return new dconfig_org_deepin_dtk_preference(thread, backend, name, appId, subpath, false, parent); }
93+
static dconfig_org_deepin_dtk_preference* createGeneric(const QString &subpath = {}, QObject *parent = nullptr, QThread *thread = DTK_CORE_NAMESPACE::DConfig::globalThread())
94+
{ return new dconfig_org_deepin_dtk_preference(thread, nullptr, QStringLiteral(u"\u006f\u0072\u0067\u002e\u0064\u0065\u0065\u0070\u0069\u006e\u002e\u0064\u0074\u006b\u002e\u0070\u0072\u0065\u0066\u0065\u0072\u0065\u006e\u0063\u0065"), {}, subpath, true, parent); }
95+
static dconfig_org_deepin_dtk_preference* create(DTK_CORE_NAMESPACE::DConfigBackend *backend, const QString &subpath = {}, QObject *parent = nullptr, QThread *thread = DTK_CORE_NAMESPACE::DConfig::globalThread())
96+
{ return new dconfig_org_deepin_dtk_preference(thread, backend, QStringLiteral(u"\u006f\u0072\u0067\u002e\u0064\u0065\u0065\u0070\u0069\u006e\u002e\u0064\u0074\u006b\u002e\u0070\u0072\u0065\u0066\u0065\u0072\u0065\u006e\u0063\u0065"), {}, subpath, true, parent); }
97+
static dconfig_org_deepin_dtk_preference* createGenericByName(const QString &name, const QString &subpath = {}, QObject *parent = nullptr, QThread *thread = DTK_CORE_NAMESPACE::DConfig::globalThread())
98+
{ return new dconfig_org_deepin_dtk_preference(thread, nullptr, name, {}, subpath, true, parent); }
99+
static dconfig_org_deepin_dtk_preference* createGenericByName(DTK_CORE_NAMESPACE::DConfigBackend *backend, const QString &name, const QString &subpath = {}, QObject *parent = nullptr, QThread *thread = DTK_CORE_NAMESPACE::DConfig::globalThread())
100+
{ return new dconfig_org_deepin_dtk_preference(thread, backend, name, {}, subpath, true, parent); }
83101
~dconfig_org_deepin_dtk_preference() {
84102
if (m_config.loadRelaxed()) {
85103
m_config.loadRelaxed()->deleteLater();

tools/dconfig2cpp/main.cpp

Lines changed: 45 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -250,7 +250,9 @@ int main(int argc, char *argv[]) {
250250
<< " Q_CLASSINFO(\"DConfigFileVersion\", \"" << version <<"\")\n\n"
251251
<< "public:\n"
252252
<< " explicit " << className
253-
<< R"((QThread *thread, DTK_CORE_NAMESPACE::DConfigBackend *backend, const QString &name, const QString &appId, const QString &subpath, QObject *parent)
253+
<< R"((QThread *thread, DTK_CORE_NAMESPACE::DConfigBackend *backend,
254+
const QString &name, const QString &appId, const QString &subpath,
255+
bool isGeneric, QObject *parent)
254256
: QObject(parent) {
255257
if (!thread->isRunning()) {
256258
qWarning() << QLatin1String("Warning: The provided thread is not running.");
@@ -260,19 +262,27 @@ int main(int argc, char *argv[]) {
260262
worker->moveToThread(thread);
261263
QMetaObject::invokeMethod(worker, [=, this]() {
262264
DTK_CORE_NAMESPACE::DConfig *config = nullptr;
263-
if (backend) {
264-
if (appId.isNull()) {
265-
config = DTK_CORE_NAMESPACE::DConfig::create(backend, DTK_CORE_NAMESPACE::DSGApplication::id(),
266-
name, subpath, nullptr);
265+
if (isGeneric) {
266+
if (backend) {
267+
config = DTK_CORE_NAMESPACE::DConfig::createGeneric(backend, name, subpath, nullptr);
267268
} else {
268-
config = DTK_CORE_NAMESPACE::DConfig::create(backend, appId, name, subpath, nullptr);
269+
config = DTK_CORE_NAMESPACE::DConfig::createGeneric(name, subpath, nullptr);
269270
}
270271
} else {
271-
if (appId.isNull()) {
272-
config = DTK_CORE_NAMESPACE::DConfig::create(DTK_CORE_NAMESPACE::DSGApplication::id(),
273-
name, subpath, nullptr);
272+
if (backend) {
273+
if (appId.isNull()) {
274+
config = DTK_CORE_NAMESPACE::DConfig::create(backend, DTK_CORE_NAMESPACE::DSGApplication::id(),
275+
name, subpath, nullptr);
276+
} else {
277+
config = DTK_CORE_NAMESPACE::DConfig::create(backend, appId, name, subpath, nullptr);
278+
}
274279
} else {
275-
config = DTK_CORE_NAMESPACE::DConfig::create(appId, name, subpath, nullptr);
280+
if (appId.isNull()) {
281+
config = DTK_CORE_NAMESPACE::DConfig::create(DTK_CORE_NAMESPACE::DSGApplication::id(),
282+
name, subpath, nullptr);
283+
} else {
284+
config = DTK_CORE_NAMESPACE::DConfig::create(appId, name, subpath, nullptr);
285+
}
276286
}
277287
}
278288
if (!config) {
@@ -293,22 +303,43 @@ int main(int argc, char *argv[]) {
293303
headerStream << " static " << className << "* create(QThread *thread, const QString &appId = {}, const QString &subpath = {}, QObject *parent = nullptr)\n";
294304
else
295305
headerStream << " static " << className << "* create(const QString &appId = {}, const QString &subpath = {}, QObject *parent = nullptr, QThread *thread = DTK_CORE_NAMESPACE::DConfig::globalThread())\n";
296-
headerStream << " { return new " << className << "(thread, nullptr, " << jsonFileString << ", appId, subpath, parent); }\n";
306+
headerStream << " { return new " << className << "(thread, nullptr, " << jsonFileString << ", appId, subpath, false, parent); }\n";
297307
if (parser.isSet(forceRequestThread))
298308
headerStream << " static " << className << "* create(QThread *thread, DTK_CORE_NAMESPACE::DConfigBackend *backend, const QString &appId = {}, const QString &subpath = {}, QObject *parent = nullptr)\n";
299309
else
300310
headerStream << " static " << className << "* create(DTK_CORE_NAMESPACE::DConfigBackend *backend, const QString &appId = {}, const QString &subpath = {}, QObject *parent = nullptr, QThread *thread = DTK_CORE_NAMESPACE::DConfig::globalThread())\n";
301-
headerStream << " { return new " << className << "(thread, backend, " << jsonFileString << ", appId, subpath, parent); }\n";
311+
headerStream << " { return new " << className << "(thread, backend, " << jsonFileString << ", appId, subpath, false, parent); }\n";
302312
if (parser.isSet(forceRequestThread))
303313
headerStream << " static " << className << "* createByName(QThread *thread, const QString &name, const QString &appId = {}, const QString &subpath = {}, QObject *parent = nullptr)\n";
304314
else
305315
headerStream << " static " << className << "* createByName(const QString &name, const QString &appId = {}, const QString &subpath = {}, QObject *parent = nullptr, QThread *thread = DTK_CORE_NAMESPACE::DConfig::globalThread())\n";
306-
headerStream << " { return new " << className << "(thread, nullptr, name, appId, subpath, parent); }\n";
316+
headerStream << " { return new " << className << "(thread, nullptr, name, appId, subpath, false, parent); }\n";
307317
if (parser.isSet(forceRequestThread))
308318
headerStream << " static " << className << "* createByName(QThread *thread, DTK_CORE_NAMESPACE::DConfigBackend *backend, const QString &name, const QString &appId = {}, const QString &subpath = {}, QObject *parent = nullptr)\n";
309319
else
310320
headerStream << " static " << className << "* createByName(DTK_CORE_NAMESPACE::DConfigBackend *backend, const QString &name, const QString &appId = {}, const QString &subpath = {}, QObject *parent = nullptr, QThread *thread = DTK_CORE_NAMESPACE::DConfig::globalThread())\n";
311-
headerStream << " { return new " << className << "(thread, backend, name, appId, subpath, parent); }\n";
321+
headerStream << " { return new " << className << "(thread, backend, name, appId, subpath, false, parent); }\n";
322+
323+
if (parser.isSet(forceRequestThread))
324+
headerStream << " static " << className << "* createGeneric(QThread *thread, const QString &subpath = {}, QObject *parent = nullptr)\n";
325+
else
326+
headerStream << " static " << className << "* createGeneric(const QString &subpath = {}, QObject *parent = nullptr, QThread *thread = DTK_CORE_NAMESPACE::DConfig::globalThread())\n";
327+
headerStream << " { return new " << className << "(thread, nullptr, " << jsonFileString << ", {}, subpath, true, parent); }\n";
328+
if (parser.isSet(forceRequestThread))
329+
headerStream << " static " << className << "* create(QThread *thread, DTK_CORE_NAMESPACE::DConfigBackend *backend, const QString &subpath = {}, QObject *parent = nullptr)\n";
330+
else
331+
headerStream << " static " << className << "* create(DTK_CORE_NAMESPACE::DConfigBackend *backend, const QString &subpath = {}, QObject *parent = nullptr, QThread *thread = DTK_CORE_NAMESPACE::DConfig::globalThread())\n";
332+
headerStream << " { return new " << className << "(thread, backend, " << jsonFileString << ", {}, subpath, true, parent); }\n";
333+
if (parser.isSet(forceRequestThread))
334+
headerStream << " static " << className << "* createGenericByName(QThread *thread, const QString &name, const QString &subpath = {}, QObject *parent = nullptr)\n";
335+
else
336+
headerStream << " static " << className << "* createGenericByName(const QString &name, const QString &subpath = {}, QObject *parent = nullptr, QThread *thread = DTK_CORE_NAMESPACE::DConfig::globalThread())\n";
337+
headerStream << " { return new " << className << "(thread, nullptr, name, {}, subpath, true, parent); }\n";
338+
if (parser.isSet(forceRequestThread))
339+
headerStream << " static " << className << "* createGenericByName(QThread *thread, DTK_CORE_NAMESPACE::DConfigBackend *backend, const QString &name, const QString &subpath = {}, QObject *parent = nullptr)\n";
340+
else
341+
headerStream << " static " << className << "* createGenericByName(DTK_CORE_NAMESPACE::DConfigBackend *backend, const QString &name, const QString &subpath = {}, QObject *parent = nullptr, QThread *thread = DTK_CORE_NAMESPACE::DConfig::globalThread())\n";
342+
headerStream << " { return new " << className << "(thread, backend, name, {}, subpath, true, parent); }\n";
312343

313344
// Destructor
314345
headerStream << " ~" << className << R"(() {

0 commit comments

Comments
 (0)