16478 Commits

Author SHA1 Message Date
Sandro Mani
8410ea7339 Add QgsMapCanvas::setZoomResolutions 2020-01-17 12:18:40 +10:00
Marco Bernasocchi
c65815957d fix docstring "since" for QGIS_SERVER_WMS_MAX_XXXX to 3.6.2
This was backported in #9752
2020-01-17 10:55:03 +10:00
Sandro Mani
d573e3be95
Merge pull request #33764 from kadas-albireo/install_sip
Install source sip files
2020-01-17 00:23:15 +01:00
Martin Dobias
a5c9b39955
Merge pull request #33480 from wonder-sk/3d-layers-load-in-background
[3d] Load 3D vector layer data in background + tiling
2020-01-17 00:00:33 +01:00
Sandro Mani
f39d53bf71
Merge pull request #33820 from kadas-albireo/kml
Add QgsAbstractGeometry::asKml
2020-01-16 23:47:43 +01:00
Martin Dobias
ee92e10e46 Updates based on PeterP's review 2020-01-16 17:08:40 +01:00
Sandro Mani
6c32a6ae85 Add QgsAbstractGeometry::asKml 2020-01-16 14:36:31 +01:00
rldhont
ab9cbe0ab4
Merge pull request #33725 from rldhont/fix-read-sld-textsymbolizer-units
[BUGFIX] Read SLD TextSymbolizer set units to pixels
2020-01-16 14:09:09 +01:00
Alexander Bruy
fe7085de94
Merge pull request #33794 from alexbruy/rectangles-ovals-diamonds
[processing][needs-docs] port Rectangle,ovals,diamonds algorithm to C++
2020-01-16 15:07:05 +02:00
Sandro Mani
60b4cad050 Add const version of QgsRenderContext::painter 2020-01-16 15:22:58 +10:00
Sandro Mani
666b839517 Install source sip files 2020-01-15 19:43:03 +01:00
Alexander Bruy
57e211dc4e update tests 2020-01-15 15:17:39 +02:00
Alexander Bruy
1fe16b712a use native algorithm instead of RectanglesOvalsDiamondFixed 2020-01-15 13:41:52 +02:00
Alexander Bruy
c752919dd0 [processing][needs-docs] port Rectangle,ovals,diamonds algorithm to C++
and make width, height and rotation parameters dynamic.

