mirror of
https://github.com/qgis/QGIS.git
synced 2025-02-28 00:17:30 -05:00
Merge pull request #2670 from pvalsecc/xlsx_ods
Add saveAs XLSX and ODS
This commit is contained in:
commit
31d981c49c
@ -1544,6 +1544,57 @@ QMap<QString, QgsVectorFileWriter::MetaData> QgsVectorFileWriter::initMetaData()
|
|||||||
layerOptions
|
layerOptions
|
||||||
)
|
)
|
||||||
);
|
);
|
||||||
|
|
||||||
|
// XLSX
|
||||||
|
datasetOptions.clear();
|
||||||
|
layerOptions.clear();
|
||||||
|
|
||||||
|
layerOptions.insert( "OGR_XLSX_FIELD_TYPES", new SetOption(
|
||||||
|
QObject::tr( "By default, the driver will try to detect the data type of fields. If set "
|
||||||
|
"to STRING, all fields will be of String type." ),
|
||||||
|
QStringList()
|
||||||
|
<< "AUTO"
|
||||||
|
<< "STRING",
|
||||||
|
"AUTO", // Default value
|
||||||
|
false // Allow None
|
||||||
|
) );
|
||||||
|
|
||||||
|
driverMetadata.insert( "XLSX",
|
||||||
|
MetaData(
|
||||||
|
"MS Office Open XML spreadsheet",
|
||||||
|
QObject::tr( "MS Office Open XML spreadsheet" ),
|
||||||
|
"*.xlsx",
|
||||||
|
"xlsx",
|
||||||
|
datasetOptions,
|
||||||
|
layerOptions
|
||||||
|
)
|
||||||
|
);
|
||||||
|
|
||||||
|
// ODS
|
||||||
|
datasetOptions.clear();
|
||||||
|
layerOptions.clear();
|
||||||
|
|
||||||
|
layerOptions.insert( "OGR_ODS_FIELD_TYPES", new SetOption(
|
||||||
|
QObject::tr( "By default, the driver will try to detect the data type of fields. If set "
|
||||||
|
"to STRING, all fields will be of String type." ),
|
||||||
|
QStringList()
|
||||||
|
<< "AUTO"
|
||||||
|
<< "STRING",
|
||||||
|
"AUTO", // Default value
|
||||||
|
false // Allow None
|
||||||
|
) );
|
||||||
|
|
||||||
|
driverMetadata.insert( "ODS",
|
||||||
|
MetaData(
|
||||||
|
"Open Document Spreadsheet",
|
||||||
|
QObject::tr( "Open Document Spreadsheet" ),
|
||||||
|
"*.ods",
|
||||||
|
"ods",
|
||||||
|
datasetOptions,
|
||||||
|
layerOptions
|
||||||
|
)
|
||||||
|
);
|
||||||
|
|
||||||
return driverMetadata;
|
return driverMetadata;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -2514,6 +2565,20 @@ bool QgsVectorFileWriter::driverMetadata( const QString& driverName, QString &lo
|
|||||||
glob = "*.gdb";
|
glob = "*.gdb";
|
||||||
ext = "gdb";
|
ext = "gdb";
|
||||||
}
|
}
|
||||||
|
else if ( driverName.startsWith( "XLSX" ) )
|
||||||
|
{
|
||||||
|
longName = "MS Office Open XML spreadsheet [XLSX]";
|
||||||
|
trLongName = QObject::tr( "MS Office Open XML spreadsheet [XLSX]" );
|
||||||
|
glob = "*.xlsx";
|
||||||
|
ext = "xlsx";
|
||||||
|
}
|
||||||
|
else if ( driverName.startsWith( "ODS" ) )
|
||||||
|
{
|
||||||
|
longName = "Open Document Spreadsheet";
|
||||||
|
trLongName = QObject::tr( "Open Document Spreadsheet [ODS]" );
|
||||||
|
glob = "*.ods";
|
||||||
|
ext = "ods";
|
||||||
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
return false;
|
return false;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user