X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/debe6624c1e9d4bf3243381153d1e173c849bcd8..f196316400fd247a760b2ef77d5064b4e10e5471:/include/wx/msw/dcprint.h diff --git a/include/wx/msw/dcprint.h b/include/wx/msw/dcprint.h index 5a34cd0bb5..29a79daf18 100644 --- a/include/wx/msw/dcprint.h +++ b/include/wx/msw/dcprint.h @@ -1,38 +1,70 @@ ///////////////////////////////////////////////////////////////////////////// -// Name: dcprint.h +// Name: wx/msw/dcprint.h // Purpose: wxPrinterDC class // Author: Julian Smart // Modified by: // Created: 01/02/97 // RCS-ID: $Id$ -// Copyright: (c) Julian Smart and Markus Holzem -// Licence: wxWindows license +// Copyright: (c) Julian Smart +// Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// -#ifndef __DCPRINTH__ -#define __DCPRINTH__ +#ifndef _WX_MSW_DCPRINT_H_ +#define _WX_MSW_DCPRINT_H_ -#ifdef __GNUG__ -#pragma interface "dcprint.h" -#endif +#if wxUSE_PRINTING_ARCHITECTURE #include "wx/dc.h" +#include "wx/cmndata.h" -class WXDLLEXPORT wxPrinterDC: public wxDC +class WXDLLEXPORT wxPrinterDC : public wxDC { - public: - DECLARE_CLASS(wxPrinterDC) +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 a printer DC - wxPrinterDC(const wxString& driver, const wxString& device, const wxString& output, bool interactive = TRUE, int orientation = wxPORTRAIT); - wxPrinterDC(WXHDC theDC); + // Create from print data + wxPrinterDC(const wxPrintData& data); - ~wxPrinterDC(void); + wxPrinterDC(WXHDC theDC); + + // override some base class virtuals + virtual bool StartDoc(const wxString& message); + virtual void EndDoc(); + virtual void StartPage(); + virtual void EndPage(); + + wxRect GetPaperRect(); + +protected: + virtual void DoDrawBitmap(const wxBitmap &bmp, wxCoord x, wxCoord y, + bool useMask = false); + virtual bool DoBlit(wxCoord xdest, wxCoord ydest, + wxCoord width, wxCoord height, + wxDC *source, wxCoord xsrc, wxCoord ysrc, + int rop = wxCOPY, bool useMask = false, wxCoord xsrcMask = wxDefaultCoord, wxCoord ysrcMask = wxDefaultCoord); + virtual void DoGetSize(int *w, int *h) const + { + GetDeviceSize(w, h); + } + + + // init the dc + void Init(); + + wxPrintData m_printData; + +private: + DECLARE_DYNAMIC_CLASS_NO_COPY(wxPrinterDC) }; // Gets an HDC for the default printer configuration -WXHDC WXDLLEXPORT wxGetPrinterDC(int orientation); +// WXHDC WXDLLEXPORT wxGetPrinterDC(int orientation); + +// Gets an HDC for the specified printer configuration +WXHDC WXDLLEXPORT wxGetPrinterDC(const wxPrintData& data); + +#endif // wxUSE_PRINTING_ARCHITECTURE -#endif - // __DCPRINTH__ +#endif // _WX_MSW_DCPRINT_H_