// Author: Stefan Csomor
// Modified by:
// Created: 2008-06-20
-// RCS-ID: $Id: window.mm 48805 2007-09-19 14:52:25Z SC $
+// RCS-ID: $Id$
// Copyright: (c) Stefan Csomor
// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
IMPLEMENT_DYNAMIC_CLASS( wxWidgetIPhoneImpl , wxWidgetImpl )
-wxWidgetIPhoneImpl::wxWidgetIPhoneImpl( wxWindowMac* peer , WXWidget w, bool isRootControl ) :
- wxWidgetImpl( peer, isRootControl ), m_osxView(w)
+wxWidgetIPhoneImpl::wxWidgetIPhoneImpl( wxWindowMac* peer , WXWidget w, bool isRootControl, bool isUserPane ) :
+ wxWidgetImpl( peer, isRootControl, isUserPane ), m_osxView(w)
{
}
[m_osxView setFrame:r];
}
+
+
void wxWidgetIPhoneImpl::GetPosition( int &x, int &y ) const
{
CGRect r = [m_osxView frame];
bool wxWidgetIPhoneImpl::SetBackgroundStyle(wxBackgroundStyle style)
{
- [m_osxView setOpaque: (style == wxBG_STYLE_PAINT) ];
+ if ( style == wxBG_STYLE_PAINT )
+ [m_osxView setOpaque: YES ];
+ else
+ {
+ [m_osxView setOpaque: NO ];
+ m_osxView.backgroundColor = [UIColor clearColor];
+ }
+ return true;
}
void wxWidgetIPhoneImpl::SetLabel(const wxString& title, wxFontEncoding encoding)
{
}
+float wxWidgetIPhoneImpl::GetContentScaleFactor() const
+{
+ if ( [m_osxView respondsToSelector:@selector(contentScaleFactor) ])
+ return [m_osxView contentScaleFactor];
+ else
+ return 1.0;
+}
+
void wxWidgetIPhoneImpl::SetFont( const wxFont & font , const wxColour& foreground , long windowStyle, bool ignoreBlack )
{
}
CGContextRef context = (CGContextRef) UIGraphicsGetCurrentContext();
CGContextSaveGState( context );
// draw background
-
+/*
CGContextSetFillColorWithColor( context, GetWXPeer()->GetBackgroundColour().GetCGColor());
CGContextFillRect(context, *rect );
-
+*/
GetWXPeer()->MacSetCGContextRef( context );
GetWXPeer()->GetUpdateRegion() =
sv.clipsToBounds = YES;
sv.contentMode = UIViewContentModeRedraw;
sv.clearsContextBeforeDrawing = NO;
- wxWidgetIPhoneImpl* c = new wxWidgetIPhoneImpl( wxpeer, v );
+ wxWidgetIPhoneImpl* c = new wxWidgetIPhoneImpl( wxpeer, v, false, true );
return c;
}