38630 Commits

Author SHA1 Message Date
Nyall Dawson
71347c4564 Show project path using native OS format
Avoids showing project paths as d:/... on windows, and instead
uses the more familiar d:\... format
2017-05-04 13:41:40 +10:00
Nyall Dawson
341e258775 Merge pull request #4356 from nyalldawson/metadata
Implement Metadata store (WP2 for QEP-91) (part 1)
2017-05-04 12:02:29 +10:00
Nyall Dawson
548d61b8c4 Fix expected sipify output 2017-05-04 09:50:57 +10:00
Nyall Dawson
ac54a3f83f [sipify] Combine multiple argument annotations 2017-05-04 08:29:54 +10:00
Nyall Dawson
50680249ed Merge pull request #4397 from nyalldawson/no_adawaita
Block use of the Adwaita themes if we can avoid them
2017-05-04 07:31:23 +10:00
Nyall Dawson
8389b9a04f Sipify update 2017-05-04 07:30:27 +10:00
Nyall Dawson
75f5a5fbcf Add spatial and temporal extents to metadata 2017-05-04 07:29:56 +10:00
Nyall Dawson
8545b80487 Add doxygen note about metadata validation 2017-05-04 07:29:56 +10:00
Nyall Dawson
bf2ce3d8c9 Add history item to metadata 2017-05-04 07:29:56 +10:00
Nyall Dawson
b2f52d8a71 Add license section to metadata 2017-05-04 07:29:56 +10:00
Nyall Dawson
5600395e29 Add metadata validator
Adds a new abstract base class QgsMetadataValidator for validating
metadata against standard schemas.

Initially only QgsNativeMetadataValidator for validating against
the native QGIS metadata schema is implemented.

In future this could be extended with Dublin Core, ISO 19115
validators, etc...
2017-05-04 07:29:56 +10:00
Nyall Dawson
cc3d67a207 Add temporary methods to save layer metadata in layer custom properties
Allows temporary persistance of metadata inside a single project. Will
be removed when later work packages from the metadata project are
merged.
2017-05-04 07:29:56 +10:00
Nyall Dawson
40fccf550a Implement metadata store for map layers
QgsLayerMetadata handles storage and management of the metadata
for a QgsMapLayer. This class is an internal QGIS format with a common
metadata structure, which allows for code to access the metadata properties for
layers in a uniform way.

The metadata store is designed to be compatible with the Dublin Core metadata
specifications, and will be expanded to allow compatibility with ISO specifications
in future releases. However, the QGIS internal schema does not represent a superset
of all existing metadata schemas and accordingly conversion from specific
metadata formats to QgsLayerMetadata may result in a loss of information.

This class is designed to follow the specifications detailed in
the schema definition available at resources/qgis-resource-metadata.xsd
within the QGIS source code.
2017-05-04 07:29:56 +10:00
Nyall Dawson
3a965e6dbb Attach layer metadata to QgsMapLayer 2017-05-04 07:29:56 +10:00
Nyall Dawson
269bfe7bf7 Metadata class shell 2017-05-04 07:29:56 +10:00
Nyall Dawson
18478ab6a4 Remove duplicate gui/effects include 2017-05-04 07:29:56 +10:00
Nyall Dawson
998ca4a8ce Preparation for metadata directory 2017-05-04 07:29:56 +10:00
Nyall Dawson
9e662a7807 Merge pull request #4330 from kalxas/metadata_schema
Adding Metadata schema for WP1 for QEP-91
2017-05-04 07:29:04 +10:00
Nyall Dawson
87e2aab0f3 Merge pull request #4492 from nyalldawson/driver_from_extension
Add method to retrieve corresponding OGR driver from a file extension
2017-05-04 07:21:57 +10:00
Nyall Dawson
32ff0921f4 Merge pull request #4491 from nyalldawson/proxy_sink
Add QgsProxyFeatureSink
2017-05-04 07:21:20 +10:00
Nyall Dawson
a87e8d1aa6 Merge pull request #4493 from arnaud-morvan/sipify_core_classes_2
Sipify core classes 2
2017-05-04 07:20:40 +10:00
Alessandro Pasotti
cdb947c8d5 Merge pull request #4465 from boundlessgeo/server-plugins-api-refactoring2
[server] Server plugins API refactoring
2017-05-03 19:20:37 +02:00
arnaud.morvan@camptocamp.com
04a9264e86 Sipify core.QgsFeatureIterator 2017-05-03 19:11:16 +02:00
arnaud.morvan@camptocamp.com
05933b171a Sipify core.QgsFeatureFilterProvider 2017-05-03 19:07:52 +02:00
Tom Kralidis
3be20f8680 update qgisMinimumVersion to current LTR 2017-05-03 08:39:41 -04:00
Nyall Dawson
e40cb0716c Move QgsProxyFeatureSink methods to header
To allow better compiler optimisation
2017-05-03 19:51:32 +10:00
Nyall Dawson
96ad51138b Add method to retrieve sink 2017-05-03 19:50:38 +10:00
Alessandro Pasotti
569593b79a [server] Python plugins API cleanup part 3
This removes the handleRequest method that returns the
headers and body as byte array.

