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:
@@ -961,8 +961,9 @@ UPP Get##x() \
|
|||||||
void wxMacSetupConverters();
|
void wxMacSetupConverters();
|
||||||
void wxMacCleanupConverters();
|
void wxMacCleanupConverters();
|
||||||
|
|
||||||
WXDLLIMPEXP_BASE void wxMacStringToPascal( const wxString&from , StringPtr to );
|
// utils.cpp
|
||||||
WXDLLIMPEXP_BASE wxString wxMacMakeStringFromPascal( ConstStringPtr from );
|
void WXDLLIMPEXP_CORE wxMacStringToPascal( const wxString&from , StringPtr to );
|
||||||
|
wxString WXDLLIMPEXP_CORE wxMacMakeStringFromPascal( ConstStringPtr from );
|
||||||
|
|
||||||
// filefn.cpp
|
// filefn.cpp
|
||||||
|
|
||||||
|
@@ -259,6 +259,27 @@ void wxMacNativeToPoint( const Point *n , wxPoint* wx )
|
|||||||
wx->y = n->v;
|
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
|
// Carbon Event Support
|
||||||
// ----------------------------------------------------------------------------
|
// ----------------------------------------------------------------------------
|
||||||
|
@@ -40,10 +40,60 @@
|
|||||||
// More WX Includes
|
// More WX Includes
|
||||||
#include "wx/filename.h"
|
#include "wx/filename.h"
|
||||||
#include "wx/osx/core/cfstring.h"
|
#include "wx/osx/core/cfstring.h"
|
||||||
|
#include "wx/osx/core/private.h"
|
||||||
|
|
||||||
// Default path style
|
// Default path style
|
||||||
#define kDefaultPathStyle kCFURLPOSIXPathStyle
|
#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
|
// IMPLEMENTATION
|
||||||
//===========================================================================
|
//===========================================================================
|
||||||
|
@@ -45,9 +45,7 @@
|
|||||||
#include <Carbon/Carbon.h>
|
#include <Carbon/Carbon.h>
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if wxUSE_GUI
|
#include "wx/osx/private/timer.h"
|
||||||
#include "wx/osx/private/timer.h"
|
|
||||||
#endif // wxUSE_GUI
|
|
||||||
|
|
||||||
#include "wx/evtloop.h"
|
#include "wx/evtloop.h"
|
||||||
|
|
||||||
@@ -57,82 +55,6 @@
|
|||||||
#endif
|
#endif
|
||||||
#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
|
// Check whether this window wants to process messages, e.g. Stop button
|
||||||
// in long calculations.
|
// in long calculations.
|
||||||
bool wxCheckForInterrupt(wxWindow *WXUNUSED(wnd))
|
bool wxCheckForInterrupt(wxWindow *WXUNUSED(wnd))
|
||||||
@@ -235,5 +157,3 @@ CGColorRef wxMacCreateCGColorFromHITheme( ThemeBrush brush )
|
|||||||
}
|
}
|
||||||
|
|
||||||
#endif // wxOSX_USE_COCOA_OR_CARBON
|
#endif // wxOSX_USE_COCOA_OR_CARBON
|
||||||
|
|
||||||
#endif // wxUSE_GUI
|
|
||||||
|
Reference in New Issue
Block a user