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_
15 #if defined(__GNUG__) && !defined(NO_GCC_PRAGMA)
16 #pragma interface "printdlg.h"
21 #if wxUSE_PRINTING_ARCHITECTURE
24 #include "wx/dialog.h"
26 #include "wx/cmndata.h"
29 // ---------------------------------------------------------------------------
30 // wxPrintDialogBase: interface for the dialog for printing
31 // ---------------------------------------------------------------------------
33 class WXDLLEXPORT wxPrintDialogBase
: public wxDialog
36 wxPrintDialogBase() { }
37 wxPrintDialogBase(wxWindow
*parent
,
38 wxWindowID id
= wxID_ANY
,
39 const wxString
&title
= wxEmptyString
,
40 const wxPoint
&pos
= wxDefaultPosition
,
41 const wxSize
&size
= wxDefaultSize
,
42 long style
= wxDEFAULT_DIALOG_STYLE
);
44 virtual wxPrintDialogData
& GetPrintDialogData() = 0;
45 virtual wxPrintData
& GetPrintData() = 0;
46 virtual wxDC
*GetPrintDC() = 0;
49 DECLARE_ABSTRACT_CLASS(wxPrintDialogBase
)
50 DECLARE_NO_COPY_CLASS(wxPrintDialogBase
)
53 // ---------------------------------------------------------------------------
54 // wxPrintDialog: the dialog for printing.
55 // ---------------------------------------------------------------------------
57 class WXDLLEXPORT wxPrintDialog
: public wxObject
60 wxPrintDialog(wxWindow
*parent
, wxPrintDialogData
* data
= NULL
);
61 wxPrintDialog(wxWindow
*parent
, wxPrintData
* data
);
64 virtual int ShowModal();
66 virtual wxPrintDialogData
& GetPrintDialogData();
67 virtual wxPrintData
& GetPrintData();
68 virtual wxDC
*GetPrintDC();
71 wxPrintDialogBase
*m_pimpl
;
74 DECLARE_DYNAMIC_CLASS(wxPrintDialog
)
75 DECLARE_NO_COPY_CLASS(wxPrintDialog
)
78 // ---------------------------------------------------------------------------
79 // wxPageSetupDialogBase: interface for the page setup dialog
80 // ---------------------------------------------------------------------------
82 class WXDLLEXPORT wxPageSetupDialogBase
: public wxDialog
85 wxPageSetupDialogBase() { }
86 wxPageSetupDialogBase(wxWindow
*parent
,
87 wxWindowID id
= wxID_ANY
,
88 const wxString
&title
= wxEmptyString
,
89 const wxPoint
&pos
= wxDefaultPosition
,
90 const wxSize
&size
= wxDefaultSize
,
91 long style
= wxDEFAULT_DIALOG_STYLE
);
93 virtual wxPageSetupDialogData
& GetPageSetupDialogData() = 0;
96 DECLARE_ABSTRACT_CLASS(wxPageSetupDialogBase
)
97 DECLARE_NO_COPY_CLASS(wxPageSetupDialogBase
)
100 // ---------------------------------------------------------------------------
101 // wxPageSetupDialog: the page setup dialog
102 // ---------------------------------------------------------------------------
104 class WXDLLEXPORT wxPageSetupDialog
: public wxObject
107 wxPageSetupDialog(wxWindow
*parent
, wxPageSetupDialogData
*data
= NULL
);
108 ~wxPageSetupDialog();
111 wxPageSetupDialogData
& GetPageSetupDialogData();
113 wxPageSetupDialogData
& GetPageSetupData();
116 wxPageSetupDialogBase
*m_pimpl
;
119 DECLARE_DYNAMIC_CLASS(wxPageSetupDialog
)
120 DECLARE_NO_COPY_CLASS(wxPageSetupDialog
)
126 // _WX_PRINTDLG_H_BASE_