X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/12028905135250524409f1e7b9bfa9c55e5ce16b..4b412d238281008e248bcdebeae4baf4b67191e7:/include/wx/file.h diff --git a/include/wx/file.h b/include/wx/file.h index e02c326b1b..fde5099582 100644 --- a/include/wx/file.h +++ b/include/wx/file.h @@ -17,11 +17,9 @@ #pragma interface "file.h" #endif -#ifndef WX_PRECOMP - #include "wx/string.h" - #include "wx/filefn.h" - #include "wx/strconv.h" -#endif +#include "wx/string.h" +#include "wx/filefn.h" +#include "wx/strconv.h" #if wxUSE_FILE @@ -68,36 +66,36 @@ public: // ---------------- // check whether a regular file by this name exists static bool Exists(const wxChar *name); - // check whetther we can access the given file in given mode + // check whether we can access the given file in given mode // (only read and write make sense here) static bool Access(const wxChar *name, OpenMode mode); // ctors // ----- // def ctor - wxFile() { m_fd = fd_invalid; } + wxFile() { m_fd = fd_invalid; m_error = false; } // 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; } + wxFile(int fd) { m_fd = fd; m_error = false; } // open/close // create a new file (with the default value of bOverwrite, it will fail if // the file already exists, otherwise it will overwrite it and succeed) - bool Create(const wxChar *szFileName, bool bOverwrite = FALSE, + bool Create(const wxChar *szFileName, bool bOverwrite = false, int access = wxS_DEFAULT); bool Open(const wxChar *szFileName, OpenMode mode = read, int access = wxS_DEFAULT); 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; } + void Attach(int fd) { Close(); m_fd = fd; m_error = false; } void Detach() { m_fd = fd_invalid; } int fd() const { return m_fd; } // read/write (unbuffered) - // returns number of bytes read or ofsInvalid on error - off_t Read(void *pBuf, off_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 @@ -110,15 +108,15 @@ public: // flush data not yet written bool Flush(); - // file pointer operations (return ofsInvalid on failure) - // move ptr ofs bytes related to start/current off_t/end of file - off_t Seek(off_t ofs, wxSeekMode mode = wxFromStart); + // file pointer operations (return wxInvalidOffset on failure) + // move ptr ofs bytes related to start/current offset/end of file + wxFileOffset Seek(wxFileOffset ofs, wxSeekMode mode = wxFromStart); // move ptr to ofs bytes before the end - off_t SeekEnd(off_t ofs = 0) { return Seek(ofs, wxFromEnd); } - // get current off_t - off_t Tell() const; + wxFileOffset SeekEnd(wxFileOffset ofs = 0) { return Seek(ofs, wxFromEnd); } + // get current offset + wxFileOffset Tell() const; // get current file length - off_t Length() const; + wxFileOffset Length() const; // simple accessors // is file opened? @@ -166,7 +164,7 @@ public: bool IsOpened() const { return m_file.IsOpened(); } // 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) != 0; } + bool Write(const void *p, size_t n) { return m_file.Write(p, n) == n; } bool Write(const wxString& str, wxMBConv& conv = wxConvUTF8) { return m_file.Write(str, conv); }