X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/af49c4b8a2d3553e733e71c7dd3911881f4c1a2a..fe8f794343fc22d3da1e6f003fdd754d2bdf9339:/include/wx/mac/bitmap.h?ds=inline diff --git a/include/wx/mac/bitmap.h b/include/wx/mac/bitmap.h index dae1493b87..27a729ccc9 100644 --- a/include/wx/mac/bitmap.h +++ b/include/wx/mac/bitmap.h @@ -1,12 +1,12 @@ ///////////////////////////////////////////////////////////////////////////// // Name: bitmap.h // Purpose: wxBitmap class -// Author: AUTHOR +// Author: Stefan Csomor // Modified by: -// Created: ??/??/98 +// Created: 1998-01-01 // RCS-ID: $Id$ -// Copyright: (c) AUTHOR -// Licence: wxWindows licence +// Copyright: (c) Stefan Csomor +// Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// #ifndef _WX_BITMAP_H_ @@ -19,15 +19,17 @@ #include "wx/palette.h" // Bitmap -class WXDLLEXPORT wxDC; -class WXDLLEXPORT wxControl; class WXDLLEXPORT wxBitmap; class WXDLLEXPORT wxBitmapHandler; -class WXDLLEXPORT wxIcon; +class WXDLLEXPORT wxControl; class WXDLLEXPORT wxCursor; +class WXDLLEXPORT wxDC; +class WXDLLEXPORT wxIcon; class WXDLLEXPORT wxImage; +class WXDLLEXPORT wxPixelDataBase; -// A mask is a mono bitmap used for drawing bitmaps +// A mask is a bitmap used for drawing bitmaps +// it can be a monochrome bitmap or a multi-bit bitmap which transfers to alpha channels // transparently. class WXDLLEXPORT wxMask: public wxObject { @@ -58,8 +60,11 @@ public: bool PointMasked(int x, int y); inline WXHBITMAP GetMaskBitmap() const { return m_maskBitmap; } inline void SetMaskBitmap(WXHBITMAP bmp) { m_maskBitmap = bmp; } + int GetDepth() const { return m_depth ; } + void SetDepth( int depth ) { m_depth = depth ; } protected: WXHBITMAP m_maskBitmap; + int m_depth ; }; enum { kMacBitmapTypeUnknownType , kMacBitmapTypeGrafWorld, kMacBitmapTypePict , kMacBitmapTypeIcon } ; @@ -84,11 +89,12 @@ public: wxPalette m_bitmapPalette; int m_quality; - int m_bitmapType ; - WXHMETAFILE m_hPict ; + int m_bitmapType ; + WXHMETAFILE m_hPict ; WXHBITMAP m_hBitmap; WXHICON m_hIcon ; wxMask * m_bitmapMask; // Optional mask + bool m_hasAlpha; }; #define M_BITMAPDATA ((wxBitmapRefData *)m_refData) @@ -193,16 +199,21 @@ public: inline bool operator != (const wxBitmap& bitmap) const { return m_refData != bitmap.m_refData; } static void InitStandardHandlers(); -protected: - // TODO: Implementation + // raw bitmap access support functions, for internal use only + void *GetRawData(wxPixelDataBase& data, int bpp); + void UngetRawData(wxPixelDataBase& data); + + void UseAlpha(); + public: - void SetHBITMAP(WXHBITMAP bmp); WXHBITMAP GetHBITMAP() const; - void SetHICON(WXHICON ico); inline WXHICON GetHICON() const { return (M_BITMAPDATA ? M_BITMAPDATA->m_hIcon : 0); } - - WXHMETAFILE GetPict() const; + WXHMETAFILE GetPict(bool *created = NULL ) const; + + void SetHBITMAP(WXHBITMAP bmp); + void SetHICON(WXHICON ico); + void SetPict( WXHMETAFILE pict ) ; bool FreeResource(bool force = FALSE); };