LibreOffice Module svx (master) 1
Public Member Functions | Private Member Functions | Private Attributes | List of all members
ImpSdrGDIMetaFileImport Class Referencefinal

#include <svdfmtf.hxx>

Collaboration diagram for ImpSdrGDIMetaFileImport:
[legend]

Public Member Functions

 ImpSdrGDIMetaFileImport (SdrModel &rModel, SdrLayerID nLay, const tools::Rectangle &rRect)
 
size_t DoImport (const GDIMetaFile &rMtf, SdrObjList &rDestList, size_t nInsPos, SvdProgressInfo *pProgrInfo=nullptr)
 

Private Member Functions

void checkClip ()
 
bool isClip () const
 
void DoAction (MetaLineAction const &rAct)
 
void DoAction (MetaRectAction const &rAct)
 
void DoAction (MetaRoundRectAction const &rAct)
 
void DoAction (MetaEllipseAction const &rAct)
 
void DoAction (MetaArcAction const &rAct)
 
void DoAction (MetaPieAction const &rAct)
 
void DoAction (MetaChordAction const &rAct)
 
void DoAction (MetaPolyLineAction const &rAct)
 
void DoAction (MetaPolygonAction const &rAct)
 
void DoAction (MetaPolyPolygonAction const &rAct)
 
void DoAction (MetaTextAction const &rAct)
 
void DoAction (MetaTextArrayAction const &rAct)
 
void DoAction (MetaStretchTextAction const &rAct)
 
void DoAction (MetaBmpAction const &rAct)
 
void DoAction (MetaBmpScaleAction const &rAct)
 
void DoAction (MetaBmpExAction const &rAct)
 
void DoAction (MetaBmpExScaleAction const &rAct)
 
void DoAction (MetaHatchAction const &rAct)
 
void DoAction (MetaLineColorAction &rAct)
 
void DoAction (MetaMapModeAction &rAct)
 
void DoAction (MetaFillColorAction &rAct)
 
void DoAction (MetaTextColorAction &rAct)
 
void DoAction (MetaTextFillColorAction &rAct)
 
void DoAction (MetaFontAction &rAct)
 
void DoAction (MetaTextAlignAction &rAct)
 
void DoAction (MetaClipRegionAction &rAct)
 
void DoAction (MetaRasterOpAction &rAct)
 
void DoAction (MetaPushAction &rAct)
 
void DoAction (MetaPopAction &rAct)
 
void DoAction (MetaMoveClipRegionAction &rAct)
 
void DoAction (MetaISectRectClipRegionAction &rAct)
 
void DoAction (MetaISectRegionClipRegionAction &rAct)
 
void DoAction (MetaCommentAction const &rAct, GDIMetaFile const &rMtf, sal_uLong &a)
 
void DoAction (MetaTextRectAction const &rAct)
 
void DoAction (MetaBmpScalePartAction const &rAct)
 
void DoAction (MetaBmpExScalePartAction const &rAct)
 
void DoAction (MetaMaskAction const &rAct)
 
void DoAction (MetaMaskScaleAction const &rAct)
 
void DoAction (MetaMaskScalePartAction const &rAct)
 
void DoAction (MetaGradientAction const &rAct)
 
void DoAction (MetaTransparentAction const &rAct)
 
void DoAction (MetaRefPointAction &rAct)
 
void DoAction (MetaTextLineColorAction &rAct)
 
void DoAction (MetaFloatTransparentAction const &rAct)
 
void DoAction (MetaGradientExAction const &rAct)
 
void DoAction (MetaLayoutModeAction &rAct)
 
void DoAction (MetaTextLanguageAction &rAct)
 
void DoAction (MetaOverlineColorAction &rAct)
 
void ImportText (const Point &rPos, const OUString &rStr, const MetaAction &rAct)
 
void SetAttributes (SdrObject *pObj, bool bForceTextAttr=false)
 
void InsertObj (SdrObject *pObj, bool bScale=true)
 
void MapScaling ()
 
