fix warnings about unused parameters and functions in wxUniv build; also clean up wxGetPrinterDC() somewhat (a lot is left to do...)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@41209 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -56,6 +56,12 @@
|
|||||||
#define GDI_ERROR ((int)-1)
|
#define GDI_ERROR ((int)-1)
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#if defined(__WXUNIVERSAL__) || wxUSE_POSTSCRIPT_ARCHITECTURE_IN_MSW
|
||||||
|
#define wxUSE_PS_PRINTING 1
|
||||||
|
#else
|
||||||
|
#define wxUSE_PS_PRINTING 0
|
||||||
|
#endif
|
||||||
|
|
||||||
// ----------------------------------------------------------------------------
|
// ----------------------------------------------------------------------------
|
||||||
// wxWin macros
|
// wxWin macros
|
||||||
// ----------------------------------------------------------------------------
|
// ----------------------------------------------------------------------------
|
||||||
@@ -215,6 +221,8 @@ void wxPrinterDC::EndPage()
|
|||||||
::EndPage((HDC) m_hDC);
|
::EndPage((HDC) m_hDC);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#if !wxUSE_PS_PRINTING
|
||||||
|
|
||||||
// Returns default device and port names
|
// Returns default device and port names
|
||||||
static bool wxGetDefaultDeviceName(wxString& deviceName, wxString& portName)
|
static bool wxGetDefaultDeviceName(wxString& deviceName, wxString& portName)
|
||||||
{
|
{
|
||||||
@@ -273,66 +281,46 @@ static bool wxGetDefaultDeviceName(wxString& deviceName, wxString& portName)
|
|||||||
return ( !deviceName.empty() );
|
return ( !deviceName.empty() );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#endif // !wxUSE_PS_PRINTING
|
||||||
|
|
||||||
// Gets an HDC for the specified printer configuration
|
// Gets an HDC for the specified printer configuration
|
||||||
WXHDC WXDLLEXPORT wxGetPrinterDC(const wxPrintData& printDataConst)
|
WXHDC WXDLLEXPORT wxGetPrinterDC(const wxPrintData& printDataConst)
|
||||||
{
|
{
|
||||||
#if defined(__WXUNIVERSAL__) && (!defined(__WXMSW__) || wxUSE_POSTSCRIPT_ARCHITECTURE_IN_MSW)
|
#if wxUSE_PS_PRINTING
|
||||||
|
// TODO
|
||||||
#if 0
|
wxUnusedVar(printDataConst);
|
||||||
wxPostScriptPrintNativeData *data =
|
|
||||||
(wxPostScriptPrintNativeData *) printDataConst.GetNativeData();
|
|
||||||
// FIXME: how further ???
|
|
||||||
#else
|
|
||||||
return 0;
|
return 0;
|
||||||
#endif
|
#else // native Windows printing
|
||||||
|
|
||||||
#else // Postscript vs. native Windows
|
|
||||||
|
|
||||||
wxWindowsPrintNativeData *data =
|
wxWindowsPrintNativeData *data =
|
||||||
(wxWindowsPrintNativeData *) printDataConst.GetNativeData();
|
(wxWindowsPrintNativeData *) printDataConst.GetNativeData();
|
||||||
|
|
||||||
data->TransferFrom( printDataConst );
|
data->TransferFrom( printDataConst );
|
||||||
|
|
||||||
wxChar* driverName = (wxChar*) NULL;
|
wxString deviceName = printDataConst.GetPrinterName();
|
||||||
|
if ( deviceName.empty() )
|
||||||
wxString devNameStr = printDataConst.GetPrinterName();
|
|
||||||
wxChar* portName = (wxChar*) NULL; // Obsolete in WIN32
|
|
||||||
|
|
||||||
const wxChar* deviceName;
|
|
||||||
if ( !devNameStr )
|
|
||||||
deviceName = (wxChar*) NULL;
|
|
||||||
else
|
|
||||||
deviceName = devNameStr.c_str();
|
|
||||||
|
|
||||||
LPDEVMODE lpDevMode = (LPDEVMODE) NULL;
|
|
||||||
|
|
||||||
HGLOBAL hDevMode = (HGLOBAL)(DWORD) data->GetDevMode();
|
|
||||||
|
|
||||||
if ( hDevMode )
|
|
||||||
lpDevMode = (DEVMODE*) GlobalLock(hDevMode);
|
|
||||||
|
|
||||||
if ( !devNameStr )
|
|
||||||
{
|
{
|
||||||
// Retrieve the default device name
|
// Retrieve the default device name
|
||||||
wxString portName;
|
wxString portName;
|
||||||
if ( !wxGetDefaultDeviceName(devNameStr, portName) )
|
if ( !wxGetDefaultDeviceName(deviceName, portName) )
|
||||||
{
|
{
|
||||||
return 0; // Could not get default device name
|
return 0; // Could not get default device name
|
||||||
}
|
}
|
||||||
deviceName = devNameStr.c_str();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifdef __WIN32__
|
|
||||||
HDC hDC = CreateDC(driverName, deviceName, portName, (DEVMODE *) lpDevMode);
|
|
||||||
#else
|
|
||||||
HDC hDC = CreateDC(driverName, deviceName, portName, (LPSTR) lpDevMode);
|
|
||||||
#endif
|
|
||||||
|
|
||||||
if (hDevMode && lpDevMode)
|
HGLOBAL hDevMode = (HGLOBAL)(DWORD) data->GetDevMode();
|
||||||
GlobalUnlock(hDevMode);
|
|
||||||
|
DEVMODE *lpDevMode = hDevMode ? (DEVMODE *)::GlobalLock(hDevMode) : NULL;
|
||||||
|
|
||||||
|
HDC hDC = ::CreateDC(NULL, deviceName, NULL, lpDevMode);
|
||||||
|
if ( !hDC )
|
||||||
|
wxLogLastError(_T("CreateDC(printer)"));
|
||||||
|
|
||||||
|
if ( lpDevMode )
|
||||||
|
::GlobalUnlock(hDevMode);
|
||||||
|
|
||||||
return (WXHDC) hDC;
|
return (WXHDC) hDC;
|
||||||
#endif
|
#endif // PostScript/Windows printing
|
||||||
}
|
}
|
||||||
|
|
||||||
// ----------------------------------------------------------------------------
|
// ----------------------------------------------------------------------------
|
||||||
|
Reference in New Issue
Block a user