X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/c801d85f158c4cba50b588807daabdcbd0ed3853..2a4f4a27732a6d8deb8b006c73cca9d7105fe92c:/include/wx/filefn.h diff --git a/include/wx/filefn.h b/include/wx/filefn.h index 64ff0521de..8a90ad439e 100644 --- a/include/wx/filefn.h +++ b/include/wx/filefn.h @@ -6,7 +6,7 @@ // Created: 29/01/98 // RCS-ID: $Id$ // Copyright: (c) 1998 Julian Smart -// Licence: wxWindows license +// Licence: wxWindows license ///////////////////////////////////////////////////////////////////////////// #ifndef __FILEFNH__ @@ -16,8 +16,28 @@ #pragma interface "filefn.h" #endif -#include "wx/list.h" +#include +// ---------------------------------------------------------------------------- +// constants +// ---------------------------------------------------------------------------- + +// define off_t +#include + +#ifdef _MSC_VER + #define off_t _off_t +#endif + +typedef enum { + wxFromStart, + wxFromCurrent, + wxFromEnd +} wxSeekMode; + +// ---------------------------------------------------------------------------- +// functions +// ---------------------------------------------------------------------------- bool WXDLLEXPORT wxFileExists(const wxString& filename); #define FileExists wxFileExists @@ -51,6 +71,7 @@ void WXDLLEXPORT wxUnix2DosFilename(char *s); // Strip the extension, in situ void WXDLLEXPORT wxStripExtension(char *buffer); +void WXDLLEXPORT wxStripExtension(wxString& buffer); // Get a temporary filename, opening and closing the file. char* WXDLLEXPORT wxGetTempFileName(const wxString& prefix, char *buf = NULL); @@ -133,6 +154,14 @@ bool WXDLLEXPORT wxRmdir(const wxString& dir, int flags = 0); #define PATH_SEP PATH_SEP_DOS #endif // Unix/Windows +// this is useful for wxString::IsSameAs(): to compare two file names use +// filename1.IsSameAs(filename2, wxARE_FILENAMES_CASE_SENSITIVE) +#ifdef __UNIX__ + #define wxARE_FILENAMES_CASE_SENSITIVE TRUE +#else // Windows + #define wxARE_FILENAMES_CASE_SENSITIVE FALSE +#endif // Unix/Windows + // is the char a path separator? inline bool wxIsPathSeparator(char c) { return c == FILE_SEP_PATH_DOS || c == FILE_SEP_PATH_UNIX; } @@ -140,9 +169,20 @@ inline bool wxIsPathSeparator(char c) // does the string ends with path separator? bool WXDLLEXPORT wxEndsWithPathSeparator(const char *pszFileName); +// split the full path into path (including drive for DOS), name and extension +// (understands both '/' and '\\') +void WXDLLEXPORT wxSplitPath(const char *pszFileName, + wxString *pstrPath, + wxString *pstrName, + wxString *pstrExt); + // find a file in a list of directories, returns false if not found bool WXDLLEXPORT wxFindFileInPath(wxString *pStr, const char *pszPath, const char *pszFile); +// ---------------------------------------------------------------------------- +// classes +// ---------------------------------------------------------------------------- + // Path searching class WXDLLEXPORT wxPathList: public wxStringList {