filter/source/msfilter/svdfppt.cxx | 139 ------------------------------------ include/filter/msfilter/svdfppt.hxx | 3 sd/source/filter/ppt/pptin.cxx | 2 3 files changed, 144 deletions(-)
New commits: commit 979def88090633bfee0e0445b19999a1dac71ed4 Author: Caolán McNamara <caol...@redhat.com> Date: Fri May 24 20:58:32 2013 +0100 Revert "Resolves: #i119874 Fixed text alignment in RTL layout." This reverts commit 54c679f481647890f18151f4db05cfc3eff5d98b. pushed that too soon before verifying if it does what it says it does diff --git a/filter/source/msfilter/svdfppt.cxx b/filter/source/msfilter/svdfppt.cxx index 91891c9..e4e1ae1 100644 --- a/filter/source/msfilter/svdfppt.cxx +++ b/filter/source/msfilter/svdfppt.cxx @@ -7627,143 +7627,4 @@ SdrObject* SdrPowerPointImport::CreateTable( SdrObject* pGroup, sal_uInt32* pTab return pRet; } -sal_Bool SdrPowerPointImport::IsVerticalText() const -{ - sal_Bool bVerticalText = sal_False; - if ( IsProperty( DFF_Prop_txflTextFlow ) ) - { - MSO_TextFlow eTextFlow = (MSO_TextFlow)( GetPropertyValue( DFF_Prop_txflTextFlow ) & 0xFFFF ); - switch( eTextFlow ) - { - case mso_txflTtoBA : // Top to Bottom @-font, above -> below - case mso_txflTtoBN : // Top to Bottom non-@, above -> below - case mso_txflVertN : // Vertical, non-@, above -> below - bVerticalText = !bVerticalText; - break; - default: break; - } - } - - return bVerticalText; -} - -void SdrPowerPointImport::ApplyTextAnchorAttributes( PPTTextObj& rTextObj, SfxItemSet& rSet ) const -{ - SdrTextVertAdjust eTVA; - SdrTextHorzAdjust eTHA; - - sal_uInt32 nTextFlags = rTextObj.GetTextFlags(); - - nTextFlags &= PPT_TEXTOBJ_FLAGS_PARA_ALIGNMENT_USED_LEFT | PPT_TEXTOBJ_FLAGS_PARA_ALIGNMENT_USED_RIGHT - | PPT_TEXTOBJ_FLAGS_PARA_ALIGNMENT_USED_CENTER | PPT_TEXTOBJ_FLAGS_PARA_ALIGNMENT_USED_BLOCK; - - if ( IsVerticalText() ) - { - eTVA = SDRTEXTVERTADJUST_BLOCK; - eTHA = SDRTEXTHORZADJUST_CENTER; - - // Textverankerung lesen - MSO_Anchor eTextAnchor = (MSO_Anchor)GetPropertyValue( DFF_Prop_anchorText, mso_anchorTop ); - - switch( eTextAnchor ) - { - case mso_anchorTop: - case mso_anchorTopCentered: - eTHA = SDRTEXTHORZADJUST_RIGHT; - break; - - case mso_anchorMiddle : - case mso_anchorMiddleCentered: - eTHA = SDRTEXTHORZADJUST_CENTER; - break; - - case mso_anchorBottom: - case mso_anchorBottomCentered: - eTHA = SDRTEXTHORZADJUST_LEFT; - break; - - default: - break; - } - // if there is a 100% use of following attributes, the textbox can been aligned also in vertical direction - switch ( eTextAnchor ) - { - case mso_anchorTopCentered : - case mso_anchorMiddleCentered : - case mso_anchorBottomCentered : - { - // check if it is sensible to use the centered alignment - sal_uInt32 nMask = PPT_TEXTOBJ_FLAGS_PARA_ALIGNMENT_USED_LEFT | PPT_TEXTOBJ_FLAGS_PARA_ALIGNMENT_USED_RIGHT; - if ( ( nTextFlags & nMask ) != nMask ) // if the textobject has left or also right aligned pararagraphs - eTVA = SDRTEXTVERTADJUST_CENTER; // the text has to be displayed using the full width; - } - break; - - default : - { - if ( nTextFlags == PPT_TEXTOBJ_FLAGS_PARA_ALIGNMENT_USED_LEFT ) - eTVA = SDRTEXTVERTADJUST_TOP; - else if ( nTextFlags == PPT_TEXTOBJ_FLAGS_PARA_ALIGNMENT_USED_RIGHT ) - eTVA = SDRTEXTVERTADJUST_BOTTOM; - } - break; - } - } - else - { - eTVA = SDRTEXTVERTADJUST_CENTER; - eTHA = SDRTEXTHORZADJUST_BLOCK; - - // Textverankerung lesen - MSO_Anchor eTextAnchor = (MSO_Anchor)GetPropertyValue( DFF_Prop_anchorText, mso_anchorTop ); - - switch( eTextAnchor ) - { - case mso_anchorTop: - case mso_anchorTopCentered: - eTVA = SDRTEXTVERTADJUST_TOP; - break; - - case mso_anchorMiddle : - case mso_anchorMiddleCentered: - eTVA = SDRTEXTVERTADJUST_CENTER; - break; - - case mso_anchorBottom: - case mso_anchorBottomCentered: - eTVA = SDRTEXTVERTADJUST_BOTTOM; - break; - - default: - break; - } - - // if there is a 100% usage of following attributes, the textbox can be aligned also in horizontal direction - switch ( eTextAnchor ) - { - case mso_anchorTopCentered : - case mso_anchorMiddleCentered : - case mso_anchorBottomCentered : - { - // check if it is sensible to use the centered alignment - sal_uInt32 nMask = PPT_TEXTOBJ_FLAGS_PARA_ALIGNMENT_USED_LEFT | PPT_TEXTOBJ_FLAGS_PARA_ALIGNMENT_USED_RIGHT; - if ( ( nTextFlags & nMask ) != nMask ) // if the textobject has left or also right aligned pararagraphs - eTHA = SDRTEXTHORZADJUST_CENTER; // the text has to be displayed using the full width; - } - break; - - default : - { - if ( nTextFlags == PPT_TEXTOBJ_FLAGS_PARA_ALIGNMENT_USED_LEFT ) - eTHA = SDRTEXTHORZADJUST_LEFT; - else if ( nTextFlags == PPT_TEXTOBJ_FLAGS_PARA_ALIGNMENT_USED_RIGHT ) - eTHA = SDRTEXTHORZADJUST_RIGHT; - } - break; - } - } - rSet.Put( SdrTextVertAdjustItem( eTVA ) ); - rSet.Put( SdrTextHorzAdjustItem( eTHA ) ); -} - /* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/include/filter/msfilter/svdfppt.hxx b/include/filter/msfilter/svdfppt.hxx index 4cba0ec..c32b9de 100644 --- a/include/filter/msfilter/svdfppt.hxx +++ b/include/filter/msfilter/svdfppt.hxx @@ -573,9 +573,6 @@ protected: SdrOutliner* GetDrawOutliner( SdrTextObj* pSdrText ) const; void SeekOle( SfxObjectShell* pShell, sal_uInt32 nFilterOptions ); - void ApplyTextAnchorAttributes( PPTTextObj& rTextObj, SfxItemSet& rSet ) const; - sal_Bool IsVerticalText() const; - public: SdrPowerPointImport( PowerPointImportParam&, const OUString& rBaseURL ); virtual ~SdrPowerPointImport(); diff --git a/sd/source/filter/ppt/pptin.cxx b/sd/source/filter/ppt/pptin.cxx index 67a5e18..9e3eab5 100644 --- a/sd/source/filter/ppt/pptin.cxx +++ b/sd/source/filter/ppt/pptin.cxx @@ -2391,8 +2391,6 @@ SdrObject* ImplSdPPTImport::ApplyTextObj( PPTTextObj* pTextObj, SdrTextObj* pObj SfxItemSet aSet( pSdrModel->GetItemPool() ); ApplyAttributes( rStCtrl, aSet ); - pPresObj->SetLogicRect(pText->GetLogicRect()); - ApplyTextAnchorAttributes( *pTextObj, aSet ); pPresObj->SetMergedItemSet(aSet); if ( ( eAktPageKind != PPT_NOTEPAGE ) && ( nPlacementId != 0xffffffff ) )
_______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits