From 148be09ede34b08081da4102df14733e4cbc7243 Mon Sep 17 00:00:00 2001 From: Samuel Dunn Date: Fri, 23 Jun 2017 18:33:10 -0700 Subject: [PATCH] Add wxPNGHandler to interface. --- interface/wx/imagpng.h | 49 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 49 insertions(+) create mode 100644 interface/wx/imagpng.h diff --git a/interface/wx/imagpng.h b/interface/wx/imagpng.h new file mode 100644 index 0000000000..b4e6e70eaf --- /dev/null +++ b/interface/wx/imagpng.h @@ -0,0 +1,49 @@ +///////////////////////////////////////////////////////////////////////////// +// Name: imagpng.h +// Purpose: interface of wxPNGHandler +// Author: Samuel Dunn +// Licence: wxWindows licence +//////////////////////////////////////////////////////////////////////////// + +#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 wxPNGHandler + + This is the image handler for the PNG format. + + @library{core} + @category{gdi} + + @see wxImage, wxImageHandler, wxInitAllImageHandlers() +*/ +class wxPNGHandler : public wxImageHandler +{ +public: + /** + Default constructor for wxPNGHandler + */ + wxPNGHandler(); + + // let parent class's documentation through. + 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 ); +}; \ No newline at end of file