X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/dc7ccb9c5dcc8d68157dcc2c7cd2da230d45916d..09b895cb4a954494063eb17d3dc302a654fd99e5:/include/wx/mac/carbon/printdlg.h?ds=inline diff --git a/include/wx/mac/carbon/printdlg.h b/include/wx/mac/carbon/printdlg.h index 8250057b59..d6ec1ce09b 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. @@ -14,10 +14,6 @@ #ifndef _WX_PRINTDLG_H_ #define _WX_PRINTDLG_H_ -#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA) -#pragma interface "printdlg.h" -#endif - #include "wx/dialog.h" #include "wx/cmndata.h" #include "wx/printdlg.h" @@ -28,14 +24,14 @@ * The Mac dialog for printing */ -class WXDLLEXPORT wxDC; -class WXDLLEXPORT wxMacPrintDialog: public wxPrintDialogBase +class WXDLLIMPEXP_FWD_CORE wxDC; +class WXDLLIMPEXP_CORE wxMacPrintDialog: public wxPrintDialogBase { public: wxMacPrintDialog(); wxMacPrintDialog(wxWindow *parent, wxPrintDialogData* data = NULL); wxMacPrintDialog(wxWindow *parent, wxPrintData* data ); - ~wxMacPrintDialog(); + virtual ~wxMacPrintDialog(); bool Create(wxWindow *parent, wxPrintDialogData* data = NULL); virtual int ShowModal(); @@ -59,24 +55,58 @@ private: * The Mac page setup dialog */ -class WXDLLEXPORT wxMacPageSetupDialog: public wxPageSetupDialogBase +class WXDLLIMPEXP_CORE wxMacPageSetupDialog: public wxPageSetupDialogBase { public: - wxMacPageSetupDialog(wxWindow *parent, wxPageSetupDialogData *data = NULL); - ~wxMacPageSetupDialog(); + 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 WXDLLIMPEXP_CORE 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_