19 Commits

Author SHA1 Message Date
Nyall Dawson
660433d9a9 [api] Add framework for collecting rendered item details during map
renderer operations

This follow a similar pattern as how labeling results could be collected
after a map render job, but generalises the API so that it can be
used for storing details of rendered items of any type.

It's currently used for storing details of rendered annotation items,
so that map tools can retrieve details of annotation items visible
in the canvas in an optimised way.
2021-08-31 11:04:29 +10:00
Denis Rouzaud
ba8a445850 run sipify 2021-03-22 21:13:52 +01:00
Nyall Dawson
7dfef3a0b1 Newer doxygen versions don't auto convert the first line in a class'
documentation to a brief note, so we have to do it explicitly...
2021-02-19 08:15:29 +10:00
Nyall Dawson
50b9beaad6 [sipify] Catch more class references and insert :py:class: annotations 2021-01-31 05:41:22 +10:00
Nyall Dawson
c64216963b Apply same logic as we use for rendering preview cached versions
of vector layers to point cloud layer renders
2021-01-29 09:17:58 +10:00
Nyall Dawson
a138921179 Ensure all layer render subclasses correctly return false if the
rendering is aborted early
2021-01-29 09:17:58 +10:00
Nyall Dawson
bb746c6266 Add API to pass approximate layer rendering time estimatation to
map layer renderers

These renderers can then use the layer rendering time for the previous
map render job to refine their logic regarding when its appropriate
to start compositing the layer render
2021-01-27 21:50:13 +10:00
Peter Petrik
9bff34e732 fix documentation 2021-01-14 10:14:34 +01:00
Peter Petrik
d883d416fe [feature] use smarter map redraws: avoid map flickering by usage of cached layer image before the new rendering is done 2021-01-14 10:14:34 +01:00
Nyall Dawson
4d9bc5bac3 Move responsibility for determining whether a map renderer job requires
flattening onto a temporary image to the QgsMapLayerRenderer subclasses

This avoids the generic QgsMapRendererJob class from having hardcoded
layer type dependent behavior, and instead moves that layer-type specific
logic to the subclasses designed for that particular layer
2020-12-05 05:51:38 +10:00
Nyall Dawson
74400c7ff8 Some fixes to numbered list handling in dox/PyQGIS API 2020-06-15 13:43:58 +10:00
Nyall Dawson
81a9db9f57 [sipify] Fix creation of cross references 2020-06-15 13:43:58 +10:00
Nyall Dawson
6e26963908 Cleanup QgsMapLayerRenderer api
Make associated QgsRenderContext a base class member, since all
renderer subclasses require this
2019-10-09 16:36:18 +10:00
Nyall Dawson
f45540d175 Fix export to geopdf skips raster and mesh layers
Fixes #32148
2019-10-09 16:36:18 +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
c864d22d1f Add "get ..." to doxygen compliance blacklist
Should be "gets ..." for consistent tense, or better yet
"returns ..." for consistency.
2018-05-27 14:05:06 +10:00
Nyall Dawson
1c615c15cc More documentation compliance
Use Qt style "returns .." tense instead of "return ..", and lock
this in with a documentation compliance unit test
2018-05-25 15:09:00 +10:00
Denis Rouzaud
7df2593caf move auto generated sip file in dedicated folder 2018-05-14 10:23:37 -04:00