From 6121b486e168334db70cbbe7a67afe56c0272748 Mon Sep 17 00:00:00 2001 From: Aleks Kissinger Date: Mon, 17 Dec 2018 12:37:15 +0100 Subject: preview almost works --- src/gui/previewwindow.cpp | 37 ++++++++++++++++++++++++++++++++----- 1 file changed, 32 insertions(+), 5 deletions(-) (limited to 'src/gui/previewwindow.cpp') diff --git a/src/gui/previewwindow.cpp b/src/gui/previewwindow.cpp index bca28e3..0a37e1b 100644 --- a/src/gui/previewwindow.cpp +++ b/src/gui/previewwindow.cpp @@ -1,12 +1,18 @@ #include "previewwindow.h" #include "ui_previewwindow.h" +#include "tikzit.h" +#include "latexprocess.h" + #include #include #include #include -#include #include +#include +#include +#include +#include #include PreviewWindow::PreviewWindow(QWidget *parent) : @@ -22,23 +28,42 @@ PreviewWindow::PreviewWindow(QWidget *parent) : restoreGeometry(geom.toByteArray()); } - _doc = Poppler::Document::load("/home/aleks/ak-algebras.pdf"); + _doc = nullptr; + _page = nullptr; + //setPdf("/home/aleks/ak-algebras.pdf"); + + //qDebug() << "preview dir:" << preparePreview("foo"); + + render(); +} + +PreviewWindow::~PreviewWindow() +{ + delete ui; +} + +void PreviewWindow::setPdf(QString file) +{ + Poppler::Document *oldDoc = _doc; + _doc = Poppler::Document::load(file); _doc->setRenderHint(Poppler::Document::Antialiasing); _doc->setRenderHint(Poppler::Document::TextAntialiasing); _doc->setRenderHint(Poppler::Document::TextHinting ); _page = _doc->page(0); - render(); + + if (oldDoc != nullptr) delete oldDoc; } -PreviewWindow::~PreviewWindow() +QPlainTextEdit *PreviewWindow::outputTextEdit() { - delete ui; + return ui->output; } void PreviewWindow::closeEvent(QCloseEvent *e) { QSettings settings("tikzit", "tikzit"); settings.setValue("geometry-preview", saveGeometry()); + QDialog::closeEvent(e); } void PreviewWindow::resizeEvent(QResizeEvent *e) { @@ -52,6 +77,8 @@ void PreviewWindow::showEvent(QShowEvent *e) { } void PreviewWindow::render() { + if (_page == nullptr) return; + QSizeF size = _page->pageSizeF(); QRect rect = ui->scrollArea->visibleRegion().boundingRect(); -- cgit v1.2.3