Nyall Dawson
962166c4b5
Merge pull request #3708 from nirvn/singlepart_to_multi
...
[processing] optimise singlepart to multipart algorithm
2016-11-03 15:41:41 +10:00
nirvn
03e29d4f01
[processing] optimise singlepart to multipart algorithm
...
- keep z/m/curved geometries intact
- rewrite loop to avoid the cost of nb. feature x unique values
2016-11-03 09:05:31 +07:00
Nyall Dawson
a44ea22880
Small refinement to multipart to singlepart alg
2016-11-03 05:40:11 +10:00
rldhont
963d75f471
[BUGFIX][QGIS Server] Apply filter element
2016-11-02 17:48:33 +01:00
Alexander Bruy
2be0f013f4
document undocumented method
2016-11-02 16:31:21 +02:00
Alexander Bruy
a3c762b218
more doxygen fixes
2016-11-02 16:26:14 +02:00
Alexander Bruy
5a2bb5d84c
fix doxygen comments
2016-11-02 15:48:34 +02:00
Alexander Bruy
9ae6e6ffe4
fix typo in comment
2016-11-02 14:44:20 +02:00
Alexander Bruy
54dcc347ae
default value does not need to be explicitly set
2016-11-02 14:44:20 +02:00
Alexander Bruy
f7d5912380
fix formatting
2016-11-02 14:44:20 +02:00
Alexander Bruy
dac03d5ce8
use default QString() constructor instead of ""
...
improve doxygen docs
2016-11-02 14:44:20 +02:00
Alexander Bruy
75b23cb55c
update Python bindings
2016-11-02 14:44:20 +02:00
Alexander Bruy
2497375ee9
[FEATURE] save and restore color ramp used for singleband pseudocolor rendering
2016-11-02 14:44:20 +02:00
Alexander Bruy
1c44d7471f
Merge pull request #3695 from nirvn/processing_modeler_dblclick
...
[processing] resurrect editing of modeler item on double-click
2016-11-02 14:16:27 +02:00
Even Rouault
06dc501139
test_provider_ogr_gpkg.py: Test disabling walForSqlite3 setting
2016-11-02 12:40:20 +01:00
Denis Rouzaud
dbd7de3940
Merge pull request #3689 from rduivenvoorde/getPlugins3
...
Temporarily hardcode plugins version in url ?qgis=3.0
2016-11-02 11:47:04 +01:00
Harrissou Sant-anna
a7ffecd878
Make collapsible the "Curve segmentation" frame
...
in Settings --> Options --> Rendering dialog (for coherence with other frames)
also fix a typo
2016-11-02 11:22:48 +01:00
Nyall Dawson
4f5337fce5
Merge pull request #3704 from pvalsecc/fix_collapsing
...
Fix saving of the collapsed state for relations
2016-11-02 18:09:42 +10:00
Alexander Bruy
5d877fd888
Merge pull request #3707 from nyalldawson/multipart_to_single
...
[processing] optimise multipart to singlepart algorithm
2016-11-02 10:06:25 +02:00
Patrick Valsecchi
28457ed49c
Fix saving of the collapsed state for relations
...
In the attribute form, the collapsed state of RelationReference
was not loaded correctly and was interfering with the collapsed
state of the relation editor.
Plus, the state was saved globally for a reference. Meaning that
if a reference was used (through other references) from other
layers, it was sharing the same state.
2016-11-02 07:21:17 +01:00
Nyall Dawson
18fc0c6fad
[processing] optimise multipart to singlepart algorithm
...
- simplify code
- keep z/m/curved geometries intact
- might be a bit faster
2016-11-02 16:06:00 +10:00
Nyall Dawson
f65e770242
[FEATURE[processing] New algorithm to compute geometry by expression
...
This algorithm updates existing geometries (or creates new
geometries) for input features by use of a QGIS expression. This
allows complex geometry modifications which can utilise all the
flexibility of the QGIS expression engine to manipulate and create
geometries for output features.
2016-11-02 16:05:46 +10:00
Nyall Dawson
9b9a002be5
Update api break docs
2016-11-02 14:46:24 +10:00
Nyall Dawson
3f2a7810cf
Respect non-enforced constraints when editing/adding features
...
Warnings are shown, but features can be committed. Fields which
fail an unenforced constraint are now shaded in yellow to differentiate
from the red failure for enforced constraints.
2016-11-02 13:42:22 +10:00
Nyall Dawson
fac5bc0691
[FEATURE] Field constraints can be enforced or not
...
Non-enforced constraints just show a warning to the user, but
do not prevent committing the feature. Enforced constraints
block users from comitting non compliant features.
Any constraints detected by the provider are always
enforced.
2016-11-02 13:42:22 +10:00
Nyall Dawson
e3a608365f
fix test
2016-11-02 13:42:22 +10:00
Nyall Dawson
3a59674901
Fix some untranslatable strings
2016-11-02 11:07:07 +10:00
Nyall Dawson
cb94b68d88
Move constraint handling to QgsFieldConstraints
...
Avoids cluttering QgsField API
2016-11-02 11:07:07 +10:00
Nyall Dawson
003fe1830c
Color a few pixels slightly differently
2016-11-02 11:07:07 +10:00
Nyall Dawson
bb6fc32eec
[FEATURE] Not null constraint detection for ogr provider
...
Implements not null constraint detection for the OGR layers, where
supported for the data format by OGR.
(only available for GDAL >= 2.0)
2016-11-02 11:07:07 +10:00
Nyall Dawson
210c98bedc
Fix failing unit test
2016-11-02 11:07:07 +10:00
Nyall Dawson
961b63f292
Update API break docs
2016-11-02 11:07:07 +10:00
Nyall Dawson
a6319a47d7
If the layer is NOT being edited then only check layer based constraints
...
and not any constraints enforced by the provider
Because:
1. we want to keep browsing features nice and responsive. It's nice to give
feedback as to whether the value checks out, but not if it's too slow to
do so. Some constraints (eg unique) can be expensive to test. A user can
freely remove a layer-based constraint if it proves to be too slow to
test, but they are unlikely to have any control over provider-side
constraints
2. the provider has already accepted the value, so presumably it doesn't
violate the constraint and there's no point rechecking!
2016-11-02 11:07:07 +10:00
Nyall Dawson
c98d380dc1
Move responsibility for testing for attribute against constraints
...
to QgsVectorLayerUtils::validateAttribute()
Also clean up some strings shown to the user when a constraint
check fails
2016-11-02 11:07:07 +10:00
Nyall Dawson
2500d75f5e
Move responsibility for storage of constraint expressions to QgsVectorLayer
2016-11-02 11:07:07 +10:00
Nyall Dawson
f99ea26bdf
Refactor constraint handling
...
- store constraint origin in QgsField
- move handling of constraint expressions to QgsField
2016-11-02 11:07:07 +10:00
Nyall Dawson
1cecf37b40
Enforce unique constraints in attribute form
2016-11-02 11:07:07 +10:00
Nyall Dawson
b7d0fd6f90
New class QgsVectorLayerUtils
...
Contains static helper methods for working with vector layers.
Initially only contains a method to test whether a value
exists within a layer's attributes.
2016-11-02 11:07:07 +10:00
Nyall Dawson
3e40f803c3
Implement constraint detection for spatialite provider
2016-11-02 11:07:07 +10:00
Nyall Dawson
21f885aa7a
Select all text after reset line edit to null
2016-11-02 11:07:07 +10:00
Nyall Dawson
6bbd0061f3
Move handling of not null constraint from edit form to layer
2016-11-02 11:07:07 +10:00
Nyall Dawson
bd9f672aa7
Allow constraints to be added at a QgsVectorLayer level
2016-11-02 11:07:07 +10:00
Nyall Dawson
4efad04bd8
Move constraints to QgsField
2016-11-02 11:07:07 +10:00
Nyall Dawson
f6c1bf7f5b
Add gui for setting/exposing constraints in field properties
...
Provider set constraints cannot be changed by users, ie
if a not null constraint is set on the field at the database
then QGIS users cannot clear this constraint.
2016-11-02 11:07:07 +10:00
Nyall Dawson
d1fd588499
Add method to fetch constraints from a vector data provider
...
Implemented for unique and not null constraints for postgres
provider
2016-11-02 11:07:07 +10:00
Nyall Dawson
5e3bef7799
Fix QgsFeatureRequest with expression not using provider fields
...
and limit (fix #15771 )
2016-11-02 09:52:03 +10:00
Matthias Kuhn
57a57545a0
Add test for QgsFeatureRequest.setLimit and feature variable
2016-11-02 09:39:59 +10:00
Nyall Dawson
fb849620e7
Avoid unexpected gpkg test success with older GDAL versions
2016-11-02 09:39:59 +10:00
Nyall Dawson
b679cbe091
Speed up inserting features into memory layers by ~65%
...
By avoiding an unnecessary map lookup
2016-11-02 08:46:49 +10:00
Juergen E. Fischer
d3c7a04193
fix typo
...
(cherry picked from commit 658cfe68c91ec24f04f8ebda307fbec7d55a412f)
2016-11-01 13:51:49 +01:00