]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/filename.h
A few tweaks and cleanups
[wxWidgets.git] / include / wx / filename.h
index 9553b4c0e88854242631db301d6259e8b16fc623..4e5923d5d2b99c01f6d2bec32b12f847823e452b 100644 (file)
@@ -73,6 +73,19 @@ enum wxPathNormalize
     wxPATH_NORM_ALL      = 0x003f
 };
 
+// what exactly should GetPath() return?
+enum
+{
+    wxPATH_GET_VOLUME    = 0x0001,  // include the volume if applicable
+    wxPATH_GET_SEPARATOR = 0x0002   // terminate the path with the separator
+};
+
+// MkDir flags
+enum
+{
+    wxPATH_MKDIR_FULL    = 0x0001   // create directories recursively
+};
+
 // ----------------------------------------------------------------------------
 // wxFileName: encapsulates a file path
 // ----------------------------------------------------------------------------
@@ -229,8 +242,8 @@ public:
 
     // directory creation and removal.
     // if full is TRUE, will try to make each directory in the path.
-    bool Mkdir( int perm = 0777, bool full = FALSE);
-    static bool Mkdir( const wxString &dir, int perm = 0777, bool full = FALSE );
+    bool Mkdir( int perm = 0777, int flags = 0);
+    static bool Mkdir( const wxString &dir, int perm = 0777, int flags = 0 );
 
     bool Rmdir();
     static bool Rmdir( const wxString &dir );
@@ -296,9 +309,6 @@ public:
     // is the char a path separator for this format?
     static bool IsPathSeparator(wxChar ch, wxPathFormat format = wxPATH_NATIVE);
 
-    // FIXME: what exactly does this do?
-    bool IsWild( wxPathFormat format = wxPATH_NATIVE );
-
     // Dir accessors
     void AppendDir( const wxString &dir );
     void PrependDir( const wxString &dir );
@@ -325,16 +335,12 @@ public:
 
     const wxArrayString& GetDirs() const        { return m_dirs; }
 
-    // Construct path only - possibly with the trailing separator
-    wxString GetPath( bool add_separator = FALSE,
-                      wxPathFormat format = wxPATH_NATIVE ) const;
+    // flags are combination of wxPATH_GET_XXX flags
+    wxString GetPath(int flags = 0, wxPathFormat format = wxPATH_NATIVE) const;
+
     // Replace current path with this one
     void SetPath( const wxString &path, wxPathFormat format = wxPATH_NATIVE );
 
-    // more readable synonym
-    wxString GetPathWithSep(wxPathFormat format = wxPATH_NATIVE ) const
-        { return GetPath(TRUE /* add separator */, format); }
-
     // Construct full path with name and ext
     wxString GetFullPath( wxPathFormat format = wxPATH_NATIVE ) const;
 
@@ -344,6 +350,9 @@ public:
     // Return the long form of the path (returns identity on non-Windows platforms)
     wxString GetLongPath() const;
 
+    // Is this a file or directory (not necessarily an existing one)
+    bool IsDir() const { return m_name.empty() && m_ext.empty(); }
+
     // various helpers
 
         // get the canonical path format for this platform
@@ -365,6 +374,16 @@ public:
                           wxString *ext,
                           wxPathFormat format = wxPATH_NATIVE);
 
+
+    // deprecated methods, don't use any more
+    // --------------------------------------
+
+    wxString GetPath( bool withSep, wxPathFormat format = wxPATH_NATIVE ) const
+        { return GetPath(withSep ? wxPATH_GET_SEPARATOR : 0, format); }
+
+    wxString GetPathWithSep(wxPathFormat format = wxPATH_NATIVE ) const
+        { return GetPath(wxPATH_GET_SEPARATOR, format); }
+
 private:
     // the drive/volume/device specification (always empty for Unix)
     wxString        m_volume;