#include <iostream>
#include <QWebPluginFactory>
#include "Publisher.hh"
+#ifdef POPPLER
#include "PDFWidget.hh"
+#endif
//#include "Viewer.mpp"
#define prefix_
///////////////////////////////cc.p////////////////////////////////////////
+#ifdef POPPLER
+
namespace {
class PDFWebPluginFactory
{}
prefix_ QObject * PDFWebPluginFactory::create(QString const & mimeType, QUrl const & url,
- QStringList const & /* argumentNames */,
- QStringList const & /* argumentValues */)
+ QStringList const & argumentNames,
+ QStringList const & argumentValues)
const
{
- if (mimeType == "application/x-pdf") {
- pykit::PDFWidget * plugin = new pykit::PDFWidget(manager_);
+ if (mimeType == "application/pdf") {
+ int idix (argumentNames.indexOf("id"));
+ QString id;
+ if (idix>0)
+ id = argumentValues[idix];
+ pykit::PDFWidget * plugin = new pykit::PDFWidget(
+ id, manager_, dynamic_cast<QWidget*>(parent()));
plugin->load(url);
return plugin;
}
plugin.description = "View PDF files";
{
QWebPluginFactory::MimeType mimeType;
- mimeType.name = "application/x-pdf";
+ mimeType.name = "application/pdf";
mimeType.description = "PDF file";
plugin.mimeTypes += mimeType;
}
return plugins;
}
+#endif
+
///////////////////////////////////////////////////////////////////////////
// pykit::Viewer
QWebSettings::globalSettings()->setAttribute(QWebSettings::PluginsEnabled, true);
page()->setNetworkAccessManager(
new InternalNetworkAccessManager(page()->networkAccessManager(), this, publisher));
+#ifdef POPPLER
page()->setPluginFactory(new PDFWebPluginFactory (page()->networkAccessManager(), this));
+#endif
load(url);
}