Skip to content

Commit f55eca8

Browse files
committed
Use templates to avoid ugly static_cast
1 parent 9b4f06a commit f55eca8

File tree

94 files changed

+1650
-1573
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

94 files changed

+1650
-1573
lines changed

python/PyQt6/core/auto_generated/qgspropertycollection.sip.in

+14-15
Original file line numberDiff line numberDiff line change
@@ -341,6 +341,7 @@ You can use :py:class:`QgsXmlUtils`.readVariant to save it to an XML document.
341341
.. seealso:: :py:func:`toVariant`
342342
%End
343343

344+
344345
};
345346

346347

@@ -397,11 +398,11 @@ Copy constructor.
397398
Returns the number of properties contained within the collection.
398399
%End
399400

400-
virtual QSet<int> propertyKeys() const;
401+
QSet<int> propertyKeys() const final;
402+
void clear() final;
403+
bool hasProperty( int key ) const final;
401404

402-
virtual void clear();
403405

404-
virtual bool hasProperty( int key ) const;
405406

406407

407408
virtual QgsProperty &property( int key );
@@ -416,23 +417,19 @@ Returns a reference to a matching property from the collection, if one exists.
416417
.. seealso:: :py:func:`hasProperty`
417418
%End
418419

419-
virtual QVariant value( int key, const QgsExpressionContext &context, const QVariant &defaultValue = QVariant() ) const;
420-
421-
virtual bool prepare( const QgsExpressionContext &context = QgsExpressionContext() ) const;
422-
423-
virtual QSet< QString > referencedFields( const QgsExpressionContext &context = QgsExpressionContext(), bool ignoreContext = false ) const;
424-
425-
virtual bool isActive( int key ) const;
426-
427-
virtual bool hasActiveProperties() const;
420+
QVariant value( int key, const QgsExpressionContext &context, const QVariant &defaultValue = QVariant() ) const final;
428421

429-
virtual bool hasDynamicProperties() const;
430422

423+
bool prepare( const QgsExpressionContext &context = QgsExpressionContext() ) const final;
424+
QSet< QString > referencedFields( const QgsExpressionContext &context = QgsExpressionContext(), bool ignoreContext = false ) const final;
425+
bool isActive( int key ) const final;
431426

432-
virtual QVariant toVariant( const QgsPropertiesDefinition &definitions ) const;
433427

434-
virtual bool loadVariant( const QVariant &configuration, const QgsPropertiesDefinition &definitions );
428+
bool hasActiveProperties() const final;
429+
bool hasDynamicProperties() const final;
435430

431+
QVariant toVariant( const QgsPropertiesDefinition &definitions ) const final;
432+
bool loadVariant( const QVariant &configuration, const QgsPropertiesDefinition &definitions ) final;
436433

437434
void setProperty( int key, const QgsProperty &property );
438435
%Docstring
@@ -445,6 +442,7 @@ Adds a property to the collection and takes ownership of it.
445442
will remove the property from the collection.
446443
%End
447444

445+
448446
void setProperty( int key, const QVariant &value );
449447
%Docstring
450448
Convenience method, creates a :py:class:`QgsStaticProperty` and stores it within the collection.
@@ -455,6 +453,7 @@ Convenience method, creates a :py:class:`QgsStaticProperty` and stores it within
455453
:param value: static value for property
456454
%End
457455

456+
458457
};
459458

460459

python/core/auto_generated/qgspropertycollection.sip.in

+14-15
Original file line numberDiff line numberDiff line change
@@ -341,6 +341,7 @@ You can use :py:class:`QgsXmlUtils`.readVariant to save it to an XML document.
341341
.. seealso:: :py:func:`toVariant`
342342
%End
343343

344+
344345
};
345346

346347

@@ -397,11 +398,11 @@ Copy constructor.
397398
Returns the number of properties contained within the collection.
398399
%End
399400

400-
virtual QSet<int> propertyKeys() const;
401+
QSet<int> propertyKeys() const final;
402+
void clear() final;
403+
bool hasProperty( int key ) const final;
401404