bool CheckLastLineMerge (const basegfx::B2DPolygon &rSrcPoly)
 
bool CheckLastPolyLineAndFillMerge (const basegfx::B2DPolyPolygon &rPolyPolygon)
 
void DoLoopActions (GDIMetaFile const &rMtf, SvdProgressInfo *pProgrInfo, sal_uInt32 *pActionsToReport)
 
 ImpSdrGDIMetaFileImport (const ImpSdrGDIMetaFileImport &)=delete
 
ImpSdrGDIMetaFileImportoperator= (const ImpSdrGDIMetaFileImport &)=delete
 

Private Attributes

::std::vector< rtl::Reference< SdrObject > > maTmpList
 
ScopedVclPtr< VirtualDevicempVD
 
tools::Rectangle maScaleRect
 
size_t mnMapScalingOfs
 
std::unique_ptr< SfxItemSetmpLineAttr
 
std::unique_ptr< SfxItemSetmpFillAttr
 
std::unique_ptr< SfxItemSetmpTextAttr
 
SdrModelmpModel
 
SdrLayerID mnLayer
 
Color maOldLineColor
 
sal_Int32 mnLineWidth
 
basegfx::B2DLineJoin maLineJoin
 
css::drawing::LineCap maLineCap
 
XDash maDash
 
bool mbMov
 
bool mbSize
 
Point maOfs
 
double mfScaleX
 
double mfScaleY
 
Fraction maScaleX
 
Fraction maScaleY
 
bool mbFntDirty
 
bool mbLastObjWasPolyWithoutLine
 
bool mbNoLine
 
bool mbNoFill
 
bool mbLastObjWasLine
 
basegfx::B2DPolyPolygon maClip
 

Detailed Description

Definition at line 46 of file svdfmtf.hxx.

Constructor & Destructor Documentation

◆ ImpSdrGDIMetaFileImport() [1/2]

ImpSdrGDIMetaFileImport::ImpSdrGDIMetaFileImport ( const ImpSdrGDIMetaFileImport )
privatedelete

◆ ImpSdrGDIMetaFileImport() [2/2]

ImpSdrGDIMetaFileImport::ImpSdrGDIMetaFileImport ( SdrModel rModel,
SdrLayerID  nLay,
const tools::Rectangle rRect 
)

Member Function Documentation

◆ checkClip()

void ImpSdrGDIMetaFileImport::checkClip ( )
private

◆ CheckLastLineMerge()

bool ImpSdrGDIMetaFileImport::CheckLastLineMerge ( const basegfx::B2DPolygon rSrcPoly)
private

◆ CheckLastPolyLineAndFillMerge()

bool ImpSdrGDIMetaFileImport::CheckLastPolyLineAndFillMerge ( const basegfx::B2DPolyPolygon rPolyPolygon)
private

◆ DoAction() [1/48]

void ImpSdrGDIMetaFileImport::DoAction ( MetaArcAction const &  rAct)
private

◆ DoAction() [2/48]

void ImpSdrGDIMetaFileImport::DoAction ( MetaBmpAction const &  rAct)
private

◆ DoAction() [3/48]

void ImpSdrGDIMetaFileImport::DoAction ( MetaBmpExAction const &  rAct)
private

◆ DoAction() [4/48]

void ImpSdrGDIMetaFileImport::DoAction ( MetaBmpExScaleAction const &  rAct)
private

◆ DoAction() [5/48]

void ImpSdrGDIMetaFileImport::DoAction ( MetaBmpExScalePartAction const &  rAct)
private

◆ DoAction() [6/48]

void ImpSdrGDIMetaFileImport::DoAction ( MetaBmpScaleAction const &  rAct)
private

◆ DoAction() [7/48]

void ImpSdrGDIMetaFileImport::DoAction ( MetaBmpScalePartAction const &  rAct)
private

◆ DoAction() [8/48]

void ImpSdrGDIMetaFileImport::DoAction ( MetaChordAction const &  rAct)
private

