diff options
| author | Robert Bieber <robby@bieberphoto.com> | 2010-06-15 20:55:56 +0000 |
|---|---|---|
| committer | Robert Bieber <robby@bieberphoto.com> | 2010-06-15 20:55:56 +0000 |
| commit | 267a446887dbeafe02a4e1991af4489979fbb044 (patch) | |
| tree | 66167168fa73f662712a9b6e668b198a10bc86ec /utils/themeeditor/editorwindow.cpp | |
| parent | 0c26a790ee2a5702a8c87a9cd1af666d17afcc05 (diff) | |
| download | rockbox-267a446887dbeafe02a4e1991af4489979fbb044.zip rockbox-267a446887dbeafe02a4e1991af4489979fbb044.tar.gz rockbox-267a446887dbeafe02a4e1991af4489979fbb044.tar.bz2 rockbox-267a446887dbeafe02a4e1991af4489979fbb044.tar.xz | |
Theme Editor: Implemented save/save as in the configuration file editor
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26863 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'utils/themeeditor/editorwindow.cpp')
| -rw-r--r-- | utils/themeeditor/editorwindow.cpp | 39 |
1 files changed, 37 insertions, 2 deletions
diff --git a/utils/themeeditor/editorwindow.cpp b/utils/themeeditor/editorwindow.cpp index 3603b24..56968a3 100644 --- a/utils/themeeditor/editorwindow.cpp +++ b/utils/themeeditor/editorwindow.cpp @@ -201,7 +201,7 @@ void EditorWindow::shiftTab(int index) { TabContent* widget = dynamic_cast<TabContent*> (ui->editorTabs->currentWidget()); - if(index < 0 || widget->type() != TabContent::Skin) + if(index < 0) { ui->parseTree->setModel(0); ui->actionSave_Document->setEnabled(false); @@ -210,6 +210,13 @@ void EditorWindow::shiftTab(int index) ui->actionToolbarSave->setEnabled(false); ui->fromTree->setEnabled(false); } + else if(widget->type() == TabContent::Config) + { + ui->actionSave_Document->setEnabled(true); + ui->actionSave_Document_As->setEnabled(true); + ui->actionClose_Document->setEnabled(true); + ui->actionToolbarSave->setEnabled(true); + } else { /* Syncing the tree view and the status bar */ @@ -318,6 +325,34 @@ void EditorWindow::openProject() } +void EditorWindow::configFileChanged(QString configFile) +{ + + QSettings settings; + + settings.beginGroup("ProjectModel"); + + if(QFile::exists(configFile)) + { + + if(project) + delete project; + + project = new ProjectModel(configFile, this); + ui->projectTree->setModel(project); + + QObject::connect(ui->projectTree, SIGNAL(activated(QModelIndex)), + project, SLOT(activated(QModelIndex))); + + configFile.chop(configFile.length() - configFile.lastIndexOf('/') - 1); + settings.setValue("defaultDirectory", configFile); + + } + + settings.endGroup(); + +} + void EditorWindow::tabTitleChanged(QString title) { TabContent* sender = dynamic_cast<TabContent*>(QObject::sender()); @@ -342,7 +377,7 @@ void EditorWindow::closeEvent(QCloseEvent* event) /* Closing all the tabs */ for(int i = 0; i < ui->editorTabs->count(); i++) { - if(!dynamic_cast<SkinDocument*> + if(!dynamic_cast<TabContent*> (ui->editorTabs->widget(i))->requestClose()) { event->ignore(); |