23 #ifndef KOMPOSER_PLUGINMANAGER_H
24 #define KOMPOSER_PLUGINMANAGER_H
29 #include <tqstringlist.h>
30 #include <tqvaluelist.h>
39 class PluginManager : public TQObject
45 PluginManager( TQObject * );
59 TQValueList<KPluginInfo*> availablePlugins( const TQString &category
67 TQMap<KPluginInfo*, Plugin*> loadedPlugins( const TQString &category
81 Plugin* plugin( const TQString &pluginName ) const;
90 TQString pluginName( const Plugin *plugin ) const;
100 TQString pluginId( const Plugin *plugin ) const;
105 bool unloadPlugin( const TQString &pluginName );
113 TQString pluginIcon( const Plugin *plugin ) const;
141 bool setPluginEnabled( const TQString &name, bool enabled = true );
148 enum PluginLoadMode { LoadSync, LoadAsync };
161 Plugin* loadPlugin( const TQString &pluginId, PluginLoadMode mode = LoadSync );
167 void loadAllPlugins();
173 void pluginLoaded( Plugin *plugin );
194 void allPluginsLoaded();
200 void slotPluginDestroyed( TQObject *plugin );
207 void slotShutdownTimeout();
213 void slotShutdownDone();
218 void slotPluginReadyForUnload();
224 void slotLoadNextPlugin();
234 Plugin *loadPluginInternal( const TQString &pluginId );
243 KPluginInfo *infoForPluginId( const TQString &pluginId ) const;
|