typedef struct _GdkPixbuf GdkPixbuf;
#endif
+class WXDLLEXPORT wxPixelDataBase;
+
//-----------------------------------------------------------------------------
// classes
//-----------------------------------------------------------------------------
wxPalette *GetColourMap() const { return GetPalette(); };
#endif // wxUSE_PALETTE
- static void InitStandardHandlers() { }
+ static void InitStandardHandlers();
// implementation
// --------------
// Basically, this corresponds to Win32 StretchBlt()
wxBitmap Rescale( int clipx, int clipy, int clipwidth, int clipheight, int width, int height );
+
+ // raw bitmap access support functions
+ void *GetRawData(wxPixelDataBase& data, int bpp);
+ void UngetRawData(wxPixelDataBase& data);
+
+ bool HasAlpha() const;
+ void UseAlpha();
+
protected:
bool CreateFromXpm(const char **bits);
bool CreateFromImage(const wxImage& image, int depth);
friend class wxMemoryDC;
#endif
-
+ friend class wxBitmapHandler;
+
+private:
DECLARE_DYNAMIC_CLASS(wxBitmap)
};
+//-----------------------------------------------------------------------------
+// wxBitmapHandler
+//-----------------------------------------------------------------------------
+
+class wxBitmapHandler: public wxBitmapHandlerBase
+{
+public:
+ wxBitmapHandler() { }
+ virtual ~wxBitmapHandler();
+
+ virtual bool Create(wxBitmap *bitmap, void *data, long flags, int width, int height, int depth = 1);
+ virtual bool LoadFile(wxBitmap *bitmap, const wxString& name, long flags,
+ int desiredWidth, int desiredHeight);
+ virtual bool SaveFile(const wxBitmap *bitmap, const wxString& name, int type, const wxPalette *palette = NULL);
+
+private:
+ DECLARE_DYNAMIC_CLASS(wxBitmapHandler)
+};
+
+
#endif // __GTKBITMAPH__