]>
git.saurik.com Git - wxWidgets.git/blob - src/mac/carbon/dcclient.cpp
1 /////////////////////////////////////////////////////////////////////////////
3 // Purpose: wxClientDC class
8 // Copyright: (c) AUTHOR
9 // Licence: wxWindows licence
10 /////////////////////////////////////////////////////////////////////////////
13 #pragma implementation "dcclient.h"
16 #include "wx/dcclient.h"
17 #include "wx/dcmemory.h"
18 #include "wx/region.h"
19 #include "wx/window.h"
22 //-----------------------------------------------------------------------------
24 //-----------------------------------------------------------------------------
26 #define RAD2DEG 57.2957795131
28 //-----------------------------------------------------------------------------
30 //-----------------------------------------------------------------------------
32 #if !USE_SHARED_LIBRARY
33 IMPLEMENT_DYNAMIC_CLASS(wxWindowDC
, wxDC
)
34 IMPLEMENT_DYNAMIC_CLASS(wxClientDC
, wxWindowDC
)
35 IMPLEMENT_DYNAMIC_CLASS(wxPaintDC
, wxWindowDC
)
42 #include <wx/mac/uma.h>
44 wxWindowDC::wxWindowDC()
48 wxWindowDC::wxWindowDC(wxWindow
*the_canvas
)
51 wxWindow
* rootwindow
;
53 // this time it is really the full window
55 the_canvas
->MacGetPortParams(&m_macLocalOrigin
, &m_macClipRect
, &windowref
, &rootwindow
);
56 m_macPort
= UMAGetWindowPort( windowref
) ;
58 wxSize size
= the_canvas
->GetSize() ;
64 SetBackground(wxBrush(the_canvas
->GetBackgroundColour(), wxSOLID
));
67 wxWindowDC::~wxWindowDC()
75 wxClientDC::wxClientDC()
79 wxClientDC::wxClientDC(wxWindow
*window
)
82 wxWindow
* rootwindow
;
84 window
->MacGetPortClientParams(&m_macLocalOrigin
, &m_macClipRect
, &windowref
, &rootwindow
);
85 m_macPort
= UMAGetWindowPort( windowref
) ;
88 wxSize size
= window
->GetSize() ;
92 SetBackground(wxBrush(window
->GetBackgroundColour(), wxSOLID
));
93 SetFont( window
->GetFont() ) ;
96 wxClientDC::~wxClientDC()
104 wxPaintDC::wxPaintDC()
108 wxPaintDC::wxPaintDC(wxWindow
*window
)
110 WindowRef windowref
;
111 wxWindow
* rootwindow
;
113 window
->MacGetPortClientParams(&m_macLocalOrigin
, &m_macClipRect
, &windowref
, &rootwindow
);
115 m_macPort
= UMAGetWindowPort( windowref
) ;
118 wxCoord x
, y
,w
, h
;
119 window
->GetUpdateRegion().GetBox( x
, y
, w
, h
) ;
121 wxSize size
= window
->GetSize() ;
124 SetClippingRegion( x
, y
, w
, h
) ;
125 SetBackground(wxBrush(window
->GetBackgroundColour(), wxSOLID
));
126 SetFont(window
->GetFont() ) ;
129 wxPaintDC::~wxPaintDC()