// headers
// ----------------------------------------------------------------------------
-#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA)
- #pragma implementation "dcprint.h"
-#endif
-
// For compilers that support precompilation, includes "wx.h".
#include "wx/wxprec.h"
#pragma hdrstop
#endif
+#if wxUSE_PRINTING_ARCHITECTURE
+
+#include "wx/dcprint.h"
+
#ifndef WX_PRECOMP
#include "wx/string.h"
#include "wx/log.h"
#include "wx/window.h"
#include "wx/dcmemory.h"
+ #include "wx/math.h"
#endif
-#if wxUSE_PRINTING_ARCHITECTURE
-
#include "wx/msw/private.h"
#if wxUSE_WXDIB
-#include "wx/msw/dib.h"
+ #include "wx/msw/dib.h"
#endif
-#include "wx/dcprint.h"
-#include "math.h"
-
-#if wxUSE_COMMON_DIALOGS
- #include <commdlg.h>
-#endif
+#include "wx/printdlg.h"
+#include "wx/msw/printdlg.h"
+#include "wx/msw/wrapcdlg.h"
#ifndef __WIN32__
#include <print.h>
#endif
wxString filename(m_printData.GetFilename());
- if (filename.IsEmpty())
+ if (filename.empty())
docinfo.lpszOutput = NULL;
else
docinfo.lpszOutput = (const wxChar *) filename;
-#if defined(__WIN95__)
docinfo.lpszDatatype = NULL;
docinfo.fwType = 0;
-#endif
if (!m_hDC)
return false;
GlobalFree(pd.hDevMode);
pd.hDevMode=NULL;
}
- return ( deviceName != wxEmptyString );
+ return ( !deviceName.empty() );
}
// Gets an HDC for the specified printer configuration
WXHDC WXDLLEXPORT wxGetPrinterDC(const wxPrintData& printDataConst)
{
- wxPrintData printData = printDataConst;
- printData.ConvertToNative();
+#if defined(__WXUNIVERSAL__) && (!defined(__WXMSW__) || wxUSE_POSTSCRIPT_ARCHITECTURE_IN_MSW)
+
+#if 0
+ wxPostScriptPrintNativeData *data =
+ (wxPostScriptPrintNativeData *) printDataConst.GetNativeData();
+ // FIXME: how further ???
+#else
+ return 0;
+#endif
+
+#else // Postscript vs. native Windows
+
+ wxWindowsPrintNativeData *data =
+ (wxWindowsPrintNativeData *) printDataConst.GetNativeData();
+
+ data->TransferFrom( printDataConst );
wxChar* driverName = (wxChar*) NULL;
- wxString devNameStr = printData.GetPrinterName();
+ wxString devNameStr = printDataConst.GetPrinterName();
wxChar* portName = (wxChar*) NULL; // Obsolete in WIN32
const wxChar* deviceName;
LPDEVMODE lpDevMode = (LPDEVMODE) NULL;
- HGLOBAL hDevMode = (HGLOBAL)(DWORD) printData.GetNativeData();
+ HGLOBAL hDevMode = (HGLOBAL)(DWORD) data->GetDevMode();
if ( hDevMode )
lpDevMode = (DEVMODE*) GlobalLock(hDevMode);
GlobalUnlock(hDevMode);
return (WXHDC) hDC;
+#endif
}
// ----------------------------------------------------------------------------
if ( !(::GetDeviceCaps(GetHdc(), RASTERCAPS) & RC_STRETCHDIB) ||
!DrawBitmapUsingStretchDIBits(GetHdc(), bmp, x, y) )
{
- // no support for StretchDIBits() or an error occured if we got here
+ // no support for StretchDIBits() or an error occurred if we got here
wxMemoryDC memDC;
memDC.SelectObject(bmp);