wxPATH_NORM_ALL = 0x00ff & ~wxPATH_NORM_CASE
};
+/**
+ Flags for wxFileName::Rmdir().
+ */
+enum
+{
+ /// Delete the specified directory and its subdirectories if they are empty.
+ wxPATH_RMDIR_FULL = 1,
+
+ /**
+ Delete the specified directory and all the files and subdirectories in it
+ recursively.
+
+ This flag is obviously @b dangerous and should be used with care and
+ after asking the user for confirmation.
+ */
+ wxPATH_RMDIR_RECURSIVE = 2
+};
+
/**
The return value of wxFileName::GetSize() in case of error.
*/
/**
Deletes the specified directory from the file system.
+
+ @param flags
+ Can contain one of wxPATH_RMDIR_FULL or wxPATH_RMDIR_RECURSIVE. By
+ default contains neither so the directory will not be removed
+ unless it is empty.
+
+ @return Returns @true if the directory was successfully deleted, @false
+ otherwise.
*/
- bool Rmdir();
+ bool Rmdir(int flags = 0);
/**
Deletes the specified directory from the file system.
+
+ @param dir
+ The directory to delete
+ @param flags
+ Can contain one of wxPATH_RMDIR_FULL or wxPATH_RMDIR_RECURSIVE. By
+ default contains neither so the directory will not be removed
+ unless it is empty.
+
+ @return Returns @true if the directory was successfully deleted, @false
+ otherwise.
*/
- static bool Rmdir(const wxString& dir);
+ static bool Rmdir(const wxString& dir, int flags = 0);
/**
Compares the filename using the rules of this platform.
*/
wxFileName& operator=(const wxString& filename);
};
-