/////////////////////////////////////////////////////////////////////////////
// Name: dcprint.h
// Purpose: wxPrinterDC class
-// Author: AUTHOR
+// Author: David Webster
// Modified by:
-// Created: ??/??/98
+// Created: 09/12/99
// RCS-ID: $Id$
-// Copyright: (c) AUTHOR
-// Licence: wxWindows licence
+// Copyright: (c) David Webster
+// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
#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"
class WXDLLEXPORT wxPrinterDC: public wxDC
{
public:
- DECLARE_CLASS(wxPrinterDC)
+ // Create a printer DC [obsolete]
+ wxPrinterDC( const wxString& rsDriver
+ ,const wxString& rsDevice
+ ,const wxString& rsOutput
+ ,bool bInteractive = TRUE
+ ,int nOrientation = wxPORTRAIT
+ );
+
+ // Create from print data
+ wxPrinterDC(const wxPrintData& rData);
+ wxPrinterDC(WXHDC hTheDC);
+
+ bool StartDoc(const wxString& rsMessage);
+ void EndDoc(void);
+ void StartPage(void);
+ void EndPage(void);
+
+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
+ ,int nRop = wxCOPY
+ ,bool bUseMask = FALSE
+ ,wxCoord vXsrcMask = -1
+ ,wxCoord vYsrcMask = -1
+ );
+
+ // init the dc
+ void Init(void);
+
+ wxPrintData m_printData;
+private:
+ DECLARE_CLASS(wxPrinterDC)
+}; // end of CLASS wxPrinterDC
- // Create a printer DC
- wxPrinterDC(const wxString& driver, const wxString& device, const wxString& output, bool interactive = TRUE, int orientation = wxPORTRAIT);
+// Gets an HDC for the specified printer configuration
+WXHDC WXDLLEXPORT wxGetPrinterDC(const wxPrintData& rData);
- ~wxPrinterDC();
-};
+#endif // wxUSE_PRINTING_ARCHITECTURE
#endif
// _WX_DCPRINT_H_