Skip to content

Commit 1e0c62b

Browse files
committed
Nicer initialization of diagram property map
1 parent 746034b commit 1e0c62b

2 files changed

Lines changed: 18 additions & 32 deletions

File tree

‎src/core/qgsdiagramrenderer.cpp‎

Lines changed: 16 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -25,12 +25,21 @@
2525
#include <QDomElement>
2626
#include <QPainter>
2727

28-
QMap< int, QString > QgsDiagramLayerSettings::sPropertyNameMap;
29-
30-
QgsDiagramLayerSettings::QgsDiagramLayerSettings()
31-
{
32-
init();
33-
}
28+
const QMap< int, QString > QgsDiagramLayerSettings::sPropertyNameMap
29+
{
30+
{ QgsDiagramLayerSettings::BackgroundColor, "backgroundColor" },
31+
{ QgsDiagramLayerSettings::OutlineColor, "outlineColor" },
32+
{ QgsDiagramLayerSettings::OutlineWidth, "outlineWidth" },
33+
{ QgsDiagramLayerSettings::PositionX, "positionX" },
34+
{ QgsDiagramLayerSettings::PositionY, "positionY" },
35+
{ QgsDiagramLayerSettings::Distance, "distance" },
36+
{ QgsDiagramLayerSettings::Priority, "priority" },
37+
{ QgsDiagramLayerSettings::ZIndex, "zIndex" },
38+
{ QgsDiagramLayerSettings::IsObstacle, "isObstacle" },
39+
{ QgsDiagramLayerSettings::Show, "show" },
40+
{ QgsDiagramLayerSettings::AlwaysShow, "alwaysShow" },
41+
{ QgsDiagramLayerSettings::StartAngle, "startAngle" }
42+
};
3443

3544
QgsDiagramLayerSettings::QgsDiagramLayerSettings( const QgsDiagramLayerSettings& rh )
3645
: mCt( rh.mCt )
@@ -43,9 +52,7 @@ QgsDiagramLayerSettings::QgsDiagramLayerSettings( const QgsDiagramLayerSettings&
4352
, mRenderer( rh.mRenderer ? rh.mRenderer->clone() : nullptr )
4453
, mShowAll( rh.mShowAll )
4554
, mProperties( rh.mProperties )
46-
{
47-
init();
48-
}
55+
{}
4956

5057
QgsDiagramLayerSettings&QgsDiagramLayerSettings::operator=( const QgsDiagramLayerSettings & rh )
5158
{
@@ -148,25 +155,6 @@ bool QgsDiagramLayerSettings::prepare( const QgsExpressionContext& context ) con
148155
return mProperties.prepare( context );
149156
}
150157

151-
void QgsDiagramLayerSettings::init()
152-
{
153-
if ( sPropertyNameMap.isEmpty() )
154-
{
155-
sPropertyNameMap.insert( BackgroundColor, "backgroundColor" );
156-
sPropertyNameMap.insert( OutlineColor, "outlineColor" );
157-
sPropertyNameMap.insert( OutlineWidth, "outlineWidth" );
158-
sPropertyNameMap.insert( PositionX, "positionX" );
159-
sPropertyNameMap.insert( PositionY, "positionY" );
160-
sPropertyNameMap.insert( Distance, "distance" );
161-
sPropertyNameMap.insert( Priority, "priority" );
162-
sPropertyNameMap.insert( ZIndex, "zIndex" );
163-
sPropertyNameMap.insert( IsObstacle, "isObstacle" );
164-
sPropertyNameMap.insert( Show, "show" );
165-
sPropertyNameMap.insert( AlwaysShow, "alwaysShow" );
166-
sPropertyNameMap.insert( StartAngle, "startAngle" );
167-
}
168-
}
169-
170158
QSet<QString> QgsDiagramLayerSettings::referencedFields( const QgsExpressionContext &context ) const
171159
{
172160
QSet< QString > referenced;

‎src/core/qgsdiagramrenderer.h‎

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -95,7 +95,7 @@ class CORE_EXPORT QgsDiagramLayerSettings
9595
StartAngle, //! Angle offset for pie diagram
9696
};
9797

98-
QgsDiagramLayerSettings();
98+
QgsDiagramLayerSettings() = default;
9999

100100
//! Copy constructor
101101
QgsDiagramLayerSettings( const QgsDiagramLayerSettings& rh );
@@ -308,9 +308,7 @@ class CORE_EXPORT QgsDiagramLayerSettings
308308
//! Property collection for data defined diagram settings
309309
QgsPropertyCollection mProperties;
310310

311-
static QMap< int, QString > sPropertyNameMap;
312-
313-
void init();
311+
static const QMap< int, QString > sPropertyNameMap;
314312
};
315313

316314
/** \ingroup core

0 commit comments

Comments
 (0)