win32u: Add more clipboard stubs.

Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This commit is contained in:
Jacek Caban 2022-04-25 16:59:10 +02:00 committed by Alexandre Julliard
parent 78261e08bf
commit cad4adedaa
6 changed files with 87 additions and 4 deletions

View file

@ -76,6 +76,15 @@ static const char *debugstr_format( UINT id )
}
}
/**************************************************************************
* NtUserOpenClipboard (win32u.@)
*/
BOOL WINAPI NtUserOpenClipboard( HWND hwnd, ULONG unk )
{
FIXME( "\n" );
return FALSE;
}
/**************************************************************************
* NtUserCloseClipboard (win32u.@)
*/
@ -101,6 +110,15 @@ BOOL WINAPI NtUserCloseClipboard(void)
return ret;
}
/**************************************************************************
* NtUserEmptyClipboard (win32u.@)
*/
BOOL WINAPI NtUserEmptyClipboard(void)
{
FIXME( "\n" );
return FALSE;
}
/**************************************************************************
* NtUserCountClipboardFormats (win32u.@)
*/
@ -410,3 +428,21 @@ void release_clipboard_owner( HWND hwnd )
NtUserMessageCall( viewer, WM_DRAWCLIPBOARD, (WPARAM)owner, 0,
0, NtUserSendNotifyMessage, FALSE );
}
/**************************************************************************
* NtUserSetClipboardData (win32u.@)
*/
NTSTATUS WINAPI NtUserSetClipboardData( UINT format, HANDLE handle, struct set_clipboard_params *params )
{
FIXME( "\n" );
return 0;
}
/**************************************************************************
* NtUserGetClipboardData (win32u.@)
*/
HANDLE WINAPI NtUserGetClipboardData( UINT format, struct get_clipboard_params *params )
{
FIXME( "\n" );
return 0;
}

View file

@ -1151,6 +1151,7 @@ static struct unix_funcs unix_funcs =
NtUserDestroyWindow,
NtUserDispatchMessage,
NtUserDrawIconEx,
NtUserEmptyClipboard,
NtUserEnableMenuItem,
NtUserEndDeferWindowPosEx,
NtUserEndPaint,
@ -1161,6 +1162,7 @@ static struct unix_funcs unix_funcs =
NtUserFlashWindowEx,
NtUserGetAsyncKeyState,
NtUserGetClassInfoEx,
NtUserGetClipboardData,
NtUserGetCursorInfo,
NtUserGetDCEx,
NtUserGetDisplayConfigBufferSizes,
@ -1178,6 +1180,7 @@ static struct unix_funcs unix_funcs =
NtUserMessageCall,
NtUserMoveWindow,
NtUserMsgWaitForMultipleObjectsEx,
NtUserOpenClipboard,
NtUserPeekMessage,
NtUserPostMessage,
NtUserPostThreadMessage,
@ -1190,6 +1193,7 @@ static struct unix_funcs unix_funcs =
NtUserSendInput,
NtUserSetActiveWindow,
NtUserSetCapture,
NtUserSetClipboardData,
NtUserSetClassLong,
NtUserSetClassLongPtr,
NtUserSetClassWord,

View file

@ -857,7 +857,7 @@
@ stub NtUserDwmKernelShutdown
@ stub NtUserDwmKernelStartup
@ stub NtUserDwmValidateWindow
@ stub NtUserEmptyClipboard
@ stdcall NtUserEmptyClipboard()
@ stub NtUserEnableChildWindowDpiMessage
@ stub NtUserEnableIAMAccess
@ stdcall NtUserEnableMenuItem(long long long)
@ -902,7 +902,7 @@
@ stdcall -syscall NtUserGetClassName(long long ptr)
@ stub NtUserGetClipCursor
@ stub NtUserGetClipboardAccessToken
@ stub NtUserGetClipboardData
@ stdcall NtUserGetClipboardData(long ptr)
@ stdcall -syscall NtUserGetClipboardFormatName(long ptr long)
@ stdcall -syscall NtUserGetClipboardOwner()
@ stdcall -syscall NtUserGetClipboardSequenceNumber()
@ -1090,7 +1090,7 @@
@ stub NtUserNotifyIMEStatus
@ stub NtUserNotifyProcessCreate
@ stdcall -syscall NtUserNotifyWinEvent(long long long long)
@ stub NtUserOpenClipboard
@ stdcall NtUserOpenClipboard(long long)
@ stdcall -syscall NtUserOpenDesktop(ptr long long)
@ stdcall -syscall NtUserOpenInputDesktop(long long long)
@ stub NtUserOpenThreadDesktop
@ -1174,7 +1174,7 @@
@ stdcall NtUserSetClassLong(long long long long)
@ stdcall NtUserSetClassLongPtr(long long long long)
@ stdcall NtUserSetClassWord(long long long)
@ stub NtUserSetClipboardData
@ stdcall NtUserSetClipboardData(long ptr ptr)
@ stdcall NtUserSetClipboardViewer(long)
@ stub NtUserSetCoreWindow
@ stub NtUserSetCoreWindowPartner

