/////////////////////////////////////////////////////////////////////////////
-// Name: dcprint.h
+// Name: wx/os2/dcprint.h
// Purpose: wxPrinterDC class
// Author: David Webster
// Modified by:
#ifndef _WX_DCPRINT_H_
#define _WX_DCPRINT_H_
-#ifdef __GNUG__
-#pragma interface "dcprint.h"
-#endif
-
#if wxUSE_PRINTING_ARCHITECTURE
#include "wx/dc.h"
#include "wx/cmndata.h"
+#include "wx/os2/dc.h"
-class WXDLLEXPORT wxPrinterDC: public wxDC
+class WXDLLIMPEXP_CORE wxPrinterDCImpl: public wxPMDCImpl
{
public:
- DECLARE_CLASS(wxPrinterDC)
+ // Create a printer DC
- // Create a printer DC [obsolete]
- wxPrinterDC(const wxString& driver, const wxString& device, const wxString& output, bool interactive = TRUE, int orientation = wxPORTRAIT);
+ // Create from print data
+ wxPrinterDCImpl( wxPrinterDC *owner, const wxPrintData& rData );
+ wxPrinterDCImpl( wxPrinterDC *owner, WXHDC hTheDC);
- // Create from print data
- wxPrinterDC(const wxPrintData& data);
+ // override some base class virtuals
+ virtual bool StartDoc(const wxString& rsMessage);
+ virtual void EndDoc(void);
+ virtual void StartPage(void);
+ virtual void EndPage(void);
- wxPrinterDC(WXHDC theDC);
+ virtual wxRect GetPaperRect() const;
- ~wxPrinterDC();
+protected:
+ virtual void DoDrawBitmap( const wxBitmap& rBmp
+ ,wxCoord vX
+ ,wxCoord vY
+ ,bool bUseMask = FALSE
+ );
+ virtual bool DoBlit( wxCoord vXdest
+ ,wxCoord vYdest
+ ,wxCoord vWidth
+ ,wxCoord vHeight
+ ,wxDC* pSource
+ ,wxCoord vXsrc
+ ,wxCoord vYsrc
+ ,wxRasterOperationMode nRop = wxCOPY
+ ,bool bUseMask = FALSE
+ ,wxCoord vXsrcMask = -1
+ ,wxCoord vYsrcMask = -1
+ );
- bool StartDoc(const wxString& message);
- void EndDoc(void);
- void StartPage(void);
- void EndPage(void);
+ // init the dc
+ void Init(void);
-protected:
- wxPrintData m_printData;
-};
+ wxPrintData m_printData;
+private:
+ DECLARE_CLASS(wxPrinterDCImpl)
+ DECLARE_NO_COPY_CLASS(wxPrinterDCImpl)
+}; // end of CLASS wxPrinterDC
// Gets an HDC for the specified printer configuration
-WXHDC WXDLLEXPORT wxGetPrinterDC(const wxPrintData& data);
+WXHDC WXDLLIMPEXP_CORE wxGetPrinterDC(const wxPrintData& rData);
#endif // wxUSE_PRINTING_ARCHITECTURE