]> git.saurik.com Git - wxWidgets.git/commitdiff
Document filter streams take owner ship when created with a pointer,
authorMichael Wetherell <mike.wetherell@ntlworld.com>
Sun, 29 Oct 2006 12:56:48 +0000 (12:56 +0000)
committerMichael Wetherell <mike.wetherell@ntlworld.com>
Sun, 29 Oct 2006 12:56:48 +0000 (12:56 +0000)
new feature of the archive factories and new filter factories.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@42614 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

docs/latex/wx/archive.tex
docs/latex/wx/classes.tex
docs/latex/wx/fltfactory.tex [new file with mode: 0644]
docs/latex/wx/fltinstr.tex
docs/latex/wx/fltoutst.tex
docs/latex/wx/strmzlib.tex
docs/latex/wx/zipstrm.tex

index 15dd1c64dfa3f2508295e82676ec9c1b17c6b3d4..770071328a447e191a636af6ac4f39247409d793 100644 (file)
@@ -5,13 +5,23 @@
 
 \section{\class{wxArchiveClassFactory}}\label{wxarchiveclassfactory}
 
 
 \section{\class{wxArchiveClassFactory}}\label{wxarchiveclassfactory}
 
-An abstract base class which serves as a common interface to
-archive class factories such as \helpref{wxZipClassFactory}{wxzipclassfactory}.
+Allows the creation of streams to handle archive formats such
+as zip and tar.
+
+For example, given a filename you can search for a factory that will
+handle it and create a stream to read it:
 
 
-For each supported archive type (such as zip) there is a class factory
-derived from wxArchiveClassFactory, which allows archive objects to be
-created in a generic way, without knowing the particular type of archive
-being used.
+\begin{verbatim}
+    factory = wxArchiveClassFactory::Find(filename, wxSTREAM_FILEEXT);
+    if (factory)
+        stream = factory->NewStream(new wxFFileInputStream(filename));
+
+\end{verbatim}
+
+\helpref{Find()}{wxarchiveclassfactoryfind} can also search
+for a factory by MIME type or wxFileSystem protocol.
+The available factories can be enumerated
+using \helpref{GetFirst() and GetNext()}{wxarchiveclassfactorygetfirst}.
 
 \wxheading{Derived from}
 
 
 \wxheading{Derived from}
 
@@ -21,13 +31,27 @@ being used.
 
 <wx/archive.h>
 
 
 <wx/archive.h>
 
+\wxheading{Data structures}
+
+\begin{verbatim}
+enum wxStreamProtocolType
+{
+    wxSTREAM_PROTOCOL,  // wxFileSystem protocol (should be only one)
+    wxSTREAM_MIMETYPE,  // MIME types the stream handles
+    wxSTREAM_ENCODING,  // Not used for archives
+    wxSTREAM_FILEEXT    // File extensions the stream handles
+};
+
+\end{verbatim}
+
 \wxheading{See also}
 
 \helpref{Archive formats such as zip}{wxarc}\\
 \helpref{Generic archive programming}{wxarcgeneric}\\
 \helpref{wxArchiveEntry}{wxarchiveentry}\\
 \helpref{wxArchiveInputStream}{wxarchiveinputstream}\\
 \wxheading{See also}
 
 \helpref{Archive formats such as zip}{wxarc}\\
 \helpref{Generic archive programming}{wxarcgeneric}\\
 \helpref{wxArchiveEntry}{wxarchiveentry}\\
 \helpref{wxArchiveInputStream}{wxarchiveinputstream}\\
-\helpref{wxArchiveOutputStream}{wxarchiveoutputstream}
+\helpref{wxArchiveOutputStream}{wxarchiveoutputstream}\\
+\helpref{wxFilterClassFactory}{wxfilterclassfactory}
 
 \latexignore{\rtfignore{\wxheading{Members}}}
 
 
 \latexignore{\rtfignore{\wxheading{Members}}}
 
@@ -43,6 +67,54 @@ will use when translating meta-data. The initial default, set by the
 constructor, is wxConvLocal.
 
 
 constructor, is wxConvLocal.
 
 
