diff options
| author | LostDragonist <lost.dragonist@gmail.com> | 2018-11-10 22:04:12 -0600 |
|---|---|---|
| committer | LostDragonist <lost.dragonist@gmail.com> | 2018-11-10 22:04:12 -0600 |
| commit | ad01e1d6085a97681537fe3328955dd1660dae36 (patch) | |
| tree | 31e8f3ed88317ff7b5e7daf82aed9588e43dbfa1 | |
| parent | aaa1523db9c7e93ca9b258a74f36c17e29e5fc5a (diff) | |
Less strict implementation of path normalization
| -rw-r--r-- | src/settingsdialog.cpp | 19 | ||||
| -rw-r--r-- | src/settingsdialog.h | 2 |
2 files changed, 10 insertions, 11 deletions
diff --git a/src/settingsdialog.cpp b/src/settingsdialog.cpp index 91ce0e25..31c1d0fe 100644 --- a/src/settingsdialog.cpp +++ b/src/settingsdialog.cpp @@ -361,18 +361,15 @@ void SettingsDialog::on_clearCacheButton_clicked() void SettingsDialog::normalizePath(QLineEdit *lineEdit) { QString text = lineEdit->text(); - QString new_text = text; - if (text.contains("%BASE_DIR%")) { - QString baseDir = ui->baseDirEdit->text(); - new_text = new_text.replace("%BASE_DIR%", baseDir); - new_text = QDir(new_text).absolutePath(); - new_text = new_text.replace(baseDir, "%BASE_DIR%"); - } else { - new_text = QDir(new_text).absolutePath(); - } - if (new_text.compare(text, Qt::CaseInsensitive)) { - lineEdit->setText(new_text); + while (text.endsWith('/') || text.endsWith('\\')) { + text.chop(1); } + lineEdit->setText(text); +} + +void SettingsDialog::on_baseDirEdit_editingFinished() +{ + normalizePath(ui->baseDirEdit); } void SettingsDialog::on_downloadDirEdit_editingFinished() diff --git a/src/settingsdialog.h b/src/settingsdialog.h index 3609c940..386cd24e 100644 --- a/src/settingsdialog.h +++ b/src/settingsdialog.h @@ -114,6 +114,8 @@ private slots: void on_resetColorsBtn_clicked();
+ void on_baseDirEdit_editingFinished();
+
void on_downloadDirEdit_editingFinished();
void on_modDirEdit_editingFinished();
|
