From 7ff14117cbfd017d73508f51b27495ee7e9189f3 Mon Sep 17 00:00:00 2001
From: Robert Roebling <robert@roebling.de>
Date: Fri, 30 Jul 1999 13:16:45 +0000
Subject: [PATCH]   Some more doc beauty,   Typo in wxDataStream,

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3212 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
---
 docs/gtk/changes.txt       |  5 +--
 docs/latex/wx/category.tex |  6 ++-
 docs/latex/wx/clipbrd.tex  |  6 +--
 docs/latex/wx/datstrm.tex  | 79 ++++++++++++++++++++++++++++++--------
 docs/latex/wx/txtstrm.tex  |  6 +++
 docs/latex/wx/wxhtml.tex   | 12 +++---
 src/common/datstrm.cpp     |  2 +-
 7 files changed, 87 insertions(+), 29 deletions(-)

diff --git a/docs/gtk/changes.txt b/docs/gtk/changes.txt
index 770dd42ef1..9212a4d8d3 100644
--- a/docs/gtk/changes.txt
+++ b/docs/gtk/changes.txt
@@ -25,9 +25,6 @@ Reworked in-place editing of wxListCtrl and wxTreeCtrl.
 
 Fixed bug reporting two refreshes when scrolling.
 
-Disabled GUI threading as I have not been able to get this working
-correctly in _all_ circumstances.
-
 Corrected bug in wxComboBox client data code.
 
 Corrected reported but unverified bug in BMP loading code.
@@ -39,6 +36,8 @@ wxFilesystem, wxHTMLHelpController and others.
 
 Added a wrapper for ffile() etc functions.
 
+Updateds to wxDynamicLibrary.
+
 New documentation.
 
 Fixed in unenclosed number of other bugs...
diff --git a/docs/latex/wx/category.tex b/docs/latex/wx/category.tex
index c6a5233d59..b3ebbcecaa 100644
--- a/docs/latex/wx/category.tex
+++ b/docs/latex/wx/category.tex
@@ -378,8 +378,10 @@ libraries, and to provide enhanced functionality.
 \twocolitem{\helpref{wxOutputStream}{wxoutputstream}}{Output stream class}
 \twocolitem{\helpref{wxFilterInputStream}{wxfilterinputstream}}{Filtered input stream class}
 \twocolitem{\helpref{wxFilterOutputStream}{wxfilteroutputstream}}{Filtered output stream class}
-\twocolitem{\helpref{wxDataInputStream}{wxdatainputstream}}{Platform-independent data input stream class}
-\twocolitem{\helpref{wxDataOutputStream}{wxdataoutputstream}}{Platform-independent data output stream class}
+\twocolitem{\helpref{wxDataInputStream}{wxdatainputstream}}{Platform-independent binary data input stream class}
+\twocolitem{\helpref{wxDataOutputStream}{wxdataoutputstream}}{Platform-independent binary data output stream class}
+\twocolitem{\helpref{wxTextInputStream}{wxtextinputstream}}{Platform-independent text data input stream class}
+\twocolitem{\helpref{wxTextOutputStream}{wxtextoutputstream}}{Platform-independent text data output stream class}
 \twocolitem{\helpref{wxFileInputStream}{wxfileinputstream}}{File input stream class}
 \twocolitem{\helpref{wxFileOutputStream}{wxfileoutputstream}}{File output stream class}
 \twocolitem{\helpref{wxZlibInputStream}{wxzlibinputstream}}{Zlib (compression) input stream class}
diff --git a/docs/latex/wx/clipbrd.tex b/docs/latex/wx/clipbrd.tex
index 151509e42d..e9b3352026 100644
--- a/docs/latex/wx/clipbrd.tex
+++ b/docs/latex/wx/clipbrd.tex
@@ -114,12 +114,12 @@ Call this function to set the data object to the clipboard. This function will
 clear all previous contents in the clipboard, so calling it several times
 does not make any sense.
 
-\membersection{wxClipboard::UsePrimarySelection}\label{wxclipboaruseprimary}
+\membersection{wxClipboard::UsePrimarySelection}\label{wxclipboarduseprimary}
 
-\func{void}{UsePrimarySelection}{\param(bool}{ primary = TRUE}
+\func{void}{UsePrimarySelection}{\param{bool}{ primary = TRUE}}
 
 On platforms supporting it (currently only GTK), selects the so called
 PRIMARY SELECTION as the clipboard as opposed to the normal clipboard,
-if primary is TRUE.
+if {\it primary} is TRUE.
 
 
diff --git a/docs/latex/wx/datstrm.tex b/docs/latex/wx/datstrm.tex
index 5aa3577443..69fc9ef75e 100644
--- a/docs/latex/wx/datstrm.tex
+++ b/docs/latex/wx/datstrm.tex
@@ -3,10 +3,33 @@
 % ----------------------------------------------------------------------------
 \section{\class{wxDataInputStream}}\label{wxdatainputstream}
 
-This class provides functions that read data types in a
-portable way. It can be forced to read in big-endian order or 
-little-endian order. So, a file written by an Intel processor can be read by a
-Sparc or anything else.
+This class provides functions that read binary data types in a
+portable way. Data can be read in either big-endian or litte-endian
+format, little-endian being the default on all architectures.
+
+If you want to read data from text files (or streams) use 
+\helpref{wxTextInputStream}{wxtextinputstream} instead.
+
+The >> operator is overloaded and you can use this class like a standard C++ iostream.
+Note, however, that the arguments are the fixed size types wxUint32, wxInt32 etc
+and on a typical 32-bit computer, none of these match to the "long" type (wxInt32
+is defined as signed int on 32-bit architectures) so that you cannot use long. To avoid
+problems (here and elsewhere), make use of the wxInt32, wxUint32, etc types.
+
+For example:
+\begin{verbatim}
+  wxFileInputStream input( "mytext.dat" );
+  wxDataInputStream store( input );
+  wxUint8 i1;
+  float f2;
+  wxString line;
+
+  store >> i1;       // read a 8 bit integer.
+  store >> i1 >> f2; // read a 8 bit integer followed by float.
+  store >> line;     // read a text line
+\end{verbatim}
+
+See also \helpref{wxDataOutputStream}{wxdataoutputstream}. 
 
 \wxheading{Include files}
 
@@ -31,21 +54,30 @@ be available.
 
 Destroys the wxDataInputStream object.
 
+\membersection{wxDataInputStream::BidEndianOrdered}
+
+\func{void}{BidEndianOrdered}{\param{bool}{ be_order}}
+
+If {\it be_order} is TRUE, all data will be read in big-endian
+order, such as written by programs on a big endian architecture 
+(e.g. Sparc) or written by Java-Streams (which always use 
+big-endian order).
+  
 \membersection{wxDataInputStream::Read8}
 
-\func{unsigned char}{Read8}{\void}
+\func{wxUint8}{Read8}{\void}
 
 Reads a single byte from the stream.
 
 \membersection{wxDataInputStream::Read16}
 
-\func{unsigned short}{Read16}{\void}
+\func{wxUint16}{Read16}{\void}
 
 Reads a 16 bit integer from the stream.
 
 \membersection{wxDataInputStream::Read32}
 
-\func{unsigned long}{Read32}{\void}
+\func{wxUint32}{Read32}{\void}
 
 Reads a 32 bit integer from the stream.
 
@@ -69,10 +101,18 @@ reads the string.
 
 \section{\class{wxDataOutputStream}}\label{wxdataoutputstream}
 
-This class provides functions that write data types in a
-portable way. It can be forced to read in big-endian order or 
-little-endian order. So, a file written by an Intel processor can be read by a
-Sparc or anything else.
+This class provides functions that write binary data types in a
+portable way. Data can be written in either big-endian or litte-endian
+format, little-endian being the default on all architectures.
+
+If you want to write data to text files (or streams) use 
+\helpref{wxTextOutputStream}{wxtextoutputstream} instead.
+
+The << operator is overloaded and you can use this class like a standard 
+C++ iostream. See \helpref{wxDataInputStream}{wxdatainputstream} for its 
+usage and caveats.
+
+See also \helpref{wxDataInputStream}{wxdatainputstream}. 
 
 \latexignore{\rtfignore{\wxheading{Members}}}
 
@@ -80,7 +120,7 @@ Sparc or anything else.
 
 \func{}{wxDataInputStream}{\param{wxOutputStream\&}{ stream}}
 
-Constructs a datastream object from an output stream. Only read methods will
+Constructs a datastream object from an output stream. Only write methods will
 be available.
 
 \wxheading{Parameters}
@@ -93,21 +133,30 @@ be available.
 
 Destroys the wxDataOutputStream object.
 
+\membersection{wxDataOutputStream::BidEndianOrdered}
+
+\func{void}{BidEndianOrdered}{\param{bool}{ be_order}}
+
+If {\it be_order} is TRUE, all data will be written in big-endian
+order, e.g. for reading on a Sparc or from Java-Streams (which
+always use big-endian order), otherwise data will be written in
+little-endian order.
+ 
 \membersection{wxDataOutputStream::Write8}
 
-\func{void}{wxDataOutputStream::Write8}{{\param unsigned char }{i8}}
+\func{void}{wxDataOutputStream::Write8}{{\param wxUint8 }{i8}}
 
 Writes the single byte {\it i8} to the stream.
 
 \membersection{wxDataOutputStream::Write16}
 
-\func{void}{wxDataOutputStream::Write16}{{\param unsigned short }{i16}}
+\func{void}{wxDataOutputStream::Write16}{{\param wxUint16 }{i16}}
 
 Writes the 16 bit integer {\it i16} to the stream.
 
 \membersection{wxDataOutputStream::Write32}
 
-\func{void}{wxDataOutputStream::Write32}{{\param unsigned long }{i32}}
+\func{void}{wxDataOutputStream::Write32}{{\param wxUint32 }{i32}}
 
 Writes the 32 bit integer {\it i32} to the stream.
 
diff --git a/docs/latex/wx/txtstrm.tex b/docs/latex/wx/txtstrm.tex
index 05d6b0a3bf..23858822a1 100644
--- a/docs/latex/wx/txtstrm.tex
+++ b/docs/latex/wx/txtstrm.tex
@@ -6,6 +6,9 @@
 This class provides functions that read text datas using an input stream.
 So, you can read \it{text} floats, integers.
 
+The wxTextInputStream correctly reads text files (or streams) in DOS, Macintosh
+and Unix formats and reports a single newline char as a line ending.
+
 Operator >> is overloaded and you can use this class like a standard C++ iostream.
 Note, however, that the arguments are the fixed size types wxUint32, wxInt32 etc
 and on a typical 32-bit computer, none of these match to the "long" type (wxInt32
@@ -98,6 +101,9 @@ For example:
   output << 1.23456;
 \end{verbatim}
 
+The wxTextOutputStream writes text files (or streams) on DOS, Macintosh
+and Unix in their native formats (concerning the line ending).
+
 \latexignore{\rtfignore{\wxheading{Members}}}
 
 \membersection{wxTextOutputStream::wxTextOutputStream}\label{wxdataoutputstreamconstr}
diff --git a/docs/latex/wx/wxhtml.tex b/docs/latex/wx/wxhtml.tex
index 2503b5e081..593b3d8dbb 100644
--- a/docs/latex/wx/wxhtml.tex
+++ b/docs/latex/wx/wxhtml.tex
@@ -3,9 +3,9 @@
 \setheader{{\it CHAPTER \thechapter}}{}{}{}{}{{\it CHAPTER \thechapter}}%
 \setfooter{\thepage}{}{}{}{}{\thepage}%
 
-\section{wxHTML Sub-library Overview}\label{wxhtmloverview}
+This addendum is written by Vaclav Slavik, the author of the wxHTML library.
 
-This library provides classes for parsing and displaying HTML.
+The wxHTML library provides classes for parsing and displaying HTML.
 
 It never intented to be hi-end HTML browser. If you're looking for
 something like that try \urlref{http://www.mozilla.org}{http://www.mozilla.org} - there's a 
@@ -14,9 +14,11 @@ everyone will enjoy your work in that case...
 
 But back to wxHTML. 
 
-It can be used as generic rich text viewer - for example to display 
-nice About Box (like these of GNOME apps) or to display result of
-database searching. There is \helpref{wxFileSystem}{wxfilesystem} 
+\section{wxHTML Sub-library Overview}\label{wxhtmloverview}
+
+wxHTML can be used as generic rich text viewer - for example to display 
+nice About Box (like these of GNOME apps) or to display the result of
+database searching. There is a \helpref{wxFileSystem}{wxfilesystem} 
 class which allows you to use your own virtual file systems...
 
 wxHtmlWindow supports tag handlers. This means that you can easily
diff --git a/src/common/datstrm.cpp b/src/common/datstrm.cpp
index 5112d93f6b..befc354784 100644
--- a/src/common/datstrm.cpp
+++ b/src/common/datstrm.cpp
@@ -161,7 +161,7 @@ wxDataInputStream& wxDataInputStream::operator>>(float& f)
 // ---------------------------------------------------------------------------
 
 wxDataOutputStream::wxDataOutputStream(wxOutputStream& s)
-  : m_output(&s)
+  : m_output(&s), m_be_order(FALSE)
 {
 }
 
-- 
2.50.0

