4141 Commits

Author SHA1 Message Date
Nyall Dawson
66b4b45177 Try to fix issues with sip casting collisions between layout and
compositions
2017-12-07 08:50:01 +10:00
Nyall Dawson
a9896eac05 Port a bunch of QgsLayoutManager methods to use QgsLayouts 2017-12-07 08:50:01 +10:00
Nyall Dawson
3a0b751698 Port duplicate layout functionality 2017-12-07 08:49:54 +10:00
Nyall Dawson
a64a675830 [FEATURE][layouts] Support drag and drop of QPT templates onto layout windows
To add contents of template onto layout
2017-12-07 08:49:54 +10:00
Nyall Dawson
a4dea9935f Restore ability to save layouts to templates and add items from template 2017-12-07 08:49:41 +10:00
Nyall Dawson
59b6bf62ab Add a method to clear an existing layout 2017-12-07 08:49:41 +10:00
Nyall Dawson
8feac30f07 Add method to clear page collections for layouts 2017-12-07 08:49:41 +10:00
Nyall Dawson
ef9e013a5a Fix crashes when rapidly deleting/undeleting objects
Also fix some leaks
2017-12-07 08:49:41 +10:00
Nyall Dawson
f60da58256 Add some unit tests 2017-12-07 08:49:33 +10:00
Nyall Dawson
b74a0efa34 Work on layout and layout item serialization and restoration 2017-12-07 08:49:33 +10:00
Denis Rouzaud
906259b2f7 [doxygen] remove useless @brief 2017-12-06 08:31:12 -04:00
Denis Rouzaud
f29306d4af [doxygen] replace @param by \param 2017-12-06 08:31:12 -04:00
Denis Rouzaud
b72c569cf3 [doxygen] replace @see by \see 2017-12-06 08:31:12 -04:00
Denis Rouzaud
ed5076201a [doxygen] \see must be placed after params 2017-12-06 07:19:50 -04:00
Denis Rouzaud
e48cf98edb run sipify 2017-12-06 07:19:50 -04:00
Nyall Dawson
b0a36e9bb1
Merge pull request #5789 from nyalldawson/render_jobs
[Rendering] Only render in preview jobs layers that are fast enough
2017-12-05 11:17:44 +11:00
Nyall Dawson
b26c14ef04
Merge pull request #5799 from nyalldawson/mingw
Mingw build fixes and windows build warning fixes
2017-12-05 10:51:21 +11:00
Nyall Dawson
38cca6ca7e Tweak API 2017-12-05 09:02:40 +10:00
Nyall Dawson
5ee9cdd222 Rename layerRenderingTime()->perLayerRenderingTime() 2017-12-05 09:02:40 +10:00
Nyall Dawson
01e8ed85e3 More flexible API for preview job determination 2017-12-05 09:02:40 +10:00
Nyall Dawson
16a1bd7948 Store previous layer rendering time in canvas, not map layer 2017-12-05 09:02:40 +10:00
Even Rouault
997619c9ed [Rendering] Only render in preview jobs layers that are fast enough
This implements the improvements discussed in the mailing list thread
https://lists.osgeo.org/pipermail/qgis-developer/2017-November/050524.html
to avoid rendering layers in preview jobs that take too much time to render.
2017-12-05 09:02:40 +10:00
Nyall Dawson
32ba5bf23f
Merge pull request #5791 from nyalldawson/geom_snapper_vertices
Fix geometry snapper sometimes creates unwanted overlapping segments when snapping line layers
2017-12-05 09:47:27 +11:00
Nyall Dawson
4689537842 Fix build warning 2017-12-05 08:30:52 +11:00
Nyall Dawson
21fe98d5f0 Sipify 2017-12-04 13:10:28 +10:00
Nyall Dawson
e12621ce2a Add API method to remove duplicate nodes from geometries
Removes duplicate nodes from the geometry, wherever removing the
nodes does not result in a degenerate geometry.

By default, z values are not considered when detecting duplicate
nodes. E.g. two nodes with the same x and y coordinate but
different z values will still be considered duplicate and one
will be removed. If useZValues is true, then the z values are
also tested and nodes with the same x and y but different z
will be maintained.

Note that duplicate nodes are not tested between different
parts of a multipart geometry. E.g. a multipoint geometry
with overlapping points will not be changed by this method.

The function will return true if nodes were removed, or false
if no duplicate nodes were found.

