summaryrefslogtreecommitdiff
path: root/svx/source/svdraw/svdfmtf.hxx
diff options
context:
space:
mode:
authorArmin Le Grand <alg@apache.org>2012-05-08 08:27:10 +0000
committerCaolán McNamara <caolanm@redhat.com>2013-03-13 13:40:41 +0000
commit684c502ed0a6782fe1b9c7d7cd1911a4a88b543a (patch)
tree25c0e098a8dc307d51fd722e5a7a856ea901609a /svx/source/svdraw/svdfmtf.hxx
parentec8d4b1d23e85cc27f1d08e1b1ed9c18e63f7a3c (diff)
Related: #119125# Added usage of the ClipRegion for dismantling Metafiles
to SdrObjects (ImpSdrGDIMetaFileImport) as good as possible with Metafile usage Conflicts: svx/source/svdraw/svdfmtf.cxx svx/source/svdraw/svdfmtf.hxx Change-Id: I41422696e97f919e618f7e385c68d4ac737a52c1
Diffstat (limited to 'svx/source/svdraw/svdfmtf.hxx')
-rw-r--r--svx/source/svdraw/svdfmtf.hxx20
1 files changed, 14 insertions, 6 deletions
diff --git a/svx/source/svdraw/svdfmtf.hxx b/svx/source/svdraw/svdfmtf.hxx
index 5f31f583e45e..c1e7d5c860f9 100644
--- a/svx/source/svdraw/svdfmtf.hxx
+++ b/svx/source/svdraw/svdfmtf.hxx
@@ -77,7 +77,15 @@ protected:
// to optimize multiple lines into a Polyline
sal_Bool bLastObjWasLine;
+ // clipregion
+ basegfx::B2DPolyPolygon maClip;
+
protected:
+ // check for clip and evtl. fill maClip
+ void checkClip();
+ bool isClip() const;
+
+ // actions
void DoAction(MetaPixelAction & rAct) const;
void DoAction(MetaPointAction & rAct) const;
void DoAction(MetaLineAction & rAct);
@@ -105,13 +113,13 @@ protected:
void DoAction(MetaTextFillColorAction & rAct) { rAct.Execute(&aVD); }
void DoAction(MetaFontAction & rAct) { rAct.Execute(&aVD); bFntDirty=sal_True; }
void DoAction(MetaTextAlignAction & rAct) { rAct.Execute(&aVD); bFntDirty=sal_True; }
- void DoAction(MetaClipRegionAction & rAct) { rAct.Execute(&aVD); }
+ void DoAction(MetaClipRegionAction & rAct) { rAct.Execute(&aVD); checkClip(); }
void DoAction(MetaRasterOpAction & rAct) { rAct.Execute(&aVD); }
- void DoAction(MetaPushAction & rAct) { rAct.Execute(&aVD); }
- void DoAction(MetaPopAction & rAct) { rAct.Execute(&aVD); bFntDirty=sal_True; }
- void DoAction(MetaMoveClipRegionAction & rAct) { rAct.Execute(&aVD); }
- void DoAction(MetaISectRectClipRegionAction& rAct) { rAct.Execute(&aVD); }
- void DoAction(MetaISectRegionClipRegionAction& rAct) { rAct.Execute(&aVD); }
+ void DoAction(MetaPushAction & rAct) { rAct.Execute(&aVD); checkClip(); }
+ void DoAction(MetaPopAction & rAct) { rAct.Execute(&aVD); bFntDirty=sal_True; checkClip(); }
+ void DoAction(MetaMoveClipRegionAction & rAct) { rAct.Execute(&aVD); checkClip(); }
+ void DoAction(MetaISectRectClipRegionAction& rAct) { rAct.Execute(&aVD); checkClip(); }
+ void DoAction(MetaISectRegionClipRegionAction& rAct) { rAct.Execute(&aVD); checkClip(); }
void DoAction(MetaCommentAction& rAct, GDIMetaFile* pMtf);
void ImportText( const Point& rPos, const XubString& rStr, const MetaAction& rAct );