Many changes to the printing classes.
[wxWidgets.git] / include / wx / msw / printwin.h
1 /////////////////////////////////////////////////////////////////////////////
2 // Name: printwin.h
3 // Purpose: wxWindowsPrinter, wxWindowsPrintPreview classes
4 // Author: Julian Smart
5 // Modified by:
6 // Created: 01/02/97
7 // RCS-ID: $Id$
8 // Copyright: (c) Julian Smart
9 // Licence: wxWindows licence
10 /////////////////////////////////////////////////////////////////////////////
11
12 #ifndef _WX_PRINTWIN_H_
13 #define _WX_PRINTWIN_H_
14
15 #ifdef __GNUG__
16 #pragma interface "printwin.h"
17 #endif
18
19 #include "wx/prntbase.h"
20
21 /*
22 * Represents the printer: manages printing a wxPrintout object
23 */
24
25 class WXDLLEXPORT wxWindowsPrinter: public wxPrinterBase
26 {
27 DECLARE_DYNAMIC_CLASS(wxWindowsPrinter)
28
29 public:
30 wxWindowsPrinter(wxPrintDialogData *data = NULL);
31 ~wxWindowsPrinter(void);
32
33 virtual bool Print(wxWindow *parent, wxPrintout *printout, bool prompt = TRUE);
34 virtual wxDC* PrintDialog(wxWindow *parent);
35 virtual bool Setup(wxWindow *parent);
36
37 private:
38 WXFARPROC m_lpAbortProc;
39 };
40
41 /*
42 * wxPrintPreview
43 * Programmer creates an object of this class to preview a wxPrintout.
44 */
45
46 class WXDLLEXPORT wxWindowsPrintPreview: public wxPrintPreviewBase
47 {
48 DECLARE_CLASS(wxWindowsPrintPreview)
49
50 public:
51 wxWindowsPrintPreview(wxPrintout *printout, wxPrintout *printoutForPrinting = NULL, wxPrintDialogData *data = NULL);
52 ~wxWindowsPrintPreview(void);
53
54 virtual bool Print(bool interactive);
55 virtual void DetermineScaling(void);
56 };
57
58 #endif
59 // _WX_PRINTWIN_H_