moved subdir swisssurfer to root; refs #110
This commit is contained in:
60
src/pluginfactory.hxx
Normal file
60
src/pluginfactory.hxx
Normal file
@@ -0,0 +1,60 @@
|
||||
/*! @file
|
||||
|
||||
@id $Id$
|
||||
*/
|
||||
// 1 2 3 4 5 6 7 8
|
||||
// 45678901234567890123456789012345678901234567890123456789012345678901234567890
|
||||
|
||||
#ifndef __PLUGINFACTORY_HXX__
|
||||
#define __PLUGINFACTORY_HXX__
|
||||
|
||||
#include <QtWebKit/QWebPluginFactory>
|
||||
#include <saveorrun.hxx>
|
||||
|
||||
#include <QtCore/QDebug>
|
||||
#ifndef LOG
|
||||
#define LOG qDebug()<<__PRETTY_FUNCTION__
|
||||
#endif
|
||||
|
||||
#define foreach(A, B) \
|
||||
auto foreach_loopvar_##A(B); \
|
||||
for (auto A(foreach_loopvar_##A.begin()); A!=foreach_loopvar_##A.end(); ++A)
|
||||
|
||||
class PluginFactory: public QWebPluginFactory {
|
||||
public:
|
||||
PluginFactory(QObject* p=0): QWebPluginFactory(p) {
|
||||
LOG;
|
||||
Plugin plugin;
|
||||
plugin.name = "Show PDF-Document";
|
||||
plugin.description = "Plugin for PDF documents";
|
||||
MimeType mime;
|
||||
mime.fileExtensions<<"pdf";
|
||||
mime.name = "application/pdf";
|
||||
mime.description = "PDF-Document";
|
||||
plugin.mimeTypes<<mime;
|
||||
_plugins.push_back(plugin);
|
||||
}
|
||||
virtual QObject* create(const QString& mimeType, const QUrl& url,
|
||||
const QStringList& argumentNames,
|
||||
const QStringList& argumentValues ) const {
|
||||
LOG<<"mimeType:"<<mimeType
|
||||
<<"url:"<<url
|
||||
<<"argumentNames:"<<argumentNames.join(", ")
|
||||
<<"argumentValues:"<<argumentValues.join(", ");
|
||||
if (mimeType=="application/pdf") {
|
||||
return new SaveOrRunPlugin(url, mimeType);
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
virtual QList<Plugin> plugins() const {
|
||||
LOG;
|
||||
return _plugins;
|
||||
}
|
||||
virtual void refreshPlugins() {
|
||||
LOG;
|
||||
}
|
||||
private:
|
||||
QList<Plugin> _plugins;
|
||||
};
|
||||
|
||||
#endif
|
Reference in New Issue
Block a user