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:
Vadim Zeitlin
1999-03-16 18:44:38 +00:00
parent c0c22f7f4f
commit f42d2aba76
2 changed files with 19 additions and 11 deletions

View File

@@ -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); }

View File

@@ -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);