43 Commits

Author SHA1 Message Date
Nyall Dawson
1f2cc3d051 Revert deprecation of QgsSymbolV2Utils::encode/decodeOutputUnit
...as it causes circular dependancies. Defer to 3.0 when we can
move QgsSymbolV2::OutputUnit to QgsUnitTypes
2016-02-15 07:24:35 +11:00
Juergen E. Fischer
a90be95f7b sip sync 2016-02-14 03:50:49 +01:00
Nyall Dawson
ddabad247f Move unit handling helpers out of QGis and QgsSymbolLayerUtils
into a new QgsUnitTypes helper class. Add unit tests.

TODO QGIS 3.0: Move QGis::UnitType and QgsSymbolV2::OutputUnit
to QgsUnitTypes
2016-02-04 08:01:32 +11:00
Nyall Dawson
c3a57434d9 Fix clazy 'pass small and trivially-copyable type by value' warnings 2016-02-02 19:47:21 +11:00
Juergen E. Fischer
b5794b2f2d sip coverage fixes:
* make sip coverage test aware that there are less classes where QSci sip
  headers are not available
* exclude properties from members
* fix QgsFeatureIds typedef (fixes missing signal
  QgsVectorLayer.featuresDeleted and others)
* add missing notes for PyNames
* include some missing new methods in bindings
2015-11-08 19:30:39 +00:00
Nyall Dawson
dcbe0d370e Fix legends are empty if presets used with filtered legend (fix #13300) 2015-10-08 07:57:21 +11:00
Nyall Dawson
c6df096c38 Followup c49b5b7, more fixes 2015-10-07 18:32:24 +11:00
Nyall Dawson
c49b5b777f Change a lot of arguments to const references in core/gui
Rationale:
- there was a lot of large objects passed by value, so potentially
there's a speed bump from this
- even for implicitly shared classes like QString/QList there's still
a (small) cost for copying the objects when there's no reason to
- it's the right thing to do!
2015-10-07 12:02:04 +11:00
Nyall Dawson
0caf944747 Misc optimisations identified by clazy:
- call reserve on container classes where applicable
- make sure Q_FOREACH uses references
- remove dynamic casts to base classes
- fix some implicit bool conversions
2015-10-05 18:43:18 +11:00
Nyall Dawson
586d59a432 [FEATURE] Add option to map unit scaling for limiting size in mm
Previously only the option to limit the scale range of the scaling
was available. Now you can also choose to limit the corresponding
rendered size in mm.
2015-09-17 20:35:27 +10:00
Nyall Dawson
5a9d932d9c [FEATURE] Allow tolerance in mm/pixels for displacement renderer 2015-09-16 17:11:32 +10:00
Juergen E. Fischer
9752c468c1 indentation update 2015-07-29 11:52:14 +02:00
vmora
cf3a712711 Move prettyBreaks calculation to QgsSymbolLayerV2Utils 2015-04-27 18:22:48 +10:00
Nyall Dawson
742f3233ee [FEATURE] Paint effects for layers and symbol layers
This commit adds a new framework for implementing paint effects, which
modify the results of QPainter operations to apply visual effects
such as drop shadows and blurs.

The initial implementation allows for effects to be applied to entire
layers and individual symbol layers.

Included are a drop shadow, inner shadow, blur, inner glow, outer glow,
colorise and transform effect. A "stack" effect is also implemented
which allows other paint effects to be combined in various ways.

Sponsored by hundreds of generous kickstarter contributors!
2015-03-28 20:04:50 +11:00
Nyall Dawson
93a86835d6 Fix common memory leak after using QgsSymbolLayerV2Utils::loadSymbol 2015-02-03 21:22:46 +11:00
Juergen E. Fischer
a57066a48d * fix cppcheck warnings
* some sip updates
* [API] fix spelling QgsMultiRenderChecker::drawBackround
* [API] fix spelling QgsSymbolLayerV2Utils::drawStippledBackround
* [API] fix spelling QgsMapSettings::layerTransfrom
2014-11-20 15:02:35 +01:00
Juergen E. Fischer
d4f64d9bde indentation update and typo fixes 2014-11-13 23:13:13 +01:00
Juergen E. Fischer
82b6e0342a cosmetic cleanups, typo fixes, formatting 2014-10-21 01:33:20 +02:00
Martin Dobias
e37a5ad8df [FEATURE] Legend filtering based on map content (in main window, composer, WMS)
There is new "filter" button in layers panel that toggles this functionality
and in composer legend widget.

Related feature is that layer tree now shows symbols in map units with correct size
(even when filtering is not enabled) so as the map view changes the legend node icons
are updated too (if they use map units).

GetLegendGraphics in WMS server
-------------------------------

This is an extension of standard GetLegendGraphics request according to MapServer RFC 101.
See the document for more details: http://mapserver.org/development/rfc/ms-rfc-101.html

In summary, clients need to add BBOX and CRS/SRS parameters to get appropriate legend based on the given map view.
Parameters WIDTH and HEIGHT are also taken into account as they specify map view image size for correct calculation
of size of legend symbols (if they are based on map units).

--

This software has been commissioned by Tuscany Region (Italy),
co-funded by the European Commission and developed under the project LIFE12 ENV/IT/001054 LIFE + IMAGINE.
The software has been realized by Gis3W s.a.s.

Questo software è stato commissionato da Regione Toscana (Italia),
cofinanziato dalla Commissione Europea e sviluppato nell'ambito del progetto LIFE12 ENV/IT/001054 LIFE + IMAGINE.
Il software è stato realizzato da Gis3W s.a.s.
2014-09-25 12:56:37 +02:00
Nyall Dawson
39700e7d97 Option in color picker dialog to import a gpl palette to a new user scheme 2014-09-17 22:53:35 +10:00
Nyall Dawson
b44ef92b02 Default names for colors when adding to schemes 2014-09-13 08:41:11 +10:00
Nyall Dawson
e9d7b520db Support dragging colors from QgsColorPreviewWidget 2014-09-11 21:56:48 +10:00
Nyall Dawson
c4c58ab342 Accept dropped colors on color widgets 2014-09-11 21:11:04 +10:00
Juergen E. Fischer
07165eae79 indentation update 2014-08-17 13:37:34 +02:00
Nyall Dawson
b15b014b82 Allow importing and exporting to GIMP palette file (gpl) from color list 2014-08-17 21:05:21 +10:00
Nyall Dawson
b45735529b Improvements to color list:
- Cleanup code
- Support copying and pasting multiple colors to list
- Support additional color list mime formats
2014-08-17 21:05:21 +10:00
Nyall Dawson
6d10ff3684 Support dropping multiple colors into a color list widget 2014-08-17 21:05:21 +10:00
Nyall Dawson
3187410e1e Move decodeBlendMode to QgsSymbolLayerV2Utils 2014-07-04 23:47:07 +10:00
Nyall Dawson
f31e637ed1 [FEATURE] Add right click menu to color buttons, allowing copying and pasting colors. Pasting colors accepts clipboard text in a variety of common formats, including hex and css style rgb and rgba strings. 2014-05-20 21:35:21 +10:00
Juergen E. Fischer
0a82f37e92 sync symbology-ng sips with headers (scripts/sipdiff) 2014-05-07 19:02:11 +02:00
Sandro Mani
53ac67517a min-max map unit scale support 2014-05-07 15:54:56 +02:00
Nyall Dawson
13cbfd138c [FEATURE] Add 'shapeburst' fill style. Shapeburst fills implement a buffered gradient fill, where a gradient is drawn from the boundary of a polygon towards the polygon's centre. Configurable parameters include distance from the boundary to shade, use of color ramps or simple two color gradients, optional blurring of the fill and offsets. 2014-03-21 12:50:50 +11:00
Martin Dobias
e6c2ecd9f3 Fix #9290 (crashes in symbology on fields with special characters)
Fixes several crashes and problems with backwards compatibility.
Before expressions were allowed, field names were loaded and saved
unquoted, e.g. x.y  - with introduction of expressions it was
necessary to use properly quoted "x.y" name so that expression
is correctly parsed. With these changes both options are possible
and when possible, the unquoted field name is used for compatibility
2014-02-11 14:27:01 +07:00
Juergen E. Fischer
d4e369414b update sip bindings 2014-01-26 18:36:29 +01:00
ahuarte47
183dd8eed6 #9254: define overloaded wellKnownMarkerFromSld function in sip
in sip
2014-01-02 08:12:35 +01:00
ahuarte47
27521074db #9254: avoid break compatibility with the 2.0 api 2014-01-02 08:12:34 +01:00
ahuarte47
4f6c9cdee7 #9254: Support for OutlineStyle in SLD files 2014-01-02 08:12:34 +01:00
Juergen E. Fischer
3854086d47 sip update 2013-06-23 16:00:24 +02:00
Larry Shaffer
8749b29936 Add drop shadow option to labels
- Add option to show debug rectangles for shadows to PAL engine properties
- Add small container class, QgsLabelComponent, for temporal values during generation of label components
- Add static image blurring function to QgsSymbolLayerV2Utils
- Fix rotational offset issue with label backgrounds
2013-04-14 16:11:20 -06:00
Marco Hugentobler
1a79041af2 Use scale for symbology export (if symbol measures are defined in map units) 2012-12-21 16:28:34 +01:00
Giuseppe Sucameli
dffae7962f move svg utils functions to the symbollayerv2utils class 2012-12-02 20:28:15 +01:00
Juergen E. Fischer
74fd0e48ae more sip fixes:
- also move enum StyleEntity in QgsStyleV2
- fix some warnings
2012-09-24 18:43:20 +02:00
Juergen E. Fischer
f3cb57b1eb SIP bindings update:
- update methods of existing classes
- add comment to methods missing in the sip bindings
- split up collective sip files into single files and use
  same directory structure in python/ as in src/
- add a lot of missing classes (some might not make sense because of
  missing python methods in those classes)
- remove some non-existing methods from the header files
- add scripts/sipdiff
- replace some usages of std::vector and std::set with QVector/QSet
2012-09-24 02:42:57 +02:00