This superceeded by the implementation that takes a
request and response instances.
2017-05-03 10:58:18 +02:00
Alessandro Pasotti
2afcad279d [server] Python plugins API cleanup part 2
This part adds the headers as an optional argument
to the request and start using the handleRequest(request, response)
call in the python tests.

Some additional tests are also added.
2017-05-03 10:58:18 +02:00
Alessandro Pasotti
b7d6c1e59e [server] Python plugins API cleanup part 1
This is the first step to a cleaner and consitent API
for server plugin.

It also adds some new tests for the base request and
response classes
2017-05-03 10:57:39 +02:00
Nyall Dawson
03dd26ef9f Adapt to GDAL 2.0 API 2017-05-03 18:20:34 +10:00
Nyall Dawson
ce4f93b410 Add method to retrieve corresponding OGR driver from a file extension 2017-05-03 17:13:05 +10:00
Nyall Dawson
fde71cf9b2 Add QgsProxyFeatureSink
A simple feature sink which proxies feature addition on to another feature sink.

This class is designed to allow factory methods which always return new QgsFeatureSink
objects. Since it is not always possible to create an entirely new QgsFeatureSink
(e.g. if the feature sink is a layer or a layer's data provider), a new
QgsProxyFeatureSink can instead be returned which forwards features on to
the destination sink. The proxy sink can be safely deleted without affecting
the destination sink.
2017-05-03 16:56:37 +10:00
Alexander Bruy
fe7d49a053 Merge pull request #4470 from alexbruy/ignore-empty-svg-path
ignore empty SVG path (fix #15891)
2017-05-03 09:07:52 +03:00
Denis Rouzaud
85f3b81b55 remove double spaces in sip files
fix indentation
2017-05-03 08:02:14 +02:00
Denis Rouzaud
6958db6f06 [sipify] rename SIP_PYARGTYPE to SIP_PYTYPE since it can be used to changed return types too 2017-05-03 07:22:30 +02:00
Nyall Dawson
75fa28f5f3 Followup 363336, fixing adding features to OGR data providers
(addFeature cannot be called directly - it must be called
by addFeatures to ensure the various edition setup code
is called)
2017-05-03 14:02:33 +10:00
Mathieu Pellerin
dc7198a754 Merge pull request #4488 from nirvn/saveasimage_fix_rotated 2017-05-03 10:52:47 +07:00
nirvn
747c2e2bf3 rotated world file support in QgsMapSettingsUtils::worldFileContent() 2017-05-03 10:39:17 +07:00
nirvn
e1b1400dc7 Fix rotated canvas scale issue in save as image 2017-05-03 09:11:57 +07:00
Nyall Dawson
a2327d3a70 Fix Coverity uninitialized member warning 2017-05-03 08:56:24 +10:00
Nyall Dawson
32e06f486a Make QgsProcessingContext::temporaryLayerStore() return a pointer to store 2017-05-03 08:43:31 +10:00
Nyall Dawson
d2ce9c69b1 Allow access to project's internal layer store, remove some duplicate code 2017-05-03 07:35:47 +10:00
Nyall Dawson
81e79d9848 Merge pull request #4483 from nyalldawson/writer_pt1
Small cleanups to processing getVectorWriter
2017-05-03 07:21:46 +10:00
Nyall Dawson
e1cff82a44 Fix failing test 2017-05-03 07:09:44 +10:00
Nyall Dawson
c575c4a869 Fix build 2017-05-03 07:09:44 +10:00
Nyall Dawson
f81971daa4 Fix failing tests 2017-05-03 07:09:44 +10:00
Nyall Dawson
348c886602 Use a QgsMapLayerStore instead of whole QgsProject for
temporary layer storage in QgsProcessingContext
2017-05-03 07:09:44 +10:00
Nyall Dawson
10b1896a3c Move old map layer registry tests into QgsProject tests 2017-05-03 07:09:44 +10:00
Nyall Dawson
26afb2e5b6 Use QgsMapLayerStore within QgsProject 2017-05-03 07:09:44 +10:00