#include "versioncontrolobserver.h"
#include "dolphinmodel.h"
-#include "kversioncontrolplugin.h"
#include <kdirlister.h>
#include <klocale.h>
+#include <kservice.h>
+#include <kservicetypetrader.h>
+#include <kversioncontrolplugin.h>
#include <QAbstractProxyModel>
#include <QAbstractItemView>
m_dirVerificationTimer->start();
}
+#include <kdebug.h>
void VersionControlObserver::verifyDirectory()
{
KUrl versionControlUrl = m_dirLister->url();
}
if (m_plugin == 0) {
- // TODO: just for testing purposes. A plugin approach will be used later.
- m_plugin = new SubversionPlugin();
+ return; // TODO: does not work yet, m_plugin will always be 0
+
+ kDebug() << "Searching FileViewVersionControlPlugins...";
+ const KService::List plugins = KServiceTypeTrader::self()->query("FileViewVersionControlPlugin");
+ for (KService::List::ConstIterator it = plugins.constBegin(); it != plugins.constEnd(); ++it) {
+ kDebug() << "found plugin" << (*it)->desktopEntryName();
+ m_plugin = (*it)->createInstance<KVersionControlPlugin>();
+ }
+
connect(m_plugin, SIGNAL(infoMessage(const QString&)),
this, SIGNAL(infoMessage(const QString&)));
connect(m_plugin, SIGNAL(errorMessage(const QString&)),