Applied patch which allows you to detach a stream

from a wxFSFile. Patch 1190378


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@41034 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Robert Roebling
2006-09-06 13:57:06 +00:00
parent 5949d30725
commit 84d1cd430f
2 changed files with 15 additions and 1 deletions

View File

@@ -71,6 +71,15 @@ class wxMyFSFile : public wxFSFile
};
\end{verbatim}
\membersection{wxFSFile::DetachStream}\label{wxfsfiledetachstream}
\func{void}{DetachStream}{\void}
Detaches the stream from the wxFSFile object. That is, the
stream obtained with {\tt GetStream()} will continue its existance
after the wxFSFile object is deleted. You will have to delete
the stream yourself.
\membersection{wxFSFile::GetAnchor}\label{wxfsfilegetanchor}
\constfunc{const wxString\&}{GetAnchor}{\void}

View File

@@ -48,6 +48,7 @@ public:
)
{
m_Stream = stream;
m_destroy = true;
m_Location = loc;
m_MimeType = mimetype; m_MimeType.MakeLower();
m_Anchor = anchor;
@@ -56,12 +57,15 @@ public:
#endif // wxUSE_DATETIME
}
virtual ~wxFSFile() { if (m_Stream) delete m_Stream; }
virtual ~wxFSFile() { if (m_Stream && m_destroy) delete m_Stream; }
// returns stream. This doesn't _create_ stream, it only returns
// pointer to it.
wxInputStream *GetStream() const {return m_Stream;}
// gives away the ownership of stream
void DetachStream() { m_destroy = false; }
// returns file's mime type
const wxString& GetMimeType() const {return m_MimeType;}
@@ -76,6 +80,7 @@ public:
private:
wxInputStream *m_Stream;
bool m_destroy;
wxString m_Location;
wxString m_MimeType;
wxString m_Anchor;