dispatcher.h
00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
#ifndef KSETTINGS_DISPATCHER_H
00021
#define KSETTINGS_DISPATCHER_H
00022
00023
#include <qobject.h>
00024
#include <qmap.h>
00025
00026
class QCString;
00027
class QSignal;
00028
class QStrList;
00029
template<
class T>
class KStaticDeleter;
00030
class KInstance;
00031
class KConfig;
00032
00033
namespace KSettings
00034 {
00035
00049 class Dispatcher :
public QObject
00050 {
00051
friend class KStaticDeleter<Dispatcher>;
00052
00053 Q_OBJECT
00054
public:
00058
static Dispatcher *
self();
00059
00072
void registerInstance(
KInstance * instance,
QObject * recv,
const char * slot );
00073
00077
KConfig *
configForInstanceName(
const QCString & instanceName );
00078
00083
QStrList instanceNames()
const;
00084
00085
00086
00087
00088
00089
00090
00091
public slots:
00098
void reparseConfiguration(
const QCString & instanceName );
00099
00106
void syncConfiguration();
00107
00108
private slots:
00109
void unregisterInstance(
QObject * );
00110
00111
private:
00112 Dispatcher(
QObject * parent = 0,
const char * name = 0 );
00113 ~Dispatcher();
00114
static Dispatcher * m_self;
00115
00116
struct InstanceInfo {
00117
KInstance * instance;
00118
QSignal * signal;
00119
int count;
00120 };
00121
QMap<QCString, InstanceInfo> m_instanceInfo;
00122
QMap<QObject *, QCString> m_instanceName;
00123
00124
class DispatcherPrivate;
00125 DispatcherPrivate * d;
00126 };
00127
00128 }
00129
00130
00131
#endif // KSETTINGS_DISPATCHER_H
This file is part of the documentation for kutils Library Version 3.3.1.