X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/7beb59f36c016d27cf8949eb8c0d38fc63ad536a..cc510e136407469a053f3d01b83c1f8a2783e1e6:/include/wx/imagpng.h diff --git a/include/wx/imagpng.h b/include/wx/imagpng.h index 1bd7247687..693cd5ae29 100644 --- a/include/wx/imagpng.h +++ b/include/wx/imagpng.h @@ -1,5 +1,5 @@ ///////////////////////////////////////////////////////////////////////////// -// Name: imagpng.h +// Name: wx/imagpng.h // Purpose: wxImage PNG handler // Author: Robert Roebling // RCS-ID: $Id$ @@ -10,18 +10,34 @@ #ifndef _WX_IMAGPNG_H_ #define _WX_IMAGPNG_H_ -#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA) -#pragma interface "imagpng.h" -#endif - -#include "wx/image.h" +#include "wx/defs.h" //----------------------------------------------------------------------------- // wxPNGHandler //----------------------------------------------------------------------------- #if wxUSE_LIBPNG -class WXDLLEXPORT wxPNGHandler: public wxImageHandler + +#include "wx/image.h" +#include "wx/versioninfo.h" + +#define wxIMAGE_OPTION_PNG_FORMAT wxT("PngFormat") +#define wxIMAGE_OPTION_PNG_BITDEPTH wxT("PngBitDepth") +#define wxIMAGE_OPTION_PNG_FILTER wxT("PngF") +#define wxIMAGE_OPTION_PNG_COMPRESSION_LEVEL wxT("PngZL") +#define wxIMAGE_OPTION_PNG_COMPRESSION_MEM_LEVEL wxT("PngZM") +#define wxIMAGE_OPTION_PNG_COMPRESSION_STRATEGY wxT("PngZS") +#define wxIMAGE_OPTION_PNG_COMPRESSION_BUFFER_SIZE wxT("PngZB") + +enum +{ + wxPNG_TYPE_COLOUR = 0, + wxPNG_TYPE_GREY = 2, + wxPNG_TYPE_GREY_RED = 3, + wxPNG_TYPE_PALETTE = 4 +}; + +class WXDLLIMPEXP_CORE wxPNGHandler: public wxImageHandler { public: inline wxPNGHandler() @@ -32,17 +48,21 @@ public: m_mime = wxT("image/png"); } + static wxVersionInfo GetLibraryVersionInfo(); + #if wxUSE_STREAMS virtual bool LoadFile( wxImage *image, wxInputStream& stream, bool verbose=true, int index=-1 ); virtual bool SaveFile( wxImage *image, wxOutputStream& stream, bool verbose=true ); +protected: virtual bool DoCanRead( wxInputStream& stream ); #endif private: DECLARE_DYNAMIC_CLASS(wxPNGHandler) }; -#endif +#endif + // wxUSE_LIBPNG #endif // _WX_IMAGPNG_H_