Skip to content

Commit 3906aae

Browse files
committed
Save/restore savePath
1 parent c0e5d7b commit 3906aae

2 files changed

Lines changed: 11 additions & 3 deletions

File tree

omodsim/mainwindow.cpp

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -359,9 +359,11 @@ void MainWindow::on_actionSaveAs_triggered()
359359
auto frm = currentMdiChild();
360360
if(!frm) return;
361361

362-
const auto filename = QFileDialog::getSaveFileName(this, QString(), frm->windowTitle(), tr("All files (*)"));
362+
const auto dir = QString("%1%2%3").arg(_savePath, QDir::separator(), frm->windowTitle());
363+
const auto filename = QFileDialog::getSaveFileName(this, QString(), dir, tr("All files (*)"));
363364
if(filename.isEmpty()) return;
364365

366+
_savePath = QFileInfo(filename).absoluteDir().absolutePath();
365367
frm->setFilename(filename);
366368

367369
saveMdiChild(frm);
@@ -372,9 +374,10 @@ void MainWindow::on_actionSaveAs_triggered()
372374
///
373375
void MainWindow::on_actionSaveTestConfig_triggered()
374376
{
375-
const auto filename = QFileDialog::getSaveFileName(this, QString(), QString(), tr("All files (*)"));
377+
const auto filename = QFileDialog::getSaveFileName(this, QString(), _savePath, tr("All files (*)"));
376378
if(filename.isEmpty()) return;
377379

380+
_savePath = QFileInfo(filename).absoluteDir().absolutePath();
378381
saveConfig(filename);
379382
}
380383

@@ -383,9 +386,10 @@ void MainWindow::on_actionSaveTestConfig_triggered()
383386
///
384387
void MainWindow::on_actionRestoreTestConfig_triggered()
385388
{
386-
const auto filename = QFileDialog::getOpenFileName(this, QString(), QString(), tr("All files (*)"));
389+
const auto filename = QFileDialog::getOpenFileName(this, QString(), _savePath, tr("All files (*)"));
387390
if(filename.isEmpty()) return;
388391

392+
_savePath = QFileInfo(filename).absoluteDir().absolutePath();
389393
loadConfig(filename);
390394
}
391395

@@ -1533,6 +1537,8 @@ void MainWindow::loadSettings()
15331537
_lang = m.value("Language", "en").toString();
15341538
setLanguage(_lang);
15351539

1540+
_savePath = m.value("SavePath").toString();
1541+
15361542
m >> qobject_cast<MenuConnect*>(ui->actionConnect->menu());
15371543

15381544
const QStringList groups = m.childGroups();
@@ -1597,6 +1603,7 @@ void MainWindow::saveSettings()
15971603
m.setValue("EditBarArea", toolBarArea(ui->toolBarEdit));
15981604
m.setValue("EditBarBreak", toolBarBreak(ui->toolBarEdit));
15991605
m.setValue("Language", _lang);
1606+
m.setValue("SavePath", _savePath);
16001607

16011608
m << qobject_cast<MenuConnect*>(ui->actionConnect->menu());
16021609

omodsim/mainwindow.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -176,6 +176,7 @@ private slots:
176176
RecentFileActionList* _recentFileActionList;
177177
QSharedPointer<QPrinter> _selectedPrinter;
178178
QSharedPointer<DataSimulator> _dataSimulator;
179+
QString _savePath;
179180
};
180181

181182
#endif // MAINWINDOW_H

0 commit comments

Comments
 (0)