user32: Add a SetLayeredWindowAttributes driver entry point.

This commit is contained in:
Alexandre Julliard 2008-09-12 15:43:27 +02:00
parent d476761f91
commit 9fb76ddd53
3 changed files with 16 additions and 1 deletions

View File

@ -114,6 +114,7 @@ static const USER_DRIVER *load_driver(void)
GET_USER_FUNC(ScrollDC);
GET_USER_FUNC(SetCapture);
GET_USER_FUNC(SetFocus);
GET_USER_FUNC(SetLayeredWindowAttributes);
GET_USER_FUNC(SetParent);
GET_USER_FUNC(SetWindowRgn);
GET_USER_FUNC(SetWindowIcon);
@ -375,6 +376,10 @@ static void nulldrv_SetFocus( HWND hwnd )
{
}
static void nulldrv_SetLayeredWindowAttributes( HWND hwnd, COLORREF key, BYTE alpha, DWORD flags )
{
}
static void nulldrv_SetParent( HWND hwnd, HWND parent, HWND old_parent )
{
}
@ -473,6 +478,7 @@ static USER_DRIVER null_driver =
nulldrv_ScrollDC,
nulldrv_SetCapture,
nulldrv_SetFocus,
nulldrv_SetLayeredWindowAttributes,
nulldrv_SetParent,
nulldrv_SetWindowRgn,
nulldrv_SetWindowIcon,
@ -708,6 +714,11 @@ static void loaderdrv_SetFocus( HWND hwnd )
load_driver()->pSetFocus( hwnd );
}
static void loaderdrv_SetLayeredWindowAttributes( HWND hwnd, COLORREF key, BYTE alpha, DWORD flags )
{
load_driver()->pSetLayeredWindowAttributes( hwnd, key, alpha, flags );
}
static void loaderdrv_SetParent( HWND hwnd, HWND parent, HWND old_parent )
{
load_driver()->pSetParent( hwnd, parent, old_parent );
@ -814,6 +825,7 @@ static USER_DRIVER lazy_load_driver =
loaderdrv_ScrollDC,
loaderdrv_SetCapture,
loaderdrv_SetFocus,
loaderdrv_SetLayeredWindowAttributes,
loaderdrv_SetParent,
loaderdrv_SetWindowRgn,
loaderdrv_SetWindowIcon,

View File

@ -150,6 +150,7 @@ typedef struct tagUSER_DRIVER {
BOOL (*pScrollDC)(HDC, INT, INT, const RECT *, const RECT *, HRGN, LPRECT);
void (*pSetCapture)(HWND,UINT);
void (*pSetFocus)(HWND);
void (*pSetLayeredWindowAttributes)(HWND,COLORREF,BYTE,DWORD);
void (*pSetParent)(HWND,HWND,HWND);
int (*pSetWindowRgn)(HWND,HRGN,BOOL);
void (*pSetWindowIcon)(HWND,UINT,HICON);

View File

@ -3325,7 +3325,7 @@ BOOL WINAPI SetLayeredWindowAttributes( HWND hwnd, COLORREF key, BYTE alpha, DWO
{
BOOL ret;
FIXME("(%p,%08x,%d,%x): stub!\n", hwnd, key, alpha, flags);
TRACE("(%p,%08x,%d,%x): stub!\n", hwnd, key, alpha, flags);
SERVER_START_REQ( set_window_layered_info )
{
@ -3337,6 +3337,8 @@ BOOL WINAPI SetLayeredWindowAttributes( HWND hwnd, COLORREF key, BYTE alpha, DWO
}
SERVER_END_REQ;
if (ret) USER_Driver->pSetLayeredWindowAttributes( hwnd, key, alpha, flags );
return ret;
}