X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/f4a8c29f7a3ffa7eb60d9b7f055565eb2df368d9..4c7e33c5ea8f4e68a1468333e26251d0271613b0:/src/common/stream.cpp diff --git a/src/common/stream.cpp b/src/common/stream.cpp index f25f6381fb..3c038e14d9 100644 --- a/src/common/stream.cpp +++ b/src/common/stream.cpp @@ -348,7 +348,7 @@ wxInputStream& wxInputStream::operator>>(float& f) } if (c == '.') { - float f_multiplicator = 0.1; + float f_multiplicator = (float) 0.1; c = GetC(); while (isdigit(c)) { @@ -363,12 +363,14 @@ wxInputStream& wxInputStream::operator>>(float& f) return *this; } +#if wxUSE_SERIAL wxInputStream& wxInputStream::operator>>(wxObject *& obj) { wxObjectInputStream obj_s(*this); obj = obj_s.LoadObject(); return *this; } +#endif off_t wxInputStream::SeekI(off_t pos, wxSeekMode mode) { @@ -542,20 +544,38 @@ wxOutputStream& wxOutputStream::operator<<(double f) return Write(strfloat, strfloat.Len()); } +#if wxUSE_SERIAL wxOutputStream& wxOutputStream::operator<<(wxObject& obj) { wxObjectOutputStream obj_s(*this); obj_s.SaveObject(obj); return *this; } +#endif + +// ---------------------------------------------------------------------------- +// wxStream +// ---------------------------------------------------------------------------- + +wxStream::wxStream() + : wxInputStream(), wxOutputStream() +{ +} // ---------------------------------------------------------------------------- // wxFilterInputStream // ---------------------------------------------------------------------------- +wxFilterInputStream::wxFilterInputStream() + : wxInputStream(NULL) +{ +} + wxFilterInputStream::wxFilterInputStream(wxInputStream& stream) : wxInputStream(NULL) { m_parent_i_stream = &stream; + wxDELETE(m_i_streambuf); // In case m_i_streambuf has been initialized. + m_i_destroybuf = FALSE; m_i_streambuf = stream.InputStreamBuffer(); } @@ -578,14 +598,20 @@ off_t wxFilterInputStream::DoTellInput() const return m_parent_i_stream->TellI(); } - // ---------------------------------------------------------------------------- // wxFilterOutputStream // ---------------------------------------------------------------------------- +wxFilterOutputStream::wxFilterOutputStream() + : wxOutputStream(NULL) +{ +} + wxFilterOutputStream::wxFilterOutputStream(wxOutputStream& stream) : wxOutputStream(NULL) { m_parent_o_stream = &stream; + wxDELETE(m_o_streambuf); // In case m_o_streambuf has been initialized. + m_o_destroybuf = FALSE; m_o_streambuf = stream.OutputStreamBuffer(); } @@ -608,6 +634,19 @@ off_t wxFilterOutputStream::DoTellOutput() const return m_parent_o_stream->TellO(); } +// ---------------------------------------------------------------------------- +// wxFilterStream +// ---------------------------------------------------------------------------- + +wxFilterStream::wxFilterStream() +{ +} + +wxFilterStream::wxFilterStream(wxStream& stream) + : wxFilterInputStream(stream), wxFilterOutputStream(stream) +{ +} + // ---------------------------------------------------------------------------- // Some IOManip function // ----------------------------------------------------------------------------