Includes unit tests and a processing algorithm which exposes
this functionality.
2017-12-03 14:58:21 +10:00
Nyall Dawson
0b452cabbb Spelling 2017-12-03 08:03:30 +10:00
Martin Dobias
f8788b9185 [3d] Fix style copy/paste for 3D renderer (fixes #17540) 2017-12-02 09:32:23 +01:00
Nyall Dawson
389435e1a0
Merge pull request #5729 from nyalldawson/proc_dyanmic
[processing] Expose dynamic ("data defined") numeric parameters to gui
2017-12-02 14:32:45 +11:00
Nyall Dawson
86958937ad Tweak processing API to better handle dynamic properties 2017-12-02 11:17:19 +10:00
Nyall Dawson
ecbc4718d4 [processing] Some more framework for dynamic (data defined) parameters 2017-12-02 11:16:26 +10:00
Nyall Dawson
9e4518fe42 [FEATURE] More output format choices in raster save as dialog
Previously only geotiff format was available, even though the
underlying QgsRasterFileWriter/GDAL libraries support other
formats.

This commit exposes those other formats to the dialog so that
users can directly save rasters to them (including everyone's
new BFF, geopackage).
2017-12-02 11:11:45 +10:00
Alessandro Pasotti
19b062c304
Merge pull request #5766 from Gustry/file_downloader
Display the downloaded size in QgsFileDownloaderDialog
2017-12-01 14:30:34 +01:00
Nyall Dawson
297e8561a0 Bump lowest possible min for numeric parameters to -DBL_MAX + 1
We need to reserve -DBL_MAX as a special value, to allow it to
work correctly in QDoubleSpinBoxes (limitation of QDoubleSpinBox)
2017-12-01 20:42:38 +11:00
Nyall Dawson
6b56565f89 Show nicer tooltips for numeric processing parameters
With min/max and default values (when set)
2017-12-01 20:42:38 +11:00
Alessandro Pasotti
62ff88af03
Merge pull request #5737 from elpaso/hidpi-cursors
[bugfix][hidpi] Scalable SVG theme cursors
2017-12-01 09:52:32 +01:00
Nyall Dawson
3c238a2ba4 Add missing overrides 2017-12-01 15:47:53 +10:00
Nyall Dawson
bcc1b91b74
Merge pull request #5717 from nyalldawson/layout_next4
[layouts] Port/adapt all remaining item types
2017-12-01 13:43:58 +11:00
Etienne Trimaille
88054a3744 display the downloaded size in QgsFileDownloaderDialog 2017-11-30 14:29:24 +01:00
Blottiere Paul
6d87c2b28f Update sip binding 2017-11-29 07:31:26 +00:00
Nyall Dawson
3341a3e91e Unify behavior of various geometry API leftOf tests
Now instead of mixing bools/numeric returns, we always use
ints, where:
-1 = left
0 = test failed, e.g. point on line
1 = right

Also fix a bunch of extra issues identified with left of tests
as a result of these changes
2017-11-29 10:04:20 +10:00
Radim Blazek
2f43deb9da closestSegmentWithContext() doc and test fix 2017-11-29 09:14:11 +10:00
Radim Blazek
07fd713647 fixed closestSegmentWithContext() paramas in Python 2017-11-29 09:14:07 +10:00
Nyall Dawson
e34d7fb636 Fix left of test for linestrings
The test was returning invalid results for certain geometries
2017-11-29 06:45:33 +11:00
Nyall Dawson
7a09f0890e
Merge pull request #5727 from nyalldawson/sublayer
Fix ogr sublayer handling of names containing ":"
2017-11-28 14:47:34 +11:00
Alessandro Pasotti
346ab6099c [hidpi] Auto-scale cursors based on DPIs
This should work well on different DPI screens.

Still needs some testing on the various platforms.
2017-11-27 15:37:50 +01:00
Alessandro Pasotti
7ae8e16427 [bugfix][hidpi] Scalable SVG theme cursors
Add support for SVG cursor:

      ZoomIn,
      ZoomOut,
      Identify,
      CrossHair,
      CapturePoint,
      Select,
      Sampler,

Icons are provisional: they need some love from
a decent graphics designer.

Fixes #12671
2017-11-27 11:51:48 +01:00
Nyall Dawson
4b9986eb8c [processing] Add a generic map layer output type
For occasions when an algorithm creates a map layer, but the type
is not known in advance (i.e. could be raster OR vector)
2017-11-27 06:38:21 +11:00
Nyall Dawson
144e9a2e45 Fix handling of ogr sublayers with ':' in their name
Unlikely to happen, but it does occur with some layers coming
from processing models. In any case we want QGIS to be super-tolerant
of corner cases like this!
2017-11-26 12:23:32 +10:00
Alessandro Pasotti
72553a60a9
Merge pull request #5710 from elpaso/api-code-cleaning-int-2-enums
QgsVectorLayer code cleaning use enums instead of int
2017-11-24 16:16:26 +01:00