]> git.saurik.com Git - wxWidgets.git/blob - include/wx/printdlg.h
define wxUSE_CRASHREPORT as 0 for non-MSW
[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 // RCS-ID: $Id$
8 // Copyright: (c) Julian Smart
9 // Licence: wxWindows Licence
10 /////////////////////////////////////////////////////////////////////////////
11
12 #ifndef _WX_PRINTDLG_H_BASE_
13 #define _WX_PRINTDLG_H_BASE_
14
15 #if defined(__GNUG__) && !defined(NO_GCC_PRAGMA)
16 #pragma interface "printdlg.h"
17 #endif
18
19 #include "wx/defs.h"
20
21 #if wxUSE_PRINTING_ARCHITECTURE
22
23 #include "wx/event.h"
24 #include "wx/dialog.h"
25 #include "wx/intl.h"
26 #include "wx/cmndata.h"
27
28
29 // ---------------------------------------------------------------------------
30 // wxPrintDialogBase: interface for the dialog for printing
31 // ---------------------------------------------------------------------------
32
33 class WXDLLEXPORT wxPrintDialogBase : public wxDialog
34 {
35 public:
36 wxPrintDialogBase() { }
37 wxPrintDialogBase(wxWindow *parent,
38 wxWindowID id = wxID_ANY,
39 const wxString &title = wxEmptyString,
40 const wxPoint &pos = wxDefaultPosition,
41 const wxSize &size = wxDefaultSize,
42 long style = wxDEFAULT_DIALOG_STYLE);
43
44 virtual wxPrintDialogData& GetPrintDialogData() = 0;
45 virtual wxPrintData& GetPrintData() = 0;
46 virtual wxDC *GetPrintDC() = 0;
47
48 private:
49 DECLARE_ABSTRACT_CLASS(wxPrintDialogBase)
50 DECLARE_NO_COPY_CLASS(wxPrintDialogBase)
51 };
52
53 // ---------------------------------------------------------------------------
54 // wxPrintDialog: the dialog for printing.
55 // ---------------------------------------------------------------------------
56
57 class WXDLLEXPORT wxPrintDialog : public wxObject
58 {
59 public:
60 wxPrintDialog(wxWindow *parent, wxPrintDialogData* data = NULL);
61 wxPrintDialog(wxWindow *parent, wxPrintData* data);
62 ~wxPrintDialog();
63
64 virtual int ShowModal();
65
66 virtual wxPrintDialogData& GetPrintDialogData();
67 virtual wxPrintData& GetPrintData();
68 virtual wxDC *GetPrintDC();
69
70 private:
71 wxPrintDialogBase *m_pimpl;
72
73 private:
74 DECLARE_DYNAMIC_CLASS(wxPrintDialog)
75 DECLARE_NO_COPY_CLASS(wxPrintDialog)
76 };
77
78 // ---------------------------------------------------------------------------
79 // wxPageSetupDialogBase: interface for the page setup dialog
80 // ---------------------------------------------------------------------------
81
82 class WXDLLEXPORT wxPageSetupDialogBase: public wxDialog
83 {
84 public:
85 wxPageSetupDialogBase() { }
86 wxPageSetupDialogBase(wxWindow *parent,
87 wxWindowID id = wxID_ANY,
88 const wxString &title = wxEmptyString,
89 const wxPoint &pos = wxDefaultPosition,
90 const wxSize &size = wxDefaultSize,
91 long style = wxDEFAULT_DIALOG_STYLE);
92
93 virtual wxPageSetupDialogData& GetPageSetupDialogData() = 0;
94
95 private:
96 DECLARE_ABSTRACT_CLASS(wxPageSetupDialogBase)
97 DECLARE_NO_COPY_CLASS(wxPageSetupDialogBase)
98 };
99
100 // ---------------------------------------------------------------------------
101 // wxPageSetupDialog: the page setup dialog
102 // ---------------------------------------------------------------------------
103
104 class WXDLLEXPORT wxPageSetupDialog: public wxObject
105 {
106 public:
107 wxPageSetupDialog(wxWindow *parent, wxPageSetupDialogData *data = NULL);
108 ~wxPageSetupDialog();
109
110 int ShowModal();
111 wxPageSetupDialogData& GetPageSetupDialogData();
112 // old name
113 wxPageSetupDialogData& GetPageSetupData();
114
115 private:
116 wxPageSetupDialogBase *m_pimpl;
117
118 private:
119 DECLARE_DYNAMIC_CLASS(wxPageSetupDialog)
120 DECLARE_NO_COPY_CLASS(wxPageSetupDialog)
121 };
122
123 #endif
124
125 #endif
126 // _WX_PRINTDLG_H_BASE_