Split utility functions into base (in utilsexc_base.cpp) and gui (src/osx/carbon/utils.cpp for Carbon-specific ones) to ensure proper builds under multi-lib config.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@55454 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
parent
ca9e2173a6
commit
b276795186
@ -961,8 +961,9 @@ UPP Get##x() \
|
||||
void wxMacSetupConverters();
|
||||
void wxMacCleanupConverters();
|
||||
|
||||
WXDLLIMPEXP_BASE void wxMacStringToPascal( const wxString&from , StringPtr to );
|
||||
WXDLLIMPEXP_BASE wxString wxMacMakeStringFromPascal( ConstStringPtr from );
|
||||
// utils.cpp
|
||||
void WXDLLIMPEXP_CORE wxMacStringToPascal( const wxString&from , StringPtr to );
|
||||
wxString WXDLLIMPEXP_CORE wxMacMakeStringFromPascal( ConstStringPtr from );
|
||||
|
||||
// filefn.cpp
|
||||
|
||||
|
@ -259,6 +259,27 @@ void wxMacNativeToPoint( const Point *n , wxPoint* wx )
|
||||
wx->y = n->v;
|
||||
}
|
||||
|
||||
//---------------------------------------------------------------------------
|
||||
// wxMac Specific string utility functions
|
||||
//---------------------------------------------------------------------------
|
||||
|
||||
void wxMacStringToPascal( const wxString&from , StringPtr to )
|
||||
{
|
||||
wxCharBuffer buf = from.mb_str( wxConvLocal );
|
||||
int len = strlen(buf);
|
||||
|
||||
if ( len > 255 )
|
||||
len = 255;
|
||||
to[0] = len;
|
||||
memcpy( (char*) &to[1] , buf , len );
|
||||
}
|
||||
|
||||
wxString wxMacMakeStringFromPascal( ConstStringPtr from )
|
||||
{
|
||||
return wxString( (char*) &from[1] , wxConvLocal , from[0] );
|
||||
}
|
||||
|
||||
|
||||
// ----------------------------------------------------------------------------
|
||||
// Carbon Event Support
|
||||
// ----------------------------------------------------------------------------
|
||||
|
@ -40,10 +40,60 @@
|
||||
// More WX Includes
|
||||
#include "wx/filename.h"
|
||||
#include "wx/osx/core/cfstring.h"
|
||||
#include "wx/osx/core/private.h"
|
||||
|
||||
// Default path style
|
||||
#define kDefaultPathStyle kCFURLPOSIXPathStyle
|
||||
|
||||
extern bool WXDLLEXPORT wxIsDebuggerRunning()
|
||||
{
|
||||
// TODO : try to find out ...
|
||||
return false;
|
||||
}
|
||||
|
||||
#if wxOSX_USE_COCOA_OR_CARBON
|
||||
|
||||
// have a fast version for mac code that returns the version as a return value
|
||||
|
||||
long UMAGetSystemVersion()
|
||||
{
|
||||
static SInt32 sUMASystemVersion = 0 ;
|
||||
if ( sUMASystemVersion == 0 )
|
||||
{
|
||||
verify_noerr(Gestalt(gestaltSystemVersion, &sUMASystemVersion));
|
||||
}
|
||||
return sUMASystemVersion ;
|
||||
}
|
||||
|
||||
// our OS version is the same in non GUI and GUI cases
|
||||
wxOperatingSystemId wxGetOsVersion(int *majorVsn, int *minorVsn)
|
||||
{
|
||||
SInt32 theSystem;
|
||||
Gestalt(gestaltSystemVersion, &theSystem);
|
||||
|
||||
if ( majorVsn != NULL )
|
||||
*majorVsn = (theSystem >> 8);
|
||||
|
||||
if ( minorVsn != NULL )
|
||||
*minorVsn = (theSystem & 0xFF);
|
||||
|
||||
return wxOS_MAC_OSX_DARWIN;
|
||||
}
|
||||
|
||||
#include <sys/utsname.h>
|
||||
|
||||
wxString wxGetOsDescription()
|
||||
{
|
||||
struct utsname name;
|
||||
uname(&name);
|
||||
return wxString::Format(_T("Mac OS X (%s %s %s)"),
|
||||
wxString::FromAscii(name.sysname).c_str(),
|
||||
wxString::FromAscii(name.release).c_str(),
|
||||
wxString::FromAscii(name.machine).c_str());
|
||||
}
|
||||
|
||||
#endif // wxOSX_USE_COCOA_OR_CARBON
|
||||
|
||||
//===========================================================================
|
||||
// IMPLEMENTATION
|
||||
//===========================================================================
|
||||
|
@ -45,9 +45,7 @@
|
||||
#include <Carbon/Carbon.h>
|
||||
#endif
|
||||
|
||||
#if wxUSE_GUI
|
||||
#include "wx/osx/private/timer.h"
|
||||
#endif // wxUSE_GUI
|
||||
#include "wx/osx/private/timer.h"
|
||||
|
||||
#include "wx/evtloop.h"
|
||||
|
||||
@ -57,82 +55,6 @@
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#if wxUSE_BASE
|
||||
|
||||
extern bool WXDLLEXPORT wxIsDebuggerRunning()
|
||||
{
|
||||
// TODO : try to find out ...
|
||||
return false;
|
||||
}
|
||||
|
||||
#if wxOSX_USE_COCOA_OR_CARBON
|
||||
|
||||
// have a fast version for mac code that returns the version as a return value
|
||||
|
||||
long UMAGetSystemVersion()
|
||||
{
|
||||
static SInt32 sUMASystemVersion = 0 ;
|
||||
if ( sUMASystemVersion == 0 )
|
||||
{
|
||||
verify_noerr(Gestalt(gestaltSystemVersion, &sUMASystemVersion));
|
||||
}
|
||||
return sUMASystemVersion ;
|
||||
}
|
||||
|
||||
// our OS version is the same in non GUI and GUI cases
|
||||
wxOperatingSystemId wxGetOsVersion(int *majorVsn, int *minorVsn)
|
||||
{
|
||||
SInt32 theSystem;
|
||||
Gestalt(gestaltSystemVersion, &theSystem);
|
||||
|
||||
if ( majorVsn != NULL )
|
||||
*majorVsn = (theSystem >> 8);
|
||||
|
||||
if ( minorVsn != NULL )
|
||||
*minorVsn = (theSystem & 0xFF);
|
||||
|
||||
return wxOS_MAC_OSX_DARWIN;
|
||||
}
|
||||
|
||||
#include <sys/utsname.h>
|
||||
|
||||
wxString wxGetOsDescription()
|
||||
{
|
||||
struct utsname name;
|
||||
uname(&name);
|
||||
return wxString::Format(_T("Mac OS X (%s %s %s)"),
|
||||
wxString::FromAscii(name.sysname).c_str(),
|
||||
wxString::FromAscii(name.release).c_str(),
|
||||
wxString::FromAscii(name.machine).c_str());
|
||||
}
|
||||
|
||||
#endif // wxOSX_USE_COCOA_OR_CARBON
|
||||
|
||||
|
||||
//---------------------------------------------------------------------------
|
||||
// wxMac Specific utility functions
|
||||
//---------------------------------------------------------------------------
|
||||
|
||||
void wxMacStringToPascal( const wxString&from , StringPtr to )
|
||||
{
|
||||
wxCharBuffer buf = from.mb_str( wxConvLocal );
|
||||
int len = strlen(buf);
|
||||
|
||||
if ( len > 255 )
|
||||
len = 255;
|
||||
to[0] = len;
|
||||
memcpy( (char*) &to[1] , buf , len );
|
||||
}
|
||||
|
||||
wxString wxMacMakeStringFromPascal( ConstStringPtr from )
|
||||
{
|
||||
return wxString( (char*) &from[1] , wxConvLocal , from[0] );
|
||||
}
|
||||
|
||||
#endif // wxUSE_BASE
|
||||
|
||||
#if wxUSE_GUI
|
||||
|
||||
// Check whether this window wants to process messages, e.g. Stop button
|
||||
// in long calculations.
|
||||
bool wxCheckForInterrupt(wxWindow *WXUNUSED(wnd))
|
||||
@ -235,5 +157,3 @@ CGColorRef wxMacCreateCGColorFromHITheme( ThemeBrush brush )
|
||||
}
|
||||
|
||||
#endif // wxOSX_USE_COCOA_OR_CARBON
|
||||
|
||||
#endif // wxUSE_GUI
|
||||
|
Loading…
Reference in New Issue
Block a user