Use 1040 for the PPC VERSION_MAX_ALLOWED, and do a proper weak linker
reference check for CGContextSetBlendMode. This allows the wxPython PPC half of the Universal binary to be fully functional on Tiger+. git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/WX_2_8_BRANCH@50815 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -16,8 +16,8 @@ do_lipo_build(){
|
||||
DIR="bld-$1"
|
||||
|
||||
if [ "$1" = "ppc" ]; then
|
||||
export CXX="g++-3.3 -arch ppc -DMAC_OS_X_VERSION_MAX_ALLOWED=1030"
|
||||
export CC="gcc-3.3 -arch ppc -DMAC_OS_X_VERSION_MAX_ALLOWED=1030"
|
||||
export CXX="g++-3.3 -arch ppc -DMAC_OS_X_VERSION_MAX_ALLOWED=1040"
|
||||
export CC="gcc-3.3 -arch ppc -DMAC_OS_X_VERSION_MAX_ALLOWED=1040"
|
||||
export MACOSX_DEPLOYMENT_TARGET=10.3
|
||||
else
|
||||
export CXX="g++-4.0 -arch i386"
|
||||
|
@@ -35,14 +35,18 @@
|
||||
#include "wx/mac/private.h"
|
||||
|
||||
|
||||
#ifndef wxMAC_USE_CORE_GRAPHICS_BLEND_MODES
|
||||
#define wxMAC_USE_CORE_GRAPHICS_BLEND_MODES 0
|
||||
#endif
|
||||
|
||||
#if MAC_OS_X_VERSION_MAX_ALLOWED <= MAC_OS_X_VERSION_10_4
|
||||
typedef float CGFloat ;
|
||||
#endif
|
||||
|
||||
#ifndef wxMAC_USE_CORE_GRAPHICS_BLEND_MODES
|
||||
#if MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_4
|
||||
#define wxMAC_USE_CORE_GRAPHICS_BLEND_MODES 1
|
||||
#else
|
||||
#define wxMAC_USE_CORE_GRAPHICS_BLEND_MODES 0
|
||||
#endif
|
||||
#endif
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
// constants
|
||||
//-----------------------------------------------------------------------------
|
||||
@@ -1561,13 +1565,16 @@ void wxDC::SetLogicalFunction( int function )
|
||||
|
||||
m_logicalFunction = function ;
|
||||
#if wxMAC_USE_CORE_GRAPHICS_BLEND_MODES
|
||||
if ( CGContextSetBlendMode != 0 )
|
||||
{
|
||||
CGContextRef cgContext = ((wxMacCGContext*)(m_graphicContext))->GetNativeContext() ;
|
||||
if ( m_logicalFunction == wxCOPY )
|
||||
CGContextSetBlendMode( cgContext, kCGBlendModeNormal ) ;
|
||||
else if ( m_logicalFunction == wxINVERT )
|
||||
else if ( m_logicalFunction == wxINVERT || m_logicalFunction == wxXOR )
|
||||
CGContextSetBlendMode( cgContext, kCGBlendModeExclusion ) ;
|
||||
else
|
||||
CGContextSetBlendMode( cgContext, kCGBlendModeNormal ) ;
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user