diff options
author | Armin Le Grand <alg@apache.org> | 2013-05-28 10:00:27 +0000 |
---|---|---|
committer | Caolán McNamara <caolanm@redhat.com> | 2013-06-15 16:35:13 +0100 |
commit | 8aa86a712e8d6a97d32b70b5c1f88d2d484cafb2 (patch) | |
tree | 388b57cb91d29c33a7ea10b23d17ff747b5ec9db /vcl/inc/win | |
parent | dba2d0e1e674ddb29c0d0552723c87fd676e041f (diff) |
Related: #i122350# Corrected buffering when alpha changed
(cherry picked from commit 66710ce4a2fd0c4e0f1b376d7c5da35d0ab2056f)
Change-Id: I8c39cb0610210f55218fc0bd9e40e8e2a595cc06
Diffstat (limited to 'vcl/inc/win')
-rw-r--r-- | vcl/inc/win/salbmp.h | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/vcl/inc/win/salbmp.h b/vcl/inc/win/salbmp.h index 4a9d721aa8fc..bedfbaed0948 100644 --- a/vcl/inc/win/salbmp.h +++ b/vcl/inc/win/salbmp.h @@ -39,7 +39,7 @@ typedef boost::shared_ptr< Gdiplus::Bitmap > GdiPlusBmpPtr; class WinSalBitmap : public SalBitmap { private: - friend class GdiPlusBuffer; // allow buffer to remove maGdiPlusBitmap eventually + friend class GdiPlusBuffer; // allow buffer to remove maGdiPlusBitmap and mpAssociatedAlpha eventually Size maSize; HGLOBAL mhDIB; @@ -47,8 +47,14 @@ private: // the buffered evtl. used Gdiplus::Bitmap instance. It is managed by // GdiPlusBuffer. To make this safe, it is only handed out as shared - // pointer; the GdiPlusBuffer may delete the local instance + // pointer; the GdiPlusBuffer may delete the local instance. + // + // mpAssociatedAlpha holds the last WinSalBitmap used to construct an + // evtl. buffered GdiPlusBmp. This is needed since the GdiPlusBmp is a single + // instance and remembered only on the content-WinSalBitmap, not on the + // alpha-WinSalBitmap. GdiPlusBmpPtr maGdiPlusBitmap; + const WinSalBitmap* mpAssociatedAlpha; sal_uInt16 mnBitCount; |