summaryrefslogtreecommitdiff
path: root/src/tikzit.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/tikzit.cpp
parent2802488b5928ed1d9886e393d06938db0e825a32 (diff)
preview almost works
Diffstat (limited to 'src/tikzit.cpp')
-rw-r--r--src/tikzit.cpp33
1 files changed, 31 insertions, 2 deletions
diff --git a/src/tikzit.cpp b/src/tikzit.cpp
index d69f4a8..5f74d0b 100644
--- a/src/tikzit.cpp
+++ b/src/tikzit.cpp
@@ -20,6 +20,7 @@
#include "tikzassembler.h"
#include "tikzstyles.h"
#include "previewwindow.h"
+#include "latexprocess.h"
#include <QFile>
#include <QFileDialog>
@@ -30,6 +31,7 @@
#include <QVersionNumber>
#include <QNetworkAccessManager>
+
// application-level instance of Tikzit
Tikzit *tikzit;
@@ -107,6 +109,8 @@ void Tikzit::init()
_windows << new MainWindow();
_windows[0]->show();
+ _styleFile = "";
+ _styleFilePath = "";
QString styleFile = settings.value("previous-tikzstyles-file").toString();
if (!styleFile.isEmpty()) loadStyles(styleFile);
@@ -128,8 +132,8 @@ void Tikzit::init()
checkForUpdates();
}
- PreviewWindow *preview = new PreviewWindow();
- preview->show();
+ _preview = new PreviewWindow();
+ _latex = nullptr;
}
//QMenuBar *Tikzit::mainMenu() const
@@ -415,6 +419,31 @@ void Tikzit::updateReply(QNetworkReply *reply)
}
}
+void Tikzit::makePreview()
+{
+ if (activeWindow()) {
+ LatexProcess *oldProc = _latex;
+ _latex = new LatexProcess(_preview, this);
+ if (oldProc != nullptr) {
+ oldProc->kill();
+ oldProc->deleteLater();
+ }
+
+ connect(_latex, SIGNAL(previewFinished()), this, SLOT(cleanupLatex()));
+ _latex->makePreview(activeWindow()->tikzSource());
+ _preview->show();
+ }
+}
+
+void Tikzit::cleanupLatex()
+{
+ LatexProcess *oldProc = _latex;
+ _latex = nullptr;
+ if (oldProc != nullptr) {
+ oldProc->deleteLater();
+ }
+}
+
//StylePalette *Tikzit::stylePalette() const
//{
// return _stylePalette;