X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/103aec296a2c017f915b4b2b2584191fdb716a75..9fcd0bf7f313e637e8cd4b5d7f3cd5b294fec033:/include/wx/msw/printdlg.h?ds=sidebyside diff --git a/include/wx/msw/printdlg.h b/include/wx/msw/printdlg.h index 69921c0b4a..868ed30f76 100644 --- a/include/wx/msw/printdlg.h +++ b/include/wx/msw/printdlg.h @@ -12,61 +12,113 @@ #ifndef _WX_PRINTDLG_H_ #define _WX_PRINTDLG_H_ -#ifdef __GNUG__ -#pragma interface "printdlg.h" -#endif +#if wxUSE_PRINTING_ARCHITECTURE #include "wx/dialog.h" #include "wx/cmndata.h" +#include "wx/prntbase.h" +#include "wx/printdlg.h" class WXDLLEXPORT wxDC; +//---------------------------------------------------------------------------- +// wxWindowsPrintNativeData +//---------------------------------------------------------------------------- + +class WXDLLEXPORT wxWindowsPrintNativeData: public wxPrintNativeDataBase +{ +public: + wxWindowsPrintNativeData(); + virtual ~wxWindowsPrintNativeData(); + + virtual bool TransferTo( wxPrintData &data ); + virtual bool TransferFrom( const wxPrintData &data ); + + virtual bool Ok() const { return IsOk(); } + virtual bool IsOk() const; + + void* GetDevMode() const { return m_devMode; } + void SetDevMode(void* data) { m_devMode = data; } + void* GetDevNames() const { return m_devNames; } + void SetDevNames(void* data) { m_devNames = data; } + +private: + void* m_devMode; + void* m_devNames; + + short m_customWindowsPaperId; + +private: + DECLARE_DYNAMIC_CLASS(wxWindowsPrintNativeData) +}; + // --------------------------------------------------------------------------- -// wxPrinterDialog: the common dialog for printing. +// wxWindowsPrintDialog: the MSW dialog for printing // --------------------------------------------------------------------------- -class WXDLLEXPORT wxPrintDialog : public wxDialog +class WXDLLEXPORT wxWindowsPrintDialog : public wxPrintDialogBase { - DECLARE_DYNAMIC_CLASS(wxPrintDialog) - public: - wxPrintDialog(); - wxPrintDialog(wxWindow *parent, wxPrintDialogData* data = NULL); - wxPrintDialog(wxWindow *parent, wxPrintData* data); - virtual ~wxPrintDialog(); + wxWindowsPrintDialog(wxWindow *parent, wxPrintDialogData* data = NULL); + wxWindowsPrintDialog(wxWindow *parent, wxPrintData* data); + virtual ~wxWindowsPrintDialog(); bool Create(wxWindow *parent, wxPrintDialogData* data = NULL); virtual int ShowModal(); wxPrintDialogData& GetPrintDialogData() { return m_printDialogData; } wxPrintData& GetPrintData() { return m_printDialogData.GetPrintData(); } + virtual wxDC *GetPrintDC(); private: wxPrintDialogData m_printDialogData; - wxDC* m_printerDC; + wxPrinterDC* m_printerDC; bool m_destroyDC; wxWindow* m_dialogParent; + +private: + bool ConvertToNative( wxPrintDialogData &data ); + bool ConvertFromNative( wxPrintDialogData &data ); + + // holds MSW handle + void* m_printDlg; + +private: + DECLARE_NO_COPY_CLASS(wxWindowsPrintDialog) + DECLARE_CLASS(wxWindowsPrintDialog) }; -class WXDLLEXPORT wxPageSetupDialog: public wxDialog -{ - DECLARE_DYNAMIC_CLASS(wxPageSetupDialog) +// --------------------------------------------------------------------------- +// wxWindowsPageSetupDialog: the MSW page setup dialog +// --------------------------------------------------------------------------- +class WXDLLEXPORT wxWindowsPageSetupDialog: public wxPageSetupDialogBase +{ public: - wxPageSetupDialog(); - wxPageSetupDialog(wxWindow *parent, wxPageSetupData *data = NULL); - virtual ~wxPageSetupDialog(); + wxWindowsPageSetupDialog(); + wxWindowsPageSetupDialog(wxWindow *parent, wxPageSetupDialogData *data = NULL); + virtual ~wxWindowsPageSetupDialog(); - bool Create(wxWindow *parent, wxPageSetupData *data = NULL); + bool Create(wxWindow *parent, wxPageSetupDialogData *data = NULL); virtual int ShowModal(); + bool ConvertToNative( wxPageSetupDialogData &data ); + bool ConvertFromNative( wxPageSetupDialogData &data ); - wxPageSetupData& GetPageSetupData() { return m_pageSetupData; } + virtual wxPageSetupData& GetPageSetupDialogData() { return m_pageSetupData; } private: - wxPageSetupData m_pageSetupData; - wxWindow* m_dialogParent; + wxPageSetupDialogData m_pageSetupData; + wxWindow* m_dialogParent; + + // holds MSW handle + void* m_pageDlg; + +private: + DECLARE_DYNAMIC_CLASS_NO_COPY(wxWindowsPageSetupDialog) }; +#endif // wxUSE_PRINTING_ARCHITECTURE + #endif // _WX_PRINTDLG_H_