33 Commits

Author SHA1 Message Date
Nyall Dawson
accdc23e0b Fix sip subclassing of metadata subclasses 2018-03-22 16:13:30 +11:00
Nyall Dawson
665f3e4cfc Spelling 2018-03-22 16:13:30 +11:00
Nyall Dawson
f4ed93e1ca Add project metadata mode to QgsMetadataWidget 2018-03-22 16:13:30 +11:00
Nyall Dawson
b10be8a8a3 Update metadata xml definitions 2018-03-22 16:13:30 +11:00
Nyall Dawson
d293c5d0a0 Code shuffle to avoid duplicate code 2018-03-22 16:13:30 +11:00
Nyall Dawson
09aca080ec Add new QgsProjectMetadata metadata class
For storing QgsProject metadata. Contains all metadata items
from QgsMetadataBase, plus adds author and creation datetime
metadata items.
2018-03-22 16:13:30 +11:00
Nyall Dawson
1e05de049a Update metadata validator for base class split 2018-03-22 16:13:30 +11:00
Nyall Dawson
5cf2656ace Split metadata into two classes
A new base class QgsMetadataBase has been split off QgsLayerMetadata,
containing all non-layer specific metadata items.

This allows us to reuse the common metadata settings for other
non-layer items, e.g. projects.
2018-03-22 16:13:30 +11:00
Nyall Dawson
1da2da219a Fix build 2018-02-20 11:31:33 +10:00
Nyall Dawson
3d4f6f82bb Followup 0548f4, fixes to layer metadata and metadata widget
Address outstanding review requests so that this PR can be merged
2018-02-20 11:10:55 +10:00
mj10777
0548f4267e Added QgsLayerMetadata logic to QgsDataProvider. Added setMetadata in QgsVector/RasterLayer::setDataProvider. Corrections in QgsMetadataWidget with added get/setMetadata and hasChanged functions plus checking for set mLayer pointer before use. 2018-02-20 11:06:57 +10:00
Denis Rouzaud
7722010ca8 rename *.sip to *.sip.in for the auto generated sip files 2018-01-17 10:16:37 -04:00
Denis Rouzaud
d87c60512c [sipify] fix bad handling of \see within sentences
and other docstrings improvements
2018-01-09 21:40:10 -04:00
Denis Rouzaud
5babec5e07 run sipify 2018-01-09 11:40:39 -04:00
Juergen E. Fischer
e271b647d4 translation string updates (incl. better translatable date time widget
help)
2018-01-04 22:49:30 +01:00
Matthias Kuhn
f5a650f978
Followup 9a5435f: Fix sip files 2017-12-20 12:10:33 +01:00
Etienne Trimaille
9a5435ff1e remove CRS picker and allow only layer CRS or provider CRS in metadata editor (#5915) 2017-12-20 10:35:49 +02:00
Denis Rouzaud
90e5196996 run sipify 2017-12-19 14:55:46 -04:00
Denis Rouzaud
c604d2dda6 run sipify 2017-12-15 22:13:44 -04:00
Denis Rouzaud
f2b3ed0a9b run sipify 2017-12-15 11:12:19 -04:00
Denis Rouzaud
e48cf98edb run sipify 2017-12-06 07:19:50 -04:00
Etienne Trimaille
c3309b9257 use the metadata API in the HTML viewer 2017-09-13 16:50:14 +02:00
Etienne Trimaille
814ef78732 write metadata with XML 2017-09-12 07:28:54 +02:00
Etienne Trimaille
5100d85c49 add category in QgsLayerMetadata using keywords 2017-08-05 09:12:48 +02: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
269bfe7bf7 Metadata class shell 2017-05-04 07:29:56 +10:00