34072 Commits

Author SHA1 Message Date
Alexander Bruy
4c39bd12e8 [processing] introduce OutputCrs output and add algorithms to get layer CRS in modeler 2016-08-05 12:55:26 +03:00
Alexander Bruy
40de15cc56 [processing] add missed CRS parameter to modeler (refs #11781) 2016-08-05 12:55:25 +03:00
Matthias Kuhn
624142f4c0 QgsExpression "round" don't convert to QVariant twice 2016-08-05 11:09:44 +02:00
Denis Rouzaud
ab57541d86 Merge pull request #3355 from 3nids/V2removal
remove V2 in some classes
2016-08-05 09:45:22 +02:00
Denis Rouzaud
acbf5cddb4 renamed QgsSymbologyV2Conversion to QgsSymbologyConversion 2016-08-05 08:32:13 +02:00
Denis Rouzaud
f2c3fb003e renamed QgsSymbolLevelsV2Dialog to QgsSymbolLevelsDialog 2016-08-05 08:22:43 +02:00
Denis Rouzaud
275736de92 removed V2 from QgsSymbolV2* 2016-08-05 08:22:21 +02:00
Denis Rouzaud
c16d1393a2 removed V2 from QgsSymbolLayerV2* 2016-08-05 08:18:01 +02:00
Nyall Dawson
19ab72c937 Follow up 1f02fd 2016-08-05 08:16:46 +10:00
Nyall Dawson
1f02fd491d Implement provider side FilterFids iterators for OGR provider
Makes some operations with OGR sources magnitudes faster, ie
zoom to 20 selected features in a 4 million point dataset:

before: 14 seconds of blocked gui
after: instant

Win!
2016-08-05 07:40:54 +10:00
Nyall Dawson
00a8fea13b Merge pull request #3351 from nyalldawson/feature_geom
QgsFields cleanup
2016-08-05 06:09:03 +10:00
Nyall Dawson
c40d6d3f28 Add missing docs 2016-08-05 06:08:07 +10:00
Nyall Dawson
4f3564cc7b Avoid potential QgsFields detachments 2016-08-05 06:08:07 +10:00
Nyall Dawson
ed4d34fdbc QgsFields returns QgsField value instead of const references
(since QgsField is implicitly shared)
2016-08-05 06:08:07 +10:00
Nyall Dawson
967d37adc7 QgsFeature::fields() returns a value, not a pointer
Also remove all other QgsFields pointers and replace with
references/values, since QgsFields objects are implicitly shared
2016-08-05 06:07:02 +10:00
Martin Dobias
23909a123a Fix crashes when accessing null map layer renderer
(obviously cached layers have null renderer)

Thanks @nyalldawson for tracking it down
2016-08-04 18:32:56 +02:00
Denis Rouzaud
669ac1b5c2 fix case 2016-08-04 16:24:16 +02:00
Denis Rouzaud
3e197ae74a remove QgsColorButton in favor of V2 2016-08-04 14:27:31 +02:00
Denis Rouzaud
138e1139aa remove old folder 2016-08-04 14:02:52 +02:00
Nyall Dawson
e363d242f9 Fix build 2016-08-04 20:56:25 +10:00
Matthias Kuhn
bb79d13e82 Remove deprecated Qgis::WKBType and API cleanup (#3325)
* Remove deprecated Qgis::WKBType and API cleanup

Renames QgsWKBTypes to QgsWkbTypes

Replaces usage of the enums:

* Qgis::WKBType with QgsWkbTypes::Type
* Qgis::GeometryType with QgsWkbTypes::GeometryType

Their values should be forward compatible (a fact that was already
explited up to now by casting between the types)

Renames some SSLxxx to SslXxx and URIxxx to UriXxx

* Fix build warnings and simplify type handling

* Add a fixer to rewrite imports

* The forgotten rebase conflictThe forgotten rebase conflicts

* QgsDataSourcURI > QgsDataSourceUri

* QgsWKBTypes > QgsWkbTypes

* Qgis.WKBGeom > QgsWkbTypes.Geom

* Further python fixes

* Guess what... Qgis::wkbDimensions != QgsWkbTypes::wkbDimensions

* Fix tests

* Python 3 updates

* [travis] pull request caching cannot be disabled

so at least use it in r/w mode

* Fix python3 print in plugins
2016-08-04 09:10:08 +02:00
Matthias Kuhn
6dbe63fc1a Don't show scrollbar in embedded drag and drop designer form 2016-08-03 13:41:54 +02:00
Sandro Mani
06a64ac43e [Geometry checker] Fix default value for thinness threshold 2016-08-03 09:45:18 +02:00
Sandro Mani
3b118a2f3d Merge pull request #3339 from manisandro/spatialite_ftablecatalog
[Spatialite] Only store database filename in f_table_catalog, not entire path
2016-08-03 09:40:47 +02:00
Sandro Mani
2b8b8ae0cc [Spatialite] Remove t_table_catalog WHERE clause when searcing for layer styles in db
This sanity check is unnecessary and breaks styling if the sqlite file is moved or renamed.
The t_table_catalog column is kept for backwards compatibility.
2016-08-03 09:36:18 +02:00
Juergen E. Fischer
f7e7ecff05 fix build 2016-08-03 09:01:16 +02:00
Juergen E. Fischer
285bcd053c fix crash when QSQLITE is unavailable (fixes #15358) 2016-08-03 08:54:24 +02:00
Nyall Dawson
c695571c55 Merge pull request #3304 from nyalldawson/processing_clip
[FEATURE] Optimise processing clip algorithm
2016-08-03 14:59:04 +10:00
Nyall Dawson
420917bf5b Sort api doc file by class name 2016-08-03 13:54:02 +10:00
Nyall Dawson
d1aa03a09b Better clip for very separate features 2016-08-03 13:41:22 +10:00
Nyall Dawson
71ebdb8f69 [FEATURE] Optimise processing clip algorithm
Before the algorithm was written to optimise clipping a few
features against thousands of mask features. The revised algorithm
is optimised for clipping thousands of input features against
a few mask features.

Given that this second operation is much more likely, it makes
sense to optimise for this use case.

I've also applied some other optimisations like taking advantage
of spatial indexes on the providers, using prepared geometries
and also only applying an intersection operation if the geometry
isn't wholly contained by the mask geometry.

Benchmarks:

clipping roads layer with 1 million lines against 2 polygons

before: 5 mins 30 seconds
after: 10 seconds

clipping address layer with 5 million points against 2 polygons

before: 50 minutes
after: 30 seconds
2016-08-03 13:15:03 +10:00
Matthias Kuhn
8182f2970f QgsFeatureRendererV2::Capabilities to flags 2016-08-02 17:24:38 +02:00
Matthias Kuhn
2cf9243edb Split displayField into displayExpression and mapTipTemplate (#1973)
Previously there was the expressionField (a field name or an expression)
mainly used for the feature list in the form view of the dual view.
On the other hand there was the displayField which could contain either
a simple field name or a complex HTML structure with embedded expressions.
And to know what it was you could compare it's content with the field names, if
a field name matched, you used it as a displayField (original purpose) and
if not... well, you could deal with HTML if you had a use for it.

The main problem is that there are two different usages for this kind of
thing

 * plain text identifier (field or expression)
 * pretty, rich text feature info

This commit cleans up with this. You want rich text and a lot of info:
go for mapTipTemplate.
You want a plain text string to identify features: go for
the displayExpression.
2016-08-02 16:58:58 +02:00
Alexander Bruy
2134112aab [dbmanager] fix signal/slot connection 2016-08-02 16:50:27 +03:00
Denis Rouzaud
f5b11d9130 Merge pull request #3352 from 3nids/rubberband_ispolygon
QgsRubberBand: remove constructor and method with bool isPolygon
2016-08-02 15:11:13 +02:00
Denis Rouzaud
b7f4fe36e7 QgsRubberBand: remove constructor and method with bool isPolygon
use methods with Qgis::GeometryType instead
2016-08-02 13:56:02 +02:00
Martin Dobias
2482a6bbd0 Small cleanup in data items 2016-08-02 13:04:45 +02:00
Alexander Bruy
517f4e1f7f [processing] fix import 2016-08-02 12:14:16 +03:00
Alexander Bruy
02e846ab5e expand all groups if filter applied 2016-08-02 11:23:51 +03:00
Alexander Bruy
592c33f41e [FEATURE][processing] add search to Get Scripts and Models dialog (fix #12067) 2016-08-02 11:23:25 +03:00
Martin Dobias
1a9001802c Merge duplicate sections in API breaks doc 2016-08-02 10:07:59 +02:00
Martin Dobias
9db9304627 Raster MTR improvements - part one (PR #3334) 2016-08-02 08:22:29 +02:00
Nyall Dawson
f9fabb86d9 Merge pull request #3346 from nyalldawson/processing
Some processing features + fixes
2016-08-02 14:45:06 +10:00
Nyall Dawson
4bfdcf0927 Fix expected test data 2016-08-02 13:50:59 +10:00
Nyall Dawson
60147e8147 Remove use of constGeometry 2016-08-02 13:50:59 +10:00
Nyall Dawson
bb54b4f41a [FEATURE] Make processing dissolve algorithm accept multiple fields
This allows you to dissolve based on more than one field value
2016-08-02 11:54:02 +10:00
Nyall Dawson
f449bf2361 Make test layer comparison handle different order of features 2016-08-02 11:53:11 +10:00
Nyall Dawson
fda93dfc57 [processing] Fix broken multi field selection widget 2016-08-02 11:53:11 +10:00
Nyall Dawson
0455b6600d [processing] Fix multipart to singlepart handling of null geometry 2016-08-02 11:53:11 +10:00
Nyall Dawson
ccfd4c36be [processing] Add test for dissolve using field values 2016-08-02 11:52:37 +10:00