X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/fb46a9a6c6f291806a5fecbb848930c344e17e11..0e878cfcc6486c7903ae89b316bc71700320199d:/src/os2/dcscreen.cpp?ds=sidebyside

diff --git a/src/os2/dcscreen.cpp b/src/os2/dcscreen.cpp
index 58fc9b97cf..36f65d1de7 100644
--- a/src/os2/dcscreen.cpp
+++ b/src/os2/dcscreen.cpp
@@ -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"
 
@@ -26,18 +30,27 @@
 
 #include "wx/dcscreen.h"
 
-#if !USE_SHARED_LIBRARY
 IMPLEMENT_DYNAMIC_CLASS(wxScreenDC, wxWindowDC)
-#endif
 
 // 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