View file

@ -211,6 +211,7 @@ struct unix_funcs
LRESULT (WINAPI *pNtUserDispatchMessage)( const MSG *msg );
BOOL (WINAPI *pNtUserDrawIconEx)( HDC hdc, INT x0, INT y0, HICON icon, INT width,
INT height, UINT istep, HBRUSH hbr, UINT flags );
BOOL (WINAPI *pNtUserEmptyClipboard)(void);
BOOL (WINAPI *pNtUserEnableMenuItem)( HMENU handle, UINT id, UINT flags );
BOOL (WINAPI *pNtUserEndDeferWindowPosEx)( HDWP hdwp, BOOL async );
BOOL (WINAPI *pNtUserEndPaint)( HWND hwnd, const PAINTSTRUCT *ps );
@ -224,6 +225,7 @@ struct unix_funcs
SHORT (WINAPI *pNtUserGetAsyncKeyState)( INT key );
ATOM (WINAPI *pNtUserGetClassInfoEx)( HINSTANCE instance, UNICODE_STRING *name, WNDCLASSEXW *wc,
struct client_menu_name *menu_name, BOOL ansi );
HANDLE (WINAPI *pNtUserGetClipboardData)( UINT format, struct get_clipboard_params *params );
BOOL (WINAPI *pNtUserGetCursorInfo)( CURSORINFO *info );
HDC (WINAPI *pNtUserGetDCEx)( HWND hwnd, HRGN clip_rgn, DWORD flags );
LONG (WINAPI *pNtUserGetDisplayConfigBufferSizes)( UINT32 flags, UINT32 *num_path_info,
@ -245,6 +247,7 @@ struct unix_funcs
BOOL (WINAPI *pNtUserMoveWindow)( HWND hwnd, INT x, INT y, INT cx, INT cy, BOOL repaint );
DWORD (WINAPI *pNtUserMsgWaitForMultipleObjectsEx)( DWORD count, const HANDLE *handles,
DWORD timeout, DWORD mask, DWORD flags );
BOOL (WINAPI *pNtUserOpenClipboard)( HWND hwnd, ULONG unk );
BOOL (WINAPI *pNtUserPeekMessage)( MSG *msg_out, HWND hwnd, UINT first, UINT last, UINT flags );
BOOL (WINAPI *pNtUserPostMessage)( HWND hwnd, UINT msg, WPARAM wparam, LPARAM lparam );
BOOL (WINAPI *pNtUserPostThreadMessage)( DWORD thread, UINT msg, WPARAM wparam, LPARAM lparam );
@ -261,6 +264,8 @@ struct unix_funcs
UINT (WINAPI *pNtUserSendInput)( UINT count, INPUT *inputs, int size );
HWND (WINAPI *pNtUserSetActiveWindow)( HWND hwnd );
HWND (WINAPI *pNtUserSetCapture)( HWND hwnd );
NTSTATUS (WINAPI *pNtUserSetClipboardData)( UINT format, HANDLE handle,
struct set_clipboard_params *params );
DWORD (WINAPI *pNtUserSetClassLong)( HWND hwnd, INT offset, LONG newval, BOOL ansi );
ULONG_PTR (WINAPI *pNtUserSetClassLongPtr)( HWND hwnd, INT offset, LONG_PTR newval, BOOL ansi );
WORD (WINAPI *pNtUserSetClassWord)( HWND hwnd, INT offset, WORD newval );

View file

@ -844,6 +844,12 @@ BOOL WINAPI NtUserEndDeferWindowPosEx( HDWP hdwp, BOOL async )
return unix_funcs->pNtUserEndDeferWindowPosEx( hdwp, async );
}
BOOL WINAPI NtUserEmptyClipboard(void)
{
if (!unix_funcs) return FALSE;
return unix_funcs->pNtUserEmptyClipboard();
}
NTSTATUS WINAPI NtUserEnumDisplayDevices( UNICODE_STRING *device, DWORD index,
DISPLAY_DEVICEW *info, DWORD flags )
{
@ -889,6 +895,12 @@ ATOM WINAPI NtUserGetClassInfoEx( HINSTANCE instance, UNICODE_STRING *name, WNDC
return unix_funcs->pNtUserGetClassInfoEx( instance, name, wc, menu_name, ansi );
}
HANDLE WINAPI NtUserGetClipboardData( UINT format, struct get_clipboard_params *params )
{
if (!unix_funcs) return 0;
return unix_funcs->pNtUserGetClipboardData( format, params );
}
BOOL WINAPI NtUserGetCursorInfo( CURSORINFO *info )
{
if (!unix_funcs) return FALSE;
@ -995,6 +1007,12 @@ DWORD WINAPI NtUserMsgWaitForMultipleObjectsEx( DWORD count, const HANDLE *handl
return unix_funcs->pNtUserMsgWaitForMultipleObjectsEx( count, handles, timeout, mask, flags );
}
BOOL WINAPI NtUserOpenClipboard( HWND hwnd, ULONG unk )
{
if (!unix_funcs) return FALSE;
return unix_funcs->pNtUserOpenClipboard( hwnd, unk );
}
BOOL WINAPI NtUserPeekMessage( MSG *msg_out, HWND hwnd, UINT first, UINT last, UINT flags )
{
if (!unix_funcs) return FALSE;
@ -1070,6 +1088,12 @@ HWND WINAPI NtUserSetCapture( HWND hwnd )
return unix_funcs->pNtUserSetCapture( hwnd );
}
NTSTATUS WINAPI NtUserSetClipboardData( UINT format, HANDLE handle, struct set_clipboard_params *params )
{
if (!unix_funcs) return 0;
return unix_funcs->pNtUserSetClipboardData( format, handle, params );
}
HCURSOR WINAPI NtUserSetCursor( HCURSOR cursor )
{
if (!unix_funcs) return 0;

View file

@ -234,6 +234,16 @@ struct client_menu_name
UNICODE_STRING *nameUS;
};
/* NtUserGetClipboardData params, not compatible with Windows */
struct get_clipboard_params
{
};
/* NtUserSetClipboardData params, not compatible with Windows */
struct set_clipboard_params
{
};
/* internal messages codes */
enum wine_internal_message
{
@ -448,6 +458,7 @@ BOOL WINAPI NtUserDestroyWindow( HWND hwnd );
LRESULT WINAPI NtUserDispatchMessage( const MSG *msg );
BOOL WINAPI NtUserDrawIconEx( HDC hdc, INT x0, INT y0, HICON icon, INT width,
INT height, UINT istep, HBRUSH hbr, UINT flags );
BOOL WINAPI NtUserEmptyClipboard(void);
BOOL WINAPI NtUserEnableMenuItem( HMENU handle, UINT id, UINT flags );
BOOL WINAPI NtUserEndDeferWindowPosEx( HDWP hdwp, BOOL async );
BOOL WINAPI NtUserEndPaint( HWND hwnd, const PAINTSTRUCT *ps );
@ -468,6 +479,7 @@ ULONG WINAPI NtUserGetAtomName( ATOM atom, UNICODE_STRING *name );
ATOM WINAPI NtUserGetClassInfoEx( HINSTANCE instance, UNICODE_STRING *name, WNDCLASSEXW *wc,
struct client_menu_name *menu_name, BOOL ansi );
INT WINAPI NtUserGetClassName( HWND hwnd, BOOL real, UNICODE_STRING *name );
HANDLE WINAPI NtUserGetClipboardData( UINT format, struct get_clipboard_params *params );
INT WINAPI NtUserGetClipboardFormatName( UINT format, WCHAR *buffer, INT maxlen );
HWND WINAPI NtUserGetClipboardOwner(void);
DWORD WINAPI NtUserGetClipboardSequenceNumber(void);
@ -526,6 +538,7 @@ DWORD WINAPI NtUserMsgWaitForMultipleObjectsEx( DWORD count, const HANDLE *han
void WINAPI NtUserNotifyWinEvent( DWORD event, HWND hwnd, LONG object_id, LONG child_id );
HWINSTA WINAPI NtUserOpenWindowStation( OBJECT_ATTRIBUTES *attr, ACCESS_MASK access );
BOOL WINAPI NtUserSetObjectInformation( HANDLE handle, INT index, void *info, DWORD len );
BOOL WINAPI NtUserOpenClipboard( HWND hwnd, ULONG unk );
HDESK WINAPI NtUserOpenDesktop( OBJECT_ATTRIBUTES *attr, DWORD flags, ACCESS_MASK access );
HDESK WINAPI NtUserOpenInputDesktop( DWORD flags, BOOL inherit, ACCESS_MASK access );
BOOL WINAPI NtUserPeekMessage( MSG *msg_out, HWND hwnd, UINT first, UINT last, UINT flags );
@ -548,6 +561,7 @@ HWND WINAPI NtUserSetCapture( HWND hwnd );
DWORD WINAPI NtUserSetClassLong( HWND hwnd, INT offset, LONG newval, BOOL ansi );
ULONG_PTR WINAPI NtUserSetClassLongPtr( HWND hwnd, INT offset, LONG_PTR newval, BOOL ansi );
WORD WINAPI NtUserSetClassWord( HWND hwnd, INT offset, WORD newval );
NTSTATUS WINAPI NtUserSetClipboardData( UINT format, HANDLE handle, struct set_clipboard_params *params );
HWND WINAPI NtUserSetClipboardViewer( HWND hwnd );
HCURSOR WINAPI NtUserSetCursor( HCURSOR cursor );
BOOL WINAPI NtUserSetCursorIconData( HCURSOR cursor, UNICODE_STRING *module, UNICODE_STRING *res_name,