WINAPI
CancelDC(HDC hDC)
{
- PDC_ATTR pDc_Attr;
-
- if (GDI_HANDLE_GET_TYPE(hDC) != GDI_OBJECT_TYPE_DC &&
- GDI_HANDLE_GET_TYPE(hDC) != GDI_OBJECT_TYPE_METADC )
- {
- PLDC pLDC = GdiGetLDC(hDC);
- if ( !pLDC )
- {
- SetLastError(ERROR_INVALID_HANDLE);
- return FALSE;
- }
- /* If a document has started set it to die. */
- if (pLDC->Flags & LDC_INIT_DOCUMENT) pLDC->Flags |= LDC_KILL_DOCUMENT;
+ PDC_ATTR pDc_Attr;
+
+ if (GDI_HANDLE_GET_TYPE(hDC) != GDI_OBJECT_TYPE_DC &&
+ GDI_HANDLE_GET_TYPE(hDC) != GDI_OBJECT_TYPE_METADC )
+ {
+ PLDC pLDC = GdiGetLDC(hDC);
+ if ( !pLDC )
+ {
+ SetLastError(ERROR_INVALID_HANDLE);
+ return FALSE;
+ }
+ /* If a document has started set it to die. */
+ if (pLDC->Flags & LDC_INIT_DOCUMENT) pLDC->Flags |= LDC_KILL_DOCUMENT;
- return NtGdiCancelDC(hDC);
- }
+ return NtGdiCancelDC(hDC);
+ }
- if (GdiGetHandleUserData((HGDIOBJ) hDC, GDI_OBJECT_TYPE_DC, (PVOID) &pDc_Attr))
- {
- pDc_Attr->ulDirty_ &= ~DC_PLAYMETAFILE;
- return TRUE;
- }
+ if (GdiGetHandleUserData((HGDIOBJ) hDC, GDI_OBJECT_TYPE_DC, (PVOID) &pDc_Attr))
+ {
+ pDc_Attr->ulDirty_ &= ~DC_PLAYMETAFILE;
+ return TRUE;
+ }
- return FALSE;
+ return FALSE;
}
INT cbInput,
LPCSTR lpszInData)
{
- if (GDI_HANDLE_GET_TYPE(hDC) == GDI_OBJECT_TYPE_DC)
- return NtGdiDrawEscape(hDC, nEscape, cbInput, (LPSTR) lpszInData);
+ if (GDI_HANDLE_GET_TYPE(hDC) == GDI_OBJECT_TYPE_DC)
+ return NtGdiDrawEscape(hDC, nEscape, cbInput, (LPSTR) lpszInData);
- if (GDI_HANDLE_GET_TYPE(hDC) != GDI_OBJECT_TYPE_METADC)
- {
- PLDC pLDC = GdiGetLDC(hDC);
- if ( pLDC )
- {
- if (pLDC->Flags & LDC_META_PRINT)
+ if (GDI_HANDLE_GET_TYPE(hDC) != GDI_OBJECT_TYPE_METADC)
+ {
+ PLDC pLDC = GdiGetLDC(hDC);
+ if ( pLDC )
{
+ if (pLDC->Flags & LDC_META_PRINT)
+ {
// if (nEscape != QUERYESCSUPPORT)
// return EMFDRV_WriteEscape(hDC, nEscape, cbInput, lpszInData, EMR_DRAWESCAPE);
- return NtGdiDrawEscape(hDC, nEscape, cbInput, (LPSTR) lpszInData);
+ return NtGdiDrawEscape(hDC, nEscape, cbInput, (LPSTR) lpszInData);
+ }
}
- }
- SetLastError(ERROR_INVALID_HANDLE);
- }
- return 0;
+ SetLastError(ERROR_INVALID_HANDLE);
+ }
+ return 0;
}
switch (nObjectType)
{
- case OBJ_BRUSH:
- Size = sizeof(LOGBRUSH);
- break;
+ case OBJ_BRUSH:
+ Size = sizeof(LOGBRUSH);
+ break;
- case OBJ_PEN:
- Size = sizeof(LOGPEN);
- break;
+ case OBJ_PEN:
+ Size = sizeof(LOGPEN);
+ break;
- default:
- SetLastError(ERROR_INVALID_PARAMETER);
- return 0;
+ default:
+ SetLastError(ERROR_INVALID_PARAMETER);
+ return 0;
}
ObjectsCount = NtGdiEnumObjects(hdc, nObjectType, 0, NULL);
UINT
WINAPI
GetBoundsRect(
- HDC hdc,
- LPRECT lprcBounds,
- UINT flags
- )
+ HDC hdc,
+ LPRECT lprcBounds,
+ UINT flags
+)
{
return NtGdiGetBoundsRect(hdc,lprcBounds,flags & DCB_RESET);
}
UINT
WINAPI
GetMetaFileBitsEx(
- HMETAFILE a0,
- UINT a1,
- LPVOID a2
- )
+ HMETAFILE a0,
+ UINT a1,
+ LPVOID a2
+)
{
- UNIMPLEMENTED;
- SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
- return 0;
+ UNIMPLEMENTED;
+ SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
+ return 0;
}
/*
BOOL
WINAPI
PlayMetaFile(
- HDC a0,
- HMETAFILE a1
- )
+ HDC a0,
+ HMETAFILE a1
+)
{
- UNIMPLEMENTED;
- SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
- return FALSE;
+ UNIMPLEMENTED;
+ SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
+ return FALSE;
}
/*
HMETAFILE
WINAPI
SetMetaFileBitsEx(
- UINT size,
- CONST BYTE *lpData
- )
+ UINT size,
+ CONST BYTE *lpData
+)
{
const METAHEADER *mh_in = (const METAHEADER *)lpData;
if (size & 1) return 0;
if (!size || mh_in->mtType != METAFILE_MEMORY || mh_in->mtVersion != 0x300 ||
- mh_in->mtHeaderSize != sizeof(METAHEADER) / 2)
+ mh_in->mtHeaderSize != sizeof(METAHEADER) / 2)
{
SetLastError(ERROR_INVALID_DATA);
return 0;
}
- UNIMPLEMENTED;
- SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
- return 0;
+ UNIMPLEMENTED;
+ SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
+ return 0;
}
/*
BOOL
WINAPI
PlayMetaFileRecord(
- HDC a0,
- LPHANDLETABLE a1,
- LPMETARECORD a2,
- UINT a3
- )
+ HDC a0,
+ LPHANDLETABLE a1,
+ LPMETARECORD a2,
+ UINT a3
+)
{
- UNIMPLEMENTED;
- SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
- return FALSE;
+ UNIMPLEMENTED;
+ SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
+ return FALSE;
}
BOOL
WINAPI
EnumMetaFile(
- HDC a0,
- HMETAFILE a1,
- MFENUMPROC a2,
- LPARAM a3
- )
+ HDC a0,
+ HMETAFILE a1,
+ MFENUMPROC a2,
+ LPARAM a3
+)
{
- UNIMPLEMENTED;
- SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
- return FALSE;
+ UNIMPLEMENTED;
+ SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
+ return FALSE;
}
/*
BOOL
WINAPI
DeleteEnhMetaFile(
- HENHMETAFILE a0
- )
+ HENHMETAFILE a0
+)
{
- UNIMPLEMENTED;
- SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
- return FALSE;
+ UNIMPLEMENTED;
+ SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
+ return FALSE;
}
/*
BOOL
WINAPI
EnumEnhMetaFile(
- HDC hdc,
- HENHMETAFILE hmf,
- ENHMFENUMPROC callback,
- LPVOID data,
- CONST RECT *lpRect
- )
+ HDC hdc,
+ HENHMETAFILE hmf,
+ ENHMFENUMPROC callback,
+ LPVOID data,
+ CONST RECT *lpRect
+)
{
if(!lpRect && hdc)
{
return FALSE;
}
- UNIMPLEMENTED;
- SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
- return FALSE;
+ UNIMPLEMENTED;
+ SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
+ return FALSE;
}
/*
UINT
WINAPI
GetEnhMetaFileBits(
- HENHMETAFILE a0,
- UINT a1,
- LPBYTE a2
- )
+ HENHMETAFILE a0,
+ UINT a1,
+ LPBYTE a2
+)
{
- UNIMPLEMENTED;
- SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
- return 0;
+ UNIMPLEMENTED;
+ SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
+ return 0;
}
UINT
WINAPI
GetEnhMetaFileHeader(
- HENHMETAFILE a0,
- UINT a1,
- LPENHMETAHEADER a2
- )
+ HENHMETAFILE a0,
+ UINT a1,
+ LPENHMETAHEADER a2
+)
{
- UNIMPLEMENTED;
- SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
- return 0;
+ UNIMPLEMENTED;
+ SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
+ return 0;
}
/*
UINT
WINAPI
GetEnhMetaFilePaletteEntries(
- HENHMETAFILE a0,
- UINT a1,
- LPPALETTEENTRY a2
- )
+ HENHMETAFILE a0,
+ UINT a1,
+ LPPALETTEENTRY a2
+)
{
- UNIMPLEMENTED;
- SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
- return 0;
+ UNIMPLEMENTED;
+ SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
+ return 0;
}
/*
UINT
WINAPI
GetWinMetaFileBits(
- HENHMETAFILE a0,
- UINT a1,
- LPBYTE a2,
- INT a3,
- HDC a4
- )
+ HENHMETAFILE a0,
+ UINT a1,
+ LPBYTE a2,
+ INT a3,
+ HDC a4
+)
{
- UNIMPLEMENTED;
- SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
- return 0;
+ UNIMPLEMENTED;
+ SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
+ return 0;
}
BOOL
WINAPI
PlayEnhMetaFile(
- HDC a0,
- HENHMETAFILE a1,
- CONST RECT *a2
- )
+ HDC a0,
+ HENHMETAFILE a1,
+ CONST RECT *a2
+)
{
- UNIMPLEMENTED;
- SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
- return FALSE;
+ UNIMPLEMENTED;
+ SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
+ return FALSE;
}
BOOL
WINAPI
PlayEnhMetaFileRecord(
- HDC a0,
- LPHANDLETABLE a1,
- CONST ENHMETARECORD *a2,
- UINT a3
- )
+ HDC a0,
+ LPHANDLETABLE a1,
+ CONST ENHMETARECORD *a2,
+ UINT a3
+)
{
- UNIMPLEMENTED;
- SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
- return FALSE;
+ UNIMPLEMENTED;
+ SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
+ return FALSE;
}
HENHMETAFILE
WINAPI
SetEnhMetaFileBits(
- UINT a0,
- CONST BYTE *a1
- )
+ UINT a0,
+ CONST BYTE *a1
+)
{
- UNIMPLEMENTED;
- SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
- return 0;
+ UNIMPLEMENTED;
+ SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
+ return 0;
}
HENHMETAFILE
WINAPI
SetWinMetaFileBits(
- UINT a0,
- CONST BYTE *a1,
- HDC a2,
- CONST METAFILEPICT *a3)
+ UINT a0,
+ CONST BYTE *a1,
+ HDC a2,
+ CONST METAFILEPICT *a3)
{
- UNIMPLEMENTED;
- SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
- return 0;
+ UNIMPLEMENTED;
+ SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
+ return 0;
}
BOOL
WINAPI
GdiComment(
- HDC hDC,
- UINT bytes,
- CONST BYTE *buffer
- )
+ HDC hDC,
+ UINT bytes,
+ CONST BYTE *buffer
+)
{
#if 0
- if (GDI_HANDLE_GET_TYPE(hDC) == GDI_OBJECT_TYPE_EMF)
- {
- PLDC pLDC = GdiGetLDC(hDC);
- if ( !pLDC )
- {
- SetLastError(ERROR_INVALID_HANDLE);
- return FALSE;
- }
- if (pLDC->iType == LDC_EMFLDC)
- { // Wine port
- return EMFDRV_GdiComment( hDC, bytes, buffer );
- }
- }
+ if (GDI_HANDLE_GET_TYPE(hDC) == GDI_OBJECT_TYPE_EMF)
+ {
+ PLDC pLDC = GdiGetLDC(hDC);
+ if ( !pLDC )
+ {
+ SetLastError(ERROR_INVALID_HANDLE);
+ return FALSE;
+ }
+ if (pLDC->iType == LDC_EMFLDC)
+ {
+ // Wine port
+ return EMFDRV_GdiComment( hDC, bytes, buffer );
+ }
+ }
#endif
- return FALSE;
+ return FALSE;
}
BOOL
WINAPI
SetColorAdjustment(
- HDC hdc,
- CONST COLORADJUSTMENT *a1
- )
+ HDC hdc,
+ CONST COLORADJUSTMENT *a1
+)
{
- UNIMPLEMENTED;
- SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
- return FALSE;
+ UNIMPLEMENTED;
+ SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
+ return FALSE;
}
/*
UnrealizeObject(HGDIOBJ hgdiobj)
{
BOOL retValue = TRUE;
-/*
- Win 2k Graphics API, Black Book. by coriolis.com
- Page 62, Note that Steps 3, 5, and 6 are not required for Windows NT(tm)
- and Windows 2000(tm).
+ /*
+ Win 2k Graphics API, Black Book. by coriolis.com
+ Page 62, Note that Steps 3, 5, and 6 are not required for Windows NT(tm)
+ and Windows 2000(tm).
- Step 5. UnrealizeObject(hTrackBrush);
- */
-/*
- msdn.microsoft.com,
- "Windows 2000/XP: If hgdiobj is a brush, UnrealizeObject does nothing,
- and the function returns TRUE. Use SetBrushOrgEx to set the origin of
- a brush."
- */
+ Step 5. UnrealizeObject(hTrackBrush);
+ */
+ /*
+ msdn.microsoft.com,
+ "Windows 2000/XP: If hgdiobj is a brush, UnrealizeObject does nothing,
+ and the function returns TRUE. Use SetBrushOrgEx to set the origin of
+ a brush."
+ */
if (GDI_HANDLE_GET_TYPE(hgdiobj) != GDI_OBJECT_TYPE_BRUSH)
{
retValue = NtGdiUnrealizeObject(hgdiobj);
int
WINAPI
SetICMMode(
- HDC hdc,
- int iEnableICM
- )
+ HDC hdc,
+ int iEnableICM
+)
{
/*FIXME: Assume that ICM is always off, and cannot be turned on */
if (iEnableICM == ICM_OFF) return ICM_OFF;
if (iEnableICM == ICM_ON) return 0;
if (iEnableICM == ICM_QUERY) return ICM_OFF;
- UNIMPLEMENTED;
- SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
- return 0;
+ UNIMPLEMENTED;
+ SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
+ return 0;
}
BOOL
WINAPI
CheckColorsInGamut(
- HDC a0,
- LPVOID a1,
- LPVOID a2,
- DWORD a3
- )
+ HDC a0,
+ LPVOID a1,
+ LPVOID a2,
+ DWORD a3
+)
{
- UNIMPLEMENTED;
- SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
- return FALSE;
+ UNIMPLEMENTED;
+ SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
+ return FALSE;
}
BOOL
WINAPI
ColorMatchToTarget(
- HDC a0,
- HDC a1,
- DWORD a2
- )
+ HDC a0,
+ HDC a1,
+ DWORD a2
+)
{
- UNIMPLEMENTED;
- SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
- return FALSE;
+ UNIMPLEMENTED;
+ SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
+ return FALSE;
}
/* === AFTER THIS POINT I GUESS... =========
DWORD
WINAPI
IsValidEnhMetaRecord(
- DWORD a0,
- DWORD a1
- )
+ DWORD a0,
+ DWORD a1
+)
{
- UNIMPLEMENTED;
- SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
- return 0;
+ UNIMPLEMENTED;
+ SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
+ return 0;
}
DWORD
WINAPI
IsValidEnhMetaRecordOffExt(
- DWORD a0,
- DWORD a1,
- DWORD a2,
- DWORD a3
- )
+ DWORD a0,
+ DWORD a1,
+ DWORD a2,
+ DWORD a3
+)
{
- UNIMPLEMENTED;
- SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
- return 0;
+ UNIMPLEMENTED;
+ SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
+ return 0;
}
DWORD
WINAPI
GetGlyphOutlineWow(
- DWORD a0,
- DWORD a1,
- DWORD a2,
- DWORD a3,
- DWORD a4,
- DWORD a5,
- DWORD a6
- )
+ DWORD a0,
+ DWORD a1,
+ DWORD a2,
+ DWORD a3,
+ DWORD a4,
+ DWORD a5,
+ DWORD a6
+)
{
- UNIMPLEMENTED;
- SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
- return 0;
+ UNIMPLEMENTED;
+ SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
+ return 0;
}
/*
DWORD
WINAPI
gdiPlaySpoolStream(
- DWORD a0,
- DWORD a1,
- DWORD a2,
- DWORD a3,
- DWORD a4,
- DWORD a5
- )
+ DWORD a0,
+ DWORD a1,
+ DWORD a2,
+ DWORD a3,
+ DWORD a4,
+ DWORD a5
+)
{
- UNIMPLEMENTED;
- SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
- return 0;
+ UNIMPLEMENTED;
+ SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
+ return 0;
}
/*
HANDLE
WINAPI
AddFontMemResourceEx(
- PVOID pbFont,
- DWORD cbFont,
- PVOID pdv,
- DWORD *pcFonts
+ PVOID pbFont,
+ DWORD cbFont,
+ PVOID pdv,
+ DWORD *pcFonts
)
{
- if ( pbFont && cbFont && pcFonts)
- {
- return NtGdiAddFontMemResourceEx(pbFont, cbFont, NULL, 0, pcFonts);
- }
- SetLastError(ERROR_INVALID_PARAMETER);
- return NULL;
+ if ( pbFont && cbFont && pcFonts)
+ {
+ return NtGdiAddFontMemResourceEx(pbFont, cbFont, NULL, 0, pcFonts);
+ }
+ SetLastError(ERROR_INVALID_PARAMETER);
+ return NULL;
}
/*
int
WINAPI
AddFontResourceTracking(
- LPCSTR lpString,
- int unknown
+ LPCSTR lpString,
+ int unknown
)
{
- UNIMPLEMENTED;
- SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
- return 0;
+ UNIMPLEMENTED;
+ SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
+ return 0;
}
WINAPI
ClearBitmapAttributes(HBITMAP hbm, DWORD dwFlags)
{
- UNIMPLEMENTED;
- SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
- return 0;
+ UNIMPLEMENTED;
+ SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
+ return 0;
}
/*
WINAPI
ClearBrushAttributes(HBRUSH hbm, DWORD dwFlags)
{
- UNIMPLEMENTED;
- SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
- return 0;
+ UNIMPLEMENTED;
+ SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
+ return 0;
}
/*
WINAPI
ColorCorrectPalette(HDC hDC,HPALETTE hPalette,DWORD dwFirstEntry,DWORD dwNumOfEntries)
{
- UNIMPLEMENTED;
- SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
- return 0;
+ UNIMPLEMENTED;
+ SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
+ return 0;
}
/*
WINAPI
GdiArtificialDecrementDriver(LPWSTR pDriverName,BOOL unknown)
{
- UNIMPLEMENTED;
- SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
- return 0;
+ UNIMPLEMENTED;
+ SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
+ return 0;
}
/*
WINAPI
GdiCleanCacheDC(HDC hdc)
{
- if (GDI_HANDLE_GET_TYPE(hdc) == GDILoObjType_LO_DC_TYPE)
- return TRUE;
- SetLastError(ERROR_INVALID_HANDLE);
- return FALSE;
+ if (GDI_HANDLE_GET_TYPE(hdc) == GDILoObjType_LO_DC_TYPE)
+ return TRUE;
+ SetLastError(ERROR_INVALID_HANDLE);
+ return FALSE;
}
/*
WINAPI
GdiConvertAndCheckDC(HDC hdc)
{
- PLDC pldc;
- ULONG hType = GDI_HANDLE_GET_TYPE(hdc);
- if (hType == GDILoObjType_LO_DC_TYPE || hType == GDILoObjType_LO_METADC16_TYPE)
- return hdc;
- pldc = GdiGetLDC(hdc);
- if (pldc)
- {
- if (pldc->Flags & LDC_SAPCALLBACK) GdiSAPCallback(pldc);
- if (pldc->Flags & LDC_KILL_DOCUMENT) return NULL;
- if (pldc->Flags & LDC_STARTPAGE) StartPage(hdc);
- return hdc;
- }
- SetLastError(ERROR_INVALID_HANDLE);
- return NULL;
+ PLDC pldc;
+ ULONG hType = GDI_HANDLE_GET_TYPE(hdc);
+ if (hType == GDILoObjType_LO_DC_TYPE || hType == GDILoObjType_LO_METADC16_TYPE)
+ return hdc;
+ pldc = GdiGetLDC(hdc);
+ if (pldc)
+ {
+ if (pldc->Flags & LDC_SAPCALLBACK) GdiSAPCallback(pldc);
+ if (pldc->Flags & LDC_KILL_DOCUMENT) return NULL;
+ if (pldc->Flags & LDC_STARTPAGE) StartPage(hdc);
+ return hdc;
+ }
+ SetLastError(ERROR_INVALID_HANDLE);
+ return NULL;
}
/*
WINAPI
GdiIsMetaFileDC(HDC hDC)
{
- if (GDI_HANDLE_GET_TYPE(hDC) != GDI_OBJECT_TYPE_DC)
- {
- if (GDI_HANDLE_GET_TYPE(hDC) == GDI_OBJECT_TYPE_METADC)
- return TRUE;
- else
- {
- PLDC pLDC = GdiGetLDC(hDC);
- if ( !pLDC )
+ if (GDI_HANDLE_GET_TYPE(hDC) != GDI_OBJECT_TYPE_DC)
+ {
+ if (GDI_HANDLE_GET_TYPE(hDC) == GDI_OBJECT_TYPE_METADC)
+ return TRUE;
+ else
{
- SetLastError(ERROR_INVALID_HANDLE);
- return FALSE;
+ PLDC pLDC = GdiGetLDC(hDC);
+ if ( !pLDC )
+ {
+ SetLastError(ERROR_INVALID_HANDLE);
+ return FALSE;
+ }
+ if ( pLDC->iType == LDC_EMFLDC) return TRUE;
}
- if ( pLDC->iType == LDC_EMFLDC) return TRUE;
- }
- }
- return FALSE;
+ }
+ return FALSE;
}
/*
GdiIsMetaPrintDC(HDC hDC)
{
- if (GDI_HANDLE_GET_TYPE(hDC) != GDI_OBJECT_TYPE_DC)
- {
- if (GDI_HANDLE_GET_TYPE(hDC) == GDI_OBJECT_TYPE_METADC)
- return FALSE;
- else
- {
- PLDC pLDC = GdiGetLDC(hDC);
- if ( !pLDC )
+ if (GDI_HANDLE_GET_TYPE(hDC) != GDI_OBJECT_TYPE_DC)
+ {
+ if (GDI_HANDLE_GET_TYPE(hDC) == GDI_OBJECT_TYPE_METADC)
+ return FALSE;
+ else
{
- SetLastError(ERROR_INVALID_HANDLE);
- return FALSE;
+ PLDC pLDC = GdiGetLDC(hDC);
+ if ( !pLDC )
+ {
+ SetLastError(ERROR_INVALID_HANDLE);
+ return FALSE;
+ }
+ if ( pLDC->Flags & LDC_META_PRINT) return TRUE;
}
- if ( pLDC->Flags & LDC_META_PRINT) return TRUE;
- }
- }
- return FALSE;
+ }
+ return FALSE;
}
/*
WINAPI
GdiIsPlayMetafileDC(HDC hDC)
{
- PLDC pLDC = GdiGetLDC(hDC);
- if ( pLDC )
- {
- if ( pLDC->Flags & LDC_PLAY_MFDC ) return TRUE;
- }
- return FALSE;
+ PLDC pLDC = GdiGetLDC(hDC);
+ if ( pLDC )
+ {
+ if ( pLDC->Flags & LDC_PLAY_MFDC ) return TRUE;
+ }
+ return FALSE;
}
/*
WINAPI
GdiValidateHandle(HGDIOBJ hobj)
{
- PGDI_TABLE_ENTRY Entry = GdiHandleTable + GDI_HANDLE_GET_INDEX(hobj);
- if ( (Entry->Type & GDI_ENTRY_BASETYPE_MASK) != 0 &&
- ( (Entry->Type << GDI_ENTRY_UPPER_SHIFT) & GDI_HANDLE_TYPE_MASK ) ==
- GDI_HANDLE_GET_TYPE(hobj) )
- {
- HANDLE pid = (HANDLE)((ULONG_PTR)Entry->ProcessId & ~0x1);
- if(pid == NULL || pid == CurrentProcessId)
+ PGDI_TABLE_ENTRY Entry = GdiHandleTable + GDI_HANDLE_GET_INDEX(hobj);
+ if ( (Entry->Type & GDI_ENTRY_BASETYPE_MASK) != 0 &&
+ ( (Entry->Type << GDI_ENTRY_UPPER_SHIFT) & GDI_HANDLE_TYPE_MASK ) ==
+ GDI_HANDLE_GET_TYPE(hobj) )
{
- return TRUE;
+ HANDLE pid = (HANDLE)((ULONG_PTR)Entry->ProcessId & ~0x1);
+ if(pid == NULL || pid == CurrentProcessId)
+ {
+ return TRUE;
+ }
}
- }
- return FALSE;
+ return FALSE;
}
WINAPI
RemoveFontMemResourceEx(HANDLE fh)
{
- if (fh)
- {
- return NtGdiRemoveFontMemResourceEx(fh);
- }
- SetLastError(ERROR_INVALID_PARAMETER);
- return FALSE;
+ if (fh)
+ {
+ return NtGdiRemoveFontMemResourceEx(fh);
+ }
+ SetLastError(ERROR_INVALID_PARAMETER);
+ return FALSE;
}
/*
WINAPI
RemoveFontResourceTracking(LPCSTR lpString,int unknown)
{
- UNIMPLEMENTED;
- SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
- return 0;
+ UNIMPLEMENTED;
+ SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
+ return 0;
}
/*
WINAPI
SetBitmapAttributes(HBITMAP hbm, DWORD dwFlags)
{
- UNIMPLEMENTED;
- SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
- return 0;
+ UNIMPLEMENTED;
+ SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
+ return 0;
}
/*
WINAPI
SetBrushAttributes(HBRUSH hbm, DWORD dwFlags)
{
- UNIMPLEMENTED;
- SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
- return 0;
+ UNIMPLEMENTED;
+ SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
+ return 0;
}
/*
GetETM(HDC hdc,
EXTTEXTMETRIC *petm)
{
- BOOL Ret = NtGdiGetETM(hdc, petm);
+ BOOL Ret = NtGdiGetETM(hdc, petm);
- if (Ret && petm)
- petm->emKernPairs = GetKerningPairsA(hdc, 0, 0);
+ if (Ret && petm)
+ petm->emKernPairs = GetKerningPairsA(hdc, 0, 0);
- return Ret;
+ return Ret;
}
/*
WINAPI
Escape(HDC hdc, INT nEscape, INT cbInput, LPCSTR lpvInData, LPVOID lpvOutData)
{
- int retValue = SP_ERROR;
+ int retValue = SP_ERROR;
HGDIOBJ hObject = hdc;
UINT Type = 0;
LPVOID pUserData = NULL;
{
switch (nEscape)
{
- case ABORTDOC:
- /* Note Winodws check see if the handle have any user data for ABORTDOC command
- * ReactOS copy this behavior to be compatible with windows 2003
- */
- if ( (!GdiGetHandleUserData(hObject, (DWORD)Type, (PVOID) &pUserData)) ||
- (pUserData == NULL) )
- {
- GdiSetLastError(ERROR_INVALID_HANDLE);
- retValue = FALSE;
- }
- else
- {
- retValue = AbortDoc(hdc);
- }
- break;
-
- case DRAFTMODE:
- case FLUSHOUTPUT:
- case SETCOLORTABLE:
- /* Note 1: DRAFTMODE, FLUSHOUTPUT, SETCOLORTABLE is outdated and been replace with other api */
- /* Note 2: Winodws check see if the handle have any user data for DRAFTMODE, FLUSHOUTPUT, SETCOLORTABLE command
- * ReactOS copy this behavior to be compatible with windows 2003
- */
- if ( (!GdiGetHandleUserData(hObject, (DWORD)Type, (PVOID) &pUserData)) ||
- (pUserData == NULL) )
- {
- GdiSetLastError(ERROR_INVALID_HANDLE);
- }
+ case ABORTDOC:
+ /* Note Winodws check see if the handle have any user data for ABORTDOC command
+ * ReactOS copy this behavior to be compatible with windows 2003
+ */
+ if ( (!GdiGetHandleUserData(hObject, (DWORD)Type, (PVOID) &pUserData)) ||
+ (pUserData == NULL) )
+ {
+ GdiSetLastError(ERROR_INVALID_HANDLE);
retValue = FALSE;
- break;
-
- case SETABORTPROC:
- /* Note : Winodws check see if the handle have any user data for DRAFTMODE, FLUSHOUTPUT, SETCOLORTABLE command
- * ReactOS copy this behavior to be compatible with windows 2003
- */
- if ( (!GdiGetHandleUserData(hObject, (DWORD)Type, (PVOID) &pUserData)) ||
- (pUserData == NULL) )
- {
- GdiSetLastError(ERROR_INVALID_HANDLE);
- retValue = FALSE;
- }
- retValue = SetAbortProc(hdc, (ABORTPROC)lpvInData);
- break;
+ }
+ else
+ {
+ retValue = AbortDoc(hdc);
+ }
+ break;
- case GETCOLORTABLE:
- retValue = GetSystemPaletteEntries(hdc, (UINT)*lpvInData, 1, (LPPALETTEENTRY)lpvOutData);
- if ( !retValue )
- {
- retValue = SP_ERROR;
- }
- break;
-
- case ENDDOC:
- /* Note : Winodws check see if the handle have any user data for DRAFTMODE, FLUSHOUTPUT, SETCOLORTABLE command
- * ReactOS copy this behavior to be compatible with windows 2003
- */
- if ( (!GdiGetHandleUserData(hObject, (DWORD)Type, (PVOID) &pUserData)) ||
- (pUserData == NULL) )
+ case DRAFTMODE:
+ case FLUSHOUTPUT:
+ case SETCOLORTABLE:
+ /* Note 1: DRAFTMODE, FLUSHOUTPUT, SETCOLORTABLE is outdated and been replace with other api */
+ /* Note 2: Winodws check see if the handle have any user data for DRAFTMODE, FLUSHOUTPUT, SETCOLORTABLE command
+ * ReactOS copy this behavior to be compatible with windows 2003
+ */
+ if ( (!GdiGetHandleUserData(hObject, (DWORD)Type, (PVOID) &pUserData)) ||
+ (pUserData == NULL) )
+ {
+ GdiSetLastError(ERROR_INVALID_HANDLE);
+ }
+ retValue = FALSE;
+ break;
+
+ case SETABORTPROC:
+ /* Note : Winodws check see if the handle have any user data for DRAFTMODE, FLUSHOUTPUT, SETCOLORTABLE command
+ * ReactOS copy this behavior to be compatible with windows 2003
+ */
+ if ( (!GdiGetHandleUserData(hObject, (DWORD)Type, (PVOID) &pUserData)) ||
+ (pUserData == NULL) )
+ {
+ GdiSetLastError(ERROR_INVALID_HANDLE);
+ retValue = FALSE;
+ }
+ retValue = SetAbortProc(hdc, (ABORTPROC)lpvInData);
+ break;
+
+ case GETCOLORTABLE:
+ retValue = GetSystemPaletteEntries(hdc, (UINT)*lpvInData, 1, (LPPALETTEENTRY)lpvOutData);
+ if ( !retValue )
+ {
+ retValue = SP_ERROR;
+ }
+ break;
+
+ case ENDDOC:
+ /* Note : Winodws check see if the handle have any user data for DRAFTMODE, FLUSHOUTPUT, SETCOLORTABLE command
+ * ReactOS copy this behavior to be compatible with windows 2003
+ */
+ if ( (!GdiGetHandleUserData(hObject, (DWORD)Type, (PVOID) &pUserData)) ||
+ (pUserData == NULL) )
+ {
+ GdiSetLastError(ERROR_INVALID_HANDLE);
+ retValue = FALSE;
+ }
+ retValue = EndDoc(hdc);
+ break;
+
+
+ case GETSCALINGFACTOR:
+ /* Note GETSCALINGFACTOR is outdated have been replace by GetDeviceCaps */
+ if ( Type == GDI_OBJECT_TYPE_DC )
+ {
+ if ( lpvOutData )
{
- GdiSetLastError(ERROR_INVALID_HANDLE);
- retValue = FALSE;
+ PPOINT ptr = (PPOINT) lpvOutData;
+ ptr->x = 0;
+ ptr->y = 0;
}
- retValue = EndDoc(hdc);
- break;
+ }
+ retValue = FALSE;
+ break;
+ case GETEXTENDEDTEXTMETRICS:
+ retValue = (int) GetETM( hdc, (EXTTEXTMETRIC *) lpvOutData) != 0;
+ break;
- case GETSCALINGFACTOR:
- /* Note GETSCALINGFACTOR is outdated have been replace by GetDeviceCaps */
- if ( Type == GDI_OBJECT_TYPE_DC )
- {
- if ( lpvOutData )
- {
- PPOINT ptr = (PPOINT) lpvOutData;
- ptr->x = 0;
- ptr->y = 0;
- }
- }
+ case STARTDOC:
+ {
+ DOCINFOA *pUserDatalpdi;
+ DOCINFOA lpdi;
+
+ /* Note : Winodws check see if the handle have any user data for STARTDOC command
+ * ReactOS copy this behavior to be compatible with windows 2003
+ */
+ if ( (!GdiGetHandleUserData(hObject, (DWORD)Type, (PVOID) &pUserDatalpdi)) ||
+ (pUserData == NULL) )
+ {
+ GdiSetLastError(ERROR_INVALID_HANDLE);
retValue = FALSE;
- break;
+ }
+
+ lpdi.cbSize = sizeof(DOCINFOA);
+
+ /* NOTE lpszOutput will be store in handle userdata */
+ lpdi.lpszOutput = 0;
- case GETEXTENDEDTEXTMETRICS:
- retValue = (int) GetETM( hdc, (EXTTEXTMETRIC *) lpvOutData) != 0;
- break;
+ lpdi.lpszDatatype = 0;
+ lpdi.fwType = 0;
+ lpdi.lpszDocName = lpvInData;
- case STARTDOC:
+ /* NOTE : doc for StartDocA/W at msdn http://msdn2.microsoft.com/en-us/library/ms535793(VS.85).aspx */
+ retValue = StartDocA(hdc, &lpdi);
+
+ /* StartDocA fail */
+ if (retValue < 0)
+ {
+ /* check see if outbuffer contain any data, if it does abort */
+ if ( (pUserDatalpdi->lpszOutput != 0) &&
+ ( (*(WCHAR *)pUserDatalpdi->lpszOutput) != UNICODE_NULL) )
+ {
+ retValue = SP_APPABORT;
+ }
+ else
{
- DOCINFOA *pUserDatalpdi;
- DOCINFOA lpdi;
+ retValue = GetLastError();
- /* Note : Winodws check see if the handle have any user data for STARTDOC command
- * ReactOS copy this behavior to be compatible with windows 2003
+ /* Translate StartDocA error code to STARTDOC error code
+ * see msdn http://msdn2.microsoft.com/en-us/library/ms535472.aspx
*/
- if ( (!GdiGetHandleUserData(hObject, (DWORD)Type, (PVOID) &pUserDatalpdi)) ||
- (pUserData == NULL) )
+ switch(retValue)
{
- GdiSetLastError(ERROR_INVALID_HANDLE);
- retValue = FALSE;
- }
+ case ERROR_NOT_ENOUGH_MEMORY:
+ retValue = SP_OUTOFMEMORY;
+ break;
- lpdi.cbSize = sizeof(DOCINFOA);
-
- /* NOTE lpszOutput will be store in handle userdata */
- lpdi.lpszOutput = 0;
-
- lpdi.lpszDatatype = 0;
- lpdi.fwType = 0;
- lpdi.lpszDocName = lpvInData;
-
- /* NOTE : doc for StartDocA/W at msdn http://msdn2.microsoft.com/en-us/library/ms535793(VS.85).aspx */
- retValue = StartDocA(hdc, &lpdi);
-
- /* StartDocA fail */
- if (retValue < 0)
- {
- /* check see if outbuffer contain any data, if it does abort */
- if ( (pUserDatalpdi->lpszOutput != 0) &&
- ( (*(WCHAR *)pUserDatalpdi->lpszOutput) != UNICODE_NULL) )
- {
- retValue = SP_APPABORT;
- }
- else
- {
- retValue = GetLastError();
-
- /* Translate StartDocA error code to STARTDOC error code
- * see msdn http://msdn2.microsoft.com/en-us/library/ms535472.aspx
- */
- switch(retValue)
- {
- case ERROR_NOT_ENOUGH_MEMORY:
- retValue = SP_OUTOFMEMORY;
- break;
-
- case ERROR_PRINT_CANCELLED:
- retValue = SP_USERABORT;
- break;
-
- case ERROR_DISK_FULL:
- retValue = SP_OUTOFDISK;
- break;
-
- default:
- retValue = SP_ERROR;
- break;
- }
- }
+ case ERROR_PRINT_CANCELLED:
+ retValue = SP_USERABORT;
+ break;
+
+ case ERROR_DISK_FULL:
+ retValue = SP_OUTOFDISK;
+ break;
+
+ default:
+ retValue = SP_ERROR;
+ break;
}
}
- break;
-
-
+ }
+ }
+ break;
- default:
- UNIMPLEMENTED;
- SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
+
+
+ default:
+ UNIMPLEMENTED;
+ SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
}
}
-
+
return retValue;
}
if (!dmW) return NULL;
MultiByteToWideChar(CP_ACP, 0, (const char*) dmA->dmDeviceName, CCHDEVICENAME,
- dmW->dmDeviceName, CCHDEVICENAME);
+ dmW->dmDeviceName, CCHDEVICENAME);
/* copy slightly more, to avoid long computations */
memcpy(&dmW->dmSpecVersion, &dmA->dmSpecVersion, dmA_size - CCHDEVICENAME);
if (dmA_size >= FIELD_OFFSET(DEVMODEA, dmFormName) + CCHFORMNAME)
{
MultiByteToWideChar(CP_ACP, 0, (const char*) dmA->dmFormName, CCHFORMNAME,
- dmW->dmFormName, CCHFORMNAME);
+ dmW->dmFormName, CCHFORMNAME);
if (dmA_size > FIELD_OFFSET(DEVMODEA, dmLogPixels))
memcpy(&dmW->dmLogPixels, &dmA->dmLogPixels, dmA_size - FIELD_OFFSET(DEVMODEA, dmLogPixels));
}
LPWSTR pwszDocName,
EMFPLAYPROC pfnEMFPlayFn,
HANDLE hPageQuery
-)
+ )
{
UNIMPLEMENTED;
SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
IN INT cxSrc,
IN INT cySrc,
IN COLORREF TransColor
-)
+ )
{
/* FIXME some part need be done in user mode */
return NtGdiTransparentBlt(hdcDst, xDst, yDst, cxDst, cyDst, hdcSrc, xSrc, ySrc, cxSrc, cySrc, TransColor);
{
if (!lpvBuffer)
{
- cbData = 0;
+ cbData = 0;
}
return NtGdiGetFontData(hdc, dwTable, dwOffset, lpvBuffer, cbData);
}