X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/3fdfbc9ca1be0953cede4a2a9389e0c853a71b48..28991a88036fef20e00cd09f9085c8088d7d5ae6:/src/osx/iphone/nonownedwnd.mm diff --git a/src/osx/iphone/nonownedwnd.mm b/src/osx/iphone/nonownedwnd.mm index 2eed113035..1be798fb72 100644 --- a/src/osx/iphone/nonownedwnd.mm +++ b/src/osx/iphone/nonownedwnd.mm @@ -1,10 +1,10 @@ ///////////////////////////////////////////////////////////////////////////// -// Name: src/osx/cocoa/nonownedwnd.mm +// Name: src/osx/iphone/nonownedwnd.mm // Purpose: non owned window for iphone // Author: Stefan Csomor // Modified by: // Created: 2008-06-20 -// RCS-ID: $Id: nonownedwnd.mm 48805 2007-09-19 14:52:25Z SC $ +// RCS-ID: $Id$ // Copyright: (c) Stefan Csomor // Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// @@ -55,7 +55,7 @@ wxPoint wxFromNSPoint( UIView* parent, const CGPoint& p ) @end -@interface wxUIContentView : wxUIView +@interface wxUIContentView : UIView { wxUIContentViewController* _controller; } @@ -273,6 +273,11 @@ void wxNonOwnedWindowIPhoneImpl::Iconize( bool iconize ) void wxNonOwnedWindowIPhoneImpl::Maximize(bool maximize) { + if ( maximize ) + { + CGRect r = [[UIScreen mainScreen] bounds]; + [m_macWindow setFrame:r]; + } } bool wxNonOwnedWindowIPhoneImpl::IsFullScreen() const @@ -347,7 +352,15 @@ wxWidgetImpl* wxWidgetImpl::CreateContentView( wxNonOwnedWindow* now ) wxWidgetIPhoneImpl* impl = new wxWidgetIPhoneImpl( now, contentview, true ); impl->InstallEventHandler(); - [toplevelwindow addSubview:contentview]; + + if ([toplevelwindow respondsToSelector:@selector(setRootViewController:)]) + { + toplevelwindow.rootViewController = controller; + } + else + { + [toplevelwindow addSubview:contentview]; + } return impl; } @@ -367,6 +380,16 @@ wxWidgetImpl* wxWidgetImpl::CreateContentView( wxNonOwnedWindow* now ) return _controller; } ++ (void)initialize +{ + static BOOL initialized = NO; + if (!initialized) + { + initialized = YES; + wxOSXIPhoneClassAddWXMethods( self ); + } +} + @end @implementation wxUIContentViewController @@ -381,6 +404,21 @@ wxWidgetImpl* wxWidgetImpl::CreateContentView( wxNonOwnedWindow* now ) return YES; } +// iOS 6 support, right now unconditionally supporting all orientations, TODO use a orientation mask + +-(BOOL)shouldAutorotate +{ + return YES; +} + + - (NSUInteger)supportedInterfaceOrientations +{ + return UIInterfaceOrientationMaskAll; +} + + + + - (void)didRotateFromInterfaceOrientation:(UIInterfaceOrientation)fromInterfaceOrientation { wxWidgetIPhoneImpl* impl = (wxWidgetIPhoneImpl* ) wxWidgetImpl::FindFromWXWidget( [self view] ); @@ -439,6 +477,7 @@ wxWidgetImpl* wxWidgetImpl::CreateContentView( wxNonOwnedWindow* now ) footerView = frame->GetToolBar()->GetHandle(); } } + return footerView; } @end