+\membersection{wxArchiveClassFactory::CanHandle}\label{wxarchiveclassfactorycanhandle}
+
+\constfunc{bool}{CanHandle}{\param{const wxChar* }{protocol}, \param{wxStreamProtocolType }{type = wxSTREAM\_PROTOCOL}}
+
+Returns true if this factory can handle the given protocol, MIME type
+or file extension.
+
+When using wxSTREAM\_FILEEXT for the second parameter, the first parameter
+can be a complete filename rather than just an extension.
+
+
+\membersection{wxArchiveClassFactory::Find}\label{wxarchiveclassfactoryfind}
+
+\func{static const wxArchiveClassFactory*}{Find}{\param{const wxChar* }{protocol}, \param{wxStreamProtocolType }{type = wxSTREAM\_PROTOCOL}}
+
+A static member that finds a factory that can handle a given protocol, MIME
+type or file extension.  Returns a pointer to the class factory if found, or
+NULL otherwise. It does not give away ownership of the factory.
+
+When using wxSTREAM\_FILEEXT for the second parameter, the first parameter
+can be a complete filename rather than just an extension.
+
+
+\membersection{wxArchiveClassFactory::GetFirst/GetNext}\label{wxarchiveclassfactorygetfirst}
+
+\func{static const wxArchiveClassFactory*}{GetFirst}{\void}
+
+\constfunc{const wxArchiveClassFactory*}{GetNext}{\void}
+
+GetFirst and GetNext can be used to enumerate the available factories.
+
+For example, to list them:
+
+\begin{verbatim}
+    wxString list;
+    const wxArchiveClassFactory *factory = wxArchiveClassFactory::GetFirst();
+
+    while (factory) {
+        list << factory->GetProtocol() << _T("\n");
+        factory = factory->GetNext();
+    }
+
+\end{verbatim}
+
+GetFirst()/GetNext() return a pointer to a factory or NULL if no more
+are available. They do not give away ownership of the factory.
+
+
 \membersection{wxArchiveClassFactory::GetInternalName}\label{wxarchiveclassfactorygetinternalname}
 
 \constfunc{wxString}{GetInternalName}{\param{const wxString\& }{name}, \param{wxPathFormat }{format = wxPATH\_NATIVE}}
 \membersection{wxArchiveClassFactory::GetInternalName}\label{wxarchiveclassfactorygetinternalname}
 
 \constfunc{wxString}{GetInternalName}{\param{const wxString\& }{name}, \param{wxPathFormat }{format = wxPATH\_NATIVE}}
@@ -52,6 +124,34 @@ for example
  \helpref{wxZipEntry::GetInternalName()}{wxzipentrygetinternalname}.
 
 
  \helpref{wxZipEntry::GetInternalName()}{wxzipentrygetinternalname}.
 
 
+\membersection{wxArchiveClassFactory::GetProtocol}\label{wxarchiveclassfactorygetprotocol}
+
+\constfunc{wxString}{GetProtocol}{\void}
+
+Returns the wxFileSystem protocol supported by this factory. Equivalent
+to wxString(*GetProtcols()).
+
+
+\membersection{wxArchiveClassFactory::GetProtocols}\label{wxarchiveclassfactorygetprotocols}
+
+\constfunc{const wxChar * const*}{GetProtocols}{\param{wxStreamProtocolType }{type = wxSTREAM\_PROTOCOL}}
+
+Returns the protocols, MIME types or file extensions supported by this
+factory, as an array of null terminated strings. It does not give away
+ownership of the array or strings.
+
+For example, to list the file extensions a factory supports:
+
+\begin{verbatim}
+    wxString list;
+    const wxChar *const *p;
+
+    for (p = factory->GetProtocols(wxSTREAM_FILEEXT); *p; p++)
+        list << *p << _T("\n");
+
+\end{verbatim}
+
+
 \membersection{wxArchiveClassFactory::NewEntry}\label{wxarchiveclassfactorynewentry}
 
 \constfunc{wxArchiveEntry*}{NewEntry}{\void}
 \membersection{wxArchiveClassFactory::NewEntry}\label{wxarchiveclassfactorynewentry}
 
 \constfunc{wxArchiveEntry*}{NewEntry}{\void}
@@ -66,9 +166,45 @@ appropriate type.
 
 \constfunc{wxArchiveOutputStream*}{NewStream}{\param{wxOutputStream\& }{stream}}
 
 
 \constfunc{wxArchiveOutputStream*}{NewStream}{\param{wxOutputStream\& }{stream}}
 
-Create a new \helpref{wxArchiveInputStream}{wxarchiveinputstream}
-or \helpref{wxArchiveOutputStream}{wxarchiveoutputstream} of the
-appropriate type.
+\constfunc{wxArchiveInputStream*}{NewStream}{\param{wxInputStream* }{stream}}
+
+\constfunc{wxArchiveOutputStream*}{NewStream}{\param{wxOutputStream* }{stream}}
+
+Create a new input or output stream to read or write an archive.
+
+If the parent stream is passed as a pointer then the new archive stream
+takes ownership of it. If it is passed by reference then it does not.
+
+
+\membersection{wxArchiveClassFactory::PushFront}\label{wxarchiveclassfactorypushfront}
+
+\func{void}{PushFront}{\void}
+
+Adds this class factory to the list returned
+by \helpref{GetFirst()/GetNext()}{wxarchiveclassfactorygetfirst}.
+
+It is not necessary to do this to use the archive streams. It is usually
+used when implementing streams, typically the implementation will 
+add a static instance of its factory class.
+
+It can also be used to change the order of a factory already in the list,
+bringing it to the front. This isn't a thread safe operation
+so can't be done when other threads are running that will be using the list.
+
+The list does not take ownership of the factory.
+
+
+\membersection{wxArchiveClassFactory::Remove}\label{wxarchiveclassfactoryremove}
+
+\func{void}{Remove}{\void}
+
+Removes this class factory from the list returned
+by \helpref{GetFirst()/GetNext()}{wxarchiveclassfactorygetfirst}.
+
+Removing from the list isn't a thread safe operation
+so can't be done when other threads are running that will be using the list.
+
+The list does not own the factories, so removing a factory does not delete it.
 
 
 %
 
 
 %
index 67d99fc7f0a9334ea1f3d81d27921286b8c8023c..6f50161a29966fd4308b15fba1108d18649dcabd 100644 (file)
 \input filesys.tex
 \input filesysh.tex
 \input filetype.tex
 \input filesys.tex
 \input filesysh.tex
 \input filetype.tex
+\input fltfactory.tex
 \input fltinstr.tex
 \input fltoutst.tex
 \input fdrepdlg.tex
 \input fltinstr.tex
 \input fltoutst.tex
 \input fdrepdlg.tex
