summaryrefslogtreecommitdiff
path: root/utils/themeeditor/editorwindow.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'utils/themeeditor/editorwindow.cpp')
-rw-r--r--utils/themeeditor/editorwindow.cpp36
1 files changed, 32 insertions, 4 deletions
diff --git a/utils/themeeditor/editorwindow.cpp b/utils/themeeditor/editorwindow.cpp
index 5184281809..d1f3609c50 100644
--- a/utils/themeeditor/editorwindow.cpp
+++ b/utils/themeeditor/editorwindow.cpp
@@ -33,7 +33,7 @@ EditorWindow::EditorWindow(QWidget *parent) :
33{ 33{
34 ui->setupUi(this); 34 ui->setupUi(this);
35 prefs = new PreferencesDialog(this); 35 prefs = new PreferencesDialog(this);
36 project = new ProjectModel(); 36 project = 0;
37 loadSettings(); 37 loadSettings();
38 setupUI(); 38 setupUI();
39 setupMenus(); 39 setupMenus();
@@ -94,9 +94,6 @@ void EditorWindow::setupUI()
94 parseStatus = new QLabel(this); 94 parseStatus = new QLabel(this);
95 ui->statusbar->addPermanentWidget(parseStatus); 95 ui->statusbar->addPermanentWidget(parseStatus);
96 96
97 /* Setting up the project viewer */
98 ui->projectTree->setModel(project);
99
100} 97}
101 98
102void EditorWindow::setupMenus() 99void EditorWindow::setupMenus()
@@ -130,6 +127,8 @@ void EditorWindow::setupMenus()
130 QObject::connect(ui->actionToolbarOpen, SIGNAL(triggered()), 127 QObject::connect(ui->actionToolbarOpen, SIGNAL(triggered()),
131 this, SLOT(openFile())); 128 this, SLOT(openFile()));
132 129
130 QObject::connect(ui->actionOpen_Project, SIGNAL(triggered()),
131 this, SLOT(openProject()));
133} 132}
134 133
135void EditorWindow::addTab(SkinDocument *doc) 134void EditorWindow::addTab(SkinDocument *doc)
@@ -239,6 +238,33 @@ void EditorWindow::openFile()
239 settings.endGroup(); 238 settings.endGroup();
240} 239}
241 240
241void EditorWindow::openProject()
242{
243 QString fileName;
244 QSettings settings;
245
246 settings.beginGroup("ProjectModel");
247 QString directory = settings.value("defaultDirectory", "").toString();
248 fileName = QFileDialog::getOpenFileName(this, tr("Open Project"), directory,
249 ProjectModel::fileFilter());
250
251 if(QFile::exists(fileName))
252 {
253
254 if(project)
255 delete project;
256
257 project = new ProjectModel(fileName);
258 ui->projectTree->setModel(project);
259
260 fileName.chop(fileName.length() - fileName.lastIndexOf('/') - 1);
261 settings.setValue("defaultDirectory", fileName);
262
263 }
264
265 settings.endGroup();
266
267}
242 268
243void EditorWindow::tabTitleChanged(QString title) 269void EditorWindow::tabTitleChanged(QString title)
244{ 270{
@@ -288,4 +314,6 @@ EditorWindow::~EditorWindow()
288{ 314{
289 delete ui; 315 delete ui;
290 delete prefs; 316 delete prefs;
317 if(project)
318 delete project;
291} 319}