X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/92622ef4c2162596f543d304059375552db5c313..2d956b58023a4955313a1c1531bc70a0deb0b831:/src/mac/dirmac.cpp diff --git a/src/mac/dirmac.cpp b/src/mac/dirmac.cpp index 5f06ceab58..1acff5b7ca 100644 --- a/src/mac/dirmac.cpp +++ b/src/mac/dirmac.cpp @@ -40,10 +40,10 @@ #include #endif -#ifndef __DARWIN__ - #include "MoreFiles.h" - #include "MoreFilesExtras.h" -#endif +#include "wx/mac/private.h" + +#include "MoreFiles.h" +#include "MoreFilesExtras.h" // ---------------------------------------------------------------------------- // constants @@ -76,6 +76,8 @@ public: bool Read(wxString *filename); // reads the next void Rewind() ; + const wxString& GetName() const { return m_dirname; } + private: CInfoPBRec m_CPB ; wxInt16 m_index ; @@ -116,11 +118,7 @@ wxDirData::wxDirData(const wxString& dirname) m_CPB.hFileInfo.ioNamePtr = m_name ; m_index = 0 ; -#ifdef __DARWIN__ - // TODO: what are we supposed to do for Mac OS X -#else FSpGetDirectoryID( &fsspec , &m_dirId , &m_isDir ) ; -#endif } wxDirData::~wxDirData() @@ -169,7 +167,7 @@ bool wxDirData::Read(wxString *filename) continue ; wxString file( m_name ) ; - if ( m_filespec.IsEmpty() || m_filespec == "*.*" ) + if ( m_filespec.IsEmpty() || m_filespec == "*.*" || m_filespec == "*" ) { } else if ( m_filespec.Length() > 1 && m_filespec.Left(1) =="*" ) @@ -237,6 +235,22 @@ bool wxDir::IsOpened() const return m_data != NULL; } +wxString wxDir::GetName() const +{ + wxString name; + if ( m_data ) + { + name = M_DIR->GetName(); + if ( !name.empty() && (name.Last() == _T('/')) ) + { + // chop off the last (back)slash + name.Truncate(name.length() - 1); + } + } + + return name; +} + wxDir::~wxDir() { delete M_DIR;