1381 Commits

Author SHA1 Message Date
Denis Rouzaud
b3d52df67b
Merge pull request #31500 from 3nids/refactor_classification
Refactor graduated symbol renderer
2019-09-02 14:57:18 +02:00
Denis Rouzaud
9a089132a3 remove Q_DECL_DEPRECATED as Doxygen throws a warning 2019-09-02 12:59:58 +02:00
Denis Rouzaud
b2dd626959 use flags to defined classification method properties 2019-09-02 12:57:34 +02:00
Denis Rouzaud
734e99e1e0 add classification methods to API docs 2019-09-02 10:16:21 +02:00
Denis Rouzaud
68a9ea5d70 move src/core/symbology/classification to src/core/classification 2019-09-02 09:46:40 +02:00
Denis Rouzaud
d58be2814d missing SIP_FACTORY, addMethod returns bool, and minor fixes 2019-09-02 09:40:34 +02:00
Nyall Dawson
65a3f81486 Add some missing Python repr overloads 2019-09-02 16:40:46 +10:00
Alex
8fb43bd20e [API] Cache feature ids for each symbol in the QgsVectorLayer (#31061) 2019-09-01 06:31:40 +10:00
Denis Rouzaud
c20e3a1475 make variables private, correclty initalize label format 2019-08-31 10:53:03 +02:00
Denis Rouzaud
d10f8ce2a0 a bit more API doc 2019-08-31 10:31:50 +02:00
Etienne Trimaille
e7c058ed82 make the crash ID clickable on github 2019-08-31 07:30:44 +10:00
Denis Rouzaud
ac1ce4f4ed better naming of methods and API documentation 2019-08-30 15:35:53 +02:00
Denis Rouzaud
b580242aef fix deprecated methods and remove leftovers 2019-08-30 13:12:43 +02:00
Denis Rouzaud
41495058d1 run sipify 2019-08-30 12:45:37 +02:00
signedav
0c906bf9d9
Merge pull request #31349 from signedav/stored-expressions
Stored filter expressions
2019-08-29 20:28:50 +02:00
Nyall Dawson
0e3a4478d9 Add missing transfer annotation (#31482) 2019-08-29 20:12:23 +02:00
Denis Rouzaud
2a9f215f98
fix missing SIP_OUT (#31470) 2019-08-29 10:38:03 +02:00
David Signer
75fa58e83e docs and style and set parent of mStoredExpressionManager to the layer 2019-08-29 09:08:53 +02:00
David Signer
e89ebf1b69 proper use of category tags - use of all tag as default in filtering 2019-08-29 08:26:28 +02:00
David Signer
8c9f643e0b - removed the modes from QgsStoredExpressionManager and do the categorization over category tags
- use QStrings instead of QUuids in QgsStoredExpression
- docs, style and beautifications
2019-08-29 08:26:28 +02:00
David Signer
a75fbc2f65 no constructor in QgsStoredExpression because it leaded to issues with compiling sip
dialoges for stored filter expressions contains labels and expression line edit
2019-08-29 08:24:15 +02:00
David Signer
ae17985581 make proper constructor 2019-08-29 08:24:15 +02:00
David Signer
1c44192929 functionality to save and update stored expressions 2019-08-29 08:24:15 +02:00
David Signer
ffa41cb814 descriptive name for mStoredFilterExpressions to make a difference to future QgsStoredExpression objects 2019-08-29 08:24:15 +02:00
David Signer
32ebab2c9c on textchange update the actions 2019-08-29 08:24:15 +02:00
David Signer
e44b34cfc1 use of struct instead of QPair and use Uuid instead of name as identification 2019-08-29 08:24:15 +02:00
David Signer
d11f4e6b76 remove expression functionality identified by name 2019-08-29 08:24:15 +02:00
David Signer
e44d54842a stored expressions comments 2019-08-29 08:24:15 +02:00
David Signer
aec08c7dcc read write storedexpressions 2019-08-29 08:24:15 +02:00
David Signer
5c38b4bdc8 stored expression base class with read write methods 2019-08-29 08:24:15 +02:00
Nyall Dawson
ddbb1b175f [FEATURE] Allow array values as a valid result for data defined offset
or size properties

Previously only string values of the format 'x,y' would be permitted. But
I've seen MANY bug reports and questions about this, so also allow
arrays of doubles as a valid result. E.g. "array(3,5)". In any case, it's
just nicer.

Fixes #31444
2019-08-29 13:18:58 +10:00
Denis Rouzaud
44acec6b8a
move QgsRenderRange and QgsRendererRangeLabelFormat to their own file (#31464) 2019-08-28 14:22:07 +02:00
Nyall Dawson
e0411e608d Refactor out scalebar code for calculating pretty interval sizes
into reusable function
2019-08-28 14:12:28 +10:00
Nyall Dawson
b90529b4c2 UI and API setup for dynamically calculated grid intervals 2019-08-28 14:12:28 +10:00
Nyall Dawson
e6a93e25c6 Add missing data defined properties 2019-08-28 14:12:28 +10:00
Nyall Dawson
0900831c8a Use map expression context as basis for map grid expression context
Allows use of map related variables like @map_scale, @map_extent_width,
etc in layout map grid data defined expressions
2019-08-28 14:12:28 +10:00
Nyall Dawson
658cb0c740 [FEATURE][layouts] Data defined control over grid properties
Adds data defined control over layout map grid:
- enabled state
- interval X/Y
- offset X/Y
- frame size and margin
- annotation distance from frame
- cross size
- frame line thickness

Fixes #30246, fixes #27737
2019-08-28 14:12:28 +10:00
Harrissou Sant-anna
63f5fa9c86 Fix code sample rendering in pyqgis doc 2019-08-28 12:07:27 +10:00
nirvn
f801d1716d [FEATURE] Add possibility to export metadata when saving map canvas as PDF 2019-08-27 20:35:33 +07:00
Ismail Sunni
b9978d53d1 [FEATURE][3D] Billboard Rendering for Points (#31308)
* Add button to change billboard symbol.

* Add shaders for billboards.

* Add billboard material class.

* Add sample billboard image.

* Add dummy handler for billboard.

* Add billboard geometry class.

* First working version of 3D point as billboard.

* Make selected feature bigger.

* Use default symbol preview as billboard.

* Update billboard when changes the viewport size.

* Use QgsTerrainTextureImage for adding image to texture.

* Show better quality of billboard default symbol.

* Promote QgsSymbolButton not working.

* Add QgsSymbolButton properly.

* Add seTexture2DFromSymbol.

* Use default symbol

* [On Progress] Get symbol from the QgsSymbolButton.

* [On progress] failed to change the symbol

* Fix billboard fragment shader for macOS

* Better transparency handling.

* Use size from the symbol.

* Add set layer for 3d billboard symbol.

* Set billboard size from the symbol pixel size * 20

* Use size from the image.

* [Debug] set white symbol to success kid, it work when previous billboard is success kid.

* Use store and restore symbol from Nyall.

* Remove unrelated code.

* Apply random extent to fix the bug, from Martin.

* Remove add mesh entities for billboard.

* Hide material and transformation widget for billboard.

* Remove add scene entities for billboard.

* Add selected as parameter in drawPreviewIcon.

* Add QgsMarkerSymbol to store the symbol in billboard

* Put billboard symbol in point3dsymbol serialization.

* Add billboard height in the UI.

* Set height for billboard.

* Store billboard height separately. Perhaps better to use existing transform.

* Set height of billboard to TY.

* Flipped image for billboard symbol.

* Add helper function to set billboard function.

* Generate billboard transform from general transform.

* Use static dpi for context size.

* Remove debug message.

* Use Qgs3DRenderContext for selection color and dpi from QgsApplication.

* Remove unnecessary file and code.

* Remove commented iut code.

* Add documentation of new classes.

* Fix banned keywords.

* Add missing parameter's documentation.

* Address PR review.

* Use context from readXML.

* Remove one line function.

* Fix billboard size.

* Make some functions private, remove unused function.

* Use unique_ptr for the ownership.

* Use unique_ptr for default symbol to avoid memory leak.

* Add parent to texture2D.

* Fix documentation.

* Add copy constructor.

* Fix documentation.

* Remove documentation warning.

* Fix sip error.

* Add unit test for billboard rendering.

* Set ambient to not transparent for measurement line.

* Add dpi in the Qgs3DMapSetting

* Update billboard rendering unit test.

* Remove layer from 3d point widget since it's not supported yet.

* Addressing PR review from Martin.

* Attach dom directly for the billboard symbol.

* Remove unused constructor for point3dsymbol.

* Use stroke width ratio for solving big stroke width.

* Update unit test for rendering with some stroke color.

* Fix typo.
2019-08-27 10:04:56 +02:00
Julien Cabieces
5b71e21613 [FEATURE] [needs-docs] Add circular data dependencies (#30947)
* [FEATURE] [needs-docs] Add circular data dependencies
2019-08-26 08:36:07 +02:00
Denis Rouzaud
2dc1f9f3c4
Merge pull request #31355 from 3nids/featurelist_compoundkeys
allow QgsFeatureListComboBox to handle multiple keys
2019-08-26 08:25:46 +02:00
gacarrillor
7cf2e97aad Fix docstring of QgsVectorDataProvider.empty() method. 2019-08-25 11:39:01 +10:00
Jürgen Fischer
596ffd06fd
Fix layout picture item test (alternate fix to #31382) (#31383)
* Fix layout picture item test (alternate fix to #31382)
* doxygen: add pointer to QgsProperty::value() to QgsAbstractPropertyCollection::value()
2019-08-24 23:49:22 +02:00
Denis Rouzaud
cab11fe919 add method to set extra identifier values to Null and embryon of test 2019-08-23 16:17:37 +02:00
Denis Rouzaud
a5574eb96b allow QgsFeatureListComboBox to handle multiple keys 2019-08-23 08:17:14 +02:00
Nyall Dawson
24fb1196c5 [needs-docs] Revise QgsPathResolver::setPathPreprocessor API
Allow path preprocessors to be chained and don't force replace
any existing ones.

Processors can be removed via a call to QgsPathResolver::removePathPreprocessor,
using the unique ID returned by the original call to setPathPreprocessor
2019-08-23 06:35:12 +10:00
Alessandro Pasotti
631ac63e57 Call QgsRasterBlock destructor from SIP (add factory)
Fixes #31343 memory leak
2019-08-23 06:32:32 +10:00
Nyall Dawson
77191597ff Spelling 2019-08-22 17:36:43 +10:00
Nyall Dawson
3583e7ad0c More explicit documentation of geometry classes, with warnings
that calculations are Cartesian only and point users to QgsDistanceArea
for ellipsoidal calculations

Fixes #31275
2019-08-22 17:36:43 +10:00