X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/1e6feb95a79834836e88143b15d9f424ebe79621..3684ade82ec6f5fb7ff72341e26060b6ea0793c8:/include/wx/bitmap.h diff --git a/include/wx/bitmap.h b/include/wx/bitmap.h index c65f419f7e..83e48ce737 100644 --- a/include/wx/bitmap.h +++ b/include/wx/bitmap.h @@ -16,20 +16,25 @@ // headers // ---------------------------------------------------------------------------- -#ifdef __GNUG__ +#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA) #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 @@ -40,9 +45,10 @@ class WXDLLEXPORT wxBitmapHandlerBase : public wxObject { public: wxBitmapHandlerBase() - { - m_type = wxBITMAP_TYPE_INVALID; - } + : m_name() + , m_extension() + , m_type(wxBITMAP_TYPE_INVALID) + { } virtual ~wxBitmapHandlerBase() { } @@ -68,8 +74,6 @@ protected: DECLARE_ABSTRACT_CLASS(wxBitmapHandlerBase) }; - - class WXDLLEXPORT wxBitmapBase : public wxGDIObject { public: @@ -113,13 +117,18 @@ 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; - -#if WXWIN_COMPATIBILITY - wxPalette *GetColourMap() const { return GetPalette(); } - void SetColourMap(wxPalette *cmap) { SetPalette(*cmap); }; -#endif // WXWIN_COMPATIBILITY +#endif // wxUSE_PALETTE // copies the contents and mask of the given (colour) icon to the bitmap virtual bool CopyFromIcon(const wxIcon& icon) = 0; @@ -148,25 +157,24 @@ protected: 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