]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/file.h
don't define WINVER as 0x0400 in configure, it's defined in the headers as 0x0600...
[wxWidgets.git] / include / wx / file.h
index 1656c175ade4b4f93e8dce3c8c9bf518f9d5467e..7f3f0e8184add500a6d9a4ecfae377a305c37676 100644 (file)
 #ifndef _WX_FILEH__
 #define _WX_FILEH__
 
-#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA)
-#pragma interface "file.h"
-#endif
+#include  "wx/defs.h"
+
+#if wxUSE_FILE
 
 #include  "wx/string.h"
 #include  "wx/filefn.h"
 #include  "wx/strconv.h"
 
-#if wxUSE_FILE
-
 // ----------------------------------------------------------------------------
 // constants
 // ----------------------------------------------------------------------------
@@ -77,7 +75,7 @@ public:
     // open specified file (may fail, use IsOpened())
   wxFile(const wxChar *szFileName, OpenMode mode = read);
     // attach to (already opened) file
-  wxFile(int fd) { m_fd = fd; m_error = false; }
+  wxFile(int lfd) { m_fd = lfd; m_error = false; }
 
   // open/close
     // create a new file (with the default value of bOverwrite, it will fail if
@@ -89,7 +87,7 @@ public:
   bool Close();  // Close is a NOP if not opened
 
   // assign an existing file descriptor and get it back from wxFile object
-  void Attach(int fd) { Close(); m_fd = fd; m_error = false; }
+  void Attach(int lfd) { Close(); m_fd = lfd; m_error = false; }
   void Detach()       { m_fd = fd_invalid;  }
   int  fd() const { return m_fd; }
 
@@ -99,7 +97,7 @@ public:
     // returns the number of bytes written
   size_t Write(const void *pBuf, size_t nCount);
     // returns true on success
-  bool Write(const wxString& s, wxMBConv& conv = wxConvUTF8)
+  bool Write(const wxString& s, const wxMBConv& conv = wxConvUTF8)
   {
       const wxWX2MBbuf buf = s.mb_str(conv);
       size_t size = strlen(buf);
@@ -123,10 +121,10 @@ public:
   bool IsOpened() const { return m_fd != fd_invalid; }
     // is end of file reached?
   bool Eof() const;
-    // has an error occured?
+    // has an error occurred?
   bool Error() const { return m_error; }
     // type such as disk or pipe
-  wxFileTypeEnum GetFileType() const { return wxGetFileType(m_fd); }
+  wxFileKind GetKind() const { return wxGetFileKind(m_fd); }
 
   // dtor closes the file if opened
   ~wxFile() { Close(); }
@@ -164,10 +162,17 @@ public:
 
   // is the file opened?
   bool IsOpened() const { return m_file.IsOpened(); }
+    // get current file length
+  wxFileOffset Length() const { return m_file.Length(); }
+    // move ptr ofs bytes related to start/current offset/end of file
+  wxFileOffset Seek(wxFileOffset ofs, wxSeekMode mode = wxFromStart)
+    { return m_file.Seek(ofs, mode); }
+    // get current offset
+  wxFileOffset Tell() const { return m_file.Tell(); }
 
   // I/O (both functions return true on success, false on failure)
   bool Write(const void *p, size_t n) { return m_file.Write(p, n) == n; }
-  bool Write(const wxString& str, wxMBConv& conv = wxConvUTF8)
+  bool Write(const wxString& str, const wxMBConv& conv = wxConvUTF8)
     { return m_file.Write(str, conv); }
 
   // different ways to close the file