mirror of
https://github.com/reactos/reactos.git
synced 2025-08-05 21:03:00 +00:00
implemented GetMessageExtraInfo() and SetMessageExtraInfo()
svn path=/trunk/; revision=7127
This commit is contained in:
parent
4bfb4ce695
commit
9f039ad29c
5 changed files with 54 additions and 8 deletions
|
@ -164,6 +164,7 @@ NtUserCallNextHookEx(
|
||||||
#define NOPARAM_ROUTINE_DESTROY_CARET 0xffff0002
|
#define NOPARAM_ROUTINE_DESTROY_CARET 0xffff0002
|
||||||
#define NOPARAM_ROUTINE_UNINIT_MESSAGE_PUMP 0xffff0003
|
#define NOPARAM_ROUTINE_UNINIT_MESSAGE_PUMP 0xffff0003
|
||||||
#define NOPARAM_ROUTINE_INIT_MESSAGE_PUMP 0xffff0004
|
#define NOPARAM_ROUTINE_INIT_MESSAGE_PUMP 0xffff0004
|
||||||
|
#define NOPARAM_ROUTINE_GETMESSAGEEXTRAINFO 0xffff0005
|
||||||
DWORD
|
DWORD
|
||||||
STDCALL
|
STDCALL
|
||||||
NtUserCallNoParam(
|
NtUserCallNoParam(
|
||||||
|
@ -178,6 +179,7 @@ NtUserCallNoParam(
|
||||||
#define ONEPARAM_ROUTINE_GETCARETINFO 0x07
|
#define ONEPARAM_ROUTINE_GETCARETINFO 0x07
|
||||||
#define ONEPARAM_ROUTINE_SWITCHCARETSHOWING 0x08
|
#define ONEPARAM_ROUTINE_SWITCHCARETSHOWING 0x08
|
||||||
#define ONEPARAM_ROUTINE_ENUMCLIPBOARDFORMATS 0x09
|
#define ONEPARAM_ROUTINE_ENUMCLIPBOARDFORMATS 0x09
|
||||||
|
#define ONEPARAM_ROUTINE_SETMESSAGEEXTRAINFO 0x0a
|
||||||
DWORD
|
DWORD
|
||||||
STDCALL
|
STDCALL
|
||||||
NtUserCallOneParam(
|
NtUserCallOneParam(
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
/* $Id: message.c,v 1.30 2003/12/14 14:01:38 gvg Exp $
|
/* $Id: message.c,v 1.31 2003/12/19 19:30:05 weiden Exp $
|
||||||
*
|
*
|
||||||
* COPYRIGHT: See COPYING in the top level directory
|
* COPYRIGHT: See COPYING in the top level directory
|
||||||
* PROJECT: ReactOS user32.dll
|
* PROJECT: ReactOS user32.dll
|
||||||
|
@ -20,8 +20,7 @@ LPARAM
|
||||||
STDCALL
|
STDCALL
|
||||||
GetMessageExtraInfo(VOID)
|
GetMessageExtraInfo(VOID)
|
||||||
{
|
{
|
||||||
UNIMPLEMENTED;
|
return (LPARAM)NtUserCallNoParam(NOPARAM_ROUTINE_GETMESSAGEEXTRAINFO);
|
||||||
return (LPARAM)0;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -86,15 +85,14 @@ ReplyMessage(
|
||||||
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* @unimplemented
|
* @implemented
|
||||||
*/
|
*/
|
||||||
LPARAM
|
LPARAM
|
||||||
STDCALL
|
STDCALL
|
||||||
SetMessageExtraInfo(
|
SetMessageExtraInfo(
|
||||||
LPARAM lParam)
|
LPARAM lParam)
|
||||||
{
|
{
|
||||||
UNIMPLEMENTED;
|
return (LPARAM)NtUserCallOneParam((DWORD)lParam, ONEPARAM_ROUTINE_SETMESSAGEEXTRAINFO);
|
||||||
return (LPARAM)0;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -83,6 +83,9 @@ typedef struct _USER_MESSAGE_QUEUE
|
||||||
WORD ChangedBits;
|
WORD ChangedBits;
|
||||||
WORD ChangedMask;
|
WORD ChangedMask;
|
||||||
|
|
||||||
|
/* extra message information */
|
||||||
|
LPARAM ExtraInfo;
|
||||||
|
|
||||||
} USER_MESSAGE_QUEUE, *PUSER_MESSAGE_QUEUE;
|
} USER_MESSAGE_QUEUE, *PUSER_MESSAGE_QUEUE;
|
||||||
|
|
||||||
VOID FASTCALL
|
VOID FASTCALL
|
||||||
|
@ -156,6 +159,9 @@ BOOL IntUninitMessagePumpHook();
|
||||||
PHOOKTABLE FASTCALL MsqGetHooks(PUSER_MESSAGE_QUEUE Queue);
|
PHOOKTABLE FASTCALL MsqGetHooks(PUSER_MESSAGE_QUEUE Queue);
|
||||||
VOID FASTCALL MsqSetHooks(PUSER_MESSAGE_QUEUE Queue, PHOOKTABLE Hooks);
|
VOID FASTCALL MsqSetHooks(PUSER_MESSAGE_QUEUE Queue, PHOOKTABLE Hooks);
|
||||||
|
|
||||||
|
LPARAM FASTCALL MsqSetMessageExtraInfo(LPARAM lParam);
|
||||||
|
LPARAM FASTCALL MsqGetMessageExtraInfo(VOID);
|
||||||
|
|
||||||
#endif /* _WIN32K_MSGQUEUE_H */
|
#endif /* _WIN32K_MSGQUEUE_H */
|
||||||
|
|
||||||
/* EOF */
|
/* EOF */
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
/* $Id: misc.c,v 1.34 2003/12/14 12:39:32 navaraf Exp $
|
/* $Id: misc.c,v 1.35 2003/12/19 19:30:05 weiden Exp $
|
||||||
*
|
*
|
||||||
* COPYRIGHT: See COPYING in the top level directory
|
* COPYRIGHT: See COPYING in the top level directory
|
||||||
* PROJECT: ReactOS kernel
|
* PROJECT: ReactOS kernel
|
||||||
|
@ -23,6 +23,7 @@
|
||||||
#include <include/object.h>
|
#include <include/object.h>
|
||||||
#include <include/focus.h>
|
#include <include/focus.h>
|
||||||
#include <include/clipboard.h>
|
#include <include/clipboard.h>
|
||||||
|
#include <include/msgqueue.h>
|
||||||
|
|
||||||
#define NDEBUG
|
#define NDEBUG
|
||||||
#include <debug.h>
|
#include <debug.h>
|
||||||
|
@ -74,6 +75,10 @@ NtUserCallNoParam(DWORD Routine)
|
||||||
Result = (DWORD)IntUninitMessagePumpHook();
|
Result = (DWORD)IntUninitMessagePumpHook();
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
case NOPARAM_ROUTINE_GETMESSAGEEXTRAINFO:
|
||||||
|
Result = (DWORD)MsqGetMessageExtraInfo();
|
||||||
|
break;
|
||||||
|
|
||||||
default:
|
default:
|
||||||
DPRINT1("Calling invalid routine number 0x%x in NtUserCallTwoParam\n");
|
DPRINT1("Calling invalid routine number 0x%x in NtUserCallTwoParam\n");
|
||||||
SetLastWin32Error(ERROR_INVALID_PARAMETER);
|
SetLastWin32Error(ERROR_INVALID_PARAMETER);
|
||||||
|
@ -159,6 +164,9 @@ NtUserCallOneParam(
|
||||||
|
|
||||||
case ONEPARAM_ROUTINE_ENUMCLIPBOARDFORMATS:
|
case ONEPARAM_ROUTINE_ENUMCLIPBOARDFORMATS:
|
||||||
return (DWORD)IntEnumClipboardFormats((UINT)Param);
|
return (DWORD)IntEnumClipboardFormats((UINT)Param);
|
||||||
|
|
||||||
|
case ONEPARAM_ROUTINE_SETMESSAGEEXTRAINFO:
|
||||||
|
return (DWORD)MsqSetMessageExtraInfo((LPARAM)Param);
|
||||||
}
|
}
|
||||||
DPRINT1("Calling invalid routine number 0x%x in NtUserCallOneParam()\n Param=0x%x\n",
|
DPRINT1("Calling invalid routine number 0x%x in NtUserCallOneParam()\n Param=0x%x\n",
|
||||||
Routine, Param);
|
Routine, Param);
|
||||||
|
|
|
@ -16,7 +16,7 @@
|
||||||
* along with this program; if not, write to the Free Software
|
* along with this program; if not, write to the Free Software
|
||||||
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
||||||
*/
|
*/
|
||||||
/* $Id: msgqueue.c,v 1.50 2003/12/15 21:51:10 weiden Exp $
|
/* $Id: msgqueue.c,v 1.51 2003/12/19 19:30:05 weiden Exp $
|
||||||
*
|
*
|
||||||
* COPYRIGHT: See COPYING in the top level directory
|
* COPYRIGHT: See COPYING in the top level directory
|
||||||
* PROJECT: ReactOS kernel
|
* PROJECT: ReactOS kernel
|
||||||
|
@ -876,4 +876,36 @@ MsqSetHooks(PUSER_MESSAGE_QUEUE Queue, PHOOKTABLE Hooks)
|
||||||
Queue->Hooks = Hooks;
|
Queue->Hooks = Hooks;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
LPARAM FASTCALL
|
||||||
|
MsqSetMessageExtraInfo(LPARAM lParam)
|
||||||
|
{
|
||||||
|
LPARAM Ret;
|
||||||
|
PUSER_MESSAGE_QUEUE MessageQueue;
|
||||||
|
|
||||||
|
MessageQueue = PsGetWin32Thread()->MessageQueue;
|
||||||
|
if(!MessageQueue)
|
||||||
|
{
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
Ret = MessageQueue->ExtraInfo;
|
||||||
|
MessageQueue->ExtraInfo = lParam;
|
||||||
|
|
||||||
|
return Ret;
|
||||||
|
}
|
||||||
|
|
||||||
|
LPARAM FASTCALL
|
||||||
|
MsqGetMessageExtraInfo(VOID)
|
||||||
|
{
|
||||||
|
PUSER_MESSAGE_QUEUE MessageQueue;
|
||||||
|
|
||||||
|
MessageQueue = PsGetWin32Thread()->MessageQueue;
|
||||||
|
if(!MessageQueue)
|
||||||
|
{
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
return MessageQueue->ExtraInfo;
|
||||||
|
}
|
||||||
|
|
||||||
/* EOF */
|
/* EOF */
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue