]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/imagpng.h
Don't define __STRICT_ANSI__, we should build both with and without it.
[wxWidgets.git] / include / wx / imagpng.h
index 8a1cbdb74672c0042dfce31bf6cbf4fcef160bbc..55adcd5f9735e25dfa360883f644933c839ba7fc 100644 (file)
@@ -1,8 +1,7 @@
 /////////////////////////////////////////////////////////////////////////////
 /////////////////////////////////////////////////////////////////////////////
-// Name:        imagpng.h
+// Name:        wx/imagpng.h
 // Purpose:     wxImage PNG handler
 // Author:      Robert Roebling
 // Purpose:     wxImage PNG handler
 // Author:      Robert Roebling
-// RCS-ID:      $Id$
 // Copyright:   (c) Robert Roebling
 // Licence:     wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
 // Copyright:   (c) Robert Roebling
 // Licence:     wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
@@ -10,11 +9,7 @@
 #ifndef _WX_IMAGPNG_H_
 #define _WX_IMAGPNG_H_
 
 #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
 
 //-----------------------------------------------------------------------------
 // wxPNGHandler
 
 #if wxUSE_LIBPNG
 
 
 #if wxUSE_LIBPNG
 
+#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_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,
 
 enum
 {
     wxPNG_TYPE_COLOUR = 0,
     wxPNG_TYPE_GREY = 2,
     wxPNG_TYPE_GREY_RED = 3,
+    wxPNG_TYPE_PALETTE = 4
 };
 
 };
 
-class WXDLLEXPORT wxPNGHandler: public wxImageHandler
+class WXDLLIMPEXP_CORE wxPNGHandler: public wxImageHandler
 {
 public:
     inline wxPNGHandler()
 {
 public:
     inline wxPNGHandler()
@@ -43,17 +47,21 @@ public:
         m_mime = wxT("image/png");
     }
 
         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 );
 #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)
 };
     virtual bool DoCanRead( wxInputStream& stream );
 #endif
 
 private:
     DECLARE_DYNAMIC_CLASS(wxPNGHandler)
 };
-#endif
 
 
+#endif
+  // wxUSE_LIBPNG
 
 #endif
   // _WX_IMAGPNG_H_
 
 #endif
   // _WX_IMAGPNG_H_