diff --git a/docs/latex/wx/fltfactory.tex b/docs/latex/wx/fltfactory.tex
new file mode 100644 (file)
index 0000000..662f71d
--- /dev/null
@@ -0,0 +1,186 @@
+%
+% automatically generated by HelpGen $Revision$ from
+% include/wx/stream.h at 28/Oct/06 18:49:10
+%
+
+\section{\class{wxFilterClassFactory}}\label{wxfilterclassfactory}
+
+Allows the creation of filter streams to handle compression formats such
+as gzip and bzip2.
+
+For example, given a filename you can search for a factory that will
+handle it and create a stream to decompress it:
+
+\begin{verbatim}
+    factory = wxFilterClassFactory::Find(filename, wxSTREAM_FILEEXT);
+    if (factory)
+        stream = factory->NewStream(new wxFFileInputStream(filename));
+
+\end{verbatim}
+
+\helpref{Find()}{wxfilterclassfactoryfind} can also search
+for a factory by MIME type, HTTP encoding or by wxFileSystem protocol.
+The available factories can be enumerated
+using \helpref{GetFirst() and GetNext()}{wxfilterclassfactorygetfirst}.
+
+\wxheading{Derived from}
+
+\helpref{wxObject}{wxobject}
+
+\wxheading{Include files}
+
+<wx/stream.h>
+
+\wxheading{Data structures}
+
+\begin{verbatim}
+enum wxStreamProtocolType
+{
+    wxSTREAM_PROTOCOL,  // wxFileSystem protocol (should be only one)
+    wxSTREAM_MIMETYPE,  // MIME types the stream handles
+    wxSTREAM_ENCODING,  // The HTTP Content-Encodings the stream handles
+    wxSTREAM_FILEEXT    // File extensions the stream handles
+};
+
+\end{verbatim}
+
+\wxheading{See also}
+
+\helpref{wxFilterInputStream}{wxfilterinputstream}\\
+\helpref{wxFilterOutputStream}{wxfilteroutputstream}\\
+\helpref{wxArchiveClassFactory}{wxarchiveclassfactory}\\
+\helpref{Archive formats such as zip}{wxarc}
+
+\latexignore{\rtfignore{\wxheading{Members}}}
+
+
+\membersection{wxFilterClassFactory::CanHandle}\label{wxfilterclassfactorycanhandle}
+
+\constfunc{bool}{CanHandle}{\param{const wxChar* }{protocol}, \param{wxStreamProtocolType }{type = wxSTREAM\_PROTOCOL}}
+
+Returns true if this factory can handle the given protocol, MIME type, HTTP
+encoding or file extension.
+
+When using wxSTREAM\_FILEEXT for the second parameter, the first parameter
+can be a complete filename rather than just an extension.
+
+
+\membersection{wxFilterClassFactory::Find}\label{wxfilterclassfactoryfind}
+
+\func{static const wxFilterClassFactory*}{Find}{\param{const wxChar* }{protocol}, \param{wxStreamProtocolType }{type = wxSTREAM\_PROTOCOL}}
+
+A static member that finds a factory that can handle a given protocol, MIME
+type, HTTP encoding or file extension.  Returns a pointer to the class
+factory if found, or NULL otherwise. It does not give away ownership of the
+factory.
+
+When using wxSTREAM\_FILEEXT for the second parameter, the first parameter
+can be a complete filename rather than just an extension.
+
+
+\membersection{wxFilterClassFactory::GetFirst/GetNext}\label{wxfilterclassfactorygetfirst}
+
+\func{static const wxFilterClassFactory*}{GetFirst}{\void}
+
+\constfunc{const wxFilterClassFactory*}{GetNext}{\void}
+
+GetFirst and GetNext can be used to enumerate the available factories.
+
+For example, to list them:
+
+\begin{verbatim}
+    wxString list;
+    const wxFilterClassFactory *factory = wxFilterClassFactory::GetFirst();
+
+    while (factory) {
+        list << factory->GetProtocol() << _T("\n");
+        factory = factory->GetNext();
+    }
+
+\end{verbatim}
+
+GetFirst()/GetNext() return a pointer to a factory or NULL if no more
+are available. They do not give away ownership of the factory.
+
+
+\membersection{wxFilterClassFactory::GetProtocol}\label{wxfilterclassfactorygetprotocol}
+
+\constfunc{wxString}{GetProtocol}{\void}
+
+Returns the wxFileSystem protocol supported by this factory. Equivalent
+to wxString(*GetProtcols()).
+
+
+\membersection{wxFilterClassFactory::GetProtocols}\label{wxfilterclassfactorygetprotocols}
+
+\constfunc{const wxChar * const*}{GetProtocols}{\param{wxStreamProtocolType }{type = wxSTREAM\_PROTOCOL}}
+
+Returns the protocols, MIME types, HTTP encodings or file extensions
+supported by this factory, as an array of null terminated strings. It does
+not give away ownership of the array or strings.
+
+For example, to list the file extensions a factory supports:
+
+\begin{verbatim}
+    wxString list;
+    const wxChar *const *p;
+
+    for (p = factory->GetProtocols(wxSTREAM_FILEEXT); *p; p++)
+        list << *p << _T("\n");
+
+\end{verbatim}
+
+
+\membersection{wxFilterClassFactory::NewStream}\label{wxfilterclassfactorynewstream}
+
+\constfunc{wxFilterInputStream*}{NewStream}{\param{wxInputStream\& }{stream}}
+
+\constfunc{wxFilterOutputStream*}{NewStream}{\param{wxOutputStream\& }{stream}}
+
+\constfunc{wxFilterInputStream*}{NewStream}{\param{wxInputStream* }{stream}}
+
+\constfunc{wxFilterOutputStream*}{NewStream}{\param{wxOutputStream* }{stream}}
+
+Create a new input or output stream to decompress or compress a given stream.
+
+If the parent stream is passed as a pointer then the new filter stream
+takes ownership of it. If it is passed by reference then it does not.
+
+
+\membersection{wxFilterClassFactory::PopExtension}\label{wxfilterclassfactorypopextension}
+
+\constfunc{wxString}{PopExtension}{\param{const wxString\& }{location}}
+
+Remove the file extension of {\it location} if it is one of the file
+extensions handled by this factory.
+
+
+\membersection{wxFilterClassFactory::PushFront}\label{wxfilterclassfactorypushfront}
+
+\func{void}{PushFront}{\void}
+
+Adds this class factory to the list returned
+by \helpref{GetFirst()/GetNext()}{wxfilterclassfactorygetfirst}.
+
+It is not necessary to do this to use the filter streams. It is usually
+used when implementing streams, typically the implementation will 
+add a static instance of its factory class.
+
+It can also be used to change the order of a factory already in the list,
+bringing it to the front. This isn't a thread safe operation
+so can't be done when other threads are running that will be using the list.
+
+The list does not take ownership of the factory.
+
+
+\membersection{wxFilterClassFactory::Remove}\label{wxfilterclassfactoryremove}
+
+\func{void}{Remove}{\void}
+
+Removes this class factory from the list returned
+by \helpref{GetFirst()/GetNext()}{wxfilterclassfactorygetfirst}.
+
+Removing from the list isn't a thread safe operation
+so can't be done when other threads are running that will be using the list.
+
+The list does not own the factories, so removing a factory does not delete it.
index 0be10d46dab2b7b6e4ec528130764c34fb6c6952..f521c0ddff2ac2ee6ea3067c14344977f95f34ff 100644 (file)
@@ -21,6 +21,11 @@ from another stream and pass it to the requester.
 The interface of this class is the same as that of wxInputStream. Only a constructor
 differs and it is documented below.
 
 The interface of this class is the same as that of wxInputStream. Only a constructor
 differs and it is documented below.
 
