16 #ifndef QGSJSONUTILS_H 
   17 #define QGSJSONUTILS_H 
   19 #include "qgis_core.h" 
   26 #include <QJsonObject> 
   99     void setIncludeRelated( 
bool includeRelated ) { mIncludeRelatedAttributes = includeRelated; }
 
  207     QString exportFeature( 
const QgsFeature &feature,
 
  208                            const QVariantMap &extraProperties = QVariantMap(),
 
  209                            const QVariant &
id = QVariant(),
 
  210                            int indent = -1 ) 
const;
 
  221     json exportFeatureToJsonObject( 
const QgsFeature &feature,
 
  222                                     const QVariantMap &extraProperties = QVariantMap(),
 
  223                                     const QVariant &
id = QVariant() ) const 
SIP_SKIP;
 
  233     QString exportFeatures( const 
QgsFeatureList &features, 
int indent = -1 ) const;
 
  259     bool mIncludeGeometry = true;
 
  262     bool mIncludeAttributes = true;
 
  265     bool mIncludeRelatedAttributes = false;
 
  274     bool mAttributeDisplayName = false;
 
  276     bool mTransformGeometries = true;
 
  309     static QgsFields stringToFields( 
const QString &
string, QTextCodec *encoding = 
nullptr );
 
  317     Q_INVOKABLE 
static QString encodeValue( 
const QVariant &value );
 
  328                                      const QVector<QVariant> &attributeWidgetCaches = QVector<QVariant>() );
 
  341         const QVector<QVariant> &attributeWidgetCaches = QVector<QVariant>() ) 
SIP_SKIP;
 
  351     Q_INVOKABLE 
static QVariantList parseArray( 
const QString &json, QVariant::Type type = QVariant::Invalid );
 
  359     static json jsonFromVariant( 
const QVariant &v ) 
SIP_SKIP;
 
  366     static QVariant parseJson( 
const std::string &jsonString ) 
SIP_SKIP;
 
  373     static QVariant parseJson( 
const QString &jsonString ) 
SIP_SKIP;
 
This class represents a coordinate reference system (CRS).
The feature class encapsulates a single feature including its unique ID, geometry and a list of field...
Container of fields for a vector layer.
Handles exporting QgsFeature features to GeoJSON features.
void setIncludeGeometry(bool includeGeometry)
Sets whether to include geometry in the JSON exports.
void setIncludeRelated(bool includeRelated)
Sets whether to include attributes of features linked via references in the JSON exports.
void setPrecision(int precision)
Sets the maximum number of decimal places to use in geometry coordinates.
void setAttributes(const QgsAttributeList &attributes)
Sets the list of attributes to include in the JSON exports.
bool attributeDisplayName() const
Returns whether original names of attributes or aliases are printed.
QgsAttributeList excludedAttributes() const
Returns a list of attributes which will be specifically excluded from the JSON exports.
void setIncludeAttributes(bool includeAttributes)
Sets whether to include attributes in the JSON exports.
void setTransformGeometries(bool activate)
Sets whether geometries should be transformed in EPSG 4326 (default behavior) or just keep as it is.
void setAttributeDisplayName(bool displayName)
Sets whether to print original names of attributes or aliases if defined.
QgsAttributeList attributes() const
Returns the list of attributes which will be included in the JSON exports, or an empty list if all at...
void setExcludedAttributes(const QgsAttributeList &attributes)
Sets a list of attributes to specifically exclude from the JSON exports.
bool includeAttributes() const
Returns whether attributes will be included in the JSON exports.
int precision() const
Returns the maximum number of decimal places to use in geometry coordinates.
bool includeRelated() const
Returns whether attributes of related (child) features will be included in the JSON exports.
bool includeGeometry() const
Returns whether geometry will be included in the JSON exports.
Helper utilities for working with JSON and GeoJSON conversions.
Represents a vector layer which manages a vector based data sets.
QList< QgsFeature > QgsFeatureList
QList< int > QgsAttributeList
const QgsCoordinateReferenceSystem & crs