]> git.saurik.com Git - wxWidgets.git/blame_incremental - include/wx/dfb/dcclient.h
no 68k macs more to support...
[wxWidgets.git] / include / wx / dfb / dcclient.h
... / ...
CommitLineData
1/////////////////////////////////////////////////////////////////////////////
2// Name: wx/dfb/dcclient.h
3// Purpose: wxWindowDC, wxClientDC and wxPaintDC
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/dc.h"
15
16class WXDLLIMPEXP_FWD_CORE wxWindow;
17
18//-----------------------------------------------------------------------------
19// wxWindowDC
20//-----------------------------------------------------------------------------
21
22class WXDLLIMPEXP_CORE wxWindowDC : public wxDC
23{
24public:
25 wxWindowDC() : m_shouldFlip(false) {}
26 wxWindowDC(wxWindow *win);
27 virtual ~wxWindowDC();
28
29 virtual wxWindow *GetWindow() const { return m_win; }
30
31protected:
32 // initializes the DC for painting on given window; if rect!=NULL, then
33 // for painting only on the given region of the window
34 void InitForWin(wxWindow *win, const wxRect *rect);
35
36private:
37 wxWindow *m_win;
38 wxRect m_winRect; // rectangle of the window being painted
39
40 bool m_shouldFlip; // flip the surface when done?
41
42 friend class wxOverlayImpl; // for m_shouldFlip;
43
44 DECLARE_DYNAMIC_CLASS(wxWindowDC)
45 DECLARE_NO_COPY_CLASS(wxWindowDC)
46};
47
48//-----------------------------------------------------------------------------
49// wxClientDC
50//-----------------------------------------------------------------------------
51
52class WXDLLIMPEXP_CORE wxClientDC : public wxWindowDC
53{
54public:
55 wxClientDC() {}
56 wxClientDC(wxWindow *win);
57
58 DECLARE_DYNAMIC_CLASS(wxClientDC)
59 DECLARE_NO_COPY_CLASS(wxClientDC)
60};
61
62
63//-----------------------------------------------------------------------------
64// wxPaintDC
65//-----------------------------------------------------------------------------
66
67class WXDLLIMPEXP_CORE wxPaintDC : public wxClientDC
68{
69public:
70 wxPaintDC() {}
71 wxPaintDC(wxWindow *win) : wxClientDC(win) {}
72
73 DECLARE_DYNAMIC_CLASS(wxPaintDC)
74 DECLARE_NO_COPY_CLASS(wxPaintDC)
75};
76
77#endif // _WX_DFB_DCCLIENT_H_