]> git.saurik.com Git - wxWidgets.git/blobdiff - docs/latex/wx/textfile.tex
added wxLocale::IsAvailable() (extended patch 1547191)
[wxWidgets.git] / docs / latex / wx / textfile.tex
index ff7ecc856fb41145b030ad5eff5d5e375af627da..c139c6262afb1066f2e05dcdeb715bbc2b268341 100644 (file)
@@ -7,11 +7,11 @@ native" line termination sequences - in fact, it can be also used to modify the
 text files and change the line termination characters from one type (say DOS) to
 another (say Unix).
 
-One word of warning: the class is not at all optimized for big files and so it
-will load the file entirely into memory when opened. Of course, you should not
+One word of warning: the class is not at all optimized for big files and thus
+it will load the file entirely into memory when opened. Of course, you should not
 work in this way with large files (as an estimation, anything over 1 Megabyte is
 surely too big for this class). On the other hand, it is not a serious
-limitation for the small files like configuration files or programs sources
+limitation for small files like configuration files or program sources
 which are well handled by wxTextFile.
 
 The typical things you may do with wxTextFile in order are:
@@ -35,6 +35,7 @@ changed with \helpref{GoToLine}{wxtextfilegotoline}.
 \item Add/remove lines to the file: \helpref{AddLine}{wxtextfileaddline} and 
 \helpref{InsertLine}{wxtextfileinsertline} add new lines while 
 \helpref{RemoveLine}{wxtextfileremoveline} deletes the existing ones.
+\helpref{Clear}{wxtextfileclear} resets the file to empty.
 \item Save your changes: notice that the changes you make to the file will {\bf
 not} be saved automatically; calling \helpref{Close}{wxtextfileclose} or doing
 nothing discards them! To save the changes you must explicitly call 
@@ -119,14 +120,14 @@ be used in this case.
 
 \constfunc{bool}{Exists}{\void}
 
-Return TRUE if file exists - the name of the file should have been specified
+Return true if file exists - the name of the file should have been specified
 in the constructor before calling Exists().
 
 \membersection{wxTextFile::IsOpened}\label{wxtextfileisopened}
 
 \constfunc{bool}{IsOpened}{\void}
 
-Returns TRUE if the file is currently opened.
+Returns true if the file is currently opened.
 
 \membersection{wxTextFile::GetLineCount}\label{wxtextfilegetlinecount}
 
@@ -169,16 +170,18 @@ and used by \helpref{GetFirstLine()}{wxtextfilegetfirstline}/\helpref{GetNextLin
 
 \constfunc{bool}{Eof}{\void}
 
-Returns TRUE if the current line is the last one.
+Returns true if the current line is the last one.
 
 \membersection{wxTextFile::GetEOL}\label{wxtextfilegeteol}
 
 \constfunc{static const char*}{GetEOL}{\param{wxTextFileType }{type = typeDefault}}
 
 Get the line termination string corresponding to given constant. {\it typeDefault} is
-the value defined during the compilation and corresponds to the native format of the
-platform, i.e. it will be wxTextFileType\_Dos under Windows, wxTextFileType\_Unix under
-Unix and wxTextFileType\_Mac under Mac.
+the value defined during the compilation and corresponds to the native format
+of the platform, i.e. it will be wxTextFileType\_Dos under Windows,
+wxTextFileType\_Unix under Unix (including Mac OS X when compiling with the
+Apple Developer Tools) and wxTextFileType\_Mac under Mac OS (including
+Mac OS X when compiling with CodeWarrior).
 
 \membersection{wxTextFile::GetFirstLine}\label{wxtextfilegetfirstline}
 
@@ -189,10 +192,13 @@ allows more "iterator-like" traversal of the list of lines, i.e. you may
 write something like:
 
 \begin{verbatim}
-for ( str = GetFirstLine(); !Eof(); str = GetNextLine() )
+wxTextFile file;
+...
+for ( str = file.GetFirstLine(); !file.Eof(); str = file.GetNextLine() )
 {
     // do something with the current line in str
 }
+// do something with the last line in str
 \end{verbatim}
 
 \membersection{wxTextFile::GetNextLine}\label{wxtextfilegetnextline}
@@ -212,7 +218,21 @@ Gets the previous line in the file.
 
 \func{wxString\&}{GetLastLine}{\void}
 
-Gets the last line of the file.
+Gets the last line of the file. Together with 
+\helpref{GetPrevLine}{wxtextfilegetprevline} it allows to enumerate the lines
+in the file from the end to the beginning like this:
+
+\begin{verbatim}
+wxTextFile file;
+...
+for ( str = file.GetLastLine();
+      file.GetCurrentLine() > 0;
+      str = file.GetPrevLine() )
+{
+    // do something with the current line in str
+}
+// do something with the first line in str
+\end{verbatim}
 
 \membersection{wxTextFile::GetLineType}\label{wxtextfilegetlinetype}
 
@@ -242,28 +262,41 @@ Insert a line before the line number {\it n}.
 
 \membersection{wxTextFile::Open}\label{wxtextfileopen}
 
-\constfunc{bool}{Open}{\void}
+\constfunc{bool}{Open}{\param{wxMBConv\&}{ conv = wxConvUTF8}}
 
-\constfunc{bool}{Open}{\param{const wxString\& }{strFile}}
+\constfunc{bool}{Open}{\param{const wxString\& }{strFile}, \param{wxMBConv\&}{ conv = wxConvUTF8}}
 
 Open() opens the file with the given name or the name which was given in the
 \helpref{constructor}{wxtextfilector} and also loads file in memory on
 success. It will fail if the file does not exist, 
 \helpref{Create}{wxtextfilecreate} should be used in this case.
 
+The {\it conv} argument is only meaningful in Unicode build of wxWidgets when
+it is used to convert the file to wide character representation.
+
 \membersection{wxTextFile::RemoveLine}\label{wxtextfileremoveline}
 
 \constfunc{void}{RemoveLine}{\param{size\_t }{n}}
 
 Delete line number {\it n} from the file.
 
+\membersection{wxTextFile::Clear}\label{wxtextfileclear}
+
+\constfunc{void}{Clear}{\void}
+
+Delete all lines from the file, set current line number to 0.
+
 \membersection{wxTextFile::Write}\label{wxtextfilewrite}
 
-\constfunc{bool}{Write}{\param{wxTextFileType }{typeNew = wxTextFileType\_None}}
+\constfunc{bool}{Write}{\param{wxTextFileType }{typeNew = wxTextFileType\_None}, \param{wxMBConv\&}{ conv = wxConvUTF8}}
 
 Change the file on disk. The {\it typeNew} parameter allows you to change the
 file format (default argument means "don't change type") and may be used to
 convert, for example, DOS files to Unix.
 
-Returns TRUE if operation succeeded, FALSE if it failed.
+The {\it conv} argument is only meaningful in Unicode build of wxWidgets when
+it is used to convert all lines to multibyte representation before writing them
+them to physical file.
+
+Returns true if operation succeeded, false if it failed.