]> git.saurik.com Git - wxWidgets.git/blame - include/wx/os2/dcclient.h
fixed previous commit (no changes)
[wxWidgets.git] / include / wx / os2 / dcclient.h
CommitLineData
0e320a79
DW
1/////////////////////////////////////////////////////////////////////////////
2// Name: dcclient.h
23e4b7d8 3// Purpose: wxClientDC class
f0a56ab0 4// Author: David Webster
0e320a79 5// Modified by:
f0a56ab0 6// Created: 09/12/99
0e320a79 7// RCS-ID: $Id$
f0a56ab0 8// Copyright: (c) David Webster
23e4b7d8 9// Licence: wxWindows license
0e320a79
DW
10/////////////////////////////////////////////////////////////////////////////
11
12#ifndef _WX_DCCLIENT_H_
13#define _WX_DCCLIENT_H_
14
23e4b7d8
DW
15// ----------------------------------------------------------------------------
16// headers
17// ----------------------------------------------------------------------------
18
0e320a79 19#include "wx/dc.h"
23e4b7d8
DW
20#include "wx/dynarray.h"
21
22// ----------------------------------------------------------------------------
23// array types
24// ----------------------------------------------------------------------------
0e320a79 25
23e4b7d8
DW
26// this one if used by wxPaintDC only
27struct WXDLLEXPORT wxPaintDCInfo;
0e320a79 28
23e4b7d8 29WX_DECLARE_OBJARRAY(wxPaintDCInfo, wxArrayDCInfo);
0e320a79 30
23e4b7d8
DW
31// ----------------------------------------------------------------------------
32// DC classes
33// ----------------------------------------------------------------------------
0e320a79 34
23e4b7d8 35class WXDLLEXPORT wxWindowDC : public wxDC
0e320a79 36{
23e4b7d8 37 DECLARE_DYNAMIC_CLASS(wxWindowDC)
0e320a79 38
23e4b7d8
DW
39public:
40 wxWindowDC();
0e320a79 41
23e4b7d8
DW
42 // Create a DC corresponding to the whole window
43 wxWindowDC(wxWindow *win);
44
45 virtual ~wxWindowDC();
ce44c50e 46
ce44c50e
DW
47private:
48 HAB m_hab;
49 SIZEL m_PageSize;
23e4b7d8
DW
50};
51
52class WXDLLEXPORT wxClientDC : public wxWindowDC
0e320a79 53{
23e4b7d8 54 DECLARE_DYNAMIC_CLASS(wxClientDC)
0e320a79 55
23e4b7d8
DW
56public:
57 wxClientDC();
0e320a79 58
23e4b7d8
DW
59 // Create a DC corresponding to the client area of the window
60 wxClientDC(wxWindow *win);
0e320a79 61
23e4b7d8 62 virtual ~wxClientDC();
0e320a79
DW
63};
64
23e4b7d8 65class WXDLLEXPORT wxPaintDC : public wxWindowDC
0e320a79 66{
23e4b7d8
DW
67 DECLARE_DYNAMIC_CLASS(wxPaintDC)
68
69public:
70 wxPaintDC();
71
72 // Create a DC corresponding for painting the window in OnPaint()
73 wxPaintDC(wxWindow *win);
0e320a79 74
23e4b7d8 75 virtual ~wxPaintDC();
0e320a79 76
23e4b7d8
DW
77protected:
78 static wxArrayDCInfo ms_cache;
0e320a79 79
23e4b7d8
DW
80 // find the entry for this DC in the cache (keyed by the window)
81 wxPaintDCInfo *FindInCache(size_t *index = NULL) const;
0e320a79
DW
82};
83
84#endif
85 // _WX_DCCLIENT_H_