34080 Commits

Author SHA1 Message Date
Denis Rouzaud
1db19ce8c0 Merge pull request #3356 from 3nids/remove_legendmodel
remove QgsLegendModel
2016-08-05 20:54:52 +02:00
Denis Rouzaud
bbb9b5322d remove QgsLegendModel 2016-08-05 20:53:58 +02:00
Matthias Kuhn
e82ce54a8e Don't rely on a particular order in filterFids tests (#3357) 2016-08-05 16:14:17 +02:00
Alexander Bruy
885cc82c3c [processing] more clean in QGIS algs 2016-08-05 16:48:59 +03:00
Alexander Bruy
acdde31b3d [processing] more cleanups (follow up 06c4b07222) 2016-08-05 15:05:36 +03:00
Alexander Bruy
45c8a09439 Merge pull request #3353 from nyalldawson/processing
[Processing] QGIS alg cleanups
2016-08-05 14:51:00 +03:00
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
c1649ebef4 [processing] pendingFields() -> fields()
Does the same thing, but pendingFields() is ugly
2016-08-05 06:31:07 +10:00
Nyall Dawson
06c4b07222 [processing] Use layer crs/fields instead of provider crs/fields
Since the layer has more complete knowledge of the crs (ie, when
provider could not determine crs and user has selected it from
the list), and also better knowledge of layer fields (virtual
fields, joined fields) we should use these rather than the
provider methods.
2016-08-05 06:28:49 +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