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