4 // Stefan Bund <info@j32.de>
7 \brief PDFWidget non-inline non-template implementation */
9 #include "PDFWidget.hh"
10 //#include "PDFWidget.ih"
14 #include <QNetworkRequest>
15 #include <QNetworkReply>
17 //#include "PDFWidget.mpp"
19 ///////////////////////////////cc.p////////////////////////////////////////
21 prefix_ pykit::PDFWidget::PDFWidget(QNetworkAccessManager * manager, QWidget * parent)
22 : QLabel(parent), manager_ (manager), currentPage_ (0)
25 prefix_ pykit::PDFWidget::PDFWidget(QString const & document, QNetworkAccessManager * manager,
27 : QLabel(parent), manager_ (manager), currentPage_ (0)
29 document_.reset(Poppler::Document::load(document));
33 prefix_ void pykit::PDFWidget::load(QUrl const & url)
35 QNetworkRequest request (url);
36 QNetworkReply * reply (manager_->get(request));
37 connect(reply, SIGNAL(finished()), this, SLOT(netLoadDocument()));
40 prefix_ void pykit::PDFWidget::netLoadDocument()
42 QNetworkReply * reply = static_cast<QNetworkReply*>(sender());
43 if (reply->error() != QNetworkReply::NoError)
45 QByteArray data (reply->read(reply->size()));
46 document_.reset(Poppler::Document::loadFromData(data));
51 prefix_ void pykit::PDFWidget::showPage()
55 QImage image (document_->page(currentPage_)->renderToImage(
56 physicalDpiX(), physicalDpiY()));
57 setPixmap(QPixmap::fromImage(image));
60 ///////////////////////////////cc.e////////////////////////////////////////
62 //#include "PDFWidget.mpp"
69 // c-file-style: "j32"
70 // indent-tabs-mode: nil
71 // ispell-local-dictionary: "american"
72 // compile-command: "scons -U"