remove wxGraphicsContext dependency for transparent background support
[wxWidgets.git] / src / gtk / dc.cpp
1 /////////////////////////////////////////////////////////////////////////////
2 // Name: src/gtk/dc.cpp
3 // Purpose:
4 // Author: Robert Roebling
5 // RCS-ID: $Id$
6 // Copyright: (c) 1998 Robert Roebling
7 // Licence: wxWindows licence
8 /////////////////////////////////////////////////////////////////////////////
9
10 // For compilers that support precompilation, includes "wx.h".
11 #include "wx/wxprec.h"
12
13 #include "wx/gtk/dc.h"
14
15 //-----------------------------------------------------------------------------
16 // wxGTKDCImpl
17 //-----------------------------------------------------------------------------
18
19 IMPLEMENT_ABSTRACT_CLASS(wxGTKDCImpl, wxDCImpl)
20
21 wxGTKDCImpl::wxGTKDCImpl( wxDC *owner )
22 : wxDCImpl( owner )
23 {
24 m_ok = FALSE;
25
26 m_pen = *wxBLACK_PEN;
27 m_font = *wxNORMAL_FONT;
28 m_brush = *wxWHITE_BRUSH;
29 }
30
31 wxGTKDCImpl::~wxGTKDCImpl()
32 {
33 }
34
35 void wxGTKDCImpl::DoSetClippingRegion( wxCoord x, wxCoord y, wxCoord width, wxCoord height )
36 {
37 m_clipping = TRUE;
38 m_clipX1 = x;
39 m_clipY1 = y;
40 m_clipX2 = x + width;
41 m_clipY2 = y + height;
42 }
43
44 // ---------------------------------------------------------------------------
45 // get DC capabilities
46 // ---------------------------------------------------------------------------
47
48 void wxGTKDCImpl::DoGetSizeMM( int* width, int* height ) const
49 {
50 int w = 0;
51 int h = 0;
52 GetOwner()->GetSize( &w, &h );
53 if (width) *width = int( double(w) / (m_userScaleX*m_mm_to_pix_x) );
54 if (height) *height = int( double(h) / (m_userScaleY*m_mm_to_pix_y) );
55 }
56
57 // Resolution in pixels per logical inch
58 wxSize wxGTKDCImpl::GetPPI() const
59 {
60 // TODO (should probably be pure virtual)
61 return wxSize(0, 0);
62 }