◆ DoAction() [9/48]

void ImpSdrGDIMetaFileImport::DoAction ( MetaClipRegionAction rAct)
inlineprivate

Definition at line 114 of file svdfmtf.hxx.

References checkClip(), MetaClipRegionAction::Execute(), and mpVD.

◆ DoAction() [10/48]

void ImpSdrGDIMetaFileImport::DoAction ( MetaCommentAction const &  rAct,
GDIMetaFile const &  rMtf,
sal_uLong a 
)
private

◆ DoAction() [11/48]

void ImpSdrGDIMetaFileImport::DoAction ( MetaEllipseAction const &  rAct)
private

Definition at line 723 of file svdfmtf.cxx.

References Full, MetaEllipseAction::GetRect(), InsertObj(), mpModel, and SetAttributes().

◆ DoAction() [12/48]

void ImpSdrGDIMetaFileImport::DoAction ( MetaFillColorAction rAct)
inlineprivate

Definition at line 109 of file svdfmtf.hxx.

References MetaFillColorAction::Execute(), and mpVD.

◆ DoAction() [13/48]

void ImpSdrGDIMetaFileImport::DoAction ( MetaFloatTransparentAction const &  rAct)
private

◆ DoAction() [14/48]

void ImpSdrGDIMetaFileImport::DoAction ( MetaFontAction rAct)
inlineprivate

Definition at line 112 of file svdfmtf.hxx.

References MetaFontAction::Execute(), mbFntDirty, and mpVD.

◆ DoAction() [15/48]

void ImpSdrGDIMetaFileImport::DoAction ( MetaGradientAction const &  rAct)
private

◆ DoAction() [16/48]

void ImpSdrGDIMetaFileImport::DoAction ( MetaGradientExAction const &  rAct)
private

◆ DoAction() [17/48]

void ImpSdrGDIMetaFileImport::DoAction ( MetaHatchAction const &  rAct)
private

◆ DoAction() [18/48]

void ImpSdrGDIMetaFileImport::DoAction ( MetaISectRectClipRegionAction rAct)
inlineprivate

Definition at line 119 of file svdfmtf.hxx.

References checkClip(), MetaISectRectClipRegionAction::Execute(), and mpVD.

◆ DoAction() [19/48]

void ImpSdrGDIMetaFileImport::DoAction ( MetaISectRegionClipRegionAction rAct)
inlineprivate

Definition at line 120 of file svdfmtf.hxx.

References checkClip(), MetaISectRegionClipRegionAction::Execute(), and mpVD.

◆ DoAction() [20/48]

void ImpSdrGDIMetaFileImport::DoAction ( MetaLayoutModeAction rAct)
inlineprivate

Definition at line 139 of file svdfmtf.hxx.

References MetaLayoutModeAction::Execute(), mbFntDirty, and mpVD.

◆ DoAction() [21/48]

void ImpSdrGDIMetaFileImport::DoAction ( MetaLineAction const &  rAct)
private

◆ DoAction() [22/48]

void ImpSdrGDIMetaFileImport::DoAction ( MetaLineColorAction rAct)
private

Definition at line 1188 of file svdfmtf.cxx.

References MetaLineColorAction::Execute(), and mpVD.

◆ DoAction() [23/48]

void ImpSdrGDIMetaFileImport::DoAction ( MetaMapModeAction rAct)
private

◆ DoAction() [24/48]

void ImpSdrGDIMetaFileImport::DoAction ( MetaMaskAction const &  rAct)
private

◆ DoAction() [25/48]

void ImpSdrGDIMetaFileImport::DoAction ( MetaMaskScaleAction const &  rAct)
private

◆ DoAction() [26/48]

void ImpSdrGDIMetaFileImport::DoAction ( MetaMaskScalePartAction const &  rAct)
private

◆ DoAction() [27/48]

void ImpSdrGDIMetaFileImport::DoAction ( MetaMoveClipRegionAction rAct)
inlineprivate

Definition at line 118 of file svdfmtf.hxx.

