salbmp.h (5f27b83c) salbmp.h (fa064a0d)
1/**************************************************************
2 *
3 * Licensed to the Apache Software Foundation (ASF) under one
4 * or more contributor license agreements. See the NOTICE file
5 * distributed with this work for additional information
6 * regarding copyright ownership. The ASF licenses this file
7 * to you under the Apache License, Version 2.0 (the
8 * "License"); you may not use this file except in compliance

--- 29 unchanged lines hidden (view full) ---

38class BitmapPalette;
39class SalGraphics;
40namespace Gdiplus { class Bitmap; }
41typedef boost::shared_ptr< Gdiplus::Bitmap > GdiPlusBmpPtr;
42
43class WinSalBitmap : public SalBitmap
44{
45private:
1/**************************************************************
2 *
3 * Licensed to the Apache Software Foundation (ASF) under one
4 * or more contributor license agreements. See the NOTICE file
5 * distributed with this work for additional information
6 * regarding copyright ownership. The ASF licenses this file
7 * to you under the Apache License, Version 2.0 (the
8 * "License"); you may not use this file except in compliance

--- 29 unchanged lines hidden (view full) ---

38class BitmapPalette;
39class SalGraphics;
40namespace Gdiplus { class Bitmap; }
41typedef boost::shared_ptr< Gdiplus::Bitmap > GdiPlusBmpPtr;
42
43class WinSalBitmap : public SalBitmap
44{
45private:
46 friend class GdiPlusBuffer; // allow buffer to remove maGdiPlusBitmap eventually
46 friend class GdiPlusBuffer; // allow buffer to remove maGdiPlusBitmap and mpAssociatedAlpha eventually
47
48 Size maSize;
49 HGLOBAL mhDIB;
50 HBITMAP mhDDB;
51
52 // the buffered evtl. used Gdiplus::Bitmap instance. It is managed by
53 // GdiPlusBuffer. To make this safe, it is only handed out as shared
47
48 Size maSize;
49 HGLOBAL mhDIB;
50 HBITMAP mhDDB;
51
52 // the buffered evtl. used Gdiplus::Bitmap instance. It is managed by
53 // GdiPlusBuffer. To make this safe, it is only handed out as shared
54 // pointer; the GdiPlusBuffer may delete the local instance
54 // pointer; the GdiPlusBuffer may delete the local instance.
55 //
56 // mpAssociatedAlpha holds the last WinSalBitmap used to construct an
57 // evtl. buffered GdiPlusBmp. This is needed since the GdiPlusBmp is a single
58 // instance and remembered only on the content-WinSalBitmap, not on the
59 // alpha-WinSalBitmap.
55 GdiPlusBmpPtr maGdiPlusBitmap;
60 GdiPlusBmpPtr maGdiPlusBitmap;
61 const WinSalBitmap* mpAssociatedAlpha;
56
57 sal_uInt16 mnBitCount;
58
59 Gdiplus::Bitmap* ImplCreateGdiPlusBitmap(const WinSalBitmap& rAlphaSource);
60 Gdiplus::Bitmap* ImplCreateGdiPlusBitmap();
61
62public:
63

--- 35 unchanged lines hidden ---
62
63 sal_uInt16 mnBitCount;
64
65 Gdiplus::Bitmap* ImplCreateGdiPlusBitmap(const WinSalBitmap& rAlphaSource);
66 Gdiplus::Bitmap* ImplCreateGdiPlusBitmap();
67
68public:
69

--- 35 unchanged lines hidden ---