32567 Commits

Author SHA1 Message Date
Nyall Dawson
ceba5264f7 New class QgsInterval for storing durations between datetimes
Move the QgsExpression::Interval class out to its own QgsInterval
class, extend with new methods and add tests

Add a typedef to keep API compatibility for 2.16
2016-05-10 19:00:33 +10:00
Nyall Dawson
3340d8ea70 Fix feature fields does not include virtual or joined fields when
feature is requested using a QgsFeatureRequest with FilterFid
2016-05-10 17:04:37 +10:00
Nyall Dawson
e359a8ee93 Add missing qHash implementations for QTime, QDate, QDateTime
These were added in Qt5, so for Qt4 builds we now include a variant
of the upstream Qt5 implementations
2016-05-10 17:04:32 +10:00
Nyall Dawson
c32acaa7e4 Add missing object name for styling dock 2016-05-10 14:23:04 +10:00
Nyall Dawson
dd4e32662f Avoid some detachments 2016-05-10 14:23:04 +10:00
Nyall Dawson
73733a65ed Fix major(?) memory leak with python code execution 2016-05-10 14:23:04 +10:00
Nyall Dawson
c32966d872 Fix some minor memory leaks 2016-05-10 14:23:04 +10:00
Nyall Dawson
6b80518a5b Fix memory leak in OGR provider when feature has no geometry
and FilterRect is used
2016-05-10 14:23:04 +10:00
Nyall Dawson
effb8dccda Fix warnings 2016-05-10 14:23:04 +10:00
Nathan Woodrow
0d399647be [Style Dock] Add undo/redo button at the bottom 2016-05-10 14:10:48 +10:00
Nathan Woodrow
ca914f118e [FEATURE] Add style/history tab to style dock 2016-05-10 10:32:30 +10:00
Nyall Dawson
948c1f0298 Temporarily fix generate_test_mask_image.py by rolling back to Qt4 2016-05-10 06:52:54 +10:00
Nyall Dawson
56783c915e Merge pull request #3051 from nyalldawson/cad_fixes
Improvements and fixes to advanced digitising dock
2016-05-09 21:38:37 +10:00
Nyall Dawson
81e72b782f Merge pull request #3060 from nyalldawson/filled_marker
New "Filled marker" symbol layer type
2016-05-09 21:23:59 +10:00
Nyall Dawson
794ab065dc [FEATURE] Embed atlas feature into composer HTML source as GeoJSON
This change makes the current atlas feature (and additionally all
attributes of related child features) available to the source of
a composer HTML item, allowing the item to dynamically adjust
its rendered HTML in response to the feature's properties. An
example use case is dynamically populating a HTML table with
all the attributes of related child features for the atlas
feature.

To use this, the HTML source must implement a "setFeature(feature)"
JavaScript function. This function is called whenever the atlas
feature changes, and is passed the atlas feature (+related attributes)
as a GeoJSON Feature.

Sponsored by Kanton of Zug, Switzerland
2016-05-09 21:19:29 +10:00
Nyall Dawson
c3d6c796f4 [FEATURE] Allow copying features from QGIS in GeoJSON format
The previous setting for include WKT when copying features has been
replaced with a choice of copying features as "Plain text, attributes
only", "Plain text, WKT geometry" and a new "GeoJSON" option.

When set to "GeoJSON", copying features in QGIS will place a GeoJSON
text representation of the features on the clipboard for easy
pasting into other applications/javascript code.

