/**
@class wxDirTraverser
- @wxheader{dir.h}
wxDirTraverser is an abstract interface which must be implemented by
objects passed to wxDir::Traverse() function.
This is a pure virtual function and must be implemented in the derived
class.
*/
- virtual wxDirTraverseResult OnDir(const wxString& dirname);
+ virtual wxDirTraverseResult OnDir(const wxString& dirname) = 0;
/**
This function is called for each file. It may return ::wxDIR_STOP to
This is a pure virtual function and must be implemented in the derived
class.
*/
- virtual wxDirTraverseResult OnFile(const wxString& filename);
+ virtual wxDirTraverseResult OnFile(const wxString& filename) = 0;
/**
This function is called for each directory which we failed to open for
These flags define what kind of filenames are included in the list of files
enumerated by wxDir::GetFirst() and wxDir::GetNext().
*/
-enum
+enum wxDirFlags
{
wxDIR_FILES = 0x0001, ///< Includes files.
wxDIR_DIRS = 0x0002, ///< Includes directories.
/**
@class wxDir
- @wxheader{dir.h}
wxDir is a portable equivalent of Unix open/read/closedir functions which
allow enumerating of the files in a directory. wxDir allows to enumerate
includes ::wxDIR_DIRS and so the function recurses into the
subdirectories but if this flag is not specified, the function
restricts the search only to the directory @a dirname itself.
+ See ::wxDirFlags for the list of the possible flags.
@see Traverse()
*/
The @a flags parameter should always include ::wxDIR_FILES or the array
would be unchanged and should include ::wxDIR_DIRS flag to recurse into
subdirectories (both flags are included in the value by default).
+ See ::wxDirFlags for the list of the possible flags.
@see Traverse()
*/
/**
Start enumerating all files matching @a filespec (or all files if it is
empty) and @e flags, return @true on success.
+ See ::wxDirFlags for the list of the possible flags.
*/
bool GetFirst(wxString* filename,
const wxString& filespec = wxEmptyString,
@a flags contains ::wxDIR_DIRS flag. It will ignore the files (but
still possibly recurse into subdirectories) if ::wxDIR_FILES flag is
given.
+ See ::wxDirFlags for the list of the possible flags.
For each found directory, @ref wxDirTraverser::OnDir() "sink.OnDir()"
is called and @ref wxDirTraverser::OnFile() "sink.OnFile()" is called
*/
size_t Traverse(wxDirTraverser& sink,
const wxString& filespec = wxEmptyString,
- int flags = wxDIR_DEFAULT);
+ int flags = wxDIR_DEFAULT) const;
};