• Skip to content
  • Skip to link menu
KDE API Reference
  • KDE API Reference
  • kdegraphics API Reference
  • KDE Home
  • Contact Us
 

libs/libkipi/libkipi

  • sources
  • kde-4.14
  • kdegraphics
  • libs
  • libkipi
  • libkipi
pluginloader.h
Go to the documentation of this file.
1 
34 #ifndef KIPI_PLUGINLOADER_H
35 #define KIPI_PLUGINLOADER_H
36 
37 // Qt includes
38 
39 #include <QtCore/QList>
40 
41 // KDE includes
42 
43 #include <kservice.h>
44 #include <kxmlguiwindow.h>
45 
46 // Local includes
47 
48 #include "libkipi_export.h"
49 
50 namespace KIPI
51 {
52 
53 class Plugin;
54 class Interface;
55 class ConfigWidget;
56 
189 class LIBKIPI_EXPORT PluginLoader : public QObject
190 {
191  Q_OBJECT
192 
193 public:
194 
195  class LIBKIPI_EXPORT Info
196  {
197 
198  public:
199 
200  Info(KXmlGuiWindow* const parent, const KService::Ptr& service, bool shouldLoad);
201  ~Info();
202 
203  QString name() const;
204  QString author() const;
205  QString comment() const;
206  QIcon icon() const;
207  QString library() const;
208  KService::Ptr service() const;
209  Plugin* plugin() const;
210  QStringList pluginCategories() const;
211 
212  void reload();
213  bool shouldLoad() const;
214  void setShouldLoad(bool);
215 
216  private:
217 
218  class Private;
219  Private* const d;
220  };
221 
222 public:
223 
224  typedef QList<Info*> PluginList;
225 
226 public:
227 
231  PluginLoader();
232 
237  PluginLoader(KXmlGuiWindow* const parent);
238 
242  virtual ~PluginLoader();
243 
247  void setInterface(Interface* const interface);
248 
252  Interface* interface() const;
253 
257  void setIgnoredPluginsList(const QStringList& ignores);
258 
262  void setDisabledPluginActions(const QStringList& disabledActions);
263 
267  QStringList disabledPluginActions() const;
268 
275  void init();
276 
281  void loadPlugins();
282 
286  const PluginList& pluginList();
287 
291  QString kipiPluginsVersion() const;
292 
296  ConfigWidget* configWidget(QWidget* const parent) const;
297 
301  static PluginLoader* instance();
302 
303 Q_SIGNALS:
304 
305  void plug(KIPI::PluginLoader::Info*);
306  void unplug(KIPI::PluginLoader::Info*);
307 
308  // NOTE: plugin can be pluged through Info item.
309  void replug();
310 
311 private:
312 
313  class Private;
314  Private* const d;
315 
316 private:
317 
318  friend class ConfigWidget;
319 };
320 
321 } // namespace KIPI
322 
323 #endif /* KIPI_PLUGINLOADER_H */
QWidget
KIPI::PluginLoader::PluginList
QList< Info * > PluginList
Definition: pluginloader.h:224
KIPI::PluginLoader
Definition: pluginloader.h:189
KIPI::Interface
Definition: interface.h:158
LIBKIPI_EXPORT
#define LIBKIPI_EXPORT
Definition: libkipi_export.h:39
KIPI::Plugin
Base class for the KIPI plugins.
Definition: plugin.h:79
KIPI::PluginLoader::Info
Definition: pluginloader.h:195
libkipi_export.h
===========================================================This file is part of the KDE project ...
QObject
QString
QList< Info * >
QStringList
KIPI::ConfigWidget
Definition: configwidget.h:42
QIcon
This file is part of the KDE documentation.
Documentation copyright © 1996-2020 The KDE developers.
Generated on Mon Jun 22 2020 13:19:43 by doxygen 1.8.7 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.

libs/libkipi/libkipi

Skip menu "libs/libkipi/libkipi"
  • Main Page
  • Namespace List
  • Namespace Members
  • Alphabetical List
  • Class List
  • Class Hierarchy
  • Class Members
  • File List
  • File Members

kdegraphics API Reference

Skip menu "kdegraphics API Reference"
  •     libkdcraw
  •     libkexiv2
  •     libkipi
  •     libksane
  • okular

Search



Report problems with this website to our bug tracking system.
Contact the specific authors with questions and comments about the page contents.

KDE® and the K Desktop Environment® logo are registered trademarks of KDE e.V. | Legal