7306 Commits

Author SHA1 Message Date
Matthias Kuhn
02ae886d69 Map renderer sends signal on layers finished but before labeling 2016-09-07 09:00:18 +02:00
Nyall Dawson
98f25f59e7 Rework QgsFilterLineEdit handling of clear button
Don't use a child button but instead paint the icon when
required. Improves interaction with the widget/clear
button.
2016-09-06 16:45:32 +10:00
Nyall Dawson
16715361fb Merge pull request #3457 from nyalldawson/pygments
Upgrade internal pygments to 2.1.3
2016-09-06 08:56:33 +10:00
Patrick Valsecchi
7169079f91 Smarter default edit widgets with plugins to pick them
Now the widgets factories can give a score on how good they could handle
a widget.

Additionaly, plugins can be added to choose a widget factory in function
of an external information. One of them uses a table in PostgresQL to
allow specification of the widget type and configuration.

I took the opportunity to remove a few deprecated method in relation to
this.
2016-09-05 14:22:17 +02:00
Hugo Mercier
7e6d641c68 Fix PyQgsLayerDependencies with pyqt5 2016-09-05 13:43:00 +02:00
Hugo Mercier
5c3a43e286 Fix spatialite access with python3 2016-09-05 13:43:00 +02:00
volaya
f38e03b37d Merge pull request #3454 from arnaud-morvan/processing_modeler_parameter_extent
[Processing] Fix on extent parameter in modeler parameters dialog
2016-09-05 09:04:34 +02:00
volaya
8de9757f54 Merge pull request #3456 from arnaud-morvan/processing_apply_use_coverge_on_execution
[Processing] Calculate min coverage on execution
2016-09-05 09:03:06 +02:00
Matthias Kuhn
2fbc3266ff Merge pull request #3452 from nirvn/pyqt5_57
fix to support PyQt5 5.7
2016-09-05 07:21:24 +02:00
Nyall Dawson
eba6101357 Fix broken python save/open dialogs under PyQt5
Will break stuff under PyQt4... oh well, better stuff working on Qt5
then Qt4
2016-09-05 11:41:49 +10:00
Nyall Dawson
fd0d804341 Fix error when executing python code under python 3 2016-09-05 10:17:37 +10:00
Nyall Dawson
0ead08b5b0 Fix incorrect QtGui import 2016-09-05 09:50:34 +10:00
Nyall Dawson
82da555c79 Upgrade internal pygments to 2.1.3 2016-09-05 09:25:59 +10:00
arnaud.morvan@camptocamp.com
c369710667 Calculate min coverage on execution 2016-09-04 17:58:17 +02:00
arnaud.morvan@camptocamp.com
b18cfc99e6 Fix on extent parameter in modeler parameters dialog 2016-09-04 16:33:43 +02:00
Webmaster
9d22440c56 fix to support PyQt5 5.7 2016-09-04 16:30:23 +07:00
Juergen E. Fischer
474b9d86b2 processing: use main vector menu translation (fixes #14535)
(cherry picked from commit 11289a0d973e6e4a3f7f81972dd08f2e6d82941e)
2016-09-03 20:19:43 +02:00
Nyall Dawson
8107856cc5 Merge pull request #3450 from nyalldawson/smoooooth
[FEATURE] Extra control when smoothing geometries
2016-09-03 09:38:37 +10:00
Nyall Dawson
795b52e906 Followup 80653c7, add missed algorithm 2016-09-03 08:50:23 +10:00
Nyall Dawson
4d60d0cdb5 [FEATURE] Add option to QgsGeometry::smooth to not smooth
segments shorter than a certain threshold or sharp corners
with an angle exceeding a threshold

Expose the angle threshold to processing smooth algorithm

Also:
- optimise QgsGeometry::smooth for new geometry classes
- Fix smooth does not work with geometries containing Z/M
2016-09-03 08:31:33 +10:00
epifanio
4aac75ff9b fix typo
fix typo in python/plugins/processing/algs/qgis/Polygonize.py
2016-09-02 10:33:45 -04:00
volaya
7ddaf9039d Merge pull request #3430 from alexbruy/output-vector
[processing] support for explicit output vector types
2016-09-02 08:40:37 +02:00
Alexander Bruy
65db336eaf [processing] move some constants to the dataobjects module 2016-09-02 09:28:45 +03:00
Alexander Bruy
80653c7aff [processing] adopt native algs to use output geomerty 2016-09-02 09:28:32 +03:00
Alexander Bruy
13cd4c944f [processing] split some native algs to take advantage of explicit output types 2016-09-02 09:28:32 +03:00
Alexander Bruy
12d6e15fda [processing] support for output geometry types in scripts and modeler 2016-09-02 09:28:32 +03:00
Alexander Bruy
7e26124c2b [processing] support for output geometry types (work in progress) 2016-09-02 09:28:32 +03:00
volaya
6054bb9518 Merge pull request #3415 from arnaud-morvan/processing_reset_menus
[processing] Add a reset menus button
2016-09-02 08:27:51 +02:00
Martin Dobias
80f022878f Small code cleanups 2016-09-02 09:41:35 +08:00
Even Rouault
8c3537bff2 [DBManager] Fix exception raised when adding a new Spatialite connection
This was accidentaly broken since 1f0fce7852e9f6a27af967d7ac7ee3989dce7b45

Fixes #15274
2016-09-01 20:51:26 +02:00
Matthias Kuhn
665df5fbd6 Merge pull request #3436 from aaime/scaledep
Export map level scale based dependencies in most vector symbology
2016-09-01 13:28:48 +02:00
Matthias Kuhn
4a52351127 Merge pull request #3443 from bstroebl/documentProcessing
[processing] Add help for Eliminate sliver polygons
2016-09-01 13:25:37 +02:00
Nyall Dawson
88047cc984 Merge pull request #3441 from nyalldawson/simplify
Simplify features + fixes
2016-09-01 21:02:09 +10:00
Martin Dobias
fdeac8198c Fix incorrect raster reprojection after drawing raster previews
Moved all temporary projector members to a private class,
so even recursive block() calls will not affect each other
(there is no new performance penalty as block() call always
recomputes the temporary control point matrix anyway)
2016-09-01 18:25:01 +08:00
Bernhard Ströbl
7e92d09c5f [processing] Add help for Eliminate sliver polygons 2016-09-01 10:55:08 +02:00
Hugo Mercier
a86611b626 Cleanup layer dependency api 2016-09-01 09:58:37 +02:00
Martin Dobias
6bb291f2d6 Raster projector constructor cleanup
Marked raster interface as uncopiable (it should have always been uncopiable)
2016-09-01 15:38:58 +08:00
Andrea Aime
a25b0257a5 Export map level scale based dependencies in most vector symbology 2016-09-01 07:40:56 +02:00
Nyall Dawson
56b77db88c [FEATURE][processing] Add choice of simplification method to simplify
This change allows users to choose which method to use when running
the simplify geometries algorithm, with choices of the existing
distance based (Douglas Peucker) algorithm, area based (Visvalingam)
algorithm and snap-to-grid.

Visvaligam in particular usually results in more cartographically
pleasing simplification over the standard distance based methods.
2016-09-01 08:22:18 +10:00
Nyall Dawson
fbd6618d4a Add missing sip binding 2016-09-01 08:04:39 +10:00
Nyall Dawson
5d97d03ad5 [processing] Fix simplify alg handling of null goemetry, add tests 2016-09-01 07:50:02 +10:00
Nyall Dawson
f9e508c566 [processing] More efficient point count for simplify algorithm 2016-09-01 07:42:29 +10:00
Hugo Mercier
bd3cf76f5f Merge pull request #3320 from mhugo/fix_snapping2
Data dependency between layers + snapping fix
2016-08-31 15:46:18 +02:00
Hugo Mercier
0749ba43ba Rework layer dependencies
A new class QgsMapLayerDependency allows to represent different kinds
of dependencies between layers.
2016-08-31 14:40:13 +02:00
Hugo Mercier
1a5a7c5905 [Feature] Data dependencies between layers
This allows to declare data dependencies between layers. A data
dependency occurs when a data modification in a layer, not by direct
user manipulation may modify data of other layers.
This is the case for instance when geometry of a layer is updated by a
database trigger after modification of another layer's geometry.
2016-08-31 09:22:09 +02:00
Juergen E. Fischer
a9464d7c94 db manager: don't consider added layer w/o a dataProvider
(cherry picked from commit 28aa9ebdb75eb099b83a3596b3f3c5c6e5c6f591)
2016-08-30 20:57:00 +02:00
Nyall Dawson
15dd29564c Fix Capitalize First Letter fails with curved labels (fix #14875)
Instead of using QFont's inbuilt capitalization support, which
applies only on rendering and accordingly fails for curved
labels which are drawn one character at a time, we now manually
capitalize label text while registering features.

The capitalize first method from Qt was reimplemented in QgsStringUtils
(together with what I expect is better handling of unicode characters
over the Qt method).

This change also makes it possible to implement other capitalization
methods not directly supported by Qt
2016-08-30 15:34:05 +10:00
Nyall Dawson
97d7b7339e Move storage of field alias and default value to QgsField
This is a partial implementation - QMaps are still used internally
within QgsVectorLayer to track the alias/default values
between attribute edit operations.

Sponsored by DB Fahrwegdienste GmbH
2016-08-30 12:40:55 +10:00
Nyall Dawson
99405864ca Add a changed signal to QgsEditorConfigWidget
And update default value expression preview whenever editor
config changes

Sponsored by DB Fahrwegdienste GmbH
2016-08-30 12:40:52 +10:00
Nyall Dawson
4d5bae22b8 [FEATURE] Client side default field values
Allows an expression to be set for a vector layer field which
is used to evaluate a default value for this field.

A new method,
QgsVectorLayer::defaultValue( int index,
                              const QgsFeature& feature = QgsFeature(),
                              QgsExpressionContext* context = nullptr )
has been added which evaluates the default value for a given field
using the optionally passed feature and expression context. This
allows default values to utilise properties of the feature
which exist at the time of calling, such as digitized geometries.
The expression context parameter allows variables to be used
in default value expressions, making it easier to eg insert
a user's name, current datetime, project path, etc

Default values are set using QgsVectorLayer::setDefaultValueExpression()
and retrieved using defaultValueExpression()
2016-08-30 12:39:55 +10:00