From 3b2527c7397c09c3e9564db3265ff52448034291 Mon Sep 17 00:00:00 2001 From: Stefan Csomor Date: Wed, 30 Sep 2009 15:20:30 +0000 Subject: [PATCH] support backgroundcolor on osx_cocoa git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62208 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- src/osx/cocoa/window.mm | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/src/osx/cocoa/window.mm b/src/osx/cocoa/window.mm index 3fa27c5d24..9ce10cc02c 100644 --- a/src/osx/cocoa/window.mm +++ b/src/osx/cocoa/window.mm @@ -114,6 +114,8 @@ NSRect wxOSXGetFrameForControl( wxWindowMac* window , const wxPoint& pos , const - (void)setTarget:(id)anObject; - (void)setAction:(SEL)aSelector; - (void)setDoubleAction:(SEL)aSelector; +- (void)setBackgroundColor:(NSColor*)aColor; +- (void)setImagePosition:(NSCellImagePosition)aPosition; @end long wxOSXTranslateCocoaKey( NSEvent* event ) @@ -1330,9 +1332,19 @@ void wxWidgetCocoaImpl::Embed( wxWidgetImpl *parent ) [container addSubview:m_osxView]; } -void wxWidgetCocoaImpl::SetBackgroundColour( const wxColour &WXUNUSED(col) ) +void wxWidgetCocoaImpl::SetBackgroundColour( const wxColour &col ) { - // m_osxView.backgroundColor = [[UIColor alloc] initWithCGColor:col.GetCGColor()]; + NSView* targetView = m_osxView; + if ( [m_osxView isKindOfClass:[NSScrollView class] ] ) + targetView = [(NSScrollView*) m_osxView documentView]; + + if ( [targetView respondsToSelector:@selector(setBackgroundColor:) ] ) + { + [targetView setBackgroundColor:[NSColor colorWithCalibratedRed:(CGFloat) (col.Red() / 255.0) + green:(CGFloat) (col.Green() / 255.0) + blue:(CGFloat) (col.Blue() / 255.0) + alpha:(CGFloat) (col.Alpha() / 255.0)]]; + } } void wxWidgetCocoaImpl::SetLabel( const wxString& title, wxFontEncoding encoding ) -- 2.45.2