Commit 40eea7ac authored by Eric Pouech's avatar Eric Pouech Committed by Alexandre Julliard

gdi.exe: Rewrite QueryAbort16 to be independant of gdi32.dll internals.

parent 8e248c06
...@@ -135,6 +135,27 @@ static struct gdi_thunk* GDI_FindThunk(HDC16 hdc) ...@@ -135,6 +135,27 @@ static struct gdi_thunk* GDI_FindThunk(HDC16 hdc)
} }
/********************************************************************** /**********************************************************************
* QueryAbort (GDI.155)
*
* Calls the app's AbortProc function if avail.
*
* RETURNS
* TRUE if no AbortProc avail or AbortProc wants to continue printing.
* FALSE if AbortProc wants to abort printing.
*/
BOOL16 WINAPI QueryAbort16(HDC16 hdc16, INT16 reserved)
{
struct gdi_thunk* thunk = GDI_FindThunk(hdc16);
if (!thunk) {
ERR("Invalid hdc 0x%x\n", hdc16);
return FALSE;
}
return GDI_Callback3216( thunk->pfn16, HDC_32(hdc16), 0 );
}
/**********************************************************************
* SetAbortProc (GDI.381) * SetAbortProc (GDI.381)
*/ */
INT16 WINAPI SetAbortProc16(HDC16 hdc16, ABORTPROC16 abrtprc) INT16 WINAPI SetAbortProc16(HDC16 hdc16, ABORTPROC16 abrtprc)
......
...@@ -57,31 +57,6 @@ static const char DefaultDevMode[] = "Default DevMode"; ...@@ -57,31 +57,6 @@ static const char DefaultDevMode[] = "Default DevMode";
static const char PrinterDriverData[] = "PrinterDriverData"; static const char PrinterDriverData[] = "PrinterDriverData";
static const char Printers[] = "System\\CurrentControlSet\\Control\\Print\\Printers\\"; static const char Printers[] = "System\\CurrentControlSet\\Control\\Print\\Printers\\";
/**********************************************************************
* QueryAbort (GDI.155)
*
* Calls the app's AbortProc function if avail.
*
* RETURNS
* TRUE if no AbortProc avail or AbortProc wants to continue printing.
* FALSE if AbortProc wants to abort printing.
*/
BOOL16 WINAPI QueryAbort16(HDC16 hdc16, INT16 reserved)
{
BOOL ret = TRUE;
HDC hdc = HDC_32( hdc16 );
DC *dc = get_dc_ptr( hdc );
if(!dc) {
ERR("Invalid hdc %p\n", hdc);
return FALSE;
}
if (dc->pAbortProc) ret = dc->pAbortProc(hdc, 0);
release_dc_ptr( dc );
return ret;
}
/****************** misc. printer related functions */ /****************** misc. printer related functions */
/* /*
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment