// Created: 08.12.99
// RCS-ID: $Id$
// Copyright: (c) 1999 Vadim Zeitlin <zeitlin@dptmaths.ens-cachan.fr>
-// Licence: wxWidgets licence
+// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
// ============================================================================
// headers
// ----------------------------------------------------------------------------
-#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA)
- #pragma implementation "dir.h"
-#endif
-
// For compilers that support precompilation, includes "wx.h".
#include "wx/wxprec.h"
#endif // PCH
#include "wx/dir.h"
-#include "wx/filefn.h" // for wxPathExists()
+#include "wx/filefn.h" // for wxDirExists()
-#ifdef __WXMSW__
+#ifdef __WINDOWS__
#include "wx/msw/private.h"
#endif
static inline FIND_DATA FindFirst(const wxString& spec,
FIND_STRUCT *finddata)
{
- return ::FindFirstFile(spec, finddata);
+ return ::FindFirstFile(spec.fn_str(), finddata);
}
static inline bool FindNext(FIND_DATA fd, FIND_STRUCT *finddata)
bool wxDirData::Read(wxString *filename)
{
- bool first = FALSE;
+ bool first = false;
WIN32_FIND_DATA finddata;
#define PTR_TO_FINDDATA (&finddata)
{
filespec += _T('\\');
}
- filespec += (!m_filespec ? _T("*.*") : m_filespec.c_str());
+ if ( !m_filespec )
+ filespec += _T("*.*");
+ else
+ filespec += m_filespec;
m_finddata = FindFirst(filespec, PTR_TO_FINDDATA);
- first = TRUE;
+ first = true;
}
if ( !IsFindDataOk(m_finddata) )
#ifdef __WIN32__
DWORD err = ::GetLastError();
- if ( err != ERROR_FILE_NOT_FOUND )
+ if ( err != ERROR_FILE_NOT_FOUND && err != ERROR_NO_MORE_FILES )
{
wxLogSysError(err, _("Can not enumerate files in directory '%s'"),
m_dirname.c_str());
#endif // __WIN32__
//else: not an error, just no (such) files
- return FALSE;
+ return false;
}
const wxChar *name;
{
if ( first )
{
- first = FALSE;
+ first = false;
}
else
{
#endif // __WIN32__
//else: not an error, just no more (such) files
- return FALSE;
+ return false;
}
}
break;
}
- return TRUE;
+ return true;
}
// ----------------------------------------------------------------------------
/* static */
bool wxDir::Exists(const wxString& dir)
{
- return wxPathExists(dir);
+ return wxDirExists(dir);
}
// ----------------------------------------------------------------------------
delete M_DIR;
m_data = new wxDirData(dirname);
- return TRUE;
+ return true;
}
bool wxDir::IsOpened() const
const wxString& filespec,
int flags) const
{
- wxCHECK_MSG( IsOpened(), FALSE, _T("must wxDir::Open() first") );
+ wxCHECK_MSG( IsOpened(), false, _T("must wxDir::Open() first") );
M_DIR->Rewind();
bool wxDir::GetNext(wxString *filename) const
{
- wxCHECK_MSG( IsOpened(), FALSE, _T("must wxDir::Open() first") );
+ wxCHECK_MSG( IsOpened(), false, _T("must wxDir::Open() first") );
- wxCHECK_MSG( filename, FALSE, _T("bad pointer in wxDir::GetNext()") );
+ wxCHECK_MSG( filename, false, _T("bad pointer in wxDir::GetNext()") );
return M_DIR->Read(filename);
}
wxGetDirectoryTimes(const wxString& dirname,
FILETIME *ftAccess, FILETIME *ftCreate, FILETIME *ftMod)
{
+#ifdef __WXWINCE__
+ // FindFirst() is going to fail
+ wxASSERT_MSG( !dirname.empty(),
+ _T("incorrect directory name format in wxGetDirectoryTimes") );
+#else
// FindFirst() is going to fail
wxASSERT_MSG( !dirname.empty() && dirname.Last() != _T('\\'),
_T("incorrect directory name format in wxGetDirectoryTimes") );
+#endif
FIND_STRUCT fs;
FIND_DATA fd = FindFirst(dirname, &fs);
if ( !IsFindDataOk(fd) )
{
- return FALSE;
+ return false;
}
*ftAccess = fs.ftLastAccessTime;
FindClose(fd);
- return TRUE;
+ return true;
}
#endif // __WIN32__