kplugininfo.h00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020 #ifndef KPLUGININFO_H
00021 #define KPLUGININFO_H
00022
00023 #include <qstring.h>
00024 #include <qmap.h>
00025 #include <qstringlist.h>
00026 #include <qvaluelist.h>
00027 #include <kservice.h>
00028
00029 class KConfigGroup;
00030
00042 class KUTILS_EXPORT KPluginInfo
00043 {
00044 public:
00045 typedef QValueList<KPluginInfo*> List;
00046
00080 KPluginInfo( const QString & filename, const char* resource = 0 );
00081
00108 KPluginInfo( const KService::Ptr service );
00109
00110
00111
00112
00113
00114
00115
00116 virtual ~KPluginInfo();
00117
00123 static KPluginInfo::List fromServices( const KService::List & services, KConfig * config = 0, const QString & group = QString::null );
00124
00131 static KPluginInfo::List fromFiles( const QStringList & files, KConfig * config = 0, const QString & group = QString::null );
00132
00138 static KPluginInfo::List fromKPartsInstanceName( const QString &, KConfig * config = 0, const QString & group = QString::null );
00139
00143 bool isHidden() const;
00144
00153 virtual void setPluginEnabled( bool enabled );
00154
00163 virtual bool isPluginEnabled() const;
00164
00170 bool isPluginEnabledByDefault() const;
00171
00179 QVariant property( const QString & key ) const;
00180
00188 QVariant operator[]( const QString & key ) const;
00189
00193 const QString & name() const;
00194
00198 const QString & comment() const;
00199
00203 const QString & icon() const;
00204
00208 const QString & specfile() const;
00209
00213 const QString & author() const;
00214
00218 const QString & email() const;
00219
00223 const QString & category() const;
00224
00229 const QString & pluginName() const;
00230
00234 const QString & version() const;
00235
00239 const QString & website() const;
00240
00241
00245 const QString & license() const;
00246
00251 const QStringList & dependencies() const;
00252
00262 KService::Ptr service() const;
00263
00268 const QValueList<KService::Ptr> & kcmServices() const;
00269
00275 void setConfig( KConfig * config, const QString & group );
00276
00281 KConfig * config() const;
00282
00287 const QString & configgroup() const;
00288
00295 virtual void save( KConfigGroup * config = 0 );
00296
00303 virtual void load( KConfigGroup * config = 0 );
00304
00308 virtual void defaults();
00309
00310 private:
00311 KPluginInfo( const KPluginInfo & );
00312 const KPluginInfo & operator=( const KPluginInfo & );
00313
00314 class KPluginInfoPrivate;
00315 KPluginInfoPrivate * d;
00316 };
00317
00318
00319 #endif // KPLUGININFO_H
|