KConfig 5.109.0
kconfigskeleton.h
1/*
2 This file is part of KDE.
3 SPDX-FileCopyrightText: 2001, 2002, 2003 Cornelius Schumacher <schumacher@kde.org>
4 SPDX-FileCopyrightText: 2003 Waldo Bastian <bastian@kde.org>
5
6 SPDX-License-Identifier: LGPL-2.0-or-later
7*/
8
9#ifndef KCONFIGSKELETON_H
10#define KCONFIGSKELETON_H
11
12#include <kconfiggui_export.h>
13
14#include <kcoreconfigskeleton.h>
15
16#include <QColor>
17#include <QFont>
18
27class KCONFIGGUI_EXPORT KConfigSkeleton : public KCoreConfigSkeleton
28{
29 Q_OBJECT
30public:
34 class KCONFIGGUI_EXPORT ItemColor : public KConfigSkeletonGenericItem<QColor>
35 {
36 public:
38 ItemColor(const QString &_group, const QString &_key, QColor &reference, const QColor &defaultValue = QColor(128, 128, 128));
39
41 void readConfig(KConfig *config) override;
42
44 void setProperty(const QVariant &p) override;
45
47 bool isEqual(const QVariant &p) const override;
48
50 QVariant property() const override;
51 };
52
56 class KCONFIGGUI_EXPORT ItemFont : public KConfigSkeletonGenericItem<QFont>
57 {
58 public:
60 ItemFont(const QString &_group, const QString &_key, QFont &reference, const QFont &defaultValue = QFont());
61
63 void readConfig(KConfig *config) override;
64
66 void setProperty(const QVariant &p) override;
67
69 bool isEqual(const QVariant &p) const override;
70
72 QVariant property() const override;
73 };
74
75public:
82 explicit KConfigSkeleton(const QString &configname = QString(), QObject *parent = nullptr);
83
89 explicit KConfigSkeleton(KSharedConfig::Ptr config, QObject *parent = nullptr);
90
102 ItemColor *addItemColor(const QString &name, QColor &reference, const QColor &defaultValue = QColor(128, 128, 128), const QString &key = QString());
103
115 ItemFont *addItemFont(const QString &name, QFont &reference, const QFont &defaultValue = QFont(), const QString &key = QString());
116};
117
118#endif
Base class for storing a preferences setting of type T.
Definition kcoreconfigskeleton.h:326
Class for handling a color preferences item.
Definition kconfigskeleton.h:35
void readConfig(KConfig *config) override
This function is called by KCoreConfigSkeleton to read the value for this setting from a config file.
bool isEqual(const QVariant &p) const override
void setProperty(const QVariant &p) override
Set item to p.
ItemColor(const QString &_group, const QString &_key, QColor &reference, const QColor &defaultValue=QColor(128, 128, 128))
Constructor.
QVariant property() const override
Return item as property.
Class for handling a font preferences item.
Definition kconfigskeleton.h:57
void setProperty(const QVariant &p) override
Set item to p.
QVariant property() const override
Return item as property.
ItemFont(const QString &_group, const QString &_key, QFont &reference, const QFont &defaultValue=QFont())
Constructor.
bool isEqual(const QVariant &p) const override
void readConfig(KConfig *config) override
This function is called by KCoreConfigSkeleton to read the value for this setting from a config file.
Class for handling preferences settings for an application.
Definition kconfigskeleton.h:28
KConfigSkeleton(KSharedConfig::Ptr config, QObject *parent=nullptr)
Constructor.
ItemColor * addItemColor(const QString &name, QColor &reference, const QColor &defaultValue=QColor(128, 128, 128), const QString &key=QString())
Register an item of type QColor.
KConfigSkeleton(const QString &configname=QString(), QObject *parent=nullptr)
Constructor.
ItemFont * addItemFont(const QString &name, QFont &reference, const QFont &defaultValue=QFont(), const QString &key=QString())
Register an item of type QFont.
The central class of the KDE configuration data system.
Definition kconfig.h:57
Class for handling preferences settings for an application.
Definition kcoreconfigskeleton.h:551