Skip to content

Commit 07b45cd

Browse files
committedMay 29, 2017
Change labeling from transparency to opacity
1 parent 5aae97e commit 07b45cd

File tree

8 files changed

+268
-140
lines changed

8 files changed

+268
-140
lines changed
 

‎python/core/qgspallabeling.sip

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -158,6 +158,7 @@ class QgsPalLayerSettings
158158
FontStyle,
159159
FontSizeUnit,
160160
FontTransp,
161+
FontOpacity,
161162
FontCase,
162163
FontLetterSpacing,
163164
FontWordSpacing,
@@ -182,6 +183,7 @@ class QgsPalLayerSettings
182183
BufferUnit,
183184
BufferColor,
184185
BufferTransp,
186+
BufferOpacity,
185187
BufferJoinStyle,
186188
BufferBlendMode,
187189

@@ -200,6 +202,7 @@ class QgsPalLayerSettings
200202
ShapeRadii,
201203
ShapeRadiiUnits,
202204
ShapeTransparency,
205+
ShapeOpacity,
203206
ShapeBlendMode,
204207
ShapeFillColor,
205208
ShapeStrokeColor,
@@ -216,6 +219,7 @@ class QgsPalLayerSettings
216219
ShadowRadius,
217220
ShadowRadiusUnits,
218221
ShadowTransparency,
222+
ShadowOpacity,
219223
ShadowScale,
220224
ShadowColor,
221225
ShadowBlendMode,

‎src/app/qgslabelinggui.cpp

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -445,7 +445,7 @@ void QgsLabelingGui::populateDataDefinedButtons()
445445
registerDataDefinedButton( mFontSizeDDBtn, QgsPalLayerSettings::Size );
446446
registerDataDefinedButton( mFontUnitsDDBtn, QgsPalLayerSettings::FontSizeUnit );
447447
registerDataDefinedButton( mFontColorDDBtn, QgsPalLayerSettings::Color );
448-
registerDataDefinedButton( mFontTranspDDBtn, QgsPalLayerSettings::FontTransp );
448+
registerDataDefinedButton( mFontOpacityDDBtn, QgsPalLayerSettings::FontOpacity );
449449
registerDataDefinedButton( mFontCaseDDBtn, QgsPalLayerSettings::FontCase );
450450
registerDataDefinedButton( mFontLetterSpacingDDBtn, QgsPalLayerSettings::FontLetterSpacing );
451451
registerDataDefinedButton( mFontWordSpacingDDBtn, QgsPalLayerSettings::FontWordSpacing );
@@ -475,7 +475,7 @@ void QgsLabelingGui::populateDataDefinedButtons()
475475
registerDataDefinedButton( mBufferSizeDDBtn, QgsPalLayerSettings::BufferSize );
476476
registerDataDefinedButton( mBufferUnitsDDBtn, QgsPalLayerSettings::BufferUnit );
477477
registerDataDefinedButton( mBufferColorDDBtn, QgsPalLayerSettings::BufferColor );
478-
registerDataDefinedButton( mBufferTranspDDBtn, QgsPalLayerSettings::BufferTransp );
478+
registerDataDefinedButton( mBufferOpacityDDBtn, QgsPalLayerSettings::BufferOpacity );
479479
registerDataDefinedButton( mBufferJoinStyleDDBtn, QgsPalLayerSettings::BufferJoinStyle );
480480
registerDataDefinedButton( mBufferBlendModeDDBtn, QgsPalLayerSettings::BufferBlendMode );
481481

