]> git.saurik.com Git - wxWidgets.git/blobdiff - src/mac/classic/utils.cpp
Back to previous call with -1 replacement.
[wxWidgets.git] / src / mac / classic / utils.cpp
index e290dc06e50606d39d6c15c17862c16371b5c91d..a14b39d556f081280baec9a241991b05f47cb874 100644 (file)
@@ -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 <ctype.h>
     #include <wtime.h>
 #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
-