X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/9d8aca4832f9052729d2fc51d25c23f6d7006cab..3f4a2351e4c677c88c18ea812b609477adee7380:/src/mac/classic/utils.cpp?ds=sidebyside diff --git a/src/mac/classic/utils.cpp b/src/mac/classic/utils.cpp index e290dc06e5..a14b39d556 100644 --- a/src/mac/classic/utils.cpp +++ b/src/mac/classic/utils.cpp @@ -1,29 +1,30 @@ ///////////////////////////////////////////////////////////////////////////// -// Name: utils.cpp +// Name: src/mac/classic/utils.cpp // Purpose: Various utilities // Author: Stefan Csomor // Modified by: // Created: 1998-01-01 // RCS-ID: $Id$ // Copyright: (c) Stefan Csomor -// Licence: wxWindows licence +// Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// -#ifdef __GNUG__ -// Note: this is done in utilscmn.cpp now. -// #pragma implementation "utils.h" -#endif +#include "wx/wxprec.h" -#include "wx/setup.h" #include "wx/utils.h" -#include "wx/app.h" + +#ifndef WX_PRECOMP + #include "wx/intl.h" + #include "wx/app.h" + #if wxUSE_GUI + #include "wx/font.h" + #endif +#endif + #include "wx/apptrait.h" #if wxUSE_GUI #include "wx/mac/uma.h" - #include "wx/font.h" -#else - #include "wx/intl.h" #endif #include @@ -55,33 +56,28 @@ #include #endif -// --------------------------------------------------------------------------- -// code used in both base and GUI compilation -// --------------------------------------------------------------------------- +#if wxUSE_BASE // our OS version is the same in non GUI and GUI cases -static int DoGetOSVersion(int *majorVsn, int *minorVsn) +wxOperatingSystemId wxGetOsVersion(int *majorVsn, int *minorVsn) { - long theSystem ; + long theSystem; + Gestalt(gestaltSystemVersion, &theSystem); - // are there x-platform conventions ? + if ( majorVsn != NULL ) + *majorVsn = (theSystem >> 8); - Gestalt(gestaltSystemVersion, &theSystem) ; - if (minorVsn != NULL) { - *minorVsn = (theSystem & 0xFF ) ; - } - if (majorVsn != NULL) { - *majorVsn = (theSystem >> 8 ) ; - } -#ifdef __DARWIN__ - return wxMAC_DARWIN; + if ( minorVsn != NULL ) + *minorVsn = (theSystem & 0xFF); + + +#if defined( __DARWIN__ ) + return wxOS_MAC_OSX_DARWIN; #else - return wxMAC; + return wxOS_MAC_OS; #endif } -#if wxUSE_BASE - #ifndef __DARWIN__ // defined in unix/utilsunx.cpp for Mac OS X @@ -223,29 +219,16 @@ void wxBell() SysBeep(30); } -wxToolkitInfo& wxConsoleAppTraits::GetToolkitInfo() -{ - static wxToolkitInfo info; - info.os = DoGetOSVersion(&info.versionMajor, &info.versionMinor); - info.name = _T("wxBase"); - return info; -} - #endif // wxUSE_BASE #if wxUSE_GUI -wxToolkitInfo& wxGUIAppTraits::GetToolkitInfo() +wxPortId wxGUIAppTraits::GetToolkitVersion(int *verMaj, int *verMin) const { - static wxToolkitInfo info; - info.os = DoGetOSVersion(&info.versionMajor, &info.versionMinor); - info.shortName = _T("mac"); - info.name = _T("wxMac"); -#ifdef __WXUNIVERSAL__ - info.shortName << _T("univ"); - info.name << _T("/wxUniversal"); -#endif - return info; + // We suppose that toolkit version is the same as OS version under Mac + wxGetOsVersion(verMaj, verMin); + + return wxPORT_MAC; } // Reading and writing resources (eg WIN.INI, .Xdefaults) @@ -331,7 +314,7 @@ extern wxCursor gMacCurrentCursor ; wxCursor gMacStoredActiveCursor ; // Set the cursor to the busy cursor for all windows -void wxBeginBusyCursor(wxCursor *cursor) +void wxBeginBusyCursor(const wxCursor *cursor) { if (gs_wxBusyCursorCount++ == 0) { @@ -364,7 +347,7 @@ bool wxIsBusy() #if wxUSE_BASE -wxString wxMacFindFolder( short vol, +wxString wxMacFindFolderNoSeparator( short vol, OSType folderType, Boolean createFolder) { @@ -377,12 +360,19 @@ wxString wxMacFindFolder( short vol, FSSpec file ; if ( FSMakeFSSpec( vRefNum , dirID , "\p" , &file ) == noErr ) { - strDir = wxMacFSSpec2MacFilename( &file ) + wxFILE_SEP_PATH ; + strDir = wxMacFSSpec2MacFilename( &file ); } } return strDir ; } +wxString wxMacFindFolder( short vol, + OSType folderType, + Boolean createFolder) +{ + return wxMacFindFolderNoSeparator(vol, folderType, createFolder) + wxFILE_SEP_PATH; +} + #endif // wxUSE_BASE #if wxUSE_GUI @@ -521,7 +511,7 @@ wxChar *wxGetUserHome (const wxString& user) return NULL; } -bool wxGetDiskSpace(const wxString& path, wxLongLong *pTotal, wxLongLong *pFree) +bool wxGetDiskSpace(const wxString& path, wxDiskspaceSize_t *pTotal, wxDiskspaceSize_t *pFree) { if ( path.empty() ) return false; @@ -545,10 +535,10 @@ bool wxGetDiskSpace(const wxString& path, wxLongLong *pTotal, wxLongLong *pFree) OSErr err = XGetVolumeInfoNoName( volumeName , 0 , &pb ) ; if ( err == noErr ) { if ( pTotal ) { - (*pTotal) = wxLongLong( pb.ioVTotalBytes ) ; + (*pTotal) = wxDiskspaceSize_t( pb.ioVTotalBytes ) ; } if ( pFree ) { - (*pFree) = wxLongLong( pb.ioVFreeBytes ) ; + (*pFree) = wxDiskspaceSize_t( pb.ioVFreeBytes ) ; } } @@ -1203,7 +1193,7 @@ void wxMacConvertNewlines10To13( char * data ) void wxMacConvertNewlines13To10( wxString * data ) { - size_t len = data->Length() ; + size_t len = data->length() ; if ( len == 0 || wxStrchr(data->c_str(),0x0d)==NULL) return ; @@ -1217,9 +1207,9 @@ void wxMacConvertNewlines13To10( wxString * data ) void wxMacConvertNewlines10To13( wxString * data ) { - size_t len = data->Length() ; + size_t len = data->length() ; - if ( data->Length() == 0 || wxStrchr(data->c_str(),0x0a)==NULL) + if ( data->empty() || wxStrchr(data->c_str(),0x0a)==NULL) return ; wxString temp(*data) ; @@ -1392,4 +1382,3 @@ extern bool WXDLLEXPORT wxIsDebuggerRunning() #endif // defined(__WXMAC__) && !defined(__DARWIN__) && (__MWERKS__ >= 0x2400) #endif // wxUSE_GUI -