reorganized wxBitmap/wxBitmapHandler classes to use wxBitmapType instead of "long...
authorFrancesco Montorsi <f18m_cpp217828@yahoo.it>
Tue, 25 Mar 2008 20:31:48 +0000 (20:31 +0000)
committerFrancesco Montorsi <f18m_cpp217828@yahoo.it>
Tue, 25 Mar 2008 20:31:48 +0000 (20:31 +0000)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@52820 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

22 files changed:
include/wx/bitmap.h
include/wx/cocoa/bitmap.h
include/wx/dfb/bitmap.h
include/wx/gtk/bitmap.h
include/wx/gtk1/bitmap.h
include/wx/mac/carbon/bitmap.h
include/wx/mgl/bitmap.h
include/wx/msw/bitmap.h
include/wx/msw/gdiimage.h
include/wx/msw/icon.h
include/wx/os2/bitmap.h
include/wx/x11/bitmap.h
src/common/bmpbase.cpp
src/gtk/bitmap.cpp
src/gtk1/bitmap.cpp
src/mac/carbon/bitmap.cpp
src/mgl/bitmap.cpp
src/msw/bitmap.cpp
src/msw/gdiimage.cpp
src/msw/icon.cpp
src/os2/bitmap.cpp
src/x11/bitmap.cpp

index bd81349e3651a940ebbc240af33d7db3d5050319..6d3d323c4b007ef881e23e7acfd92cea3cd52419 100644 (file)
@@ -40,6 +40,8 @@ DECLARE_VARIANT_OBJECT_EXPORTED(wxBitmap,WXDLLEXPORT)
 // wxMask represents the transparent area of the bitmap
 // ----------------------------------------------------------------------------
 
