fix warnings about unused parameters/variables in release build
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@52690 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -269,13 +269,13 @@ private :
|
|||||||
PicHandle m_backpict ;
|
PicHandle m_backpict ;
|
||||||
bool m_shown ;
|
bool m_shown ;
|
||||||
long m_mark ;
|
long m_mark ;
|
||||||
#if wxUSE_TIMER
|
#if wxUSE_TIMER
|
||||||
wxMacToolTipTimer* m_timer ;
|
wxMacToolTipTimer* m_timer ;
|
||||||
#endif
|
#endif
|
||||||
wxCFStringRef m_helpTextRef ;
|
wxCFStringRef m_helpTextRef ;
|
||||||
} ;
|
} ;
|
||||||
|
|
||||||
// Quartz
|
// Quartz
|
||||||
|
|
||||||
WXDLLIMPEXP_CORE void wxMacCreateBitmapButton( ControlButtonContentInfo*info , const wxBitmap& bitmap , int forceType = 0 );
|
WXDLLIMPEXP_CORE void wxMacCreateBitmapButton( ControlButtonContentInfo*info , const wxBitmap& bitmap , int forceType = 0 );
|
||||||
WXDLLIMPEXP_CORE void wxMacReleaseBitmapButton( ControlButtonContentInfo*info );
|
WXDLLIMPEXP_CORE void wxMacReleaseBitmapButton( ControlButtonContentInfo*info );
|
||||||
@@ -323,7 +323,7 @@ WXDLLIMPEXP_CORE Rect wxMacGetBoundsForControl( wxWindow* window , const wxPoint
|
|||||||
|
|
||||||
ControlActionUPP GetwxMacLiveScrollbarActionProc();
|
ControlActionUPP GetwxMacLiveScrollbarActionProc();
|
||||||
|
|
||||||
// additional optional event defines
|
// additional optional event defines
|
||||||
|
|
||||||
#if MAC_OS_X_VERSION_MAX_ALLOWED < MAC_OS_X_VERSION_10_5
|
#if MAC_OS_X_VERSION_MAX_ALLOWED < MAC_OS_X_VERSION_10_5
|
||||||
enum {
|
enum {
|
||||||
@@ -419,9 +419,12 @@ public :
|
|||||||
T value;
|
T value;
|
||||||
OSStatus err = GetData<T>( inPartCode , inTag , &value );
|
OSStatus err = GetData<T>( inPartCode , inTag , &value );
|
||||||
|
|
||||||
wxASSERT_MSG( err == noErr,
|
if ( err != noErr )
|
||||||
wxString::Format(wxT("GetData Failed for Part [%i] and Tag [%i]"),
|
{
|
||||||
inPartCode, (int)inTag) );
|
wxFAIL_MSG( wxString::Format(wxT("GetData Failed for Part [%i] and Tag [%i]"),
|
||||||
|
inPartCode, (int)inTag) );
|
||||||
|
}
|
||||||
|
|
||||||
return value;
|
return value;
|
||||||
}
|
}
|
||||||
template <typename T> OSStatus GetData( ResType inTag , T *data ) const
|
template <typename T> OSStatus GetData( ResType inTag , T *data ) const
|
||||||
|
@@ -565,8 +565,9 @@ IconRef wxBitmapRefData::GetIconRef()
|
|||||||
HLock((Handle) iconFamily);
|
HLock((Handle) iconFamily);
|
||||||
OSStatus err = GetIconRefFromIconFamilyPtr( *iconFamily, GetHandleSize((Handle) iconFamily), &m_iconRef );
|
OSStatus err = GetIconRefFromIconFamilyPtr( *iconFamily, GetHandleSize((Handle) iconFamily), &m_iconRef );
|
||||||
HUnlock((Handle) iconFamily);
|
HUnlock((Handle) iconFamily);
|
||||||
wxASSERT_MSG( err == noErr , wxT("Error when constructing icon ref") );
|
|
||||||
DisposeHandle( (Handle) iconFamily ) ;
|
DisposeHandle( (Handle) iconFamily ) ;
|
||||||
|
|
||||||
|
wxCHECK_MSG( err == noErr, NULL, wxT("Error when constructing icon ref") );
|
||||||
}
|
}
|
||||||
|
|
||||||
return m_iconRef ;
|
return m_iconRef ;
|
||||||
|
@@ -66,7 +66,7 @@ wxMacCarbonFontPanelHandler(EventHandlerCallRef WXUNUSED(nextHandler),
|
|||||||
OSStatus result = eventNotHandledErr ;
|
OSStatus result = eventNotHandledErr ;
|
||||||
wxFontDialog *fontdialog = (wxFontDialog*) userData ;
|
wxFontDialog *fontdialog = (wxFontDialog*) userData ;
|
||||||
wxFontData& fontdata= fontdialog->GetFontData() ;
|
wxFontData& fontdata= fontdialog->GetFontData() ;
|
||||||
|
|
||||||
wxMacCarbonEvent cEvent( event );
|
wxMacCarbonEvent cEvent( event );
|
||||||
switch(cEvent.GetKind())
|
switch(cEvent.GetKind())
|
||||||
{
|
{
|
||||||
@@ -92,13 +92,16 @@ wxMacCarbonFontPanelHandler(EventHandlerCallRef WXUNUSED(nextHandler),
|
|||||||
{
|
{
|
||||||
FMFontStyle fontStyle = cEvent.GetParameter<FMFontStyle>(kEventParamFMFontStyle);
|
FMFontStyle fontStyle = cEvent.GetParameter<FMFontStyle>(kEventParamFMFontStyle);
|
||||||
FMFontSize fontSize = cEvent.GetParameter<FMFontSize>(kEventParamFMFontSize);
|
FMFontSize fontSize = cEvent.GetParameter<FMFontSize>(kEventParamFMFontSize);
|
||||||
|
|
||||||
CFStringRef cfName = NULL;
|
CFStringRef cfName = NULL;
|
||||||
#if 1
|
#if 1
|
||||||
FMFontFamily fontFamily = cEvent.GetParameter<FMFontFamily>(kEventParamFMFontFamily);
|
FMFontFamily fontFamily = cEvent.GetParameter<FMFontFamily>(kEventParamFMFontFamily);
|
||||||
ATSFontFamilyRef atsfontfamilyref = FMGetATSFontFamilyRefFromFontFamily( fontFamily ) ;
|
ATSFontFamilyRef atsfontfamilyref = FMGetATSFontFamilyRefFromFontFamily( fontFamily ) ;
|
||||||
OSStatus err = ATSFontFamilyGetName( atsfontfamilyref , kATSOptionFlagsDefault , &cfName ) ;
|
OSStatus err = ATSFontFamilyGetName( atsfontfamilyref , kATSOptionFlagsDefault , &cfName ) ;
|
||||||
wxASSERT_MSG( err == noErr , wxT("ATSFontFamilyGetName failed") );
|
if ( err == noErr )
|
||||||
|
{
|
||||||
|
wxFAIL_MSG("ATSFontFamilyGetName failed");
|
||||||
|
}
|
||||||
#else
|
#else
|
||||||
// we don't use the ATSU naming anymore
|
// we don't use the ATSU naming anymore
|
||||||
ByteCount actualLength = 0;
|
ByteCount actualLength = 0;
|
||||||
@@ -140,7 +143,7 @@ wxMacCarbonFontPanelHandler(EventHandlerCallRef WXUNUSED(nextHandler),
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
#endif // wxMAC_USE_ATSU_TEXT
|
#endif // wxMAC_USE_ATSU_TEXT
|
||||||
|
|
||||||
// retrieving the color
|
// retrieving the color
|
||||||
RGBColor fontColor ;
|
RGBColor fontColor ;
|
||||||
if ( cEvent.GetParameter<RGBColor>(kEventParamFontColor, &fontColor) == noErr )
|
if ( cEvent.GetParameter<RGBColor>(kEventParamFontColor, &fontColor) == noErr )
|
||||||
@@ -181,9 +184,9 @@ wxMacCarbonFontPanelHandler(EventHandlerCallRef WXUNUSED(nextHandler),
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
break ;
|
break ;
|
||||||
} ;
|
}
|
||||||
|
|
||||||
return result ;
|
return result ;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -141,8 +141,10 @@ int RunMixedFontDialog(wxFontDialog* WXUNUSED(dialog))
|
|||||||
{
|
{
|
||||||
int retval = wxID_CANCEL ;
|
int retval = wxID_CANCEL ;
|
||||||
|
|
||||||
bool cocoaLoaded = NSApplicationLoad();
|
if ( !NSApplicationLoad() )
|
||||||
wxASSERT_MSG(cocoaLoaded,wxT("Couldn't load Cocoa in Carbon Environment")) ;
|
{
|
||||||
|
wxFAIL_MSG("Couldn't load Cocoa in Carbon Environment");
|
||||||
|
}
|
||||||
|
|
||||||
wxAutoNSAutoreleasePool pool;
|
wxAutoNSAutoreleasePool pool;
|
||||||
|
|
||||||
|
@@ -11,7 +11,7 @@
|
|||||||
|
|
||||||
#include "wx/wxprec.h"
|
#include "wx/wxprec.h"
|
||||||
|
|
||||||
#if wxUSE_GAUGE
|
#if wxUSE_GAUGE
|
||||||
|
|
||||||
#include "wx/gauge.h"
|
#include "wx/gauge.h"
|
||||||
|
|
||||||
@@ -51,40 +51,40 @@ bool wxGauge::Create( wxWindow *parent,
|
|||||||
m_peer->SetData<Boolean>( kControlEntireControl, kControlProgressBarAnimatingTag, (Boolean)false );
|
m_peer->SetData<Boolean>( kControlEntireControl, kControlProgressBarAnimatingTag, (Boolean)false );
|
||||||
|
|
||||||
MacPostControlCreate( pos, size );
|
MacPostControlCreate( pos, size );
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
void wxGauge::SetRange(int r)
|
void wxGauge::SetRange(int r)
|
||||||
{
|
{
|
||||||
// we are going via the base class in case there is
|
// we are going via the base class in case there is
|
||||||
// some change behind the values by it
|
// some change behind the values by it
|
||||||
wxGaugeBase::SetRange( r ) ;
|
wxGaugeBase::SetRange( r ) ;
|
||||||
if ( m_peer && m_peer->Ok() ){
|
if ( m_peer && m_peer->Ok() ){
|
||||||
// switch back to determinate mode if not there already
|
// switch back to determinate mode if not there already
|
||||||
if ( m_peer->GetData<Boolean>( kControlNoPart, kControlProgressBarIndeterminateTag ) != false )
|
if ( m_peer->GetData<Boolean>( kControlNoPart, kControlProgressBarIndeterminateTag ) != false )
|
||||||
{
|
{
|
||||||
m_peer->SetData<Boolean>( kControlNoPart, kControlProgressBarIndeterminateTag, (Boolean)false );
|
m_peer->SetData<Boolean>( kControlNoPart, kControlProgressBarIndeterminateTag, (Boolean)false );
|
||||||
}
|
}
|
||||||
|
|
||||||
m_peer->SetMaximum( GetRange() ) ;
|
m_peer->SetMaximum( GetRange() ) ;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void wxGauge::SetValue(int pos)
|
void wxGauge::SetValue(int pos)
|
||||||
{
|
{
|
||||||
// we are going via the base class in case there is
|
// we are going via the base class in case there is
|
||||||
// some change behind the values by it
|
// some change behind the values by it
|
||||||
wxGaugeBase::SetValue( pos ) ;
|
wxGaugeBase::SetValue( pos ) ;
|
||||||
|
|
||||||
if ( m_peer && m_peer->Ok() )
|
if ( m_peer && m_peer->Ok() )
|
||||||
{
|
{
|
||||||
// switch back to determinate mode if not there already
|
// switch back to determinate mode if not there already
|
||||||
if ( m_peer->GetData<Boolean>( kControlNoPart, kControlProgressBarIndeterminateTag ) != false )
|
if ( m_peer->GetData<Boolean>( kControlNoPart, kControlProgressBarIndeterminateTag ) != false )
|
||||||
{
|
{
|
||||||
m_peer->SetData<Boolean>( kControlNoPart, kControlProgressBarIndeterminateTag, (Boolean)false );
|
m_peer->SetData<Boolean>( kControlNoPart, kControlProgressBarIndeterminateTag, (Boolean)false );
|
||||||
}
|
}
|
||||||
|
|
||||||
m_peer->SetValue( GetValue() ) ;
|
m_peer->SetValue( GetValue() ) ;
|
||||||
|
|
||||||
// turn off animation in the unnecessary situations as this is consuming a lot of CPU otherwise
|
// turn off animation in the unnecessary situations as this is consuming a lot of CPU otherwise
|
||||||
@@ -114,9 +114,9 @@ void wxGauge::Pulse()
|
|||||||
{
|
{
|
||||||
if ( m_peer->GetData<Boolean>( kControlNoPart, kControlProgressBarIndeterminateTag ) != true )
|
if ( m_peer->GetData<Boolean>( kControlNoPart, kControlProgressBarIndeterminateTag ) != true )
|
||||||
{
|
{
|
||||||
m_peer->SetData<Boolean>( kControlNoPart, kControlProgressBarIndeterminateTag, true);
|
m_peer->SetData<Boolean>( kControlNoPart, kControlProgressBarIndeterminateTag, true);
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( m_peer->GetData<Boolean>( kControlEntireControl, kControlProgressBarAnimatingTag ) != true )
|
if ( m_peer->GetData<Boolean>( kControlEntireControl, kControlProgressBarAnimatingTag ) != true )
|
||||||
{
|
{
|
||||||
m_peer->SetData<Boolean>( kControlEntireControl, kControlProgressBarAnimatingTag, true ) ;
|
m_peer->SetData<Boolean>( kControlEntireControl, kControlProgressBarAnimatingTag, true ) ;
|
||||||
|
@@ -87,9 +87,9 @@ static const double RAD2DEG = 180.0 / M_PI;
|
|||||||
OSStatus wxMacDrawCGImage(
|
OSStatus wxMacDrawCGImage(
|
||||||
CGContextRef inContext,
|
CGContextRef inContext,
|
||||||
const CGRect * inBounds,
|
const CGRect * inBounds,
|
||||||
CGImageRef inImage)
|
CGImageRef inImage)
|
||||||
{
|
{
|
||||||
#if defined( __LP64__ ) || defined(__WXCOCOA__)
|
#if defined( __LP64__ ) || defined(__WXCOCOA__)
|
||||||
// todo flip
|
// todo flip
|
||||||
CGContextDrawImage(inContext, *inBounds, inImage );
|
CGContextDrawImage(inContext, *inBounds, inImage );
|
||||||
return noErr;
|
return noErr;
|
||||||
@@ -111,7 +111,7 @@ CGColorRef wxMacCreateCGColor( const wxColour& col )
|
|||||||
else
|
else
|
||||||
#endif
|
#endif
|
||||||
{
|
{
|
||||||
CGFloat components[4] = { col.Red() / 255.0, col.Green() / 255.0, col.Blue() / 255.0, col.Alpha() / 255.0 } ;
|
CGFloat components[4] = { col.Red() / 255.0, col.Green() / 255.0, col.Blue() / 255.0, col.Alpha() / 255.0 } ;
|
||||||
retval = CGColorCreate( wxMacGetGenericRGBColorSpace() , components ) ;
|
retval = CGColorCreate( wxMacGetGenericRGBColorSpace() , components ) ;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -551,13 +551,13 @@ class wxMacCoreGraphicsColour
|
|||||||
wxMacCoreGraphicsColour();
|
wxMacCoreGraphicsColour();
|
||||||
wxMacCoreGraphicsColour(const wxBrush &brush);
|
wxMacCoreGraphicsColour(const wxBrush &brush);
|
||||||
~wxMacCoreGraphicsColour();
|
~wxMacCoreGraphicsColour();
|
||||||
|
|
||||||
void Apply( CGContextRef cgContext );
|
void Apply( CGContextRef cgContext );
|
||||||
protected:
|
protected:
|
||||||
void Init();
|
void Init();
|
||||||
wxCFRef<CGColorRef> m_color;
|
wxCFRef<CGColorRef> m_color;
|
||||||
wxCFRef<CGColorSpaceRef> m_colorSpace;
|
wxCFRef<CGColorSpaceRef> m_colorSpace;
|
||||||
|
|
||||||
bool m_isPattern;
|
bool m_isPattern;
|
||||||
wxCFRef<CGPatternRef> m_pattern;
|
wxCFRef<CGPatternRef> m_pattern;
|
||||||
CGFloat* m_patternColorComponents;
|
CGFloat* m_patternColorComponents;
|
||||||
@@ -589,7 +589,7 @@ void wxMacCoreGraphicsColour::Apply( CGContextRef cgContext )
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
wxMacCoreGraphicsColour::wxMacCoreGraphicsColour()
|
wxMacCoreGraphicsColour::wxMacCoreGraphicsColour()
|
||||||
{
|
{
|
||||||
Init();
|
Init();
|
||||||
}
|
}
|
||||||
@@ -766,7 +766,7 @@ public:
|
|||||||
CTFontRef GetCTFont() const { return m_ctFont ; }
|
CTFontRef GetCTFont() const { return m_ctFont ; }
|
||||||
#endif
|
#endif
|
||||||
wxColour GetColour() const { return m_colour ; }
|
wxColour GetColour() const { return m_colour ; }
|
||||||
|
|
||||||
bool GetUnderlined() const { return m_underlined ; }
|
bool GetUnderlined() const { return m_underlined ; }
|
||||||
private :
|
private :
|
||||||
wxColour m_colour;
|
wxColour m_colour;
|
||||||
@@ -889,7 +889,7 @@ public :
|
|||||||
// gets the component valuess of the matrix
|
// gets the component valuess of the matrix
|
||||||
virtual void Get(wxDouble* a=NULL, wxDouble* b=NULL, wxDouble* c=NULL,
|
virtual void Get(wxDouble* a=NULL, wxDouble* b=NULL, wxDouble* c=NULL,
|
||||||
wxDouble* d=NULL, wxDouble* tx=NULL, wxDouble* ty=NULL) const;
|
wxDouble* d=NULL, wxDouble* tx=NULL, wxDouble* ty=NULL) const;
|
||||||
|
|
||||||
// makes this the inverse matrix
|
// makes this the inverse matrix
|
||||||
virtual void Invert();
|
virtual void Invert();
|
||||||
|
|
||||||
@@ -1253,7 +1253,7 @@ public:
|
|||||||
virtual void GetSize( wxDouble* width, wxDouble* height);
|
virtual void GetSize( wxDouble* width, wxDouble* height);
|
||||||
|
|
||||||
virtual void StartPage( wxDouble width, wxDouble height );
|
virtual void StartPage( wxDouble width, wxDouble height );
|
||||||
|
|
||||||
virtual void EndPage();
|
virtual void EndPage();
|
||||||
|
|
||||||
virtual void Flush();
|
virtual void Flush();
|
||||||
@@ -1311,7 +1311,7 @@ public:
|
|||||||
virtual void DrawPath( const wxGraphicsPath &path, int fillStyle = wxODDEVEN_RULE );
|
virtual void DrawPath( const wxGraphicsPath &path, int fillStyle = wxODDEVEN_RULE );
|
||||||
|
|
||||||
virtual bool ShouldOffset() const
|
virtual bool ShouldOffset() const
|
||||||
{
|
{
|
||||||
int penwidth = 0 ;
|
int penwidth = 0 ;
|
||||||
if ( !m_pen.IsNull() )
|
if ( !m_pen.IsNull() )
|
||||||
{
|
{
|
||||||
@@ -1474,12 +1474,12 @@ void wxMacCoreGraphicsContext::StartPage( wxDouble width, wxDouble height )
|
|||||||
r = CGRectMake( 0 , 0 , width , height );
|
r = CGRectMake( 0 , 0 , width , height );
|
||||||
else
|
else
|
||||||
r = CGRectMake( 0 , 0 , m_width , m_height );
|
r = CGRectMake( 0 , 0 , m_width , m_height );
|
||||||
|
|
||||||
CGContextBeginPage(m_cgContext, &r );
|
CGContextBeginPage(m_cgContext, &r );
|
||||||
// CGContextTranslateCTM( m_cgContext , 0 , height == 0 ? m_height : height );
|
// CGContextTranslateCTM( m_cgContext , 0 , height == 0 ? m_height : height );
|
||||||
// CGContextScaleCTM( m_cgContext , 1 , -1 );
|
// CGContextScaleCTM( m_cgContext , 1 , -1 );
|
||||||
}
|
}
|
||||||
|
|
||||||
void wxMacCoreGraphicsContext::EndPage()
|
void wxMacCoreGraphicsContext::EndPage()
|
||||||
{
|
{
|
||||||
CGContextEndPage(m_cgContext);
|
CGContextEndPage(m_cgContext);
|
||||||
@@ -1494,28 +1494,31 @@ void wxMacCoreGraphicsContext::EnsureIsValid()
|
|||||||
{
|
{
|
||||||
if ( !m_cgContext )
|
if ( !m_cgContext )
|
||||||
{
|
{
|
||||||
OSStatus status =
|
OSStatus status =
|
||||||
#if ! ( defined( __LP64__ ) || defined(__WXCOCOA__) )
|
#if ! ( defined( __LP64__ ) || defined(__WXCOCOA__) )
|
||||||
QDBeginCGContext( GetWindowPort( m_windowRef ) , &m_cgContext );
|
QDBeginCGContext( GetWindowPort( m_windowRef ) , &m_cgContext );
|
||||||
#else
|
#else
|
||||||
paramErr;
|
paramErr;
|
||||||
#endif
|
#endif
|
||||||
wxASSERT_MSG( status == noErr , wxT("Cannot nest wxDCs on the same window") );
|
if ( status != noErr )
|
||||||
|
{
|
||||||
|
wxFAIL_MSG("Cannot nest wxDCs on the same window");
|
||||||
|
}
|
||||||
|
|
||||||
CGContextConcatCTM( m_cgContext, m_windowTransform );
|
CGContextConcatCTM( m_cgContext, m_windowTransform );
|
||||||
CGContextSaveGState( m_cgContext );
|
CGContextSaveGState( m_cgContext );
|
||||||
m_releaseContext = true;
|
m_releaseContext = true;
|
||||||
if ( !HIShapeIsEmpty(m_clipRgn) )
|
if ( !HIShapeIsEmpty(m_clipRgn) )
|
||||||
{
|
{
|
||||||
// the clip region is in device coordinates, so we convert this again to user coordinates
|
// the clip region is in device coordinates, so we convert this again to user coordinates
|
||||||
wxCFRef<HIMutableShapeRef> hishape( HIShapeCreateMutableCopy( m_clipRgn ) );
|
wxCFRef<HIMutableShapeRef> hishape( HIShapeCreateMutableCopy( m_clipRgn ) );
|
||||||
CGPoint transformedOrigin = CGPointApplyAffineTransform( CGPointZero,m_windowTransform);
|
CGPoint transformedOrigin = CGPointApplyAffineTransform( CGPointZero,m_windowTransform);
|
||||||
HIShapeOffset( hishape, -transformedOrigin.x, -transformedOrigin.y );
|
HIShapeOffset( hishape, -transformedOrigin.x, -transformedOrigin.y );
|
||||||
HIShapeReplacePathInCGContext( hishape, m_cgContext );
|
HIShapeReplacePathInCGContext( hishape, m_cgContext );
|
||||||
CGContextClip( m_cgContext );
|
CGContextClip( m_cgContext );
|
||||||
}
|
}
|
||||||
CGContextSaveGState( m_cgContext );
|
CGContextSaveGState( m_cgContext );
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// TODO test whether the private CGContextSetCompositeOperation works under 10.3 (using NSCompositingModes)
|
// TODO test whether the private CGContextSetCompositeOperation works under 10.3 (using NSCompositingModes)
|
||||||
@@ -1526,11 +1529,11 @@ bool wxMacCoreGraphicsContext::SetLogicalFunction( int function )
|
|||||||
return true;
|
return true;
|
||||||
|
|
||||||
EnsureIsValid();
|
EnsureIsValid();
|
||||||
|
|
||||||
bool retval = false;
|
bool retval = false;
|
||||||
bool shouldAntiAlias = true;
|
bool shouldAntiAlias = true;
|
||||||
CGBlendMode mode = kCGBlendModeNormal;
|
CGBlendMode mode = kCGBlendModeNormal;
|
||||||
|
|
||||||
#if defined(__WXMAC__) && ( MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_5 )
|
#if defined(__WXMAC__) && ( MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_5 )
|
||||||
if ( UMAGetSystemVersion() >= 0x1050 )
|
if ( UMAGetSystemVersion() >= 0x1050 )
|
||||||
{
|
{
|
||||||
@@ -1547,7 +1550,7 @@ bool wxMacCoreGraphicsContext::SetLogicalFunction( int function )
|
|||||||
case wxXOR :
|
case wxXOR :
|
||||||
mode = kCGBlendModeXOR;
|
mode = kCGBlendModeXOR;
|
||||||
shouldAntiAlias = false;
|
shouldAntiAlias = false;
|
||||||
break;
|
break;
|
||||||
default :
|
default :
|
||||||
retval = false;
|
retval = false;
|
||||||
break;
|
break;
|
||||||
@@ -1568,7 +1571,7 @@ bool wxMacCoreGraphicsContext::SetLogicalFunction( int function )
|
|||||||
retval = true;
|
retval = true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (retval)
|
if (retval)
|
||||||
{
|
{
|
||||||
m_logicalFunction = function;
|
m_logicalFunction = function;
|
||||||
@@ -1591,7 +1594,7 @@ void wxMacCoreGraphicsContext::Clip( const wxRegion ®ion )
|
|||||||
// this offsetting to device coords is not really correct, but since we cannot apply affine transforms
|
// this offsetting to device coords is not really correct, but since we cannot apply affine transforms
|
||||||
// to regions we try at least to have correct translations
|
// to regions we try at least to have correct translations
|
||||||
HIMutableShapeRef mutableShape = HIShapeCreateMutableCopy( region.GetWXHRGN() );
|
HIMutableShapeRef mutableShape = HIShapeCreateMutableCopy( region.GetWXHRGN() );
|
||||||
|
|
||||||
CGPoint transformedOrigin = CGPointApplyAffineTransform( CGPointZero, m_windowTransform );
|
CGPoint transformedOrigin = CGPointApplyAffineTransform( CGPointZero, m_windowTransform );
|
||||||
HIShapeOffset( mutableShape, transformedOrigin.x, transformedOrigin.y );
|
HIShapeOffset( mutableShape, transformedOrigin.x, transformedOrigin.y );
|
||||||
m_clipRgn.reset(mutableShape);
|
m_clipRgn.reset(mutableShape);
|
||||||
@@ -1609,7 +1612,7 @@ void wxMacCoreGraphicsContext::Clip( wxDouble x, wxDouble y, wxDouble w, wxDoubl
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
// the clipping itself must be stored as device coordinates, otherwise
|
// the clipping itself must be stored as device coordinates, otherwise
|
||||||
// we cannot apply it back correctly
|
// we cannot apply it back correctly
|
||||||
r.origin= CGPointApplyAffineTransform( r.origin, m_windowTransform );
|
r.origin= CGPointApplyAffineTransform( r.origin, m_windowTransform );
|
||||||
m_clipRgn.reset(HIShapeCreateWithRect(&r));
|
m_clipRgn.reset(HIShapeCreateWithRect(&r));
|
||||||
@@ -1869,7 +1872,7 @@ void wxMacCoreGraphicsContext::DrawText( const wxString &str, wxDouble x, wxDoub
|
|||||||
{
|
{
|
||||||
if ( m_font.IsNull() )
|
if ( m_font.IsNull() )
|
||||||
return;
|
return;
|
||||||
|
|
||||||
EnsureIsValid();
|
EnsureIsValid();
|
||||||
#if wxMAC_USE_CORE_TEXT
|
#if wxMAC_USE_CORE_TEXT
|
||||||
if ( UMAGetSystemVersion() >= 0x1050 )
|
if ( UMAGetSystemVersion() >= 0x1050 )
|
||||||
@@ -1879,16 +1882,16 @@ void wxMacCoreGraphicsContext::DrawText( const wxString &str, wxDouble x, wxDoub
|
|||||||
CTFontRef font = fref->GetCTFont();
|
CTFontRef font = fref->GetCTFont();
|
||||||
CGColorRef col = wxMacCreateCGColor( fref->GetColour() );
|
CGColorRef col = wxMacCreateCGColor( fref->GetColour() );
|
||||||
CTUnderlineStyle ustyle = fref->GetUnderlined() ? kCTUnderlineStyleSingle : kCTUnderlineStyleNone ;
|
CTUnderlineStyle ustyle = fref->GetUnderlined() ? kCTUnderlineStyleSingle : kCTUnderlineStyleNone ;
|
||||||
wxCFRef<CFNumberRef> underlined( CFNumberCreate(NULL, kCFNumberSInt32Type, &ustyle) );
|
wxCFRef<CFNumberRef> underlined( CFNumberCreate(NULL, kCFNumberSInt32Type, &ustyle) );
|
||||||
CFStringRef keys[] = { kCTFontAttributeName , kCTForegroundColorAttributeName, kCTUnderlineStyleAttributeName };
|
CFStringRef keys[] = { kCTFontAttributeName , kCTForegroundColorAttributeName, kCTUnderlineStyleAttributeName };
|
||||||
CFTypeRef values[] = { font, col, underlined };
|
CFTypeRef values[] = { font, col, underlined };
|
||||||
wxCFRef<CFDictionaryRef> attributes( CFDictionaryCreate(kCFAllocatorDefault, (const void**) &keys, (const void**) &values,
|
wxCFRef<CFDictionaryRef> attributes( CFDictionaryCreate(kCFAllocatorDefault, (const void**) &keys, (const void**) &values,
|
||||||
WXSIZEOF( keys ), &kCFTypeDictionaryKeyCallBacks, &kCFTypeDictionaryValueCallBacks) );
|
WXSIZEOF( keys ), &kCFTypeDictionaryKeyCallBacks, &kCFTypeDictionaryValueCallBacks) );
|
||||||
wxCFRef<CFAttributedStringRef> attrtext( CFAttributedStringCreate(kCFAllocatorDefault, text, attributes) );
|
wxCFRef<CFAttributedStringRef> attrtext( CFAttributedStringCreate(kCFAllocatorDefault, text, attributes) );
|
||||||
wxCFRef<CTLineRef> line( CTLineCreateWithAttributedString(attrtext) );
|
wxCFRef<CTLineRef> line( CTLineCreateWithAttributedString(attrtext) );
|
||||||
|
|
||||||
y += CTFontGetAscent(font);
|
y += CTFontGetAscent(font);
|
||||||
|
|
||||||
CGContextSaveGState(m_cgContext);
|
CGContextSaveGState(m_cgContext);
|
||||||
CGContextTranslateCTM(m_cgContext, x, y);
|
CGContextTranslateCTM(m_cgContext, x, y);
|
||||||
CGContextScaleCTM(m_cgContext, 1, -1);
|
CGContextScaleCTM(m_cgContext, 1, -1);
|
||||||
@@ -1934,12 +1937,12 @@ void wxMacCoreGraphicsContext::DrawText( const wxString &str, wxDouble x, wxDoub
|
|||||||
ATSUStyle style = (((wxMacCoreGraphicsFontData*)m_font.GetRefData())->GetATSUStyle());
|
ATSUStyle style = (((wxMacCoreGraphicsFontData*)m_font.GetRefData())->GetATSUStyle());
|
||||||
status = ::ATSUCreateTextLayoutWithTextPtr( unibuf.GetBuffer() , 0 , chars , chars , 1 ,
|
status = ::ATSUCreateTextLayoutWithTextPtr( unibuf.GetBuffer() , 0 , chars , chars , 1 ,
|
||||||
&chars , &style , &atsuLayout );
|
&chars , &style , &atsuLayout );
|
||||||
|
|
||||||
wxASSERT_MSG( status == noErr , wxT("couldn't create the layout of the rotated text") );
|
wxASSERT_MSG( status == noErr , wxT("couldn't create the layout of the rotated text") );
|
||||||
|
|
||||||
status = ::ATSUSetTransientFontMatching( atsuLayout , true );
|
status = ::ATSUSetTransientFontMatching( atsuLayout , true );
|
||||||
wxASSERT_MSG( status == noErr , wxT("couldn't setup transient font matching") );
|
wxASSERT_MSG( status == noErr , wxT("couldn't setup transient font matching") );
|
||||||
|
|
||||||
int iAngle = int( angle * RAD2DEG );
|
int iAngle = int( angle * RAD2DEG );
|
||||||
if ( abs(iAngle) > 0 )
|
if ( abs(iAngle) > 0 )
|
||||||
{
|
{
|
||||||
@@ -1959,7 +1962,7 @@ void wxMacCoreGraphicsContext::DrawText( const wxString &str, wxDouble x, wxDoub
|
|||||||
status = ::ATSUSetLayoutControls(atsuLayout , sizeof(atsuTags) / sizeof(ATSUAttributeTag),
|
status = ::ATSUSetLayoutControls(atsuLayout , sizeof(atsuTags) / sizeof(ATSUAttributeTag),
|
||||||
atsuTags, atsuSizes, atsuValues );
|
atsuTags, atsuSizes, atsuValues );
|
||||||
}
|
}
|
||||||
|
|
||||||
{
|
{
|
||||||
ATSUAttributeTag atsuTags[] =
|
ATSUAttributeTag atsuTags[] =
|
||||||
{
|
{
|
||||||
@@ -1976,35 +1979,35 @@ void wxMacCoreGraphicsContext::DrawText( const wxString &str, wxDouble x, wxDoub
|
|||||||
status = ::ATSUSetLayoutControls(atsuLayout , sizeof(atsuTags) / sizeof(ATSUAttributeTag),
|
status = ::ATSUSetLayoutControls(atsuLayout , sizeof(atsuTags) / sizeof(ATSUAttributeTag),
|
||||||
atsuTags, atsuSizes, atsuValues );
|
atsuTags, atsuSizes, atsuValues );
|
||||||
}
|
}
|
||||||
|
|
||||||
ATSUTextMeasurement textBefore, textAfter;
|
ATSUTextMeasurement textBefore, textAfter;
|
||||||
ATSUTextMeasurement ascent, descent;
|
ATSUTextMeasurement ascent, descent;
|
||||||
|
|
||||||
status = ::ATSUGetUnjustifiedBounds( atsuLayout, kATSUFromTextBeginning, kATSUToTextEnd,
|
status = ::ATSUGetUnjustifiedBounds( atsuLayout, kATSUFromTextBeginning, kATSUToTextEnd,
|
||||||
&textBefore , &textAfter, &ascent , &descent );
|
&textBefore , &textAfter, &ascent , &descent );
|
||||||
|
|
||||||
wxASSERT_MSG( status == noErr , wxT("couldn't measure the rotated text") );
|
wxASSERT_MSG( status == noErr , wxT("couldn't measure the rotated text") );
|
||||||
|
|
||||||
Rect rect;
|
Rect rect;
|
||||||
x += (int)(sin(angle) * FixedToInt(ascent));
|
x += (int)(sin(angle) * FixedToInt(ascent));
|
||||||
y += (int)(cos(angle) * FixedToInt(ascent));
|
y += (int)(cos(angle) * FixedToInt(ascent));
|
||||||
|
|
||||||
status = ::ATSUMeasureTextImage( atsuLayout, kATSUFromTextBeginning, kATSUToTextEnd,
|
status = ::ATSUMeasureTextImage( atsuLayout, kATSUFromTextBeginning, kATSUToTextEnd,
|
||||||
IntToFixed(x) , IntToFixed(y) , &rect );
|
IntToFixed(x) , IntToFixed(y) , &rect );
|
||||||
wxASSERT_MSG( status == noErr , wxT("couldn't measure the rotated text") );
|
wxASSERT_MSG( status == noErr , wxT("couldn't measure the rotated text") );
|
||||||
|
|
||||||
CGContextSaveGState(m_cgContext);
|
CGContextSaveGState(m_cgContext);
|
||||||
CGContextTranslateCTM(m_cgContext, x, y);
|
CGContextTranslateCTM(m_cgContext, x, y);
|
||||||
CGContextScaleCTM(m_cgContext, 1, -1);
|
CGContextScaleCTM(m_cgContext, 1, -1);
|
||||||
status = ::ATSUDrawText( atsuLayout, kATSUFromTextBeginning, kATSUToTextEnd,
|
status = ::ATSUDrawText( atsuLayout, kATSUFromTextBeginning, kATSUToTextEnd,
|
||||||
IntToFixed(0) , IntToFixed(0) );
|
IntToFixed(0) , IntToFixed(0) );
|
||||||
|
|
||||||
wxASSERT_MSG( status == noErr , wxT("couldn't draw the rotated text") );
|
wxASSERT_MSG( status == noErr , wxT("couldn't draw the rotated text") );
|
||||||
|
|
||||||
CGContextRestoreGState(m_cgContext);
|
CGContextRestoreGState(m_cgContext);
|
||||||
|
|
||||||
::ATSUDisposeTextLayout(atsuLayout);
|
::ATSUDisposeTextLayout(atsuLayout);
|
||||||
|
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
@@ -2027,7 +2030,7 @@ void wxMacCoreGraphicsContext::GetTextExtent( const wxString &str, wxDouble *wid
|
|||||||
*descent = 0;
|
*descent = 0;
|
||||||
if ( externalLeading )
|
if ( externalLeading )
|
||||||
*externalLeading = 0;
|
*externalLeading = 0;
|
||||||
|
|
||||||
if (str.empty())
|
if (str.empty())
|
||||||
return;
|
return;
|
||||||
|
|
||||||
@@ -2040,15 +2043,15 @@ void wxMacCoreGraphicsContext::GetTextExtent( const wxString &str, wxDouble *wid
|
|||||||
wxCFStringRef text(str, wxLocale::GetSystemEncoding() );
|
wxCFStringRef text(str, wxLocale::GetSystemEncoding() );
|
||||||
CFStringRef keys[] = { kCTFontAttributeName };
|
CFStringRef keys[] = { kCTFontAttributeName };
|
||||||
CFTypeRef values[] = { font };
|
CFTypeRef values[] = { font };
|
||||||
wxCFRef<CFDictionaryRef> attributes( CFDictionaryCreate(kCFAllocatorDefault, (const void**) &keys, (const void**) &values,
|
wxCFRef<CFDictionaryRef> attributes( CFDictionaryCreate(kCFAllocatorDefault, (const void**) &keys, (const void**) &values,
|
||||||
WXSIZEOF( keys ), &kCFTypeDictionaryKeyCallBacks, &kCFTypeDictionaryValueCallBacks) );
|
WXSIZEOF( keys ), &kCFTypeDictionaryKeyCallBacks, &kCFTypeDictionaryValueCallBacks) );
|
||||||
wxCFRef<CFAttributedStringRef> attrtext( CFAttributedStringCreate(kCFAllocatorDefault, text, attributes) );
|
wxCFRef<CFAttributedStringRef> attrtext( CFAttributedStringCreate(kCFAllocatorDefault, text, attributes) );
|
||||||
wxCFRef<CTLineRef> line( CTLineCreateWithAttributedString(attrtext) );
|
wxCFRef<CTLineRef> line( CTLineCreateWithAttributedString(attrtext) );
|
||||||
|
|
||||||
CGFloat w, a, d, l;
|
CGFloat w, a, d, l;
|
||||||
|
|
||||||
w = CTLineGetTypographicBounds(line, &a, &d, &l) ;
|
w = CTLineGetTypographicBounds(line, &a, &d, &l) ;
|
||||||
|
|
||||||
if ( height )
|
if ( height )
|
||||||
*height = a+d+l;
|
*height = a+d+l;
|
||||||
if ( descent )
|
if ( descent )
|
||||||
@@ -2063,26 +2066,26 @@ void wxMacCoreGraphicsContext::GetTextExtent( const wxString &str, wxDouble *wid
|
|||||||
#if wxMAC_USE_ATSU_TEXT
|
#if wxMAC_USE_ATSU_TEXT
|
||||||
{
|
{
|
||||||
OSStatus status = noErr;
|
OSStatus status = noErr;
|
||||||
|
|
||||||
ATSUTextLayout atsuLayout;
|
ATSUTextLayout atsuLayout;
|
||||||
wxMacUniCharBuffer unibuf( str );
|
wxMacUniCharBuffer unibuf( str );
|
||||||
UniCharCount chars = unibuf.GetChars();
|
UniCharCount chars = unibuf.GetChars();
|
||||||
|
|
||||||
ATSUStyle style = (((wxMacCoreGraphicsFontData*)m_font.GetRefData())->GetATSUStyle());
|
ATSUStyle style = (((wxMacCoreGraphicsFontData*)m_font.GetRefData())->GetATSUStyle());
|
||||||
status = ::ATSUCreateTextLayoutWithTextPtr( unibuf.GetBuffer() , 0 , chars , chars , 1 ,
|
status = ::ATSUCreateTextLayoutWithTextPtr( unibuf.GetBuffer() , 0 , chars , chars , 1 ,
|
||||||
&chars , &style , &atsuLayout );
|
&chars , &style , &atsuLayout );
|
||||||
|
|
||||||
wxASSERT_MSG( status == noErr , wxT("couldn't create the layout of the text") );
|
wxASSERT_MSG( status == noErr , wxT("couldn't create the layout of the text") );
|
||||||
|
|
||||||
status = ::ATSUSetTransientFontMatching( atsuLayout , true );
|
status = ::ATSUSetTransientFontMatching( atsuLayout , true );
|
||||||
wxASSERT_MSG( status == noErr , wxT("couldn't setup transient font matching") );
|
wxASSERT_MSG( status == noErr , wxT("couldn't setup transient font matching") );
|
||||||
|
|
||||||
ATSUTextMeasurement textBefore, textAfter;
|
ATSUTextMeasurement textBefore, textAfter;
|
||||||
ATSUTextMeasurement textAscent, textDescent;
|
ATSUTextMeasurement textAscent, textDescent;
|
||||||
|
|
||||||
status = ::ATSUGetUnjustifiedBounds( atsuLayout, kATSUFromTextBeginning, kATSUToTextEnd,
|
status = ::ATSUGetUnjustifiedBounds( atsuLayout, kATSUFromTextBeginning, kATSUToTextEnd,
|
||||||
&textBefore , &textAfter, &textAscent , &textDescent );
|
&textBefore , &textAfter, &textAscent , &textDescent );
|
||||||
|
|
||||||
if ( height )
|
if ( height )
|
||||||
*height = FixedToInt(textAscent + textDescent);
|
*height = FixedToInt(textAscent + textDescent);
|
||||||
if ( descent )
|
if ( descent )
|
||||||
@@ -2091,7 +2094,7 @@ void wxMacCoreGraphicsContext::GetTextExtent( const wxString &str, wxDouble *wid
|
|||||||
*externalLeading = 0;
|
*externalLeading = 0;
|
||||||
if ( width )
|
if ( width )
|
||||||
*width = FixedToInt(textAfter - textBefore);
|
*width = FixedToInt(textAfter - textBefore);
|
||||||
|
|
||||||
::ATSUDisposeTextLayout(atsuLayout);
|
::ATSUDisposeTextLayout(atsuLayout);
|
||||||
|
|
||||||
return;
|
return;
|
||||||
@@ -2114,21 +2117,21 @@ void wxMacCoreGraphicsContext::GetPartialTextExtents(const wxString& text, wxArr
|
|||||||
{
|
{
|
||||||
wxMacCoreGraphicsFontData* fref = (wxMacCoreGraphicsFontData*)m_font.GetRefData();
|
wxMacCoreGraphicsFontData* fref = (wxMacCoreGraphicsFontData*)m_font.GetRefData();
|
||||||
CTFontRef font = fref->GetCTFont();
|
CTFontRef font = fref->GetCTFont();
|
||||||
|
|
||||||
wxCFStringRef t(text, wxLocale::GetSystemEncoding() );
|
wxCFStringRef t(text, wxLocale::GetSystemEncoding() );
|
||||||
CFStringRef keys[] = { kCTFontAttributeName };
|
CFStringRef keys[] = { kCTFontAttributeName };
|
||||||
CFTypeRef values[] = { font };
|
CFTypeRef values[] = { font };
|
||||||
wxCFRef<CFDictionaryRef> attributes( CFDictionaryCreate(kCFAllocatorDefault, (const void**) &keys, (const void**) &values,
|
wxCFRef<CFDictionaryRef> attributes( CFDictionaryCreate(kCFAllocatorDefault, (const void**) &keys, (const void**) &values,
|
||||||
WXSIZEOF( keys ), &kCFTypeDictionaryKeyCallBacks, &kCFTypeDictionaryValueCallBacks) );
|
WXSIZEOF( keys ), &kCFTypeDictionaryKeyCallBacks, &kCFTypeDictionaryValueCallBacks) );
|
||||||
wxCFRef<CFAttributedStringRef> attrtext( CFAttributedStringCreate(kCFAllocatorDefault, t, attributes) );
|
wxCFRef<CFAttributedStringRef> attrtext( CFAttributedStringCreate(kCFAllocatorDefault, t, attributes) );
|
||||||
wxCFRef<CTLineRef> line( CTLineCreateWithAttributedString(attrtext) );
|
wxCFRef<CTLineRef> line( CTLineCreateWithAttributedString(attrtext) );
|
||||||
|
|
||||||
int chars = text.length();
|
int chars = text.length();
|
||||||
for ( int pos = 0; pos < (int)chars; pos ++ )
|
for ( int pos = 0; pos < (int)chars; pos ++ )
|
||||||
{
|
{
|
||||||
widths[pos] = CTLineGetOffsetForStringIndex( line, pos+1 , NULL )+0.5;
|
widths[pos] = CTLineGetOffsetForStringIndex( line, pos+1 , NULL )+0.5;
|
||||||
}
|
}
|
||||||
|
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
@@ -2138,13 +2141,13 @@ void wxMacCoreGraphicsContext::GetPartialTextExtents(const wxString& text, wxArr
|
|||||||
ATSUTextLayout atsuLayout;
|
ATSUTextLayout atsuLayout;
|
||||||
wxMacUniCharBuffer unibuf( text );
|
wxMacUniCharBuffer unibuf( text );
|
||||||
UniCharCount chars = unibuf.GetChars();
|
UniCharCount chars = unibuf.GetChars();
|
||||||
|
|
||||||
ATSUStyle style = (((wxMacCoreGraphicsFontData*)m_font.GetRefData())->GetATSUStyle());
|
ATSUStyle style = (((wxMacCoreGraphicsFontData*)m_font.GetRefData())->GetATSUStyle());
|
||||||
status = ::ATSUCreateTextLayoutWithTextPtr( unibuf.GetBuffer() , 0 , chars , chars , 1 ,
|
status = ::ATSUCreateTextLayoutWithTextPtr( unibuf.GetBuffer() , 0 , chars , chars , 1 ,
|
||||||
&chars , &style , &atsuLayout );
|
&chars , &style , &atsuLayout );
|
||||||
|
|
||||||
wxASSERT_MSG( status == noErr , wxT("couldn't create the layout of the text") );
|
wxASSERT_MSG( status == noErr , wxT("couldn't create the layout of the text") );
|
||||||
|
|
||||||
status = ::ATSUSetTransientFontMatching( atsuLayout , true );
|
status = ::ATSUSetTransientFontMatching( atsuLayout , true );
|
||||||
wxASSERT_MSG( status == noErr , wxT("couldn't setup transient font matching") );
|
wxASSERT_MSG( status == noErr , wxT("couldn't setup transient font matching") );
|
||||||
|
|
||||||
@@ -2152,18 +2155,18 @@ void wxMacCoreGraphicsContext::GetPartialTextExtents(const wxString& text, wxArr
|
|||||||
{
|
{
|
||||||
unsigned long actualNumberOfBounds = 0;
|
unsigned long actualNumberOfBounds = 0;
|
||||||
ATSTrapezoid glyphBounds;
|
ATSTrapezoid glyphBounds;
|
||||||
|
|
||||||
// We get a single bound, since the text should only require one. If it requires more, there is an issue
|
// We get a single bound, since the text should only require one. If it requires more, there is an issue
|
||||||
OSStatus result;
|
OSStatus result;
|
||||||
result = ATSUGetGlyphBounds( atsuLayout, 0, 0, kATSUFromTextBeginning, pos + 1,
|
result = ATSUGetGlyphBounds( atsuLayout, 0, 0, kATSUFromTextBeginning, pos + 1,
|
||||||
kATSUseDeviceOrigins, 1, &glyphBounds, &actualNumberOfBounds );
|
kATSUseDeviceOrigins, 1, &glyphBounds, &actualNumberOfBounds );
|
||||||
if (result != noErr || actualNumberOfBounds != 1 )
|
if (result != noErr || actualNumberOfBounds != 1 )
|
||||||
return;
|
return;
|
||||||
|
|
||||||
widths[pos] = FixedToInt( glyphBounds.upperRight.x - glyphBounds.upperLeft.x );
|
widths[pos] = FixedToInt( glyphBounds.upperRight.x - glyphBounds.upperLeft.x );
|
||||||
//unsigned char uch = s[i];
|
//unsigned char uch = s[i];
|
||||||
}
|
}
|
||||||
|
|
||||||
::ATSUDisposeTextLayout(atsuLayout);
|
::ATSUDisposeTextLayout(atsuLayout);
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
@@ -2236,7 +2239,7 @@ public :
|
|||||||
virtual wxGraphicsContext * CreateContextFromNativeWindow( void * window );
|
virtual wxGraphicsContext * CreateContextFromNativeWindow( void * window );
|
||||||
|
|
||||||
virtual wxGraphicsContext * CreateContext( wxWindow* window );
|
virtual wxGraphicsContext * CreateContext( wxWindow* window );
|
||||||
|
|
||||||
virtual wxGraphicsContext * CreateMeasuringContext();
|
virtual wxGraphicsContext * CreateMeasuringContext();
|
||||||
|
|
||||||
// Path
|
// Path
|
||||||
@@ -2267,7 +2270,7 @@ public :
|
|||||||
|
|
||||||
// create a native bitmap representation
|
// create a native bitmap representation
|
||||||
virtual wxGraphicsBitmap CreateBitmap( const wxBitmap &bitmap ) ;
|
virtual wxGraphicsBitmap CreateBitmap( const wxBitmap &bitmap ) ;
|
||||||
|
|
||||||
// create a native bitmap representation
|
// create a native bitmap representation
|
||||||
virtual wxGraphicsBitmap CreateSubBitmap( const wxGraphicsBitmap &bitmap, wxDouble x, wxDouble y, wxDouble w, wxDouble h ) ;
|
virtual wxGraphicsBitmap CreateSubBitmap( const wxGraphicsBitmap &bitmap, wxDouble x, wxDouble y, wxDouble w, wxDouble h ) ;
|
||||||
private :
|
private :
|
||||||
@@ -2319,7 +2322,7 @@ wxGraphicsContext * wxMacCoreGraphicsRenderer::CreateContext( const wxMemoryDC&
|
|||||||
{
|
{
|
||||||
int w, h;
|
int w, h;
|
||||||
mem_impl->GetSize( &w, &h );
|
mem_impl->GetSize( &w, &h );
|
||||||
return new wxMacCoreGraphicsContext( this,
|
return new wxMacCoreGraphicsContext( this,
|
||||||
(CGContextRef)(mem_impl->GetGraphicsContext()->GetNativeContext()), (wxDouble) w, (wxDouble) h );
|
(CGContextRef)(mem_impl->GetGraphicsContext()->GetNativeContext()), (wxDouble) w, (wxDouble) h );
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
@@ -2407,7 +2410,7 @@ wxGraphicsBitmap wxMacCoreGraphicsRenderer::CreateBitmap( const wxBitmap& bmp )
|
|||||||
return wxNullGraphicsBitmap;
|
return wxNullGraphicsBitmap;
|
||||||
}
|
}
|
||||||
|
|
||||||
wxGraphicsBitmap wxMacCoreGraphicsRenderer::CreateSubBitmap( const wxGraphicsBitmap &bmp, wxDouble x, wxDouble y, wxDouble w, wxDouble h )
|
wxGraphicsBitmap wxMacCoreGraphicsRenderer::CreateSubBitmap( const wxGraphicsBitmap &bmp, wxDouble x, wxDouble y, wxDouble w, wxDouble h )
|
||||||
{
|
{
|
||||||
CGImageRef img = static_cast<wxMacCoreGraphicsBitmapData*>(bmp.GetRefData())->GetBitmap();
|
CGImageRef img = static_cast<wxMacCoreGraphicsBitmapData*>(bmp.GetRefData())->GetBitmap();
|
||||||
if ( img )
|
if ( img )
|
||||||
@@ -2503,7 +2506,10 @@ CGDataConsumerRef wxMacCGDataConsumerCreateWithCFData( CFMutableDataRef data )
|
|||||||
return CGDataConsumerCreateWithCFData( data );
|
return CGDataConsumerCreateWithCFData( data );
|
||||||
}
|
}
|
||||||
|
|
||||||
void wxMacReleaseMemoryBufferProviderCallback(void *info, const void *data, size_t WXUNUSED(size))
|
void
|
||||||
|
wxMacReleaseMemoryBufferProviderCallback(void *info,
|
||||||
|
const void * WXUNUSED_UNLESS_DEBUG(data),
|
||||||
|
size_t WXUNUSED(size))
|
||||||
{
|
{
|
||||||
wxMemoryBuffer* membuf = (wxMemoryBuffer*) info ;
|
wxMemoryBuffer* membuf = (wxMemoryBuffer*) info ;
|
||||||
|
|
||||||
@@ -2517,7 +2523,7 @@ CGDataProviderRef wxMacCGDataProviderCreateWithMemoryBuffer( const wxMemoryBuffe
|
|||||||
wxMemoryBuffer* b = new wxMemoryBuffer( buf );
|
wxMemoryBuffer* b = new wxMemoryBuffer( buf );
|
||||||
if ( b->GetDataLen() == 0 )
|
if ( b->GetDataLen() == 0 )
|
||||||
return NULL;
|
return NULL;
|
||||||
|
|
||||||
return CGDataProviderCreateWithData( b , (const void *) b->GetData() , b->GetDataLen() ,
|
return CGDataProviderCreateWithData( b , (const void *) b->GetData() , b->GetDataLen() ,
|
||||||
wxMacReleaseMemoryBufferProviderCallback );
|
wxMacReleaseMemoryBufferProviderCallback );
|
||||||
}
|
}
|
||||||
|
@@ -220,7 +220,11 @@ bool wxIcon::LoadFile(
|
|||||||
HLock((Handle) iconFamily);
|
HLock((Handle) iconFamily);
|
||||||
OSStatus err = GetIconRefFromIconFamilyPtr( *iconFamily, GetHandleSize((Handle) iconFamily), &iconRef );
|
OSStatus err = GetIconRefFromIconFamilyPtr( *iconFamily, GetHandleSize((Handle) iconFamily), &iconRef );
|
||||||
HUnlock((Handle) iconFamily);
|
HUnlock((Handle) iconFamily);
|
||||||
wxASSERT_MSG( err == noErr , wxT("Error when constructing icon ref") );
|
if ( err != noErr )
|
||||||
|
{
|
||||||
|
wxFAIL_MSG("Error when constructing icon ref");
|
||||||
|
}
|
||||||
|
|
||||||
ReleaseResource( resHandle ) ;
|
ReleaseResource( resHandle ) ;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -774,7 +774,8 @@ wxListCtrl::~wxListCtrl()
|
|||||||
}
|
}
|
||||||
|
|
||||||
/*static*/
|
/*static*/
|
||||||
wxVisualAttributes wxListCtrl::GetClassDefaultAttributes(wxWindowVariant variant)
|
wxVisualAttributes
|
||||||
|
wxListCtrl::GetClassDefaultAttributes(wxWindowVariant WXUNUSED(variant))
|
||||||
{
|
{
|
||||||
wxVisualAttributes attr;
|
wxVisualAttributes attr;
|
||||||
|
|
||||||
|
@@ -40,7 +40,7 @@ BEGIN_EVENT_TABLE(wxMDIClientWindow, wxWindow)
|
|||||||
EVT_SCROLL(wxMDIClientWindow::OnScroll)
|
EVT_SCROLL(wxMDIClientWindow::OnScroll)
|
||||||
END_EVENT_TABLE()
|
END_EVENT_TABLE()
|
||||||
|
|
||||||
static const wxChar *TRACE_MDI = _T("mdi");
|
#define TRACE_MDI "mdi"
|
||||||
|
|
||||||
static const int IDM_WINDOWTILEHOR = 4001;
|
static const int IDM_WINDOWTILEHOR = 4001;
|
||||||
static const int IDM_WINDOWCASCADE = 4002;
|
static const int IDM_WINDOWCASCADE = 4002;
|
||||||
|
@@ -413,7 +413,10 @@ void wxNotebook::MacSetupTabs()
|
|||||||
wxMacCreateBitmapButton( &info, bmap ) ;
|
wxMacCreateBitmapButton( &info, bmap ) ;
|
||||||
|
|
||||||
OSStatus err = m_peer->SetData<ControlButtonContentInfo>( ii + 1, kControlTabImageContentTag, &info );
|
OSStatus err = m_peer->SetData<ControlButtonContentInfo>( ii + 1, kControlTabImageContentTag, &info );
|
||||||
wxASSERT_MSG( err == noErr , wxT("Error when setting icon on tab") ) ;
|
if ( err != noErr )
|
||||||
|
{
|
||||||
|
wxFAIL_MSG("Error when setting icon on tab");
|
||||||
|
}
|
||||||
|
|
||||||
wxMacReleaseBitmapButton( &info ) ;
|
wxMacReleaseBitmapButton( &info ) ;
|
||||||
}
|
}
|
||||||
|
@@ -149,7 +149,7 @@ void wxOverlayImpl::EndDrawing( wxDC* dc)
|
|||||||
wxGCDCImpl *win_impl = wxDynamicCast(impl,wxGCDCImpl);
|
wxGCDCImpl *win_impl = wxDynamicCast(impl,wxGCDCImpl);
|
||||||
if (win_impl)
|
if (win_impl)
|
||||||
win_impl->SetGraphicsContext(NULL);
|
win_impl->SetGraphicsContext(NULL);
|
||||||
|
|
||||||
CGContextFlush( m_overlayContext );
|
CGContextFlush( m_overlayContext );
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -166,7 +166,10 @@ void wxOverlayImpl::Reset()
|
|||||||
{
|
{
|
||||||
#ifndef __LP64__
|
#ifndef __LP64__
|
||||||
OSStatus err = QDEndCGContext(GetWindowPort(m_overlayWindow), &m_overlayContext);
|
OSStatus err = QDEndCGContext(GetWindowPort(m_overlayWindow), &m_overlayContext);
|
||||||
wxASSERT_MSG( err == noErr , _("Couldn't end the context on the overlay window") );
|
if ( err != noErr )
|
||||||
|
{
|
||||||
|
wxFAIL_MSG("Couldn't end the context on the overlay window");
|
||||||
|
}
|
||||||
#endif
|
#endif
|
||||||
m_overlayContext = NULL ;
|
m_overlayContext = NULL ;
|
||||||
}
|
}
|
||||||
|
@@ -75,7 +75,7 @@ wxSize wxStaticText::DoGetBestSize() const
|
|||||||
{
|
{
|
||||||
Rect bestsize = { 0 , 0 , 0 , 0 } ;
|
Rect bestsize = { 0 , 0 , 0 , 0 } ;
|
||||||
Point bounds;
|
Point bounds;
|
||||||
|
|
||||||
// try the built-in best size if available
|
// try the built-in best size if available
|
||||||
Boolean former = m_peer->GetData<Boolean>( kControlStaticTextIsMultilineTag);
|
Boolean former = m_peer->GetData<Boolean>( kControlStaticTextIsMultilineTag);
|
||||||
m_peer->SetData( kControlStaticTextIsMultilineTag, (Boolean)0 );
|
m_peer->SetData( kControlStaticTextIsMultilineTag, (Boolean)0 );
|
||||||
|
@@ -189,7 +189,7 @@ wxMacPortSaver( (GrafPtr) GetWindowPort( (WindowRef) win->MacGetTopLevelWindowRe
|
|||||||
m_formerClip = NewRgn() ;
|
m_formerClip = NewRgn() ;
|
||||||
m_newClip = NewRgn() ;
|
m_newClip = NewRgn() ;
|
||||||
GetClip( m_formerClip ) ;
|
GetClip( m_formerClip ) ;
|
||||||
|
|
||||||
if ( win )
|
if ( win )
|
||||||
{
|
{
|
||||||
// guard against half constructed objects, this just leads to a empty clip
|
// guard against half constructed objects, this just leads to a empty clip
|
||||||
@@ -197,13 +197,13 @@ wxMacPortSaver( (GrafPtr) GetWindowPort( (WindowRef) win->MacGetTopLevelWindowRe
|
|||||||
{
|
{
|
||||||
int x = 0 , y = 0;
|
int x = 0 , y = 0;
|
||||||
win->MacWindowToRootWindow( &x, &y ) ;
|
win->MacWindowToRootWindow( &x, &y ) ;
|
||||||
|
|
||||||
// get area including focus rect
|
// get area including focus rect
|
||||||
HIShapeGetAsQDRgn( ((wxWindow*)win)->MacGetVisibleRegion(true).GetWXHRGN() , m_newClip );
|
HIShapeGetAsQDRgn( ((wxWindow*)win)->MacGetVisibleRegion(true).GetWXHRGN() , m_newClip );
|
||||||
if ( !EmptyRgn( m_newClip ) )
|
if ( !EmptyRgn( m_newClip ) )
|
||||||
OffsetRgn( m_newClip , x , y ) ;
|
OffsetRgn( m_newClip , x , y ) ;
|
||||||
}
|
}
|
||||||
|
|
||||||
SetClip( m_newClip ) ;
|
SetClip( m_newClip ) ;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -1763,11 +1763,11 @@ void wxMacMLTEControl::AdjustCreationAttributes(const wxColour &background,
|
|||||||
| kTXNSupportFontCommandProcessing
|
| kTXNSupportFontCommandProcessing
|
||||||
| kTXNSupportFontCommandUpdating;
|
| kTXNSupportFontCommandUpdating;
|
||||||
|
|
||||||
// only spell check when not read-only
|
// only spell check when not read-only
|
||||||
// use system options for the default
|
// use system options for the default
|
||||||
bool checkSpelling = false ;
|
bool checkSpelling = false ;
|
||||||
if ( !(m_windowStyle & wxTE_READONLY) )
|
if ( !(m_windowStyle & wxTE_READONLY) )
|
||||||
{
|
{
|
||||||
#if wxUSE_SYSTEM_OPTIONS
|
#if wxUSE_SYSTEM_OPTIONS
|
||||||
if ( wxSystemOptions::HasOption( wxMAC_TEXTCONTROL_USE_SPELL_CHECKER ) && (wxSystemOptions::GetOptionInt( wxMAC_TEXTCONTROL_USE_SPELL_CHECKER ) == 1) )
|
if ( wxSystemOptions::HasOption( wxMAC_TEXTCONTROL_USE_SPELL_CHECKER ) && (wxSystemOptions::GetOptionInt( wxMAC_TEXTCONTROL_USE_SPELL_CHECKER ) == 1) )
|
||||||
{
|
{
|
||||||
@@ -1775,11 +1775,11 @@ void wxMacMLTEControl::AdjustCreationAttributes(const wxColour &background,
|
|||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( checkSpelling )
|
if ( checkSpelling )
|
||||||
options |=
|
options |=
|
||||||
kTXNSupportSpellCheckCommandProcessing
|
kTXNSupportSpellCheckCommandProcessing
|
||||||
| kTXNSupportSpellCheckCommandUpdating;
|
| kTXNSupportSpellCheckCommandUpdating;
|
||||||
|
|
||||||
TXNSetCommandEventSupport( m_txn , options ) ;
|
TXNSetCommandEventSupport( m_txn , options ) ;
|
||||||
}
|
}
|
||||||
|
@@ -52,7 +52,7 @@ END_EVENT_TABLE()
|
|||||||
|
|
||||||
// when embedding native controls in the native toolbar we must make sure the
|
// when embedding native controls in the native toolbar we must make sure the
|
||||||
// control does not get deleted behind our backs, so the retain count gets increased
|
// control does not get deleted behind our backs, so the retain count gets increased
|
||||||
// (after creation it is 1), first be the creation of the custom HIToolbarItem wrapper
|
// (after creation it is 1), first be the creation of the custom HIToolbarItem wrapper
|
||||||
// object, and second by the code 'creating' the custom HIView (which is the same as the
|
// object, and second by the code 'creating' the custom HIView (which is the same as the
|
||||||
// already existing native control, therefore we just increase the ref count)
|
// already existing native control, therefore we just increase the ref count)
|
||||||
// when this view is removed from the native toolbar its count gets decremented again
|
// when this view is removed from the native toolbar its count gets decremented again
|
||||||
@@ -119,16 +119,19 @@ public:
|
|||||||
if ( m_toolbarItemRef )
|
if ( m_toolbarItemRef )
|
||||||
{
|
{
|
||||||
CFIndex count = CFGetRetainCount( m_toolbarItemRef ) ;
|
CFIndex count = CFGetRetainCount( m_toolbarItemRef ) ;
|
||||||
// different behaviour under Leopard
|
// different behaviour under Leopard
|
||||||
if ( UMAGetSystemVersion() < 0x1050 )
|
if ( UMAGetSystemVersion() < 0x1050 )
|
||||||
{
|
{
|
||||||
wxASSERT_MSG( count == 1 , wxT("Reference Count of native tool was not 1 in wxToolBarTool destructor") );
|
if ( count != 1 )
|
||||||
}
|
{
|
||||||
|
wxFAIL_MSG("Reference count of native tool was not 1 in wxToolBarTool destructor");
|
||||||
|
}
|
||||||
|
}
|
||||||
wxTheApp->MacAddToAutorelease(m_toolbarItemRef);
|
wxTheApp->MacAddToAutorelease(m_toolbarItemRef);
|
||||||
CFRelease(m_toolbarItemRef);
|
CFRelease(m_toolbarItemRef);
|
||||||
m_toolbarItemRef = NULL;
|
m_toolbarItemRef = NULL;
|
||||||
}
|
}
|
||||||
#endif
|
#endif // wxMAC_USE_NATIVE_TOOLBAR
|
||||||
}
|
}
|
||||||
|
|
||||||
wxSize GetSize() const
|
wxSize GetSize() const
|
||||||
@@ -628,12 +631,15 @@ static pascal OSStatus ControlToolbarItemHandler( EventHandlerCallRef inCallRef,
|
|||||||
// depending whether the wxControl corresponding to this HIView has already been destroyed or
|
// depending whether the wxControl corresponding to this HIView has already been destroyed or
|
||||||
// not, ref counts differ, so we cannot assert a special value
|
// not, ref counts differ, so we cannot assert a special value
|
||||||
CFIndex count = CFGetRetainCount( viewRef ) ;
|
CFIndex count = CFGetRetainCount( viewRef ) ;
|
||||||
wxASSERT_MSG( count >=1 , wxT("Reference Count of native tool was illegal before removal") );
|
|
||||||
if ( count >= 1 )
|
if ( count >= 1 )
|
||||||
|
{
|
||||||
|
wxFAIL_MSG("Reference count of native tool was illegal before removal");
|
||||||
|
|
||||||
CFRelease( viewRef ) ;
|
CFRelease( viewRef ) ;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
free( object ) ;
|
free( object ) ;
|
||||||
result = noErr;
|
result = noErr;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
@@ -680,7 +686,7 @@ static pascal OSStatus ControlToolbarItemHandler( EventHandlerCallRef inCallRef,
|
|||||||
|
|
||||||
// Extra width to avoid edge of combobox being cut off
|
// Extra width to avoid edge of combobox being cut off
|
||||||
sz.x += 3;
|
sz.x += 3;
|
||||||
|
|
||||||
HISize min, max;
|
HISize min, max;
|
||||||
min.width = max.width = sz.x ;
|
min.width = max.width = sz.x ;
|
||||||
min.height = max.height = sz.y ;
|
min.height = max.height = sz.y ;
|
||||||
@@ -868,11 +874,14 @@ wxToolBar::~wxToolBar()
|
|||||||
MacInstallNativeToolbar( false );
|
MacInstallNativeToolbar( false );
|
||||||
|
|
||||||
CFIndex count = CFGetRetainCount( m_macHIToolbarRef ) ;
|
CFIndex count = CFGetRetainCount( m_macHIToolbarRef ) ;
|
||||||
// Leopard seems to have one refcount more, so we cannot check reliably at the moment
|
// Leopard seems to have one refcount more, so we cannot check reliably at the moment
|
||||||
if ( UMAGetSystemVersion() < 0x1050 )
|
if ( UMAGetSystemVersion() < 0x1050 )
|
||||||
{
|
{
|
||||||
wxASSERT_MSG( count == 1 , wxT("Reference Count of native control was not 1 in wxToolBar destructor") );
|
if ( count != 1 )
|
||||||
}
|
{
|
||||||
|
wxFAIL_MSG("Reference count of native control was not 1 in wxToolBar destructor");
|
||||||
|
}
|
||||||
|
}
|
||||||
CFRelease( (HIToolbarRef)m_macHIToolbarRef );
|
CFRelease( (HIToolbarRef)m_macHIToolbarRef );
|
||||||
m_macHIToolbarRef = NULL;
|
m_macHIToolbarRef = NULL;
|
||||||
}
|
}
|
||||||
@@ -1183,7 +1192,11 @@ bool wxToolBar::Realize()
|
|||||||
if ( tool2->IsControl() )
|
if ( tool2->IsControl() )
|
||||||
{
|
{
|
||||||
CFIndex count = CFGetRetainCount( tool2->GetControl()->GetPeer()->GetControlRef() ) ;
|
CFIndex count = CFGetRetainCount( tool2->GetControl()->GetPeer()->GetControlRef() ) ;
|
||||||
wxASSERT_MSG( count == 3 || count == 2 , wxT("Reference Count of native tool was illegal before removal") );
|
if ( count != 3 && count != 2 )
|
||||||
|
{
|
||||||
|
wxFAIL_MSG("Reference count of native tool was illegal before removal");
|
||||||
|
}
|
||||||
|
|
||||||
wxASSERT( IsValidControlHandle(tool2->GetControl()->GetPeer()->GetControlRef() )) ;
|
wxASSERT( IsValidControlHandle(tool2->GetControl()->GetPeer()->GetControlRef() )) ;
|
||||||
}
|
}
|
||||||
err = HIToolbarRemoveItemAtIndex(refTB, idx);
|
err = HIToolbarRemoveItemAtIndex(refTB, idx);
|
||||||
@@ -1195,7 +1208,11 @@ bool wxToolBar::Realize()
|
|||||||
if ( tool2->IsControl() )
|
if ( tool2->IsControl() )
|
||||||
{
|
{
|
||||||
CFIndex count = CFGetRetainCount( tool2->GetControl()->GetPeer()->GetControlRef() ) ;
|
CFIndex count = CFGetRetainCount( tool2->GetControl()->GetPeer()->GetControlRef() ) ;
|
||||||
wxASSERT_MSG( count == 2 , wxT("Reference Count of native tool was not 2 after removal") );
|
if ( count != 2 )
|
||||||
|
{
|
||||||
|
wxFAIL_MSG("Reference count of native tool was not 2 after removal");
|
||||||
|
}
|
||||||
|
|
||||||
wxASSERT( IsValidControlHandle(tool2->GetControl()->GetPeer()->GetControlRef() )) ;
|
wxASSERT( IsValidControlHandle(tool2->GetControl()->GetPeer()->GetControlRef() )) ;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1214,7 +1231,10 @@ bool wxToolBar::Realize()
|
|||||||
if ( tool->IsControl() )
|
if ( tool->IsControl() )
|
||||||
{
|
{
|
||||||
CFIndex count = CFGetRetainCount( tool->GetControl()->GetPeer()->GetControlRef() ) ;
|
CFIndex count = CFGetRetainCount( tool->GetControl()->GetPeer()->GetControlRef() ) ;
|
||||||
wxASSERT_MSG( count == 3 || count == 2, wxT("Reference Count of native tool was illegal after insertion") );
|
if ( count != 3 && count != 2 )
|
||||||
|
{
|
||||||
|
wxFAIL_MSG("Reference count of native tool was illegal before removal");
|
||||||
|
}
|
||||||
wxASSERT( IsValidControlHandle(tool->GetControl()->GetPeer()->GetControlRef() )) ;
|
wxASSERT( IsValidControlHandle(tool->GetControl()->GetPeer()->GetControlRef() )) ;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -61,7 +61,7 @@
|
|||||||
#define kWindowUnifiedTitleAndToolbarAttribute (1 << 7)
|
#define kWindowUnifiedTitleAndToolbarAttribute (1 << 7)
|
||||||
|
|
||||||
// trace mask for activation tracing messages
|
// trace mask for activation tracing messages
|
||||||
static const wxChar *TRACE_ACTIVATE = _T("activation");
|
#define TRACE_ACTIVATE "activation"
|
||||||
|
|
||||||
// ----------------------------------------------------------------------------
|
// ----------------------------------------------------------------------------
|
||||||
// globals
|
// globals
|
||||||
|
@@ -314,13 +314,12 @@ wxWindow* wxFindWindowAtPoint(const wxPoint& pt)
|
|||||||
|
|
||||||
wxString wxGetOsDescription()
|
wxString wxGetOsDescription()
|
||||||
{
|
{
|
||||||
char data[128];
|
|
||||||
struct utsname name;
|
struct utsname name;
|
||||||
uname(&name);
|
uname(&name);
|
||||||
return wxString::Format(_T("Mac OS X (%s %s %s)"),
|
return wxString::Format(_T("Mac OS X (%s %s %s)"),
|
||||||
wxString::FromAscii(name.sysname).c_str(),
|
wxString::FromAscii(name.sysname).c_str(),
|
||||||
wxString::FromAscii(name.release).c_str(),
|
wxString::FromAscii(name.release).c_str(),
|
||||||
wxString::FromAscii(name.machine).c_str());
|
wxString::FromAscii(name.machine).c_str());
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifndef __DARWIN__
|
#ifndef __DARWIN__
|
||||||
@@ -1561,7 +1560,7 @@ unsigned int wxMacDataItemBrowserControl::GetLineFromItem(const wxMacDataItem* i
|
|||||||
{
|
{
|
||||||
DataBrowserTableViewRowIndex row;
|
DataBrowserTableViewRowIndex row;
|
||||||
OSStatus err = GetItemRow( (DataBrowserItemID) item , &row);
|
OSStatus err = GetItemRow( (DataBrowserItemID) item , &row);
|
||||||
wxASSERT( err == noErr);
|
wxCHECK( err == noErr, (unsigned)-1 );
|
||||||
return row;
|
return row;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1569,7 +1568,7 @@ wxMacDataItem* wxMacDataItemBrowserControl::GetItemFromLine(unsigned int n) con
|
|||||||
{
|
{
|
||||||
DataBrowserItemID id;
|
DataBrowserItemID id;
|
||||||
OSStatus err = GetItemID( (DataBrowserTableViewRowIndex) n , &id);
|
OSStatus err = GetItemID( (DataBrowserTableViewRowIndex) n , &id);
|
||||||
wxASSERT( err == noErr);
|
wxCHECK( err == noErr, NULL );
|
||||||
return (wxMacDataItem*) id;
|
return (wxMacDataItem*) id;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -232,7 +232,11 @@ static pascal OSStatus wxMacWindowControlEventHandler( EventHandlerCallRef handl
|
|||||||
bool created = false ;
|
bool created = false ;
|
||||||
CGContextRef cgContext = NULL ;
|
CGContextRef cgContext = NULL ;
|
||||||
OSStatus err = cEvent.GetParameter<CGContextRef>(kEventParamCGContextRef, &cgContext) ;
|
OSStatus err = cEvent.GetParameter<CGContextRef>(kEventParamCGContextRef, &cgContext) ;
|
||||||
wxASSERT_MSG( err == noErr , wxT("Unable to retrieve CGContextRef") ) ;
|
if ( err != noErr )
|
||||||
|
{
|
||||||
|
wxFAIL_MSG("Unable to retrieve CGContextRef");
|
||||||
|
}
|
||||||
|
|
||||||
thisWindow->MacSetCGContextRef( cgContext ) ;
|
thisWindow->MacSetCGContextRef( cgContext ) ;
|
||||||
|
|
||||||
{
|
{
|
||||||
@@ -3216,13 +3220,13 @@ bool wxWindowMac::IsShownOnScreen() const
|
|||||||
// CS : put a breakpoint here to investigate differences
|
// CS : put a breakpoint here to investigate differences
|
||||||
// between native an wx visibilities
|
// between native an wx visibilities
|
||||||
// the only place where I've encountered them until now
|
// the only place where I've encountered them until now
|
||||||
// are the hiding/showing sequences where the vis-changed event is
|
// are the hiding/showing sequences where the vis-changed event is
|
||||||
// first sent to the innermost control, while wx does things
|
// first sent to the innermost control, while wx does things
|
||||||
// from the outmost control
|
// from the outmost control
|
||||||
wxVis = wxWindowBase::IsShownOnScreen();
|
wxVis = wxWindowBase::IsShownOnScreen();
|
||||||
return wxVis;
|
return wxVis;
|
||||||
}
|
}
|
||||||
|
|
||||||
return m_peer->IsVisible();
|
return m_peer->IsVisible();
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
Reference in New Issue
Block a user