X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/fd64de596c085f81aa3ef7d8ee6b2f4afebbed8e..51623cc53f350935337e57930eaaf1afe9a48c3b:/include/wx/msw/printdlg.h diff --git a/include/wx/msw/printdlg.h b/include/wx/msw/printdlg.h index 681878516c..9f2330f071 100644 --- a/include/wx/msw/printdlg.h +++ b/include/wx/msw/printdlg.h @@ -1,5 +1,5 @@ ///////////////////////////////////////////////////////////////////////////// -// Name: printdlg.h +// Name: wx/msw/printdlg.h // Purpose: wxPrintDialog, wxPageSetupDialog classes // Author: Julian Smart // Modified by: @@ -12,10 +12,6 @@ #ifndef _WX_PRINTDLG_H_ #define _WX_PRINTDLG_H_ -#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA) -#pragma interface "printdlg.h" -#endif - #if wxUSE_PRINTING_ARCHITECTURE #include "wx/dialog.h" @@ -23,41 +19,46 @@ #include "wx/prntbase.h" #include "wx/printdlg.h" -class WXDLLEXPORT wxDC; +class WXDLLIMPEXP_FWD_CORE wxDC; +class WinPrinter; //---------------------------------------------------------------------------- // wxWindowsPrintNativeData //---------------------------------------------------------------------------- -class WXDLLEXPORT wxWindowsPrintNativeData: public wxPrintNativeDataBase +class WXDLLIMPEXP_CORE wxWindowsPrintNativeData: public wxPrintNativeDataBase { public: wxWindowsPrintNativeData(); virtual ~wxWindowsPrintNativeData(); - + virtual bool TransferTo( wxPrintData &data ); virtual bool TransferFrom( const wxPrintData &data ); - - virtual bool Ok() const; - + + virtual bool Ok() const { return IsOk(); } + virtual bool IsOk() const; + + void InitializeDevMode(const wxString &printerName = wxEmptyString, WinPrinter* printer = NULL); 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 wxWindowsPrintDialog : public wxPrintDialogBase +class WXDLLIMPEXP_CORE wxWindowsPrintDialog : public wxPrintDialogBase { public: wxWindowsPrintDialog(wxWindow *parent, wxPrintDialogData* data = NULL); @@ -69,37 +70,54 @@ public: 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: - DECLARE_NO_COPY_CLASS(wxWindowsPrintDialog) + bool ConvertToNative( wxPrintDialogData &data ); + bool ConvertFromNative( wxPrintDialogData &data ); + + // holds MSW handle + void* m_printDlg; + +private: + wxDECLARE_NO_COPY_CLASS(wxWindowsPrintDialog); DECLARE_CLASS(wxWindowsPrintDialog) }; -class WXDLLEXPORT wxPageSetupDialog: public wxDialog -{ - DECLARE_DYNAMIC_CLASS(wxPageSetupDialog) +// --------------------------------------------------------------------------- +// wxWindowsPageSetupDialog: the MSW page setup dialog +// --------------------------------------------------------------------------- +class WXDLLIMPEXP_CORE 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 wxPageSetupDialogData& GetPageSetupDialogData() { return m_pageSetupData; } private: - wxPageSetupData m_pageSetupData; - wxWindow* m_dialogParent; + wxPageSetupDialogData m_pageSetupData; + wxWindow* m_dialogParent; - DECLARE_NO_COPY_CLASS(wxPageSetupDialog) + // holds MSW handle + void* m_pageDlg; + +private: + DECLARE_DYNAMIC_CLASS_NO_COPY(wxWindowsPageSetupDialog) }; #endif // wxUSE_PRINTING_ARCHITECTURE