@@ -54,15 +54,10 @@ QgsGeometryCheckerSetupTab::QgsGeometryCheckerSetupTab( QgisInterface *iface, QD
54
54
mAbortButton = new QPushButton ( tr ( " Abort" ) );
55
55
mRunButton ->setEnabled ( false );
56
56
57
- const auto filterFormatMap = QgsVectorFileWriter::supportedFiltersAndFormats ( QgsVectorFileWriter::SortRecommended | QgsVectorFileWriter::SkipNonSpatialFormats );
58
- for ( const QgsVectorFileWriter::FilterFormatDetails &filter : filterFormatMap )
57
+ const auto drivers = QgsVectorFileWriter::ogrDriverList ( QgsVectorFileWriter::SortRecommended | QgsVectorFileWriter::SkipNonSpatialFormats );
58
+ for ( const QgsVectorFileWriter::DriverDetails &driver : drivers )
59
59
{
60
- QString driverName = filter.driverName ;
61
- ui.comboBoxOutputFormat ->addItem ( driverName );
62
- if ( driverName == QLatin1String ( " ESRI Shapefile" ) )
63
- {
64
- ui.comboBoxOutputFormat ->setCurrentIndex ( ui.comboBoxOutputFormat ->count () - 1 );
65
- }
60
+ ui.comboBoxOutputFormat ->addItem ( driver.longName , driver.driverName );
66
61
}
67
62
ui.listWidgetInputLayers ->setIconSize ( QSize ( 16 , 16 ) );
68
63
@@ -215,16 +210,6 @@ void QgsGeometryCheckerSetupTab::validateInput()
215
210
216
211
void QgsGeometryCheckerSetupTab::selectOutputDirectory ()
217
212
{
218
- QString filterString = QgsVectorFileWriter::filterForDriver ( QStringLiteral ( " GPKG" ) );
219
- const auto filterFormatMap = QgsVectorFileWriter::supportedFiltersAndFormats ( QgsVectorFileWriter::SortRecommended | QgsVectorFileWriter::SkipNonSpatialFormats );
220
- for ( const QgsVectorFileWriter::FilterFormatDetails &filter : filterFormatMap )
221
- {
222
- QString driverName = filter.driverName ;
223
- if ( driverName != QLatin1String ( " ESRI Shapefile" ) ) // Default entry, first in list (see above)
224
- {
225
- filterString += " ;;" + filter.filterString ;
226
- }
227
- }
228
213
QString initialdir = ui.lineEditOutputDirectory ->text ();
229
214
if ( initialdir.isEmpty () || !QDir ( initialdir ).exists () )
230
215
{
@@ -297,7 +282,7 @@ void QgsGeometryCheckerSetupTab::runChecks()
297
282
{
298
283
// Get output directory and file extension
299
284
QDir outputDir = QDir ( ui.lineEditOutputDirectory ->text () );
300
- QString outputDriverName = ui.comboBoxOutputFormat ->currentText ();
285
+ QString outputDriverName = ui.comboBoxOutputFormat ->currentData (). toString ();
301
286
QgsVectorFileWriter::MetaData metadata;
302
287
if ( !QgsVectorFileWriter::driverMetadata ( outputDriverName, metadata ) )
303
288
{
0 commit comments