+// TODO: all implementation of wxMask, except the generic one,
+//       do not derive from wxMaskBase,,, they should
 class WXDLLEXPORT wxMaskBase : public wxObject
 {
 public:
@@ -78,8 +80,13 @@ protected:
     #define wxUSE_BITMAP_BASE 0
 #endif
 
-// Only used by some ports
-// FIXME -- make all ports (but MSW which uses wxGDIImage) use these base classes
+// a more readable way to tell
+#define wxBITMAP_SCREEN_DEPTH       (-1)
+
+
+// All ports except wxMSW,wxOS2,wxPalmOS use wxBitmapHandler and wxBitmapBase as base class
+// for wxBitmapHandler; wxMSW,wxOS2,wxPalmOS use wxGDIImageHandler as base class
+// since it allows some code reuse there.
 #if wxUSE_BITMAP_BASE
 
 // ----------------------------------------------------------------------------
@@ -87,18 +94,29 @@ protected:
 // different formats
 // ----------------------------------------------------------------------------
 
-class WXDLLEXPORT wxBitmapHandlerBase : public wxObject
+class WXDLLEXPORT wxBitmapHandler : public wxObject
 {
 public:
-    wxBitmapHandlerBase() { m_type = wxBITMAP_TYPE_INVALID; }
-    virtual ~wxBitmapHandlerBase() { }
+    wxBitmapHandler() { m_type = wxBITMAP_TYPE_INVALID; }
+    virtual ~wxBitmapHandler() { }
+
+    // NOTE: the following functions should be pure virtuals, but they aren't
+    //       because otherwise almost all ports would have to implement
+    //       them as "return false"...
 
-    virtual bool Create(wxBitmap *bitmap, const 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);
+    virtual bool Create(wxBitmap *WXUNUSED(bitmap), const void* WXUNUSED(data),
+                         wxBitmapType WXUNUSED(type), int WXUNUSED(width), int WXUNUSED(height),
+                         int WXUNUSED(depth) = 1)
+        { return false; }
+
+    virtual bool LoadFile(wxBitmap *WXUNUSED(bitmap), const wxString& WXUNUSED(name),
+                           wxBitmapType WXUNUSED(type), int WXUNUSED(desiredWidth),
+                           int WXUNUSED(desiredHeight))
+        { return false; }
+
+    virtual bool SaveFile(const wxBitmap *WXUNUSED(bitmap), const wxString& WXUNUSED(name),
+                           wxBitmapType WXUNUSED(type), const wxPalette *WXUNUSED(palette) = NULL) const
+        { return false; }
 
     void SetName(const wxString& name)      { m_name = name; }
     void SetExtension(const wxString& ext)  { m_extension = ext; }
@@ -112,9 +130,14 @@ private:
     wxString      m_extension;
     wxBitmapType  m_type;
 
-    DECLARE_ABSTRACT_CLASS(wxBitmapHandlerBase)
+    DECLARE_ABSTRACT_CLASS(wxBitmapHandler)
 };
 
+
+// ----------------------------------------------------------------------------
+// wxBitmap: class which represents platform-dependent bitmap (unlike wxImage)
+// ----------------------------------------------------------------------------
+
 class WXDLLEXPORT wxBitmapBase : public wxGDIObject
 {
 public:
@@ -122,17 +145,18 @@ public:
     Derived class must implement these:
 
     wxBitmap();
-    wxBitmap(int width, int height, int depth = -1);
+    wxBitmap(const wxBitmap& bmp);
     wxBitmap(const char bits[], int width, int height, int depth = 1);
+    wxBitmap(int width, int height, int depth = wxBITMAP_SCREEN_DEPTH);
     wxBitmap(const char* const* bits);
     wxBitmap(const wxString &filename, wxBitmapType type = wxBITMAP_TYPE_XPM);
-    wxBitmap(const wxImage& image, int depth = -1);
-
-    bool Create(int width, int height, int depth = -1);
+    wxBitmap(const wxImage& image, int depth = wxBITMAP_SCREEN_DEPTH);
 
     static void InitStandardHandlers();
     */
 
+    virtual bool Create(int width, int height, int depth = wxBITMAP_SCREEN_DEPTH) = 0;
+
     virtual int GetHeight() const = 0;
     virtual int GetWidth() const = 0;
     virtual int GetDepth() const = 0;
@@ -173,8 +197,8 @@ public:
 
     // Format handling
     static inline wxList& GetHandlers() { return sm_handlers; }
-    static void AddHandler(wxBitmapHandlerBase *handler);
-    static void InsertHandler(wxBitmapHandlerBase *handler);
+    static void AddHandler(wxBitmapHandler *handler);
+    static void InsertHandler(wxBitmapHandler *handler);
     static bool RemoveHandler(const wxString& name);
     static wxBitmapHandler *FindHandler(const wxString& name);
     static wxBitmapHandler *FindHandler(const wxString& extension, wxBitmapType bitmapType);
index 79d0c6279d243a238033b530ec1ebc77a79f9791..c7fc972c1ce718b1b61038a0c1e8c50f00440d2c 100644 (file)
@@ -135,7 +135,7 @@ public:
     wxMask *GetMask() const;
     void SetMask(wxMask *mask) ;
 
-    int GetBitmapType() const;
+    wxBitmapType GetBitmapType() const;
 
     // wxCocoa
     WX_NSBitmapImageRep GetNSBitmapImageRep();
@@ -152,9 +152,5 @@ protected:
     DECLARE_DYNAMIC_CLASS(wxBitmap)
 };
 
-class WXDLLIMPEXP_CORE wxBitmapHandler: public wxBitmapHandlerBase
-{
-    DECLARE_ABSTRACT_CLASS(wxBitmapHandler)
-};
 
 #endif // __WX_COCOA_BITMAP_H__
index 7ac7cf2b2eebcb503b9ed611f347fea9338e993c..38ddc084055400555df74d195e27e9aa86270afb 100644 (file)
@@ -21,11 +21,6 @@ wxDFB_DECLARE_INTERFACE(IDirectFBSurface);
 // wxBitmap
 //-----------------------------------------------------------------------------
 
-class WXDLLIMPEXP_CORE wxBitmapHandler : public wxBitmapHandlerBase
-{
-    DECLARE_ABSTRACT_CLASS(wxBitmapHandler)
-};
-
 class WXDLLIMPEXP_CORE wxBitmap : public wxBitmapBase
 {
 public:
@@ -55,7 +50,8 @@ public:
 
     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
index 5cc7ed1c1c6aba9546a4ffb12a8e7ca014b2f635..fcecd810b9f66f635a1e2840de7893deef22a1f7 100644 (file)
@@ -51,23 +51,22 @@ class WXDLLIMPEXP_CORE wxBitmap: public wxBitmapBase
 {
 public:
     wxBitmap() { }
-    wxBitmap( int width, int height, int depth = -1 );
+    wxBitmap( int width, int height, int depth = wxBITMAP_SCREEN_DEPTH );
     wxBitmap( const char bits[], int width, int height, int depth = 1 );
     wxBitmap( const char* const* bits );
 #ifdef wxNEEDS_CHARPP
     // needed for old GCC
     wxBitmap(char** data)
-    {
-        *this = wxBitmap(wx_const_cast(const char* const*, data));
-    }
+    { *this = wxBitmap(wx_const_cast(const char* const*, data)); }
 #endif
     wxBitmap( const wxString &filename, wxBitmapType type = wxBITMAP_TYPE_XPM );
 #if wxUSE_IMAGE
-    wxBitmap( const wxImage& image, int depth = -1 ) { (void)CreateFromImage(image, depth); }
+    wxBitmap( const wxImage& image, int depth = wxBITMAP_SCREEN_DEPTH )
+        { (void)CreateFromImage(image, depth); }
 #endif // wxUSE_IMAGE
     virtual ~wxBitmap();
 
-    bool Create(int width, int height, int depth = -1);
+    bool Create(int width, int height, int depth = wxBITMAP_SCREEN_DEPTH);
 
     virtual int GetHeight() const;
     virtual int GetWidth() const;
@@ -112,7 +111,8 @@ public:
     GdkPixbuf *GetPixbuf() const;
 
     // Basically, this corresponds to Win32 StretchBlt()
-    wxBitmap Rescale(int clipx, int clipy, int clipwidth, int clipheight, int width, int height) const;
+    wxBitmap Rescale(int clipx, int clipy, int clipwidth, int clipheight,
+                     int width, int height) const;
 
     // raw bitmap access support functions
     void *GetRawData(wxPixelDataBase& data, int bpp);
@@ -150,13 +150,4 @@ private:
     DECLARE_DYNAMIC_CLASS(wxBitmap)
 };
 
-//-----------------------------------------------------------------------------
-// wxBitmapHandler
-//-----------------------------------------------------------------------------
-
-class WXDLLIMPEXP_CORE wxBitmapHandler: public wxBitmapHandlerBase
-{
-    DECLARE_ABSTRACT_CLASS(wxBitmapHandler)
-};
-
 #endif // _WX_GTK_BITMAP_H_
index 090b72e73cdea41fc51525124a1541d8ab258c34..633f2157cd6380189de4f2414f253b5d8ae9c988 100644 (file)
@@ -146,13 +146,5 @@ private:
     DECLARE_DYNAMIC_CLASS(wxBitmap)
 };
 
-//-----------------------------------------------------------------------------
-// wxBitmapHandler
-//-----------------------------------------------------------------------------
-
-class WXDLLIMPEXP_CORE wxBitmapHandler: public wxBitmapHandlerBase
-{
-    DECLARE_ABSTRACT_CLASS(wxBitmapHandler)
-};
 
 #endif // __GTKBITMAPH__
index 96664c212916f0898959293460728e1690fbb561..40ad96f232abf9666c13e6d274cee09949bcca38 100644 (file)
@@ -80,11 +80,6 @@ private:
 
 };
 
