]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/zstream.h
Must clear property selection in wxPGProperty::SetChoices() or risk a crash
[wxWidgets.git] / include / wx / zstream.h
index fd3cb5eb0a03dec52f48fa16a4051168b6bfa83d..5a895ab5a8d4fbab6f0281fe6aae4e00f58173bc 100644 (file)
@@ -18,7 +18,7 @@
 #include "wx/stream.h"
 
 // Compression level
-enum {
+enum wxZlibCompressionLevels {
     wxZ_DEFAULT_COMPRESSION = -1,
     wxZ_NO_COMPRESSION = 0,
     wxZ_BEST_SPEED = 1,
@@ -26,10 +26,7 @@ enum {
 };
 
 // Flags
-enum {
-#if WXWIN_COMPATIBILITY_2_4
-    wxZLIB_24COMPATIBLE = 4, // read v2.4.x data without error
-#endif
+enum wxZLibFlags {
     wxZLIB_NO_HEADER = 0,    // raw deflate stream, no header or checksum
     wxZLIB_ZLIB = 1,         // zlib header and checksum
     wxZLIB_GZIP = 2,         // gzip header and checksum, requires zlib 1.2.1+
@@ -47,6 +44,9 @@ class WXDLLIMPEXP_BASE wxZlibInputStream: public wxFilterInputStream {
 
   static bool CanHandleGZip();
 
+  bool SetDictionary(const char *data, const size_t datalen);
+  bool SetDictionary(const wxMemoryBuffer &buf);
+
  protected:
   size_t OnSysRead(void *buffer, size_t size);
   wxFileOffset OnSysTell() const { return m_pos; }
@@ -59,11 +59,8 @@ class WXDLLIMPEXP_BASE wxZlibInputStream: public wxFilterInputStream {
   unsigned char *m_z_buffer;
   struct z_stream_s *m_inflate;
   wxFileOffset m_pos;
-#if WXWIN_COMPATIBILITY_2_4
-  bool m_24compatibilty;
-#endif
 
-  DECLARE_NO_COPY_CLASS(wxZlibInputStream)
+  wxDECLARE_NO_COPY_CLASS(wxZlibInputStream);
 };
 
 class WXDLLIMPEXP_BASE wxZlibOutputStream: public wxFilterOutputStream {
@@ -78,6 +75,9 @@ class WXDLLIMPEXP_BASE wxZlibOutputStream: public wxFilterOutputStream {
 
   static bool CanHandleGZip();
 
+  bool SetDictionary(const char *data, const size_t datalen);
+  bool SetDictionary(const wxMemoryBuffer &buf);
+
  protected:
   size_t OnSysWrite(const void *buffer, size_t size);
   wxFileOffset OnSysTell() const { return m_pos; }
@@ -93,7 +93,7 @@ class WXDLLIMPEXP_BASE wxZlibOutputStream: public wxFilterOutputStream {
   struct z_stream_s *m_deflate;
   wxFileOffset m_pos;
 
-  DECLARE_NO_COPY_CLASS(wxZlibOutputStream)
+  wxDECLARE_NO_COPY_CLASS(wxZlibOutputStream);
 };
 
 class WXDLLIMPEXP_BASE wxZlibClassFactory: public wxFilterClassFactory