]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/file.h
added wxEVT_SCROLL_CHANGED as synonym for wxEVT_SCROLL_ENDSCROLL
[wxWidgets.git] / include / wx / file.h
index 6a46ec7fe476dec46b482e4b097e7dcfbfad04ff..8b869a8766f3bcda913fdd716bd3d4026c7a26a3 100644 (file)
 #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
 // ----------------------------------------------------------------------------
@@ -94,8 +96,8 @@ public:
   int  fd() const { return m_fd; }
 
   // read/write (unbuffered)
-    // returns number of bytes read or ofsInvalid on error
-  size_t Read(void *pBuf, size_t nCount);
+    // returns number of bytes read or wxInvalidOffset on error
+  ssize_t Read(void *pBuf, size_t nCount);
     // returns the number of bytes written
   size_t Write(const void *pBuf, size_t nCount);
     // returns true on success
@@ -123,8 +125,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
+  wxFileKind GetKind() const { return wxGetFileKind(m_fd); }
 
   // dtor closes the file if opened
   ~wxFile() { Close(); }
@@ -162,6 +166,13 @@ 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; }