28
28
QgsMapRendererCustomPainterJob::QgsMapRendererCustomPainterJob ( const QgsMapSettings& settings, QPainter* painter )
29
29
: QgsMapRendererJob( settings )
30
30
, mPainter( painter )
31
- , mLabelingEngineV2( nullptr )
32
31
, mActive( false )
33
32
, mRenderSynchronously( false )
34
33
{
@@ -40,9 +39,6 @@ QgsMapRendererCustomPainterJob::~QgsMapRendererCustomPainterJob()
40
39
QgsDebugMsg ( " QPAINTER destruct" );
41
40
Q_ASSERT ( !mFutureWatcher .isRunning () );
42
41
// cancel();
43
-
44
- delete mLabelingEngineV2 ;
45
- mLabelingEngineV2 = nullptr ;
46
42
}
47
43
48
44
void QgsMapRendererCustomPainterJob::start ()
@@ -73,19 +69,18 @@ void QgsMapRendererCustomPainterJob::start()
73
69
Q_ASSERT_X ( qgsDoubleNear ( thePaintDevice->logicalDpiX (), mSettings .outputDpi () ), " Job::startRender()" , errMsg.toLatin1 ().data () );
74
70
#endif
75
71
76
- delete mLabelingEngineV2 ;
77
- mLabelingEngineV2 = nullptr ;
72
+ mLabelingEngineV2 .reset ();
78
73
79
74
if ( mSettings .testFlag ( QgsMapSettings::DrawLabeling ) )
80
75
{
81
- mLabelingEngineV2 = new QgsLabelingEngine ();
76
+ mLabelingEngineV2 . reset ( new QgsLabelingEngine () );
82
77
mLabelingEngineV2 ->readSettingsFromProject ( QgsProject::instance () );
83
78
mLabelingEngineV2 ->setMapSettings ( mSettings );
84
79
}
85
80
86
81
bool canUseLabelCache = prepareLabelCache ();
87
- mLayerJobs = prepareJobs ( mPainter , mLabelingEngineV2 );
88
- mLabelJob = prepareLabelingJob ( mPainter , mLabelingEngineV2 , canUseLabelCache );
82
+ mLayerJobs = prepareJobs ( mPainter , mLabelingEngineV2 . get () );
83
+ mLabelJob = prepareLabelingJob ( mPainter , mLabelingEngineV2 . get () , canUseLabelCache );
89
84
90
85
QgsDebugMsg ( " Rendering prepared in (seconds): " + QString ( " %1" ).arg ( prepareTime.elapsed () / 1000.0 ) );
91
86
@@ -284,12 +279,12 @@ void QgsMapRendererCustomPainterJob::doRender()
284
279
mLabelJob .img ->fill ( 0 );
285
280
painter.begin ( mLabelJob .img );
286
281
mLabelJob .context .setPainter ( &painter );
287
- drawLabeling ( mSettings , mLabelJob .context , mLabelingEngineV2 , &painter );
282
+ drawLabeling ( mSettings , mLabelJob .context , mLabelingEngineV2 . get () , &painter );
288
283
painter.end ();
289
284
}
290
285
else
291
286
{
292
- drawLabeling ( mSettings , mLabelJob .context , mLabelingEngineV2 , mPainter );
287
+ drawLabeling ( mSettings , mLabelJob .context , mLabelingEngineV2 . get () , mPainter );
293
288
}
294
289
295
290
mLabelJob .complete = true ;
0 commit comments