]> git.saurik.com Git - wxWidgets.git/blame - include/wx/printdlg.h
Avoid ICE with MinGW 2.95.3.
[wxWidgets.git] / include / wx / printdlg.h
CommitLineData
34138703
JS
1#ifndef _WX_PRINTDLG_H_BASE_
2#define _WX_PRINTDLG_H_BASE_
c801d85f 3
c061373d
RR
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// ---------------------------------------------------------------------------
08680429 19// wxPrintDialogBase: interface for the dialog for printing
c061373d
RR
20// ---------------------------------------------------------------------------
21
22class WXDLLEXPORT wxPrintDialogBase : public wxDialog
23{
24public:
25 wxPrintDialogBase() { }
6ce8c562
VZ
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);
c061373d 32
c061373d
RR
33 virtual wxPrintDialogData& GetPrintDialogData() = 0;
34 virtual wxPrintData& GetPrintData() = 0;
35 virtual wxDC *GetPrintDC() = 0;
36
37private:
38 DECLARE_ABSTRACT_CLASS(wxPrintDialogBase)
39 DECLARE_NO_COPY_CLASS(wxPrintDialogBase)
40};
41
42// ---------------------------------------------------------------------------
08680429 43// wxPrintDialog: the dialog for printing.
c061373d
RR
44// ---------------------------------------------------------------------------
45
46class WXDLLEXPORT wxPrintDialog : public wxObject
47{
48public:
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
59private:
60 wxPrintDialogBase *m_pimpl;
61
62private:
63 DECLARE_DYNAMIC_CLASS(wxPrintDialog)
64 DECLARE_NO_COPY_CLASS(wxPrintDialog)
65};
66
08680429
RR
67// ---------------------------------------------------------------------------
68// wxPageSetupDialogBase: interface for the page setup dialog
69// ---------------------------------------------------------------------------
c061373d 70
08680429
RR
71class WXDLLEXPORT wxPageSetupDialogBase: public wxDialog
72{
73public:
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
84private:
85 DECLARE_ABSTRACT_CLASS(wxPageSetupDialogBase)
86 DECLARE_NO_COPY_CLASS(wxPageSetupDialogBase)
87};
88
89// ---------------------------------------------------------------------------
90// wxPageSetupDialog: the page setup dialog
91// ---------------------------------------------------------------------------
92
93class WXDLLEXPORT wxPageSetupDialog: public wxObject
94{
95public:
96 wxPageSetupDialog(wxWindow *parent, wxPageSetupDialogData *data = NULL);
97 ~wxPageSetupDialog();
98
99 int ShowModal();
100 wxPageSetupDialogData& GetPageSetupDialogData();
101 // old name
102 wxPageSetupDialogData& GetPageSetupData();
103
104private:
105 wxPageSetupDialogBase *m_pimpl;
106
107private:
108 DECLARE_DYNAMIC_CLASS(wxPageSetupDialog)
109 DECLARE_NO_COPY_CLASS(wxPageSetupDialog)
110};
42ff6409 111
c801d85f
KB
112#endif
113
114#endif
34138703 115 // _WX_PRINTDLG_H_BASE_