plugin.h
00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
#ifndef PLUGIN_H
00021
#define PLUGIN_H
00022
00023
#include <qobject.h>
00024
#include <kaction.h>
00025
#include <kxmlguiclient.h>
00026
00027
class KInstance;
00028
00029
namespace KParts
00030 {
00031
00049 class KPARTS_EXPORT Plugin :
public QObject,
virtual public KXMLGUIClient
00050 {
00051 Q_OBJECT
00052
public:
00053
struct PluginInfo
00054 {
00055
QString m_relXMLFileName;
00056
QString m_absXMLFileName;
00057
00058
QDomDocument m_document;
00059 };
00060
00064 Plugin(
QObject* parent = 0,
const char* name = 0 );
00068
virtual ~Plugin();
00069
00073
virtual QString xmlFile()
const;
00074
00078
virtual QString localXMLFile()
const;
00079
00087
static void loadPlugins(
QObject *parent,
const KInstance * instance );
00088
00096
static void loadPlugins(
QObject *parent,
const QValueList<PluginInfo> &pluginInfos );
00097
00105
static void loadPlugins(
QObject *parent,
const QValueList<PluginInfo> &pluginInfos,
const KInstance * instance );
00106
00141
static void loadPlugins(
QObject *parent,
KXMLGUIClient* parentGUIClient,
KInstance* instance,
bool enableNewPluginsByDefault =
true );
00142
00149
static QPtrList<Plugin> pluginObjects(
QObject *parent );
00150
00151
protected:
00157
static QValueList<Plugin::PluginInfo> pluginInfos(
const KInstance * instance );
00158
00163
static Plugin* loadPlugin(
QObject * parent,
const char* libname );
00164
00165
virtual void setInstance(
KInstance *instance );
00166
00167
private:
00168
static bool hasPlugin(
QObject* parent,
const QString& library );
00169
class PluginPrivate;
00170 PluginPrivate *d;
00171 };
00172
00173 }
00174
00175
#endif
This file is part of the documentation for kparts Library Version 3.4.0.