X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/f3078f075bd2ccaa86a681b2f37314fa1bb1a4c7..e6fd62dd849e051b82374afd31e3d62454c98483:/src/mac/carbon/filedlg.cpp diff --git a/src/mac/carbon/filedlg.cpp b/src/mac/carbon/filedlg.cpp index e6fda89c47..5fffa73c60 100644 --- a/src/mac/carbon/filedlg.cpp +++ b/src/mac/carbon/filedlg.cpp @@ -1,5 +1,5 @@ ///////////////////////////////////////////////////////////////////////////// -// Name: filedlg.cpp +// Name: src/mac/carbon/filedlg.cpp // Purpose: wxFileDialog // Author: Stefan Csomor // Modified by: @@ -11,19 +11,23 @@ #include "wx/wxprec.h" -#include "wx/app.h" -#include "wx/utils.h" -#include "wx/dialog.h" #include "wx/filedlg.h" -#include "wx/intl.h" + +#ifndef WX_PRECOMP + #include "wx/intl.h" + #include "wx/app.h" + #include "wx/utils.h" + #include "wx/dialog.h" +#endif + #include "wx/tokenzr.h" #include "wx/filename.h" #include "wx/mac/private.h" #ifndef __DARWIN__ - #include - #include "PLStringFuncs.h" + #include + #include "PLStringFuncs.h" #endif #include "MoreFilesX.h" @@ -70,7 +74,7 @@ static pascal void NavEventProc( } else if ( inSelector == kNavCBStart ) { - if (data && !(data->defaultLocation).IsEmpty()) + if (data && !(data->defaultLocation).empty()) { // Set default location for the modern Navigation APIs // Apple Technical Q&A 1151 @@ -131,7 +135,7 @@ void MakeUserDataRec(OpenUserDataRec *myData , const wxString& filter ) bool isName = true ; wxString current ; - for ( unsigned int i = 0; i < filter2.Len() ; i++ ) + for ( unsigned int i = 0; i < filter2.length() ; i++ ) { if ( filter2.GetChar(i) == wxT('|') ) { @@ -157,7 +161,7 @@ void MakeUserDataRec(OpenUserDataRec *myData , const wxString& filter ) // an explanatory text, in that case the first part is name and extension at the same time wxASSERT_MSG( filterIndex == 0 || !isName , wxT("incorrect format of format string") ) ; - if ( current.IsEmpty() ) + if ( current.empty() ) myData->extensions.Add( myData->name[filterIndex] ) ; else myData->extensions.Add( current.MakeUpper() ) ; @@ -173,13 +177,13 @@ void MakeUserDataRec(OpenUserDataRec *myData , const wxString& filter ) wxString extension = myData->extensions[i]; // Remove leading '*' - if (extension.GetChar(0) == '*') + if (extension.length() && (extension.GetChar(0) == '*')) extension = extension.Mid( 1 ); // Remove leading '.' - if (extension.GetChar(0) == '.') + if (extension.length() && (extension.GetChar(0) == '.')) extension = extension.Mid( 1 ); - + if (wxFileName::MacFindDefaultTypeAndCreator( extension, &fileType, &creator )) myData->filtermactypes.Add( (OSType)fileType ); else @@ -211,7 +215,7 @@ static Boolean CheckFile( const wxString &filename , OSType type , OpenUserDataR if ( extension.GetChar(0) == '*' ) extension = extension.Mid(1) ; - if ( file.Len() >= extension.Len() && extension == file.Right(extension.Len() ) ) + if ( file.length() >= extension.length() && extension == file.Right(extension.length() ) ) return true ; } } @@ -255,8 +259,8 @@ static pascal Boolean CrossPlatformFileFilter(CInfoPBPtr myCInfoPBPtr, void *dat wxFileDialog::wxFileDialog( wxWindow *parent, const wxString& message, const wxString& defaultDir, const wxString& defaultFileName, const wxString& wildCard, - long style, const wxPoint& pos) - : wxFileDialogBase(parent, message, defaultDir, defaultFileName, wildCard, style, pos) + long style, const wxPoint& pos, const wxSize& sz, const wxString& name) + : wxFileDialogBase(parent, message, defaultDir, defaultFileName, wildCard, style, pos, sz, name) { wxASSERT_MSG( NavServicesAvailable() , wxT("Navigation Services are not running") ) ; } @@ -334,7 +338,7 @@ int wxFileDialog::ShowModal() } } - if (m_dialogStyle & wxSAVE) + if (HasFlag(wxFD_SAVE)) { myData.saveMode = true; @@ -348,7 +352,7 @@ int wxFileDialog::ShowModal() dialogCreateOptions.optionFlags |= kNavPreserveSaveFileExtension; #if TARGET_API_MAC_OSX - if (!(m_dialogStyle & wxOVERWRITE_PROMPT)) + if (!(m_windowStyle & wxFD_OVERWRITE_PROMPT)) dialogCreateOptions.optionFlags |= kNavDontConfirmReplacement; #endif @@ -364,7 +368,7 @@ int wxFileDialog::ShowModal() { // let the user select bundles/programs in dialogs dialogCreateOptions.optionFlags |= kNavSupportPackages; - + navFilterUPP = NewNavObjectFilterUPP(CrossPlatformFilterCallback); err = ::NavCreateGetFileDialog( &dialogCreateOptions, @@ -409,11 +413,11 @@ int wxFileDialog::ShowModal() if (err != noErr) break; - if (m_dialogStyle & wxSAVE) + if (HasFlag(wxFD_SAVE)) thePath = wxMacFSRefToPath( &theFSRef, navReply.saveFileName ); else thePath = wxMacFSRefToPath( &theFSRef ); - + if (!thePath) { ::NavDisposeReply(&navReply); @@ -436,4 +440,3 @@ int wxFileDialog::ShowModal() return (err == noErr) ? wxID_OK : wxID_CANCEL; } -