diff options
Diffstat (limited to 'libkipi/libkipi/plugin.h')
-rw-r--r-- | libkipi/libkipi/plugin.h | 76 |
1 files changed, 76 insertions, 0 deletions
diff --git a/libkipi/libkipi/plugin.h b/libkipi/libkipi/plugin.h new file mode 100644 index 0000000..f55942c --- /dev/null +++ b/libkipi/libkipi/plugin.h @@ -0,0 +1,76 @@ +/* ============================================================ + * File : plugin.h + * Authors: KIPI team developers (see AUTHORS files for details) + * + * Date : 2004-02 + * Description : + * + * Copyright 2004 by the KIPI team + * + * This program is free software; you can redistribute it + * and/or modify it under the terms of the GNU Library General + * Public License as published by the Free Software Foundation; + * either version 2, or (at your option) + * any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Library General Public License for more details. + * + * ============================================================ */ + +#ifndef KIPI_PLUGIN_H +#define KIPI_PLUGIN_H + +// Qt includes. + +#include <qobject.h> + +// KDE includes. + +#include <kaction.h> + +// Lib KIPI includes. + +#include "libkipi/interface.h" + +#include "libkipi/libkipi_export.h" + +class KInstance; + +/** @namespace KIPI */ +namespace KIPI +{ + enum Category + { + IMAGESPLUGIN = 0, + EFFECTSPLUGIN, + TOOLSPLUGIN, + IMPORTPLUGIN, + EXPORTPLUGIN, + BATCHPLUGIN, + COLLECTIONSPLUGIN + }; + + class LIBKIPI_EXPORT Plugin : public QObject + { + public: + Plugin( KInstance* instance, QObject *parent, const char* name); + virtual ~Plugin(); + + virtual void setup( QWidget* widget ) = 0; + KActionPtrList actions( QWidget* parent = 0 ); + KActionCollection* actionCollection( QWidget* parent = 0 ); + virtual Category category( KAction* action ) const = 0; + + protected: + void addAction( KAction* action ); + + private: + struct Private; + Private* d; + }; +} + +#endif // KIPI_PLUGIN_H |