+\wxheading{See also}
+
+\helpref{wxFilterClassFactory}{wxfilterclassfactory}\\
+\helpref{wxFilterOutputStream}{wxfilteroutputstream}
+
 \latexignore{\rtfignore{\wxheading{Members}}}
 
 % -----------
 \latexignore{\rtfignore{\wxheading{Members}}}
 
 % -----------
@@ -30,5 +35,10 @@ differs and it is documented below.
 
 \func{}{wxFilterInputStream}{\param{wxInputStream\&}{ stream}}
 
 
 \func{}{wxFilterInputStream}{\param{wxInputStream\&}{ stream}}
 
+\func{}{wxFilterInputStream}{\param{wxInputStream*}{ stream}}
+
 Initializes a "filter" stream.
 
 Initializes a "filter" stream.
 
+If the parent stream is passed as a pointer then the new filter stream
+takes ownership of it. If it is passed by reference then it does not.
+
index 0b0f95aaf3b630c4f46903d4a62e8640042059f8..949a2b667bb5224e09e1fa66a4e442134d00039d 100644 (file)
@@ -22,6 +22,11 @@ stream.
 The use of this class is exactly the same as of wxOutputStream. Only a constructor
 differs and it is documented below.
 
 The use of this class is exactly the same as of wxOutputStream. Only a constructor
 differs and it is documented below.
 
+\wxheading{See also}
+
+\helpref{wxFilterClassFactory}{wxfilterclassfactory}\\
+\helpref{wxFilterInputStream}{wxfilterinputstream}
+
 \latexignore{\rtfignore{\wxheading{Members}}}
 
 % -----------
 \latexignore{\rtfignore{\wxheading{Members}}}
 
 % -----------
@@ -31,5 +36,10 @@ differs and it is documented below.
 
 \func{}{wxFilterOutputStream}{\param{wxOutputStream\&}{ stream}}
 
 
 \func{}{wxFilterOutputStream}{\param{wxOutputStream\&}{ stream}}
 
+\func{}{wxFilterOutputStream}{\param{wxOutputStream*}{ stream}}
+
 Initializes a "filter" stream.
 
 Initializes a "filter" stream.
 
+If the parent stream is passed as a pointer then the new filter stream
+takes ownership of it. If it is passed by reference then it does not.
+
index 722011a33a10ec362d73458c3aafed5337020c72..eda8d2f2077c0d5bc0ae231269466faa1d8387eb 100644 (file)
@@ -30,6 +30,11 @@ not supported, it always returns $0$.
 
 \func{}{wxZlibInputStream}{\param{wxInputStream\&}{ stream}, \param{int}{ flags = wxZLIB\_AUTO}}
 
 
 \func{}{wxZlibInputStream}{\param{wxInputStream\&}{ stream}, \param{int}{ flags = wxZLIB\_AUTO}}
 
+\func{}{wxZlibInputStream}{\param{wxInputStream*}{ stream}, \param{int}{ flags = wxZLIB\_AUTO}}
+
+If the parent stream is passed as a pointer then the new filter stream
+takes ownership of it. If it is passed by reference then it does not.
+
 The {\it flags} wxZLIB\_ZLIB and wxZLIB\_GZIP specify whether the input data
 is in zlib or gzip format. If wxZLIB\_AUTO is used, then zlib will
 autodetect the stream type, this is the default.
 The {\it flags} wxZLIB\_ZLIB and wxZLIB\_GZIP specify whether the input data
 is in zlib or gzip format. If wxZLIB\_AUTO is used, then zlib will
 autodetect the stream type, this is the default.