@@ -494,7 +494,7 @@ void QgsLabelingGui::populateDataDefinedButtons()
494494
registerDataDefinedButton( mShapeOffsetUnitsDDBtn, QgsPalLayerSettings::ShapeOffsetUnits );
495495
registerDataDefinedButton( mShapeRadiusDDBtn, QgsPalLayerSettings::ShapeRadii );
496496
registerDataDefinedButton( mShapeRadiusUnitsDDBtn, QgsPalLayerSettings::ShapeRadiiUnits );
497-
registerDataDefinedButton( mShapeTranspDDBtn, QgsPalLayerSettings::ShapeTransparency );
497+
registerDataDefinedButton( mShapeOpacityDDBtn, QgsPalLayerSettings::ShapeOpacity );
498498
registerDataDefinedButton( mShapeBlendModeDDBtn, QgsPalLayerSettings::ShapeBlendMode );
499499
registerDataDefinedButton( mShapeFillColorDDBtn, QgsPalLayerSettings::ShapeFillColor );
500500
registerDataDefinedButton( mShapeStrokeColorDDBtn, QgsPalLayerSettings::ShapeStrokeColor );
@@ -511,7 +511,7 @@ void QgsLabelingGui::populateDataDefinedButtons()
511511
registerDataDefinedButton( mShadowOffsetUnitsDDBtn, QgsPalLayerSettings::ShadowOffsetUnits );
512512
registerDataDefinedButton( mShadowRadiusDDBtn, QgsPalLayerSettings::ShadowRadius );
513513
registerDataDefinedButton( mShadowRadiusUnitsDDBtn, QgsPalLayerSettings::ShadowRadiusUnits );
514-
registerDataDefinedButton( mShadowTranspDDBtn, QgsPalLayerSettings::ShadowTransparency );
514+
registerDataDefinedButton( mShadowOpacityDDBtn, QgsPalLayerSettings::ShadowOpacity );
515515
registerDataDefinedButton( mShadowScaleDDBtn, QgsPalLayerSettings::ShadowScale );
516516
registerDataDefinedButton( mShadowColorDDBtn, QgsPalLayerSettings::ShadowColor );
517517
registerDataDefinedButton( mShadowBlendDDBtn, QgsPalLayerSettings::ShadowBlendMode );

‎src/core/qgslegendsettings.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -245,7 +245,7 @@ class CORE_EXPORT QgsLegendSettings
245245
//! Conversion ratio between millimeters and map units - for symbols with size given in map units
246246
double mMmPerMapUnit;
247247

248-
//! Whether to use advanced effects like transparency for symbols - may require their rasterization
248+
//! Whether to use advanced effects like opacity for symbols - may require their rasterization
249249
bool mUseAdvancedEffects;
250250

251251
//! Denominator of map's scale

‎src/core/qgspallabeling.cpp

