summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndras Timar <andras.timar@collabora.com>2013-11-19 11:08:09 +0100
committerCaolán McNamara <caolanm@redhat.com>2013-11-20 04:40:23 -0600
commita4d67ba5dc65e0eaa3ffe7fcfcdb55f59413385d (patch)
tree0761832ccec022c6c3a7fe63505e6249c9576d48
parent101b4a05a613fb662dc5854dd0f834f7aa369f66 (diff)
fdo#66854 keep shadow distance of non-supported MSO shadow type
this is a slight improvement of d7367b709dc4e97714fb2084b872a96389e768fb the rendering of star from #i119634# bugdoc was kept the rendering of the yellow circle shadows from fdo#66854 bugdoc was improved Change-Id: Ife53328ef665131fb954eb33c2e8269ad10da0fe Reviewed-on: https://gerrit.libreoffice.org/6719 Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
-rw-r--r--filter/source/msfilter/msdffimp.cxx5
1 files changed, 4 insertions, 1 deletions
diff --git a/filter/source/msfilter/msdffimp.cxx b/filter/source/msfilter/msdffimp.cxx
index b02d5995eaef..dfbcab16e4cc 100644
--- a/filter/source/msfilter/msdffimp.cxx
+++ b/filter/source/msfilter/msdffimp.cxx
@@ -2521,6 +2521,7 @@ void DffPropertyReader::ApplyAttributes( SvStream& rIn, SfxItemSet& rSet ) const
void DffPropertyReader::ApplyAttributes( SvStream& rIn, SfxItemSet& rSet, DffObjData& rObjData ) const
{
sal_Bool bHasShadow = sal_False;
+ bool bNonZeroShadowOffset = false;
if ( IsProperty( DFF_Prop_gtextSize ) )
rSet.Put( SvxFontHeightItem( rManager.ScalePt( GetPropertyValue( DFF_Prop_gtextSize ) ), 100, EE_CHAR_FONTHEIGHT ) );
@@ -2553,12 +2554,14 @@ void DffPropertyReader::ApplyAttributes( SvStream& rIn, SfxItemSet& rSet, DffObj
sal_Int32 nVal = static_cast< sal_Int32 >( GetPropertyValue( DFF_Prop_shadowOffsetX ) );
rManager.ScaleEmu( nVal );
rSet.Put( SdrShadowXDistItem( nVal ) );
+ bNonZeroShadowOffset = ( nVal > 0 );
}
if ( IsProperty( DFF_Prop_shadowOffsetY ) )
{
sal_Int32 nVal = static_cast< sal_Int32 >( GetPropertyValue( DFF_Prop_shadowOffsetY ) );
rManager.ScaleEmu( nVal );
rSet.Put( SdrShadowYDistItem( nVal ) );
+ bNonZeroShadowOffset = ( nVal > 0 );
}
if ( IsProperty( DFF_Prop_fshadowObscured ) )
{
@@ -2574,7 +2577,7 @@ void DffPropertyReader::ApplyAttributes( SvStream& rIn, SfxItemSet& rSet, DffObj
if ( IsProperty( DFF_Prop_shadowType ) )
{
MSO_ShadowType eShadowType = static_cast< MSO_ShadowType >( GetPropertyValue( DFF_Prop_shadowType ) );
- if( eShadowType != mso_shadowOffset )
+ if( eShadowType != mso_shadowOffset && !bNonZeroShadowOffset )
{
//0.12" == 173 twip == 302 100mm
sal_uInt32 nDist = rManager.pSdrModel->GetScaleUnit() == MAP_TWIP ? 173: 302;