]>
git.saurik.com Git - wxWidgets.git/blob - src/gtk/dcscreen.cpp
   1 ///////////////////////////////////////////////////////////////////////////// 
   4 // Author:      Robert Roebling 
   6 // Copyright:   (c) 1998 Robert Roebling 
   7 // Licence:     wxWindows licence 
   8 ///////////////////////////////////////////////////////////////////////////// 
  10 // For compilers that support precompilation, includes "wx.h". 
  11 #include "wx/wxprec.h" 
  13 #include "wx/dcscreen.h" 
  14 #include "wx/window.h" 
  20 //----------------------------------------------------------------------------- 
  21 // global data initialization 
  22 //----------------------------------------------------------------------------- 
  24 GdkWindow 
*wxScreenDC::sm_overlayWindow  
= (GdkWindow
*) NULL
; 
  25 int wxScreenDC::sm_overlayWindowX 
= 0; 
  26 int wxScreenDC::sm_overlayWindowY 
= 0; 
  28 //----------------------------------------------------------------------------- 
  30 //----------------------------------------------------------------------------- 
  32 IMPLEMENT_DYNAMIC_CLASS(wxScreenDC
,wxPaintDC
) 
  34 wxScreenDC::wxScreenDC() 
  37     m_cmap 
= gdk_colormap_get_system(); 
  38     m_window 
= GDK_ROOT_PARENT(); 
  40     m_context 
= gdk_pango_context_get(); 
  41     // Note: The Sun customised version of Pango shipping with Solaris 10 
  42     // crashes if the language is left NULL (see bug 1374114) 
  43     pango_context_set_language( m_context
, gtk_get_default_language() ); 
  44     m_layout 
= pango_layout_new( m_context 
); 
  45 //    m_fontdesc = pango_font_description_copy( widget->style->font_desc ); 
  51     gdk_gc_set_subwindow( m_penGC
, GDK_INCLUDE_INFERIORS 
); 
  52     gdk_gc_set_subwindow( m_brushGC
, GDK_INCLUDE_INFERIORS 
); 
  53     gdk_gc_set_subwindow( m_textGC
, GDK_INCLUDE_INFERIORS 
); 
  54     gdk_gc_set_subwindow( m_bgGC
, GDK_INCLUDE_INFERIORS 
); 
  57 wxScreenDC::~wxScreenDC() 
  59     gdk_gc_set_subwindow( m_penGC
, GDK_CLIP_BY_CHILDREN 
); 
  60     gdk_gc_set_subwindow( m_brushGC
, GDK_CLIP_BY_CHILDREN 
); 
  61     gdk_gc_set_subwindow( m_textGC
, GDK_CLIP_BY_CHILDREN 
); 
  62     gdk_gc_set_subwindow( m_bgGC
, GDK_CLIP_BY_CHILDREN 
); 
  67 bool wxScreenDC::StartDrawingOnTop( wxWindow 
* ) 
  72 bool wxScreenDC::StartDrawingOnTop( wxRect 
* ) 
  77 bool wxScreenDC::EndDrawingOnTop() 
  82 void wxScreenDC::DoGetSize(int *width
, int *height
) const 
  84     wxDisplaySize(width
, height
);