Added wxUSE_DC_CACHEING and associated code to wxMSW
[wxWidgets.git] / include / wx / os2 / dcprint.h
1 /////////////////////////////////////////////////////////////////////////////
2 // Name: dcprint.h
3 // Purpose: wxPrinterDC class
4 // Author: David Webster
5 // Modified by:
6 // Created: 09/12/99
7 // RCS-ID: $Id$
8 // Copyright: (c) David Webster
9 // Licence: wxWindows licence
10 /////////////////////////////////////////////////////////////////////////////
11
12 #ifndef _WX_DCPRINT_H_
13 #define _WX_DCPRINT_H_
14
15 #if wxUSE_PRINTING_ARCHITECTURE
16
17 #include "wx/dc.h"
18 #include "wx/cmndata.h"
19
20 class WXDLLEXPORT wxPrinterDC: public wxDC
21 {
22 public:
23 // Create a printer DC [obsolete]
24 wxPrinterDC( const wxString& rsDriver
25 ,const wxString& rsDevice
26 ,const wxString& rsOutput
27 ,bool bInteractive = TRUE
28 ,int nOrientation = wxPORTRAIT
29 );
30
31 // Create from print data
32 wxPrinterDC(const wxPrintData& rData);
33 wxPrinterDC(WXHDC hTheDC);
34
35 bool StartDoc(const wxString& rsMessage);
36 void EndDoc(void);
37 void StartPage(void);
38 void EndPage(void);
39
40 protected:
41 virtual void DoDrawBitmap( const wxBitmap& rBmp
42 ,wxCoord vX
43 ,wxCoord vY
44 ,bool bUseMask = FALSE
45 );
46 virtual bool DoBlit( wxCoord vXdest
47 ,wxCoord vYdest
48 ,wxCoord vWidth
49 ,wxCoord vHeight
50 ,wxDC* pSource
51 ,wxCoord vXsrc
52 ,wxCoord vYsrc
53 ,int nRop = wxCOPY
54 ,bool bUseMask = FALSE
55 ,wxCoord xsrcMask = -1
56 ,wxCoord ysrcMask = -1
57 );
58
59 // init the dc
60 void Init(void);
61
62 wxPrintData m_printData;
63 private:
64 DECLARE_CLASS(wxPrinterDC)
65 }; // end of CLASS wxPrinterDC
66
67 // Gets an HDC for the specified printer configuration
68 WXHDC WXDLLEXPORT wxGetPrinterDC(const wxPrintData& rData);
69
70 #endif // wxUSE_PRINTING_ARCHITECTURE
71
72 #endif
73 // _WX_DCPRINT_H_
74