-class WXDLLIMPEXP_CORE wxBitmapHandler: public wxBitmapHandlerBase
-{
-    DECLARE_ABSTRACT_CLASS(wxBitmapHandler)
-};
-
 class WXDLLEXPORT wxBitmap: public wxBitmapBase
 {
     DECLARE_DYNAMIC_CLASS(wxBitmap)
index 60bfc1c3357a40c044d326f2179359b2ed3380c8..0d14a1cc51ce009ee430100830fb2a5e7273a89f 100644 (file)
@@ -23,11 +23,6 @@ struct bitmap_t;
 // wxBitmap
 //-----------------------------------------------------------------------------
 
-class WXDLLIMPEXP_CORE wxBitmapHandler: public wxBitmapHandlerBase
-{
-    DECLARE_ABSTRACT_CLASS(wxBitmapHandler)
-};
-
 class WXDLLEXPORT wxBitmap: public wxBitmapBase
 {
 public:
index 176eb45edb0a4b1f5332932085a5f1025b4ecc80..7525ca1b3f47f15435f3b9bc69a6922d41b937f5 100644 (file)
@@ -41,6 +41,7 @@ enum wxBitmapTransparency
 
 // ----------------------------------------------------------------------------
 // wxBitmap: a mono or colour bitmap
+// NOTE: for wxMSW we don't use the wxBitmapBase base class declared in bitmap.h!
 // ----------------------------------------------------------------------------
 
 class WXDLLEXPORT wxBitmap : public wxGDIImage
@@ -65,7 +66,7 @@ public:
     wxBitmap(const wxString& name, wxBitmapType type = wxBITMAP_TYPE_BMP_RESOURCE);
 
     // New constructor for generalised creation from data
-    wxBitmap(const void* data, long type, int width, int height, int depth = 1);
+    wxBitmap(const void* data, wxBitmapType type, int width, int height, int depth = 1);
 
     // Create a new, uninitialized bitmap of the given size and depth (if it
     // is omitted, will create a bitmap compatible with the display)
@@ -135,11 +136,11 @@ public:
     bool CopyFromDIB(const wxDIB& dib);
 #endif
 
-    virtual bool Create(int width, int height, int depth = -1);
+    virtual bool Create(int width, int height, int depth = wxBITMAP_SCREEN_DEPTH);
     virtual bool Create(int width, int height, const wxDC& dc);
-    virtual bool Create(const void* data, long type, int width, int height, int depth = 1);
-    virtual bool LoadFile(const wxString& name, long type = wxBITMAP_TYPE_BMP_RESOURCE);
-    virtual bool SaveFile(const wxString& name, int type, const wxPalette *cmap = NULL);
+    virtual bool Create(const void* data, wxBitmapType type, int width, int height, int depth = 1);
+    virtual bool LoadFile(const wxString& name, wxBitmapType type = wxBITMAP_TYPE_BMP_RESOURCE);
+    virtual bool SaveFile(const wxString& name, wxBitmapType type, const wxPalette *cmap = NULL) const;
 
     wxBitmapRefData *GetBitmapData() const
         { return (wxBitmapRefData *)m_refData; }
@@ -244,45 +245,49 @@ protected:
     DECLARE_DYNAMIC_CLASS(wxMask)
 };
 
+
 // ----------------------------------------------------------------------------
 // wxBitmapHandler is a class which knows how to load/save bitmaps to/from file
+// NOTE: for wxMSW we don't use the wxBitmapHandler class declared in bitmap.h!
 // ----------------------------------------------------------------------------
 
 class WXDLLEXPORT wxBitmapHandler : public wxGDIImageHandler
 {
 public:
     wxBitmapHandler() { }
-    wxBitmapHandler(const wxString& name, const wxString& ext, long type)
-        : wxGDIImageHandler(name, ext, type)
-    {
-    }
+    wxBitmapHandler(const wxString& name, const wxString& ext, wxBitmapType type)
+        : wxGDIImageHandler(name, ext, type) { }
 
-    // keep wxBitmapHandler derived from wxGDIImageHandler compatible with the
-    // old class which worked only with bitmaps
-    virtual bool Create(wxBitmap *bitmap,
-                        const 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(wxBitmap *bitmap,
-                          const wxString& name,
-                          int type,
-                          const wxPalette *palette = NULL);
+    // implement wxGDIImageHandler's pure virtuals:
 
     virtual bool Create(wxGDIImage *image,
                         const void* data,
-                        long flags,
+                        wxBitmapType type,
                         int width, int height, int depth = 1);
     virtual bool Load(wxGDIImage *image,
                       const wxString& name,
-                      long flags,
+                      wxBitmapType type,
                       int desiredWidth, int desiredHeight);
-    virtual bool Save(wxGDIImage *image,
+    virtual bool Save(const wxGDIImage *image,
                       const wxString& name,
-                      int type);
+                      wxBitmapType type) const;
+
+
+    // make wxBitmapHandler compatible with the wxBitmapHandler interface
+    // declared in bitmap.h, even if it's derived from wxGDIImageHandler:
+
+    virtual bool Create(wxBitmap *bitmap,
+                        const void* data,
+                        wxBitmapType type,
+                        int width, int height, int depth = 1);
+    virtual bool LoadFile(wxBitmap *bitmap,
+                          const wxString& name,
+                          wxBitmapType type,
+                          int desiredWidth, int desiredHeight);
+    virtual bool SaveFile(const wxBitmap *bitmap,
+                          const wxString& name,
+                          wxBitmapType type,
+                          const wxPalette *palette = NULL) const;
 
 private:
     DECLARE_DYNAMIC_CLASS(wxBitmapHandler)
index 2a085f319fa462d971e6ae8d6e210e2c91d96835..9557a9c8e7788a0959f70e11dba26e66dfc64260 100644 (file)
@@ -76,51 +76,6 @@ public:
     };
 };
 
-// ----------------------------------------------------------------------------
-// wxGDIImageHandler: a class which knows how to load/save wxGDIImages.
-// ----------------------------------------------------------------------------
-
-class WXDLLEXPORT wxGDIImageHandler : public wxObject
-{
-public:
-    // ctor
-    wxGDIImageHandler() { m_type = wxBITMAP_TYPE_INVALID; }
-    wxGDIImageHandler(const wxString& name,
-                      const wxString& ext,
-                      long type)
-        : m_name(name), m_extension(ext)
-    {
-        m_type = type;
-    }
-
-    // accessors
-    void SetName(const wxString& name) { m_name = name; }
-    void SetExtension(const wxString& ext) { m_extension = ext; }
-    void SetType(long type) { m_type = type; }
-
-    const wxString& GetName() const { return m_name; }
-    const wxString& GetExtension() const { return m_extension; }
-    long GetType() const { return m_type; }
-
-    // real handler operations: to implement in derived classes
-    virtual bool Create(wxGDIImage *image,
-                        const void* data,
-                        long flags,
-                        int width, int height, int depth = 1) = 0;
-    virtual bool Load(wxGDIImage *image,
-                      const wxString& name,
-                      long flags,
-                      int desiredWidth, int desiredHeight) = 0;
-    virtual bool Save(wxGDIImage *image,
-                      const wxString& name,
-                      int type) = 0;
-
-protected:
-    wxString  m_name;
-    wxString  m_extension;
-    long      m_type;
-};
-
 // ----------------------------------------------------------------------------
 // wxGDIImage: this class supports GDI image handlers which may be registered
 // dynamically and will be used for loading/saving the images in the specified
@@ -192,4 +147,46 @@ protected:
     static wxGDIImageHandlerList ms_handlers;
 };
 
