Define __VISUALC__ for ICC under Windows again.
[wxWidgets.git] / include / wx / printdlg.h
1 /////////////////////////////////////////////////////////////////////////////
2 // Name: wx/printdlg.h
3 // Purpose: Base header and class for print dialogs
4 // Author: Julian Smart
5 // Modified by:
6 // Created:
7 // Copyright: (c) Julian Smart
8 // Licence: wxWindows Licence
9 /////////////////////////////////////////////////////////////////////////////
10
11 #ifndef _WX_PRINTDLG_H_BASE_
12 #define _WX_PRINTDLG_H_BASE_
13
14 #include "wx/defs.h"
15
16 #if wxUSE_PRINTING_ARCHITECTURE
17
18 #include "wx/event.h"
19 #include "wx/dialog.h"
20 #include "wx/intl.h"
21 #include "wx/cmndata.h"
22
23
24 // ---------------------------------------------------------------------------
25 // wxPrintDialogBase: interface for the dialog for printing
26 // ---------------------------------------------------------------------------
27
28 class WXDLLIMPEXP_CORE wxPrintDialogBase : public wxDialog
29 {
30 public:
31 wxPrintDialogBase() { }
32 wxPrintDialogBase(wxWindow *parent,
33 wxWindowID id = wxID_ANY,
34 const wxString &title = wxEmptyString,
35 const wxPoint &pos = wxDefaultPosition,
36 const wxSize &size = wxDefaultSize,
37 long style = wxDEFAULT_DIALOG_STYLE);
38
39 virtual wxPrintDialogData& GetPrintDialogData() = 0;
40 virtual wxPrintData& GetPrintData() = 0;
41 virtual wxDC *GetPrintDC() = 0;
42
43 private:
44 DECLARE_ABSTRACT_CLASS(wxPrintDialogBase)
45 wxDECLARE_NO_COPY_CLASS(wxPrintDialogBase);
46 };
47
48 // ---------------------------------------------------------------------------
49 // wxPrintDialog: the dialog for printing.
50 // ---------------------------------------------------------------------------
51
52 class WXDLLIMPEXP_CORE wxPrintDialog : public wxObject
53 {
54 public:
55 wxPrintDialog(wxWindow *parent, wxPrintDialogData* data = NULL);
56 wxPrintDialog(wxWindow *parent, wxPrintData* data);
57 virtual ~wxPrintDialog();
58
59 virtual int ShowModal();
60
61 virtual wxPrintDialogData& GetPrintDialogData();
62 virtual wxPrintData& GetPrintData();
63 virtual wxDC *GetPrintDC();
64
65 private:
66 wxPrintDialogBase *m_pimpl;
67
68 private:
69 DECLARE_DYNAMIC_CLASS(wxPrintDialog)
70 wxDECLARE_NO_COPY_CLASS(wxPrintDialog);
71 };
72
73 // ---------------------------------------------------------------------------
74 // wxPageSetupDialogBase: interface for the page setup dialog
75 // ---------------------------------------------------------------------------
76
77 class WXDLLIMPEXP_CORE wxPageSetupDialogBase: public wxDialog
78 {
79 public:
80 wxPageSetupDialogBase() { }
81 wxPageSetupDialogBase(wxWindow *parent,
82 wxWindowID id = wxID_ANY,
83 const wxString &title = wxEmptyString,
84 const wxPoint &pos = wxDefaultPosition,
85 const wxSize &size = wxDefaultSize,
86 long style = wxDEFAULT_DIALOG_STYLE);
87
88 virtual wxPageSetupDialogData& GetPageSetupDialogData() = 0;
89
90 private:
91 DECLARE_ABSTRACT_CLASS(wxPageSetupDialogBase)
92 wxDECLARE_NO_COPY_CLASS(wxPageSetupDialogBase);
93 };
94
95 // ---------------------------------------------------------------------------
96 // wxPageSetupDialog: the page setup dialog
97 // ---------------------------------------------------------------------------
98
99 class WXDLLIMPEXP_CORE wxPageSetupDialog: public wxObject
100 {
101 public:
102 wxPageSetupDialog(wxWindow *parent, wxPageSetupDialogData *data = NULL);
103 virtual ~wxPageSetupDialog();
104
105 int ShowModal();
106 wxPageSetupDialogData& GetPageSetupDialogData();
107 // old name
108 wxPageSetupDialogData& GetPageSetupData();
109
110 private:
111 wxPageSetupDialogBase *m_pimpl;
112
113 private:
114 DECLARE_DYNAMIC_CLASS(wxPageSetupDialog)
115 wxDECLARE_NO_COPY_CLASS(wxPageSetupDialog);
116 };
117
118 #endif
119
120 #endif
121 // _WX_PRINTDLG_H_BASE_