X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/6e711d5c093dcc758e3f1670caf845612ea9fa92..6a5c9b3ff71334ed30bd9ae15425a1ca8ae71174:/include/wx/bitmap.h?ds=sidebyside diff --git a/include/wx/bitmap.h b/include/wx/bitmap.h index aa86bc86b9..7d688bc788 100644 --- a/include/wx/bitmap.h +++ b/include/wx/bitmap.h @@ -5,7 +5,7 @@ // Modified by: // Created: 22.04.01 // RCS-ID: $Id$ -// Copyright: (c) wxWindows team +// Copyright: (c) wxWidgets team // Licence: wxWindows licence /////////////////////////////////////////////////////////////////////////////// @@ -16,10 +16,6 @@ // headers // ---------------------------------------------------------------------------- -#ifdef __GNUG__ - #pragma interface "bitmapbase.h" -#endif - #include "wx/defs.h" #include "wx/object.h" #include "wx/string.h" @@ -32,7 +28,13 @@ class WXDLLEXPORT wxImage; class WXDLLEXPORT wxMask; class WXDLLEXPORT wxPalette; -#if defined(__WXMGL__) || defined(__WXMAC__) +#if defined(__WXMGL__) || \ + defined(__WXDFB__) || \ + defined(__WXMAC__) || \ + defined(__WXGTK__) || \ + defined(__WXCOCOA__) || \ + defined(__WXMOTIF__) || \ + defined(__WXX11__) // Only used by some ports // FIXME -- make all ports (but MSW which uses wxGDIImage) use these base classes @@ -45,9 +47,10 @@ class WXDLLEXPORT wxBitmapHandlerBase : public wxObject { public: wxBitmapHandlerBase() - { - m_type = wxBITMAP_TYPE_INVALID; - } + : m_name() + , m_extension() + , m_type(wxBITMAP_TYPE_INVALID) + { } virtual ~wxBitmapHandlerBase() { } @@ -58,27 +61,25 @@ public: virtual bool SaveFile(const wxBitmap *bitmap, const wxString& name, int type, const wxPalette *palette = NULL) = 0; - void SetName(const wxString& name) { m_name = name; } - void SetExtension(const wxString& ext) { m_extension = ext; } - void SetType(wxBitmapType type) { m_type = type; } - wxString GetName() const { return m_name; } - wxString GetExtension() const { return m_extension; } - wxBitmapType GetType() const { return m_type; } + void SetName(const wxString& name) { m_name = name; } + void SetExtension(const wxString& ext) { m_extension = ext; } + void SetType(wxBitmapType type) { m_type = type; } + wxString GetName() const { return m_name; } + wxString GetExtension() const { return m_extension; } + wxBitmapType GetType() const { return m_type; } -protected: +private: wxString m_name; wxString m_extension; wxBitmapType m_type; +private: DECLARE_ABSTRACT_CLASS(wxBitmapHandlerBase) }; class WXDLLEXPORT wxBitmapBase : public wxGDIObject { public: - wxBitmapBase() : wxGDIObject() {} - virtual ~wxBitmapBase() {} - /* Derived class must implement these: @@ -87,10 +88,8 @@ public: wxBitmap(const char bits[], int width, int height, int depth = 1); wxBitmap(const char **bits); wxBitmap(char **bits); - wxBitmap(const wxBitmap& bmp); wxBitmap(const wxString &filename, wxBitmapType type = wxBITMAP_TYPE_XPM); wxBitmap(const wxImage& image, int depth = -1); - wxBitmap& operator = (const wxBitmap& bmp); bool operator == (const wxBitmap& bmp) const; bool operator != (const wxBitmap& bmp) const; @@ -116,13 +115,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; @@ -153,20 +157,28 @@ protected: }; #endif -#if defined(__WXMSW__) +#if defined(__WXPALMOS__) +#include "wx/palmos/bitmap.h" +#elif defined(__WXMSW__) #include "wx/msw/bitmap.h" #elif defined(__WXMOTIF__) -#include "wx/motif/bitmap.h" -#elif defined(__WXGTK__) +#include "wx/x11/bitmap.h" +#elif defined(__WXGTK20__) #include "wx/gtk/bitmap.h" +#elif defined(__WXGTK__) +#include "wx/gtk1/bitmap.h" +#elif defined(__WXX11__) +#include "wx/x11/bitmap.h" #elif defined(__WXMGL__) #include "wx/mgl/bitmap.h" +#elif defined(__WXDFB__) +#include "wx/dfb/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