X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/e98e625cbbe269f109b2296a045a657cba00fede..4f2511d706e5274a34e1521e11c1b95fed735b42:/include/wx/image.h diff --git a/include/wx/image.h b/include/wx/image.h index 07fe116d72..3a6b0fdee1 100644 --- a/include/wx/image.h +++ b/include/wx/image.h @@ -112,6 +112,12 @@ public: wxBitmapType GetType() const { return m_type; } const wxString& GetMimeType() const { return m_mime; } +#if WXWIN_COMPATIBILITY_2_8 + wxDEPRECATED( + void SetType(long type) { SetType((wxBitmapType)type); } + ) +#endif // WXWIN_COMPATIBILITY_2_8 + protected: #if wxUSE_STREAMS virtual bool DoCanRead( wxInputStream& stream ) = 0; @@ -352,6 +358,14 @@ public: int GetWidth() const; int GetHeight() const; + // Gets the type of image found by LoadFile or specified with SaveFile + wxBitmapType GetType() const; + + // Set the image type, this is normally only called if the image is being + // created from data in the given format but not using LoadFile() (e.g. + // wxGIFDecoder uses this) + void SetType(wxBitmapType type); + // these functions provide fastest access to wxImage data but should be // used carefully as no checks are done unsigned char *GetData() const; @@ -414,6 +428,7 @@ public: static wxImageHandler *FindHandler( const wxString& name ); static wxImageHandler *FindHandler( const wxString& extension, wxBitmapType imageType ); static wxImageHandler *FindHandler( wxBitmapType imageType ); + static wxImageHandler *FindHandlerMime( const wxString& mimetype ); static wxString GetImageExtWildcard(); @@ -424,6 +439,65 @@ public: static HSVValue RGBtoHSV(const RGBValue& rgb); static RGBValue HSVtoRGB(const HSVValue& hsv); +#if WXWIN_COMPATIBILITY_2_8 + wxDEPRECATED( + wxImage(const wxString& name, long type, int index = -1) + { + LoadFile(name, (wxBitmapType)type, index); + } + ) + +#if wxUSE_STREAMS + wxDEPRECATED( + wxImage(wxInputStream& stream, long type, int index = -1) + { + LoadFile(stream, (wxBitmapType)type, index); + } + ) + + wxDEPRECATED( + bool LoadFile(wxInputStream& stream, long type, int index = -1) + { + return LoadFile(stream, (wxBitmapType)type, index); + } + ) + + wxDEPRECATED( + bool SaveFile(wxOutputStream& stream, long type) const + { + return SaveFile(stream, (wxBitmapType)type); + } + ) +#endif // wxUSE_STREAMS + + wxDEPRECATED( + bool LoadFile(const wxString& name, long type, int index = -1) + { + return LoadFile(name, (wxBitmapType)type, index); + } + ) + + wxDEPRECATED( + bool SaveFile(const wxString& name, long type) const + { + return SaveFile(name, (wxBitmapType)type); + } + ) + + wxDEPRECATED( + static wxImageHandler *FindHandler(const wxString& ext, long type) + { + return FindHandler(ext, (wxBitmapType)type); + } + ) + + wxDEPRECATED( + static wxImageHandler *FindHandler(long imageType) + { + return FindHandler((wxBitmapType)imageType); + } + ) +#endif // WXWIN_COMPATIBILITY_2_8 protected: static wxList sm_handlers; @@ -440,6 +514,16 @@ protected: private: friend class WXDLLIMPEXP_FWD_CORE wxImageHandler; +#if wxUSE_STREAMS + // read the image from the specified stream updating image type if + // successful + bool DoLoad(wxImageHandler& handler, wxInputStream& stream, int index); + + // write the image to the specified stream and also update the image type + // if successful + bool DoSave(wxImageHandler& handler, wxOutputStream& stream) const; +#endif // wxUSE_STREAMS + DECLARE_DYNAMIC_CLASS(wxImage) };