Skip to content

Commit

Permalink
Remove const from labeling QgsRenderContext usage
Browse files Browse the repository at this point in the history
  • Loading branch information
nyalldawson committed Oct 1, 2015
1 parent 1e6c890 commit 1491d56
Show file tree
Hide file tree
Showing 15 changed files with 53 additions and 53 deletions.
4 changes: 2 additions & 2 deletions python/core/qgsmaprenderer.sip
Expand Up @@ -56,9 +56,9 @@ class QgsLabelingEngineInterface
//! @deprecated since 2.12 - use prepareDiagramLayer()
virtual int addDiagramLayer( QgsVectorLayer* layer, const QgsDiagramLayerSettings* s ) /Deprecated/;
//! called for every feature
virtual void registerFeature( const QString& layerID, QgsFeature& feat, const QgsRenderContext& context = QgsRenderContext(), QString dxfLayer = QString::null ) = 0;
virtual void registerFeature( const QString& layerID, QgsFeature& feat, QgsRenderContext& context, QString dxfLayer = QString::null ) = 0;
//! called for every diagram feature
virtual void registerDiagramFeature( const QString& layerID, QgsFeature& feat, const QgsRenderContext& context = QgsRenderContext() );
virtual void registerDiagramFeature( const QString& layerID, QgsFeature& feat, QgsRenderContext& context );
//! called when the map is drawn and labels should be placed
virtual void drawLabeling( QgsRenderContext& context ) = 0;
//! called when we're done with rendering
Expand Down
12 changes: 6 additions & 6 deletions python/core/qgspallabeling.sip
Expand Up @@ -485,15 +485,15 @@ class QgsPalLayerSettings
double rasterCompressFactor; //pixel resolution scale factor

// called from register feature hook
void calculateLabelSize( const QFontMetricsF* fm, QString text, double& labelX, double& labelY, QgsFeature* f = 0, const QgsRenderContext* context = 0 );
void calculateLabelSize( const QFontMetricsF* fm, QString text, double& labelX, double& labelY, QgsFeature* f = 0, QgsRenderContext* context = 0 );

/** Register a feature for labelling.
* @param f feature to label
* @param context render context. The QgsExpressionContext contained within the render context
* must have already had the feature and fields sets prior to calling this method.
* @param dxfLayer dxfLayer name
*/
void registerFeature( QgsFeature& f, const QgsRenderContext& context, QString dxfLayer );
void registerFeature( QgsFeature& f, QgsRenderContext& context, QString dxfLayer );

void readFromLayer( QgsVectorLayer* layer );
void writeToLayer( QgsVectorLayer* layer );
Expand Down Expand Up @@ -766,9 +766,9 @@ class QgsPalLabeling : QgsLabelingEngineInterface
* must have already had the feature and fields sets prior to calling this method.
* @param dxfLayer dxfLayer name
*/
virtual void registerFeature( const QString& layerID, QgsFeature& feat, const QgsRenderContext& context = QgsRenderContext(), QString dxfLayer = QString::null );
virtual void registerFeature( const QString& layerID, QgsFeature& feat, QgsRenderContext& context, QString dxfLayer = QString::null );

virtual void registerDiagramFeature( const QString& layerID, QgsFeature& feat, const QgsRenderContext& context = QgsRenderContext() );
virtual void registerDiagramFeature( const QString& layerID, QgsFeature& feat, QgsRenderContext& context );
//! called when the map is drawn and labels should be placed
virtual void drawLabeling( QgsRenderContext& context );
//! called when we're done with rendering
Expand Down Expand Up @@ -823,7 +823,7 @@ class QgsPalLabeling : QgsLabelingEngineInterface
* @returns prepared geometry
* @note added in QGIS 2.9
*/
static QgsGeometry* prepareGeometry( const QgsGeometry *geometry, const QgsRenderContext &context, const QgsCoordinateTransform *ct, QgsGeometry *clipGeometry = 0 ) /Factory/;
static QgsGeometry* prepareGeometry( const QgsGeometry *geometry, QgsRenderContext &context, const QgsCoordinateTransform *ct, QgsGeometry *clipGeometry = 0 ) /Factory/;

