#include "wx/palette.h"
// Bitmap
-class WXDLLEXPORT wxBitmap;
+class WXDLLIMPEXP_FWD_CORE wxBitmap;
class wxBitmapRefData ;
-class WXDLLEXPORT wxBitmapHandler;
-class WXDLLEXPORT wxControl;
-class WXDLLEXPORT wxCursor;
-class WXDLLEXPORT wxDC;
-class WXDLLEXPORT wxIcon;
-class WXDLLEXPORT wxImage;
-class WXDLLEXPORT wxPixelDataBase;
+class WXDLLIMPEXP_FWD_CORE wxBitmapHandler;
+class WXDLLIMPEXP_FWD_CORE wxControl;
+class WXDLLIMPEXP_FWD_CORE wxCursor;
+class WXDLLIMPEXP_FWD_CORE wxDC;
+class WXDLLIMPEXP_FWD_CORE wxIcon;
+class WXDLLIMPEXP_FWD_CORE wxImage;
+class WXDLLIMPEXP_FWD_CORE wxPixelDataBase;
// A mask is a bitmap used for drawing bitmaps
// Internally it is stored as a 8 bit deep memory chunk, 0 = black means the source will be drawn
class WXDLLEXPORT wxMask: public wxObject
{
DECLARE_DYNAMIC_CLASS(wxMask)
- DECLARE_NO_COPY_CLASS(wxMask)
public:
wxMask();
+ // Copy constructor
+ wxMask(const wxMask& mask);
+
// Construct a mask from a bitmap and a colour indicating
// the transparent area
wxMask(const wxBitmap& bitmap, const wxColour& colour);
{
DECLARE_DYNAMIC_CLASS(wxBitmap)
- friend class WXDLLEXPORT wxBitmapHandler;
+ friend class WXDLLIMPEXP_FWD_CORE wxBitmapHandler;
public:
wxBitmap(); // Platform-specific
void SetDepth(int d);
void SetOk(bool isOk);
-#if WXWIN_COMPATIBILITY_2_4
- // these functions do nothing and are only there for backwards
- // compatibility
- wxDEPRECATED( int GetQuality() const );
- wxDEPRECATED( void SetQuality(int quality) );
-#endif // WXWIN_COMPATIBILITY_2_4
-
#if wxUSE_PALETTE
wxPalette* GetPalette() const;
void SetPalette(const wxPalette& palette);
wxMask *GetMask() const;
void SetMask(wxMask *mask) ;
- inline bool operator == (const wxBitmap& bitmap) const { return m_refData == bitmap.m_refData; }
- inline bool operator != (const wxBitmap& bitmap) const { return m_refData != bitmap.m_refData; }
-
static void InitStandardHandlers();
// raw bitmap access support functions, for internal use only
// returns the 'native' implementation, a GWorldPtr for the content and one for the mask
WXHBITMAP GetHBITMAP( WXHBITMAP * mask = NULL ) const;
-#ifdef __WXMAC_OSX__
// returns a CGImageRef which must released after usage with CGImageRelease
WXCGIMAGEREF CGImageCreate() const ;
-#endif
+
// get read only access to the underlying buffer
void *GetRawAccess() const ;
// brackets to the underlying OS structure for read/write access
// makes sure that no cached images will be constructed until terminated
void *BeginRawAccess() ;
void EndRawAccess() ;
+
+protected:
+ // ref counting code
+ virtual wxObjectRefData *CreateRefData() const;
+ virtual wxObjectRefData *CloneRefData(const wxObjectRefData *data) const;
};
#endif
// _WX_BITMAP_H_