References checkClip(), MetaMoveClipRegionAction::Execute(), and mpVD.

◆ DoAction() [28/48]

void ImpSdrGDIMetaFileImport::DoAction ( MetaOverlineColorAction rAct)
inlineprivate

Definition at line 141 of file svdfmtf.hxx.

References MetaOverlineColorAction::Execute(), mbFntDirty, and mpVD.

◆ DoAction() [29/48]

void ImpSdrGDIMetaFileImport::DoAction ( MetaPieAction const &  rAct)
private

◆ DoAction() [30/48]

void ImpSdrGDIMetaFileImport::DoAction ( MetaPolygonAction const &  rAct)
private

◆ DoAction() [31/48]

void ImpSdrGDIMetaFileImport::DoAction ( MetaPolyLineAction const &  rAct)
private

◆ DoAction() [32/48]

void ImpSdrGDIMetaFileImport::DoAction ( MetaPolyPolygonAction const &  rAct)
private

◆ DoAction() [33/48]

void ImpSdrGDIMetaFileImport::DoAction ( MetaPopAction rAct)
inlineprivate

Definition at line 117 of file svdfmtf.hxx.

References checkClip(), MetaPopAction::Execute(), mbFntDirty, and mpVD.

◆ DoAction() [34/48]

void ImpSdrGDIMetaFileImport::DoAction ( MetaPushAction rAct)
inlineprivate

Definition at line 116 of file svdfmtf.hxx.

References checkClip(), MetaPushAction::Execute(), and mpVD.

◆ DoAction() [35/48]

void ImpSdrGDIMetaFileImport::DoAction ( MetaRasterOpAction rAct)
inlineprivate

Definition at line 115 of file svdfmtf.hxx.

References MetaRasterOpAction::Execute(), and mpVD.

◆ DoAction() [36/48]

void ImpSdrGDIMetaFileImport::DoAction ( MetaRectAction const &  rAct)
private

Definition at line 699 of file svdfmtf.cxx.

References MetaRectAction::GetRect(), InsertObj(), mpModel, and SetAttributes().

◆ DoAction() [37/48]

void ImpSdrGDIMetaFileImport::DoAction ( MetaRefPointAction rAct)
inlineprivate

Definition at line 135 of file svdfmtf.hxx.

References MetaRefPointAction::Execute(), and mpVD.

◆ DoAction() [38/48]

void ImpSdrGDIMetaFileImport::DoAction ( MetaRoundRectAction const &  rAct)
private

◆ DoAction() [39/48]

void ImpSdrGDIMetaFileImport::DoAction ( MetaStretchTextAction const &  rAct)
private

◆ DoAction() [40/48]

void ImpSdrGDIMetaFileImport::DoAction ( MetaTextAction const &  rAct)
private

◆ DoAction() [41/48]

void ImpSdrGDIMetaFileImport::DoAction ( MetaTextAlignAction rAct)
inlineprivate

Definition at line 113 of file svdfmtf.hxx.

References MetaTextAlignAction::Execute(), mbFntDirty, and mpVD.

◆ DoAction() [42/48]

void ImpSdrGDIMetaFileImport::DoAction ( MetaTextArrayAction const &  rAct)
private

◆ DoAction() [43/48]

void ImpSdrGDIMetaFileImport::DoAction ( MetaTextColorAction rAct)
inlineprivate

Definition at line 110 of file svdfmtf.hxx.

References MetaTextColorAction::Execute(), and mpVD.

◆ DoAction() [44/48]

void ImpSdrGDIMetaFileImport::DoAction ( MetaTextFillColorAction rAct)
inlineprivate

Definition at line 111 of file svdfmtf.hxx.

References MetaTextFillColorAction::Execute(), and mpVD.

◆ DoAction() [45/48]

void ImpSdrGDIMetaFileImport::DoAction ( MetaTextLanguageAction rAct)
inlineprivate

Definition at line 140 of file svdfmtf.hxx.

