]> git.saurik.com Git - wxWidgets.git/blobdiff - interface/wx/textfile.h
Applied patch #15286: documentation and col/rowspan demo by dghart
[wxWidgets.git] / interface / wx / textfile.h
index eec73ae0713b6825c47f9cde6d1560804dedea3c..72224cb23329814d457932d3bfd5241b999b5e2b 100644 (file)
@@ -3,12 +3,13 @@
 // Purpose:     interface of wxTextFile
 // Author:      wxWidgets team
 // RCS-ID:      $Id$
-// Licence:     wxWindows license
+// Licence:     wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
 
+// TODO: document wxTextBuffer
 
 /**
-    The line termination type (kept wxTextFileType name for compability).
+    The line termination type.
 */
 enum wxTextFileType
 {
@@ -54,10 +55,9 @@ enum wxTextFileType
       wxTextFile::Clear resets the file to empty.
     - Save your changes: notice that the changes you make to the file will @b not be
       saved automatically; calling wxTextFile::Close or doing nothing discards them!
-      To save the changes you must explicitly callwxTextFile::Write - here, you may
+      To save the changes you must explicitly call wxTextFile::Write - here, you may
       also change the line termination type if you wish.
 
-
     @library{wxbase}
     @category{file}
 
@@ -66,6 +66,11 @@ enum wxTextFileType
 class wxTextFile
 {
 public:
+    /**
+        Default type for current platform determined at compile time.
+     */
+    static const wxTextFileType typeDefault;
+
     /**
         Default constructor, use Create() or Open() with a file name parameter to
         initialize the object.
@@ -85,8 +90,7 @@ public:
     /**
         Adds a line to the end of file.
     */
-    void AddLine(const wxString& str,
-                 wxTextFileType type = wxTextBuffer::typeDefault);
+    void AddLine(const wxString& str, wxTextFileType type = typeDefault);
 
     /**
         Delete all lines from the file, set current line number to 0.
@@ -99,16 +103,22 @@ public:
     */
     bool Close();
 
-    //@{
     /**
-        Creates the file with the given name or the name which was given in the
-        @ref wxTextFile() constructor. The array of file lines is initially empty.
+        Creates the file with the name which was given in the
+        wxTextFile(const wxString&) constructor.
+        The array of file lines is initially empty.
 
         It will fail if the file already exists, Open() should be used in this case.
     */
-    bool Create() const;
-    bool Create(const wxString& strFile) const;
-    //@}
+    bool Create();
+
+    /**
+        Creates the file with the given name.
+        The array of file lines is initially empty.
+
+        It will fail if the file already exists, Open() should be used in this case.
+    */
+    bool Create(const wxString& strFile);
 
     /**
         Returns @true if the current line is the last one.
@@ -135,11 +145,11 @@ public:
 
         @e typeDefault is the value defined during the compilation and corresponds
         to the native format of the platform, i.e. it will be @c wxTextFileType_Dos
-        under Windows, @c wxTextFileType_Unix under Unix (including Mac OS X when
-        compiling with the Apple Developer Tools) and @c wxTextFileType_Mac under
-        Mac OS (including Mac OS X when compiling with CodeWarrior).
+        under Windows and @c wxTextFileType_Unix under Unix (including Mac OS
+        X, the value @c wxTextFileType_Mac was only used for classic Mac OS
+        versions).
     */
-    static const char* GetEOL(wxTextFileType type = typeDefault) const;
+    static const wxChar* GetEOL(wxTextFileType type = typeDefault);
 
     /**
         This method together with GetNextLine() allows more "iterator-like"
@@ -180,10 +190,14 @@ public:
     /**
         Retrieves the line number @a n from the file.
 
-        The returned line may be modified but you shouldn't add line terminator
-        at the end - this will be done by wxTextFile.
+        The returned line may be modified when non-const method is used but you
+        shouldn't add line terminator at the end -- this will be done by
+        wxTextFile itself.
     */
-    wxString& GetLine(size_t n) const;
+    //@{
+    wxString& GetLine(size_t n);
+    const wxString& GetLine(size_t n) const;
+    //@}
 
     /**
         Get the number of lines in the file.
@@ -229,26 +243,33 @@ public:
         Insert a line before the line number @a n.
     */
     void InsertLine(const wxString& str, size_t n,
-                    wxTextFileType type = wxTextBuffer::typeDefault);
+                    wxTextFileType type = typeDefault);
 
     /**
         Returns @true if the file is currently opened.
     */
     bool IsOpened() const;
 
-    //@{
     /**
-        Open() opens the file with the given name or the name which was given in the
-        @ref wxTextFile() constructor and also loads file in memory on success.
+        Opens the file with the name which was given in the wxTextFile(const wxString&)
+        constructor and also loads file in memory on success.
 
         It will fail if the file does not exist, Create() should be used in this case.
 
         The @a conv argument is only meaningful in Unicode build of wxWidgets when
         it is used to convert the file to wide character representation.
     */
-    bool Open(const wxMBConv& conv = wxConvAuto()) const;
-    bool Open(const wxString& strFile, const wxMBConv& conv = wxConvAuto()) const;
-    //@}
+    bool Open(const wxMBConv& conv = wxConvAuto());
+
+    /**
+        Opens the file with the given name and also loads file in memory on success.
+
+        It will fail if the file does not exist, Create() should be used in this case.
+
+        The @a conv argument is only meaningful in Unicode build of wxWidgets when
+        it is used to convert the file to wide character representation.
+    */
+    bool Open(const wxString& strFile, const wxMBConv& conv = wxConvAuto());
 
     /**
         Delete line number @a n from the file.