]> git.saurik.com Git - wxWidgets.git/blob - include/wx/dfb/dcclient.h
7559eb1b56726e561eaa24e7aa7fadce756a520b
[wxWidgets.git] / include / wx / dfb / dcclient.h
1 /////////////////////////////////////////////////////////////////////////////
2 // Name: wx/dfb/dcclient.h
3 // Purpose: wxWindowDCImpl, wxClientDCImpl and wxPaintDCImpl
4 // Author: Vaclav Slavik
5 // Created: 2006-08-10
6 // RCS-ID: $Id$
7 // Copyright: (c) 2006 REA Elektronik GmbH
8 // Licence: wxWindows licence
9 /////////////////////////////////////////////////////////////////////////////
10
11 #ifndef _WX_DFB_DCCLIENT_H_
12 #define _WX_DFB_DCCLIENT_H_
13
14 #include "wx/dfb/dc.h"
15
16 class WXDLLIMPEXP_FWD_CORE wxWindow;
17
18 //-----------------------------------------------------------------------------
19 // wxWindowDCImpl
20 //-----------------------------------------------------------------------------
21
22 class WXDLLIMPEXP_CORE wxWindowDCImpl : public wxDFBDCImpl
23 {
24 public:
25 wxWindowDCImpl(wxDC *owner) : wxDFBDCImpl(owner), m_shouldFlip(false) { }
26 wxWindowDCImpl(wxDC *owner, wxWindow *win);
27 virtual ~wxWindowDCImpl();
28
29 protected:
30 // initializes the DC for painting on given window; if rect!=NULL, then
31 // for painting only on the given region of the window
32 void InitForWin(wxWindow *win, const wxRect *rect);
33
34 private:
35 wxRect m_winRect; // rectangle of the window being painted
36
37 bool m_shouldFlip; // flip the surface when done?
38
39 friend class wxOverlayImpl; // for m_shouldFlip;
40
41 DECLARE_DYNAMIC_CLASS(wxWindowDCImpl)
42 wxDECLARE_NO_COPY_CLASS(wxWindowDCImpl);
43 };
44
45 //-----------------------------------------------------------------------------
46 // wxClientDCImpl
47 //-----------------------------------------------------------------------------
48
49 class WXDLLIMPEXP_CORE wxClientDCImpl : public wxWindowDCImpl
50 {
51 public:
52 wxClientDCImpl(wxDC *owner) : wxWindowDCImpl(owner) { }
53 wxClientDCImpl(wxDC *owner, wxWindow *win);
54
55 DECLARE_DYNAMIC_CLASS(wxClientDCImpl)
56 wxDECLARE_NO_COPY_CLASS(wxClientDCImpl);
57 };
58
59
60 //-----------------------------------------------------------------------------
61 // wxPaintDCImpl
62 //-----------------------------------------------------------------------------
63
64 class WXDLLIMPEXP_CORE wxPaintDCImpl : public wxClientDCImpl
65 {
66 public:
67 wxPaintDCImpl(wxDC *owner) : wxClientDCImpl(owner) { }
68 wxPaintDCImpl(wxDC *owner, wxWindow *win) : wxClientDCImpl(owner, win) { }
69
70 DECLARE_DYNAMIC_CLASS(wxPaintDCImpl)
71 wxDECLARE_NO_COPY_CLASS(wxPaintDCImpl);
72 };
73
74 #endif // _WX_DFB_DCCLIENT_H_