summaryrefslogtreecommitdiff
path: root/utils/themeeditor/gui/editorwindow.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'utils/themeeditor/gui/editorwindow.cpp')
-rw-r--r--utils/themeeditor/gui/editorwindow.cpp24
1 files changed, 24 insertions, 0 deletions
diff --git a/utils/themeeditor/gui/editorwindow.cpp b/utils/themeeditor/gui/editorwindow.cpp
index 57de72358a..f919224a2f 100644
--- a/utils/themeeditor/gui/editorwindow.cpp
+++ b/utils/themeeditor/gui/editorwindow.cpp
@@ -25,6 +25,7 @@
25#include "rbfontcache.h" 25#include "rbfontcache.h"
26#include "rbtextcache.h" 26#include "rbtextcache.h"
27#include "newprojectdialog.h" 27#include "newprojectdialog.h"
28#include "projectexporter.h"
28 29
29#include <QDesktopWidget> 30#include <QDesktopWidget>
30#include <QFileSystemModel> 31#include <QFileSystemModel>
@@ -220,6 +221,8 @@ void EditorWindow::setupMenus()
220 this, SLOT(saveCurrentAs())); 221 this, SLOT(saveCurrentAs()));
221 QObject::connect(ui->actionToolbarSave, SIGNAL(triggered()), 222 QObject::connect(ui->actionToolbarSave, SIGNAL(triggered()),
222 this, SLOT(saveCurrent())); 223 this, SLOT(saveCurrent()));
224 QObject::connect(ui->actionExport_Project, SIGNAL(triggered()),
225 this, SLOT(exportProject()));
223 226
224 QObject::connect(ui->actionOpen_Document, SIGNAL(triggered()), 227 QObject::connect(ui->actionOpen_Document, SIGNAL(triggered()),
225 this, SLOT(openFile())); 228 this, SLOT(openFile()));
@@ -466,6 +469,7 @@ void EditorWindow::closeProject()
466 } 469 }
467 470
468 ui->actionClose_Project->setEnabled(false); 471 ui->actionClose_Project->setEnabled(false);
472 ui->actionExport_Project->setEnabled(false);
469} 473}
470 474
471void EditorWindow::saveCurrent() 475void EditorWindow::saveCurrent()
@@ -480,6 +484,25 @@ void EditorWindow::saveCurrentAs()
480 dynamic_cast<TabContent*>(ui->editorTabs->currentWidget())->saveAs(); 484 dynamic_cast<TabContent*>(ui->editorTabs->currentWidget())->saveAs();
481} 485}
482 486
487void EditorWindow::exportProject()
488{
489 QDir dir = project->getSetting("themebase", "");
490 dir.cdUp();
491 QString file = project->getSetting("configfile", "").split("/").
492 last().split(".").first() + ".zip";
493 file = dir.filePath(file);
494
495 file = QFileDialog::getSaveFileName(this, tr("Export Project"),
496 file, "Zip Files (*.zip *.ZIP);;"
497 "All Files (*)");
498
499 if(file != "")
500 {
501 ProjectExporter* exporter = new ProjectExporter(file, project, this);
502 exporter->show();
503 }
504}
505
483void EditorWindow::openFile() 506void EditorWindow::openFile()
484{ 507{
485 QStringList fileNames; 508 QStringList fileNames;
@@ -724,6 +747,7 @@ void EditorWindow::loadProjectFile(QString fileName)
724 project->deleteLater(); 747 project->deleteLater();
725 748
726 ui->actionClose_Project->setEnabled(true); 749 ui->actionClose_Project->setEnabled(true);
750 ui->actionExport_Project->setEnabled(true);
727 751
728 project = new ProjectModel(fileName, this); 752 project = new ProjectModel(fileName, this);
729 ui->projectTree->setModel(project); 753 ui->projectTree->setModel(project);