#include "wx/dfb/dfbptr.h"
+class WXDLLIMPEXP_FWD_CORE wxPixelDataBase;
+
wxDFB_DECLARE_INTERFACE(IDirectFBSurface);
//-----------------------------------------------------------------------------
// wxBitmap
//-----------------------------------------------------------------------------
-class WXDLLIMPEXP_CORE wxBitmapHandler: public wxBitmapHandlerBase
-{
- DECLARE_ABSTRACT_CLASS(wxBitmapHandler)
-};
-
-class WXDLLIMPEXP_CORE wxBitmap: public wxBitmapBase
+class WXDLLIMPEXP_CORE wxBitmap : public wxBitmapBase
{
public:
wxBitmap() {}
wxBitmap(const wxImage& image, int depth = -1);
#endif
- bool Ok() const { return IsOk(); }
- bool IsOk() const;
-
bool Create(const wxIDirectFBSurfacePtr& surface);
bool Create(int width, int height, int depth = -1);
virtual wxBitmap GetSubBitmap(const wxRect& rect) const;
- virtual bool SaveFile(const wxString &name, wxBitmapType type, const wxPalette *palette = (wxPalette *) NULL) const;
+ virtual bool SaveFile(const wxString &name, wxBitmapType type,
+ const wxPalette *palette = (wxPalette *) NULL) const;
virtual bool LoadFile(const wxString &name, wxBitmapType type = wxBITMAP_TYPE_RESOURCE);
#if wxUSE_PALETTE
static void InitStandardHandlers();
+ // raw bitmap access support functions
+ void *GetRawData(wxPixelDataBase& data, int bpp);
+ void UngetRawData(wxPixelDataBase& data);
+
+ bool HasAlpha() const;
+
// implementation:
virtual void SetHeight(int height);
virtual void SetWidth(int width);
wxIDirectFBSurfacePtr GetDirectFBSurface() const;
protected:
- // ref counting code
- virtual wxObjectRefData *CreateRefData() const;
- virtual wxObjectRefData *CloneRefData(const wxObjectRefData *data) const;
+ virtual wxGDIRefData *CreateGDIRefData() const;
+ virtual wxGDIRefData *CloneGDIRefData(const wxGDIRefData *data) const;
+
+ bool CreateWithFormat(int width, int height, int dfbFormat);
DECLARE_DYNAMIC_CLASS(wxBitmap)
};