@@ -115,16 +115,28 @@ return a new renderer - used by default in vector layers
115
115
116
116
virtual void startRender( QgsRenderContext &context, const QgsFields &fields ) = 0;
117
117
%Docstring
118
- Needs to be called when a new render cycle is started
118
+ Must be called when a new render cycle is started. A call to startRender() must always
119
+ be followed by a corresponding call to stopRender() after all features have been rendered.
119
120
120
121
\param context Additional information passed to the renderer about the job which will be rendered
121
122
\param fields The fields available for rendering
122
- :return: Information passed back from the renderer that can e.g. be used to reduce the amount of requested features
123
+
124
+ .. seealso:: stopRender()
125
+
126
+ \warning This method is not thread safe. Before calling startRender() in a non-main thread,
127
+ the renderer should instead be cloned and startRender()/stopRender() called on the clone.
123
128
%End
124
129
125
130
virtual void stopRender( QgsRenderContext &context ) = 0;
126
131
%Docstring
127
- Needs to be called when a render cycle has finished to clean up.
132
+ Must be called when a render cycle has finished, to allow the renderer to clean up.
133
+
134
+ Calls to stopRender() must always be preceeded by a call to startRender().
135
+
136
+ \warning This method is not thread safe. Before calling startRender() in a non-main thread,
137
+ the renderer should instead be cloned and startRender()/stopRender() called on the clone.
138
+
139
+ .. seealso:: startRender()
128
140
%End
129
141
130
142
virtual QString filter( const QgsFields &fields = QgsFields() );
@@ -177,6 +189,9 @@ return a new renderer - used by default in vector layers
177
189
178
190
If layer is not -1, the renderer should draw only a particula layer from symbols
179
191
(in order to support symbol level rendering).
192
+
193
+ .. seealso:: startRender()
194
+ .. seealso:: stopRender()
180
195
:rtype: bool
181
196
%End
182
197
0 commit comments