]> git.saurik.com Git - wxWidgets.git/blobdiff - src/os2/dcscreen.cpp
wxUniversal fixes:
[wxWidgets.git] / src / os2 / dcscreen.cpp
index 5eaa7dc20011270232e72d1121bab28031f11cea..36f65d1de7eb7c0e0189238e004d0486b9dc3361 100644 (file)
@@ -9,6 +9,10 @@
 // Licence:    wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
 
+#ifdef __GNUG__
+#pragma implementation "dcscreen.h"
+#endif
+
 // For compilers that support precompilation, includes "wx.h".
 #include "wx/wxprec.h"
 
@@ -31,11 +35,22 @@ IMPLEMENT_DYNAMIC_CLASS(wxScreenDC, wxWindowDC)
 // Create a DC representing the whole screen
 wxScreenDC::wxScreenDC()
 {
-    // TODO
-}
-
-wxScreenDC::~wxScreenDC()
+    m_hDC = ::WinOpenWindowDC(HWND_DESKTOP);
+    m_hPS = ::WinGetScreenPS(HWND_DESKTOP);
+    ::GpiSetBackMix(m_hPS, BM_LEAVEALONE);
+} // end of wxScreenDC::wxScreenDC()
+
+void wxScreenDC::DoGetSize(
+  int*                              pnWidth
+, int*                              pnHeight
+) const
 {
-    // TODO
-}
+    //
+    // Skip wxWindowDC version because it doesn't work without a valid m_canvas
+    // (which we don't have)
+    //
+    wxDC::DoGetSize( pnWidth
+                    ,pnHeight
+                   );
+} // end of wxScreenDC::DoGetSize