References MetaTextLanguageAction::Execute(), mbFntDirty, and mpVD.

◆ DoAction() [46/48]

void ImpSdrGDIMetaFileImport::DoAction ( MetaTextLineColorAction rAct)
inlineprivate

Definition at line 136 of file svdfmtf.hxx.

References MetaTextLineColorAction::Execute(), mbFntDirty, and mpVD.

◆ DoAction() [47/48]

void ImpSdrGDIMetaFileImport::DoAction ( MetaTextRectAction const &  rAct)
private

◆ DoAction() [48/48]

void ImpSdrGDIMetaFileImport::DoAction ( MetaTransparentAction const &  rAct)
private

◆ DoImport()

size_t ImpSdrGDIMetaFileImport::DoImport ( const GDIMetaFile rMtf,
SdrObjList rDestList,
size_t  nInsPos,
SvdProgressInfo pProgrInfo = nullptr 
)

◆ DoLoopActions()

void ImpSdrGDIMetaFileImport::DoLoopActions ( GDIMetaFile const &  rMtf,
SvdProgressInfo pProgrInfo,
sal_uInt32 *  pActionsToReport 
)
private

◆ ImportText()

void ImpSdrGDIMetaFileImport::ImportText ( const Point rPos,
const OUString &  rStr,
const MetaAction rAct 
)
private

◆ InsertObj()

void ImpSdrGDIMetaFileImport::InsertObj ( SdrObject pObj,
bool  bScale = true 
)
private

◆ isClip()

bool ImpSdrGDIMetaFileImport::isClip ( ) const
private

◆ MapScaling()

void ImpSdrGDIMetaFileImport::MapScaling ( )
private

◆ operator=()

ImpSdrGDIMetaFileImport & ImpSdrGDIMetaFileImport::operator= ( const ImpSdrGDIMetaFileImport )
privatedelete

◆ SetAttributes()

void ImpSdrGDIMetaFileImport::SetAttributes ( SdrObject pObj,
bool  bForceTextAttr = false 
)
private

Member Data Documentation

◆ maClip

basegfx::B2DPolyPolygon ImpSdrGDIMetaFileImport::maClip
private

Definition at line 82 of file svdfmtf.hxx.

Referenced by checkClip(), InsertObj(), and isClip().

◆ maDash

XDash ImpSdrGDIMetaFileImport::maDash
private

Definition at line 61 of file svdfmtf.hxx.

Referenced by DoAction(), and SetAttributes().

◆ maLineCap

css::drawing::LineCap ImpSdrGDIMetaFileImport::maLineCap
private

Definition at line 60 of file svdfmtf.hxx.

Referenced by DoAction(), and SetAttributes().

◆ maLineJoin

basegfx::B2DLineJoin ImpSdrGDIMetaFileImport::maLineJoin
private

Definition at line 59 of file svdfmtf.hxx.

Referenced by DoAction(), and SetAttributes().

◆ maOfs

Point ImpSdrGDIMetaFileImport::maOfs
private

Definition at line 65 of file svdfmtf.hxx.

Referenced by checkClip(), DoAction(), DoImport(), ImportText(), and InsertObj().

◆ maOldLineColor

Color ImpSdrGDIMetaFileImport::maOldLineColor
private

Definition at line 57 of file svdfmtf.hxx.

Referenced by CheckLastLineMerge(), ImpSdrGDIMetaFileImport(), and SetAttributes().

◆ maScaleRect

tools::Rectangle ImpSdrGDIMetaFileImport::maScaleRect
private

Definition at line 50 of file svdfmtf.hxx.

Referenced by DoImport(), and InsertObj().

◆ maScaleX

Fraction ImpSdrGDIMetaFileImport::maScaleX
private

Definition at line 68 of file svdfmtf.hxx.

Referenced by DoImport(), and InsertObj().

◆ maScaleY

Fraction ImpSdrGDIMetaFileImport::maScaleY
private

Definition at line 69 of file svdfmtf.hxx.

