summaryrefslogtreecommitdiff
path: root/src/gui/mainmenu.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/gui/mainmenu.cpp')
-rw-r--r--src/gui/mainmenu.cpp51
1 files changed, 50 insertions, 1 deletions
diff --git a/src/gui/mainmenu.cpp b/src/gui/mainmenu.cpp
index 8166c59..6f4f8db 100644
--- a/src/gui/mainmenu.cpp
+++ b/src/gui/mainmenu.cpp
@@ -17,6 +17,7 @@
*/
#include "mainmenu.h"
+#include "preferencedialog.h"
#include "tikzit.h"
#include <QDebug>
@@ -33,6 +34,8 @@ MainMenu::MainMenu()
ui.actionCheck_for_updates_automatically->setChecked(settings.value("check-for-updates").toBool());
ui.actionCheck_for_updates_automatically->blockSignals(false);
}
+
+ updateRecentFiles();
}
void MainMenu::addDocks(QMenu *m)
@@ -48,6 +51,31 @@ QAction *MainMenu::updatesAction()
return ui.actionCheck_for_updates_automatically;
}
+void MainMenu::updateRecentFiles()
+{
+ QSettings settings("tikzit", "tikzit");
+ ui.menuOpen_Recent->clear();
+
+ QStringList recentFiles = settings.value("recent-files").toStringList();
+ //qDebug() << "update:" << recentFiles;
+
+ QAction *action;
+ foreach (QString f, recentFiles) {
+ QFileInfo fi(f);
+ action = new QAction(fi.fileName(), ui.menuOpen_Recent);
+ action->setData(f);
+ ui.menuOpen_Recent->addAction(action);
+ connect(action, SIGNAL(triggered()),
+ this, SLOT(openRecent()));
+ }
+
+ ui.menuOpen_Recent->addSeparator();
+ action = new QAction("Clear List", ui.menuOpen_Recent);
+ connect(action, SIGNAL(triggered()),
+ tikzit, SLOT(clearRecentFiles()));
+ ui.menuOpen_Recent->addAction(action);
+}
+
// File
void MainMenu::on_actionNew_triggered()
{
@@ -82,6 +110,15 @@ void MainMenu::on_actionExit_triggered()
tikzit->quit();
}
+void MainMenu::openRecent()
+{
+ if (sender() != nullptr) {
+ if (QAction *action = dynamic_cast<QAction*>(sender())) {
+ tikzit->open(action->data().toString());
+ }
+ }
+}
+
// Edit
void MainMenu::on_actionUndo_triggered()
@@ -228,6 +265,18 @@ void MainMenu::on_actionJump_to_Selection_triggered()
}
}
+void MainMenu::on_actionRun_LaTeX_triggered()
+{
+ tikzit->makePreview();
+}
+
+void MainMenu::on_actionPreferences_triggered()
+{
+ PreferenceDialog *d = new PreferenceDialog(this);
+ d->exec();
+ d->deleteLater();
+}
+
// View
void MainMenu::on_actionZoom_In_triggered()
@@ -260,5 +309,5 @@ void MainMenu::on_actionCheck_for_updates_automatically_triggered()
void MainMenu::on_actionCheck_now_triggered()
{
- tikzit->checkForUpdates();
+ tikzit->checkForUpdates(true);
}