+// ----------------------------------------------------------------------------
+// wxGDIImageHandler: a class which knows how to load/save wxGDIImages.
+// ----------------------------------------------------------------------------
+
+class WXDLLEXPORT wxGDIImageHandler : public wxObject
+{
+public:
+    // ctor
+    wxGDIImageHandler() { m_type = wxBITMAP_TYPE_INVALID; }
+    wxGDIImageHandler(const wxString& name,
+                      const wxString& ext,
+                      wxBitmapType type)
+        : m_name(name), m_extension(ext), m_type(type) { }
+
+    // accessors
+    void SetName(const wxString& name) { m_name = name; }
+    void SetExtension(const wxString& ext) { m_extension = ext; }
+    void SetType(wxBitmapType type) { m_type = type; }
+
+    const wxString& GetName() const { return m_name; }
+    const wxString& GetExtension() const { return m_extension; }
+    wxBitmapType GetType() const { return m_type; }
+
+    // real handler operations: to implement in derived classes
+    virtual bool Create(wxGDIImage *image,
+                        const void* data,
+                        wxBitmapType flags,
+                        int width, int height, int depth = 1) = 0;
+    virtual bool Load(wxGDIImage *image,
+                      const wxString& name,
+                      wxBitmapType flags,
+                      int desiredWidth, int desiredHeight) = 0;
+    virtual bool Save(const wxGDIImage *image,
+                      const wxString& name,
+                      wxBitmapType type) const = 0;
+
+protected:
+    wxString  m_name;
+    wxString  m_extension;
+    wxBitmapType m_type;
+};
+
 #endif // _WX_MSW_GDIIMAGE_H_
index 7984f79d373532b3c98fc5bc95ff438277cce0c7..45ef0fd34b8b530152ea23f321b7bb5ecc4a5076 100644 (file)
@@ -54,7 +54,7 @@ public:
 #endif
         // from resource/file
     wxIcon(const wxString& name,
-           long type = wxBITMAP_TYPE_ICO_RESOURCE,
+           wxBitmapType type = wxBITMAP_TYPE_ICO_RESOURCE,
            int desiredWidth = -1, int desiredHeight = -1);
 
     wxIcon(const wxIconLocation& loc);
@@ -62,7 +62,7 @@ public:
     virtual ~wxIcon();
 
     virtual bool LoadFile(const wxString& name,
-                          long type = wxBITMAP_TYPE_ICO_RESOURCE,
+                          wxBitmapType type = wxBITMAP_TYPE_ICO_RESOURCE,
                           int desiredWidth = -1, int desiredHeight = -1);
 
     // implementation only from now on