Lines changed: 75 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -115,6 +115,7 @@ void QgsPalLayerSettings::initPropertyDefinitions()
115115
},
116116
{ QgsPalLayerSettings::FontSizeUnit, QgsPropertyDefinition( "FontSizeUnit", QObject::tr( "Font size units" ), QgsPropertyDefinition::RenderUnits ) },
117117
{ QgsPalLayerSettings::FontTransp, QgsPropertyDefinition( "FontTransp", QObject::tr( "Text transparency" ), QgsPropertyDefinition::Transparency ) },
118+
{ QgsPalLayerSettings::FontOpacity, QgsPropertyDefinition( "FontOpacity", QObject::tr( "Text opacity" ), QgsPropertyDefinition::Transparency ) },
118119
{ QgsPalLayerSettings::FontCase, QgsPropertyDefinition( "FontCase", QgsPropertyDefinition::DataTypeString, QObject::tr( "Font case" ), QObject::tr( "string " ) + QStringLiteral( "[<b>NoChange</b>|<b>Upper</b>|<br><b>Lower</b>|<b>Capitalize</b>]" ) ) },
119120
{ QgsPalLayerSettings::FontLetterSpacing, QgsPropertyDefinition( "FontLetterSpacing", QObject::tr( "Letter spacing" ), QgsPropertyDefinition::Double ) },
120121
{ QgsPalLayerSettings::FontWordSpacing, QgsPropertyDefinition( "FontWordSpacing", QObject::tr( "Word spacing" ), QgsPropertyDefinition::Double ) },
@@ -135,6 +136,7 @@ void QgsPalLayerSettings::initPropertyDefinitions()
135136
{ QgsPalLayerSettings::BufferUnit, QgsPropertyDefinition( "BufferUnit", QObject::tr( "Buffer units" ), QgsPropertyDefinition::RenderUnits ) },
136137
{ QgsPalLayerSettings::BufferColor, QgsPropertyDefinition( "BufferColor", QObject::tr( "Buffer color" ), QgsPropertyDefinition::ColorNoAlpha ) },
137138
{ QgsPalLayerSettings::BufferTransp, QgsPropertyDefinition( "BufferTransp", QObject::tr( "Buffer transparency" ), QgsPropertyDefinition::Transparency ) },
139+
{ QgsPalLayerSettings::BufferOpacity, QgsPropertyDefinition( "BufferOpacity", QObject::tr( "Buffer opacity" ), QgsPropertyDefinition::Transparency ) },
138140
{ QgsPalLayerSettings::BufferJoinStyle, QgsPropertyDefinition( "BufferJoinStyle", QObject::tr( "Buffer join style" ), QgsPropertyDefinition::PenJoinStyle ) },
139141
{ QgsPalLayerSettings::BufferBlendMode, QgsPropertyDefinition( "BufferBlendMode", QObject::tr( "Buffer blend mode" ), QgsPropertyDefinition::BlendMode ) },
140142
{ QgsPalLayerSettings::ShapeDraw, QgsPropertyDefinition( "ShapeDraw", QObject::tr( "Draw shape" ), QgsPropertyDefinition::Boolean ) },
@@ -154,6 +156,7 @@ void QgsPalLayerSettings::initPropertyDefinitions()
154156
{ QgsPalLayerSettings::ShapeRadii, QgsPropertyDefinition( "ShapeRadii", QObject::tr( "Shape radii" ), QgsPropertyDefinition::Size2D ) },
155157
{ QgsPalLayerSettings::ShapeRadiiUnits, QgsPropertyDefinition( "ShapeRadiiUnits", QObject::tr( "Symbol radii units" ), QgsPropertyDefinition::RenderUnits ) },
156158
{ QgsPalLayerSettings::ShapeTransparency, QgsPropertyDefinition( "ShapeTransparency", QObject::tr( "Shape transparency" ), QgsPropertyDefinition::Transparency ) },
159+
{ QgsPalLayerSettings::ShapeOpacity, QgsPropertyDefinition( "ShapeOpacity", QObject::tr( "Shape opacity" ), QgsPropertyDefinition::Transparency ) },
157160
{ QgsPalLayerSettings::ShapeBlendMode, QgsPropertyDefinition( "ShapeBlendMode", QObject::tr( "Shape blend mode" ), QgsPropertyDefinition::BlendMode ) },
158161
{ QgsPalLayerSettings::ShapeFillColor, QgsPropertyDefinition( "ShapeFillColor", QObject::tr( "Shape fill color" ), QgsPropertyDefinition::ColorWithAlpha ) },
159162
{ QgsPalLayerSettings::ShapeStrokeColor, QgsPropertyDefinition( "ShapeBorderColor", QObject::tr( "Shape stroke color" ), QgsPropertyDefinition::ColorWithAlpha ) },
@@ -171,6 +174,7 @@ void QgsPalLayerSettings::initPropertyDefinitions()
171174
{ QgsPalLayerSettings::ShadowRadius, QgsPropertyDefinition( "ShadowRadius", QObject::tr( "Shadow blur radius" ), QgsPropertyDefinition::DoublePositive ) },
172175
{ QgsPalLayerSettings::ShadowRadiusUnits, QgsPropertyDefinition( "ShadowRadiusUnits", QObject::tr( "Shadow blur units" ), QgsPropertyDefinition::RenderUnits ) },
173176
{ QgsPalLayerSettings::ShadowTransparency, QgsPropertyDefinition( "ShadowTransparency", QObject::tr( "Shadow transparency" ), QgsPropertyDefinition::Transparency ) },
177+
{ QgsPalLayerSettings::ShadowOpacity, QgsPropertyDefinition( "ShadowOpacity", QObject::tr( "Shadow opacity" ), QgsPropertyDefinition::Transparency ) },
174178
{ QgsPalLayerSettings::ShadowScale, QgsPropertyDefinition( "ShadowScale", QObject::tr( "Shadow scale" ), QgsPropertyDefinition::IntegerPositive ) },
175179
{ QgsPalLayerSettings::ShadowColor, QgsPropertyDefinition( "ShadowColor", QObject::tr( "Shadow color" ), QgsPropertyDefinition::ColorNoAlpha ) },
176180
{ QgsPalLayerSettings::ShadowBlendMode, QgsPropertyDefinition( "ShadowBlendMode", QObject::tr( "Shadow blend mode" ), QgsPropertyDefinition::BlendMode ) },
@@ -666,6 +670,27 @@ void QgsPalLayerSettings::readFromLayerCustomProperties( QgsVectorLayer *layer )
666670
// read QGIS 2.x style data defined properties
667671
readOldDataDefinedPropertyMap( layer, nullptr );
668672
}
673+
// upgrade older data defined settings
674+
if ( mDataDefinedProperties.isActive( FontTransp ) )
675+
{
676+
mDataDefinedProperties.setProperty( FontOpacity, QgsProperty::fromExpression( QStringLiteral( "100 - (%1)" ).arg( mDataDefinedProperties.property( FontTransp ).asExpression() ) ) );
677+
mDataDefinedProperties.setProperty( FontTransp, QgsProperty() );
678+
}
679+
if ( mDataDefinedProperties.isActive( BufferTransp ) )
680+
{
681+
mDataDefinedProperties.setProperty( BufferOpacity, QgsProperty::fromExpression( QStringLiteral( "100 - (%1)" ).arg( mDataDefinedProperties.property( BufferTransp ).asExpression() ) ) );
682+
mDataDefinedProperties.setProperty( BufferTransp, QgsProperty() );
683+
}
684+
if ( mDataDefinedProperties.isActive( ShapeTransparency ) )
685+
{
686+
mDataDefinedProperties.setProperty( ShapeOpacity, QgsProperty::fromExpression( QStringLiteral( "100 - (%1)" ).arg( mDataDefinedProperties.property( ShapeTransparency ).asExpression() ) ) );
687+
mDataDefinedProperties.setProperty( ShapeTransparency, QgsProperty() );
688+
}
689+
if ( mDataDefinedProperties.isActive( ShadowTransparency ) )
690+
{
691+
mDataDefinedProperties.setProperty( ShadowOpacity, QgsProperty::fromExpression( QStringLiteral( "100 - (%1)" ).arg( mDataDefinedProperties.property( ShadowTransparency ).asExpression() ) ) );
692+
mDataDefinedProperties.setProperty( ShadowTransparency, QgsProperty() );
693+
}
669694
}
670695

