summaryrefslogtreecommitdiff
path: root/src/gui/previewwindow.cpp
diff options
context:
space:
mode:
authorAleks Kissinger <aleks0@gmail.com>2018-12-17 12:37:15 +0100
committerAleks Kissinger <aleks0@gmail.com>2018-12-17 12:37:15 +0100
commit6121b486e168334db70cbbe7a67afe56c0272748 (patch)
tree6e56022a7ae72eae7542ac4b420b10d2b37f4c08 /src/gui/previewwindow.cpp
parent2802488b5928ed1d9886e393d06938db0e825a32 (diff)
preview almost works
Diffstat (limited to 'src/gui/previewwindow.cpp')
-rw-r--r--src/gui/previewwindow.cpp37
1 files changed, 32 insertions, 5 deletions
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 <QLabel>
#include <QImage>
#include <QPixmap>
#include <QDebug>
-#include <QRegion>
#include <QSettings>
+#include <QTemporaryDir>
+#include <QFile>
+#include <QTextStream>
+#include <QStandardPaths>
#include <cmath>
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();