X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/3cd0b8c5b5a320bba065c4da306be3687d144157..635f01472ede31a6be433560ebd62eab3953dfe7:/src/x11/dcscreen.cpp diff --git a/src/x11/dcscreen.cpp b/src/x11/dcscreen.cpp index 0efabc519c..a1999ffcec 100644 --- a/src/x11/dcscreen.cpp +++ b/src/x11/dcscreen.cpp @@ -9,7 +9,7 @@ // Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// -#ifdef __GNUG__ +#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA) #pragma implementation "dcscreen.h" #endif @@ -17,6 +17,8 @@ #include "wx/frame.h" #include "wx/dcscreen.h" #include "wx/utils.h" +#include "wx/app.h" +#include "wx/fontutil.h" #include "wx/x11/private.h" @@ -47,6 +49,11 @@ wxScreenDC::wxScreenDC() m_isScreenDC = TRUE; +#if wxUSE_UNICODE + m_context = wxTheApp->GetPangoContext(); + m_fontdesc = wxNORMAL_FONT->GetNativeFontInfo()->description; +#endif + SetUpDC(); XSetSubwindowMode( (Display*) m_display, (GC) m_penGC, IncludeInferiors ); @@ -86,24 +93,23 @@ bool wxScreenDC::StartDrawingOnTop( wxWindow *window ) return StartDrawingOnTop( &rect ); } -bool wxScreenDC::StartDrawingOnTop( wxRect *rect ) +bool wxScreenDC::StartDrawingOnTop( wxRect *rectIn ) { - int x = 0; - int y = 0; + // VZ: should we do the same thing that wxMotif wxScreenDC does here? #if 0 - int width = gdk_screen_width(); - int height = gdk_screen_height(); -#else - int width = 1024; - int height = 768; -#endif - if (rect) + wxRect rect; + if ( rectIn ) + { + rect = *rectIn; + } + else { - x = rect->x; - y = rect->y; - width = rect->width; - height = rect->height; + rect.x = + rect.y = 0; + + DoGetSize(&rect.width, &rect.height); } +#endif // 0 return TRUE; }