index 2431cd3360500a99aca65cfc6eacd4d82e55386a..bf8e88952875c95b8513fd11903a4b5a147c571a 100644 (file)
@@ -287,7 +287,7 @@ public:
 
     inline wxBitmapHandler( const wxString& rName
                     ,const wxString& rExt
-                    ,long            lType
+                    ,wxBitmapType lType
                    )
                    : wxGDIImageHandler( rName
                                        ,rExt
@@ -299,28 +299,28 @@ public:
     // old class which worked only with bitmaps
     virtual bool Create( wxBitmap* pBitmap
                         ,const void* pData
-                        ,long      lFlags
+                        ,wxBitmapType lType
                         ,int       nWidth
                         ,int       nHeight
                         ,int       nDepth = 1
                        );
     virtual bool LoadFile( wxBitmap*       pBitmap
                           ,int             nId
-                          ,long            lFlags
+                          ,wxBitmapType    lType
                           ,int             nDesiredWidth
                           ,int             nDesiredHeight
                          );
     virtual bool LoadFile( wxBitmap*       pBitmap
                           ,const wxString& rName
-                          ,long            lFlags
+                          ,wxBitmapType    lType
                           ,int             nDesiredWidth
                           ,int             nDesiredHeight
                          );
     virtual bool SaveFile( wxBitmap*        pBitmap
                           ,const wxString&  rName
-                          ,int              lType
+                          ,wxBitmapType     lType
                           ,const wxPalette* pPalette = NULL
-                         );
+                         ) const;
 
     virtual bool Create( wxGDIImage* pImage
                         ,const void* pData
@@ -338,7 +338,7 @@ public:
     virtual bool Save( wxGDIImage*     pImage
                       ,const wxString& rName
                       ,int             lType
-                     );
+                     ) const;
 private:
     inline virtual bool Load( wxGDIImage*     WXUNUSED(pImage)
                              ,const wxString& WXUNUSED(rName)
index 29572c48707d0a6deea5b71b8f6c86bce7b47878..4ad700eb11b8892c710e933bcc5065bd7345969e 100644 (file)
@@ -62,11 +62,6 @@ private:
 // wxBitmap
 //-----------------------------------------------------------------------------
 
-class WXDLLIMPEXP_CORE wxBitmapHandler: public wxBitmapHandlerBase
-{
-    DECLARE_ABSTRACT_CLASS(wxBitmapHandler)
-};
-
 class WXDLLIMPEXP_CORE wxBitmap: public wxBitmapBase
 {
 public:
index 8c940d21b0dbc08eac4badad202400aa313fafab..2f0776eaca602728e3182ce17156e382e44cf172 100644 (file)
@@ -47,7 +47,7 @@ IMPLEMENT_VARIANT_OBJECT_EXPORTED_SHALLOWCMP(wxIcon,WXDLLEXPORT)
 
 
 IMPLEMENT_ABSTRACT_CLASS(wxBitmapBase, wxGDIObject)
-IMPLEMENT_ABSTRACT_CLASS(wxBitmapHandlerBase,wxObject)
+IMPLEMENT_ABSTRACT_CLASS(wxBitmapHandlerwxObject)
 
 wxList wxBitmapBase::sm_handlers;
 
@@ -126,21 +126,6 @@ void wxBitmapBase::CleanUpHandlers()
     }
 }
 
-bool wxBitmapHandlerBase::Create(wxBitmap*, const void*, long, int, int, int)
-{
-    return false;
-}
-
-bool wxBitmapHandlerBase::LoadFile(wxBitmap*, const wxString&, long, int, int)
-{
-    return false;
-}
-
-bool wxBitmapHandlerBase::SaveFile(const wxBitmap*, const wxString&, int, const wxPalette*)
-{
-    return false;
-}
-
 class wxBitmapBaseModule: public wxModule
 {
 DECLARE_DYNAMIC_CLASS(wxBitmapBaseModule)
index 91aa96accfebdb7dab45dbea12ffd7d4ceca71b2..b1fe2f76f113f66e025fd31b85c614808489f4e4 100644 (file)
@@ -968,12 +968,6 @@ wxGDIRefData* wxBitmap::CloneGDIRefData(const wxGDIRefData* data) const
     return newRef;
 }
 
-//-----------------------------------------------------------------------------
-// wxBitmapHandler
-//-----------------------------------------------------------------------------
-
-IMPLEMENT_ABSTRACT_CLASS(wxBitmapHandler, wxBitmapHandlerBase)
-
 /* static */ void wxBitmap::InitStandardHandlers()
 {
     // TODO: Insert handler based on GdkPixbufs handler later
index daa51e4dc566f88f42f43a6d8d4b8273cc2f1879..be9243096d24fd34ab5d07c1707db48846ac299d 100644 (file)
@@ -1373,12 +1373,6 @@ bool wxBitmap::HasAlpha() const
     return false;
 }
 
-//-----------------------------------------------------------------------------
-// wxBitmapHandler
-//-----------------------------------------------------------------------------
-
-IMPLEMENT_ABSTRACT_CLASS(wxBitmapHandler, wxBitmapHandlerBase)
-
 /* static */ void wxBitmap::InitStandardHandlers()
 {
     // TODO: Insert handler based on GdkPixbufs handler later
index 19334a0f7c88909ce1efc6fbdc03509a30680821..9608e346ef184fd65eefba7e38c3cbea3a4d4e20 100644 (file)
@@ -1615,12 +1615,6 @@ WXHBITMAP wxMask::GetHBITMAP() const
     return m_maskBitmap ;
 }
 
-// ----------------------------------------------------------------------------
-// wxBitmapHandler
-// ----------------------------------------------------------------------------
-
-IMPLEMENT_ABSTRACT_CLASS(wxBitmapHandler, wxBitmapHandlerBase)
-
 // ----------------------------------------------------------------------------
 // Standard Handlers
 // ----------------------------------------------------------------------------
index c280b0b0ac7a82770a2243cfbd20161717055061..65294d62c6185f5d939397c858c38f9f02a8081d 100644 (file)
@@ -92,8 +92,6 @@ wxBitmapRefData::~wxBitmapRefData()
 
 #define M_BMPDATA ((wxBitmapRefData *)m_refData)
 
-
-IMPLEMENT_ABSTRACT_CLASS(wxBitmapHandler, wxBitmapHandlerBase)
 IMPLEMENT_DYNAMIC_CLASS(wxBitmap,wxBitmapBase)
 
 wxBitmap::wxBitmap(int width, int height, int depth)
index 725d5fd0cbd016443df29e3b43e7c0a1bbfda3d2..0dd6a215caa8310be7274538c25e9299a5ec9e20 100644 (file)
@@ -520,14 +520,14 @@ wxBitmap::wxBitmap(int w, int h, const wxDC& dc)
     (void)Create(w, h, dc);
 }
 
-wxBitmap::wxBitmap(const void* data, long type, int width, int height, int depth)
+wxBitmap::wxBitmap(const void* data, wxBitmapType type, int width, int height, int depth)
 {
     (void)Create(data, type, width, height, depth);
 }
 
 wxBitmap::wxBitmap(const wxString& filename, wxBitmapType type)
 {
-    LoadFile(filename, (int)type);
+    LoadFile(filename, type);
 }
 
 bool wxBitmap::Create(int width, int height, int depth)
@@ -1027,7 +1027,7 @@ wxImage wxBitmap::ConvertToImage() const
 // loading and saving bitmaps
 // ----------------------------------------------------------------------------
 
-bool wxBitmap::LoadFile(const wxString& filename, long type)
+bool wxBitmap::LoadFile(const wxString& filename, wxBitmapType type)
 {
     UnRef();
 
@@ -1055,7 +1055,7 @@ bool wxBitmap::LoadFile(const wxString& filename, long type)
     return false;
 }
 
