X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/d3c7fc996a73e9f6a83067bc28a3c5581a3fee65..2301cda0084278f8cde4dc08ac634b88836e699f:/include/wx/mac/carbon/printdlg.h?ds=sidebyside diff --git a/include/wx/mac/carbon/printdlg.h b/include/wx/mac/carbon/printdlg.h index a12b983908..3df2606ebf 100644 --- a/include/wx/mac/carbon/printdlg.h +++ b/include/wx/mac/carbon/printdlg.h @@ -1,5 +1,5 @@ ///////////////////////////////////////////////////////////////////////////// -// Name: printdlg.h +// Name: wx/mac/carbon/printdlg.h // Purpose: wxPrintDialog, wxPageSetupDialog classes. // Use generic, PostScript version if no // platform-specific implementation. @@ -24,7 +24,7 @@ * The Mac dialog for printing */ -class WXDLLEXPORT wxDC; +class WXDLLIMPEXP_FWD_CORE wxDC; class WXDLLEXPORT wxMacPrintDialog: public wxPrintDialogBase { public: @@ -58,21 +58,55 @@ private: class WXDLLEXPORT wxMacPageSetupDialog: public wxPageSetupDialogBase { public: - wxMacPageSetupDialog(wxWindow *parent, wxPageSetupDialogData *data = NULL); + wxMacPageSetupDialog(wxWindow *parent, wxPageSetupData *data = NULL); virtual ~wxMacPageSetupDialog(); virtual wxPageSetupData& GetPageSetupDialogData(); - bool Create(wxWindow *parent, wxPageSetupDialogData *data = NULL); + bool Create(wxWindow *parent, wxPageSetupData *data = NULL); virtual int ShowModal(); private: - wxPageSetupDialogData m_pageSetupData; + wxPageSetupData m_pageSetupData; wxWindow* m_dialogParent; private: DECLARE_DYNAMIC_CLASS_NO_COPY(wxMacPageSetupDialog) }; -#endif - // _WX_PRINTDLG_H_ +class WXDLLIMPEXP_FWD_CORE wxTextCtrl; + +/* +* wxMacPageMarginsDialog +* A Mac dialog for setting the page margins separately from page setup since +* (native) wxMacPageSetupDialog doesn't let you set margins. +*/ + +class WXDLLEXPORT wxMacPageMarginsDialog : public wxDialog +{ +public: + wxMacPageMarginsDialog(wxFrame* parent, wxPageSetupData* data); + bool TransferToWindow(); + bool TransferDataFromWindow(); + + virtual wxPageSetupData& GetPageSetupDialogData() { return *m_pageSetupDialogData; } + +private: + wxPageSetupData* m_pageSetupDialogData; + + wxPoint m_MinMarginTopLeft; + wxPoint m_MinMarginBottomRight; + wxTextCtrl *m_LeftMargin; + wxTextCtrl *m_TopMargin; + wxTextCtrl *m_RightMargin; + wxTextCtrl *m_BottomMargin; + + void GetMinMargins(); + bool CheckValue(wxTextCtrl* textCtrl, int *value, int minValue, const wxString& name); + +private: + DECLARE_DYNAMIC_CLASS_NO_COPY(wxMacPageMarginsDialog) +}; + + +#endif // _WX_PRINTDLG_H_