/** Checks whether a geometry requires preparation before registration with PAL
* @param geometry geometry to prepare
Expand All @@ -833,7 +833,7 @@ class QgsPalLabeling : QgsLabelingEngineInterface
* @returns true if geometry requires preparation
* @note added in QGIS 2.9
*/
static bool geometryRequiresPreparation( const QgsGeometry *geometry, const QgsRenderContext &context, const QgsCoordinateTransform *ct, QgsGeometry *clipGeometry = 0 );
static bool geometryRequiresPreparation( const QgsGeometry *geometry, QgsRenderContext &context, const QgsCoordinateTransform *ct, QgsGeometry *clipGeometry = 0 );

/** Splits a text string to a list of separate lines, using a specified wrap character.
* The text string will be split on either newline characters or the wrap character.
Expand Down
2 changes: 1 addition & 1 deletion src/core/dxf/qgsdxfpallabeling.cpp
Expand Up @@ -139,7 +139,7 @@ void QgsDxfLabelProvider::drawLabel( QgsRenderContext& context, pal::LabelPositi
}
}

void QgsDxfLabelProvider::registerDxfFeature( QgsFeature& feature, const QgsRenderContext& context, const QString& dxfLayerName )
void QgsDxfLabelProvider::registerDxfFeature( QgsFeature& feature, QgsRenderContext& context, const QString& dxfLayerName )
{
registerFeature( feature, context );
mDxfLayerNames[feature.id()] = dxfLayerName;
Expand Down
2 changes: 1 addition & 1 deletion src/core/dxf/qgsdxfpallabeling.h
Expand Up @@ -39,7 +39,7 @@ class QgsDxfLabelProvider : public QgsVectorLayerLabelProvider
virtual void drawLabel( QgsRenderContext& context, pal::LabelPosition* label ) const override;

//! registration method that keeps track of DXF layer names of individual features
void registerDxfFeature( QgsFeature& feature, const QgsRenderContext& context, const QString& dxfLayerName );
void registerDxfFeature( QgsFeature& feature, QgsRenderContext &context, const QString& dxfLayerName );

protected:
//! pointer to parent DXF export where this instance is used
Expand Down
2 changes: 1 addition & 1 deletion src/core/qgslabelingenginev2.cpp
Expand Up @@ -188,7 +188,7 @@ void QgsLabelingEngineV2::run( QgsRenderContext& context )

// NOW DO THE LAYOUT (from QgsPalLabeling::drawLabeling)

QPainter* painter = const_cast<QgsRenderContext&>( context ).painter();
QPainter* painter = context.painter();

QgsGeometry* extentGeom( QgsGeometry::fromRect( mMapSettings.visibleExtent() ) );
if ( !qgsDoubleNear( mMapSettings.rotation(), 0.0 ) )
Expand Down
2 changes: 1 addition & 1 deletion src/core/qgslabelingenginev2.h
Expand Up @@ -267,7 +267,7 @@ class CORE_EXPORT QgsAbstractLabelProvider
Q_DECLARE_FLAGS( Flags, Flag )

//! Return list of label features (they are owned by the provider and thus deleted on its destruction)
virtual QList<QgsLabelFeature*> labelFeatures( const QgsRenderContext& context ) = 0;
virtual QList<QgsLabelFeature*> labelFeatures( QgsRenderContext& context ) = 0;

//! draw this label at the position determined by the labeling engine
virtual void drawLabel( QgsRenderContext& context, pal::LabelPosition* label ) const = 0;
Expand Down
4 changes: 2 additions & 2 deletions src/core/qgsmaprenderer.h
Expand Up @@ -95,9 +95,9 @@ class CORE_EXPORT QgsLabelingEngineInterface
Q_DECL_DEPRECATED virtual int addDiagramLayer( QgsVectorLayer* layer, const QgsDiagramLayerSettings* s )
{ Q_UNUSED( layer ); Q_UNUSED( s ); return 0; }
//! called for every feature
virtual void registerFeature( const QString& layerID, QgsFeature& feat, const QgsRenderContext& context = QgsRenderContext(), QString dxfLayer = QString::null ) = 0;
virtual void registerFeature( const QString& layerID, QgsFeature& feat, QgsRenderContext& context, QString dxfLayer = QString::null ) = 0;
//! called for every diagram feature
virtual void registerDiagramFeature( const QString& layerID, QgsFeature& feat, const QgsRenderContext& context = QgsRenderContext() )
virtual void registerDiagramFeature( const QString& layerID, QgsFeature& feat, QgsRenderContext& context )
{ Q_UNUSED( layerID ); Q_UNUSED( feat ); Q_UNUSED( context ); }
//! called when the map is drawn and labels should be placed
virtual void drawLabeling( QgsRenderContext& context ) = 0;
Expand Down
24 changes: 12 additions & 12 deletions src/core/qgspallabeling.cpp
Expand Up @@ -1719,7 +1719,7 @@ bool QgsPalLayerSettings::checkMinimumSizeMM( const QgsRenderContext& ct, const
return QgsPalLabeling::checkMinimumSizeMM( ct, geom, minSize );
}

void QgsPalLayerSettings::calculateLabelSize( const QFontMetricsF* fm, QString text, double& labelX, double& labelY, QgsFeature* f, const QgsRenderContext *context )
void QgsPalLayerSettings::calculateLabelSize( const QFontMetricsF* fm, QString text, double& labelX, double& labelY, QgsFeature* f, QgsRenderContext *context )
{
if ( !fm || !f )
{
Expand Down Expand Up @@ -1891,7 +1891,7 @@ void QgsPalLayerSettings::calculateLabelSize( const QFontMetricsF* fm, QString t
}


void QgsPalLayerSettings::registerFeature( QgsFeature& f, const QgsRenderContext& context, QString dxfLayer, QgsLabelFeature** labelFeature )
void QgsPalLayerSettings::registerFeature( QgsFeature& f, QgsRenderContext &context, QString dxfLayer, QgsLabelFeature** labelFeature )
{
// either used in QgsPalLabeling (palLayer is set) or in QgsLabelingEngineV2 (labelFeature is set)
Q_ASSERT( labelFeature );
Expand Down Expand Up @@ -2700,7 +2700,7 @@ void QgsPalLayerSettings::registerFeature( QgsFeature& f, const QgsRenderContext
}


void QgsPalLayerSettings::registerObstacleFeature( QgsFeature& f, const QgsRenderContext& context, QString dxfLayer , QgsLabelFeature** obstacleFeature )
void QgsPalLayerSettings::registerObstacleFeature( QgsFeature& f, QgsRenderContext &context, QString dxfLayer , QgsLabelFeature** obstacleFeature )
{
Q_UNUSED( dxfLayer ); // now handled in QgsDxfLabelProvider

Expand Down Expand Up @@ -2919,7 +2919,7 @@ bool QgsPalLayerSettings::dataDefinedValEval( DataDefinedValueType valType,

void QgsPalLayerSettings::parseTextStyle( QFont& labelFont,
QgsPalLayerSettings::SizeUnit fontunits,
const QgsRenderContext& context )
QgsRenderContext &context )
{
// NOTE: labelFont already has pixelSize set, so pointSize or pointSizeF might return -1

Expand Down Expand Up @@ -3127,7 +3127,7 @@ void QgsPalLayerSettings::parseTextStyle( QFont& labelFont,

}

void QgsPalLayerSettings::parseTextBuffer( const QgsRenderContext &context )
void QgsPalLayerSettings::parseTextBuffer( QgsRenderContext &context )
{
QVariant exprVal; // value() is repeatedly nulled on data defined evaluation and replaced when successful

Expand Down Expand Up @@ -3180,7 +3180,7 @@ void QgsPalLayerSettings::parseTextBuffer( const QgsRenderContext &context )
dataDefinedValEval( DDBlendMode, QgsPalLayerSettings::BufferBlendMode, exprVal, context.expressionContext() );
}

void QgsPalLayerSettings::parseTextFormatting( const QgsRenderContext &context )
void QgsPalLayerSettings::parseTextFormatting( QgsRenderContext &context )
{
QVariant exprVal; // value() is repeatedly nulled on data defined evaluation and replaced when successful

Expand Down Expand Up @@ -3266,7 +3266,7 @@ void QgsPalLayerSettings::parseTextFormatting( const QgsRenderContext &context )
// formatting for numbers is inline with generation of base label text and not passed to label painting
}

void QgsPalLayerSettings::parseShapeBackground( const QgsRenderContext &context )
void QgsPalLayerSettings::parseShapeBackground( QgsRenderContext &context )
{
QVariant exprVal; // value() is repeatedly nulled on data defined evaluation and replaced when successful

Expand Down Expand Up @@ -3467,7 +3467,7 @@ void QgsPalLayerSettings::parseShapeBackground( const QgsRenderContext &context

}

void QgsPalLayerSettings::parseDropShadow( const QgsRenderContext &context )
void QgsPalLayerSettings::parseDropShadow( QgsRenderContext &context )
{
QVariant exprVal; // value() is repeatedly nulled on data defined evaluation and replaced when successful

Expand Down Expand Up @@ -3688,14 +3688,14 @@ int QgsPalLabeling::addDiagramLayer( QgsVectorLayer* layer, const QgsDiagramLaye
return 0;
}

void QgsPalLabeling::registerFeature( const QString& layerID, QgsFeature& f, const QgsRenderContext& context, QString dxfLayer )
void QgsPalLabeling::registerFeature( const QString& layerID, QgsFeature& f, QgsRenderContext &context, QString dxfLayer )
{
Q_UNUSED( dxfLayer ); // now handled by QgsDxfLabelProvider
if ( QgsVectorLayerLabelProvider* provider = mLabelProviders.value( layerID, 0 ) )
provider->registerFeature( f, context );
}

bool QgsPalLabeling::geometryRequiresPreparation( const QgsGeometry* geometry, const QgsRenderContext& context, const QgsCoordinateTransform* ct, QgsGeometry* clipGeometry )
bool QgsPalLabeling::geometryRequiresPreparation( const QgsGeometry* geometry, QgsRenderContext &context, const QgsCoordinateTransform* ct, QgsGeometry* clipGeometry )
{
if ( !geometry )
{
Expand Down Expand Up @@ -3755,7 +3755,7 @@ QStringList QgsPalLabeling::splitToGraphemes( const QString &text )
return graphemes;
}

QgsGeometry* QgsPalLabeling::prepareGeometry( const QgsGeometry* geometry, const QgsRenderContext& context, const QgsCoordinateTransform* ct, QgsGeometry* clipGeometry )
QgsGeometry* QgsPalLabeling::prepareGeometry( const QgsGeometry* geometry, QgsRenderContext &context, const QgsCoordinateTransform* ct, QgsGeometry* clipGeometry )
{
if ( !geometry )
{
Expand Down Expand Up @@ -3875,7 +3875,7 @@ bool QgsPalLabeling::checkMinimumSizeMM( const QgsRenderContext& context, const
return true; //should never be reached. Return true in this case to label such geometries anyway.
}

void QgsPalLabeling::registerDiagramFeature( const QString& layerID, QgsFeature& feat, const QgsRenderContext& context )
void QgsPalLabeling::registerDiagramFeature( const QString& layerID, QgsFeature& feat, QgsRenderContext &context )
{
if ( QgsVectorLayerDiagramProvider* provider = mDiagramProviders.value( layerID, 0 ) )
provider->registerFeature( feat, context );
Expand Down
24 changes: 12 additions & 12 deletions src/core/qgspallabeling.h
Expand Up @@ -467,7 +467,7 @@ class CORE_EXPORT QgsPalLayerSettings
double rasterCompressFactor; //pixel resolution scale factor

// called from register feature hook
void calculateLabelSize( const QFontMetricsF* fm, QString text, double& labelX, double& labelY, QgsFeature* f = 0, const QgsRenderContext* context = 0 );
void calculateLabelSize( const QFontMetricsF* fm, QString text, double& labelX, double& labelY, QgsFeature* f = 0, QgsRenderContext* context = 0 );

/** Register a feature for labelling.
* @param f feature to label
Expand All @@ -476,7 +476,7 @@ class CORE_EXPORT QgsPalLayerSettings
* @param dxfLayer dxfLayer name
* @param labelFeature if using QgsLabelingEngineV2, this will receive the label feature
*/
void registerFeature( QgsFeature& f, const QgsRenderContext& context, QString dxfLayer, QgsLabelFeature** labelFeature = 0 );
void registerFeature( QgsFeature& f, QgsRenderContext& context, QString dxfLayer, QgsLabelFeature** labelFeature = 0 );

void readFromLayer( QgsVectorLayer* layer );
void writeToLayer( QgsVectorLayer* layer );
Expand Down Expand Up @@ -628,23 +628,23 @@ class CORE_EXPORT QgsPalLayerSettings

void parseTextStyle( QFont& labelFont,
QgsPalLayerSettings::SizeUnit fontunits,
const QgsRenderContext& context );
QgsRenderContext& context );

void parseTextBuffer( const QgsRenderContext& context );
void parseTextBuffer( QgsRenderContext& context );

void parseTextFormatting( const QgsRenderContext& context );
void parseTextFormatting( QgsRenderContext& context );

void parseShapeBackground( const QgsRenderContext& context );
void parseShapeBackground( QgsRenderContext& context );

void parseDropShadow( const QgsRenderContext& context );
void parseDropShadow( QgsRenderContext& context );

/** Checks if a feature is larger than a minimum size (in mm)
@return true if above size, false if below*/
bool checkMinimumSizeMM( const QgsRenderContext& ct, const QgsGeometry* geom, double minSize ) const;

/** Registers a feature as an obstacle only (no label rendered)
*/
void registerObstacleFeature( QgsFeature &f, const QgsRenderContext &context, QString dxfLayer, QgsLabelFeature** obstacleFeature );
void registerObstacleFeature( QgsFeature &f, QgsRenderContext &context, QString dxfLayer, QgsLabelFeature** obstacleFeature );

QMap<DataDefinedProperties, QVariant> dataDefinedValues;
QgsExpression* expression;
Expand Down Expand Up @@ -880,9 +880,9 @@ class CORE_EXPORT QgsPalLabeling : public QgsLabelingEngineInterface
* must have already had the feature and fields sets prior to calling this method.
* @param dxfLayer dxfLayer name
*/
virtual void registerFeature( const QString& layerID, QgsFeature& feat, const QgsRenderContext& context = QgsRenderContext(), QString dxfLayer = QString::null ) override;
virtual void registerFeature( const QString& layerID, QgsFeature& feat, QgsRenderContext& context, QString dxfLayer = QString::null ) override;

virtual void registerDiagramFeature( const QString& layerID, QgsFeature& feat, const QgsRenderContext& context = QgsRenderContext() ) override;
virtual void registerDiagramFeature( const QString& layerID, QgsFeature& feat, QgsRenderContext& context ) override;
//! called when the map is drawn and labels should be placed
virtual void drawLabeling( QgsRenderContext& context ) override;
//! called when we're done with rendering
Expand Down Expand Up @@ -934,7 +934,7 @@ class CORE_EXPORT QgsPalLabeling : public QgsLabelingEngineInterface
* @returns prepared geometry, the caller takes ownership
* @note added in QGIS 2.9
*/
static QgsGeometry* prepareGeometry( const QgsGeometry *geometry, const QgsRenderContext &context, const QgsCoordinateTransform *ct, QgsGeometry *clipGeometry = 0 );
static QgsGeometry* prepareGeometry( const QgsGeometry *geometry, QgsRenderContext &context, const QgsCoordinateTransform *ct, QgsGeometry *clipGeometry = 0 );

