mirror of https://github.com/tongzx/nt5src
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
268 lines
8.0 KiB
268 lines
8.0 KiB
__foldwin32sstuff __foldwin32sstuff;
|
|
foldstyleinitialization = true;
|
|
|
|
|
|
enablemapdirect1632 = true;
|
|
defaultholdwin16lock = true;
|
|
|
|
#include "types.thk"
|
|
|
|
typedef DWORD PFF;
|
|
typedef DWORD PFC;
|
|
typedef LPSTR PSZ;
|
|
typedef LPSTR PCONTEXTINFO;
|
|
|
|
/*
|
|
* fd_fnt.c: PFF FDENTRY FdLoadFontFile( PSZ pszFile, ULONG ulLangageID )
|
|
* fd_fnt.c: LONG FDENTRY FdUnloadFontFile( PFF pFF )
|
|
* fd_fnt.c: LONG FDENTRY FdGetFontData( PFF pFF, ULONG ulTable, ULONG ulStart, P1616 pb1616, ULONG cb )
|
|
* fd_fnt.c: LONG FDENTRY FdQueryFontMetrics( PFF pff, ULONG ulOffset, P1616 pfm16, ULONG cMetricLen )
|
|
* fd_fnt.c: LONG FDENTRY FdGetGlyphIndexes( PFF pff, ULONG iQuery, P1616 pBuffer16, ULONG cb, P1616 pagi16, ULONG ulgiStart )
|
|
* fd_hfc.c: LONG FDENTRY FdEnable( void )
|
|
* fd_hfc.c: PFC FDENTRY FdOpenFontContext( PFF pff )
|
|
* fd_hfc.c: LONG FDENTRY FdSetFontContext( PFC pfc, PCONTEXTINFO pci )
|
|
* fd_hfc.c: LONG FDENTRY FdCloseFontContext( PFC pfc )
|
|
* fd_query.c:LONG FDENTRY FdQueryFaceAttr( PFC pfc, ULONG iQuery, P1616 pBuffer16, ULONG cb, P1616 pagi16, ULONG ulgiStart )
|
|
* fd_query.c:LONG FDENTRY FdQueryCharAttr( PFC pfc, ULONG dwQuery, P1616 pbmm16, P1616 lpBuffer16, ULONG dwBuffer, ULONG dwGlyph )
|
|
* fd_vdmx.c: long FDENTRY Em2FontHeight( PFF pff, short ResX, short ResY, short EM )
|
|
*/
|
|
|
|
|
|
PFF FdLoadFontFile( PSZ pszFile, ULONG ulLangageID) =
|
|
PFF FdLoadFontFile( PSZ pszFile, ULONG ulLangageID)
|
|
{}
|
|
|
|
LONG FdUnloadFontFile( PFF pFF) =
|
|
LONG FdUnloadFontFile( PFF pFF)
|
|
{}
|
|
|
|
LONG FdGetFontData( PFF pFF, ULONG ulTable, ULONG ulStart, PBYTE pb,
|
|
ULONG cb) =
|
|
LONG FdGetFontData( PFF pFF, ULONG ulTable, ULONG ulStart, PBYTE pb,
|
|
ULONG cb)
|
|
{}
|
|
|
|
LONG FdQueryFontMetrics( PFF pff, ULONG ulOffset, PBYTE pfm,
|
|
ULONG cMetricLen) =
|
|
LONG FdQueryFontMetrics( PFF pff, ULONG ulOffset, PBYTE pfm,
|
|
ULONG cMetricLen)
|
|
{}
|
|
|
|
|
|
LONG FdGetGlyphIndexes( PFF pff, LPWORD pBuffer, ULONG cb, LPWORD pagi, ULONG ulgiStart) =
|
|
LONG FdGetGlyphIndexes( PFF pff, LPWORD pBuffer, ULONG cb, LPWORD pagi, ULONG ulgiStart)
|
|
{}
|
|
|
|
|
|
LONG FdEnable() =
|
|
LONG FdEnable( )
|
|
{}
|
|
|
|
PFC FdOpenFontContext( PFF pff) =
|
|
PFC FdOpenFontContext( PFF pff)
|
|
{}
|
|
|
|
LONG FdSetFontContext( PFC pfc, PCONTEXTINFO pci) =
|
|
LONG FdSetFontContext( PFC pfc, PCONTEXTINFO pci)
|
|
{}
|
|
|
|
LONG FdCloseFontContext( PFC pfc) =
|
|
LONG FdCloseFontContext( PFC pfc)
|
|
{}
|
|
|
|
LONG FdQueryFaceAttr( PFC pfc, ULONG iQuery, PBYTE pBuffer, ULONG cb,
|
|
PBYTE pagi, ULONG ulgiStart) =
|
|
LONG FdQueryFaceAttr( PFC pfc, ULONG iQuery, PBYTE pBuffer, ULONG cb,
|
|
PBYTE pagi, ULONG ulgiStart)
|
|
{}
|
|
|
|
LONG FdQueryCharAttr( PFC pfc, ULONG dwQuery, PBYTE pbmm, PBYTE lpBuffer,
|
|
ULONG dwBuffer, ULONG dwGlyph) =
|
|
LONG FdQueryCharAttr( PFC pfc, ULONG dwQuery, PBYTE pbmm, PBYTE lpBuffer,
|
|
ULONG dwBuffer, ULONG dwGlyph)
|
|
{}
|
|
|
|
LONG Em2FontHeight( PFF pff, UINT ResX, UINT ResY, UINT EM) =
|
|
LONG Em2FontHeight( PFF pff, UINT ResX, UINT ResY, UINT EM)
|
|
{}
|
|
|
|
|
|
LONG FracSqrtFar( LONG lFrac ) =
|
|
LONG HackFracSqrt( LONG lFrac )
|
|
{}
|
|
|
|
|
|
LONG fduFindFontFile( PSZ pszFile, PSZ pszFullPath, DWORD dwFullPath ) =
|
|
LONG fduFindFontFile( PSZ pszFile, PSZ pszFullPath, DWORD dwFullPath )
|
|
{}
|
|
|
|
|
|
/* 32bit font file interface */
|
|
/* Releasing the lock is essential because we are going to */
|
|
/* be calling LoadLibrary in kernel32. Scary! */
|
|
/* 12/19/94 - mikegi */
|
|
|
|
LONG Gdi32Font( DWORD dwHandle, DWORD dwFunction, PSZ lpszBuffer ) =
|
|
LONG Gdi32Font( DWORD dwHandle, DWORD dwFunction, PSZ lpszBuffer )
|
|
{
|
|
releasewin16lock = true;
|
|
}
|
|
|
|
|
|
/* ---------------------------------------------------------------------- */
|
|
/* The following thunks are for allocating 32bit heap memory from GDI16 */
|
|
/* ---------------------------------------------------------------------- */
|
|
LONG GDI32VirtualAlloc (DWORD dwSize) =
|
|
LONG GDI32VirtualAlloc (DWORD dwSize)
|
|
{}
|
|
|
|
BOOL GDI32VirtualFree (DWORD lpAdr, DWORD dwSize) =
|
|
BOOL GDI32VirtualFree (DWORD lpAdr, DWORD dwSize)
|
|
{}
|
|
|
|
BOOL GDI32UnmapViewOfFile(DWORD) =
|
|
BOOL GDI32UnmapViewOfFile(DWORD)
|
|
{}
|
|
|
|
/* ---------------------------------------------------------------------- */
|
|
/* */
|
|
/* The Following Thunks Are for the Spooler API's */
|
|
/* */
|
|
/* ---------------------------------------------------------------------- */
|
|
|
|
/* Make defines to translate simple ptrs */
|
|
typedef BYTE TCHAR;
|
|
|
|
/* Define structures for compiler so it can repack appropriately */
|
|
|
|
typedef struct _DOC_INFO_2 { /* dci1 */
|
|
LPSTR pDocName;
|
|
LPSTR pOutputFile;
|
|
LPSTR pDatatype;
|
|
DWORD fMode;
|
|
DWORD channel;
|
|
DWORD JobId;
|
|
} DOCINFO;
|
|
typedef DOCINFO *LPDOCINFO;
|
|
|
|
typedef struct _PRINTER_DEFAULTS { /* pd */
|
|
LPSTR pDatatype;
|
|
LPSTR pDevMode;
|
|
DWORD AccessGranted ;
|
|
} PRINTER_DEFAULTS;
|
|
typedef PRINTER_DEFAULTS *LPPRINTER_DEFAULTS;
|
|
|
|
BOOL OpenPrinterA(LPSTR lpszPrinter, LPDWORD hPrinter, LPPRINTER_DEFAULTS lppd) =
|
|
BOOL OpenPrinterA(LPSTR lpszPrinter, LPDWORD hPrinter, LPPRINTER_DEFAULTS lppd)
|
|
{
|
|
errorcode = 0;
|
|
}
|
|
|
|
BOOL ThkDeleteJob(DWORD hPrinter, DWORD dwJobId) =
|
|
BOOL ThkDeleteJob(DWORD hPrinter, DWORD dwJobId)
|
|
{
|
|
errorcode = 0;
|
|
}
|
|
|
|
DWORD StartDocPrinterA(DWORD hPrinter, DWORD dwLevel, LPDOCINFO lpbDocInfo) =
|
|
DWORD StartDocPrinterA(DWORD hPrinter, DWORD dwLevel, LPDOCINFO lpbDocInfo)
|
|
{
|
|
errorcode = 0;
|
|
}
|
|
|
|
BOOL StartPagePrinter(DWORD hPrinter) =
|
|
BOOL StartPagePrinter(DWORD hPrinter)
|
|
{
|
|
errorcode = 0;
|
|
}
|
|
|
|
BOOL WritePrinter(DWORD hPrinter, LPVOID pBuf, DWORD cbBuf, LPDWORD lpdwWritten) =
|
|
BOOL WritePrinter(DWORD hPrinter, LPVOID pBuf, DWORD cbBuf, LPDWORD lpdwWritten)
|
|
{
|
|
errorcode = 0;
|
|
}
|
|
|
|
BOOL EndPagePrinter(DWORD hPrinter) =
|
|
BOOL EndPagePrinter(DWORD hPrinter)
|
|
{
|
|
errorcode = 0;
|
|
}
|
|
|
|
BOOL EndDocPrinter(DWORD hPrinter) =
|
|
BOOL EndDocPrinter(DWORD hPrinter)
|
|
{
|
|
errorcode = 0;
|
|
}
|
|
|
|
BOOL ClosePrinter(DWORD hPrinter) =
|
|
BOOL ClosePrinter(DWORD hPrinter)
|
|
{
|
|
errorcode = 0;
|
|
}
|
|
|
|
BOOL AbortPrinter(DWORD hPrinter) =
|
|
BOOL AbortPrinter(DWORD hPrinter)
|
|
{
|
|
errorcode = 0;
|
|
}
|
|
|
|
DWORD PrinterMessageBoxA(DWORD hPrinter, DWORD Error, DWORD hWnd, LPSTR pText,
|
|
LPSTR pCaption, DWORD dwType) =
|
|
DWORD PrinterMessageBoxA(DWORD hPrinter, DWORD Error, DWORD hWnd, LPSTR pText,
|
|
LPSTR pCaption, DWORD dwType)
|
|
{
|
|
errorcode = 0;
|
|
}
|
|
|
|
DWORD ThkGetPrinterData(LPSTR lpPrinter, LPSTR pValueName, LPDWORD pType, LPBYTE bData, DWORD nSize, LPDWORD pcbNeeded) =
|
|
DWORD ThkGetPrinterData(LPSTR lpPrinter, LPSTR pValueName, LPDWORD pType, LPBYTE bData, DWORD nSize, LPDWORD pcbNeeded)
|
|
{
|
|
errorcode = 0;
|
|
}
|
|
|
|
/* this is added for gdi to launch splexe32.exe */
|
|
VOID RunSpoolExe() =
|
|
VOID RunSpoolExe()
|
|
{
|
|
releasewin16lock = true; //This sucker calls WinExec.
|
|
errorcode = 0;
|
|
}
|
|
|
|
/* this is added for gdi to clean up spooler ipc data for the process when */
|
|
/* it terminates */
|
|
DWORD ThkDetachSpooler(DWORD dwID) =
|
|
DWORD ThkDetachSpooler(DWORD dwID)
|
|
{
|
|
errorcode = 0;
|
|
}
|
|
|
|
/* portions of the EMF system need to call PlayEnhMetaFile */
|
|
/* The last parameter is an LPRECTL on both sides so no packing needed */
|
|
BOOL PlayEnhMetaFile(HDC hdc, HANDLE hemf, LPSTR) =
|
|
BOOL PlayEnhMetaFile(HDC hdc, HANDLE hemf, LPSTR)
|
|
{
|
|
errorcode = 0;
|
|
}
|
|
|
|
BOOL NoLockPlayEnhMetaFile(HDC hdc, HANDLE hemf, LPSTR) =
|
|
BOOL NoLockPlayEnhMetaFile(HDC hdc, HANDLE hemf, LPSTR)
|
|
{
|
|
errorcode = 0;
|
|
}
|
|
|
|
BOOL gdiPlaySpoolStream(LPSTR, LPSTR, LPSTR, ULONG, ULONG, HDC) =
|
|
BOOL gdiPlaySpoolStream(LPSTR, LPSTR, LPSTR, ULONG, ULONG, HDC)
|
|
{
|
|
errorcode = 0;
|
|
}
|
|
|
|
/* ---------------------------------------------------------------------- */
|
|
/* */
|
|
/* The Following Thunks Are for making Inverse color tables (INVCMAP.C) */
|
|
/* */
|
|
/* ---------------------------------------------------------------------- */
|
|
|
|
BOOL MakeITable(LPBYTE, LPDWORD, INT) =
|
|
BOOL MakeITable(LPBYTE, LPDWORD, INT)
|
|
{
|
|
}
|