-bool wxBitmap::Create(const void* data, long type, int width, int height, int depth)
+bool wxBitmap::Create(const void* data, wxBitmapType type, int width, int height, int depth)
 {
     UnRef();
 
@@ -1074,8 +1074,8 @@ bool wxBitmap::Create(const void* data, long type, int width, int height, int de
 }
 
 bool wxBitmap::SaveFile(const wxString& filename,
-                        int type,
-                        const wxPalette *palette)
+                        wxBitmapType type,
+                        const wxPalette *palette) const
 {
     wxBitmapHandler *handler = wxDynamicCast(FindHandler(type), wxBitmapHandler);
 
@@ -1563,27 +1563,27 @@ bool wxMask::Create(const wxBitmap& bitmap, const wxColour& colour)
 
 bool wxBitmapHandler::Create(wxGDIImage *image,
                              const void* data,
-                             long flags,
+                             wxBitmapType type,
                              int width, int height, int depth)
 {
     wxBitmap *bitmap = wxDynamicCast(image, wxBitmap);
 
-    return bitmap && Create(bitmap, data, flags, width, height, depth);
+    return bitmap && Create(bitmap, data, type, width, height, depth);
 }
 
 bool wxBitmapHandler::Load(wxGDIImage *image,
                            const wxString& name,
-                           long flags,
+                           wxBitmapType type,
                            int width, int height)
 {
     wxBitmap *bitmap = wxDynamicCast(image, wxBitmap);
 
-    return bitmap && LoadFile(bitmap, name, flags, width, height);
+    return bitmap && LoadFile(bitmap, name, type, width, height);
 }
 
-bool wxBitmapHandler::Save(wxGDIImage *image,
+bool wxBitmapHandler::Save(const wxGDIImage *image,
                            const wxString& name,
-                           int type)
+                           wxBitmapType type) const
 {
     wxBitmap *bitmap = wxDynamicCast(image, wxBitmap);
 
@@ -1592,7 +1592,7 @@ bool wxBitmapHandler::Save(wxGDIImage *image,
 
 bool wxBitmapHandler::Create(wxBitmap *WXUNUSED(bitmap),
                              const void* WXUNUSED(data),
-                             long WXUNUSED(type),
+                             wxBitmapType WXUNUSED(type),
                              int WXUNUSED(width),
                              int WXUNUSED(height),
                              int WXUNUSED(depth))
@@ -1602,17 +1602,17 @@ bool wxBitmapHandler::Create(wxBitmap *WXUNUSED(bitmap),
 
 bool wxBitmapHandler::LoadFile(wxBitmap *WXUNUSED(bitmap),
                                const wxString& WXUNUSED(name),
-                               long WXUNUSED(type),
+                               wxBitmapType WXUNUSED(type),
                                int WXUNUSED(desiredWidth),
                                int WXUNUSED(desiredHeight))
 {
     return false;
 }
 
-bool wxBitmapHandler::SaveFile(wxBitmap *WXUNUSED(bitmap),
+bool wxBitmapHandler::SaveFile(const wxBitmap *WXUNUSED(bitmap),
                                const wxString& WXUNUSED(name),
-                               int WXUNUSED(type),
-                               const wxPalette *WXUNUSED(palette))
+                               wxBitmapType WXUNUSED(type),
+                               const wxPalette *WXUNUSED(palette)) const
 {
     return false;
 }
index ff89f0755b43f1f3707d20bff07c9b4ff3a5d97f..910d6c90b5247a8241e643911c96b97a06e5920a 100644 (file)
@@ -67,11 +67,11 @@ public:
     }
 
     virtual bool LoadFile(wxBitmap *bitmap,
-                          const wxString& name, long flags,
+                          const wxString& name, wxBitmapType flags,
                           int desiredWidth, int desiredHeight);
-    virtual bool SaveFile(wxBitmap *bitmap,
-                          const wxString& name, int type,
-                          const wxPalette *palette = NULL);
+    virtual bool SaveFile(const wxBitmap *bitmap,
+                          const wxString& name, wxBitmapType type,
+                          const wxPalette *palette = NULL) const;
 
 private:
     DECLARE_DYNAMIC_CLASS(wxBMPFileHandler)
@@ -87,7 +87,7 @@ public:
     }
 
     virtual bool LoadFile(wxBitmap *bitmap,
-                          const wxString& name, long flags,
+                          const wxString& name, wxBitmapType flags,
                           int desiredWidth, int desiredHeight);
 
 private:
@@ -97,7 +97,7 @@ private:
 class WXDLLEXPORT wxIconHandler : public wxGDIImageHandler
 {
 public:
-    wxIconHandler(const wxString& name, const wxString& ext, long type)
+    wxIconHandler(const wxString& name, const wxString& ext, wxBitmapType type)
         : wxGDIImageHandler(name, ext, type)
     {
     }
@@ -105,7 +105,7 @@ public:
     // creating and saving icons is not supported
     virtual bool Create(wxGDIImage *WXUNUSED(image),
                         const void* WXUNUSED(data),
-                        long WXUNUSED(flags),
+                        wxBitmapType WXUNUSED(flags),
                         int WXUNUSED(width),
                         int WXUNUSED(height),
                         int WXUNUSED(depth) = 1)
@@ -113,16 +113,16 @@ public:
         return false;
     }
 
-    virtual bool Save(wxGDIImage *WXUNUSED(image),
+    virtual bool Save(const wxGDIImage *WXUNUSED(image),
                       const wxString& WXUNUSED(name),
-                      int WXUNUSED(type))
+                      wxBitmapType WXUNUSED(type)) const
     {
         return false;
     }
 
     virtual bool Load(wxGDIImage *image,
                       const wxString& name,
-                      long flags,
+                      wxBitmapType flags,
                       int desiredWidth, int desiredHeight)
     {
         wxIcon *icon = wxDynamicCast(image, wxIcon);
@@ -133,7 +133,7 @@ public:
 
 protected:
     virtual bool LoadIcon(wxIcon *icon,
-                          const wxString& name, long flags,
+                          const wxString& name, wxBitmapType flags,
                           int desiredWidth = -1, int desiredHeight = -1) = 0;
 };
 
@@ -148,7 +148,7 @@ public:
 
 protected:
     virtual bool LoadIcon(wxIcon *icon,
-                          const wxString& name, long flags,
+                          const wxString& name, wxBitmapType flags,
                           int desiredWidth = -1, int desiredHeight = -1);
 
 private:
@@ -166,7 +166,7 @@ public:
 
 protected:
     virtual bool LoadIcon(wxIcon *icon,
-                          const wxString& name, long flags,
+                          const wxString& name, wxBitmapType flags,
                           int desiredWidth = -1, int desiredHeight = -1);
 
 private:
@@ -318,7 +318,7 @@ void wxGDIImage::InitStandardHandlers()
 // ----------------------------------------------------------------------------
 
 bool wxBMPResourceHandler::LoadFile(wxBitmap *bitmap,
-                                    const wxString& name, long WXUNUSED(flags),
+                                    const wxString& name, wxBitmapType WXUNUSED(flags),
                                     int WXUNUSED(desiredWidth),
                                     int WXUNUSED(desiredHeight))
 {
@@ -351,7 +351,7 @@ bool wxBMPResourceHandler::LoadFile(wxBitmap *bitmap,
 }
 
 bool wxBMPFileHandler::LoadFile(wxBitmap *bitmap,
-                                const wxString& name, long WXUNUSED(flags),
+                                const wxString& name, wxBitmapType WXUNUSED(flags),
                                 int WXUNUSED(desiredWidth),
                                 int WXUNUSED(desiredHeight))
 {
@@ -366,10 +366,10 @@ bool wxBMPFileHandler::LoadFile(wxBitmap *bitmap,
 #endif
 }
 
-bool wxBMPFileHandler::SaveFile(wxBitmap *bitmap,
+bool wxBMPFileHandler::SaveFile(const wxBitmap *bitmap,
                                 const wxString& name,
-                                int WXUNUSED(type),
-                                const wxPalette * WXUNUSED(pal))
+                                wxBitmapType WXUNUSED(type),
+                                const wxPalette * WXUNUSED(pal)) const
 {
 #if wxUSE_WXDIB
     wxCHECK_MSG( bitmap, false, _T("NULL bitmap in SaveFile") );
@@ -388,7 +388,7 @@ bool wxBMPFileHandler::SaveFile(wxBitmap *bitmap,
 
 bool wxICOFileHandler::LoadIcon(wxIcon *icon,
                                 const wxString& name,
-                                long WXUNUSED(flags),
+                                wxBitmapType WXUNUSED(flags),
                                 int desiredWidth, int desiredHeight)
 {
     icon->UnRef();
@@ -499,7 +499,7 @@ bool wxICOFileHandler::LoadIcon(wxIcon *icon,
 
 bool wxICOResourceHandler::LoadIcon(wxIcon *icon,
                                     const wxString& name,
-                                    long WXUNUSED(flags),
+                                    wxBitmapType WXUNUSED(flags),
                                     int desiredWidth, int desiredHeight)
 {
     HICON hicon;
index ee899f2b8abcc6a58f9aeaf09629d518553dc959..14d2029349aeb41919cea92955eda2879b820b84 100644 (file)
@@ -72,12 +72,12 @@ wxIcon::wxIcon(const char bits[], int width, int height)
 }
 
 wxIcon::wxIcon(const wxString& iconfile,
-               long flags,
+               wxBitmapType type,
                int desiredWidth,
                int desiredHeight)
 
 {
-    LoadFile(iconfile, flags, desiredWidth, desiredHeight);
+    LoadFile(iconfile, type, desiredWidth, desiredHeight);
 }
 
 wxIcon::wxIcon(const wxIconLocation& loc)
@@ -135,7 +135,7 @@ void wxIcon::CreateIconFromXpm(const char* const* data)
 }
 
 bool wxIcon::LoadFile(const wxString& filename,
-                      long type,
+                      wxBitmapType type,
                       int desiredWidth, int desiredHeight)
 {
     UnRef();
index a565c74f17cdb6e586d80a8c3f917a3e098efb48..73912fabc741072196b8495b3fe728af5a65d1a9 100644 (file)
@@ -39,7 +39,6 @@
 IMPLEMENT_DYNAMIC_CLASS(wxBitmap, wxGDIObject)
 IMPLEMENT_DYNAMIC_CLASS(wxMask, wxObject)
 
-IMPLEMENT_DYNAMIC_CLASS(wxBitmapHandler, wxObject)
 
 // ============================================================================
 // implementation
@@ -1457,7 +1456,7 @@ bool wxMask::Create(
 
 bool wxBitmapHandler::Create( wxGDIImage* pImage,
                               const void* pData,
-                              long        WXUNUSED(lFlags),
+                              wxBitmapType WXUNUSED(lFlags),
                               int         nWidth,
                               int         nHeight,
                               int         nDepth)
@@ -1477,7 +1476,7 @@ bool wxBitmapHandler::Create( wxGDIImage* pImage,
 bool wxBitmapHandler::Load(
   wxGDIImage*                       pImage
 , int                               nId
-, long                              lFlags
+, wxBitmapType                      lFlags
 , int                               nWidth
 , int                               nHeight
 )
@@ -1498,7 +1497,7 @@ bool wxBitmapHandler::Save(
   wxGDIImage*                       pImage
 , const wxString&                   rName
 , int                               lType
-)
+) const
 {
     wxBitmap*                       pBitmap = wxDynamicCast( pImage
                                                             ,wxBitmap
@@ -1513,7 +1512,7 @@ bool wxBitmapHandler::Save(
 bool wxBitmapHandler::Create(
   wxBitmap*                         WXUNUSED(pBitmap)
 , const void*                       WXUNUSED(pData)
-, long                              WXUNUSED(lType)
+, wxBitmapType                      WXUNUSED(lType)
 , int                               WXUNUSED(nWidth)
 , int                               WXUNUSED(nHeight)
 , int                               WXUNUSED(nDepth)
@@ -1525,7 +1524,7 @@ bool wxBitmapHandler::Create(
 bool wxBitmapHandler::LoadFile(
   wxBitmap*                         WXUNUSED(pBitmap)
 , int                               WXUNUSED(nId)
-, long                              WXUNUSED(lType)
+, wxBitmapType                      WXUNUSED(lType)
 , int                               WXUNUSED(nDesiredWidth)
 , int                               WXUNUSED(nDesiredHeight)
 )
@@ -1536,7 +1535,7 @@ bool wxBitmapHandler::LoadFile(
 bool wxBitmapHandler::LoadFile(
   wxBitmap*                         WXUNUSED(pBitmap)
 , const wxString&                   WXUNUSED(rName)
-, long                              WXUNUSED(lType)
+, wxBitmapType                      WXUNUSED(lType)
 , int                               WXUNUSED(nDesiredWidth)
 , int                               WXUNUSED(nDesiredHeight)
 )
@@ -1547,9 +1546,9 @@ bool wxBitmapHandler::LoadFile(
 bool wxBitmapHandler::SaveFile(
   wxBitmap*                         WXUNUSED(pBitmap)
 , const wxString&                   WXUNUSED(rName)
-, int                               WXUNUSED(nType)
+, wxBitmapType                      WXUNUSED(nType)
 , const wxPalette*                  WXUNUSED(pPalette)
-)
+) const
 {
     return false;
 }
index 856f0288b8259e17ac886a125ba6d8bd364a93c2..7306e90644e75335119839614e95f36e3a6e13a3 100644 (file)
@@ -1296,8 +1296,6 @@ int GrGetPixelColor(GR_SCREEN_INFO* sinfo, GR_PALETTE* palette, GR_PIXELVAL pixe
 // Bitmap handlers
 // ============================================================================
 
-IMPLEMENT_ABSTRACT_CLASS(wxBitmapHandler, wxBitmapHandlerBase)
-
 #define M_BMPHANDLERDATA ((wxBitmapRefData *)bitmap->GetRefData())
 
 #if wxUSE_XPM