• Skip to content
  • Skip to link menu
  • KDE API Reference
  • kdelibs-4.14.38 API Reference
  • KDE Home
  • Contact Us
 

KUtils

  • kutils
  • ksettings
dialog_p.h
Go to the documentation of this file.
1/* This file is part of the KDE project
2 Copyright (C) 2007 Matthias Kretz <kretz@kde.org>
3
4 This library is free software; you can redistribute it and/or
5 modify it under the terms of the GNU Library General Public
6 License version 2 as published by the Free Software Foundation.
7
8 This library is distributed in the hope that it will be useful,
9 but WITHOUT ANY WARRANTY; without even the implied warranty of
10 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
11 Library General Public License for more details.
12
13 You should have received a copy of the GNU Library General Public License
14 along with this library; see the file COPYING.LIB. If not, write to
15 the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
16 Boston, MA 02110-1301, USA.
17
18*/
19
20#ifndef KSETTINGS_DIALOG_P_H
21#define KSETTINGS_DIALOG_P_H
22
23#include "dialog.h"
24#include "../kcmultidialog_p.h"
25#include "../kcmoduleinfo.h"
26
27#include <QtCore/QHash>
28#include <QtCore/QList>
29#include <QtCore/QSet>
30#include <QtCore/QString>
31#include <QtGui/QLabel>
32#include <QtGui/QWidget>
33
34#include <kpagewidgetmodel.h>
35#include <kservice.h>
36#include <kplugininfo.h>
37#include <kvbox.h>
38
39class QCheckBox;
40
41namespace KSettings
42{
43
44class DialogPrivate : public KCMultiDialogPrivate
45{
46 friend class PageNode;
47 Q_DECLARE_PUBLIC(Dialog)
48 protected:
49 DialogPrivate();
50
51 QHash<QString, KPageWidgetItem *> pageItemForGroupId;
52 QHash<KPageWidgetItem *, KPluginInfo> pluginForItem;
53 QHash<KPageWidgetItem *, QCheckBox *> checkBoxForItem;
54 KPluginInfo::List plugininfos;
55
56 QStringList registeredComponents;
57 QSet<KCModuleInfo> kcmInfos;
58 QStringList componentBlacklist;
59 QStringList arguments;
60 QStringList components;
61
62 bool staticlistview : 1;
63 bool firstshow : 1;
64 quint32 pluginStateDirty : 30;
65
66 //void _k_configureTree();
67 void _k_updateEnabledState(bool);
68 void _k_syncConfiguration();
69 void _k_reparseConfiguration(const QByteArray &a);
70 virtual void _k_clientChanged();
71
72 KPageWidgetItem *createPageItem(KPageWidgetItem *parentItem,
73 const QString &name, const QString &comment,
74 const QString &iconName, int weight);
75
76 void connectItemCheckBox(KPageWidgetItem *item, const KPluginInfo &pinfo,
77 bool isEnabled);
78
79 private:
84 bool isPluginForKCMEnabled(const KCModuleInfo *moduleinfo, KPluginInfo &pinfo) const;
85 bool isPluginImmutable(const KPluginInfo &pinfo) const;
86
87 QSet<KCModuleInfo> instanceServices();
88 QSet<KCModuleInfo> parentComponentsServices(const QStringList &);
89
94 void parseGroupFile(const QString &);
95
101 //QStringList parentModuleNames(KCModuleInfo *);
102
109 void createDialogFromServices();
110};
111
112} // namespace KSettings
113#endif // KSETTINGS_DIALOG_P_H
KCModuleInfo
A class that provides information about a KCModule.
Definition: kcmoduleinfo.h:48
KCMultiDialogPrivate
Definition: kcmultidialog_p.h:32
KPageWidgetItem
KPluginInfo
KSettings::DialogPrivate
Definition: dialog_p.h:45
KSettings::DialogPrivate::PageNode
friend class PageNode
Definition: dialog_p.h:46
KSettings::DialogPrivate::registeredComponents
QStringList registeredComponents
Definition: dialog_p.h:56
KSettings::DialogPrivate::_k_updateEnabledState
void _k_updateEnabledState(bool)
Definition: dialog.cpp:499
KSettings::DialogPrivate::_k_clientChanged
virtual void _k_clientChanged()
Definition: dialog.cpp:489
KSettings::DialogPrivate::connectItemCheckBox
void connectItemCheckBox(KPageWidgetItem *item, const KPluginInfo &pinfo, bool isEnabled)
Definition: dialog.cpp:440
KSettings::DialogPrivate::arguments
QStringList arguments
Definition: dialog_p.h:59
KSettings::DialogPrivate::DialogPrivate
DialogPrivate()
Definition: dialog.cpp:134
KSettings::DialogPrivate::_k_syncConfiguration
void _k_syncConfiguration()
Definition: dialog.cpp:455
KSettings::DialogPrivate::kcmInfos
QSet< KCModuleInfo > kcmInfos
Definition: dialog_p.h:57
KSettings::DialogPrivate::staticlistview
bool staticlistview
Definition: dialog_p.h:62
KSettings::DialogPrivate::componentBlacklist
QStringList componentBlacklist
Definition: dialog_p.h:58
KSettings::DialogPrivate::plugininfos
KPluginInfo::List plugininfos
Definition: dialog_p.h:54
KSettings::DialogPrivate::createPageItem
KPageWidgetItem * createPageItem(KPageWidgetItem *parentItem, const QString &name, const QString &comment, const QString &iconName, int weight)
Definition: dialog.cpp:225
KSettings::DialogPrivate::checkBoxForItem
QHash< KPageWidgetItem *, QCheckBox * > checkBoxForItem
Definition: dialog_p.h:53
KSettings::DialogPrivate::_k_reparseConfiguration
void _k_reparseConfiguration(const QByteArray &a)
Definition: dialog.cpp:473
KSettings::DialogPrivate::pageItemForGroupId
QHash< QString, KPageWidgetItem * > pageItemForGroupId
Definition: dialog_p.h:51
KSettings::DialogPrivate::pluginForItem
QHash< KPageWidgetItem *, KPluginInfo > pluginForItem
Definition: dialog_p.h:52
KSettings::DialogPrivate::firstshow
bool firstshow
Definition: dialog_p.h:63
KSettings::DialogPrivate::pluginStateDirty
quint32 pluginStateDirty
Definition: dialog_p.h:64
KSettings::DialogPrivate::components
QStringList components
Definition: dialog_p.h:60
KSettings::Dialog
Generic configuration dialog that works over component boundaries.
Definition: dialog.h:74
QHash
QList< KPluginInfo >
QSet
dialog.h
kpagewidgetmodel.h
kplugininfo.h
kservice.h
kvbox.h
KSettings
A collection of classes to create configuration dialogs that work over component boundaries.
Definition: componentsdialog.cpp:34
This file is part of the KDE documentation.
Documentation copyright © 1996-2023 The KDE developers.
Generated on Mon Feb 20 2023 00:00:00 by doxygen 1.9.6 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.

KUtils

Skip menu "KUtils"
  • Main Page
  • Namespace List
  • Namespace Members
  • Alphabetical List
  • Class List
  • Class Hierarchy
  • Class Members
  • File List
  • File Members
  • Related Pages

kdelibs-4.14.38 API Reference

Skip menu "kdelibs-4.14.38 API Reference"
  • DNSSD
  • Interfaces
  •   KHexEdit
  •   KMediaPlayer
  •   KSpeech
  •   KTextEditor
  • kconf_update
  • KDE3Support
  •   KUnitTest
  • KDECore
  • KDED
  • KDEsu
  • KDEUI
  • KDEWebKit
  • KDocTools
  • KFile
  • KHTML
  • KImgIO
  • KInit
  • kio
  • KIOSlave
  • KJS
  •   KJS-API
  •   WTF
  • kjsembed
  • KNewStuff
  • KParts
  • KPty
  • Kross
  • KUnitConversion
  • KUtils
  • Nepomuk
  • Plasma
  • Solid
  • Sonnet
  • ThreadWeaver
Report problems with this website to our bug tracking system.
Contact the specific authors with questions and comments about the page contents.

KDE® and the K Desktop Environment® logo are registered trademarks of KDE e.V. | Legal