]> git.saurik.com Git - wxWidgets.git/blob - include/wx/msw/printwin.h
Use wmain() if supported by the compiler/CRT instead of main().
[wxWidgets.git] / include / wx / msw / printwin.h
1 /////////////////////////////////////////////////////////////////////////////
2 // Name: wx/msw/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 #include "wx/prntbase.h"
16
17 // ---------------------------------------------------------------------------
18 // Represents the printer: manages printing a wxPrintout object
19 // ---------------------------------------------------------------------------
20
21 class WXDLLIMPEXP_CORE wxWindowsPrinter : public wxPrinterBase
22 {
23 DECLARE_DYNAMIC_CLASS(wxWindowsPrinter)
24
25 public:
26 wxWindowsPrinter(wxPrintDialogData *data = NULL);
27
28 virtual bool Print(wxWindow *parent,
29 wxPrintout *printout,
30 bool prompt = true);
31
32 virtual wxDC *PrintDialog(wxWindow *parent);
33 virtual bool Setup(wxWindow *parent);
34
35 private:
36 wxDECLARE_NO_COPY_CLASS(wxWindowsPrinter);
37 };
38
39 // ---------------------------------------------------------------------------
40 // wxPrintPreview: programmer creates an object of this class to preview a
41 // wxPrintout.
42 // ---------------------------------------------------------------------------
43
44 class WXDLLIMPEXP_CORE wxWindowsPrintPreview : public wxPrintPreviewBase
45 {
46 public:
47 wxWindowsPrintPreview(wxPrintout *printout,
48 wxPrintout *printoutForPrinting = NULL,
49 wxPrintDialogData *data = NULL);
50 wxWindowsPrintPreview(wxPrintout *printout,
51 wxPrintout *printoutForPrinting,
52 wxPrintData *data);
53 virtual ~wxWindowsPrintPreview();
54
55 virtual bool Print(bool interactive);
56 virtual void DetermineScaling();
57
58 protected:
59 #if wxUSE_ENH_METAFILE
60 virtual bool RenderPageIntoBitmap(wxBitmap& bmp, int pageNum);
61 #endif
62
63 DECLARE_DYNAMIC_CLASS_NO_COPY(wxWindowsPrintPreview)
64 };
65
66 #endif
67 // _WX_PRINTWIN_H_