64491 Commits

Author SHA1 Message Date
Nyall Dawson
a533268edf Ensure map frame and background also follow clip path 2020-07-28 15:12:04 +10:00
Nyall Dawson
c5b3443cb3 Don't draw items which are a clip source for a map 2020-07-28 15:12:04 +10:00
Nyall Dawson
2f3258cb81 Add unit test for overview frame following a clipped map 2020-07-28 15:12:04 +10:00
Nyall Dawson
264bd51594 [layouts] Add API to set item based clipping region on maps
Allows using shape or polygon layout items to set the overall shape
of a layout map item's contents
2020-07-28 15:12:04 +10:00
Nyall Dawson
915615aec4 [layouts][api] Add API to allow map items to be clipped (take their shape from)
other layout items which provide clipping paths

Opens the door for non-rectangular layout maps
2020-07-28 15:12:04 +10:00
Nyall Dawson
77badc0097 QgsLayoutItemShape can provide clip paths 2020-07-28 15:12:04 +10:00
Nyall Dawson
aa0b36b27d QgsLayoutItemPolygon can provide a clip path 2020-07-28 15:12:04 +10:00
Nyall Dawson
2b283951be Add api for layout items to create a clipping path 2020-07-28 15:12:04 +10:00
Nyall Dawson
19504adf55 Allow running "Add x/y fields" in place 2020-07-28 14:18:20 +10:00
Nyall Dawson
3249119ddd [processing] Allow "Align points to features" to be run in-place mode 2020-07-28 14:18:20 +10:00
Nyall Dawson
2104ae613a [processing] Add mechanism for algorithms to alter their core behavior
(e.g. parameters) when they are run in the "edit in-place" mode

This allows algorithms to dynamically adapt their behavior to make them compatible
with in-place mode. Previously, some useful algorithms could not be
run in-place because they alter a layer's structure (e.g. adding new
fields).

Now, these algorithms have a means to detect that they are being
run in-place and change their input parameters accordingly. E.g.
an algorithm which usually adds new fields to store calculated
values (such as "add xy fields to layer") could instead expose
field parameter choices to ask the user to pick from existing
fields in which to store the calculated values, thereby avoiding
the need to change the table structure and making them eligable
for running in-place mode.

Note that this needs to be handled algorithm-by-algorithm, it's
not automatic! It's just the raw api to allow this...
2020-07-28 14:18:20 +10:00
nirvn
8d7f090789 Use a more flexible coordinate detection approach 2020-07-28 08:14:00 +07:00
nirvn
182167fcfc Don't limit google coordinate decoding to .com URLs 2020-07-28 08:14:00 +07:00
nirvn
5ee8e54161 Better locator display name 2020-07-28 08:14:00 +07:00
nirvn
44fd606595 [FEATURE][locator] Add a goto locator 2020-07-28 08:14:00 +07:00
Nyall Dawson
0bb9174c2a
Merge pull request #37973 from nyalldawson/table_editor_fixes
Misc layout table editor fixes and related text formatting widget fixes
2020-07-27 14:49:37 +10:00
Nyall Dawson
6e2d1023f2 [processing] Fix loading batch settings with date/time values
Fixes #37838
2020-07-27 14:19:49 +10:00
Nyall Dawson
b93813080b More masks 2020-07-27 13:53:13 +10:00
Nyall Dawson
f1e3dbc573 Add some more variations on 3d rendering test images 2020-07-27 13:53:13 +10:00
Nyall Dawson
fdae5b1ba9 Add Travis reference images 2020-07-27 13:53:13 +10:00
Nyall Dawson
4205ebfb7b Fix rendering of 3d extruded lines 2020-07-27 13:53:13 +10:00
Nyall Dawson
066965c707 [layouts] Tab should always move to next cell, even when editing contents
Instead use Ctrl+tab as modifier to insert a tab character into cell contents.
(Emulate standard spreadsheet behavior)
2020-07-27 11:58:29 +10:00
Nyall Dawson
56dcb431c6 Hide some labeling widgets which have no effect for text formats
when editing text format properties

Avoids showing settings which don't change anything
2020-07-27 11:52:24 +10:00
Nyall Dawson
3777030da9 Correctly antialias label settings preview thumbnails 2020-07-27 11:45:24 +10:00
Nyall Dawson
b5eb6999c1 Fix logic regarding restoring active text format widget tab
Avoids incorrect tab being selected for visible widget
2020-07-27 11:43:43 +10:00
Nyall Dawson
466a01ca6d When setting a new text format for a QgsFontButton, automatically
update any open configuration panel to reflect the new format
(or dismiss it automatically if the new format is invalid)

