KParts::Plugin Class Reference
#include <plugin.h>
Inheritance diagram for KParts::Plugin:

Detailed Description
A plugin is the way to add actions to an existing KParts application, or to a Part.The XML of those plugins looks exactly like of the shell or parts, with one small difference: The document tag should have an additional attribute, named "library", and contain the name of the library implementing the plugin.
If you want this plugin to be used by a part, you need to install the rc file under the directory "data" (KDEDIR/share/apps usually)+"/instancename/kpartplugins/" where instancename is the name of the part's instance.
You should also install a "plugin info" .desktop file with the same name.
- See also:
- PluginInfo
Definition at line 49 of file plugin.h.
Public Member Functions | |
Plugin (QObject *parent=0, const char *name=0) | |
virtual | ~Plugin () |
virtual QString | xmlFile () const |
virtual QString | localXMLFile () const |
Static Public Member Functions | |
static void | loadPlugins (QObject *parent, const KInstance *instance) |
static void | loadPlugins (QObject *parent, const QValueList< PluginInfo > &pluginInfos) |
static void | loadPlugins (QObject *parent, const QValueList< PluginInfo > &pluginInfos, const KInstance *instance) |
static void | loadPlugins (QObject *parent, KXMLGUIClient *parentGUIClient, KInstance *instance, bool enableNewPluginsByDefault=true) |
static QPtrList< Plugin > | pluginObjects (QObject *parent) |
Protected Member Functions | |
virtual void | setInstance (KInstance *instance) |
Static Protected Member Functions | |
static QValueList< Plugin::PluginInfo > | pluginInfos (const KInstance *instance) |
static Plugin * | loadPlugin (QObject *parent, const char *libname) |
Classes | |
struct | PluginInfo |
Struct holding information about a plugin. More... |
Constructor & Destructor Documentation
KParts::Plugin::Plugin | ( | QObject * | parent = 0 , |
|
const char * | name = 0 | |||
) |
Construct a new KParts plugin.
virtual KParts::Plugin::~Plugin | ( | ) | [virtual] |
Destructor.
Member Function Documentation
static void KParts::Plugin::loadPlugins | ( | QObject * | parent, | |
KXMLGUIClient * | parentGUIClient, | |||
KInstance * | instance, | |||
bool | enableNewPluginsByDefault = true | |||
) | [static] |
Load the plugin libraries for the given instance
, make the Plugin objects children of parent
, and insert the plugin as a child GUI client of parentGUIClient
.
This method uses the KConfig object of the given instance, to find out which plugins are enabled and which are disabled. What happens by default (i.e. for new plugins that are not in that config file) is controlled by enableNewPluginsByDefault
. It can be overridden by the plugin if it sets the X-KDE-PluginInfo-EnabledByDefault key in the .desktop file (with the same name as the .rc file)
If a disabled plugin is already loaded it will be removed from the GUI factory and deleted.
This method is automatically called by KParts::Plugin and by KParts::MainWindow.
If you call this method in an already constructed GUI (like when the user has changed which plugins are enabled) you need to add the new plugins to the KXMLGUIFactory:
if( factory() ) { QPtrList<KParts::Plugin> plugins = KParts::Plugin::pluginObjects( this ); QPtrListIterator<KParts::Plugin> it( plugins ); KParts::Plugin * plugin; while( ( plugin = it.current() ) != 0 ) { ++it; factory()->addClient( plugin ); } }
static void KParts::Plugin::loadPlugins | ( | QObject * | parent, | |
const QValueList< PluginInfo > & | pluginInfos, | |||
const KInstance * | instance | |||
) | [static] |
Load the plugin libraries specified by the list pluginInfos
, make the Plugin objects children of parent
, and use the given instance
.
It is recommended to use the last loadPlugins method instead, to support enabling and disabling of plugins.
static void KParts::Plugin::loadPlugins | ( | QObject * | parent, | |
const QValueList< PluginInfo > & | pluginInfos | |||
) | [static] |
Load the plugin libraries specified by the list docs
and make the Plugin objects children of parent
.
It is recommended to use the last loadPlugins method instead, to support enabling and disabling of plugins.
Load the plugin libraries from the directories appropriate to instance
and make the Plugin objects children of parent
.
It is recommended to use the last loadPlugins method instead, to support enabling and disabling of plugins.
virtual QString KParts::Plugin::localXMLFile | ( | ) | const [virtual] |
static QValueList<Plugin::PluginInfo> KParts::Plugin::pluginInfos | ( | const KInstance * | instance | ) | [static, protected] |
Look for plugins in the instance's
"data" directory (+"/kpartplugins").
- Returns:
- A list of QDomDocument s, containing the parsed xml documents returned by plugins.
Returns a list of plugin objects loaded for parent
.
This functions basically calls the queryList method of QObject to retrieve the list of child objects inheriting KParts::Plugin .
virtual QString KParts::Plugin::xmlFile | ( | ) | const [virtual] |
The documentation for this class was generated from the following file: