Navigation Menu

Skip to content

Commit

Permalink
Remove DataDefinedSizeScale symbol RenderHint
Browse files Browse the repository at this point in the history
This flag is no longer set anywhere in QGIS itself
  • Loading branch information
nyalldawson committed Sep 13, 2016
1 parent 8301ba2 commit 7f9de72
Show file tree
Hide file tree
Showing 8 changed files with 11 additions and 49 deletions.
1 change: 1 addition & 0 deletions doc/api_break.dox
Expand Up @@ -950,6 +950,7 @@ and renamed to RenderUnit. QgsSymbol::OutputUnitList was renamed to QgsUnitTypes
parameters or QgsSymbol::OutputUnitList parameters now take QgsUnitTypes::RenderUnit or QgsUnitTypes::RenderUnitList parameters respectively.</li>
<li>startRender() now accepts a QgsFields reference, not a pointer.</li>
<li>isSymbolLayerCompatible() was removed. Use QgsSymbolLayer::isCompatibleWithSymbol() instead.</li>
<li>The DataDefinedSizeScale flag has been removed. This is no longer used and data defined scaling on a symbol layer level should be used instead.</li>
</ul>

\subsection qgis_api_break_3_0_QgsSymbolLayer QgsSymbolLayer (renamed from QgsSymbolLayerV2)
Expand Down
1 change: 0 additions & 1 deletion python/core/symbology-ng/qgssymbol.sip
Expand Up @@ -41,7 +41,6 @@ class QgsSymbol

enum RenderHint
{
DataDefinedSizeScale,
DataDefinedRotation
};

Expand Down
3 changes: 1 addition & 2 deletions src/core/dxf/qgsdxfexport.cpp
Expand Up @@ -4168,8 +4168,7 @@ bool QgsDxfExport::hasDataDefinedProperties( const QgsSymbolLayer* sl, const Qgs
return false;
}

if ( symbol->renderHints() & QgsSymbol::DataDefinedSizeScale ||
symbol->renderHints() & QgsSymbol::DataDefinedRotation )
if ( symbol->renderHints() & QgsSymbol::DataDefinedRotation )
{
return true;
}
Expand Down
20 changes: 2 additions & 18 deletions src/core/symbology-ng/qgsellipsesymbollayer.cpp
Expand Up @@ -550,11 +550,7 @@ QSizeF QgsEllipseSymbolLayer::calculateSize( QgsSymbolRenderContext& context, do
context.setOriginalValueVariable( mSymbolWidth );
width = evaluateDataDefinedProperty( QgsSymbolLayer::EXPR_WIDTH, context, mSymbolWidth ).toDouble();
}
else if ( context.renderHints() & QgsSymbol::DataDefinedSizeScale ) //2. priority: is data defined size on symbol level
{
width = mSize;
}
else //3. priority: global width setting
else //2. priority: global width setting
{
width = mSymbolWidth;
}
Expand All @@ -570,11 +566,7 @@ QSizeF QgsEllipseSymbolLayer::calculateSize( QgsSymbolRenderContext& context, do
context.setOriginalValueVariable( mSymbolHeight );
height = evaluateDataDefinedProperty( QgsSymbolLayer::EXPR_HEIGHT, context, mSymbolHeight ).toDouble();
}
else if ( context.renderHints() & QgsSymbol::DataDefinedSizeScale ) //2. priority: is data defined size on symbol level
{
height = mSize;
}
else //3. priority: global height setting
else //2. priority: global height setting
{
height = mSymbolHeight;
}
Expand Down Expand Up @@ -745,10 +737,6 @@ bool QgsEllipseSymbolLayer::writeDxf( QgsDxfExport& e, double mmMapUnitScaleFact
context.setOriginalValueVariable( mSymbolWidth );
symbolWidth = evaluateDataDefinedProperty( QgsSymbolLayer::EXPR_WIDTH, context, mSymbolWidth ).toDouble();
}
else if ( context.renderHints() & QgsSymbol::DataDefinedSizeScale ) //2. priority: is data defined size on symbol level
{
symbolWidth = mSize;
}
if ( mSymbolWidthUnit == QgsUnitTypes::RenderMillimeters )
{
symbolWidth *= mmMapUnitScaleFactor;
Expand All @@ -761,10 +749,6 @@ bool QgsEllipseSymbolLayer::writeDxf( QgsDxfExport& e, double mmMapUnitScaleFact
context.setOriginalValueVariable( mSymbolHeight );
symbolHeight = evaluateDataDefinedProperty( QgsSymbolLayer::EXPR_HEIGHT, context, mSymbolHeight ).toDouble();
}
else if ( context.renderHints() & QgsSymbol::DataDefinedSizeScale ) //2. priority: is data defined size on symbol level
{
symbolHeight = mSize;
}
if ( mSymbolHeightUnit == QgsUnitTypes::RenderMillimeters )
{
symbolHeight *= mmMapUnitScaleFactor;
Expand Down
19 changes: 0 additions & 19 deletions src/core/symbology-ng/qgslinesymbollayer.cpp
Expand Up @@ -293,12 +293,6 @@ void QgsSimpleLineSymbolLayer::renderPolyline( const QPolygonF& points, QgsSymbo
return;
}

//size scaling by field
if ( context.renderHints() & QgsSymbol::DataDefinedSizeScale )
{
applySizeScale( context, mPen, mSelPen );
}

double offset = mOffset;
applyDataDefinedSymbology( context, mPen, mSelPen, offset );

Expand Down Expand Up @@ -480,13 +474,6 @@ QgsSymbolLayer* QgsSimpleLineSymbolLayer::createFromSld( QDomElement &element )
return l;
}

void QgsSimpleLineSymbolLayer::applySizeScale( QgsSymbolRenderContext& context, QPen& pen, QPen& selPen )
{
double scaledWidth = QgsSymbolLayerUtils::convertToPainterUnits( context.renderContext(), mWidth, mWidthUnit, mWidthMapUnitScale );
pen.setWidthF( scaledWidth );
selPen.setWidthF( scaledWidth );
}

void QgsSimpleLineSymbolLayer::applyDataDefinedSymbology( QgsSymbolRenderContext& context, QPen& pen, QPen& selPen, double& offset )
{
if ( !hasDataDefinedProperties() )
Expand Down Expand Up @@ -617,10 +604,6 @@ double QgsSimpleLineSymbolLayer::dxfWidth( const QgsDxfExport& e, QgsSymbolRende
context.setOriginalValueVariable( mWidth );
width = evaluateDataDefinedProperty( QgsSymbolLayer::EXPR_WIDTH, context, mWidth ).toDouble() * e.mapUnitScaleFactor( e.symbologyScaleDenominator(), widthUnit(), e.mapUnits() );
}
else if ( context.renderHints() & QgsSymbol::DataDefinedSizeScale )
{
width = QgsSymbolLayerUtils::convertToPainterUnits( context.renderContext(), mWidth, mWidthUnit, mWidthMapUnitScale );
}

return width * e.mapUnitScaleFactor( e.symbologyScaleDenominator(), widthUnit(), e.mapUnits() );
}
Expand Down Expand Up @@ -829,8 +812,6 @@ void QgsMarkerLineSymbolLayer::startRender( QgsSymbolRenderContext& context )
int hints = 0;
if ( mRotateMarker )
hints |= QgsSymbol::DataDefinedRotation;
if ( context.renderHints() & QgsSymbol::DataDefinedSizeScale )
hints |= QgsSymbol::DataDefinedSizeScale;
mMarker->setRenderHints( hints );

mMarker->startRender( context.renderContext(), context.fields() );
Expand Down
1 change: 0 additions & 1 deletion src/core/symbology-ng/qgslinesymbollayer.h
Expand Up @@ -136,7 +136,6 @@ class CORE_EXPORT QgsSimpleLineSymbolLayer : public QgsLineSymbolLayer
private:
//helper functions for data defined symbology
void applyDataDefinedSymbology( QgsSymbolRenderContext& context, QPen& pen, QPen& selPen, double& offset );
void applySizeScale( QgsSymbolRenderContext& context, QPen& pen, QPen& selPen );
};

/////////
Expand Down
14 changes: 7 additions & 7 deletions src/core/symbology-ng/qgsmarkersymbollayer.cpp
Expand Up @@ -131,7 +131,7 @@ bool QgsSimpleMarkerSymbolLayerBase::shapeIsFilled( QgsSimpleMarkerSymbolLayerBa
void QgsSimpleMarkerSymbolLayerBase::startRender( QgsSymbolRenderContext &context )
{
bool hasDataDefinedRotation = context.renderHints() & QgsSymbol::DataDefinedRotation || hasDataDefinedProperty( QgsSymbolLayer::EXPR_ANGLE );
bool hasDataDefinedSize = context.renderHints() & QgsSymbol::DataDefinedSizeScale || hasDataDefinedProperty( QgsSymbolLayer::EXPR_SIZE );
bool hasDataDefinedSize = hasDataDefinedProperty( QgsSymbolLayer::EXPR_SIZE );

// use either QPolygonF or QPainterPath for drawing
if ( !prepareMarkerShape( mShape ) ) // drawing as a polygon
Expand Down Expand Up @@ -612,7 +612,7 @@ double QgsSimpleMarkerSymbolLayerBase::calculateSize( QgsSymbolRenderContext &co
{
double scaledSize = mSize;

hasDataDefinedSize = context.renderHints() & QgsSymbol::DataDefinedSizeScale || hasDataDefinedProperty( QgsSymbolLayer::EXPR_SIZE );
hasDataDefinedSize = hasDataDefinedProperty( QgsSymbolLayer::EXPR_SIZE );
bool ok = true;
if ( hasDataDefinedProperty( QgsSymbolLayer::EXPR_SIZE ) )
{
Expand Down Expand Up @@ -825,7 +825,7 @@ void QgsSimpleMarkerSymbolLayer::startRender( QgsSymbolRenderContext& context )
mSelPen.setWidthF( QgsSymbolLayerUtils::convertToPainterUnits( context.renderContext(), mOutlineWidth, mOutlineWidthUnit, mOutlineWidthMapUnitScale ) );

bool hasDataDefinedRotation = context.renderHints() & QgsSymbol::DataDefinedRotation || hasDataDefinedProperty( QgsSymbolLayer::EXPR_ANGLE );
bool hasDataDefinedSize = context.renderHints() & QgsSymbol::DataDefinedSizeScale || hasDataDefinedProperty( QgsSymbolLayer::EXPR_SIZE );
bool hasDataDefinedSize = hasDataDefinedProperty( QgsSymbolLayer::EXPR_SIZE );

// use caching only when:
// - size, rotation, shape, color, border color is not data-defined
Expand Down Expand Up @@ -1237,7 +1237,7 @@ bool QgsSimpleMarkerSymbolLayer::writeDxf( QgsDxfExport& e, double mmMapUnitScal
//data defined size?
double size = mSize;

bool hasDataDefinedSize = context.renderHints() & QgsSymbol::DataDefinedSizeScale || hasDataDefinedProperty( QgsSymbolLayer::EXPR_SIZE );
bool hasDataDefinedSize = hasDataDefinedProperty( QgsSymbolLayer::EXPR_SIZE );

//data defined size
bool ok = true;
Expand Down Expand Up @@ -2053,7 +2053,7 @@ void QgsSvgMarkerSymbolLayer::renderPoint( QPointF point, QgsSymbolRenderContext
double QgsSvgMarkerSymbolLayer::calculateSize( QgsSymbolRenderContext& context, bool& hasDataDefinedSize ) const
{
double scaledSize = mSize;
hasDataDefinedSize = context.renderHints() & QgsSymbol::DataDefinedSizeScale || hasDataDefinedProperty( QgsSymbolLayer::EXPR_SIZE );
hasDataDefinedSize = hasDataDefinedProperty( QgsSymbolLayer::EXPR_SIZE );

bool ok = true;
if ( hasDataDefinedProperty( QgsSymbolLayer::EXPR_SIZE ) )
Expand Down Expand Up @@ -2268,7 +2268,7 @@ bool QgsSvgMarkerSymbolLayer::writeDxf( QgsDxfExport& e, double mmMapUnitScaleFa
//size
double size = mSize;

bool hasDataDefinedSize = context.renderHints() & QgsSymbol::DataDefinedSizeScale || hasDataDefinedProperty( QgsSymbolLayer::EXPR_SIZE );
bool hasDataDefinedSize = hasDataDefinedProperty( QgsSymbolLayer::EXPR_SIZE );

bool ok = true;
if ( hasDataDefinedProperty( QgsSymbolLayer::EXPR_SIZE ) )
Expand Down Expand Up @@ -2649,7 +2649,7 @@ void QgsFontMarkerSymbolLayer::calculateOffsetAndRotation( QgsSymbolRenderContex
double QgsFontMarkerSymbolLayer::calculateSize( QgsSymbolRenderContext& context )
{
double scaledSize = mSize;
bool hasDataDefinedSize = context.renderHints() & QgsSymbol::DataDefinedSizeScale || hasDataDefinedProperty( QgsSymbolLayer::EXPR_SIZE );
bool hasDataDefinedSize = hasDataDefinedProperty( QgsSymbolLayer::EXPR_SIZE );

bool ok = true;
if ( hasDataDefinedProperty( QgsSymbolLayer::EXPR_SIZE ) )
Expand Down
1 change: 0 additions & 1 deletion src/core/symbology-ng/qgssymbol.h
Expand Up @@ -82,7 +82,6 @@ class CORE_EXPORT QgsSymbol

enum RenderHint
{
DataDefinedSizeScale = 1,
DataDefinedRotation = 2
};

Expand Down

0 comments on commit 7f9de72

Please sign in to comment.