671696
void QgsPalLayerSettings::readXml( QDomElement &elem, const QgsReadWriteContext &context )
@@ -785,14 +810,33 @@ void QgsPalLayerSettings::readXml( QDomElement &elem, const QgsReadWriteContext
785810
QDomElement ddElem = elem.firstChildElement( QStringLiteral( "data-defined" ) );
786811
readOldDataDefinedPropertyMap( nullptr, &ddElem );
787812
}
813+
// upgrade older data defined settings
814+
if ( mDataDefinedProperties.isActive( FontTransp ) )
815+
{
816+
mDataDefinedProperties.setProperty( FontOpacity, QgsProperty::fromExpression( QStringLiteral( "100 - (%1)" ).arg( mDataDefinedProperties.property( FontTransp ).asExpression() ) ) );
817+
mDataDefinedProperties.setProperty( FontTransp, QgsProperty() );
818+
}
819+
if ( mDataDefinedProperties.isActive( BufferTransp ) )
820+
{
821+
mDataDefinedProperties.setProperty( BufferOpacity, QgsProperty::fromExpression( QStringLiteral( "100 - (%1)" ).arg( mDataDefinedProperties.property( BufferTransp ).asExpression() ) ) );
822+
mDataDefinedProperties.setProperty( BufferTransp, QgsProperty() );
823+
}
824+
if ( mDataDefinedProperties.isActive( ShapeTransparency ) )
825+
{
826+
mDataDefinedProperties.setProperty( ShapeOpacity, QgsProperty::fromExpression( QStringLiteral( "100 - (%1)" ).arg( mDataDefinedProperties.property( ShapeTransparency ).asExpression() ) ) );
827+
mDataDefinedProperties.setProperty( ShapeTransparency, QgsProperty() );
828+
}
829+
if ( mDataDefinedProperties.isActive( ShadowTransparency ) )
830+
{
831+
mDataDefinedProperties.setProperty( ShadowOpacity, QgsProperty::fromExpression( QStringLiteral( "100 - (%1)" ).arg( mDataDefinedProperties.property( ShadowTransparency ).asExpression() ) ) );
832+
mDataDefinedProperties.setProperty( ShadowTransparency, QgsProperty() );
833+
}
788834
}
789835