Avoids UI going out of sync with text formats when a panel is already
open
2020-07-27 11:26:56 +10:00
Nyall Dawson
7cfa476a2d [layouts] Save table editor panel state to avoid having to constantly
resize formatting panel on reopen
2020-07-27 11:12:58 +10:00
Håvard Tveite
d096dfd9c4 Update src/ui/qgisapp.ui 2020-07-27 08:15:27 +10:00
Håvard Tveite
6ea6952ad5 Fix correct case for qgisapp.ui tooltips
While documenting, I found some inconsistencies in the first letter case for words in GUI tooltips.
I have tried to use the "correct" case for the words in the tooltips ("important" words have an uppercase first letter, and "insignificant" words are lowercase).
2020-07-27 08:15:27 +10:00
Nyall Dawson
51d8ad75c5 Don't modify text format paint effects in place
Avoids race conditions when multiple threads are rendering the same
text format which contains paint effects

Fixes #37938
2020-07-27 07:36:50 +10:00
Nyall Dawson
95bd7b296b [feature][processing] New algorithm "Align points to features"
This algorithm calculates the rotation required to align point features
with their nearest feature from another reference layer. A new field is
added to the output layer which is filled with the angle (in degrees,
clockwise) to the nearest reference feature.

Optionally, the output layer's symbology can be set to automatically
use the calculated rotation field to rotate marker symbols.

If desired, a maximum distance to use when aligning points can be set,
to avoid aligning isolated points to distant features.

Designed for use cases like aligning building point symbols to follow
the nearest road direction!
2020-07-26 09:56:46 +10:00
Nyall Dawson
9b19e069b3 Allow symbol and color ramp visitors the ability to edit symbols/color ramps they visit 2020-07-26 09:56:46 +10:00
Juergen E. Fischer
8b5dedf625 translation string fixes 2020-07-25 10:08:50 +02:00
Nyall Dawson
2bc84049d4 Fix ui build warning 2020-07-25 10:34:20 +10:00
Nyall Dawson
94e484f264 [FEATURE] Show related (child) features in identify results tree
Under each identified parent feature, new groups will show containing
any related child features, showing their attributes, actions, and
allowing the user to directly open the feature form for the child feature.

Fixes #18634
2020-07-25 06:39:10 +10:00
nirvn
aa05f7641a [processing] Fix python error when attempting to re-open generate XYZ tiles algorithm from the history dialog 2020-07-24 13:33:11 +07:00
Nyall Dawson
f2e4ac606e [3d] Abstract out material settings
Opens the possibilities for non-phong based materials for 3d symbols
2020-07-24 16:28:18 +10:00
Nyall Dawson
a345ae94a5
Merge pull request #37929 from nyalldawson/fix_37912_refactor_fields
Fix expression previews in Refactor Fields and Aggregate algorithms
2020-07-24 16:26:20 +10:00
Nyall Dawson
b6ae643304 Condense logic 2020-07-24 12:58:55 +10:00
Nyall Dawson
ea3eb7220c Dox 2020-07-24 12:58:55 +10:00
Nyall Dawson
452bb6a979 Use a more reliable method of reenabling antialiasing 2020-07-24 12:58:55 +10:00
Nyall Dawson
4bfa75af50 Fix restoration of painter antialiasing after rendering lines 2020-07-24 12:58:55 +10:00
Nyall Dawson
1f6e1b14e1 Flake 2020-07-24 12:58:55 +10:00
Nyall Dawson
e2a370fe3e Avoid repeating points when appending lines 2020-07-24 12:58:55 +10:00
Nyall Dawson
91931fedb2 Tests for dash pattern alignment 2020-07-24 12:58:55 +10:00
Nyall Dawson
75635dbf0b [FEATURE][symbology] Add options to dynamically tweak dash pattern
in simple line symbol layers

New options are:

- Align dash pattern to line length: If checked, the dash pattern lengths
will be subtely adjusted in order to ensure that when a line is rendered
it will end with a complete dash element, instead of a gap element or
partial dash element

- Tweak dash pattern at sharp corners: If checked, this option dynamically
adjusts the dash pattern placement so that sharp corners are represented
by a full dash element coming into and out of the sharp corner. It's designed
to better represent the underlying geometry while rendering dashed lines,
especially for jagged lines
2020-07-24 12:58:55 +10:00
Nyall Dawson
0641f3f8b8 Add utility function to detect sharp corners 2020-07-24 12:58:55 +10:00
Nyall Dawson
ca5901b336 Add utility function to slice a QPolygonF linestring 2020-07-24 12:58:55 +10:00
Nyall Dawson
6dbc1788b4 Better error message when no feature available for expression evaluation 2020-07-24 10:43:22 +10:00
Nyall Dawson
cc0cfbe02b [processing] Also fix expression preview results in Aggregate algorithm 2020-07-24 10:26:17 +10:00