Skip to content

Commit f8c4b3a

Browse files
committed
Merge pull request #2571 from medspx/work_newfile_extensions
Add formats extensions/protocol already supported by GDAL/OGR (fixes #3799, fixes #4362, fixes #5242, fixes #6197)
2 parents 6a7f786 + 72c5e37 commit f8c4b3a

6 files changed

+26
-9
lines changed

src/app/ogr/qgsogrhelperfunctions.cpp

+8
Original file line numberDiff line numberDiff line change
@@ -197,6 +197,14 @@ QString createProtocolURI( const QString& type, const QString& url )
197197
{
198198
uri = url;
199199
}
200+
else if ( type == "CouchDB" )
201+
{
202+
uri = QString( "couchdb:%1" ).arg( url );
203+
}
204+
else if ( type == "DODS/OPeNDAP" )
205+
{
206+
uri = QString( "DODS:%1" ).arg( url );
207+
}
200208
QgsDebugMsg( "Connection type is=" + type + " and uri=" + uri );
201209
return uri;
202210
}

src/app/qgsnewspatialitelayerdialog.cpp

+1-1
Original file line numberDiff line numberDiff line change
@@ -112,7 +112,7 @@ void QgsNewSpatialiteLayerDialog::on_toolButtonNewDatabase_clicked()
112112
{
113113
QString fileName = QFileDialog::getSaveFileName( this, tr( "New SpatiaLite Database File" ),
114114
QDir::homePath(),
115-
tr( "SpatiaLite" ) + " (*.sqlite *.db)" );
115+
tr( "SpatiaLite" ) + " (*.sqlite *.db *.sqlite3 *.db3 *.s3db)" );
116116

117117
if ( fileName.isEmpty() )
118118
return;

src/providers/gdal/qgsgdalprovider.cpp

+5
Original file line numberDiff line numberDiff line change
@@ -2086,6 +2086,11 @@ void buildSupportedRasterFileFilterAndExtensions( QString & theFileFiltersString
20862086
glob += " *.jpeg";
20872087
theExtensions << "jpeg";
20882088
}
2089+
else if ( myGdalDriverDescription == "VRT" )
2090+
{
2091+
glob += " *.ovr";
2092+
theExtensions << "ovr";
2093+
}
20892094

20902095
theFileFiltersString += createFileFilter_( myGdalDriverLongName, glob );
20912096

src/providers/ogr/qgsogrprovider.cpp

+10-6
Original file line numberDiff line numberDiff line change
@@ -1701,6 +1701,10 @@ QString createFilters( QString type )
17011701
{
17021702
myProtocolDrivers += "DODS/OPeNDAP,DODS;";
17031703
}
1704+
else if ( driverName.startsWith( QObject::tr( "CouchDB" ) ) )
1705+
{
1706+
myProtocolDrivers += "CouchDB;";
1707+
}
17041708
else if ( driverName.startsWith( "FileGDB" ) )
17051709
{
17061710
myDirectoryDrivers += QObject::tr( "ESRI FileGDB" ) + ",FileGDB;";
@@ -1782,8 +1786,8 @@ QString createFilters( QString type )
17821786
}
17831787
else if ( driverName.startsWith( "KML" ) )
17841788
{
1785-
myFileFilters += createFileFilter_( QObject::tr( "Keyhole Markup Language [KML]" ), "*.kml" );
1786-
myExtensions << "kml";
1789+
myFileFilters += createFileFilter_( QObject::tr( "Keyhole Markup Language [KML]" ), "*.kml *.kmz" );
1790+
myExtensions << "kml" << "kmz";
17871791
}
17881792
else if ( driverName.startsWith( "MapInfo File" ) )
17891793
{
@@ -1842,8 +1846,8 @@ QString createFilters( QString type )
18421846
}
18431847
else if ( driverName.startsWith( "SQLite" ) )
18441848
{
1845-
myFileFilters += createFileFilter_( QObject::tr( "SQLite/SpatiaLite" ), "*.sqlite *.db" );
1846-
myExtensions << "sqlite" << "db";
1849+
myFileFilters += createFileFilter_( QObject::tr( "SQLite/SpatiaLite" ), "*.sqlite *.db *.sqlite3 *.db3 *.s3db *.sl3" );
1850+
myExtensions << "sqlite" << "db" << "sqlite3" << "db3" << "s3db" << "sl3";
18471851
}
18481852
else if ( driverName.startsWith( "SXF" ) )
18491853
{
@@ -1861,8 +1865,8 @@ QString createFilters( QString type )
18611865
else if ( driverName.startsWith( "VRT" ) )
18621866
{
18631867
myFileFilters += createFileFilter_( QObject::tr( "VRT - Virtual Datasource" ),
1864-
"*.vrt" );
1865-
myExtensions << "vrt";
1868+
"*.vrt *.ovf" );
1869+
myExtensions << "vrt" << "ovf";
18661870
}
18671871
else if ( driverName.startsWith( "XPlane" ) )
18681872
{

src/providers/spatialite/qgsspatialitedataitems.cpp

+1-1
Original file line numberDiff line numberDiff line change
@@ -321,7 +321,7 @@ void QgsSLRootItem::createDatabase()
321321

322322
QString filename = QFileDialog::getSaveFileName( 0, tr( "New SpatiaLite Database File" ),
323323
lastUsedDir,
324-
tr( "SpatiaLite" ) + " (*.sqlite *.db)" );
324+
tr( "SpatiaLite" ) + " (*.sqlite *.db *.sqlite3 *.db3 *.s3db)" );
325325
if ( filename.isEmpty() )
326326
return;
327327

src/providers/spatialite/qgsspatialitesourceselect.cpp

+1-1
Original file line numberDiff line numberDiff line change
@@ -273,7 +273,7 @@ bool QgsSpatiaLiteSourceSelect::newConnection( QWidget* parent )
273273

274274
QString myFile = QFileDialog::getOpenFileName( parent,
275275
tr( "Choose a SpatiaLite/SQLite DB to open" ),
276-
lastUsedDir, tr( "SpatiaLite DB" ) + " (*.sqlite *.db);;" + tr( "All files" ) + " (*)" );
276+
lastUsedDir, tr( "SpatiaLite DB" ) + " (*.sqlite *.db *.sqlite3 *.db3 *.s3db);;" + tr( "All files" ) + " (*)" );
277277

278278
if ( myFile.isEmpty() )
279279
return false;

0 commit comments

Comments
 (0)