790836

791837

792838
QDomElement QgsPalLayerSettings::writeXml( QDomDocument &doc, const QgsReadWriteContext &context )
793839
{
794-
795-
796840
QDomElement textStyleElem = mFormat.writeXml( doc, context );
797841

798842
// text style
@@ -1976,10 +2020,10 @@ bool QgsPalLayerSettings::dataDefinedValEval( DataDefinedValueType valType,
19762020
}
19772021
return false;
19782022
}
1979-
case DDTransparency:
2023+
case DDOpacity:
19802024
{
19812025
bool ok;
1982-
int size = exprVal.toInt( &ok );
2026+
int size = exprVal.toDouble( &ok );
19832027
if ( ok && size >= 0 && size <= 100 )
19842028
{
19852029
dataDefinedValues.insert( p, QVariant( size ) );
@@ -2200,8 +2244,8 @@ void QgsPalLayerSettings::parseTextStyle( QFont &labelFont,
22002244
// data defined font color?
22012245
dataDefinedValEval( DDColor, QgsPalLayerSettings::Color, exprVal, context.expressionContext(), QgsSymbolLayerUtils::encodeColor( mFormat.color() ) );
22022246

2203-
// data defined font transparency?
2204-
dataDefinedValEval( DDTransparency, QgsPalLayerSettings::FontTransp, exprVal, context.expressionContext(), 100 - mFormat.opacity() * 100 );
2247+
// data defined font opacity?
2248+
dataDefinedValEval( DDOpacity, QgsPalLayerSettings::FontOpacity, exprVal, context.expressionContext(), mFormat.opacity() * 100 );
22052249

22062250
// data defined font blend mode?
22072251
dataDefinedValEval( DDBlendMode, QgsPalLayerSettings::FontBlendMode, exprVal, context.expressionContext() );
@@ -2234,19 +2278,19 @@ void QgsPalLayerSettings::parseTextBuffer( QgsRenderContext &context )
22342278
}
22352279

22362280
// data defined buffer transparency?
2237-
int bufTransp = 100 - buffer.opacity() * 100;
2238-
if ( dataDefinedValEval( DDTransparency, QgsPalLayerSettings::BufferTransp, exprVal, context.expressionContext(), bufTransp ) )
2281+
double bufferOpacity = buffer.opacity() * 100;
2282+
if ( dataDefinedValEval( DDOpacity, QgsPalLayerSettings::BufferOpacity, exprVal, context.expressionContext(), bufferOpacity ) )
22392283
{
2240-
bufTransp = exprVal.toInt();
2284+
bufferOpacity = exprVal.toDouble();
22412285
}
22422286

2243-
drawBuffer = ( drawBuffer && bufrSize > 0.0 && bufTransp < 100 );
2287+
drawBuffer = ( drawBuffer && bufrSize > 0.0 && bufferOpacity > 0 );
22442288

22452289
if ( !drawBuffer )
22462290
{
22472291
dataDefinedValues.insert( QgsPalLayerSettings::BufferDraw, QVariant( false ) ); // trigger value
22482292
dataDefinedValues.remove( QgsPalLayerSettings::BufferSize );
2249-
dataDefinedValues.remove( QgsPalLayerSettings::BufferTransp );
2293+
dataDefinedValues.remove( QgsPalLayerSettings::BufferOpacity );
22502294
return; // don't bother evaluating values that won't be used
22512295
}
22522296

@@ -2371,18 +2415,18 @@ void QgsPalLayerSettings::parseShapeBackground( QgsRenderContext &context )
23712415
}
23722416

23732417
// data defined shape transparency?
2374-
int shapeTransp = 100 - background.opacity() * 100;
2375-
if ( dataDefinedValEval( DDTransparency, QgsPalLayerSettings::ShapeTransparency, exprVal, context.expressionContext(), shapeTransp ) )
2418+
double shapeOpacity = background.opacity() * 100;
2419+
if ( dataDefinedValEval( DDOpacity, QgsPalLayerSettings::ShapeOpacity, exprVal, context.expressionContext(), shapeOpacity ) )
23762420
{
2377-
shapeTransp = exprVal.toInt();
2421+
shapeOpacity = 100.0 * exprVal.toDouble();
23782422
}
23792423

2380-
drawShape = ( drawShape && shapeTransp < 100 ); // size is not taken into account (could be)
2424+
drawShape = ( drawShape && shapeOpacity > 0 ); // size is not taken into account (could be)
23812425

23822426
if ( !drawShape )
23832427
{
23842428
dataDefinedValues.insert( QgsPalLayerSettings::ShapeDraw, QVariant( false ) ); // trigger value
2385-
dataDefinedValues.remove( QgsPalLayerSettings::ShapeTransparency );
2429+
dataDefinedValues.remove( QgsPalLayerSettings::ShapeOpacity );
23862430
return; // don't bother evaluating values that won't be used
23872431
}
23882432

@@ -2490,7 +2534,7 @@ void QgsPalLayerSettings::parseShapeBackground( QgsRenderContext &context )
24902534
if ( skip )
24912535
{
24922536
dataDefinedValues.insert( QgsPalLayerSettings::ShapeDraw, QVariant( false ) ); // trigger value
2493-
dataDefinedValues.remove( QgsPalLayerSettings::ShapeTransparency );
2537+
dataDefinedValues.remove( QgsPalLayerSettings::ShapeOpacity );
24942538
dataDefinedValues.remove( QgsPalLayerSettings::ShapeKind );
24952539
dataDefinedValues.remove( QgsPalLayerSettings::ShapeSVGFile );
24962540
dataDefinedValues.remove( QgsPalLayerSettings::ShapeSizeX );
@@ -2579,10 +2623,10 @@ void QgsPalLayerSettings::parseDropShadow( QgsRenderContext &context )
25792623
}
25802624

25812625
// data defined shadow transparency?
2582-
int shadowTransp = 100 - shadow.opacity() * 100;
2583-
if ( dataDefinedValEval( DDTransparency, QgsPalLayerSettings::ShadowTransparency, exprVal, context.expressionContext(), shadowTransp ) )
2626+
double shadowOpacity = shadow.opacity() * 100;
2627+
if ( dataDefinedValEval( DDOpacity, QgsPalLayerSettings::ShadowOpacity, exprVal, context.expressionContext(), shadowOpacity ) )
25842628
{
2585-
shadowTransp = exprVal.toInt();
2629+
shadowOpacity = exprVal.toDouble();
25862630
}
25872631

25882632
// data defined shadow offset distance?
@@ -2599,12 +2643,12 @@ void QgsPalLayerSettings::parseDropShadow( QgsRenderContext &context )
25992643
shadowRad = exprVal.toDouble();
26002644
}
26012645