402-
virtual void clear();
403405

404-
virtual bool hasProperty( int key ) const;
405406

406407

407408
virtual QgsProperty &property( int key );
@@ -416,23 +417,19 @@ Returns a reference to a matching property from the collection, if one exists.
416417
.. seealso:: :py:func:`hasProperty`
417418
%End
418419

419-
virtual QVariant value( int key, const QgsExpressionContext &context, const QVariant &defaultValue = QVariant() ) const;
420-
421-
virtual bool prepare( const QgsExpressionContext &context = QgsExpressionContext() ) const;
422-
423-
virtual QSet< QString > referencedFields( const QgsExpressionContext &context = QgsExpressionContext(), bool ignoreContext = false ) const;
424-
425-
virtual bool isActive( int key ) const;
426-
427-
virtual bool hasActiveProperties() const;
420+
QVariant value( int key, const QgsExpressionContext &context, const QVariant &defaultValue = QVariant() ) const final;
428421

429-
virtual bool hasDynamicProperties() const;
430422

423+
bool prepare( const QgsExpressionContext &context = QgsExpressionContext() ) const final;
424+
QSet< QString > referencedFields( const QgsExpressionContext &context = QgsExpressionContext(), bool ignoreContext = false ) const final;
425+
bool isActive( int key ) const final;
431426

432-
virtual QVariant toVariant( const QgsPropertiesDefinition &definitions ) const;
433427

434-
virtual bool loadVariant( const QVariant &configuration, const QgsPropertiesDefinition &definitions );
428+
bool hasActiveProperties() const final;
429+
bool hasDynamicProperties() const final;
435430

431+
QVariant toVariant( const QgsPropertiesDefinition &definitions ) const final;
432+
bool loadVariant( const QVariant &configuration, const QgsPropertiesDefinition &definitions ) final;
436433

437434
void setProperty( int key, const QgsProperty &property );
438435
%Docstring
@@ -445,6 +442,7 @@ Adds a property to the collection and takes ownership of it.
445442
will remove the property from the collection.
446443
%End
447444

445+
448446
void setProperty( int key, const QVariant &value );
449447
%Docstring
450448
Convenience method, creates a :py:class:`QgsStaticProperty` and stores it within the collection.
@@ -455,6 +453,7 @@ Convenience method, creates a :py:class:`QgsStaticProperty` and stores it within
455453
:param value: static value for property
456454
%End
457455

456+
458457
};
459458

460459

src/3d/materials/qgsgoochmaterialsettings.cpp