Old Python implementations marked as deprecated to maintain API
compatibility.
2020-01-15 13:41:52 +02:00
rldhont
0ea6c7a0e9 [API] QgsSymbolLayerUtils::decodeSldUom, scaleFactor is not mandatory 2020-01-15 10:38:42 +01:00
Peter Petrik
ecd90c6ecb
[FEATURE] Allow customization of the items shown in browser (#33679)
* [FEATURE] Allow customization of the items show is browser. User can select in Interface Customization dialog to hide some of the items in the browser panel

Funded by Limerick City and County Council
2020-01-15 10:08:58 +01:00
Nyall Dawson
a9ed83f1a6 [FEATURE][processing] New algorithm "Rename table field"
Takes an input layer, existing field and a new name for the field, and
outputs a new layer with the selected field renamed.

While this result could also be achieved with the Refactor Fields
algorithm, Refactor Fields isn't particularly model friendly. It
relies on a constant, fixed table structure, and can't adapt to
input tables with different field structures.

In constrast, this simple Rename Field algorithm adapts nicely for
model use, because it operates on a single field only and leaves
all the other fields untouched.
2020-01-15 21:56:10 +13:00
Nyall Dawson
0cd955743c Create QgsLabeling class for labeling related enums and constants,
and avoid inclusion of pal header in a public QGIS header

pal is an internal implementation detail -- it should not be exposed
publicly
2020-01-15 17:10:37 +13:00
Nyall Dawson
527eca9684 Fix QgsMapCanvas::xyCoordinates reports incorrect coordinates if a pan
operation is in progress

This causes the status bar coordinates widget to show nonsense coordinates
during the pan operation. The cursor world position ISN'T changing during
a pan operation, it stuck to a fixed location!
2020-01-15 08:12:02 +13:00
Nyall Dawson
771fc3ff60 [FEATURE][processing] Add new mode to "Join Attributes by Location" algorithm
to take attributes from matching feature with largest area of overlap only

This allows for easy polygon->polygon joins, where you expect there to be
only a single matching feature and don't want to include features which
are just touching or have just tiny sliver polygon overlaps.

Sponsored by SMEC/SJ
2020-01-14 21:28:30 +13:00
Nyall Dawson
60d5e22a05 Make a custom delegate for the table editor 2020-01-14 19:08:20 +13:00
Nyall Dawson
2117aa7a5d Make table editing action text more descriptive
By describing the number of rows/columns affected, eg "Insert 2 Columns Before"
2020-01-14 19:08:20 +13:00
Nyall Dawson
62efbeb5cd Allow editing of row/column width/height in manual tables 2020-01-14 19:08:20 +13:00
Nyall Dawson
781712ffbf Add table row height/column width handling to table editor 2020-01-14 19:08:20 +13:00
Nyall Dawson
2b5598d891 UX fixes for working with numeric formats in table editor 2020-01-14 19:08:20 +13:00
Nyall Dawson
024b321406 Unit tests and fixes for table numeric format setting/retrieval 2020-01-14 19:08:20 +13:00
Nyall Dawson
31cdf131b3 Add equality operator for QgsNumericFormat 2020-01-14 19:08:20 +13:00
Nyall Dawson
e3507ff24c Unit tests for selection modes 2020-01-14 19:08:20 +13:00
Nyall Dawson
f82fea5418 Hide formatting widget from sip
It's an internal detail only
2020-01-14 19:08:20 +13:00
Nyall Dawson
5a4bd09f72 Expand docs, extra tests 2020-01-14 19:08:20 +13:00
Nyall Dawson
387787b539 Add interactive editor dialog for layout manual table items 2020-01-14 19:08:20 +13:00
Nyall Dawson
49d56f6c19 [FEATURE] Add new layout item type for manually created tables
Allows for creation of tables with contents manually entered by users
(i.e. spreadsheet style), so that users can create completely custom
tables.

Supports control custom cell contents, foreground and background colors.
2020-01-14 19:08:20 +13:00
Nyall Dawson
5704412d96 New class QgsTableCell
Encapsulates the contents and formatting options for a single cell
in a table (e.g. background and foreground color)
2020-01-14 19:08:20 +13:00
Etienne Trimaille
0a4f0e51a6 add field name when reporting an error in refactorfield algo 2020-01-14 11:32:48 +13:00
Nyall Dawson
4179b17144 Some memory modernization in QgsGpsDetector
But unfortunately the public API used here is extremely fragile and
either crash prone or leaky -- it needs revisiting for 4.0
2020-01-13 13:45:34 +13:00
Nyall Dawson
d8a40818f0 Dox++ 2020-01-13 13:45:34 +13:00
Nyall Dawson
a0c455b292 [gps] Add missing Transfer annotation 2020-01-13 13:45:34 +13:00
Andrea Giudiceandrea
0d4d8254c1 [SAGA] Fix saga_cmd command with multiple outputs
Fixes a regression bug accidentally introduced with 40134d6473fcdbd8b6f53c3ea3db01e2dd606419 (PR #8968) and backported with a887b7d34bfa44a8400bcaa986ede96e15a760c9 (PR #9231): when there are multiple output parameters processAlgorithm incorrectly generates multiple saga_cmd commands, instead of a single command containing the output parameters.

Fixes #33658
2020-01-13 13:19:33 +13:00
Martin Dobias
5b9b2e4afc Optionally show bounding boxes for vector layer entities (for debugging) 2020-01-12 16:51:19 +01:00
Martin Dobias
9009971c88 Improve handling of vertical ranges
So far we used a fixed vertical range for 3D bounding boxes with range [0, 500]
This of course would not work well if Z values are outside of this range
(e.g. tiles may not show at all or get pruned prematurely)

The approach now is to start with an estimate of the vertical range based
on few features from the source vector layer and then once our tile is completely
loaded, update the 3D bounding box to better represent the actual 3D extent.
2020-01-12 16:22:20 +01:00
rldhont
12c410c3f4
Merge pull request #33668 from rldhont/server-throw-exception-for-unrestricted-bad-layers
[Server] Throw exception if bad layers are not restricted
2020-01-11 20:15:42 +01:00
Martin Dobias
db509652c8 sip and doxygen fixes 2020-01-11 17:23:19 +01:00
Martin Dobias
64769f4dab sipify, doxygen, spelling 2020-01-11 16:44:45 +01:00
Martin Dobias
89829c5191 Introduce intermediate base class QgsAbstractVectorLayer3DRenderer
This will be useful as we start adding more properties that are common
among all vector layer 3D renderers (such as tiling configuration)
2020-01-10 13:50:05 +01:00
root676
aa2b38f9ca remove hash based python test entry 2020-01-10 13:32:42 +13:00
root676
4b8177fda9 add linedensity testdata 2020-01-10 13:32:42 +13:00
root676
ce342f7ac4 [feature][processing] Add Line denisty algorithm 2020-01-10 13:32:42 +13:00
Alexander Bruy
986930d28f [processing] use system temporary directory as default for Processing
temporary outputs (refs #33641)
2020-01-10 08:05:12 +13:00
rldhont
4bb775cc3c [Server] Throw exception if bad layers are not restricted
QGIS Server throw an exception if the project has bad layers, but the user can defined restricted layers which are unpublished layers.

So restricted layers can be bad layers server side, it is not necessary an error.

This code verified that the bad layers are not restricted. If the project contains unrestricted bad layers, the server throw an exception.
2020-01-09 11:10:10 +01:00
Matthias Kuhn
3a3b430825
Merge pull request #33259 from signedav/reload_provider
reloadData / forceReload on data providers
2020-01-09 10:57:14 +01:00