2602-
drawShadow = ( drawShadow && shadowTransp < 100 && !( shadowOffDist == 0.0 && shadowRad == 0.0 ) );
2646+
drawShadow = ( drawShadow && shadowOpacity > 0 && !( shadowOffDist == 0.0 && shadowRad == 0.0 ) );
26032647

26042648
if ( !drawShadow )
26052649
{
26062650
dataDefinedValues.insert( QgsPalLayerSettings::ShadowDraw, QVariant( false ) ); // trigger value
2607-
dataDefinedValues.remove( QgsPalLayerSettings::ShadowTransparency );
2651+
dataDefinedValues.remove( QgsPalLayerSettings::ShadowOpacity );
26082652
dataDefinedValues.remove( QgsPalLayerSettings::ShadowOffsetDist );
26092653
dataDefinedValues.remove( QgsPalLayerSettings::ShadowRadius );
26102654
return; // don't bother evaluating values that won't be used
@@ -2861,9 +2905,9 @@ void QgsPalLabeling::dataDefinedTextStyle( QgsPalLayerSettings &tmpLyr,
28612905
}
28622906

28632907
//font transparency
2864-
if ( ddValues.contains( QgsPalLayerSettings::FontTransp ) )
2908+
if ( ddValues.contains( QgsPalLayerSettings::FontOpacity ) )
28652909
{
2866-
format.setOpacity( 1.0 - ddValues.value( QgsPalLayerSettings::FontTransp ).toInt() / 100.0 );
2910+
format.setOpacity( ddValues.value( QgsPalLayerSettings::FontOpacity ).toDouble() / 100.0 );
28672911
changed = true;
28682912
}
28692913

@@ -2968,10 +3012,10 @@ void QgsPalLabeling::dataDefinedTextBuffer( QgsPalLayerSettings &tmpLyr,
29683012
changed = true;
29693013
}
29703014

2971-
//buffer transparency
2972-
if ( ddValues.contains( QgsPalLayerSettings::BufferTransp ) )
3015+
//buffer opacity
3016+
if ( ddValues.contains( QgsPalLayerSettings::BufferOpacity ) )
29733017
{
2974-
buffer.setOpacity( 1.0 - ddValues.value( QgsPalLayerSettings::BufferTransp ).toInt() / 100.0 );
3018+
buffer.setOpacity( ddValues.value( QgsPalLayerSettings::BufferOpacity ).toDouble() / 100.0 );
29753019
changed = true;
29763020
}
29773021

@@ -3132,9 +3176,9 @@ void QgsPalLabeling::dataDefinedShapeBackground( QgsPalLayerSettings &tmpLyr,
31323176
changed = true;
31333177
}
31343178

3135-
if ( ddValues.contains( QgsPalLayerSettings::ShapeTransparency ) )
3179+
if ( ddValues.contains( QgsPalLayerSettings::ShapeOpacity ) )
31363180
{
3137-
background.setOpacity( 1.0 - ddValues.value( QgsPalLayerSettings::ShapeTransparency ).toInt() / 100.0 );
3181+
background.setOpacity( ddValues.value( QgsPalLayerSettings::ShapeOpacity ).toDouble() / 100.0 );
31383182
changed = true;
31393183
}
31403184

@@ -3231,9 +3275,9 @@ void QgsPalLabeling::dataDefinedDropShadow( QgsPalLayerSettings &tmpLyr,
32313275
changed = true;
32323276
}
32333277

3234-
if ( ddValues.contains( QgsPalLayerSettings::ShadowTransparency ) )
3278+
if ( ddValues.contains( QgsPalLayerSettings::ShadowOpacity ) )
32353279
{
3236-
shadow.setOpacity( 1.0 - ddValues.value( QgsPalLayerSettings::ShadowTransparency ).toInt() / 100.0 );
3280+
shadow.setOpacity( ddValues.value( QgsPalLayerSettings::ShadowOpacity ).toDouble() / 100.0 );
32373281
changed = true;
32383282
}
32393283

0 commit comments

Comments
 (0)