Referenced by DoImport(), and InsertObj().

◆ maTmpList

::std::vector< rtl::Reference<SdrObject> > ImpSdrGDIMetaFileImport::maTmpList
private

◆ mbFntDirty

bool ImpSdrGDIMetaFileImport::mbFntDirty
private

Definition at line 71 of file svdfmtf.hxx.

Referenced by DoAction(), and SetAttributes().

◆ mbLastObjWasLine

bool ImpSdrGDIMetaFileImport::mbLastObjWasLine
private

Definition at line 79 of file svdfmtf.hxx.

Referenced by CheckLastLineMerge(), DoAction(), and InsertObj().

◆ mbLastObjWasPolyWithoutLine

bool ImpSdrGDIMetaFileImport::mbLastObjWasPolyWithoutLine
private

Definition at line 74 of file svdfmtf.hxx.

Referenced by CheckLastPolyLineAndFillMerge(), DoAction(), and InsertObj().

◆ mbMov

bool ImpSdrGDIMetaFileImport::mbMov
private

Definition at line 63 of file svdfmtf.hxx.

Referenced by DoImport(), and InsertObj().

◆ mbNoFill

bool ImpSdrGDIMetaFileImport::mbNoFill
private

Definition at line 76 of file svdfmtf.hxx.

Referenced by CheckLastPolyLineAndFillMerge(), and SetAttributes().

◆ mbNoLine

bool ImpSdrGDIMetaFileImport::mbNoLine
private

Definition at line 75 of file svdfmtf.hxx.

Referenced by CheckLastPolyLineAndFillMerge(), InsertObj(), and SetAttributes().

◆ mbSize

bool ImpSdrGDIMetaFileImport::mbSize
private

Definition at line 64 of file svdfmtf.hxx.

Referenced by DoImport(), and InsertObj().

◆ mfScaleX

double ImpSdrGDIMetaFileImport::mfScaleX
private

Definition at line 66 of file svdfmtf.hxx.

Referenced by checkClip(), DoAction(), DoImport(), and ImportText().

◆ mfScaleY

double ImpSdrGDIMetaFileImport::mfScaleY
private

Definition at line 67 of file svdfmtf.hxx.

Referenced by checkClip(), DoAction(), DoImport(), ImportText(), and SetAttributes().

◆ mnLayer

SdrLayerID ImpSdrGDIMetaFileImport::mnLayer
private

Definition at line 56 of file svdfmtf.hxx.

Referenced by ImportText(), and SetAttributes().

◆ mnLineWidth

sal_Int32 ImpSdrGDIMetaFileImport::mnLineWidth
private

Definition at line 58 of file svdfmtf.hxx.

Referenced by DoAction(), and SetAttributes().

◆ mnMapScalingOfs

size_t ImpSdrGDIMetaFileImport::mnMapScalingOfs
private

Definition at line 51 of file svdfmtf.hxx.

Referenced by MapScaling().

◆ mpFillAttr

std::unique_ptr<SfxItemSet> ImpSdrGDIMetaFileImport::mpFillAttr
private

Definition at line 53 of file svdfmtf.hxx.

Referenced by ImportText(), ImpSdrGDIMetaFileImport(), and SetAttributes().

◆ mpLineAttr

std::unique_ptr<SfxItemSet> ImpSdrGDIMetaFileImport::mpLineAttr
private

◆ mpModel

SdrModel* ImpSdrGDIMetaFileImport::mpModel
private

Definition at line 55 of file svdfmtf.hxx.

Referenced by DoAction(), ImportText(), and InsertObj().

◆ mpTextAttr

std::unique_ptr<SfxItemSet> ImpSdrGDIMetaFileImport::mpTextAttr
private

Definition at line 54 of file svdfmtf.hxx.

Referenced by ImpSdrGDIMetaFileImport(), and SetAttributes().

◆ mpVD

ScopedVclPtr<VirtualDevice> ImpSdrGDIMetaFileImport::mpVD
private

The documentation for this class was generated from the following files: