Store a pointer to the wxWindow in the wxWindowDC class

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21795 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
David Elliott
2003-07-09 14:56:56 +00:00
parent 55c5be5e47
commit fcc9de5478
2 changed files with 6 additions and 0 deletions

View File

@@ -26,6 +26,8 @@ public:
// Create a DC corresponding to a window // Create a DC corresponding to a window
wxWindowDC(wxWindow *win); wxWindowDC(wxWindow *win);
~wxWindowDC(void); ~wxWindowDC(void);
protected:
wxWindow *m_window;
}; };
class wxClientDC: public wxWindowDC class wxClientDC: public wxWindowDC

View File

@@ -21,10 +21,12 @@
IMPLEMENT_DYNAMIC_CLASS(wxWindowDC, wxDC) IMPLEMENT_DYNAMIC_CLASS(wxWindowDC, wxDC)
wxWindowDC::wxWindowDC(void) wxWindowDC::wxWindowDC(void)
: m_window(NULL)
{ {
}; };
wxWindowDC::wxWindowDC( wxWindow *window ) wxWindowDC::wxWindowDC( wxWindow *window )
: m_window(window)
{ {
wxFAIL_MSG("non-client window DC's are not supported"); wxFAIL_MSG("non-client window DC's are not supported");
}; };
@@ -43,6 +45,7 @@ wxClientDC::wxClientDC(void)
}; };
wxClientDC::wxClientDC( wxWindow *window ) wxClientDC::wxClientDC( wxWindow *window )
: wxWindowDC(window)
{ {
}; };
@@ -60,6 +63,7 @@ wxPaintDC::wxPaintDC(void)
}; };
wxPaintDC::wxPaintDC( wxWindow *window ) wxPaintDC::wxPaintDC( wxWindow *window )
: wxWindowDC(window)
{ {
wxASSERT_MSG([NSView focusView]==window->GetNSView(), "PaintDC's NSView does not have focus. Please use wxPaintDC only as the first DC created in a paint handler"); wxASSERT_MSG([NSView focusView]==window->GetNSView(), "PaintDC's NSView does not have focus. Please use wxPaintDC only as the first DC created in a paint handler");
// This transform flips the graphics since wxDC uses top-left origin // This transform flips the graphics since wxDC uses top-left origin