NT4/private/windows/spooler/localspl/gdi.c
2020-09-30 17:12:29 +02:00

98 lines
1.6 KiB
C

/*++
Copyright (c) 1990 - 1995 Microsoft Corporation
Module Name:
gdi.c
Abstract:
This module provides all the public exported APIs relating to Printer
and Job management for the Local Print Providor
Author:
Dave Snipp (DaveSn) 15-Mar-1991
Revision History:
--*/
#define NOMINMAX
#include <precomp.h>
#include "wingdip.h"
HANDLE
LocalCreatePrinterIC(
HANDLE hPrinter,
LPDEVMODE pDevMode
)
{
PSPOOL pSpool = (PSPOOL)hPrinter;
DWORD LastError=0;
if (pSpool && pSpool->signature == SJ_SIGNATURE &&
pSpool->pIniPrinter &&
pSpool->pIniPrinter->signature == IP_SIGNATURE) {
return((HANDLE)1);
} else {
SetLastError(ERROR_INVALID_HANDLE);
return NULL;
}
}
BOOL
LocalPlayGdiScriptOnPrinterIC(
HANDLE hPrinterIC,
LPBYTE pIn,
DWORD cIn,
LPBYTE pOut,
DWORD cOut,
DWORD ul
)
{
INT nBufferSize,iRet;
PUNIVERSAL_FONT_ID pufi;
LARGE_INTEGER TimeStamp;
if( cOut == sizeof(INT) )
{
pufi = NULL;
nBufferSize = 0;
}
else
{
pufi = (PUNIVERSAL_FONT_ID) (pOut + sizeof(INT));
nBufferSize = (cOut - sizeof(INT)) / sizeof(UNIVERSAL_FONT_ID);
}
iRet = GdiQueryFonts( pufi, nBufferSize, &TimeStamp );
if( iRet == -1 )
{
SPLASSERT( GetLastError() != 0 );
return(FALSE); // BUGUBG WHAT IS LAST ERROR ?, its real important....
}
else
{
*((INT*)pOut) = iRet;
return(TRUE);
}
}
BOOL
LocalDeletePrinterIC(
HANDLE hPrinterIC
)
{
return(TRUE);
}