Even Rouault
2d2ce00341
Merge pull request #3665 from rouault/save_style_gpkg
...
[FEATURE] [OGR provider] Load/save style in database for GPKG and Spatialite
2016-10-26 11:04:25 +02:00
Nyall Dawson
49432a8468
Optimise QgsAbstractGeometry
...
Make nCoordinates virtual, and provide shortcuts for some
geometry types. The base method which calls coordinateSequence()
is quite slow in certain circumstances.
Speeds up rendering point layers by ~25%, also likely to
speed up lots of geometry heavy operations throughout QGIS
Refs #15752
2016-10-26 17:22:09 +10:00
Even Rouault
e237963274
SIP QgsVectorLayer: fix signatures for output parameter
...
saveStyleToDatabase() and getStyleFromDatabase() should define errMsg as
output parameter
And loadNamedStyle() also for theResultFlag.
2016-10-25 10:28:53 +02:00
Nyall Dawson
08143475ed
[FEATURE] QgsTextRenderer class for rich text rendering
...
Moves all the drawing code out of labeling into a new class
which just handles rendering text. This allows other parts
of the code to utilise all the advanced formatting options
that labeling supports, eg rendering text with shadows,
buffers and backgrounds.
2016-10-24 12:02:00 +10:00
Nyall Dawson
5495f20589
Minor refactor of label drawing
...
Remove use of scale factors from PAL layer settings and use
render context factors directly
2016-10-24 12:02:00 +10:00
Nyall Dawson
aac2622816
Remove option to show label shadow rectangles from GUI
...
...and instead just make it #ifdef out
2016-10-24 12:02:00 +10:00
Nyall Dawson
4d5e7536d9
Flip QgsPalLayerSettings to use QgsTextRenderer classes
2016-10-24 12:02:00 +10:00
Nyall Dawson
5f241d6288
Implicitly shared text settings classes
2016-10-24 12:02:00 +10:00
Nyall Dawson
687c66f5d6
Add Points as valid render unit (for font sizes)
2016-10-24 12:02:00 +10:00
Nyall Dawson
44289084e9
Optimise passing of variables by ref/value
2016-10-24 10:36:23 +10:00
Nyall Dawson
3272964f58
Fix classes which violate the rule-of-three
...
(identified using clazy analyser)
2016-10-24 10:36:22 +10:00
Matthias Kuhn
96a649e37f
Add missing bindings
2016-10-23 21:14:42 +02:00
Matthias Kuhn
54b953f433
Cleanup and modernize QgsProject code
2016-10-23 20:54:41 +02:00
Matthias Kuhn
1445647065
QgsVectorDataProvider API cleanup
2016-10-22 23:03:57 +02:00
Nyall Dawson
a51bebdacc
Fix missing doc warning
2016-10-22 13:19:32 +10:00
Matthias Kuhn
85c105d6b0
Move management of avoidIntersectionLayers to QgsProject
2016-10-20 12:56:35 +02:00
Matthias Kuhn
5c919fbcca
Move topological editing setting management fully to QgsProject
2016-10-20 12:56:35 +02:00
Denis Rouzaud
64d3c788f1
Use toolbar or status bar for snapping config
2016-10-20 12:56:35 +02:00
Matthias Kuhn
f3482d2ce2
Rename visibility presets to map themes part 2 ( #3641 )
2016-10-20 12:55:48 +02:00
Nyall Dawson
bc30cdf41d
Followup c9251c, fix crash
2016-10-20 17:32:39 +10:00
Nyall Dawson
c9251c5793
Avoid creating multiple render contexts when calculating legend
...
node size
Partial fix for qgis slowdown when using layer with large
number of legend nodes
2016-10-20 07:50:41 +10:00
Matthias Kuhn
e0fc641402
Show commit errors in transaction mode
2016-10-18 15:47:42 +02:00
Nyall Dawson
e8be0ed988
[composer] Allow syncing pictures to true north
...
Previously pictures could only be synced to grid north, which
can be totally wrong for many CRSes (especially in polar areas)
Users now are given a choice of grid or true north, and can also
enter an optional offset to apply if eg magnetic north is instead
desired.
When synced to true north the bearing is calculated using the
centre point of the linked map item.
Fix #192 , #4711
This fix was sponsored by the Norwegian Polar Institute's
Quantarctica project (http://quantarctica.npolar.no ) and
coordinated by Faunalia.
2016-10-18 13:45:52 +10:00
Nyall Dawson
fb860fb618
New class QgsBearingUtils with method to calculate true north
2016-10-18 13:45:52 +10:00
Nyall Dawson
a6148deb30
[FEATURE] Data defined symbol layer visibility
...
Adds a data defined override to control a symbol layer's
visibility. Allows users to disable drawing certain symbol layers
for matching features.
2016-10-18 13:22:22 +10:00
Nyall Dawson
b8c2e68fc5
[FEATURE] Allow symbol layers to be temporarily disabled
...
Adds a new checkbox at the bottom of each symbol layer's
properties which allows you to control whether the layer is
enabled or not.
Disabled layers are not drawn, but are saved and can be
enabled at a later stage.
This makes it easier to tweak symbol appearance without
having to totally delete a symbol layer.
2016-10-18 13:22:22 +10:00
Nyall Dawson
ecee43814a
Fix changing project CRS from legend doesn't correctly set CRS
...
Also avoid fragile duplicated code for setting/retrieving
common project properties
Fixes #15717
2016-10-18 09:55:56 +10:00
Even Rouault
da0ee8b007
Merge pull request #3597 from rouault/saveas_overwrite_append
...
[FEATURE] Vector layer save as: offer file/layer overwriting, new layer creation, feature and field appending
2016-10-17 11:22:28 +02:00
Matthias Kuhn
03f08a6c79
Fix QgsMapLayer ConvertToSubClassCode ( #3611 )
...
Fix #15683
2016-10-17 10:47:08 +02:00
Matthias Kuhn
8fa3127c66
Don't rely on RTTI to convert symbol layer to sip objects
2016-10-17 10:23:08 +02:00
nirvn
ec2d7fea0c
[FEATURE] control over drawing of composer table grid horizontal & vertical lines
2016-10-14 13:20:59 +07:00
Even Rouault
34894c6f5a
[FEATURE] Vector layer save as: offer file/layer overwriting, new layer creation, feature and field appending
...
When saving a vector layer into an existing file, depending on the capabilities
of the output driver, the user can now decide whether:
- to overwrite the whole file
- to overwrite only the target layer (layer name is now configurable)
- to append features to the existing target layer
- to append features, add new fields if there are any.
All above is available for drivers like GPKG, SpatiaLite, FileGDB, ...
For drivers like Shapefile, MapInfo .tab, feature append is also available.
2016-10-13 11:38:41 +02:00
rldhont
726bac5291
Last Redo [BUGFIX][QGIS Server] Joins was not reloaded if the layer is in cache
...
Add an accessor to QgsVectorLayer join buffer, to not duplicate QgsVectorLayerJoinBuffer::readXml code
2016-10-12 17:03:38 +02:00
Nyall Dawson
0c4bf943c1
Allow expression functions to appear in multiple groups ( fix #15682 )
...
Now functions which make sense for multiple contexts (eg length,
to_date) can appear in more than one group.
2016-10-10 19:53:15 +10:00
Nyall Dawson
3a76708bcb
Fix renaming a virtual field leads to crash ( fix #15669 )
2016-10-09 09:03:52 +10:00
Nyall Dawson
a9e9a6e497
Merge pull request #3579 from nyalldawson/composer_dock
...
Port composer item configuration widgets to inline dock
2016-10-07 07:39:43 +10:00
Juergen E. Fischer
d9349e5bbb
update configuration settings to qgis3
2016-10-06 11:40:42 +02:00
Nyall Dawson
521cc3becd
[composer] Merge color change undo commands
...
Avoids color modifications spamming the undo stack
2016-10-06 19:04:22 +10:00
Even Rouault
702eace76c
Merge pull request #3532 from pvalsecc/discover_relations
...
Add auto-discovery of relations for PostgresQL and SpatiaLite
2016-10-06 10:26:06 +02:00
Matthias Kuhn
722fdefe43
referencedColumns returns QSet<QString> instead of QStringList
...
The order of the elements is irrelevant and duplicate elements are unwanted. It
is therefore a perfect candidate for a set instead of a list. This prevents
filtering for duplicates manually be replacing some filer codes with (more
performant) builtin methods of QSet.
2016-10-05 14:33:38 +02:00
Nyall Dawson
bc32b1fe5a
Fix crash when validating geometry ( fix #15660 )
...
Also fix python bindings for QgsGeometryValidator
2016-10-05 13:17:55 +10:00
Matthias Kuhn
7332dda0d8
Remove visitor pattern from QgsExpression ( #3569 )
...
It is not in use anywhere and can easily be reintroduced if there is a use case
where it is an appropriate fit.
Fix https://github.com/qgis/qgis3.0_api/issues/64
2016-10-04 10:46:56 +02:00
Nyall Dawson
230417c7a8
Add method to create QgsMapToPixel from scale/dpi/mapunits
2016-10-03 11:19:04 +10:00
Juergen E. Fischer
ffaffadbfa
fix typos
2016-10-01 17:58:12 +02:00
Matthias Kuhn
ff52a9f29b
setAttributeAlias is now setFieldAlias
2016-10-01 15:39:03 +02:00
Matthias Kuhn
37e06ae587
Rename setAttributeAlias and removeAttributeAlias
2016-10-01 15:39:03 +02:00
Matthias Kuhn
4a7a8ff263
Update python code
2016-10-01 15:39:03 +02:00
Matthias Kuhn
b6779f63ff
Rename QgsFields::fieldNameIndex() to lookupField()
...
To have two clearly different names for tolerant/intolerant index lookup
2016-10-01 15:39:03 +02:00
Nyall Dawson
ca7b504e5c
Fix Travis warnings and missing docs/sip
2016-09-30 08:42:16 +10:00
Nyall Dawson
962a4e975f
Expose renderer variables to users
2016-09-30 08:42:16 +10:00