00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
#ifndef KPLUGINSELECTOR_H
00021
#define KPLUGINSELECTOR_H
00022
00023
#include <qwidget.h>
00024
#include <qstring.h>
00025
00026
#include <kdelibs_export.h>
00027
00028
class KInstance;
00029
class KPluginInfo;
00030
class QWidgetStack;
00031
class KConfig;
00032
00057 class KUTILS_EXPORT KPluginSelector :
public QWidget
00058 {
00059
friend class KPluginSelectionWidget;
00060
00061 Q_OBJECT
00062
public:
00066 KPluginSelector(
QWidget * parent,
const char * name = 0 );
00067 ~KPluginSelector();
00068
00098
void addPlugins(
const QString & instanceName,
00099
const QString & catname = QString::null,
00100
const QString & category = QString::null,
00101
KConfig * config = 0 );
00102
00106
void addPlugins(
const KInstance * instance,
00107
const QString & catname = QString::null,
00108
const QString & category = QString::null,
00109
KConfig * config = 0 );
00110
00136
void addPlugins(
const QValueList<KPluginInfo*> & plugininfos,
00137
const QString & catname = QString::null,
00138
const QString & category = QString::null,
00139
KConfig * config = 0 );
00140
00148
void setShowEmptyConfigPage(
bool );
00149
00157
void load();
00158
00162
void save();
00163
00167
void defaults();
00168
00169 signals:
00173
void changed(
bool );
00174
00180
void configCommitted(
const QCString & instanceName );
00181
00182
private:
00188
QWidgetStack * widgetStack();
00189
00195
void configPage(
int id );
00196
00200
void checkNeedForTabWidget();
00201
00202
class KPluginSelectorPrivate;
00203 KPluginSelectorPrivate * d;
00204 };
00205
00206
00207
#endif // KPLUGINSELECTOR_H