Sponsored by North Road
2016-05-09 21:19:29 +10:00
Nyall Dawson
718c5fde2e Catch errors when reprojecting for GeoJSON export 2016-05-09 21:19:28 +10:00
Nyall Dawson
9ea56acde0 [server] Always export GeoJSON in WGS84 (fix #14609) 2016-05-09 21:19:28 +10:00
Nyall Dawson
ca2c6290b1 Always export GeoJSON features in WGS84 (match specifications) 2016-05-09 21:19:28 +10:00
Nyall Dawson
55793a4534 Always create valid GeoJSON (both geometry and properties members
are required
2016-05-09 21:19:28 +10:00
Nyall Dawson
3681e2ceeb Add method for exporting QgsFeatureList to GeoJSON featurecollection 2016-05-09 21:19:28 +10:00
Nyall Dawson
5c1a05c8a1 Support including attributes of related (child) features in
GeoJSON feature export

Sponsored by Kanton of Zug, Switzerland
2016-05-09 21:19:28 +10:00
Nyall Dawson
34d468e64b Allow setting list of attributes to exclude from json exports 2016-05-09 21:19:28 +10:00
Nyall Dawson
9041c95464 Allow injecting extra properties into feature's GeoJSON export
Sponsored by Kanton of Zug, Switzerland
2016-05-09 21:19:28 +10:00
Nyall Dawson
c3f6c39784 Refactor to move JSON exporter to its own class 2016-05-09 21:19:28 +10:00
Nyall Dawson
935f4ad21c Support encoding lists and maps to json 2016-05-09 21:19:28 +10:00
Nyall Dawson
819ed86a69 Correctly escape more json strings 2016-05-09 21:19:28 +10:00
Nyall Dawson
729c70379e Blacklist PyQgsJSONUtils test from qt5 (uses null) 2016-05-09 21:19:28 +10:00
Nyall Dawson
24309dfb3a [FEATURE] New class QgsJSONUtils with utilities for converting
features to and from GeoJSON strings

Sponsored by Kanton of Zug, Switzerland
2016-05-09 21:19:28 +10:00
Marco Hugentobler
8d70a5141b Geometry type check in merge tool is not necessary any more (geometry type conversion is done in provider) 2016-05-09 11:22:14 +02:00
Alexander Bruy
f1e6d8731b [processing] add support for int64 fields (fix #14777) 2016-05-09 11:43:58 +03:00
Matthias Kuhn
14acde5bb9 Merge pull request #3013 from pierstitus/pseudocolor_renderer
Rewrite pseudocolor render code to improve speed
2016-05-09 09:06:38 +02:00
Matthias Kuhn
fa11390dd3 Doxygen 2016-05-09 09:01:34 +02:00
Matthias Kuhn
ffcf655b85 Don't always show first column in attribute table
Add tests for some basic attribute table functionality

Fix #14774
Fix #14765
Fix #14766
2016-05-09 08:56:42 +02:00
mhugent
59db4d0ebc Merge pull request #3045 from mhugent/convert_geometry_2
Convert geometry 2
2016-05-09 08:33:58 +02:00
Harrissou Sant-anna
cf45742fe8 use same icons as in other dialogs for this task 2016-05-09 07:02:30 +02:00
Nyall Dawson
a65d9c522f Fix indeterminate state for numeric line edits was showing "NULL" 2016-05-09 13:49:20 +10:00
Nyall Dawson
8126d460db New class QgsWebPage
QgsWebPage is a QWebPage subclass which automatically handles
redirecting JavaScript console output to the QGIS message log.

This makes it easier to debug JS errors and scripts used inside
composer HTML and label items.

Sponsored by North Road
2016-05-09 13:49:20 +10:00
Nyall Dawson
ea20149239 [FEATURE] New "Filled marker" symbol layer type
A "filled marker" is similar to the simple marker symbol layer, except
that it uses a fill sub symbol to render the marker. This allows use
of all the existing QGIS fill (and outline) styles for rendering
markers, eg gradient or shapeburst fills.

A new abstract class QgsSimpleMarkerSymbolLayerBase has been created
from which both QgsSimpleMarkerSymbolLayerV2 and
QgsFilledMarkerSymbolLayer derive. All common code has been moved to
this base class, allowing for easy addition of new shapes or features
to both simple markers and filled markers without duplication.

Also, adds a lot of missing docs to marker symbol layers.
2016-05-07 22:06:10 +10:00
Nyall Dawson
cda387cb6f Ensure that @symbol_color is always correct for symbol layer types
with subsymbols
2016-05-07 21:52:19 +10:00
Nyall Dawson
d823be1ede Add some clarifications to QgsRelation api 2016-05-07 21:49:31 +10:00
Marco Hugentobler
0b4961c224 Fix warning 2016-05-06 16:51:41 +02:00
Piers Titus van der Torren
9470c36aa0 Change QList to QVector for speed increase
mLUT and mColorRampItemList are changed,
     for mLUT it shouldn't matter that much since an int is stored
     sequentially anyway, also in a QList,
     for mColorRampItemList it should make a difference,
     though it has to be converted from/to QList to keep API
2016-05-06 15:56:16 +02:00
Marco Hugentobler
11b7a2702c Move conversion of added/changed geometry to vector data provider 2016-05-06 15:26:13 +02:00
Marco Hugentobler
e9d3a3aca4 Slightly more precise numbers for circular string centroids 2016-05-06 14:07:13 +02:00
Marco Hugentobler
034c7dbbdb Make sure the curve point is always on the segmentized curve 2016-05-06 10:40:13 +02:00
volaya
e6f1439c0a [processing] add object name to custom menus 2016-05-06 09:00:33 +02:00
Juergen E. Fischer
e040cbd644 fix display of version in doxymentation 2016-05-05 23:51:58 +02:00
Alessandro Pasotti
8e781b4ec0 [server] Fixes segfault on wrong TypeName
Unreported - WFS-T

Funded by Boundless
2016-05-05 17:17:28 +02:00
Nyall Dawson
d75eaff573 Fixes to arrow line symbology:
- Fix crash in Python bindings caused by subsymbol ownership
- Make symbol work correctly with categorised and graduated
renderers
2016-05-05 16:56:20 +10:00