/** Checks whether a geometry requires preparation before registration with PAL
* @param geometry geometry to prepare
Expand All @@ -944,7 +944,7 @@ class CORE_EXPORT QgsPalLabeling : public QgsLabelingEngineInterface
* @returns true if geometry requires preparation
* @note added in QGIS 2.9
*/
static bool geometryRequiresPreparation( const QgsGeometry *geometry, const QgsRenderContext &context, const QgsCoordinateTransform *ct, QgsGeometry *clipGeometry = 0 );
static bool geometryRequiresPreparation( const QgsGeometry *geometry, QgsRenderContext &context, const QgsCoordinateTransform *ct, QgsGeometry *clipGeometry = 0 );

/** Splits a text string to a list of separate lines, using a specified wrap character.
* The text string will be split on either newline characters or the wrap character.
Expand Down
6 changes: 3 additions & 3 deletions src/core/qgsrulebasedlabeling.cpp
Expand Up @@ -25,7 +25,7 @@ bool QgsRuleBasedLabelProvider::prepare( const QgsRenderContext& context, QStrin
return true;
}

void QgsRuleBasedLabelProvider::registerFeature( QgsFeature& feature, const QgsRenderContext& context )
void QgsRuleBasedLabelProvider::registerFeature( QgsFeature& feature, QgsRenderContext &context )
{
// will register the feature to relevant sub-providers
mRules.rootRule()->registerFeature( feature, context, mSubProviders );
Expand Down Expand Up @@ -241,9 +241,9 @@ void QgsRuleBasedLabeling::Rule::prepare( const QgsRenderContext& context, QStri
}
}

QgsRuleBasedLabeling::Rule::RegisterResult QgsRuleBasedLabeling::Rule::registerFeature( QgsFeature& feature, const QgsRenderContext& context, QgsRuleBasedLabeling::RuleToProviderMap& subProviders )
QgsRuleBasedLabeling::Rule::RegisterResult QgsRuleBasedLabeling::Rule::registerFeature( QgsFeature& feature, QgsRenderContext &context, QgsRuleBasedLabeling::RuleToProviderMap& subProviders )
{
if ( !isFilterOK( feature, const_cast<QgsRenderContext&>( context ) )
if ( !isFilterOK( feature, context )
|| !isScaleOK( context.rendererScale() ) )
return Filtered;

Expand Down
4 changes: 2 additions & 2 deletions src/core/qgsrulebasedlabeling.h
Expand Up @@ -166,7 +166,7 @@ class CORE_EXPORT QgsRuleBasedLabeling : public QgsAbstractVectorLayerLabeling
void prepare( const QgsRenderContext& context, QStringList& attributeNames, RuleToProviderMap& subProviders );

//! register individual features
RegisterResult registerFeature( QgsFeature& feature, const QgsRenderContext& context, RuleToProviderMap& subProviders );
RegisterResult registerFeature( QgsFeature& feature, QgsRenderContext& context, RuleToProviderMap& subProviders );

protected:
/**
Expand Down Expand Up @@ -243,7 +243,7 @@ class CORE_EXPORT QgsRuleBasedLabelProvider : public QgsVectorLayerLabelProvider

virtual bool prepare( const QgsRenderContext& context, QStringList& attributeNames ) override;

virtual void registerFeature( QgsFeature& feature, const QgsRenderContext& context ) override;
virtual void registerFeature( QgsFeature& feature, QgsRenderContext& context ) override;

// new methods

Expand Down

0 comments on commit 1491d56

Please sign in to comment.