X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/7d09b97f5321d0accd758eb420c008853ad9ec26..a0b575116060526bf26554a2fe5d29ec2c0bc693:/include/wx/msw/dcprint.h diff --git a/include/wx/msw/dcprint.h b/include/wx/msw/dcprint.h index 8847a2d65a..477b38bd62 100644 --- a/include/wx/msw/dcprint.h +++ b/include/wx/msw/dcprint.h @@ -14,19 +14,20 @@ #if wxUSE_PRINTING_ARCHITECTURE -#include "wx/dc.h" +#include "wx/dcprint.h" #include "wx/cmndata.h" +#include "wx/msw/dc.h" -class WXDLLEXPORT wxPrinterDC : public wxDC +// ------------------------------------------------------------------------ +// wxPrinterDCImpl +// + +class WXDLLEXPORT wxPrinterDCImpl : public wxMSWDCImpl { public: - // Create a printer DC (obsolete function: use wxPrintData version now) - wxPrinterDC(const wxString& driver, const wxString& device, const wxString& output, bool interactive = true, int orientation = wxPORTRAIT); - // Create from print data - wxPrinterDC(const wxPrintData& data); - - wxPrinterDC(WXHDC theDC); + wxPrinterDCImpl( wxPrinterDC *owner, const wxPrintData& data ); + wxPrinterDCImpl( wxPrinterDC *owner, WXHDC theDC ); // override some base class virtuals virtual bool StartDoc(const wxString& message); @@ -34,6 +35,8 @@ public: virtual void StartPage(); virtual void EndPage(); + virtual wxRect GetPaperRect(); + protected: virtual void DoDrawBitmap(const wxBitmap &bmp, wxCoord x, wxCoord y, bool useMask = false); @@ -53,15 +56,26 @@ protected: wxPrintData m_printData; private: - DECLARE_DYNAMIC_CLASS_NO_COPY(wxPrinterDC) + DECLARE_CLASS(wxPrinterDCImpl) + DECLARE_NO_COPY_CLASS(wxPrinterDCImpl) }; -// Gets an HDC for the default printer configuration -// WXHDC WXDLLEXPORT wxGetPrinterDC(int orientation); - // Gets an HDC for the specified printer configuration WXHDC WXDLLEXPORT wxGetPrinterDC(const wxPrintData& data); +// ------------------------------------------------------------------------ +// wxPrinterDCromHDC +// + +class WXDLLEXPORT wxPrinterDCFromHDC: public wxPrinterDC +{ +public: + wxPrinterDCFromHDC( WXHDC theDC ) + : wxPrinterDC(new wxPrinterDCImpl(this, theDC)) + { + } +}; + #endif // wxUSE_PRINTING_ARCHITECTURE #endif // _WX_MSW_DCPRINT_H_