// headers
// ----------------------------------------------------------------------------
-#ifdef __GNUG__
+#if defined(__GNUG__) && !defined(__APPLE__)
#pragma interface "bitmapbase.h"
#endif
#include "wx/defs.h"
#include "wx/object.h"
#include "wx/string.h"
-#include "wx/palette.h"
#include "wx/gdiobj.h"
+#include "wx/gdicmn.h" // for wxBitmapType
-class WXDLLEXPORT wxImage;
-class WXDLLEXPORT wxMask;
class WXDLLEXPORT wxBitmap;
class WXDLLEXPORT wxBitmapHandler;
+class WXDLLEXPORT wxImage;
+class WXDLLEXPORT wxMask;
+class WXDLLEXPORT wxPalette;
+
+#if defined(__WXMGL__) || defined(__WXMAC__) || defined(__WXCOCOA__) || defined(__WXMOTIF__) || defined(__WXX11__)
+// Only used by some ports
+// FIXME -- make all ports (but MSW which uses wxGDIImage) use these base classes
// ----------------------------------------------------------------------------
// wxBitmapHandler: class which knows how to create/load/save bitmaps in
{
public:
wxBitmapHandlerBase()
- {
- m_type = wxBITMAP_TYPE_INVALID;
- }
+ : m_name()
+ , m_extension()
+ , m_type(wxBITMAP_TYPE_INVALID)
+ { }
virtual ~wxBitmapHandlerBase() { }
DECLARE_ABSTRACT_CLASS(wxBitmapHandlerBase)
};
-
-
class WXDLLEXPORT wxBitmapBase : public wxGDIObject
{
public:
const wxPalette *palette = (wxPalette *)NULL) const = 0;
virtual bool LoadFile(const wxString &name, wxBitmapType type) = 0;
+ /*
+ If raw bitmap access is supported (see wx/rawbmp.h), the following
+ methods should be implemented:
+
+ virtual bool GetRawData(wxRawBitmapData *data) = 0;
+ virtual void UngetRawData(wxRawBitmapData *data) = 0;
+ */
+
+#if wxUSE_PALETTE
virtual wxPalette *GetPalette() const = 0;
virtual void SetPalette(const wxPalette& palette) = 0;
+#endif // wxUSE_PALETTE
#if WXWIN_COMPATIBILITY
wxPalette *GetColourMap() const { return GetPalette(); }
DECLARE_ABSTRACT_CLASS(wxBitmapBase)
};
-
-
+#endif
#if defined(__WXMSW__)
#include "wx/msw/bitmap.h"
#elif defined(__WXMOTIF__)
-#include "wx/motif/bitmap.h"
+#include "wx/x11/bitmap.h"
#elif defined(__WXGTK__)
#include "wx/gtk/bitmap.h"
+#elif defined(__WXX11__)
+#include "wx/x11/bitmap.h"
#elif defined(__WXMGL__)
#include "wx/mgl/bitmap.h"
-#elif defined(__WXQT__)
-#include "wx/qt/bitmap.h"
#elif defined(__WXMAC__)
#include "wx/mac/bitmap.h"
+#elif defined(__WXCOCOA__)
+#include "wx/cocoa/bitmap.h"
#elif defined(__WXPM__)
#include "wx/os2/bitmap.h"
-#elif defined(__WXSTUBS__)
-#include "wx/stubs/bitmap.h"
#endif
#endif