wxTextFile::Close() implemented
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@1939 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
		@@ -4,7 +4,7 @@
 | 
			
		||||
//              (file is fully loaded in memory) and which understands CR/LF
 | 
			
		||||
//              differences between platforms.
 | 
			
		||||
// Author:      Vadim Zeitlin
 | 
			
		||||
// Modified by: 
 | 
			
		||||
// Modified by:
 | 
			
		||||
// Created:     03.04.98
 | 
			
		||||
// RCS-ID:      $Id$
 | 
			
		||||
// Copyright:   (c) 1998 Vadim Zeitlin <zeitlin@dptmaths.ens-cachan.fr>
 | 
			
		||||
@@ -47,7 +47,7 @@ public:
 | 
			
		||||
  // ctors
 | 
			
		||||
    // def ctor, use Open(string)
 | 
			
		||||
  wxTextFile() { }
 | 
			
		||||
    // 
 | 
			
		||||
    //
 | 
			
		||||
  wxTextFile(const wxString& strFile);
 | 
			
		||||
 | 
			
		||||
  // file operations
 | 
			
		||||
@@ -80,7 +80,7 @@ public:
 | 
			
		||||
    // lines, i.e. you may write something like:
 | 
			
		||||
    //  for ( str = GetFirstLine(); !Eof(); str = GetNextLine() ) { ... }
 | 
			
		||||
 | 
			
		||||
    // @@@ const is commented out because not all compilers understand
 | 
			
		||||
    // NB: const is commented out because not all compilers understand
 | 
			
		||||
    //     'mutable' keyword yet (m_nCurLine should be mutable)
 | 
			
		||||
  wxString& GetFirstLine() /* const */ { return m_aLines[m_nCurLine = 0]; }
 | 
			
		||||
  wxString& GetNextLine()  /* const */ { return m_aLines[++m_nCurLine];   }
 | 
			
		||||
@@ -98,12 +98,12 @@ public:
 | 
			
		||||
 | 
			
		||||
  // add/remove lines
 | 
			
		||||
    // add a line to the end
 | 
			
		||||
  void AddLine(const wxString& str, wxTextFileType type = typeDefault) 
 | 
			
		||||
  void AddLine(const wxString& str, wxTextFileType type = typeDefault)
 | 
			
		||||
    { m_aLines.Add(str); m_aTypes.Add(type); }
 | 
			
		||||
    // insert a line before the line number n
 | 
			
		||||
  void InsertLine(const wxString& str,
 | 
			
		||||
                  size_t n,
 | 
			
		||||
                  wxTextFileType type = typeDefault) 
 | 
			
		||||
                  wxTextFileType type = typeDefault)
 | 
			
		||||
    { m_aLines.Insert(str, n); m_aTypes.Insert(type, n); }
 | 
			
		||||
    // delete one line
 | 
			
		||||
  void RemoveLine(size_t n) { m_aLines.Remove(n); m_aTypes.Remove(n); }
 | 
			
		||||
 
 | 
			
		||||
@@ -71,6 +71,7 @@ wxTextFile::~wxTextFile()
 | 
			
		||||
bool wxTextFile::Open(const wxString& strFile)
 | 
			
		||||
{
 | 
			
		||||
  m_strFile = strFile;
 | 
			
		||||
 | 
			
		||||
  return Open();
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
@@ -134,13 +135,11 @@ wxTextFileType wxTextFile::GuessType() const
 | 
			
		||||
  else {
 | 
			
		||||
    #define   GREATER_OF(t1, t2) n##t1 == n##t2 ? typeDefault               \
 | 
			
		||||
                                                : n##t1 > n##t2             \
 | 
			
		||||
                                                    ? wxTextFileType_##t1     \
 | 
			
		||||
                                                    ? wxTextFileType_##t1   \
 | 
			
		||||
                                                    : wxTextFileType_##t2
 | 
			
		||||
 | 
			
		||||
// Watcom C++ doesn't seem to be able to handle the macro
 | 
			
		||||
#if defined(__WATCOMC__)
 | 
			
		||||
    return typeDefault;
 | 
			
		||||
#else
 | 
			
		||||
    // Watcom C++ doesn't seem to be able to handle the macro
 | 
			
		||||
#if !defined(__WATCOMC__)
 | 
			
		||||
    if ( nDos > nUnix )
 | 
			
		||||
      return GREATER_OF(Dos, Mac);
 | 
			
		||||
    else if ( nDos < nUnix )
 | 
			
		||||
@@ -149,7 +148,7 @@ wxTextFileType wxTextFile::GuessType() const
 | 
			
		||||
      // nDos == nUnix
 | 
			
		||||
      return nMac > nDos ? wxTextFileType_Mac : typeDefault;
 | 
			
		||||
    }
 | 
			
		||||
#endif
 | 
			
		||||
#endif // __WATCOMC__
 | 
			
		||||
 | 
			
		||||
    #undef    GREATER_OF
 | 
			
		||||
  }
 | 
			
		||||
@@ -221,6 +220,15 @@ bool wxTextFile::Read()
 | 
			
		||||
  return TRUE;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
bool wxTextFile::Close()
 | 
			
		||||
{
 | 
			
		||||
    m_aTypes.Clear();
 | 
			
		||||
    m_aLines.Clear();
 | 
			
		||||
    m_nCurLine = 0;
 | 
			
		||||
 | 
			
		||||
    return TRUE;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
bool wxTextFile::Write(wxTextFileType typeNew)
 | 
			
		||||
{
 | 
			
		||||
  wxTempFile fileTmp(m_strFile);
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user