From f33afc882887fe6208f0af6c984d769073636194 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Matthias=20M=C3=B6ller?= Date: Tue, 30 Sep 2014 12:08:15 +0000 Subject: [PATCH] does not accept save location, if directory does not exists closes #2261 git-svn-id: http://www.openflipper.org/svnrepo/OpenFlipper/branches/Free@19634 383ad7c9-94d9-4d36-a494-682f7c89f535 --- widgets/loadWidget/loadWidget.cc | 11 +++++++++++ widgets/loadWidget/loadWidget.hh | 2 ++ 2 files changed, 13 insertions(+) diff --git a/widgets/loadWidget/loadWidget.cc b/widgets/loadWidget/loadWidget.cc index 403d5e67..01b130eb 100644 --- a/widgets/loadWidget/loadWidget.cc +++ b/widgets/loadWidget/loadWidget.cc @@ -517,6 +517,13 @@ bool LoadWidget::validFilename() { return true; } +bool LoadWidget::dirExists() +{ + QFileInfo firstEntered = selectedFiles()[0]; + // Test if directory exists + return QDir(firstEntered.dir()).exists(); +} + void LoadWidget::accept() { if( (!loadMode_) || validFilename() ) { @@ -524,7 +531,11 @@ void LoadWidget::accept() { if ( loadMode_ ) loadFile(); else + { + if (!dirExists()) //if dir does not exist, don't accept + return; saveFile(); + } QFileDialog::accept(); } diff --git a/widgets/loadWidget/loadWidget.hh b/widgets/loadWidget/loadWidget.hh index 664d1017..35c569ac 100644 --- a/widgets/loadWidget/loadWidget.hh +++ b/widgets/loadWidget/loadWidget.hh @@ -83,6 +83,8 @@ class LoadWidget : public QFileDialog int showSave(IdList _ids, QString _filename); bool validFilename(); + /// returns true, if the directory of the specified filename (user input via widget) exists + bool dirExists(); public slots : virtual void accept(); -- GitLab