14441 Commits

Author SHA1 Message Date
Alexander Bruy
f332233f6d remove obsolete tests 2019-01-01 19:28:09 +02:00
Alexander Bruy
6809d346ab [processing] add unittest for gdal_polygonize algorithm 2019-01-01 19:26:14 +02:00
Alexander Bruy
f447745b5f [processing] add unittest for gdal2xyz algorithm 2019-01-01 18:15:41 +02:00
Alexander Bruy
a5365e26eb [processing] fix handling of the mask layer in the gdal_sieve algorithm
(fix #20713)
2019-01-01 15:20:21 +02:00
Alexander Bruy
c64383702e make advanced params optional to keep algorithm API stable 2018-12-31 12:34:12 +02:00
Alexander Bruy
3d33b9f1e2 [processing] expose resampling and format options in the gdaladdo
algorithm (fix #20432)

These options actually were here but not added to the UI.
2018-12-31 12:20:31 +02:00
Alexander Bruy
84d155eaf0
Merge pull request #8759 from alexbruy/processing-interpolation
[processing][needs-docs] Add cell size parameter to native interpolation algorithms (fix #18556, #20114)
2018-12-30 15:55:05 +02:00
Alexander Bruy
acd4ceca5c keep also old test for native interpolation algs 2018-12-30 09:48:45 +02:00
Alexander Bruy
1e1ed79e2d [processing] set default value for band parameters in GDAL algs (fix #20610) 2018-12-30 09:18:23 +02:00
Alexander Bruy
e86ca50cc6 restore columns and rows parameters for the extremely rare case if
someone have used native interpolation algs in scripts/models
2018-12-30 08:15:26 +02:00
Alexander Bruy
09dbb8917d update tests 2018-12-30 06:44:09 +02:00
Alexander Bruy
5813b96159 add cell size option to IDW and TIN interpolation algorithms 2018-12-30 06:44:09 +02:00
Alexander Bruy
357cf270ff add value changed signal for custom interpolation parameter wrapper
move duplicated code into common file
2018-12-30 06:44:09 +02:00
Alexander Bruy
37f14f8b3f add value changed signal for extent parameter widget wrapper 2018-12-30 06:44:09 +02:00
Nyall Dawson
2ec051374f Add custom QStyle override to allow more flexibility with theming
Allows us to apply custom style overrides. Initially, this just
improves the appearance of disabled icons on dark themes.

The default Qt style method of displaying disabled icons only
works well on light backgrounds, on dark backgrounds it makes the
icons stand out due to the extreme contrast between the background
and the lightened icons.

Replace with a custom approach which desaturates icons and reduces
their opacity. This arguably also improves their appearance on
light themes too (I think so).
2018-12-30 05:22:44 +10:00
Harrissou Sant-anna
ea9b09f2dc Use QGIS user manual for GDAL algorithms help files
because they are available for most of the algs and wouldn't be used otherwise. Also when someone hits algA help button, he should be given the algA help and not the main gdal utility doc.
2018-12-27 06:53:19 +10:00
Matthias Kuhn
309920a272
Merge pull request #8733 from m-kuhn/geometry_check_api_docs
Add geometry check to API documentation
2018-12-24 16:58:25 +01:00
Nyall Dawson
f301f944bd Revert QgsBlockingNetworkRequest
Too many issues... I'm unsure if this is even possible now...
2018-12-23 20:19:03 +10:00
Matthias Kuhn
b87798cd8f
Make travis even happier 2018-12-22 16:40:27 +01:00
Matthias Kuhn
cb766d7f72
Make travis happy 2018-12-22 15:29:26 +01:00
Matthias Kuhn
929df96e20
Remaining docs 2018-12-22 12:17:13 +01:00
Matthias Kuhn
d3f64deb80
Further doc improvements 2018-12-22 11:54:43 +01:00
Matthias Kuhn
525a3da3ab
More doxygen 2018-12-22 10:57:53 +01:00
Matthias Kuhn
07ab092fb1
Some doc fixes 2018-12-22 10:35:30 +01:00
Matthias Kuhn
65f6e7ba5d
Doxymenation for gap checks 2018-12-22 10:03:22 +01:00
Alessandro Pasotti
157747efd0
Merge pull request #8730 from elpaso/bugfix-20812-fixgeometries-in-place
Processing in-place do not check validity when fixing geometries
2018-12-22 08:45:23 +01:00
nirvn
9200f538e9 Don't hard-code black and gray for layer tree items' text color 2018-12-21 21:13:19 +07:00
Alessandro Pasotti
40fb2ce93d Drop the ugly hack in favor of sourceFlags 2018-12-21 13:20:41 +01:00
Alessandro Pasotti
f4d7506e73 Processing in-place do not check validity when fixing geometries
Fixes #20812
2018-12-21 11:47:36 +01:00
Nyall Dawson
9df3eb3e5c Dox++ 2018-12-21 09:15:32 +10:00
Nyall Dawson
d1a1d7570e QgsBlockingNetworkRequest: Allow canceling via QgsFeedback 2018-12-21 09:05:45 +10:00
Nyall Dawson
a457482de8 Add attributes to QgsNetworkReplyContent 2018-12-21 09:05:45 +10:00
Nyall Dawson
1774e68f39 [FEATURE][API] New class for blocking (non-async) network requests
This new class, QgsBlockingNetworkRequest, is designed for
performing SAFE blocking requests. It is thread safe and
has full support for QGIS proxy and authentication settings.

This class should be used whenever a blocking network
request is required. Unlike implementations
which rely on QApplication::processEvents() or creation of a
QEventLoop, this class is completely
thread safe and can be used on either the main thread or
background threads without issue.

Redirects are automatically handled by the class.

After completion of a request, the reply content should be
retrieved by calling getReplyContent().
This method returns a QgsNetworkReplyContent container,
which is safe and cheap to copy and pass
between threads without issue.

The guts of this class have been copied from QgsWfsRequest (which
has been using the same approach since 3.2)
2018-12-21 09:05:45 +10:00
Nyall Dawson
e4959a6b9a New class QgsNetworkReplyContent
Encapsulates a network reply within a container which
is inexpensive to copy and safe to pass around between threads.
The default Qt QNetworkReply class is a QObject, which prevents
it from being copied and passed between threads. This class
grabs all the useful information from a QNetworkReply,
allowing the reply's content to be stored indefinetly without
concern for the lifetime of the QNetworkReply object itself.
2018-12-21 09:05:45 +10:00
Nyall Dawson
a2b5008b30 [FEATURE][layouts] Allow layout items to "block" map labels
This feature allows other layout items (such as scalebars,
north arrows, inset maps, etc) to be marked as a blockers for
the map labels in a map item. This prevents any map labels from
being placed under those items - causing the labeling engine
to either try alternative placement for these labels (or
discarding them altogether)

This allows for more cartographically pleasing maps -- placing
labels under other items can make them hard to read, yet without
this new setting it's non-trivial to get QGIS to avoid placing
the labels in these obscured areas.

The blocking items are set through a map item's properties, under
the label settings panel. The setting is per-map item, so you can have
a scalebar block the labels for one map in your layout and not others
(if you so desire!)
2018-12-21 04:12:32 +10:00
Peter Petrik
9ce7e54fb1
allow selection of file paths for mesh layers [processings] (#8702)
allow selection of file paths for mesh layers
2018-12-20 15:04:02 +01:00
Nyall Dawson
dab069e1ea Improve multiline cursor behavior in Python console and expression editor
Now supports multi-line inserts and pastes
2018-12-20 17:23:52 +10:00
Denis Rouzaud
166e952c33 run sipify 2018-12-19 08:04:27 -04:00
Denis Rouzaud
6bb0720bb7
Merge pull request #8708 from 3nids/sipify_sip_out
[sipify] handles SIP_OUT arguments
2018-12-18 22:08:42 -04:00
Denis Rouzaud
c20b5b2f75 fix multine removal for SIP_PYARGREOMVEq 2018-12-18 21:54:38 -04:00
Denis Rouzaud
32e844f9f8 fix multiline comments on out params 2018-12-18 17:29:04 -04:00
Denis Rouzaud
edfb7e1465 run sipify 2018-12-18 17:17:25 -04:00
Nyall Dawson
514c5e2ac5 [api] Raises ValueError and TypeError exceptions when QgsGeometry.asPolygon()
is called on non-single-polygon geometries

Previously we would just return an empty list when geometries of invalid
type were used, but this is dangerous and we are safer to explicitly
raise errors preventing use of asPolygon() with incompatible geometry types.
2018-12-19 05:22:11 +10:00
Nyall Dawson
06d5f924f6 More square brackets 2018-12-19 05:21:49 +10:00
Matthias Kuhn
13de14a114
Merge pull request #8663 from qgis/m-kuhn-patch-1
Hint where to find select features method
2018-12-18 14:21:00 +01:00
Nyall Dawson
7d648e5b51 Improve Python __repr__ handling for null geometries
Also avoid massive long __repr__ strings for complex geometries,
as these can flood the Python console (and first aid plugin),
and aren't useful for debugging anyway.

Refs #14640
2018-12-18 18:11:22 +10:00
Nyall Dawson
089a2f1c17 [FEATURE][layouts] Add new setting to control whether map items
should show partial labels

Layout map items no longer respect the default project setting
for "show partial labels", and instead have their own, per map
setting for this option. (Under the map item properties,
labeling settings button).

The map item setting always defaults to off (unlike the canvas
setting, which defaults to true for a new project) as layouts
should always default to the settings which produce the highest
quality cartographic outputs.

In general I suspect that most users would always want to avoid
rendering partial labels in layouts, but this setting was
previously so deeply hidden that most are unaware of how to
change it. (And previous discussion about changing the canvas
setting to hide partial labels deemed this default undesirable
for the canvas, where showing even a small part of a label
on the map border can help identify what sits just on/off
the edges of the map)
2018-12-18 15:32:29 +10:00
Nyall Dawson
cdd23e663e [needs-docs][layouts] Move pushbutton actions for map items up to
a toolbar in the map item properties panel

This moves the
- refresh preview
- set to map canvas extent
- view extent in map canvas

buttons from being oversized push buttons within the item properties
panel up to a new toolbar at the top of this panel. Apart from looking
better, it means these important actions are always visible regardless
of the scroll position of the item properties panel itself.
Additionally, it makes it possible to add MORE actions here without
overloading the UI (e.g. "set canvas extent to item extent")

TODO: better icons
2018-12-18 10:31:24 +10:00
Nyall Dawson
5acd7ffaef [processing] Add API to set default unit to distance parameters
Otherwise the API forces use of a corresponding CRS parameter in
order to determine the relevant distance unit, but this is not
always desirable
2018-12-18 04:39:06 +10:00
Nyall Dawson
9e1bf68902 [processing] Fix pixel centroids along lines handling of null geometries 2018-12-18 04:38:42 +10:00