kopete/libkopete
kopeteplugin.h
Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020 #ifndef KOPETEPLUGIN_H
00021 #define KOPETEPLUGIN_H
00022
00023 #include <kxmlguiclient.h>
00024 #include <QtCore/QObject>
00025 #include <kdemacros.h>
00026
00027 #include "kopete_export.h"
00028
00029 class KPluginInfo;
00030
00031 namespace Kopete
00032 {
00033
00034 class MetaContact;
00035
00084 class KOPETE_EXPORT Plugin : public QObject, public KXMLGUIClient
00085 {
00086 Q_OBJECT
00087
00088 public:
00089 Plugin( const KComponentData &instance, QObject *parent );
00090 virtual ~Plugin();
00091
00095 KPluginInfo pluginInfo() const;
00096
00106 QString pluginIcon() const;
00107
00113 QString displayName() const;
00114
00119 QString pluginId() const;
00120
00129 QStringList addressBookFields() const;
00130
00134 QString addressBookIndexField() const;
00135
00139 enum AddressBookFieldAddMode { AddOnly, MakeIndexField };
00140
00152 void addAddressBookField( const QString &field, AddressBookFieldAddMode mode = AddOnly );
00153
00168 virtual void aboutToUnload();
00169
00170 signals:
00175 void settingsChanged();
00176
00181 void readyForUnload();
00182
00183 public slots:
00184
00196 virtual void deserialize( MetaContact *metaContact, const QMap<QString, QString> &data );
00197
00198 private:
00199 class Private;
00200 Private *d;
00201 };
00202
00203
00204 }
00205
00206
00207 #endif