@@ -233,20 +233,21 @@ void QgsFileWidget::openFileDialog()
233
233
QString fileName;
234
234
QStringList fileNames;
235
235
QString title;
236
- if ( mStorageMode == GetFile )
237
- {
238
- title = !mDialogTitle .isEmpty () ? mDialogTitle : tr ( " Select a file" );
239
- fileName = QFileDialog::getOpenFileName ( this , title, QFileInfo ( oldPath ).absoluteFilePath (), mFilter );
240
- }
241
- else if ( mStorageMode == GetMultipleFiles )
242
- {
243
- title = !mDialogTitle .isEmpty () ? mDialogTitle : tr ( " Select one ore more files" );
244
- fileNames = QFileDialog::getOpenFileNames ( this , title, QFileInfo ( oldPath ).absoluteFilePath (), mFilter );
245
- }
246
- else if ( mStorageMode == GetDirectory )
236
+
237
+ switch ( mStorageMode )
247
238
{
248
- title = !mDialogTitle .isEmpty () ? mDialogTitle : tr ( " Select a directory" );
249
- fileName = QFileDialog::getExistingDirectory ( this , title, QFileInfo ( oldPath ).absoluteFilePath (), QFileDialog::ShowDirsOnly );
239
+ case GetFile:
240
+ title = !mDialogTitle .isEmpty () ? mDialogTitle : tr ( " Select a file" );
241
+ fileName = QFileDialog::getOpenFileName ( this , title, QFileInfo ( oldPath ).absoluteFilePath (), mFilter );
242
+ break ;
243
+ case GetMultipleFiles:
244
+ title = !mDialogTitle .isEmpty () ? mDialogTitle : tr ( " Select one ore more files" );
245
+ fileNames = QFileDialog::getOpenFileNames ( this , title, QFileInfo ( oldPath ).absoluteFilePath (), mFilter );
246
+ break ;
247
+ case GetDirectory:
248
+ title = !mDialogTitle .isEmpty () ? mDialogTitle : tr ( " Select a directory" );
249
+ fileName = QFileDialog::getExistingDirectory ( this , title, QFileInfo ( oldPath ).absoluteFilePath (), QFileDialog::ShowDirsOnly );
250
+ break ;
250
251
}
251
252
252
253
if ( fileName.isEmpty () && fileNames.isEmpty ( ) )
@@ -260,22 +261,22 @@ void QgsFileWidget::openFileDialog()
260
261
{
261
262
for ( int i = 0 ; i < fileNames.length (); i++ )
262
263
{
263
- fileNames.replace ( i, QDir::cleanPath ( QFileInfo ( fileNames.at ( i ) ).absoluteFilePath () ) ) ;
264
+ fileNames.replace ( i, QDir::toNativeSeparators ( QDir:: cleanPath ( QFileInfo ( fileNames.at ( i ) ).absoluteFilePath () ) ) ) ;
264
265
}
265
266
}
266
267
267
268
// Store the last used path:
268
- if ( mStorageMode == GetFile )
269
+ switch ( mStorageMode )
269
270
{
270
- settings. setValue ( QStringLiteral ( " UI/lastFileNameWidgetDir " ), QFileInfo ( fileName ). absolutePath () );
271
- }
272
- else if ( mStorageMode == GetDirectory )
273
- {
274
- settings.setValue ( QStringLiteral ( " UI/lastFileNameWidgetDir" ), fileName );
275
- }
276
- else if ( mStorageMode == GetMultipleFiles )
277
- {
278
- settings. setValue ( QStringLiteral ( " UI/lastFileNameWidgetDir " ), fileNames. first ( ) ) ;
271
+ case GetFile:
272
+ settings. setValue ( QStringLiteral ( " UI/lastFileNameWidgetDir " ), QFileInfo ( fileName ). absolutePath () );
273
+ break ;
274
+ case GetDirectory:
275
+ settings.setValue ( QStringLiteral ( " UI/lastFileNameWidgetDir" ), fileName );
276
+ break ;
277
+ case GetMultipleFiles:
278
+ settings. setValue ( QStringLiteral ( " UI/lastFileNameWidgetDir " ), QFileInfo ( fileNames. first ( ) ). absolutePath () );
279
+ break ;
279
280
}
280
281
281
282
// Handle relative Path storage
@@ -356,7 +357,6 @@ QString QgsFileWidget::toUrl( const QString &path ) const
356
357
357
358
358
359
359
-
360
360
// /@cond PRIVATE
361
361
362
362
@@ -391,7 +391,7 @@ QString QgsFileDropEdit::acceptableFilePath( QDropEvent *event ) const
391
391
QStringList paths;
392
392
if ( event->mimeData ()->hasUrls () )
393
393
{
394
- for ( const auto url : event->mimeData ()->urls () )
394
+ Q_FOREACH ( const QUrl & url, event->mimeData ()->urls () )
395
395
{
396
396
QFileInfo file ( url.toLocalFile () );
397
397
if ( ( mStorageMode != QgsFileWidget::GetDirectory && file.isFile () &&
0 commit comments