+4-4
Original file line numberDiff line numberDiff line change
@@ -148,10 +148,10 @@ void QgsGoochMaterialSettings::addParametersToEffect( Qt3DRender::QEffect * ) co
148148
QByteArray QgsGoochMaterialSettings::dataDefinedVertexColorsAsByte( const QgsExpressionContext &expressionContext ) const
149149
{
150150

151-
const QColor diffuse = dataDefinedProperties().valueAsColor( static_cast< int >( QgsAbstractMaterialSettings::Property::Diffuse ), expressionContext, mDiffuse );
152-
const QColor warm = dataDefinedProperties().valueAsColor( static_cast< int >( QgsAbstractMaterialSettings::Property::Warm ), expressionContext, mWarm );
153-
const QColor cool = dataDefinedProperties().valueAsColor( static_cast< int >( QgsAbstractMaterialSettings::Property::Cool ), expressionContext, mCool );
154-
const QColor specular = dataDefinedProperties().valueAsColor( static_cast< int >( QgsAbstractMaterialSettings::Property::Specular ), expressionContext, mSpecular );
151+
const QColor diffuse = dataDefinedProperties().valueAsColor( QgsAbstractMaterialSettings::Property::Diffuse, expressionContext, mDiffuse );
152+
const QColor warm = dataDefinedProperties().valueAsColor( QgsAbstractMaterialSettings::Property::Warm, expressionContext, mWarm );
153+
const QColor cool = dataDefinedProperties().valueAsColor( QgsAbstractMaterialSettings::Property::Cool, expressionContext, mCool );
154+
const QColor specular = dataDefinedProperties().valueAsColor( QgsAbstractMaterialSettings::Property::Specular, expressionContext, mSpecular );
155155

156156

157157
QByteArray array;

src/3d/materials/qgsphongmaterialsettings.cpp

+3-3
Original file line numberDiff line numberDiff line change
@@ -164,9 +164,9 @@ void QgsPhongMaterialSettings::addParametersToEffect( Qt3DRender::QEffect *effec
164164

165165
QByteArray QgsPhongMaterialSettings::dataDefinedVertexColorsAsByte( const QgsExpressionContext &expressionContext ) const
166166
{
167-
const QColor ambient = dataDefinedProperties().valueAsColor( static_cast< int >( QgsAbstractMaterialSettings::Property::Ambient ), expressionContext, mAmbient );
168-
const QColor diffuse = dataDefinedProperties().valueAsColor( static_cast< int >( QgsAbstractMaterialSettings::Property::Diffuse ), expressionContext, mDiffuse );
169-
const QColor specular = dataDefinedProperties().valueAsColor( static_cast< int >( QgsAbstractMaterialSettings::Property::Specular ), expressionContext, mSpecular );
167+
const QColor ambient = dataDefinedProperties().valueAsColor( QgsAbstractMaterialSettings::Property::Ambient, expressionContext, mAmbient );
168+
const QColor diffuse = dataDefinedProperties().valueAsColor( QgsAbstractMaterialSettings::Property::Diffuse, expressionContext, mDiffuse );
169+
const QColor specular = dataDefinedProperties().valueAsColor( QgsAbstractMaterialSettings::Property::Specular, expressionContext, mSpecular );
170170

171171
QByteArray array;
172172
if ( mDiffuseCoefficient < 1 || mAmbientCoefficient < 1 || mSpecularCoefficient < 1 )

src/3d/materials/qgssimplelinematerialsettings.cpp

+2-2
Original file line numberDiff line numberDiff line change
@@ -105,7 +105,7 @@ Qt3DRender::QMaterial *QgsSimpleLineMaterialSettings::toMaterial( QgsMaterialSet
105105
if ( !context.isSelected() )
106106
{
107107
mat->setLineColor( mAmbient );
108-
mat->setUseVertexColors( dataDefinedProperties().isActive( static_cast< int >( QgsAbstractMaterialSettings::Property::Ambient ) ) );
108+
mat->setUseVertexColors( dataDefinedProperties().isActive( QgsAbstractMaterialSettings::Property::Ambient ) );
109109
}
110110
else
111111
{
@@ -135,7 +135,7 @@ void QgsSimpleLineMaterialSettings::addParametersToEffect( Qt3DRender::QEffect *
135135

136136
QByteArray QgsSimpleLineMaterialSettings::dataDefinedVertexColorsAsByte( const QgsExpressionContext &expressionContext ) const
137137
{
138-
const QColor ambient = dataDefinedProperties().valueAsColor( static_cast< int >( QgsAbstractMaterialSettings::Property::Ambient ), expressionContext, mAmbient );
138+
const QColor ambient = dataDefinedProperties().valueAsColor( QgsAbstractMaterialSettings::Property::Ambient, expressionContext, mAmbient );
139139

140140
QByteArray array;
141141
array.resize( sizeof( unsigned char ) * 3 );

src/3d/symbols/qgsline3dsymbol_p.cpp

+5-5
Original file line numberDiff line numberDiff line change
@@ -297,7 +297,7 @@ void QgsSimpleLine3DSymbolHandler::processFeature( const QgsFeature &f, const Qg
297297
out.addLineString( *ls );
298298
}
299299
}
300-
if ( mSymbol->materialSettings()->dataDefinedProperties().isActive( static_cast< int >( QgsAbstractMaterialSettings::Property::Ambient ) ) )
300+
if ( mSymbol->materialSettings()->dataDefinedProperties().isActive( QgsAbstractMaterialSettings::Property::Ambient ) )
301301
processMaterialDatadefined( out.vertices.size() - oldVerticesCount, context.expressionContext(), out );
302302

303303
mFeatureCount++;
@@ -332,7 +332,7 @@ void QgsSimpleLine3DSymbolHandler::makeEntity( Qt3DCore::QEntity *parent, const
332332

333333
Qt3DQGeometry *geom = out.createGeometry( entity );
334334

335-
if ( mSymbol->materialSettings()->dataDefinedProperties().isActive( static_cast< int >( QgsAbstractMaterialSettings::Property::Ambient ) ) )
335+
if ( mSymbol->materialSettings()->dataDefinedProperties().isActive( QgsAbstractMaterialSettings::Property::Ambient ) )
336336
mSymbol->materialSettings()->applyDataDefinedToGeometry( geom, out.vertices.size(), out.materialDataDefined );
337337

338338
Qt3DRender::QGeometryRenderer *renderer = new Qt3DRender::QGeometryRenderer;
@@ -405,7 +405,7 @@ bool QgsThickLine3DSymbolHandler::prepare( const Qgs3DRenderContext &context, QS
405405
attrs = mSymbol->materialSettings()->dataDefinedProperties().referencedFields( context.expressionContext() );
406406
attributeNames.unite( attrs );
407407

408-
if ( mSymbol->materialSettings()->dataDefinedProperties().isActive( static_cast< int >( QgsAbstractMaterialSettings::Property::Ambient ) ) )
408+
if ( mSymbol->materialSettings()->dataDefinedProperties().isActive( QgsAbstractMaterialSettings::Property::Ambient ) )
409409
{
410410
processMaterialDatadefined( outNormal.vertices.size(), context.expressionContext(), outNormal );
411411
processMaterialDatadefined( outSelected.vertices.size(), context.expressionContext(), outSelected );
@@ -447,7 +447,7 @@ void QgsThickLine3DSymbolHandler::processFeature( const QgsFeature &f, const Qgs
447447
}
448448
}
449449

450-
if ( mSymbol->materialSettings()->dataDefinedProperties().isActive( static_cast< int >( QgsAbstractMaterialSettings::Property::Ambient ) ) )
450+
if ( mSymbol->materialSettings()->dataDefinedProperties().isActive( QgsAbstractMaterialSettings::Property::Ambient ) )
451451
processMaterialDatadefined( out.vertices.size() - oldVerticesCount, context.expressionContext(), out );
452452

453453
mFeatureCount++;
@@ -490,7 +490,7 @@ void QgsThickLine3DSymbolHandler::makeEntity( Qt3DCore::QEntity *parent, const Q
490490
renderer->setPrimitiveType( Qt3DRender::QGeometryRenderer::LineStripAdjacency );
491491
Qt3DQGeometry *geometry = out.createGeometry( entity );
492492

493-
if ( mSymbol->materialSettings()->dataDefinedProperties().isActive( static_cast< int >( QgsAbstractMaterialSettings::Property::Ambient ) ) )
493+
if ( mSymbol->materialSettings()->dataDefinedProperties().isActive( QgsAbstractMaterialSettings::Property::Ambient ) )
494494
mSymbol->materialSettings()->applyDataDefinedToGeometry( geometry, out.vertices.size(), out.materialDataDefined );
495495

496496
renderer->setGeometry( geometry );

src/3d/symbols/qgspolygon3dsymbol.cpp

+6-6
Original file line numberDiff line numberDiff line change
@@ -132,21 +132,21 @@ void QgsPolygon3DSymbol::setDefaultPropertiesFromLayer( const QgsVectorLayer *la
132132
mAltClamping = props->clamping();
133133
mAltBinding = props->binding();
134134
mExtrusionHeight = props->extrusionEnabled() ? static_cast< float>( props->extrusionHeight() ) : 0.0f;
135-
if ( props->dataDefinedProperties().isActive( static_cast< int >( QgsMapLayerElevationProperties::Property::ExtrusionHeight ) ) )
135+
if ( props->dataDefinedProperties().isActive( QgsMapLayerElevationProperties::Property::ExtrusionHeight ) )
136136
{
137-
mDataDefinedProperties.setProperty( static_cast< int >( QgsAbstract3DSymbol::Property::ExtrusionHeight ), props->dataDefinedProperties().property( static_cast< int >( QgsMapLayerElevationProperties::Property::ExtrusionHeight ) ) );
137+
mDataDefinedProperties.setProperty( QgsAbstract3DSymbol::Property::ExtrusionHeight, props->dataDefinedProperties().property( QgsMapLayerElevationProperties::Property::ExtrusionHeight ) );
138138
}
139139
else
140140
{
141-
mDataDefinedProperties.setProperty( static_cast< int >( QgsAbstract3DSymbol::Property::ExtrusionHeight ), QgsProperty() );
141+
mDataDefinedProperties.setProperty( QgsAbstract3DSymbol::Property::ExtrusionHeight, QgsProperty() );
142142
}
143-
if ( props->dataDefinedProperties().isActive( static_cast< int >( QgsMapLayerElevationProperties::Property::ZOffset ) ) )
143+
if ( props->dataDefinedProperties().isActive( QgsMapLayerElevationProperties::Property::ZOffset ) )
144144
{
145-
mDataDefinedProperties.setProperty( static_cast< int >( QgsAbstract3DSymbol::Property::Height ), props->dataDefinedProperties().property( static_cast< int >( QgsMapLayerElevationProperties::Property::ZOffset ) ) );
145+
mDataDefinedProperties.setProperty( QgsAbstract3DSymbol::Property::Height, props->dataDefinedProperties().property( QgsMapLayerElevationProperties::Property::ZOffset ) );
146146
}
147147
else
148148
{
149-
mDataDefinedProperties.setProperty( static_cast< int >( QgsAbstract3DSymbol::Property::Height ), QgsProperty() );
149+
mDataDefinedProperties.setProperty( QgsAbstract3DSymbol::Property::Height, QgsProperty() );
150150
}
151151
mOffset = static_cast< float >( props->zOffset() );
152152
}

src/3d/symbols/qgspolygon3dsymbol_p.cpp

+4-4
Original file line numberDiff line numberDiff line change
@@ -173,15 +173,15 @@ void QgsPolygon3DSymbolHandler::processFeature( const QgsFeature &f, const Qgs3D
173173
}
174174

175175
const QgsPropertyCollection &ddp = mSymbol->dataDefinedProperties();
176-
const bool hasDDHeight = ddp.isActive( static_cast< int >( QgsAbstract3DSymbol::Property::Height ) );
177-
const bool hasDDExtrusion = ddp.isActive( static_cast< int >( QgsAbstract3DSymbol::Property::ExtrusionHeight ) );
176+
const bool hasDDHeight = ddp.isActive( QgsAbstract3DSymbol::Property::Height );
177+
const bool hasDDExtrusion = ddp.isActive( QgsAbstract3DSymbol::Property::ExtrusionHeight );
178178

179179
float offset = mSymbol->offset();
180180
float extrusionHeight = mSymbol->extrusionHeight();
181181
if ( hasDDHeight )
182-
offset = static_cast<float>( ddp.valueAsDouble( static_cast< int >( QgsAbstract3DSymbol::Property::Height ), context.expressionContext(), offset ) );
182+
offset = static_cast<float>( ddp.valueAsDouble( QgsAbstract3DSymbol::Property::Height, context.expressionContext(), offset ) );
183183
if ( hasDDExtrusion )
184-
extrusionHeight = ddp.valueAsDouble( static_cast< int >( QgsAbstract3DSymbol::Property::ExtrusionHeight ), context.expressionContext(), extrusionHeight );
184+
extrusionHeight = ddp.valueAsDouble( QgsAbstract3DSymbol::Property::ExtrusionHeight, context.expressionContext(), extrusionHeight );
185185

186186
if ( const QgsPolygon *poly = qgsgeometry_cast< const QgsPolygon *>( g ) )
187187
{

0 commit comments

Comments
 (0)