]> git.saurik.com Git - wxWidgets.git/blobdiff - src/osx/carbon/dcscreen.cpp
wrong override params
[wxWidgets.git] / src / osx / carbon / dcscreen.cpp
index 3f0d549ce3888f93a7086b5f118841175f8afa5c..5622d557a76672760f73106f9aaacd4e072d4e47 100644 (file)
@@ -16,7 +16,9 @@
 
 #include "wx/osx/private.h"
 #include "wx/graphics.h"
+#if wxOSX_USE_COCOA_OR_CARBON
 #include "wx/osx/private/glgrab.h"
+#endif
 
 IMPLEMENT_ABSTRACT_CLASS(wxScreenDCImpl, wxWindowDCImpl)
 
@@ -29,8 +31,8 @@ wxScreenDCImpl::wxScreenDCImpl( wxDC *owner ) :
    wxWindowDCImpl( owner )
 {
 #if wxOSX_USE_COCOA_OR_IPHONE
-    m_graphicContext = NULL;
-    m_ok = false ;
+    SetGraphicsContext( wxGraphicsContext::Create() );
+    m_ok = true ;
 #else
     CGRect cgbounds ;
     cgbounds = CGDisplayBounds(CGMainDisplayID());
@@ -59,6 +61,8 @@ wxScreenDCImpl::~wxScreenDCImpl()
 #endif
 }
 
+// TODO Switch to CGWindowListCreateImage for 10.5 and above
+
 wxBitmap wxScreenDCImpl::DoGetAsBitmap(const wxRect *subrect) const
 {
     CGRect srcRect = CGRectMake(0, 0, m_width, m_height);
@@ -69,9 +73,9 @@ wxBitmap wxScreenDCImpl::DoGetAsBitmap(const wxRect *subrect) const
         srcRect.size.width = subrect->GetWidth();
         srcRect.size.height = subrect->GetHeight();
     }
-    
     wxBitmap bmp = wxBitmap(srcRect.size.width, srcRect.size.height, 32);
-    
+#if wxOSX_USE_IPHONE
+#else
     CGContextRef context = (CGContextRef)bmp.GetHBITMAP();
     
     CGContextSaveGState(context);
@@ -89,6 +93,6 @@ wxBitmap wxScreenDCImpl::DoGetAsBitmap(const wxRect *subrect) const
     CGContextDrawImage(context, srcRect, image);
     
     CGContextRestoreGState(context);
-
+#endif
     return bmp;
 }