1 /////////////////////////////////////////////////////////////////////////////
3 // Purpose: Base header and class for print dialogs
4 // Author: Julian Smart
7 // Copyright: (c) Julian Smart
8 // Licence: wxWindows Licence
9 /////////////////////////////////////////////////////////////////////////////
11 #ifndef _WX_PRINTDLG_H_BASE_
12 #define _WX_PRINTDLG_H_BASE_
16 #if wxUSE_PRINTING_ARCHITECTURE
19 #include "wx/dialog.h"
21 #include "wx/cmndata.h"
24 // ---------------------------------------------------------------------------
25 // wxPrintDialogBase: interface for the dialog for printing
26 // ---------------------------------------------------------------------------
28 class WXDLLIMPEXP_CORE wxPrintDialogBase
: public wxDialog
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
);
39 virtual wxPrintDialogData
& GetPrintDialogData() = 0;
40 virtual wxPrintData
& GetPrintData() = 0;
41 virtual wxDC
*GetPrintDC() = 0;
44 DECLARE_ABSTRACT_CLASS(wxPrintDialogBase
)
45 wxDECLARE_NO_COPY_CLASS(wxPrintDialogBase
);
48 // ---------------------------------------------------------------------------
49 // wxPrintDialog: the dialog for printing.
50 // ---------------------------------------------------------------------------
52 class WXDLLIMPEXP_CORE wxPrintDialog
: public wxObject
55 wxPrintDialog(wxWindow
*parent
, wxPrintDialogData
* data
= NULL
);
56 wxPrintDialog(wxWindow
*parent
, wxPrintData
* data
);
57 virtual ~wxPrintDialog();
59 virtual int ShowModal();
61 virtual wxPrintDialogData
& GetPrintDialogData();
62 virtual wxPrintData
& GetPrintData();
63 virtual wxDC
*GetPrintDC();
66 wxPrintDialogBase
*m_pimpl
;
69 DECLARE_DYNAMIC_CLASS(wxPrintDialog
)
70 wxDECLARE_NO_COPY_CLASS(wxPrintDialog
);
73 // ---------------------------------------------------------------------------
74 // wxPageSetupDialogBase: interface for the page setup dialog
75 // ---------------------------------------------------------------------------
77 class WXDLLIMPEXP_CORE wxPageSetupDialogBase
: public wxDialog
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
);
88 virtual wxPageSetupDialogData
& GetPageSetupDialogData() = 0;
91 DECLARE_ABSTRACT_CLASS(wxPageSetupDialogBase
)
92 wxDECLARE_NO_COPY_CLASS(wxPageSetupDialogBase
);
95 // ---------------------------------------------------------------------------
96 // wxPageSetupDialog: the page setup dialog
97 // ---------------------------------------------------------------------------
99 class WXDLLIMPEXP_CORE wxPageSetupDialog
: public wxObject
102 wxPageSetupDialog(wxWindow
*parent
, wxPageSetupDialogData
*data
= NULL
);
103 virtual ~wxPageSetupDialog();
106 wxPageSetupDialogData
& GetPageSetupDialogData();
108 wxPageSetupDialogData
& GetPageSetupData();
111 wxPageSetupDialogBase
*m_pimpl
;
114 DECLARE_DYNAMIC_CLASS(wxPageSetupDialog
)
115 wxDECLARE_NO_COPY_CLASS(wxPageSetupDialog
);
121 // _WX_PRINTDLG_H_BASE_