@@ -101,11 +106,16 @@ The stream is not seekable, \helpref{SeekO()}{wxoutputstreamseeko} returns
 
 \func{}{wxZlibOutputStream}{\param{wxOutputStream\&}{ stream}, \param{int}{ level = -1}, \param{int}{ flags = wxZLIB\_ZLIB}}
 
 
 \func{}{wxZlibOutputStream}{\param{wxOutputStream\&}{ stream}, \param{int}{ level = -1}, \param{int}{ flags = wxZLIB\_ZLIB}}
 
+\func{}{wxZlibOutputStream}{\param{wxOutputStream*}{ stream}, \param{int}{ level = -1}, \param{int}{ flags = wxZLIB\_ZLIB}}
+
 Creates a new write-only compressed stream. {\it level} means level of 
 compression. It is number between 0 and 9 (including these values) where
 0 means no compression and 9 best but slowest compression. -1 is default
 value (currently equivalent to 6).
 
 Creates a new write-only compressed stream. {\it level} means level of 
 compression. It is number between 0 and 9 (including these values) where
 0 means no compression and 9 best but slowest compression. -1 is default
 value (currently equivalent to 6).
 
+If the parent stream is passed as a pointer then the new filter stream
+takes ownership of it. If it is passed by reference then it does not.
+
 The {\it flags} wxZLIB\_ZLIB and wxZLIB\_GZIP specify whether the output data
 will be in zlib or gzip format. wxZLIB\_ZLIB is the default.
 
 The {\it flags} wxZLIB\_ZLIB and wxZLIB\_GZIP specify whether the output data
 will be in zlib or gzip format. wxZLIB\_ZLIB is the default.
 
index e60b07afd8d3c217f409d5278dafdff78e72daa1..b7cbc612bee2a31cdd9d877b829eb223d5055b6a 100644 (file)
@@ -462,13 +462,18 @@ typedef wxZipEntry entry_type
 
 \func{}{wxZipInputStream}{\param{wxInputStream\& }{stream}, \param{wxMBConv\& }{conv = wxConvLocal}}
 
 
 \func{}{wxZipInputStream}{\param{wxInputStream\& }{stream}, \param{wxMBConv\& }{conv = wxConvLocal}}
 
+\func{}{wxZipInputStream}{\param{wxInputStream*}{stream}, \param{wxMBConv\& }{conv = wxConvLocal}}
+
 Constructor. In a Unicode build the second parameter {\tt conv} is
 used to translate the filename and comment fields into Unicode. It has
 no effect on the stream's data.
 
 Constructor. In a Unicode build the second parameter {\tt conv} is
 used to translate the filename and comment fields into Unicode. It has
 no effect on the stream's data.
 
+If the parent stream is passed as a pointer then the new filter stream
+takes ownership of it. If it is passed by reference then it does not.
+
 \func{}{wxZipInputStream}{\param{const wxString\& }{archive}, \param{const wxString\& }{file}}
 
 \func{}{wxZipInputStream}{\param{const wxString\& }{archive}, \param{const wxString\& }{file}}
 
-Compatibility constructor.
+Compatibility constructor (requires WXWIN\_COMPATIBILITY\_2\_6).
 
 When this constructor is used, an emulation of seeking is
 switched on for compatibility with previous versions. Note however,
 
 When this constructor is used, an emulation of seeking is
 switched on for compatibility with previous versions. Note however,
@@ -608,10 +613,15 @@ entry and begins the next.
 
 \func{}{wxZipOutputStream}{\param{wxOutputStream\& }{stream}, \param{int }{level = -1}, \param{wxMBConv\& }{conv = wxConvLocal}}
 
 
 \func{}{wxZipOutputStream}{\param{wxOutputStream\& }{stream}, \param{int }{level = -1}, \param{wxMBConv\& }{conv = wxConvLocal}}
 
+\func{}{wxZipOutputStream}{\param{wxOutputStream*}{stream}, \param{int }{level = -1}, \param{wxMBConv\& }{conv = wxConvLocal}}
+
 Constructor. {\tt level} is the compression level to use.
 It can be a value between 0 and 9 or -1 to use the default value
 which currently is equivalent to 6.
 
 Constructor. {\tt level} is the compression level to use.
 It can be a value between 0 and 9 or -1 to use the default value
 which currently is equivalent to 6.
 
+If the parent stream is passed as a pointer then the new filter stream
+takes ownership of it. If it is passed by reference then it does not.
+
 In a Unicode build the third parameter {\tt conv} is used to translate
 the filename and comment fields to Unicode. It has no effect on the
 stream's data.
 In a Unicode build the third parameter {\tt conv} is used to translate
 the filename and comment fields to Unicode. It has no effect on the
 stream's data.