From be919bb6b332c350b5a98f7f5cc46193b9b22b77 Mon Sep 17 00:00:00 2001 From: Michael Georg Hansen Date: Mon, 5 Jan 2015 22:58:54 +0100 Subject: [PATCH] Use the FreeCAD's working directory as initial directory for FileChooser. --- src/Gui/FileDialog.cpp | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/src/Gui/FileDialog.cpp b/src/Gui/FileDialog.cpp index 9a6877ff6..5aa1846e1 100644 --- a/src/Gui/FileDialog.cpp +++ b/src/Gui/FileDialog.cpp @@ -549,14 +549,20 @@ void FileChooser::setFileName( const QString& s ) */ void FileChooser::chooseFile() { + QString prechosenDirectory = lineEdit->text(); + if (prechosenDirectory.isEmpty()) { + prechosenDirectory = FileDialog::getWorkingDirectory(); + } + QString fn; if ( mode() == File ) - fn = QFileDialog::getOpenFileName( this, tr( "Select a file" ), lineEdit->text(), _filter ); + fn = QFileDialog::getOpenFileName( this, tr( "Select a file" ), prechosenDirectory, _filter ); else - fn = QFileDialog::getExistingDirectory( this, tr( "Select a directory" ), lineEdit->text() ); + fn = QFileDialog::getExistingDirectory( this, tr( "Select a directory" ), prechosenDirectory ); if (!fn.isEmpty()) { lineEdit->setText(fn); + FileDialog::setWorkingDirectory(fn); fileNameSelected(fn); } }