#include "wx/dcclient.h"
#include "wx/dcmemory.h"
#include "wx/region.h"
+#include "wx/window.h"
#include <math.h>
//-----------------------------------------------------------------------------
* wxWindowDC
*/
-#include <wx/mac/uma.h>
+#include "wx/mac/uma.h"
wxWindowDC::wxWindowDC()
{
wxWindowDC::wxWindowDC(wxWindow *the_canvas)
{
WindowRef windowref ;
- wxWindow* rootwindow ;
+ wxWindowMac* rootwindow ;
// this time it is really the full window
-
- the_canvas->MacGetPortParams(&m_macLocalOrigin, &m_macClipRect , &windowref , &rootwindow );
+ Rect clipRect ;
+ the_canvas->MacGetPortParams(&m_macLocalOrigin, &clipRect , &windowref , &rootwindow );
+ SetRectRgn( m_macBoundaryClipRgn , clipRect.left , clipRect.top , clipRect.right , clipRect.bottom ) ;
+ CopyRgn( m_macBoundaryClipRgn , m_macCurrentClipRgn ) ;
m_macPort = UMAGetWindowPort( windowref ) ;
m_minY = m_minX = 0;
wxSize size = the_canvas->GetSize() ;
m_maxX = size.x ;
m_maxY = size.y ;
- MacSetupPort() ;
m_ok = TRUE ;
+ SetBackground(wxBrush(the_canvas->GetBackgroundColour(), wxSOLID));
}
wxWindowDC::~wxWindowDC()
wxClientDC::wxClientDC(wxWindow *window)
{
WindowRef windowref ;
- wxWindow* rootwindow ;
+ wxWindowMac* rootwindow ;
- window->MacGetPortClientParams(&m_macLocalOrigin, &m_macClipRect , &windowref , &rootwindow );
+ Rect clipRect ;
+ window->MacGetPortClientParams(&m_macLocalOrigin, &clipRect , &windowref , &rootwindow );
+ SetRectRgn( m_macBoundaryClipRgn , clipRect.left , clipRect.top , clipRect.right , clipRect.bottom ) ;
+ CopyRgn( m_macBoundaryClipRgn , m_macCurrentClipRgn ) ;
m_macPort = UMAGetWindowPort( windowref ) ;
- MacSetupPort() ;
m_minY = m_minX = 0;
wxSize size = window->GetSize() ;
m_maxX = size.x ;
wxPaintDC::wxPaintDC(wxWindow *window)
{
WindowRef windowref ;
- wxWindow* rootwindow ;
+ wxWindowMac* rootwindow ;
- window->MacGetPortClientParams(&m_macLocalOrigin, &m_macClipRect , &windowref , &rootwindow );
-
+ Rect clipRect ;
+ window->MacGetPortClientParams(&m_macLocalOrigin, &clipRect , &windowref , &rootwindow );
+ CopyRgn( window->GetUpdateRegion().GetWXHRGN() , m_macBoundaryClipRgn ) ;
+ CopyRgn( m_macBoundaryClipRgn , m_macCurrentClipRgn ) ;
m_macPort = UMAGetWindowPort( windowref ) ;
- MacSetupPort() ;
m_ok = TRUE ;
- long x , y ,w , h ;
+ /*
+ wxCoord x , y ,w , h ;
window->GetUpdateRegion().GetBox( x , y , w , h ) ;
m_minY = m_minX = 0;
wxSize size = window->GetSize() ;
m_maxX = size.x ;
m_maxY = size.y ;
SetClippingRegion( x , y , w , h ) ;
+ */
SetBackground(wxBrush(window->GetBackgroundColour(), wxSOLID));
SetFont(window->GetFont() ) ;
}