1 /////////////////////////////////////////////////////////////////////////////
3 // Purpose: Base header and class for print dialogs
4 // Author: Julian Smart
8 // Copyright: (c) Julian Smart
9 // Licence: wxWindows Licence
10 /////////////////////////////////////////////////////////////////////////////
12 #ifndef _WX_PRINTDLG_H_BASE_
13 #define _WX_PRINTDLG_H_BASE_
17 #if wxUSE_PRINTING_ARCHITECTURE
20 #include "wx/dialog.h"
22 #include "wx/cmndata.h"
25 // ---------------------------------------------------------------------------
26 // wxPrintDialogBase: interface for the dialog for printing
27 // ---------------------------------------------------------------------------
29 class WXDLLIMPEXP_CORE wxPrintDialogBase
: public wxDialog
32 wxPrintDialogBase() { }
33 wxPrintDialogBase(wxWindow
*parent
,
34 wxWindowID id
= wxID_ANY
,
35 const wxString
&title
= wxEmptyString
,
36 const wxPoint
&pos
= wxDefaultPosition
,
37 const wxSize
&size
= wxDefaultSize
,
38 long style
= wxDEFAULT_DIALOG_STYLE
);
40 virtual wxPrintDialogData
& GetPrintDialogData() = 0;
41 virtual wxPrintData
& GetPrintData() = 0;
42 virtual wxDC
*GetPrintDC() = 0;
45 DECLARE_ABSTRACT_CLASS(wxPrintDialogBase
)
46 wxDECLARE_NO_COPY_CLASS(wxPrintDialogBase
);
49 // ---------------------------------------------------------------------------
50 // wxPrintDialog: the dialog for printing.
51 // ---------------------------------------------------------------------------
53 class WXDLLIMPEXP_CORE wxPrintDialog
: public wxObject
56 wxPrintDialog(wxWindow
*parent
, wxPrintDialogData
* data
= NULL
);
57 wxPrintDialog(wxWindow
*parent
, wxPrintData
* data
);
58 virtual ~wxPrintDialog();
60 virtual int ShowModal();
62 virtual wxPrintDialogData
& GetPrintDialogData();
63 virtual wxPrintData
& GetPrintData();
64 virtual wxDC
*GetPrintDC();
67 wxPrintDialogBase
*m_pimpl
;
70 DECLARE_DYNAMIC_CLASS(wxPrintDialog
)
71 wxDECLARE_NO_COPY_CLASS(wxPrintDialog
);
74 // ---------------------------------------------------------------------------
75 // wxPageSetupDialogBase: interface for the page setup dialog
76 // ---------------------------------------------------------------------------
78 class WXDLLIMPEXP_CORE wxPageSetupDialogBase
: public wxDialog
81 wxPageSetupDialogBase() { }
82 wxPageSetupDialogBase(wxWindow
*parent
,
83 wxWindowID id
= wxID_ANY
,
84 const wxString
&title
= wxEmptyString
,
85 const wxPoint
&pos
= wxDefaultPosition
,
86 const wxSize
&size
= wxDefaultSize
,
87 long style
= wxDEFAULT_DIALOG_STYLE
);
89 virtual wxPageSetupDialogData
& GetPageSetupDialogData() = 0;
92 DECLARE_ABSTRACT_CLASS(wxPageSetupDialogBase
)
93 wxDECLARE_NO_COPY_CLASS(wxPageSetupDialogBase
);
96 // ---------------------------------------------------------------------------
97 // wxPageSetupDialog: the page setup dialog
98 // ---------------------------------------------------------------------------
100 class WXDLLIMPEXP_CORE wxPageSetupDialog
: public wxObject
103 wxPageSetupDialog(wxWindow
*parent
, wxPageSetupDialogData
*data
= NULL
);
104 virtual ~wxPageSetupDialog();
107 wxPageSetupDialogData
& GetPageSetupDialogData();
109 wxPageSetupDialogData
& GetPageSetupData();
112 wxPageSetupDialogBase
*m_pimpl
;
115 DECLARE_DYNAMIC_CLASS(wxPageSetupDialog
)
116 wxDECLARE_NO_COPY_CLASS(wxPageSetupDialog
);
122 // _WX_PRINTDLG_H_BASE_