QGIS API Documentation  2.99.0-Master (c558d51)
Functions
qgsproject.cpp File Reference
#include "qgsproject.h"
#include "qgsdatasourceuri.h"
#include "qgsexception.h"
#include "qgslayertree.h"
#include "qgslayertreeutils.h"
#include "qgslayertreeregistrybridge.h"
#include "qgslogger.h"
#include "qgsmaplayerregistry.h"
#include "qgsmessagelog.h"
#include "qgspluginlayer.h"
#include "qgspluginlayerregistry.h"
#include "qgsprojectfiletransform.h"
#include "qgssnappingconfig.h"
#include "qgsprojectversion.h"
#include "qgsrasterlayer.h"
#include "qgsrectangle.h"
#include "qgsrelationmanager.h"
#include "qgsvectorlayer.h"
#include "qgsmapthemecollection.h"
#include "qgslayerdefinition.h"
#include "qgsunittypes.h"
#include "qgstransaction.h"
#include "qgstransactiongroup.h"
#include "qgsvectordataprovider.h"
#include "qgsprojectbadlayerhandler.h"
#include <QApplication>
#include <QFileInfo>
#include <QDomNode>
#include <QObject>
#include <QTextStream>
#include <QTemporaryFile>
#include <QDir>
#include <QUrl>
#include <QSettings>
Include dependency graph for qgsproject.cpp:

Go to the source code of this file.

Functions

void _getProperties (const QDomDocument &doc, QgsPropertyKey &project_properties)
 Restore any optional properties found in "doc" to "properties". More...
 
static void _getTitle (const QDomDocument &doc, QString &title)
 Get the project title. More...
 
QgsPropertyaddKey_ (const QString &scope, const QString &key, QgsPropertyKey *rootProperty, const QVariant &value)
 Add the given key and value. More...
 
void dump_ (const QgsPropertyKey &topQgsPropertyKey)
 
QgsPropertyfindKey_ (const QString &scope, const QString &key, QgsPropertyKey &rootProperty)
 return the property that matches the given key sequence, if any More...
 
QgsProjectVersion getVersion (const QDomDocument &doc)
 Return the version string found in the given DOM document. More...
 
QStringList makeKeyTokens_ (const QString &scope, const QString &key)
 Take the given scope and key and convert them to a string list of key tokens that will be used to navigate through a Property hierarchy. More...
 
void removeKey_ (const QString &scope, const QString &key, QgsPropertyKey &rootProperty)
 

Function Documentation

void _getProperties ( const QDomDocument &  doc,
QgsPropertyKey project_properties 
)

Restore any optional properties found in "doc" to "properties".

properties tags for all optional properties. Within that there will be scope tags. In the following example there exist one property in the "fsplugin" scope. "layers" is a list containing three string values.

1 <properties>
2  <fsplugin>
3  <foo type="int" >42</foo>
4  <baz type="int" >1</baz>
5  <layers type="QStringList" >
6  <value>railroad</value>
7  <value>airport</value>
8  </layers>
9  <xyqzzy type="int" >1</xyqzzy>
10  <bar type="double" >123.456</bar>
11  <feature_types type="QStringList" >
12  <value>type</value>
13  </feature_types>
14  </fsplugin>
15 </properties>
Parameters
docxml document
project_propertiesshould be the top QgsPropertyKey node.

Definition at line 513 of file qgsproject.cpp.

static void _getTitle ( const QDomDocument &  doc,
QString &  title 
)
static

Get the project title.

Todo:
XXX we should go with the attribute xor title, not both.

Definition at line 549 of file qgsproject.cpp.

QgsProperty* addKey_ ( const QString &  scope,
const QString &  key,
QgsPropertyKey rootProperty,
const QVariant &  value 
)

Add the given key and value.

Parameters
scopescope of key
keykey name
rootPropertyis the property from which to start adding
valuethe value associated with the key

Definition at line 189 of file qgsproject.cpp.

void dump_ ( const QgsPropertyKey topQgsPropertyKey)

Definition at line 476 of file qgsproject.cpp.

QgsProperty* findKey_ ( const QString &  scope,
const QString &  key,
QgsPropertyKey rootProperty 
)

return the property that matches the given key sequence, if any

Parameters
scopescope of key
keykeyname
rootPropertyis likely to be the top level QgsPropertyKey in QgsProject:e:Imp.
Returns
null if not found, otherwise located Property

Definition at line 114 of file qgsproject.cpp.

QgsProjectVersion getVersion ( QDomDocument const &  doc)

Return the version string found in the given DOM document.

Returns
the version string or an empty string if none found

Definition at line 583 of file qgsproject.cpp.

QStringList makeKeyTokens_ ( const QString &  scope,
const QString &  key 
)

Take the given scope and key and convert them to a string list of key tokens that will be used to navigate through a Property hierarchy.

E.g., scope "someplugin" and key "/foo/bar/baz" will become a string list of { "properties", "someplugin", "foo", "bar", "baz" }. "properties" is always first because that's the permanent ``root'' Property node.

Definition at line 72 of file qgsproject.cpp.

void removeKey_ ( const QString &  scope,
const QString &  key,
QgsPropertyKey rootProperty 
)

Definition at line 258 of file qgsproject.cpp.