]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/motif/dcscreen.h
Disconnect all GTK signals referencing a wx object which is being destructed
[wxWidgets.git] / include / wx / motif / dcscreen.h
index ebd022e76bb27eeee0b681733268f9ed610376ce..58fe2381c6efac7c1b60bb6b47d17875459292f8 100644 (file)
@@ -1,39 +1,42 @@
 /////////////////////////////////////////////////////////////////////////////
-// Name:        dcscreen.h
-// Purpose:     wxScreenDC class
+// Name:        wx/motif/dcscreen.h
+// Purpose:     wxScreenDCImpl class
 // Author:      Julian Smart
 // Modified by:
 // Created:     17/09/98
 // RCS-ID:      $Id$
 // Copyright:   (c) Julian Smart
-// Licence:    wxWindows licence
+// Licence:     wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
 
 #ifndef _WX_DCSCREEN_H_
 #define _WX_DCSCREEN_H_
 
-#ifdef __GNUG__
-#pragma interface "dcscreen.h"
-#endif
+#include "wx/motif/dcclient.h"
 
-#include "wx/dcclient.h"
-
-class WXDLLEXPORT wxScreenDC: public wxPaintDC
+class WXDLLIMPEXP_CORE wxScreenDCImpl : public wxWindowDCImpl
 {
-  DECLARE_DYNAMIC_CLASS(wxScreenDC)
-
- public:
-  // Create a DC representing the whole screen
-  wxScreenDC();
-  ~wxScreenDC();
-
-  // Compatibility with X's requirements for
-  // drawing on top of all windows
-  static bool StartDrawingOnTop(wxWindow* WXUNUSED(window)) { return TRUE; }
-  static bool StartDrawingOnTop(wxRectangle* WXUNUSED(rect) = NULL) { return TRUE; }
-  static bool EndDrawingOnTop() { return TRUE; }
+public:
+    // Create a DC representing the whole screen
+    wxScreenDCImpl(wxScreenDC *owner);
+    virtual ~wxScreenDCImpl();
+
+    // Compatibility with X's requirements for
+    // drawing on top of all windows
+    static bool StartDrawingOnTop(wxWindow* window);
+    static bool StartDrawingOnTop(wxRect* rect = NULL);
+    static bool EndDrawingOnTop();
+
+private:
+    static WXWindow sm_overlayWindow;
+
+    // If we have started transparent drawing at a non-(0,0) point
+    // then we will have to adjust the device origin in the
+    // constructor.
+    static int sm_overlayWindowX;
+    static int sm_overlayWindowY;
+
+    DECLARE_DYNAMIC_CLASS(wxScreenDCImpl)
 };
 
-#endif
-    // _WX_DCSCREEN_H_
-
+#endif // _WX_DCSCREEN_H_