Skip to content

Commit 44fec0e

Browse files
committed
Remember last used directory for raster save as dialog (fix #6950)
1 parent 2e97ceb commit 44fec0e

File tree

2 files changed

+9
-2
lines changed

2 files changed

+9
-2
lines changed

src/app/qgisapp.cpp

+3
Original file line numberDiff line numberDiff line change
@@ -5022,6 +5022,9 @@ void QgisApp::saveAsRasterFile()
50225022
this );
50235023
if ( d.exec() == QDialog::Accepted )
50245024
{
5025+
QSettings settings;
5026+
settings.setValue( "/UI/lastRasterFileDir", QFileInfo( d.outputFileName() ).absolutePath() );
5027+
50255028
QgsRasterFileWriter fileWriter( d.outputFileName() );
50265029
if ( d.tileMode() )
50275030
{

src/gui/qgsrasterlayersaveasdialog.cpp

+6-2
Original file line numberDiff line numberDiff line change
@@ -155,12 +155,16 @@ QgsRasterLayerSaveAsDialog::~QgsRasterLayerSaveAsDialog()
155155
void QgsRasterLayerSaveAsDialog::on_mBrowseButton_clicked()
156156
{
157157
QString fileName;
158+
159+
QSettings settings;
160+
QString dirName = mSaveAsLineEdit->text().isEmpty() ? settings.value( "/UI/lastRasterFileDir", "." ).toString() : mSaveAsLineEdit->text();
161+
158162
if ( mTileModeCheckBox->isChecked() )
159163
{
160164
while ( true )
161165
{
162166
// TODO: would not it be better to select .vrt file instead of directory?
163-
fileName = QFileDialog::getExistingDirectory( this, tr( "Select output directory" ) );
167+
fileName = QFileDialog::getExistingDirectory( this, tr( "Select output directory" ), dirName );
164168
//fileName = QFileDialog::getSaveFileName( this, tr( "Select output file" ), QString(), tr( "VRT" ) + " (*.vrt *.VRT)" );
165169

166170
if ( fileName.isEmpty() ) break; // canceled
@@ -194,7 +198,7 @@ void QgsRasterLayerSaveAsDialog::on_mBrowseButton_clicked()
194198
}
195199
else
196200
{
197-
fileName = QFileDialog::getSaveFileName( this, tr( "Select output file" ), QString(), tr( "GeoTIFF" ) + " (*.tif *.tiff *.TIF *.TIFF)" );
201+
fileName = QFileDialog::getSaveFileName( this, tr( "Select output file" ), dirName, tr( "GeoTIFF" ) + " (*.tif *.tiff *.TIF *.TIFF)" );
198202
}
199203

200204
if ( !fileName.isEmpty() )

0 commit comments

Comments
 (0)