summaryrefslogtreecommitdiff
path: root/vcl
diff options
context:
space:
mode:
authorRadek Doulik <rodo@novell.com>2010-09-15 11:31:43 +0200
committerRadek Doulik <rodo@novell.com>2010-09-15 17:54:14 +0200
commitf59b7f548242b6079b9af303cc74b672d94e74db (patch)
tree4bca3a832ee89863829eea0c4366672b5deff268 /vcl
parenta529db20d67dd8ac6979865a86f814b62661f0fc (diff)
emf+-use-canvas-only-for-emf+.diff: emf+ import
- use canvas rendering only for emf+
Diffstat (limited to 'vcl')
-rw-r--r--vcl/inc/vcl/gdimtf.hxx3
-rw-r--r--vcl/source/gdi/gdimtf.cxx14
2 files changed, 14 insertions, 3 deletions
diff --git a/vcl/inc/vcl/gdimtf.hxx b/vcl/inc/vcl/gdimtf.hxx
index 5660bb139f3b..e1eb25d4b46a 100644
--- a/vcl/inc/vcl/gdimtf.hxx
+++ b/vcl/inc/vcl/gdimtf.hxx
@@ -107,6 +107,7 @@ private:
ImpLabelList* pLabelList;
BOOL bPause;
BOOL bRecord;
+ BOOL bUseCanvas;
//#if 0 // _SOLAR__PRIVATE
@@ -246,6 +247,8 @@ public:
friend VCL_DLLPUBLIC SvStream& operator<<( SvStream& rOStm, const GDIMetaFile& rGDIMetaFile );
BOOL CreateThumbnail( sal_uInt32 nMaximumExtent, BitmapEx& rBmpEx, const BitmapEx* pOverlay = NULL, const Rectangle* pOverlayRect = NULL ) const;
+
+ void UseCanvas( BOOL _bUseCanvas );
};
#endif // _SV_GDIMTF_HXX
diff --git a/vcl/source/gdi/gdimtf.cxx b/vcl/source/gdi/gdimtf.cxx
index 8f0f7abfdf19..b811fbc18a3a 100644
--- a/vcl/source/gdi/gdimtf.cxx
+++ b/vcl/source/gdi/gdimtf.cxx
@@ -212,7 +212,8 @@ GDIMetaFile::GDIMetaFile() :
pOutDev ( NULL ),
pLabelList ( NULL ),
bPause ( FALSE ),
- bRecord ( FALSE )
+ bRecord ( FALSE ),
+ bUseCanvas ( FALSE )
{
}
@@ -227,7 +228,8 @@ GDIMetaFile::GDIMetaFile( const GDIMetaFile& rMtf ) :
pNext ( rMtf.pNext ),
pOutDev ( NULL ),
bPause ( FALSE ),
- bRecord ( FALSE )
+ bRecord ( FALSE ),
+ bUseCanvas ( rMtf.bUseCanvas )
{
// RefCount der MetaActions erhoehen
for( void* pAct = First(); pAct; pAct = Next() )
@@ -281,6 +283,7 @@ GDIMetaFile& GDIMetaFile::operator=( const GDIMetaFile& rMtf )
pOutDev = NULL;
bPause = FALSE;
bRecord = FALSE;
+ bUseCanvas = rMtf.bUseCanvas;
if( rMtf.bRecord )
{
@@ -568,7 +571,7 @@ void GDIMetaFile::Play( OutputDevice* pOut, const Point& rPos,
{
GDIMetaFile* pMtf = pOut->GetConnectMetaFile();
- if( !pMtf && ImplPlayWithRenderer( pOut, rPos, aDestSize ) )
+ if( bUseCanvas && !pMtf && ImplPlayWithRenderer( pOut, rPos, aDestSize ) )
return;
Size aTmpPrefSize( pOut->LogicToPixel( GetPrefSize(), aDrawMap ) );
@@ -3117,3 +3120,8 @@ BOOL GDIMetaFile::CreateThumbnail( sal_uInt32 nMaximumExtent,
return !rBmpEx.IsEmpty();
}
+
+void GDIMetaFile::UseCanvas( BOOL _bUseCanvas )
+{
+ bUseCanvas = _bUseCanvas;
+}