]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/msw/dcprint.h
winundef.h serves for other compilators too with STL turned on.
[wxWidgets.git] / include / wx / msw / dcprint.h
index dc434d0f931a52606f55a41e6645dc7a6d6add1c..c39ddbfc8e5aeb42c029fa9c0a741001cf3cee0f 100644 (file)
@@ -1,38 +1,68 @@
 /////////////////////////////////////////////////////////////////////////////
 /////////////////////////////////////////////////////////////////////////////
-// Name:        dcprint.h
+// Name:        wx/msw/dcprint.h
 // Purpose:     wxPrinterDC class
 // Author:      Julian Smart
 // Modified by:
 // Created:     01/02/97
 // RCS-ID:      $Id$
 // 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_DCPRINT_H_
+#define _WX_DCPRINT_H_
 
 
-#ifdef __GNUG__
-#pragma interface "dcprint.h"
+#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA)
+    #pragma interface "dcprint.h"
 #endif
 
 #endif
 
+#if wxUSE_PRINTING_ARCHITECTURE
+
 #include "wx/dc.h"
 #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 from print data
+    wxPrinterDC(const wxPrintData& data);
+
+    wxPrinterDC(WXHDC theDC);
+
+    // override some base class virtuals
+    virtual bool StartDoc(const wxString& message);
+    virtual void EndDoc();
+    virtual void StartPage();
+    virtual void EndPage();
 
 
-  // Create a printer DC
-  wxPrinterDC(const wxString& driver, const wxString& device, const wxString& output, const bool interactive = TRUE, const int orientation = wxPORTRAIT);
-  wxPrinterDC(WXHDC theDC);
+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);
 
 
-  ~wxPrinterDC(void);
+    // init the dc
+    void Init();
+
+    wxPrintData m_printData;
+
+private:
+    DECLARE_DYNAMIC_CLASS_NO_COPY(wxPrinterDC)
 };
 
 // Gets an HDC for the default printer configuration
 };
 
 // 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
 
 #endif
-    // __DCPRINTH__
+    // _WX_DCPRINT_H_