Began work on print dialogs. Now wxPrintDialog
[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 common dialog for printing.
20 // ---------------------------------------------------------------------------
21
22 class WXDLLEXPORT wxPrintDialogBase : public wxDialog
23 {
24 public:
25 wxPrintDialogBase() { }
26 wxPrintDialogBase(wxWindow *parent, wxWindowID id = -1, const wxString &title = _("Print"),
27 const wxPoint &pos = wxDefaultPosition,
28 const wxSize &size = wxDefaultSize,
29 long style = wxDEFAULT_DIALOG_STYLE );
30
31 virtual int ShowModal() = 0;
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 common 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 #endif
68
69 #if defined(__WXUNIVERSAL__) && (!defined(__WXMSW__) || wxUSE_POSTSCRIPT_ARCHITECTURE_IN_MSW)
70 #include "wx/generic/prntdlgg.h"
71 #elif defined(__WXMSW__)
72 #include "wx/msw/printdlg.h"
73 #elif defined(__WXMOTIF__)
74 #include "wx/generic/prntdlgg.h"
75 #elif defined(__WXGTK__)
76 #include "wx/generic/prntdlgg.h"
77 #elif defined(__WXX11__)
78 #include "wx/generic/prntdlgg.h"
79 #elif defined(__WXMGL__)
80 #include "wx/generic/prntdlgg.h"
81 #elif defined(__WXMAC__)
82 #include "wx/mac/printdlg.h"
83 #elif defined(__WXPM__)
84 #include "wx/generic/prntdlgg.h"
85 #endif
86
87 #if (defined(__WXUNIVERSAL__) && (!defined(__WXMSW__) || wxUSE_POSTSCRIPT_ARCHITECTURE_IN_MSW) ) || (!defined(__WXMSW__) && !defined(__WXMAC__))
88 #define wxPrintSetupDialog wxGenericPrintSetupDialog
89 #define wxPageSetupDialog wxGenericPageSetupDialog
90 #endif
91
92 #endif
93 // _WX_PRINTDLG_H_BASE_