1 /////////////////////////////////////////////////////////////////////////////
2 // Name: wx/mac/carbon/printdlg.h
3 // Purpose: wxPrintDialog, wxPageSetupDialog classes.
4 // Use generic, PostScript version if no
5 // platform-specific implementation.
6 // Author: Stefan Csomor
10 // Copyright: (c) Stefan Csomor
11 // Licence: wxWindows licence
12 /////////////////////////////////////////////////////////////////////////////
14 #ifndef _WX_PRINTDLG_H_
15 #define _WX_PRINTDLG_H_
17 #include "wx/dialog.h"
18 #include "wx/cmndata.h"
19 #include "wx/printdlg.h"
20 #include "wx/prntbase.h"
24 * The Mac dialog for printing
27 class WXDLLEXPORT wxDC
;
28 class WXDLLEXPORT wxMacPrintDialog
: public wxPrintDialogBase
32 wxMacPrintDialog(wxWindow
*parent
, wxPrintDialogData
* data
= NULL
);
33 wxMacPrintDialog(wxWindow
*parent
, wxPrintData
* data
);
34 virtual ~wxMacPrintDialog();
36 bool Create(wxWindow
*parent
, wxPrintDialogData
* data
= NULL
);
37 virtual int ShowModal();
39 virtual wxPrintDialogData
& GetPrintDialogData() { return m_printDialogData
; }
40 virtual wxPrintData
& GetPrintData() { return m_printDialogData
.GetPrintData(); }
41 virtual wxDC
*GetPrintDC();
44 wxPrintDialogData m_printDialogData
;
47 wxWindow
* m_dialogParent
;
50 DECLARE_DYNAMIC_CLASS(wxPrintDialog
)
54 * wxMacPageSetupDialog
55 * The Mac page setup dialog
58 class WXDLLEXPORT wxMacPageSetupDialog
: public wxPageSetupDialogBase
61 wxMacPageSetupDialog(wxWindow
*parent
, wxPageSetupData
*data
= NULL
);
62 virtual ~wxMacPageSetupDialog();
64 virtual wxPageSetupData
& GetPageSetupDialogData();
66 bool Create(wxWindow
*parent
, wxPageSetupData
*data
= NULL
);
67 virtual int ShowModal();
70 wxPageSetupData m_pageSetupData
;
71 wxWindow
* m_dialogParent
;
74 DECLARE_DYNAMIC_CLASS_NO_COPY(wxMacPageSetupDialog
)
77 class WXDLLEXPORT wxTextCtrl
;
80 * wxMacPageMarginsDialog
81 * A Mac dialog for setting the page margins separately from page setup since
82 * (native) wxMacPageSetupDialog doesn't let you set margins.
85 class WXDLLEXPORT wxMacPageMarginsDialog
: public wxDialog
88 wxMacPageMarginsDialog(wxFrame
* parent
, wxPageSetupData
* data
);
89 bool TransferToWindow();
90 bool TransferDataFromWindow();
92 virtual wxPageSetupData
& GetPageSetupDialogData() { return *m_pageSetupDialogData
; }
95 wxPageSetupData
* m_pageSetupDialogData
;
97 wxPoint m_MinMarginTopLeft
;
98 wxPoint m_MinMarginBottomRight
;
99 wxTextCtrl
*m_LeftMargin
;
100 wxTextCtrl
*m_TopMargin
;
101 wxTextCtrl
*m_RightMargin
;
102 wxTextCtrl
*m_BottomMargin
;
104 void GetMinMargins();
105 bool CheckValue(wxTextCtrl
* textCtrl
, int *value
, int minValue
, const wxString
& name
);
108 DECLARE_DYNAMIC_CLASS_NO_COPY(wxMacPageMarginsDialog
)
112 #endif // _WX_PRINTDLG_H_