diff -rupN kamoso-2.0.2/src/kamoso.cpp kamoso-2.0.2-new/src/kamoso.cpp --- kamoso-2.0.2/src/kamoso.cpp 2011-05-25 00:34:42.000000000 +0200 +++ kamoso-2.0.2-new/src/kamoso.cpp 2012-09-30 14:38:17.271806497 +0200 @@ -45,6 +45,7 @@ #include #endif +#include #include #include #include @@ -189,7 +190,9 @@ Kamoso::Kamoso(QWidget* parent) connect(mTracker, SIGNAL(urlsChanged(KUrl::List)), SLOT(updateThumbnails(KUrl::List))); QMetaObject::invokeMethod(this, "initialize"); - mPluginLoader = new KIPI::PluginLoader(QStringList(), new KIPIInterface(this), ""); + mPluginLoader = new KIPI::PluginLoader(); + mPluginLoader->setInterface(new KIPIInterface(this)); + mPluginLoader->init(); } KUrl::List Kamoso::selectedItems() diff -rupN kamoso-2.0.2/src/kamoso.h kamoso-2.0.2-new/src/kamoso.h --- kamoso-2.0.2/src/kamoso.h 2011-05-25 00:34:42.000000000 +0200 +++ kamoso-2.0.2-new/src/kamoso.h 2012-09-30 13:50:07.370380902 +0200 @@ -36,6 +36,7 @@ class WebcamWidget; class WebcamRetriever; class CountdownWidget; class KDirOperator; +class QItemSelection; class QStackedLayout; class QSplitter; class QPushButton; diff -rupN kamoso-2.0.2/src/kipiaction.cpp kamoso-2.0.2-new/src/kipiaction.cpp --- kamoso-2.0.2/src/kipiaction.cpp 2011-05-25 00:34:42.000000000 +0200 +++ kamoso-2.0.2-new/src/kipiaction.cpp 2012-09-30 14:36:06.804328749 +0200 @@ -19,7 +19,7 @@ #include "kipiaction.h" #include -#include +#include "plugins/exportinterface.h" #include #include "kamoso.h" #include "kamosojobtracker.h" @@ -33,7 +33,7 @@ KipiAction::KipiAction(KIPI::PluginLoade void KipiAction::runJob() { KIPI::Plugin* p=pluginInfo->plugin(); - KIPI::ExportInterface* ep=dynamic_cast(p); + ExportInterface* ep=dynamic_cast(p); KJob* job=ep->exportFiles(i18n("Kamoso")); mKamoso->tracker()->registerJob(job, mKamoso->selectedItems(), icon()); diff -rupN kamoso-2.0.2/src/plugins/CMakeLists.txt kamoso-2.0.2-new/src/plugins/CMakeLists.txt --- kamoso-2.0.2/src/plugins/CMakeLists.txt 2011-05-25 00:34:42.000000000 +0200 +++ kamoso-2.0.2-new/src/plugins/CMakeLists.txt 2012-09-30 14:25:52.093628727 +0200 @@ -30,5 +30,5 @@ FIND_PACKAGE(Kipi REQUIRED) # MACRO_OPTIONAL_FIND_PACKAGE(KdepimLibs) # For Calendar (libkcal). # MACRO_OPTIONAL_FIND_PACKAGE(QCA2) # For Shwup. -include_directories(${CMAKE_SOURCE_DIR}/src ${CMAKE_SOURCE_DIR}/src/plugins/youtube) +include_directories(${CMAKE_SOURCE_DIR}/src ${CMAKE_SOURCE_DIR}/src/plugins ${CMAKE_SOURCE_DIR}/src/plugins/youtube) add_subdirectory(youtube) diff -rupN kamoso-2.0.2/src/plugins/exportinterface.h kamoso-2.0.2-new/src/plugins/exportinterface.h --- kamoso-2.0.2/src/plugins/exportinterface.h 1970-01-01 01:00:00.000000000 +0100 +++ kamoso-2.0.2-new/src/plugins/exportinterface.h 2012-09-30 14:31:30.010581312 +0200 @@ -0,0 +1,15 @@ +#ifndef EXPORTINTERFACE_H +#define EXPORTINTERFACE_H + +class KJob; + +class ExportInterface +{ +public: + + virtual ~ExportInterface() {} + + virtual KJob* exportFiles(const QString& albumname)=0; +}; + +#endif // EXPORTINTERFACE_H diff -rupN kamoso-2.0.2/src/plugins/youtube/kipiplugin_youtube.h kamoso-2.0.2-new/src/plugins/youtube/kipiplugin_youtube.h --- kamoso-2.0.2/src/plugins/youtube/kipiplugin_youtube.h 2012-09-30 13:25:53.996834375 +0200 +++ kamoso-2.0.2-new/src/plugins/youtube/kipiplugin_youtube.h 2012-09-30 14:26:40.278044046 +0200 @@ -22,13 +22,12 @@ #include #include #include -#include #include +#include -class YoutubePlugin : public KIPI::Plugin, public KIPI::ExportInterface +class YoutubePlugin : public KIPI::Plugin, public ExportInterface { Q_OBJECT - Q_INTERFACES(KIPI::ExportInterface) public: YoutubePlugin(QObject* parent, const QVariantList& args); // virtual QAction* thumbnailsAction(const QList& url); diff -rupN kamoso-2.0.2/src/pluginTester/fakekipiaction.cpp kamoso-2.0.2-new/src/pluginTester/fakekipiaction.cpp --- kamoso-2.0.2/src/pluginTester/fakekipiaction.cpp 2011-05-25 00:34:42.000000000 +0200 +++ kamoso-2.0.2-new/src/pluginTester/fakekipiaction.cpp 2012-09-30 14:33:31.489158150 +0200 @@ -20,10 +20,10 @@ #include "fakekipiaction.h" #include -#include #include #include #include +#include "../plugins/exportinterface.h" FakeKipiAction::FakeKipiAction(KIPI::PluginLoader::Info* pluginInfo, QObject* parent) : QAction(pluginInfo->icon(), pluginInfo->name(), parent), pluginInfo(pluginInfo) @@ -39,7 +39,7 @@ FakeKipiAction::~FakeKipiAction() void FakeKipiAction::runJob() { KIPI::Plugin* p=pluginInfo->plugin(); - KIPI::ExportInterface* ep = dynamic_cast(p); + ExportInterface* ep = dynamic_cast(p); m_job = ep->exportFiles(i18n("Kamoso")); KIO::getJobTracker()->registerJob(m_job); diff -rupN kamoso-2.0.2/src/pluginTester/pluginTester.cpp kamoso-2.0.2-new/src/pluginTester/pluginTester.cpp --- kamoso-2.0.2/src/pluginTester/pluginTester.cpp 2011-05-25 00:34:42.000000000 +0200 +++ kamoso-2.0.2-new/src/pluginTester/pluginTester.cpp 2012-09-30 13:35:38.245802267 +0200 @@ -41,7 +41,9 @@ PluginTester::PluginTester(QObject *pare kurlList.append(KUrl(args->arg(i))); } - m_pluginLoader = new KIPI::PluginLoader(QStringList(), new FakeKIPIInterface(kurlList), ""); + m_pluginLoader = new KIPI::PluginLoader(); + m_pluginLoader->setInterface(new FakeKIPIInterface(kurlList)); + m_pluginLoader->init(); bool found = false; Q_FOREACH(KIPI::PluginLoader::Info *pluginInfo, m_pluginLoader->pluginList()) {