]> git.saurik.com Git - wxWidgets.git/blame - include/wx/os2/dcclient.h
wxMotif::wxFont supports encodings too (and shares 99% of font code with wxGTK)
[wxWidgets.git] / include / wx / os2 / dcclient.h
CommitLineData
0e320a79
DW
1/////////////////////////////////////////////////////////////////////////////
2// Name: dcclient.h
23e4b7d8
DW
3// Purpose: wxClientDC class
4// Author: Julian Smart
0e320a79 5// Modified by:
23e4b7d8 6// Created: 01/02/97
0e320a79 7// RCS-ID: $Id$
23e4b7d8
DW
8// Copyright: (c) Julian Smart and Markus Holzem
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#ifdef __GNUG__
23e4b7d8 20 #pragma interface "dcclient.h"
0e320a79
DW
21#endif
22
23#include "wx/dc.h"
23e4b7d8
DW
24#include "wx/dynarray.h"
25
26// ----------------------------------------------------------------------------
27// array types
28// ----------------------------------------------------------------------------
0e320a79 29
23e4b7d8
DW
30// this one if used by wxPaintDC only
31struct WXDLLEXPORT wxPaintDCInfo;
0e320a79 32
23e4b7d8 33WX_DECLARE_OBJARRAY(wxPaintDCInfo, wxArrayDCInfo);
0e320a79 34
23e4b7d8
DW
35// ----------------------------------------------------------------------------
36// DC classes
37// ----------------------------------------------------------------------------
0e320a79 38
23e4b7d8 39class WXDLLEXPORT wxWindowDC : public wxDC
0e320a79 40{
23e4b7d8 41 DECLARE_DYNAMIC_CLASS(wxWindowDC)
0e320a79 42
23e4b7d8
DW
43public:
44 wxWindowDC();
0e320a79 45
23e4b7d8
DW
46 // Create a DC corresponding to the whole window
47 wxWindowDC(wxWindow *win);
48
49 virtual ~wxWindowDC();
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_