55 Commits

Author SHA1 Message Date
Denis Rouzaud
aec68661ca update python bindings 2019-12-04 22:20:26 +01:00
Hugo Mercier
845894b313
[FEATURE] Selective masking (#30747)
* [FEATURE] Selective masking

Advanced rendering feature that allows the definition of 'masks' areas around labels or with a new typ of symbol layer. These masks will "un-draw" symbol layers of other layers underneath.
It modifies the rendering process by adding an optional second pass.
2019-11-07 08:17:25 +01:00
Nyall Dawson
351970e1c2 Dox, spelling 2019-10-28 14:34:30 +10:00
Nyall Dawson
b5e92d41f5 [FEATURE] Random marker fill symbol layer type
This commit adds a new fill symbol layer type "Random marker fill". It
allows polygon features to be rendered using a marker symbol placed
at random locations within the polygon boundary.

Options include:
- number of marker symbols to render for the polygon
- whether markers rendered near the edges of polygons should be clipped
to the polygon boundary or not
- an optional random number seed, to give consistent placement
of markers whenever maps are refreshed (also allows random placement
to play nice with QGIS server and tile-based rendering)

Sponsored by the SLYR project
2019-10-28 14:34:30 +10:00
Juergen E. Fischer
b81d306047 spelling fixes (closes #32408) 2019-10-26 10:50:30 +10:00
Denis Rouzaud
2406837650
replace deprecated in by deprecated since (#32260) 2019-10-15 15:56:54 +02:00
Denis Rouzaud
758d7cff4a run sipify to update deprecation annotations 2019-10-15 13:17:38 +02:00
nirvn
07c871de5f Add dox note on symbol ownership in QgsSymbolSelectorWidget class 2019-08-26 18:31:15 +07:00
nirvn
d26b7abc57 QgsSymbolSelector{Widget,Dialog} class cleanup 2019-08-26 18:31:15 +07:00
nirvn
648af3ed89 [ui] Fix single feat. renderer symbol levels reset when changing style (fixes #26547) 2019-08-26 18:31:15 +07:00
Nyall Dawson
ba55fb3e0a Use real symbol buttons in categorized and graduated renderer widgets,
instead of fake ones

Gives these buttons the full power of the usual QgsSymbolButton,
including copy/paste symbols, color/opacity changes, etc. Plus,
some nice additional interface consistency!
2019-08-01 16:03:47 +10:00
Nyall Dawson
55efeaeb2f [FEATURE] Add copy/paste symbol action to right click menu in categorized/graduated/rule based renderers
Allows symbols to be easily copied and pasted between these nodes
2019-07-31 20:49:43 +10:00
Nyall Dawson
a57d04fb7f When a style manager dialog is opened in read only mode, still allow
symbols to be double clicked to view their properties. Just disable
actually saving any edited symbols instead.
2019-07-18 11:13:35 +10:00
luz.paz
604e66ba75 sipify_all 2019-07-16 11:29:42 +10:00
Harrissou Sant-anna
62e8a9b726 Add a bunch of automatic geometry restoration
and remove some dedicated methods
2019-07-01 08:51:51 +10:00
Nyall Dawson
4e5d95cf18
Update python/gui/auto_generated/symbology/qgsstylesavedialog.sip.in 2019-06-21 20:31:59 +10:00
Nyall Dawson
689b82da53 When saving a new symbol to the style, default to tagging it with
the current tag filter (if set)
2019-06-21 18:06:33 +10:00
Nyall Dawson
78bfb4a18b Allow saving label settings from layer settings 2019-06-21 15:52:56 +10:00
Nyall Dawson
4ea55fceaa Split symbol list off to its own reusable widget 2019-06-21 15:52:56 +10:00
Nyall Dawson
87d2d9e824 Fix inverted polygon renderer widget not opening colors and other
panels inline in style dock
2019-06-05 04:00:58 +10:00
Nyall Dawson
243acb328f Dynamically set number of columns to show in character widget
based on widget width, and avoid unnecessary horizontal scroll bar
2019-05-02 15:13:38 +10:00
nirvn
3747cf7870 [FEATURE][symbology] Unlock string as character for font markers 2019-04-30 18:32:03 +07:00
nirvn
dc7bfc5cd3 [FEATURE][ui] Add a line edit to type character for the font marker
The line edit also supports pasting of unicode code in decimal or
hexadecimal format (i.e. 123 or 0x2713).

In addition, the character widget now grabs the keyboard
focus and will change the selected character based on
key stroke.
2019-04-30 15:42:20 +07:00
Nyall Dawson
8d180c1e8a [needs-docs] Tweak custom dash button appearance
- remove "Change" label and replace with larger dash preview icon.
The "change" text is unnecessary and adds to dialog clutter, better
to use the space for a wider preview icon (especially given that
the previous narrow icon never really showed enough of the pattern
to be useful!)

- don't offset the line in the preview if the symbol has an offset
set

- respond correctly to dash pattern, line width unit changes, cap
style changes

- show a nice big preview tooltip on hover
2019-04-30 12:29:31 +10:00
Mathieu Pellerin
cd5642aca0 [FEATURE] Make the custom dash pattern dialog a style dock widget 2019-04-28 15:33:48 +07:00
Nyall Dawson
f8f319b6e0 Fix dox 2019-04-03 02:31:27 +10:00
Nyall Dawson
48d2a37057 [FEATURE] New line symbol type: Hash line
This line symbol type is designed to replicate the ArcGIS Hash Line
symbol layer type. It allows for a repeating line segment to be
drawn over the length of a feature, with a line-sub symbol used
to render each individual segment.

To reduce code duplication, this is heavily based off the current
line marker symbol layer, since the functionality is almost
identical (draw some sub symbol at some interval along a line).
Accordingly, I've split off QgsMarkerLineSymbolLayer to move
as much of the common functionality as possible to a new abstract
base class, so that only the actual marker/line segment rendering
occurs in the marker line/hash line subclasses.

This also gives the hash line all the existing placement options
permissible for marker lines -- e.g. first/last vertex, mid points,
regular intervals, etc.

The hash line length and angle can have data defined overrides,
which are evaluated per-line segment, allowing for the hash line
to change size and angle over the length of a single rendered
feature.
2019-04-03 02:31:27 +10:00
Nyall Dawson
1dc447e1f2 Dox++ 2019-03-21 12:44:16 +10:00
Nyall Dawson
107b48a430 Add NULLPTR macro for use in doxygen comments
For the c++ api dox this expands to "\c nullptr" (the
\c directive indicates a code literal value), and for sipify/Python
it expands to ``None`` (`` is sphinx annotation for literal values)

Makes for nicer dox for both c++ and Python!
2019-02-27 09:41:11 +10:00
Nyall Dawson
a7ca08784c Nullptr consistency in dox 2019-02-27 09:41:11 +10:00
Nyall Dawson
b6d66becab Sipify 2019-02-27 09:41:11 +10:00
Mathieu Pellerin
df1d47b86a
[gui] Fix style manager's add button when the 'all' tab is selected 2019-01-25 19:38:28 +07:00
Pierre-Eric Pelloux-Prayer
25f2aba44d Include qgis_sip.h instead of qgis.h where possible (#8961)
This PR continues the work started in PR #8951.

This commit replaces occurences of #include "qgis.h" by #include "qgis_sip.h",
where possible = when files only depends on SIP_XXX features.
2019-01-24 11:33:22 -05:00
Nyall Dawson
878cec9977 Allow additional tags to be set when copying items to default style 2019-01-16 12:04:34 +11:00
Nyall Dawson
42a7804323 Add method to hide favorites and smart groups from style manager dialog 2019-01-16 12:04:34 +11:00
Nyall Dawson
ec8b299b9b Add a read only mode to QgsStyleManagerDialog
Allows the dialog to browse an existing style, but prevents users
from making any edits to the style.
2019-01-16 12:04:34 +11:00
Nyall Dawson
f8af098fc2 Correctly handle selection of mixed item types 2019-01-14 18:10:54 +10:00
Nyall Dawson
d5cedfe9f5 Dox++, deprecate method 2019-01-14 18:10:54 +10:00
Nyall Dawson
b72e01f0c7 Use QgsStyleModel in Style Manager dialog
Fixes MANY symbol filtering issues in the dialog, and brings many
improvements (e.g. hidpi fixes, nicer tooltips, etc)
2019-01-14 18:10:54 +10:00
Nyall Dawson
f3b72608a1 Add message bar to QgsSymbolWidgetContext 2018-12-06 14:31:49 +10:00
nirvn
c6425338ee [FEATURE] Raster image marker 2018-12-05 15:44:44 +07:00
Nyall Dawson
187f74148c [FEATURE] Show QGIS style xml libraries in browser and support
drag and drop of style .xml files to main QGIS window

Double clicking the databases or dragging them to QGIS
triggers the import from style dialog with the corresponding
input file already selected
2018-11-01 15:57:31 +10:00
pierreloicq
6fb41785c9 delete .sip 2018-09-14 16:36:11 +10:00
pierreloicq
4aabb09f28 generation of sip files in auto_generated/ 2018-09-14 16:36:11 +10:00
Nyall Dawson
84d4853115 Use model for symbol list view in symbol panel
Fixes hi-dpi issues
2018-09-14 09:19:32 +10:00
Nyall Dawson
f979c8e80a Make some protected members private 2018-09-08 20:57:28 +10:00
Nyall Dawson
30059e63d6 Fix freaking American (WRONG!!1!111!!) spelling conventions 2018-09-06 06:51:17 +10:00
Nyall Dawson
ca1c655ec6 Minor API improvements to QgsStyleManagerDialog 2018-09-06 06:51:17 +10:00
Nyall Dawson
8f1fb1e648 Fix messageboxes are shown with wait mouse cursor in style manager import dialog 2018-08-31 19:49:09 +10:00
Nyall Dawson
9887508d1e Fix crash when editing graduated symbol in style dock
Fixes #18909
2018-07-20 16:54:53 +10:00