ReactOS  0.4.14-dev-606-g14ebc0b
ntuser.h
Go to the documentation of this file.
1 #ifndef __WIN32K_NTUSER_H
2 #define __WIN32K_NTUSER_H
3 
4 struct _PROCESSINFO;
5 struct _THREADINFO;
6 struct _DESKTOP;
7 struct _WND;
8 struct tagPOPUPMENU;
9 #ifndef HIMC
10 typedef HANDLE HIMC;
11 #endif
12 
13 #define FIRST_USER_HANDLE 0x0020 /* first possible value for low word of user handle */
14 #define LAST_USER_HANDLE 0xffef /* last possible value for low word of user handle */
15 
16 #define HANDLEENTRY_DESTROY 1
17 #define HANDLEENTRY_INDESTROY 2
18 
19 typedef struct _USER_HANDLE_ENTRY
20 {
21  void *ptr; /* pointer to object */
22  union
23  {
25  struct _THREADINFO *pti; /* pointer to Win32ThreadInfo */
26  struct _PROCESSINFO *ppi; /* pointer to W32ProcessInfo */
27  };
28  unsigned char type; /* object type (0 if free) */
29  unsigned char flags;
30  unsigned short generation; /* generation counter */
32 
33 typedef struct _USER_HANDLE_TABLE
34 {
40 
41 typedef enum _HANDLE_TYPE
42 {
43  TYPE_FREE = 0,
45  TYPE_MENU = 2,
48  TYPE_HOOK = 5,
59  TYPE_TIMER = 16,
68 
70 {
83 
84 typedef struct _LARGE_UNICODE_STRING
85 {
91 
92 typedef struct _LARGE_STRING
93 {
99 
100 
101 /* Based on ANSI_STRING */
102 typedef struct _LARGE_ANSI_STRING
103 {
109 
110 VOID
111 NTAPI
114  IN PCSZ,
115  IN INT);
116 
117 VOID
118 NTAPI
121  IN PCWSTR,
122  IN INT);
123 
124 BOOL
125 NTAPI
128  PLARGE_STRING);
129 
130 #define NB_HOOKS (WH_MAXHOOK - WH_MINHOOK + 1)
131 
132 typedef struct _DESKTOPINFO
133 {
136  struct _WND *spwnd;
139 
143  struct _WND *spwndShell;
144  struct _WND *spwndBkGnd;
145 
147 
148  union
149  {
151  struct
152  {
154  };
155  };
156 
159 
160 #define CTI_THREADSYSLOCK 0x0001
161 #define CTI_INSENDMESSAGE 0x0002
162 
163 typedef struct _CLIENTTHREADINFO
164 {
173 
174 typedef struct _HEAD
175 {
178 } HEAD, *PHEAD;
179 
180 typedef struct _THROBJHEAD
181 {
183  struct _THREADINFO *pti;
185 
186 typedef struct _THRDESKHEAD
187 {
189  struct _DESKTOP *rpdesk;
192 
193 typedef struct _PROCDESKHEAD
194 {
197  struct _DESKTOP *rpdesk;
200 
201 typedef struct _PROCMARKHEAD
202 {
205  struct _PROCESSINFO *ppi;
207 
208 #define UserHMGetHandle(obj) ((obj)->head.h)
209 
210 /* Window Client Information structure */
211 struct _ETHREAD;
212 
213 #define WEF_SETBYWNDPTI 0x0001
214 
215 typedef struct tagHOOK
216 {
218  struct tagHOOK *phkNext; /* This is for user space. */
219  int HookId; /* Hook table index */
221  ULONG flags; /* Some internal flags */
224  struct _DESKTOP *rpdesk;
225  /* ReactOS */
226  LIST_ENTRY Chain; /* Hook chain entry */
227  HOOKPROC Proc; /* Hook function */
228  BOOLEAN Ansi; /* Is it an Ansi hook? */
229  UNICODE_STRING ModuleName; /* Module name for global hooks */
230 } HOOK, *PHOOK;
231 
232 typedef struct tagCLIPBOARDDATA
233 {
236  BYTE Data[0];
238 
239 /* THREADINFO Flags */
240 #define TIF_INCLEANUP 0x00000001
241 #define TIF_16BIT 0x00000002
242 #define TIF_SYSTEMTHREAD 0x00000004
243 #define TIF_CSRSSTHREAD 0x00000008
244 #define TIF_TRACKRECTVISIBLE 0x00000010
245 #define TIF_ALLOWFOREGROUNDACTIVATE 0x00000020
246 #define TIF_DONTATTACHQUEUE 0x00000040
247 #define TIF_DONTJOURNALATTACH 0x00000080
248 #define TIF_WOW64 0x00000100
249 #define TIF_INACTIVATEAPPMSG 0x00000200
250 #define TIF_SPINNING 0x00000400
251 #define TIF_PALETTEAWARE 0x00000800
252 #define TIF_SHAREDWOW 0x00001000
253 #define TIF_FIRSTIDLE 0x00002000
254 #define TIF_WAITFORINPUTIDLE 0x00004000
255 #define TIF_MOVESIZETRACKING 0x00008000
256 #define TIF_VDMAPP 0x00010000
257 #define TIF_DOSEMULATOR 0x00020000
258 #define TIF_GLOBALHOOKER 0x00040000
259 #define TIF_DELAYEDEVENT 0x00080000
260 #define TIF_MSGPOSCHANGED 0x00100000
261 #define TIF_SHUTDOWNCOMPLETE 0x00200000
262 #define TIF_IGNOREPLAYBACKDELAY 0x00400000
263 #define TIF_ALLOWOTHERACCOUNTHOOK 0x00800000
264 #define TIF_GUITHREADINITIALIZED 0x02000000
265 #define TIF_DISABLEIME 0x04000000
266 #define TIF_INGETTEXTLENGTH 0x08000000
267 #define TIF_ANSILENGTH 0x10000000
268 #define TIF_DISABLEHOOKS 0x20000000
269 
270 typedef struct _CALLBACKWND
271 {
273  struct _WND *pWnd;
276 
277 #define CI_TRANSACTION 0x00000001
278 #define CI_QUEUEMSG 0x00000002
279 #define CI_WOW 0x00000004
280 #define CI_INITTHREAD 0x00000008
281 #define CI_CURTHPRHOOK 0x00000010
282 #define CI_CLASSESREGISTERED 0x00000020
283 #define CI_IMMACTIVATE 0x00000040
284 
285 typedef struct _CLIENTINFO
286 {
292  DWORD dwTIFlags; /* ThreadInfo TIF_Xxx flags for User space. */
313 /* It's just a pointer reference not to be used w the structure in user space. */
314  struct _PROCESSINFO *ppi;
316 
317 /* Make sure it fits into the TEB */
318 C_ASSERT(sizeof(CLIENTINFO) <= sizeof(((PTEB)0)->Win32ClientInfo));
319 
320 #define GetWin32ClientInfo() ((PCLIENTINFO)(NtCurrentTeb()->Win32ClientInfo))
321 
322 typedef struct tagDDEPACK
323 {
326 } DDEPACK, *PDDEPACK;
327 
328 #define HRGN_NULL ((HRGN)0) /* NULL empty region */
329 #define HRGN_WINDOW ((HRGN)1) /* region from window rcWindow */
330 #define HRGN_MONITOR ((HRGN)2) /* region from monitor region. */
331 
332 /* Menu Item fType. */
333 #define MFT_RTOL 0x6000
334 
335 /* Menu Item fState. */
336 #define MFS_HBMMENUBMP 0x20000000
337 
338 typedef struct tagITEM
339 {
343  struct tagMENU *spSubMenu; /* Pop-up menu. */
346  USHORT *Xlpstr; /* Item text pointer. */
349  ULONG xItem; /* Item position. left */
350  ULONG yItem; /* " top */
351  ULONG cxItem; /* Item Size Width */
352  ULONG cyItem; /* " Height */
353  ULONG dxTab; /* X position of text after Tab */
354  ULONG ulX; /* underline.. start position */
355  ULONG ulWidth; /* underline.. width */
356  HBITMAP hbmp; /* bitmap */
357  INT cxBmp; /* Width Maximum size of the bitmap items in MIIM_BITMAP state */
358  INT cyBmp; /* Height " */
359  /* ReactOS */
361 } ITEM, *PITEM;
362 
363 typedef struct tagMENULIST
364 {
366  struct tagMENU *pMenu;
367 } MENULIST, *PMENULIST;
368 
369 /* Menu fFlags, upper byte is MNS_X style flags. */
370 #define MNF_POPUP 0x0001
371 #define MNF_UNDERLINE 0x0004
372 #define MNF_INACTIVE 0x0010
373 #define MNF_RTOL 0x0020
374 #define MNF_DESKTOPMN 0x0040
375 #define MNF_SYSDESKMN 0x0080
376 #define MNF_SYSSUBMENU 0x0100
377 /* Hack */
378 #define MNF_SYSMENU 0x0200
379 
380 /* (other FocusedItem values give the position of the focused item) */
381 #define NO_SELECTED_ITEM 0xffff
382 
383 typedef struct tagMENU
384 {
386  ULONG fFlags; /* [Style flags | Menu flags] */
387  INT iItem; /* nPos of selected item, if -1 not selected. AKA focused item */
388  UINT cAlloced; /* Number of allocated items. Inc's of 8 */
389  UINT cItems; /* Number of items in the menu */
390  ULONG cxMenu; /* Width of the whole menu */
391  ULONG cyMenu; /* Height of the whole menu */
392  ULONG cxTextAlign; /* Offset of text when items have both bitmaps and text */
393  struct _WND *spwndNotify; /* window receiving the messages for ownerdraw */
394  PITEM rgItems; /* Array of menu items */
395  struct tagMENULIST *pParentMenus; /* If this is SubMenu, list of parents. */
397  ULONG cyMax; /* max height of the whole menu, 0 is screen height */
398  DWORD_PTR dwMenuData; /* application defined value */
399  HBRUSH hbrBack; /* brush for menu background */
400  INT iTop; /* Current scroll position Top */
401  INT iMaxTop; /* Current scroll position Max Top */
402  DWORD dwArrowsOn:2; /* Arrows: 0 off, 1 on, 2 to the top, 3 to the bottom. */
403  /* ReactOS */
405  HWND hWnd; /* Window containing the menu, use POPUPMENU */
407 } MENU, *PMENU;
408 
409 typedef struct tagPOPUPMENU
410 {
434  // ULONG fDesktopMenu:1;
437  struct _WND *spwndNotify;
449 
450 typedef struct _REGISTER_SYSCLASS
451 {
452  /* This is a reactos specific class used to initialize the
453  system window classes during user32 initialization */
459  HBRUSH hBrush;
463 
464 typedef struct _CLSMENUNAME
465 {
470 
471 typedef struct tagSBDATA
472 {
477 } SBDATA, *PSBDATA;
478 
479 typedef struct tagSBINFO
480 {
484 } SBINFO, *PSBINFO;
485 
486 typedef struct tagSBCALC
487 {
504 } SBCALC, *PSBCALC;
505 
506 typedef enum _GETCPD
507 {
508  UserGetCPDA2U = 0x01, /* " Unicode " */
509  UserGetCPDU2A = 0X02, /* " Ansi " */
514 } GETCPD, *PGETCPD;
515 
516 typedef struct _CALLPROCDATA
517 {
523 
524 #define CSF_SERVERSIDEPROC 0x0001
525 #define CSF_ANSIPROC 0x0002
526 #define CSF_WOWDEFERDESTROY 0x0004
527 #define CSF_SYSTEMCLASS 0x0008
528 #define CSF_WOWCLASS 0x0010
529 #define CSF_WOWEXTRA 0x0020
530 #define CSF_CACHEDSMICON 0x0040
531 #define CSF_WIN40COMPAT 0x0080
532 
533 typedef struct _CLS
534 {
535  struct _CLS *pclsNext;
542  PSTR lpszClientAnsiMenuName; /* For client use */
545  struct _CLS *pclsBase;
546  struct _CLS *pclsClone;
556  PWSTR lpszMenuName; /* kernel use */
560  UINT Unicode:1; // !CSF_ANSIPROC
561  UINT Global:1; // CS_GLOBALCLASS or CSF_SERVERSIDEPROC
564 } CLS, *PCLS;
565 
566 typedef struct _SBINFOEX
567 {
570 } SBINFOEX, *PSBINFOEX;
571 
572 /* State Flags !Not Implemented! */
573 #define WNDS_HASMENU 0X00000001
574 #define WNDS_HASVERTICALSCROOLLBAR 0X00000002
575 #define WNDS_HASHORIZONTALSCROLLBAR 0X00000004
576 #define WNDS_HASCAPTION 0X00000008
577 #define WNDS_SENDSIZEMOVEMSGS 0X00000010
578 #define WNDS_MSGBOX 0X00000020
579 #define WNDS_ACTIVEFRAME 0X00000040
580 #define WNDS_HASSPB 0X00000080
581 #define WNDS_NONCPAINT 0X00000100
582 #define WNDS_SENDERASEBACKGROUND 0X00000200
583 #define WNDS_ERASEBACKGROUND 0X00000400
584 #define WNDS_SENDNCPAINT 0X00000800
585 #define WNDS_INTERNALPAINT 0X00001000
586 #define WNDS_UPDATEDIRTY 0X00002000
587 #define WNDS_HIDDENPOPUP 0X00004000
588 #define WNDS_FORCEMENUDRAW 0X00008000
589 #define WNDS_DIALOGWINDOW 0X00010000
590 #define WNDS_HASCREATESTRUCTNAME 0X00020000
591 #define WNDS_SERVERSIDEWINDOWPROC 0x00040000 /* Call proc inside win32k. */
592 #define WNDS_ANSIWINDOWPROC 0x00080000
593 #define WNDS_BEINGACTIVATED 0x00100000
594 #define WNDS_HASPALETTE 0x00200000
595 #define WNDS_PAINTNOTPROCESSED 0x00400000
596 #define WNDS_SYNCPAINTPENDING 0x00800000
597 #define WNDS_RECEIVEDQUERYSUSPENDMSG 0x01000000
598 #define WNDS_RECEIVEDSUSPENDMSG 0x02000000
599 #define WNDS_TOGGLETOPMOST 0x04000000
600 #define WNDS_REDRAWIFHUNG 0x08000000
601 #define WNDS_REDRAWFRAMEIFHUNG 0x10000000
602 #define WNDS_ANSICREATOR 0x20000000
603 #define WNDS_MAXIMIZESTOMONITOR 0x40000000
604 #define WNDS_DESTROYED 0x80000000
605 
606 #define WNDSACTIVEFRAME 0x00000006
607 
608 /* State2 Flags !Not Implemented! */
609 #define WNDS2_WMPAINTSENT 0X00000001
610 #define WNDS2_ENDPAINTINVALIDATE 0X00000002
611 #define WNDS2_STARTPAINT 0X00000004
612 #define WNDS2_OLDUI 0X00000008
613 #define WNDS2_HASCLIENTEDGE 0X00000010
614 #define WNDS2_BOTTOMMOST 0X00000020
615 #define WNDS2_FULLSCREEN 0X00000040
616 #define WNDS2_INDESTROY 0X00000080
617 #define WNDS2_WIN31COMPAT 0X00000100
618 #define WNDS2_WIN40COMPAT 0X00000200
619 #define WNDS2_WIN50COMPAT 0X00000400
620 #define WNDS2_MAXIMIZEDMONITORREGION 0X00000800
621 #define WNDS2_CLOSEBUTTONDOWN 0X00001000
622 #define WNDS2_MAXIMIZEBUTTONDOWN 0X00002000
623 #define WNDS2_MINIMIZEBUTTONDOWN 0X00004000
624 #define WNDS2_HELPBUTTONDOWN 0X00008000
625 #define WNDS2_SCROLLBARLINEUPBTNDOWN 0X00010000
626 #define WNDS2_SCROLLBARPAGEUPBTNDOWN 0X00020000
627 #define WNDS2_SCROLLBARPAGEDOWNBTNDOWN 0X00040000
628 #define WNDS2_SCROLLBARLINEDOWNBTNDOWN 0X00080000
629 #define WNDS2_ANYSCROLLBUTTONDOWN 0X00100000
630 #define WNDS2_SCROLLBARVERTICALTRACKING 0X00200000
631 #define WNDS2_FORCENCPAINT 0X00400000
632 #define WNDS2_FORCEFULLNCPAINTCLIPRGN 0X00800000
633 #define WNDS2_FULLSCREENMODE 0X01000000
634 #define WNDS2_CAPTIONTEXTTRUNCATED 0X08000000
635 #define WNDS2_NOMINMAXANIMATERECTS 0X10000000
636 #define WNDS2_SMALLICONFROMWMQUERYDRAG 0X20000000
637 #define WNDS2_SHELLHOOKREGISTERED 0X40000000
638 #define WNDS2_WMCREATEMSGPROCESSED 0X80000000
639 
640 /* ExStyles2 */
641 #define WS_EX2_CLIPBOARDLISTENER 0X00000001
642 #define WS_EX2_LAYEREDINVALIDATE 0X00000002
643 #define WS_EX2_REDIRECTEDFORPRINT 0X00000004
644 #define WS_EX2_LINKED 0X00000008
645 #define WS_EX2_LAYEREDFORDWM 0X00000010
646 #define WS_EX2_LAYEREDLIMBO 0X00000020
647 #define WS_EX2_HIGHTDPI_UNAWAR 0X00000040
648 #define WS_EX2_VERTICALLYMAXIMIZEDLEFT 0X00000080
649 #define WS_EX2_VERTICALLYMAXIMIZEDRIGHT 0X00000100
650 #define WS_EX2_HASOVERLAY 0X00000200
651 #define WS_EX2_CONSOLEWINDOW 0X00000400
652 #define WS_EX2_CHILDNOACTIVATE 0X00000800
653 
654 #define WPF_MININIT 0x0008
655 #define WPF_MAXINIT 0x0010
656 
657 typedef struct _WND
658 {
660 #if 0
661  WW ww;
662 #else
663  /* These fields should be moved in the WW at some point. */
664  /* Plese do not change them to keep the same layout with WW. */
667  /* Extended style. */
669  /* Style. */
671  /* Handle of the module that created the window. */
674 #endif
675  struct _WND *spwndNext;
676  struct _WND *spwndPrev;
677  struct _WND *spwndParent;
678  struct _WND *spwndChild;
679  struct _WND *spwndOwner;
683  /* Pointer to the window class. */
686  /* Property list head.*/
689  /* Scrollbar info */
691  /* system menu handle. */
693  //PMENU spmenuSys;
694  /* Window menu handle or window id */
695  UINT_PTR IDMenu; // Use spmenu
696  //PMENU spmenu;
697  HRGN hrgnClip;
699  /* Window name. */
701  /* Size of the extra data associated with the window. */
704  HIMC hImc; // Input context associated with this window.
707  //PD3DMATRIX pTransForm;
710 
711  /* ReactOS */
712  struct
713  {
717  UINT flags; /* WPF_ flags. */
718  } InternalPos;
719 
720  UINT Unicode:1; /* !(WNDS_ANSICREATOR|WNDS_ANSIWINDOWPROC) ? */
722  UINT HideFocus:1; /* WS_EX_UISTATEFOCUSRECTHIDDEN ? */
723  UINT HideAccel:1; /* WS_EX_UISTATEKBACCELHIDDEN ? */
724 
725  /* Scrollbar info */
726  PSBINFOEX pSBInfoex; // convert to PSBINFO
727  /* Entry in the list of thread windows. */
729 } WND, *PWND;
730 
731 #define PWND_BOTTOM ((PWND)1)
732 
733 typedef struct _SBWND
734 {
739 } SBWND, *PSBWND;
740 
741 typedef struct _MDIWND
742 {
746 } MDIWND, *PMDIWND;
747 
748 #define GWLP_MDIWND 4
749 
750 typedef struct _MENUWND
751 {
754 } MENUWND, *PMENUWND;
755 
756 typedef struct _PFNCLIENT
757 {
782 
783 /*
784  Wine Common proc ( HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam, BOOL Unicode );
785  Windows uses Ansi == TRUE, Wine uses Unicode == TRUE.
786  */
787 
788 typedef LRESULT
790  HWND,
791  UINT,
792  WPARAM,
793  LPARAM,
794  BOOL);
795 
796 typedef struct _PFNCLIENTWORKER
797 {
810 
811 typedef LONG_PTR
813  PWND,
814  UINT,
815  WPARAM,
816  LPARAM,
817  ULONG_PTR);
818 
819 /* FNID's for NtUserSetWindowFNID, NtUserMessageCall */
820 #define FNID_FIRST 0x029A
821 #define FNID_SCROLLBAR 0x029A
822 #define FNID_ICONTITLE 0x029B
823 #define FNID_MENU 0x029C
824 #define FNID_DESKTOP 0x029D
825 #define FNID_DEFWINDOWPROC 0x029E
826 #define FNID_MESSAGEWND 0x029F
827 #define FNID_SWITCH 0x02A0
828 #define FNID_BUTTON 0x02A1
829 #define FNID_COMBOBOX 0x02A2
830 #define FNID_COMBOLBOX 0x02A3
831 #define FNID_DIALOG 0x02A4
832 #define FNID_EDIT 0x02A5
833 #define FNID_LISTBOX 0x02A6
834 #define FNID_MDICLIENT 0x02A7
835 #define FNID_STATIC 0x02A8
836 #define FNID_IME 0x02A9
837 #define FNID_GHOST 0x02AA
838 #define FNID_CALLWNDPROC 0x02AB
839 #define FNID_CALLWNDPROCRET 0x02AC
840 #define FNID_HKINLPCWPEXSTRUCT 0x02AD
841 #define FNID_HKINLPCWPRETEXSTRUCT 0x02AE
842 #define FNID_MB_DLGPROC 0x02AF
843 #define FNID_MDIACTIVATEDLGPROC 0x02B0
844 #define FNID_SENDMESSAGE 0x02B1
845 #define FNID_SENDMESSAGEFF 0x02B2
846 /* Kernel has option to use TimeOut or normal msg send, based on type of msg. */
847 #define FNID_SENDMESSAGEWTOOPTION 0x02B3
848 #define FNID_SENDMESSAGECALLPROC 0x02B4
849 #define FNID_BROADCASTSYSTEMMESSAGE 0x02B5
850 #define FNID_TOOLTIPS 0x02B6
851 #define FNID_SENDNOTIFYMESSAGE 0x02B7
852 #define FNID_SENDMESSAGECALLBACK 0x02B8
853 #define FNID_LAST 0x02B9
854 
855 #define FNID_NUM FNID_LAST - FNID_FIRST + 1
856 #define FNID_NUMSERVERPROC FNID_SWITCH - FNID_FIRST + 1
857 
858 #define FNID_DDEML 0x2000 /* Registers DDEML */
859 #define FNID_DESTROY 0x4000 /* This is sent when WM_NCDESTROY or in the support routine. */
860  /* Seen during WM_CREATE on error exit too. */
861 #define FNID_FREED 0x8000 /* Window being Freed... */
862 
863 #define ICLASS_TO_MASK(iCls) (1 << ((iCls)))
864 
865 #define GETPFNCLIENTA(fnid) \
866  (WNDPROC)(*(((ULONG_PTR *)&gpsi->apfnClientA) + (fnid - FNID_FIRST)))
867 #define GETPFNCLIENTW(fnid) \
868  (WNDPROC)(*(((ULONG_PTR *)&gpsi->apfnClientW) + (fnid - FNID_FIRST)))
869 
870 #define GETPFNSERVER(fnid) gpsi->aStoCidPfn[fnid - FNID_FIRST]
871 
872 /* ICLS's for NtUserGetClassName FNID to ICLS, NtUserInitializeClientPfnArrays */
873 #define ICLS_BUTTON 0
874 #define ICLS_EDIT 1
875 #define ICLS_STATIC 2
876 #define ICLS_LISTBOX 3
877 #define ICLS_SCROLLBAR 4
878 #define ICLS_COMBOBOX 5
879 #define ICLS_MDICLIENT 6
880 #define ICLS_COMBOLBOX 7
881 #define ICLS_DDEMLEVENT 8
882 #define ICLS_DDEMLMOTHER 9
883 #define ICLS_DDEML16BIT 10
884 #define ICLS_DDEMLCLIENTA 11
885 #define ICLS_DDEMLCLIENTW 12
886 #define ICLS_DDEMLSERVERA 13
887 #define ICLS_DDEMLSERVERW 14
888 #define ICLS_IME 15
889 #define ICLS_GHOST 16
890 #define ICLS_DESKTOP 17
891 #define ICLS_DIALOG 18
892 #define ICLS_MENU 19
893 #define ICLS_SWITCH 20
894 #define ICLS_ICONTITLE 21
895 #define ICLS_TOOLTIPS 22
896 #if (_WIN32_WINNT <= 0x0501)
897 #define ICLS_UNKNOWN 22
898 #define ICLS_NOTUSED 23
899 #else
900 #define ICLS_SYSSHADOW 23
901 #define ICLS_HWNDMESSAGE 24
902 #define ICLS_NOTUSED 25
903 #endif
904 #define ICLS_END 31
905 
906 #define COLOR_LAST COLOR_MENUBAR
907 #define MAX_MB_STRINGS 11
908 
909 #define SRVINFO_DBCSENABLED 0x0002
910 #define SRVINFO_IMM32 0x0004
911 #define SRVINFO_APIHOOK 0x0010
912 #define SRVINFO_METRICS 0x0020
913 #define SRVINFO_KBDPREF 0x0080
914 
915 #define NUM_SYSCOLORS 31
916 
917 typedef struct tagOEMBITMAPINFO
918 {
924 
925 typedef enum _OBI_TYPES
926 {
934 } OBI_TYPES;
935 
936 typedef struct tagMBSTRING
937 {
941 } MBSTRING, *PMBSTRING;
942 
943 typedef struct tagDPISERVERINFO
944 {
945  INT gclBorder; /* 000 */
946  HFONT hCaptionFont; /* 004 */
947  HFONT hMsgFont; /* 008 */
948  INT cxMsgFontChar; /* 00C */
949  INT cyMsgFontChar; /* 010 */
950  UINT wMaxBtnSize; /* 014 */
952 
953 /* PUSIFlags: */
954 #define PUSIF_PALETTEDISPLAY 0x01
955 #define PUSIF_SNAPTO 0x02
956 #define PUSIF_COMBOBOXANIMATION 0x04
957 #define PUSIF_LISTBOXSMOOTHSCROLLING 0x08
958 #define PUSIF_KEYBOARDCUES 0x20
959 
960 typedef struct _PERUSERSERVERINFO
961 {
966  HBRUSH hbrGray;
1001 
1002 typedef struct tagSERVERINFO
1003 {
1027 
1028 #ifdef _M_IX86
1029 C_ASSERT(sizeof(SERVERINFO) <= PAGE_SIZE);
1030 #endif
1031 
1032 
1033 /* Server event activity bits. */
1034 #define SRV_EVENT_MENU 0x0001
1035 #define SRV_EVENT_END_APPLICATION 0x0002
1036 #define SRV_EVENT_RUNNING 0x0004
1037 #define SRV_EVENT_NAMECHANGE 0x0008
1038 #define SRV_EVENT_VALUECHANGE 0x0010
1039 #define SRV_EVENT_STATECHANGE 0x0020
1040 #define SRV_EVENT_LOCATIONCHANGE 0x0040
1041 #define SRV_EVENT_CREATE 0x8000
1042 
1043 typedef struct _PROPLISTITEM
1044 {
1048 
1049 #define PROPERTY_FLAG_SYSTEM 1
1050 
1051 typedef struct _PROPERTY
1052 {
1057 } PROPERTY, *PPROPERTY;
1058 
1059 typedef struct _BROADCASTPARM
1060 {
1063  HDESK hDesk;
1067 
1070 
1071 typedef struct _WNDMSG
1072 {
1075 } WNDMSG, *PWNDMSG;
1076 
1077 typedef struct _SHAREDINFO
1078 {
1079  PSERVERINFO psi; /* global Server Info */
1080  PVOID aheList; /* Handle Entry List */
1081  PVOID pDispInfo; /* global PDISPLAYINFO pointer */
1082  ULONG_PTR ulSharedDelta; /* Heap delta */
1087 
1088 /* See also the USERSRV_API_CONNECTINFO #define in include/reactos/subsys/win/winmsg.h */
1089 typedef struct _USERCONNECT
1090 {
1096 
1097 /* WinNT 5.0 compatible user32 / win32k */
1098 #define USER_VERSION MAKELONG(0x0000, 0x0005)
1099 
1100 #if defined(_M_IX86)
1101 C_ASSERT(sizeof(USERCONNECT) == 0x124);
1102 #endif
1103 
1104 typedef struct tagGETCLIPBDATA
1105 {
1108  union
1109  {
1112  };
1114 
1115 typedef struct tagSETCLIPBDATA
1116 {
1120 
1121 /* Used with NtUserSetCursorIconData, last parameter. */
1122 typedef struct tagCURSORDATA
1123 {
1135  HBITMAP hbmUserAlpha; /* Could be in W7U, not in W2k */
1145 } CURSORDATA, *PCURSORDATA; /* !dso CURSORDATA */
1146 
1147 /* CURSORF_flags: */
1148 #define CURSORF_FROMRESOURCE 0x0001
1149 #define CURSORF_GLOBAL 0x0002
1150 #define CURSORF_LRSHARED 0x0004
1151 #define CURSORF_ACON 0x0008
1152 #define CURSORF_WOWCLEANUP 0x0010
1153 #define CURSORF_ACONFRAME 0x0040
1154 #define CURSORF_SECRET 0x0080
1155 #define CURSORF_LINKED 0x0100
1156 #define CURSORF_CURRENT 0x0200
1157 
1158 typedef struct tagIMEINFOEX
1159 {
1170  struct
1171  {
1174  };
1175 } IMEINFOEX, *PIMEINFOEX;
1176 
1177 typedef struct tagIMEUI
1178 {
1185  struct {
1193  };
1194 } IMEUI, *PIMEUI;
1195 
1196 /* Window Extra data container. */
1197 typedef struct _IMEWND
1198 {
1201 } IMEWND, *PIMEWND;
1202 
1203 DWORD
1204 NTAPI
1206  DWORD dwUnknown1,
1207  DWORD dwUnknown2,
1208  DWORD dwUnknown3);
1209 
1210 DWORD
1211 NTAPI
1213  DWORD dwUnknown1,
1214  DWORD dwUnknown2,
1215  DWORD dwUnknown3,
1216  DWORD dwUnknown4);
1217 
1218 DWORD
1219 NTAPI
1221  HWND hwnd,
1222  DWORD x,
1223  DWORD width,
1224  DWORD y,
1225  LPRECT prc);
1226 
1227 DWORD
1228 NTAPI
1230  HMENU hmenu,
1231  UINT uIDCheckItem,
1232  UINT uCheck);
1233 
1234 DWORD
1235 NTAPI
1237  DWORD dwUnknown1,
1238  DWORD dwUnknown2,
1239  DWORD dwUnknown3);
1240 
1241 DWORD
1242 APIENTRY
1244  DWORD Unknown0,
1245  DWORD Unknown1);
1246 
1247 DWORD
1248 APIENTRY
1250  DWORD Unknown0,
1251  DWORD Unknown1);
1252 
1253 BOOL
1254 NTAPI
1256  HMENU hMenu,
1257  UINT uPosition,
1258  UINT uFlags);
1259 
1260 BOOL
1261 NTAPI
1263  HMENU hMenu);
1264 
1265 DWORD
1266 NTAPI
1268  HWND hWnd,
1269  HDC hDC,
1270  PRECT hRect,
1271  HMENU hMenu,
1272  HFONT hFont);
1273 
1274 UINT
1275 NTAPI
1277  HMENU hMenu,
1278  UINT uIDEnableItem,
1279  UINT uEnable);
1280 
1281 BOOL
1282 NTAPI
1284 
1285 BOOL
1286 NTAPI
1288  HWND hwnd,
1289  LONG idObject,
1290  LONG idItem,
1291  PMENUBARINFO pmbi);
1292 
1293 UINT
1294 NTAPI
1296  HMENU hMenu,
1297  HMENU hSubMenu);
1298 
1299 BOOL
1300 NTAPI
1302  HWND hWnd,
1303  HMENU hMenu,
1304  UINT uItem,
1305  LPRECT lprcItem);
1306 
1307 HMENU
1308 NTAPI
1310  HWND hWnd,
1311  BOOL bRevert);
1312 
1313 BOOL
1314 NTAPI
1316  HWND hWnd,
1317  HMENU hMenu,
1318  UINT uItemHilite,
1319  UINT uHilite);
1320 
1321 int
1322 NTAPI
1324  HWND hWnd,
1325  HMENU hMenu,
1326  DWORD X,
1327  DWORD Y);
1328 
1329 BOOL
1330 NTAPI
1332  HMENU hMenu,
1333  UINT uPosition,
1334  UINT uFlags);
1335 
1336 BOOL
1337 NTAPI
1339  HWND hWnd,
1340  HMENU hMenu,
1341  BOOL bRepaint);
1342 
1343 BOOL
1344 NTAPI
1346  HMENU hmenu,
1347  DWORD dwContextHelpId);
1348 
1349 BOOL
1350 NTAPI
1352  HMENU hMenu,
1353  UINT uItem,
1354  UINT fByPos);
1355 
1356 BOOL
1357 NTAPI
1359  HMENU hMenu);
1360 
1361 BOOL
1362 NTAPI
1364  HWND hWnd,
1365  HMENU hMenu);
1366 
1367 BOOL
1368 NTAPI
1370  HMENU hMenu,
1371  LPCMENUINFO lpcmi);
1372 
1373 BOOL
1374 NTAPI
1376  HMENU hMenu,
1377  UINT uItem,
1378  BOOL fByPosition,
1379  BOOL bInsert,
1380  LPMENUITEMINFOW lpmii,
1381  PUNICODE_STRING lpszCaption);
1382 
1383 BOOL
1384 NTAPI
1386  HMENU hmenu,
1387  UINT fuFlags,
1388  int x,
1389  int y,
1390  HWND hwnd,
1391  LPTPMPARAMS lptpm);
1392 
1393 HKL
1394 NTAPI
1396  HKL hKl,
1397  ULONG Flags);
1398 
1399 DWORD
1400 NTAPI
1402  HWND hWnd,
1403  DWORD Index,
1404  LONG NewValue);
1405 
1406 BOOL
1407 NTAPI
1409  IN DWORD idAttach,
1410  IN DWORD idAttachTo,
1411  IN BOOL fAttach);
1412 
1413 HDC NTAPI
1415  HWND hWnd,
1416  PAINTSTRUCT *lPs);
1417 
1418 BOOL
1419 NTAPI
1421  HDC hdc,
1422  INT nXDest,
1423  INT nYDest,
1424  INT nWidth,
1425  INT nHeight,
1426  INT nXSrc,
1427  INT nYSrc,
1428  DWORD dwRop);
1429 
1430 BOOL
1431 NTAPI
1433  BOOL BlockIt);
1434 
1435 NTSTATUS
1436 NTAPI
1438  HDESK hDesktop,
1439  HWND hwndParent,
1440  BOOLEAN bChildren,
1441  ULONG dwThreadId,
1442  ULONG lParam,
1443  HWND *pWnd,
1444  ULONG *pBufSize);
1445 
1446 NTSTATUS
1447 NTAPI
1449  HWINSTA hWinSta,
1450  ULONG dwSize,
1451  PVOID lpBuffer,
1452  PULONG pRequiredSize);
1453 
1454 NTSTATUS
1455 NTAPI
1457  HWND hWnd,
1458  LPVOID Buffer,
1459  DWORD BufferSize,
1460  DWORD *Count);
1461 
1462 /* apfnSimpleCall indices from Windows XP SP 2 */
1463 /* TODO: Check for differences in Windows 2000, 2003 and 2008 */
1464 #define WIN32K_VERSION NTDDI_WINXPSP2 /* FIXME: this should go somewhere else */
1465 
1467 {
1470 #if (WIN32K_VERSION >= NTDDI_VISTA)
1475 #endif
1477 #if (WIN32K_VERSION < NTDDI_VISTA)
1481 #endif
1486 #if (WIN32K_VERSION >= NTDDI_VISTA)
1488 #else
1489  NOPARAM_ROUTINE_GETREMOTEPROCESSID,
1490 #endif
1493 #if (WIN32K_VERSION >= NTDDI_VISTA)
1496 #endif
1511 #if (WIN32K_VERSION >= NTDDI_VISTA)
1513 #endif
1516 #if (WIN32K_VERSION < NTDDI_VISTA)
1518 #endif
1520 #if (WIN32K_VERSION >= NTDDI_VISTA)
1522 #endif
1526 #if (WIN32K_VERSION < NTDDI_VISTA)
1527  ONEPARAM_ROUTINE_CREATESYSTEMTHREADS,
1528 #endif
1532 #if (WIN32K_VERSION < NTDDI_VISTA)
1533  ONEPARAM_ROUTINE_GETCURSORPOS,
1534 #endif
1541 #if (WIN32K_VERSION < NTDDI_VISTA)
1542  ONEPARAM_ROUTINE_HANDLESYSTHRDCREATFAIL,
1543 #endif
1550 #if (WIN32K_VERSION < NTDDI_VISTA)
1551  ONEPARAM_ROUTINE_PREPAREFORLOGOFF,
1552 #endif
1555 #if (WIN32K_VERSION >= NTDDI_VISTA)
1557 #endif
1561 #if (WIN32K_VERSION >= NTDDI_VISTA)
1563 #endif
1567 #if (WIN32K_VERSION < NTDDI_VISTA)
1568  ONEPARAM_ROUTINE_SETIMESHOWSTATUS,
1569 #endif
1572 #if (WIN32K_VERSION >= NTDDI_VISTA)
1574 #endif
1579 #if (WIN32K_VERSION < NTDDI_VISTA)
1580  X_ROUTINE_REMOTENOTIFY,
1581 #endif
1596  HWNDLOCK_ROUTINE_WINDOWHASSHADOW, /* correct prefix ? */
1615 #if (WIN32K_VERSION >= NTDDI_VISTA)
1618 #endif
1622 #if (WIN32K_VERSION >= NTDDI_VISTA)
1624 #endif
1626 #if (WIN32K_VERSION >= NTDDI_VISTA)
1628 #else
1629  TWOPARAM_ROUTINE_REGISTERSYSTEMTHREAD,
1630 #endif
1636 #if (WIN32K_VERSION >= NTDDI_VISTA)
1638 #endif
1641 };
1642 
1643 DWORD
1644 NTAPI
1646  HWND hWnd,
1647  DWORD Routine);
1648 
1649 BOOL
1650 NTAPI
1652  HWND hWnd,
1653  DWORD Routine);
1654 
1655 HWND
1656 NTAPI
1658  HWND hWnd,
1659  DWORD Routine);
1660 
1661 DWORD
1662 NTAPI
1664  HWND hWnd,
1665  DWORD_PTR Param,
1666  DWORD Routine);
1667 
1668 DWORD
1669 NTAPI
1671  HWND hWnd,
1672  DWORD_PTR Param,
1673  DWORD Routine);
1674 
1675 BOOL
1676 NTAPI
1678  LPMSG msg,
1679  INT code);
1680 
1681 LRESULT
1682 NTAPI
1684  int Code,
1685  WPARAM wParam,
1686  LPARAM lParam,
1687  BOOL Ansi);
1688 
1689 DWORD_PTR
1690 NTAPI
1692  DWORD Routine);
1693 
1694 DWORD_PTR
1695 NTAPI
1697  DWORD_PTR Param,
1698  DWORD Routine);
1699 
1700 DWORD_PTR
1701 NTAPI
1703  DWORD_PTR Param1,
1704  DWORD_PTR Param2,
1705  DWORD Routine);
1706 
1707 BOOL
1708 NTAPI
1710  HWND hWndRemove,
1711  HWND hWndNewNext);
1712 
1713 LONG
1714 NTAPI
1716  PUNICODE_STRING lpszDeviceName,
1718  DWORD dwflags,
1719  LPVOID lParam);
1720 
1721 BOOL
1722 NTAPI
1724  DWORD dwThreadId);
1725 
1726 BOOL
1727 NTAPI
1729  HWND hwnd,
1730  DWORD dwThreadId,
1731  ULONG ReturnValue);
1732 
1733 DWORD
1734 NTAPI
1736  DWORD dwUnknown1,
1737  LPARAM dwUnknown2);
1738 
1739 HWND NTAPI
1741  HWND Parent,
1742  LONG x,
1743  LONG y,
1744  UINT Flags);
1745 
1746 BOOL
1747 NTAPI
1749  RECT *lpRect);
1750 
1751 BOOL
1752 NTAPI
1754 
1755 BOOL
1756 NTAPI
1758  HDESK hDesktop);
1759 
1760 BOOL
1761 NTAPI
1763  HWINSTA hWinSta);
1764 
1765 /* Console commands for NtUserConsoleControl */
1766 typedef enum _CONSOLECONTROL
1767 {
1773 
1775 {
1779 
1780 NTSTATUS
1781 APIENTRY
1783  IN CONSOLECONTROL ConsoleCtrl,
1784  IN PVOID ConsoleCtrlInfo,
1785  IN ULONG ConsoleCtrlInfoLength);
1786 
1787 HANDLE
1788 NTAPI
1790  PVOID pData,
1791  DWORD cbData);
1792 
1793 ULONG
1794 NTAPI
1796  HACCEL Table,
1797  LPACCEL Entries,
1798  ULONG EntriesCount);
1799 
1800 DWORD
1801 NTAPI
1803 
1804 HACCEL
1805 NTAPI
1807  LPACCEL Entries,
1808  ULONG EntriesCount);
1809 
1810 BOOL
1811 NTAPI
1813  HWND hWnd,
1814  HBITMAP hBitmap,
1815  int nWidth,
1816  int nHeight);
1817 
1818 HDESK
1819 NTAPI
1821  POBJECT_ATTRIBUTES poa,
1822  PUNICODE_STRING lpszDesktopDevice,
1823  LPDEVMODEW lpdmw,
1824  DWORD dwFlags,
1825  ACCESS_MASK dwDesiredAccess);
1826 
1827 DWORD
1828 NTAPI
1830  DWORD dwUnknown1);
1831 
1832 NTSTATUS
1833 NTAPI
1835  HANDLE hMem,
1836  PVOID pData,
1837  DWORD cbData,
1838  DWORD *pcbData);
1839 
1840 HWND
1841 NTAPI
1843  DWORD dwExStyle,
1844  PLARGE_STRING plstrClassName,
1845  PLARGE_STRING plstrClsVersion,
1846  PLARGE_STRING plstrWindowName,
1847  DWORD dwStyle,
1848  int x,
1849  int y,
1850  int nWidth,
1851  int nHeight,
1852  HWND hWndParent,
1853  HMENU hMenu,
1855  LPVOID lpParam,
1856  DWORD dwFlags,
1857  PVOID acbiBuffer);
1858 
1859 HWINSTA
1860 NTAPI
1863  ACCESS_MASK dwDesiredAccess,
1864  DWORD Unknown2,
1865  DWORD Unknown3,
1866  DWORD Unknown4,
1867  DWORD Unknown5,
1868  DWORD Unknown6);
1869 
1870 BOOL
1871 NTAPI
1873  IN HWND hwndClient,
1874  IN HWND hWndServer,
1876 
1877 DWORD
1878 NTAPI
1880  DWORD Unknown0,
1881  DWORD Unknown1,
1882  DWORD Unknown2,
1883  DWORD Unknown3,
1884  DWORD Unknown4);
1885 
1886 BOOL
1887 NTAPI
1889  IN HWND hwndClient,
1892 
1893 HDWP
1894 NTAPI
1896  HDWP WinPosInfo,
1897  HWND Wnd,
1898  HWND WndInsertAfter,
1899  int x,
1900  int y,
1901  int cx,
1902  int cy,
1903  UINT Flags);
1904 
1905 BOOL
1906 NTAPI
1908  HWND WindowHandle,
1909  PLARGE_STRING WindowText);
1910 
1911 BOOLEAN
1912 NTAPI
1914  HACCEL Table);
1915 
1916 BOOL
1917 NTAPI
1919  _In_ HANDLE Handle,
1920  _In_ BOOL bForce);
1921 
1922 DWORD
1923 NTAPI
1925  DWORD dwUnknown1);
1926 
1927 BOOLEAN
1928 NTAPI
1930  HWND Wnd);
1931 
1932 DWORD
1933 NTAPI
1935  DWORD dwUnknown1);
1936 
1937 LRESULT
1938 NTAPI
1940  PMSG pMsg);
1941 
1942 BOOL
1943 NTAPI
1945  HWND hWnd,
1946  POINT pt);
1947 
1948 DWORD
1949 NTAPI
1951  HWND hwnd1,
1952  HWND hwnd2,
1953  UINT u1,
1954  DWORD dw1,
1955  HCURSOR hc1);
1956 
1957 BOOL
1958 NTAPI
1960  HWND hwnd,
1961  INT idAni,
1962  RECT *lprcFrom,
1963  RECT *lprcTo);
1964 
1965 BOOL
1966 NTAPI
1968  HWND hWnd,
1969  HDC hDc,
1970  LPCRECT lpRc,
1971  UINT uFlags);
1972 
1973 BOOL
1974 NTAPI
1976  HWND hWnd,
1977  HDC hDC,
1978  LPCRECT lpRc,
1979  HFONT hFont,
1980  HICON hIcon,
1981  const PUNICODE_STRING str,
1982  UINT uFlags);
1983 
1984 /* Used with NtUserDrawIconEx, last parameter. */
1985 typedef struct _DRAWICONEXDATA
1986 {
1989  int cx;
1990  int cy;
1992 
1993 BOOL
1994 NTAPI
1996  HDC hdc,
1997  int xLeft,
1998  int yTop,
1999  HICON hIcon,
2000  int cxWidth,
2001  int cyWidth,
2002  UINT istepIfAniCur,
2003  HBRUSH hbrFlickerFreeDraw,
2004  UINT diFlags,
2005  BOOL bMetaHDC,
2006  PVOID pDIXData);
2007 
2008 BOOL
2009 NTAPI
2011 
2012 BOOL
2013 NTAPI
2015  HWND hWnd,
2016  UINT wSBflags,
2017  UINT wArrows);
2018 
2019 BOOL
2020 NTAPI
2022  HDWP WinPosInfo,
2023  DWORD Unknown1);
2024 
2025 BOOL
2026 NTAPI
2028  HWND hWnd,
2029  CONST PAINTSTRUCT *lPs);
2030 
2031 BOOL
2032 NTAPI
2034  PUNICODE_STRING lpDevice, /* device name */
2035  DWORD iDevNum, /* display device */
2036  PDISPLAY_DEVICEW lpDisplayDevice, /* device information */
2037  DWORD dwFlags); /* reserved */
2038 
2039 /*
2040 BOOL
2041 NTAPI
2042 NtUserEnumDisplayMonitors(
2043  HDC hdc,
2044  LPCRECT lprcClip,
2045  MONITORENUMPROC lpfnEnum,
2046  LPARAM dwData);
2047 */
2048 /* FIXME: The call below is ros-specific and should be rewritten to use the same params as the correct call above. */
2049 INT
2050 NTAPI
2052  OPTIONAL IN HDC hDC,
2053  OPTIONAL IN LPCRECT pRect,
2054  OPTIONAL OUT HMONITOR *hMonitorList,
2055  OPTIONAL OUT LPRECT monitorRectList,
2056  OPTIONAL IN DWORD listSize);
2057 
2058 
2059 NTSTATUS
2060 NTAPI
2062  PUNICODE_STRING lpszDeviceName,
2063  DWORD iModeNum,
2064  LPDEVMODEW lpDevMode, /* FIXME is this correct? */
2065  DWORD dwFlags);
2066 
2067 DWORD
2068 NTAPI
2069 NtUserEvent(
2070  DWORD Unknown0);
2071 
2072 INT
2073 NTAPI
2075  HDC hDC,
2076  HWND hWnd);
2077 
2078 BOOL
2079 NTAPI
2081  HWND hWndPaint,
2082  HWND hWndPaint1,
2083  HDC hDC,
2084  HBRUSH hBrush);
2085 
2086 HWND
2087 NTAPI
2089  HWND hwndParent,
2090  HWND hwndChildAfter,
2091  PUNICODE_STRING ucClassName,
2092  PUNICODE_STRING ucWindowName,
2093  DWORD dwUnknown);
2094 
2095 BOOL
2096 NTAPI
2098  IN PFLASHWINFO pfwi);
2099 
2100 BOOL
2101 NTAPI
2103  HWND hwnd,
2104  INT iItem,
2105  PALTTABINFO pati,
2106  LPWSTR pszItemText,
2107  UINT cchItemText,
2108  BOOL Ansi);
2109 
2110 HWND
2111 NTAPI
2113  HWND hWnd,
2114  UINT Flags);
2115 
2116 DWORD
2117 NTAPI
2119  DWORD dwUnknown1);
2120 
2121 SHORT
2122 NTAPI
2124  INT Key);
2125 
2126 _Success_(return != 0)
2127 _At_(pustrName->Buffer, _Out_z_bytecap_post_bytecount_(pustrName->MaximumLength, return * 2 + 2))
2128 ULONG
2129 APIENTRY
2130 NtUserGetAtomName(
2131  _In_ ATOM atom,
2132  _Inout_ PUNICODE_STRING pustrName);
2133 
2134 UINT
2135 NTAPI
2137 
2138 BOOL
2139 NTAPI
2141  LPPOINT lpPoint);
2142 
2143 BOOL
2144 NTAPI
2147  PUNICODE_STRING ClassName,
2148  LPWNDCLASSEXW wcex,
2149  LPWSTR *ppszMenuName,
2150  BOOL Ansi);
2151 
2152 INT
2153 NTAPI
2155  HWND hWnd,
2156  BOOL Real, /* 0 GetClassNameW, 1 RealGetWindowClassA/W */
2157  PUNICODE_STRING ClassName);
2158 
2159 HANDLE
2160 NTAPI
2162  UINT fmt,
2163  PGETCLIPBDATA pgcd);
2164 
2165 INT
2166 NTAPI
2168  UINT uFormat,
2169  LPWSTR lpszFormatName,
2170  INT cchMaxCount);
2171 
2172 HWND
2173 NTAPI
2175 
2176 DWORD
2177 NTAPI
2179 
2180 HWND
2181 NTAPI
2183 
2184 BOOL
2185 NTAPI
2187  RECT *lpRect);
2188 
2189 BOOL
2190 NTAPI
2192  HWND hWnd,
2193  PCOMBOBOXINFO pcbi);
2194 
2195 HBRUSH
2196 NTAPI
2198  HWND hwnd,
2199  HDC hdc,
2200  UINT ctlType);
2201 
2202 HBRUSH
2203 NTAPI
2205  HWND hwndParent,
2206  HWND hwnd,
2207  HDC hdc,
2208  UINT CtlMsg);
2209 
2210 ULONG_PTR
2211 NTAPI
2212 NtUserGetCPD(
2213  HWND hWnd,
2214  GETCPD Flags,
2215  ULONG_PTR Proc);
2216 
2217 HCURSOR
2218 NTAPI
2220  HCURSOR hCursor,
2221  DWORD istep,
2222  INT *rate_jiffies,
2223  DWORD *num_steps);
2224 
2225 BOOL
2226 NTAPI
2228  PCURSORINFO pci);
2229 
2230 HDC
2231 NTAPI
2232 NtUserGetDC(
2233  HWND hWnd);
2234 
2235 HDC
2236 NTAPI
2238  HWND hWnd,
2239  HANDLE hRegion,
2240  ULONG Flags);
2241 
2242 UINT
2243 NTAPI
2245 
2246 HWND
2247 NTAPI
2249 
2250 DWORD
2251 NTAPI
2253  HANDLE hProcess,
2254  DWORD uiFlags);
2255 
2256 BOOL
2257 NTAPI
2259  DWORD idThread,
2260  LPGUITHREADINFO lpgui);
2261 
2263 BOOL
2264 NTAPI
2265 NtUserGetIconInfo(
2266  _In_ HANDLE hCurIcon,
2271  _In_ BOOL bInternal);
2272 
2273 BOOL
2274 NTAPI
2276  HANDLE Handle,
2277  UINT istepIfAniCur,
2278  LONG *plcx,
2279  LONG *plcy);
2280 
2281 DWORD
2282 NTAPI
2284  DWORD Unknown0,
2285  DWORD Unknown1,
2286  DWORD Unknown2,
2287  DWORD Unknown3);
2288 
2289 DWORD
2290 NTAPI
2292  PIMEINFOEX pImeInfoEx,
2293  DWORD dwUnknown2);
2294 
2295 DWORD
2296 NTAPI
2298  HWND hwnd,
2299  LPRECT rectWnd,
2300  LPPOINT ptIcon);
2301 
2302 HKL
2303 NTAPI
2305  DWORD dwThreadid);
2306 
2307 UINT
2308 NTAPI
2310  ULONG nItems,
2311  HKL *pHklBuff);
2312 
2313 BOOL
2314 NTAPI
2316  LPWSTR lpszName);
2317 
2318 DWORD
2319 NTAPI
2321  LPBYTE Unknown0);
2322 
2323 DWORD
2324 NTAPI
2326  DWORD TypeFlag);
2327 
2328 DWORD
2329 NTAPI
2331  LONG lParam,
2332  LPWSTR lpString,
2333  int nSize);
2334 
2335 SHORT
2336 NTAPI
2338  INT VirtKey);
2339 
2340 BOOL
2341 NTAPI
2343  HWND hwnd,
2344  COLORREF *pcrKey,
2345  BYTE *pbAlpha,
2346  DWORD *pdwFlags);
2347 
2348 DWORD
2349 NTAPI
2351  HWND hWnd);
2352 
2353 BOOL
2354 APIENTRY
2356  PMSG pMsg,
2357  HWND hWnd,
2358  UINT MsgFilterMin,
2359  UINT MsgFilterMax);
2360 
2361 DWORD
2362 NTAPI
2364  UINT cbSize,
2365  LPMOUSEMOVEPOINT lppt,
2366  LPMOUSEMOVEPOINT lpptBuf,
2367  int nBufPoints,
2368  DWORD resolution);
2369 
2370 BOOL
2371 NTAPI
2373  HANDLE hObject,
2374  DWORD nIndex,
2375  PVOID pvInformation,
2376  DWORD nLength,
2377  PDWORD nLengthNeeded);
2378 
2379 HWND
2380 NTAPI
2382 
2383 INT
2384 NTAPI
2386  UINT *paFormatPriorityList,
2387  INT cFormats);
2388 
2389 HWINSTA
2390 NTAPI
2392 
2393 DWORD
2394 NTAPI
2396  PRAWINPUT pData,
2397  PUINT pcbSize,
2398  UINT cbSizeHeader);
2399 
2400 DWORD
2401 NTAPI
2403  HRAWINPUT hRawInput,
2404  UINT uiCommand,
2405  LPVOID pData,
2406  PUINT pcbSize,
2407  UINT cbSizeHeader);
2408 
2409 DWORD
2410 NTAPI
2412  HANDLE hDevice,
2413  UINT uiCommand,
2414  LPVOID pData,
2415  PUINT pcbSize);
2416 
2417 DWORD
2418 NTAPI
2420  PRAWINPUTDEVICELIST pRawInputDeviceList,
2421  PUINT puiNumDevices,
2422  UINT cbSize);
2423 
2424 DWORD
2425 NTAPI
2427  PRAWINPUTDEVICE pRawInputDevices,
2428  PUINT puiNumDevices,
2429  UINT cbSize);
2430 
2431 BOOL
2432 NTAPI
2434  HWND hWnd,
2435  LONG idObject,
2436  PSCROLLBARINFO psbi);
2437 
2438 HDESK
2439 NTAPI
2441  DWORD dwThreadId,
2442  HDESK hConsoleDesktop);
2443 
2445 {
2459 };
2460 
2461 DWORD_PTR
2462 NTAPI
2464  DWORD Routine);
2465 
2466 BOOLEAN
2467 NTAPI
2469  HWND hwnd,
2470  PTITLEBARINFO pti);
2471 
2472 BOOL
2473 NTAPI
2475  HWND hWnd,
2476  LPRECT lpRect,
2477  BOOL fErase);
2478 
2479 INT
2480 NTAPI
2482  HWND hWnd,
2483  HRGN hRgn,
2484  BOOL bErase);
2485 
2486 HDC
2487 NTAPI
2489  HWND hWnd);
2490 
2491 BOOL
2492 NTAPI
2494  HWND hWnd,
2495  WINDOWPLACEMENT *lpwndpl);
2496 
2497 PCLS
2498 NTAPI
2501  PUNICODE_STRING ClassName);
2502 
2503 DWORD
2504 NTAPI
2506  DWORD dwUnknown1,
2507  DWORD dwUnknown2,
2508  DWORD dwUnknown3);
2509 
2510 BOOL
2511 NTAPI
2513  HWND hWndClient,
2514  HWND hWndServer);
2515 
2516 NTSTATUS
2517 NTAPI
2519  DWORD dwWinVersion,
2520  HANDLE hPowerRequestEvent,
2521  HANDLE hMediaRequestEvent);
2522 
2523 NTSTATUS
2524 NTAPI
2529  HINSTANCE hmodUser);
2530 
2531 DWORD
2532 NTAPI
2534  DWORD Unknown0,
2535  DWORD Unknown1,
2536  DWORD Unknown2,
2537  DWORD Unknown3,
2538  DWORD Unknown4,
2539  DWORD Unknown5,
2540  DWORD Unknown6,
2541  DWORD Unknown7,
2542  DWORD Unknown8,
2543  DWORD Unknown9,
2544  DWORD Unknown10,
2545  DWORD Unknown11);
2546 
2547 INT
2548 NTAPI
2550  HWND hWnd,
2551  LPWSTR lpString,
2552  INT nMaxCount);
2553 
2554 BOOL
2555 NTAPI
2557  HWND hWnd,
2558  CONST RECT *lpRect,
2559  BOOL bErase);
2560 
2561 BOOL
2562 NTAPI
2564  HWND hWnd,
2565  HRGN hRgn,
2566  BOOL bErase);
2567 
2568 BOOL
2569 NTAPI
2571  UINT format);
2572 
2573 BOOL
2574 NTAPI
2576  HWND hWnd,
2577  UINT_PTR uIDEvent);
2578 
2579 HKL
2580 NTAPI
2582  IN HANDLE Handle,
2583  IN DWORD offTable,
2584  IN PUNICODE_STRING puszKeyboardName,
2585  IN HKL hKL,
2586  IN PUNICODE_STRING puszKLID,
2587  IN DWORD dwKLID,
2588  IN UINT Flags);
2589 
2590 BOOL
2591 NTAPI
2593  HWINSTA hWindowStation);
2594 
2595 BOOL
2596 NTAPI
2598  HWND hWnd);
2599 
2600 BOOL
2601 NTAPI
2603 
2604 UINT
2605 NTAPI
2607  UINT keyCode,
2608  UINT transType,
2609  DWORD keyboardId,
2610  HKL dwhkl);
2611 
2612 typedef struct tagDOSENDMESSAGE
2613 {
2617 }
2619 
2620 BOOL
2621 NTAPI
2623  HWND hWnd,
2624  UINT Msg,
2625  WPARAM wParam,
2626  LPARAM lParam,
2627  ULONG_PTR ResultInfo,
2628  DWORD dwType, /* FNID_XX types */
2629  BOOL Ansi);
2630 
2631 DWORD
2632 NTAPI
2634  HWND hWnd,
2635  UINT cmd, /* Wine SW_ commands */
2636  BOOL Hide);
2637 
2638 DWORD
2639 NTAPI
2641 
2642 DWORD
2643 NTAPI
2645  DWORD Unknown0,
2646  DWORD Unknown1);
2647 
2648 DWORD
2649 NTAPI
2651  DWORD Unknown0,
2652  DWORD Unknown1);
2653 
2654 BOOL
2655 NTAPI
2657  HWND hWnd,
2658  int X,
2659  int Y,
2660  int nWidth,
2661  int nHeight,
2662  BOOL bRepaint
2663 );
2664 
2665 DWORD
2666 NTAPI
2668  DWORD Unknown0,
2669  DWORD Unknown1,
2670  DWORD Unknown2);
2671 
2672 BOOL
2673 NTAPI
2675  HANDLE NewProcessId,
2676  HANDLE ParentThreadId,
2677  ULONG dwUnknown,
2678  ULONG CreateFlags);
2679 
2680 VOID
2681 NTAPI
2683  DWORD Event,
2684  HWND hWnd,
2685  LONG idObject,
2686  LONG idChild);
2687 
2688 BOOL
2689 NTAPI
2691  HWND hWnd,
2692  DWORD Unknown1);
2693 
2694 HDESK
2695 NTAPI
2698  DWORD dwFlags,
2699  ACCESS_MASK dwDesiredAccess);
2700 
2701 HDESK
2702 NTAPI
2704  DWORD dwFlags,
2705  BOOL fInherit,
2706  ACCESS_MASK dwDesiredAccess);
2707 
2708 HWINSTA
2709 NTAPI
2712  ACCESS_MASK dwDesiredAccess);
2713 
2714 BOOL
2715 NTAPI
2717  HDC hDC);
2718 
2719 DWORD
2720 NTAPI
2722  HWND hWnd,
2723  HDC hDC,
2724  ULONG left, // x,
2725  ULONG right, // width, // Scale the edge thickness, offset?
2726  ULONG top, // y,
2727  BOOL bActive); // DWORD Flags); DC_ACTIVE or WS_ACTIVECAPTION, by checking WNDS_ACTIVEFRAME and foreground.
2728 
2729 BOOL
2730 APIENTRY
2732  PMSG pMsg,
2733  HWND hWnd,
2734  UINT MsgFilterMin,
2735  UINT MsgFilterMax,
2736  UINT RemoveMsg);
2737 
2738 BOOL
2739 NTAPI
2741  HWND hWnd,
2742  UINT Msg,
2743  WPARAM wParam,
2744  LPARAM lParam);
2745 
2746 BOOL
2747 NTAPI
2749  DWORD idThread,
2750  UINT Msg,
2751  WPARAM wParam,
2752  LPARAM lParam);
2753 
2754 BOOL
2755 NTAPI
2757  HWND hwnd,
2758  HDC hdcBlt,
2759  UINT nFlags);
2760 
2761 NTSTATUS
2762 NTAPI
2765  OUT PUSERCONNECT pUserConnect,
2766  IN ULONG Size); /* sizeof(USERCONNECT) */
2767 
2768 NTSTATUS
2769 NTAPI
2771  IN HANDLE ThreadHandle,
2773  OUT PVOID ThreadInformation,
2775 
2776 DWORD
2777 NTAPI
2779  DWORD dwUnknown1,
2780  DWORD dwUnknown2);
2781 
2782 DWORD
2783 NTAPI
2785  DWORD Unknown0);
2786 
2787 DWORD
2788 NTAPI
2790  DWORD Unknown0,
2791  DWORD Unknown1,
2792  DWORD Unknown2,
2793  DWORD Unknown3,
2794  DWORD Unknown4);
2795 
2796 #define QUERY_WINDOW_UNIQUE_PROCESS_ID 0x00
2797 #define QUERY_WINDOW_UNIQUE_THREAD_ID 0x01
2798 #define QUERY_WINDOW_ACTIVE 0x02
2799 #define QUERY_WINDOW_FOCUS 0x03
2800 #define QUERY_WINDOW_ISHUNG 0x04
2801 #define QUERY_WINDOW_REAL_ID 0x05
2802 #define QUERY_WINDOW_FOREGROUND 0x06
2803 
2804 DWORD_PTR
2805 NTAPI
2807  HWND hWnd,
2808  DWORD Index);
2809 
2810 BOOL
2811 NTAPI
2813  LPMSG lpMsg,
2814  HWND hWnd,
2815  UINT wMsgFilterMin,
2816  UINT wMsgFilterMax,
2817  UINT wRemoveMsg,
2818  BOOL bGMSG);
2819 
2820 HWND
2821 NTAPI
2823  HWND Parent,
2824  LONG x,
2825  LONG y);
2826 
2827 BOOL
2828 NTAPI
2830  DWORD dwWakeMask,
2831  UINT uTimeout);
2832 
2833 BOOL
2834 NTAPI
2836  HWND hWnd,
2837  CONST RECT *lprcUpdate,
2838  HRGN hrgnUpdate,
2839  UINT flags);
2840 
2841 RTL_ATOM
2842 NTAPI
2844  WNDCLASSEXW* lpwcx,
2845  PUNICODE_STRING pustrClassName,
2846  PUNICODE_STRING pustrCVersion,
2847  PCLSMENUNAME pClassMenuName,
2848  DWORD fnID,
2849  DWORD Flags,
2850  LPDWORD pWow);
2851 
2852 BOOL
2853 NTAPI
2855  IN PCRAWINPUTDEVICE pRawInputDevices,
2856  IN UINT uiNumDevices,
2857  IN UINT cbSize);
2858 
2859 BOOL
2860 NTAPI
2862  PUNICODE_STRING m_dllname1,
2863  PUNICODE_STRING m_funname1,
2864  DWORD dwUnknown3,
2865  DWORD dwUnknown4);
2866 
2867 BOOL
2868 NTAPI
2870  HWND hWnd,
2871  int id,
2872  UINT fsModifiers,
2873  UINT vk);
2874 
2875 DWORD
2876 NTAPI
2878  DWORD Unknown0);
2879 
2880 UINT
2881 NTAPI
2883  PUNICODE_STRING MessageName);
2884 
2885 DWORD
2886 NTAPI
2888  DWORD dwUnknown1,
2889  DWORD dwUnknown2,
2890  DWORD dwUnknown3);
2891 
2892 DWORD
2893 NTAPI
2895  DWORD dwUnknown1,
2896  DWORD dwUnknown2,
2897  DWORD dwUnknown3,
2898  DWORD dwUnknown4);
2899 
2900 DWORD
2901 NTAPI
2903 
2904 DWORD
2905 NTAPI
2907 
2908 HANDLE
2909 NTAPI
2911  HWND hWnd,
2912  ATOM Atom);
2913 
2914 HDESK
2915 NTAPI
2918  IN PUNICODE_STRING DesktopPath,
2919  IN BOOL bInherit,
2920  OUT HWINSTA* phWinSta);
2921 
2922 DWORD
2923 NTAPI
2925  DWORD Unknown0);
2926 
2927 BOOL
2928 NTAPI
2930  HWND hwnd,
2931  int fnBar,
2932  PSBDATA pSBData,
2933  LPSCROLLINFO lpsi);
2934 
2935 BOOL
2936 NTAPI
2938  HDC hDC,
2939  int dx,
2940  int dy,
2941  CONST RECT *lprcScroll,
2942  CONST RECT *lprcClip ,
2943  HRGN hrgnUpdate,
2944  LPRECT lprcUpdate);
2945 
2946 DWORD
2947 NTAPI
2949  HWND hWnd,
2950  INT dx,
2951  INT dy,
2952  const RECT *rect,
2953  const RECT *clipRect,
2954  HRGN hrgnUpdate,
2955  LPRECT rcUpdate,
2956  UINT flags);
2957 
2958 UINT
2959 NTAPI
2961  UINT nInputs,
2962  LPINPUT pInput,
2963  INT cbSize);
2964 
2965 HWND
2966 NTAPI
2968  HWND Wnd);
2969 
2970 DWORD
2971 NTAPI
2973  DWORD dwUnknown1,
2974  DWORD dwUnknown2);
2975 
2976 HWND
2977 NTAPI
2979  HWND Wnd);
2980 
2981 ULONG_PTR
2982 NTAPI
2984  HWND hWnd,
2985  INT Offset,
2986  ULONG_PTR dwNewLong,
2987  BOOL Ansi);
2988 
2989 WORD
2990 NTAPI
2992  HWND hWnd,
2993  INT nIndex,
2994  WORD wNewWord);
2995 
2996 HANDLE
2997 NTAPI
2999  UINT fmt,
3000  HANDLE hMem,
3001  PSETCLIPBDATA scd);
3002 
3003 HWND
3004 NTAPI
3006  HWND hWndNewViewer);
3007 
3008 HPALETTE
3009 NTAPI
3011  HDC hDC,
3012  HPALETTE hpal,
3013  BOOL ForceBackground);
3014 
3015 DWORD
3016 NTAPI
3018  DWORD Unknown0,
3019  DWORD Unknown1);
3020 
3021 HCURSOR
3022 NTAPI
3024  HCURSOR hCursor);
3025 
3026 BOOL
3027 NTAPI
3029  HANDLE Handle,
3031 
3032 BOOL
3033 NTAPI
3035  _In_ HCURSOR hCursor,
3036  _In_opt_ PUNICODE_STRING pustrModule,
3037  _In_opt_ PUNICODE_STRING puSrcName,
3038  _In_ const CURSORDATA *pCursorData);
3039 
3041 {
3046 
3047 HICON
3048 NTAPI
3050  _In_ PUNICODE_STRING pustrModule,
3051  _In_ PUNICODE_STRING pustrRsrc,
3053 
3054 DWORD
3055 NTAPI
3057  DWORD Unknown0,
3058  DWORD Unknown1);
3059 
3060 DWORD
3061 APIENTRY
3063  DWORD Unknown0);
3064 
3065 HWND
3066 NTAPI
3068  HWND hWnd);
3069 
3070 DWORD
3071 NTAPI
3073  DWORD Unknown0,
3074  DWORD Unknown1,
3075  DWORD Unknown2,
3076  DWORD Unknown3,
3077  DWORD Unknown4);
3078 
3079 DWORD
3080 NTAPI
3082  PIMEINFOEX pImeInfoEx);
3083 
3084 DWORD
3085 NTAPI
3087  DWORD Unknown0,
3088  DWORD Unknown1);
3089 
3090 DWORD
3091 NTAPI
3093  DWORD dwUnknown1,
3094  DWORD dwUnknown2,
3095  DWORD dwUnknown3,
3096  DWORD dwUnknown4);
3097 
3098 NTSTATUS
3099 NTAPI
3101  IN HANDLE ThreadHandle,
3103  IN PVOID ThreadInformation,
3105 
3106 DWORD
3107 NTAPI
3109  HWND hwnd,
3110  UINT showCmd,
3111  LPRECT rect,
3112  LPPOINT pt);
3113 
3114 BOOL
3115 NTAPI
3117  LPBYTE lpKeyState);
3118 
3119 BOOL
3120 NTAPI
3122  HWND hwnd,
3123  COLORREF crKey,
3124  BYTE bAlpha,
3125  DWORD dwFlags);
3126 
3127 BOOL
3128 NTAPI
3130  HWND hWnd);
3131 
3132 BOOL
3133 NTAPI
3135  HANDLE hObject,
3136  DWORD nIndex,
3137  PVOID pvInformation,
3138  DWORD nLength);
3139 
3140 HWND
3141 NTAPI
3143  HWND hWndChild,
3144  HWND hWndNewParent);
3145 
3146 BOOL
3147 NTAPI
3149  HWINSTA hWindowStation);
3150 
3151 BOOL
3152 NTAPI
3154  HWND hWnd,
3155  ATOM Atom,
3156  HANDLE Data);
3157 
3158 DWORD
3159 NTAPI
3161  DWORD Unknown0);
3162 
3163 DWORD
3164 NTAPI
3166  HWND hwnd,
3167  int fnBar,
3168  LPCSCROLLINFO lpsi,
3169  BOOL bRedraw);
3170 
3171 BOOL
3172 NTAPI
3174  HWND hwndShell,
3175  HWND hwndShellListView);
3176 
3177 BOOL
3178 NTAPI
3180  int cElements,
3181  IN CONST INT *lpaElements,
3182  IN CONST COLORREF *lpaRgbValues,
3183  FLONG Flags);
3184 
3185 BOOL
3186 NTAPI
3188  HCURSOR hcur,
3189  DWORD id);
3190 
3191 BOOL
3192 NTAPI
3194  HDESK hDesktop);
3195 
3196 DWORD
3197 NTAPI
3199  DWORD Unknown0,
3200  DWORD Unknown1);
3201 
3202 UINT_PTR
3203 NTAPI
3205  HWND hWnd,
3206  UINT_PTR nIDEvent,
3207  UINT uElapse,
3208  TIMERPROC lpTimerFunc);
3209 
3210 DWORD
3211 NTAPI
3213  DWORD dwUnknown1,
3214  DWORD dwUnknown2);
3215 
3216 UINT_PTR
3217 NTAPI
3219  HWND hWnd,
3220  UINT_PTR nIDEvent,
3221  UINT uElapse,
3222  TIMERPROC lpTimerFunc);
3223 
3224 BOOL
3225 NTAPI
3227  HWND hWnd,
3228  WORD fnID);
3229 
3230 LONG
3231 NTAPI
3233  HWND hWnd,
3234  DWORD Index,
3235  LONG NewValue,
3236  BOOL Ansi);
3237 
3238 #ifdef _WIN64
3239 LONG_PTR
3240 NTAPI
3241 NtUserSetWindowLongPtr(
3242  HWND hWnd,
3243  DWORD Index,
3244  LONG_PTR NewValue,
3245  BOOL Ansi);
3246 #endif // _WIN64
3247 
3248 BOOL
3249 NTAPI
3251  HWND hWnd,
3252  WINDOWPLACEMENT *lpwndpl);
3253 
3254 BOOL
3255 NTAPI
3257  HWND hWnd,
3258  HWND hWndInsertAfter,
3259  int X,
3260  int Y,
3261  int cx,
3262  int cy,
3263  UINT uFlags);
3264 
3265 INT
3266 NTAPI
3268  HWND hWnd,
3269  HRGN hRgn,
3270  BOOL bRedraw);
3271 
3272 HHOOK
3273 NTAPI
3275  int idHook,
3276  HOOKPROC lpfn,
3277  BOOL Ansi);
3278 
3279 HHOOK
3280 NTAPI
3282  HINSTANCE Mod,
3284  DWORD ThreadId,
3285  int HookId,
3286  HOOKPROC HookProc,
3287  BOOL Ansi);
3288 
3289 BOOL
3290 NTAPI
3292  IN HWINSTA hWindowStation,
3293  IN PLUID pluid,
3294  IN PSID psid OPTIONAL,
3295  IN DWORD size);
3296 
3297 WORD
3298 NTAPI
3300  HWND hWnd,
3301  INT Index,
3302  WORD NewVal);
3303 
3305 NTAPI
3307  UINT eventMin,
3308  UINT eventMax,
3309  HMODULE hmodWinEventProc,
3310  PUNICODE_STRING puString,
3311  WINEVENTPROC lpfnWinEventProc,
3312  DWORD idProcess,
3313  DWORD idThread,
3314  UINT dwflags);
3315 
3316 BOOL
3317 NTAPI
3319  HWND hWnd);
3320 
3321 BOOL
3322 NTAPI
3324  HWND hWnd);
3325 
3326 DWORD
3327 NTAPI
3329  HWND hWnd,
3330  int wBar,
3331  DWORD bShow);
3332 
3333 BOOL
3334 NTAPI
3336  HWND hWnd,
3337  LONG nCmdShow);
3338 
3339 BOOL
3340 NTAPI
3342  HWND hWnd,
3343  LONG nCmdShow);
3344 
3345 BOOL
3346 NTAPI
3348 
3349 BOOL
3350 NTAPI
3352  HDESK hDesktop);
3353 
3354 BOOL
3355 NTAPI
3357  UINT uiAction,
3358  UINT uiParam,
3359  PVOID pvParam,
3360  UINT fWinIni);
3361 
3362 DWORD
3363 NTAPI
3365  DWORD dwUnknown1);
3366 
3367 INT
3368 NTAPI
3370  UINT wVirtKey,
3371  UINT wScanCode,
3372  PBYTE lpKeyState,
3373  LPWSTR pwszBuff,
3374  int cchBuff,
3375  UINT wFlags,
3376  HKL dwhkl);
3377 
3378 BOOL
3379 NTAPI
3381  LPTRACKMOUSEEVENT lpEventTrack);
3382 
3383 int
3384 NTAPI
3386  HWND Window,
3387  HACCEL Table,
3388  LPMSG Message);
3389 
3390 BOOL
3391 NTAPI
3393  LPMSG lpMsg,
3394  UINT flags );
3395 
3396 BOOL
3397 NTAPI
3399  HHOOK Hook);
3400 
3401 BOOL
3402 NTAPI
3404  HWINEVENTHOOK hWinEventHook);
3405 
3406 BOOL
3407 NTAPI
3409  HKL hKl);
3410 
3411 BOOL
3412 NTAPI
3414  HWINSTA hWindowStation);
3415 
3416 BOOL
3417 NTAPI
3419  PUNICODE_STRING ClassNameOrAtom,
3421  PCLSMENUNAME pClassMenuName);
3422 
3423 BOOL
3424 NTAPI
3426  HWND hWnd,
3427  int id);
3428 
3429 BOOL
3430 NTAPI
3432 
3433 DWORD
3434 NTAPI
3436  DWORD Unknown0,
3437  DWORD Unknown1,
3438  DWORD Unknown2);
3439 
3440 DWORD
3441 NTAPI
3443  DWORD Unknown0,
3444  DWORD Unknown1,
3445  DWORD Unknown2);
3446 
3447 BOOL
3448 NTAPI
3450  HWND hwnd,
3451  HDC hdcDst,
3452  POINT *pptDst,
3453  SIZE *psize,
3454  HDC hdcSrc,
3455  POINT *pptSrc,
3456  COLORREF crKey,
3457  BLENDFUNCTION *pblend,
3458  DWORD dwFlags,
3459  RECT *prcDirty);
3460 
3461 BOOL
3462 NTAPI
3464  DWORD dwReserved,
3465  BOOL bEnable);
3466 
3467 BOOL
3468 NTAPI
3470  IN HANDLE hUserHandle,
3471  IN HANDLE hJob,
3472  IN BOOL bGrant);
3473 
3474 BOOL
3475 NTAPI
3477  HANDLE hHdl);
3478 
3479 BOOL
3480 NTAPI
3482  HWND hWnd,
3483  CONST RECT *lpRect);
3484 
3485 BOOL
3486 APIENTRY
3488  LPARAM lParam);
3489 
3490 DWORD
3491 NTAPI
3493  WCHAR wChar,
3495  BOOL bUsehHK);
3496 
3497 DWORD
3498 NTAPI
3500  IN HANDLE hProcess,
3501  IN DWORD dwMilliseconds,
3502  IN BOOL Unknown2); /* Always FALSE */
3503 
3504 DWORD
3505 NTAPI
3507  DWORD Unknown0);
3508 
3509 BOOL
3510 NTAPI
3512 
3513 DWORD
3514 NTAPI
3516  DWORD Unknown0,
3517  DWORD Unknown1,
3518  DWORD Unknown2,
3519  DWORD Unknown3,
3520  DWORD Unknown4,
3521  DWORD Unknown5);
3522 
3523 HWND
3524 NTAPI
3526  LONG X,
3527  LONG Y);
3528 
3529 DWORD
3530 NTAPI
3532 
3533 /* NtUserBad
3534  * ReactOS-specific NtUser calls and their related structures, both which shouldn't exist.
3535  */
3536 
3537 #define NOPARAM_ROUTINE_ISCONSOLEMODE 0xffff0001
3538 #define ONEPARAM_ROUTINE_ENABLEPROCWNDGHSTING 0xfffe000d
3539 #define ONEPARAM_ROUTINE_GETDESKTOPMAPPING 0xfffe000e
3540 #define TWOPARAM_ROUTINE_SETMENUBARHEIGHT 0xfffd0050
3541 #define TWOPARAM_ROUTINE_SETGUITHRDHANDLE 0xfffd0051
3542 #define HWNDLOCK_ROUTINE_SETFOREGROUNDWINDOWMOUSE 0xfffd0052
3543 
3544 #define MSQ_STATE_CAPTURE 0x1
3545 #define MSQ_STATE_ACTIVE 0x2
3546 #define MSQ_STATE_FOCUS 0x3
3547 #define MSQ_STATE_MENUOWNER 0x4
3548 #define MSQ_STATE_MOVESIZE 0x5
3549 #define MSQ_STATE_CARET 0x6
3550 
3551 #define TWOPARAM_ROUTINE_ROS_UPDATEUISTATE 0x1004
3552 #define HWNDPARAM_ROUTINE_ROS_NOTIFYWINEVENT 0x1005
3553 
3554 BOOL
3555 NTAPI
3557  IN HMONITOR hMonitor,
3558  OUT LPMONITORINFO pMonitorInfo);
3559 
3560 /* Should be done in usermode */
3561 
3562 HMONITOR
3563 NTAPI
3565  IN POINT point,
3566  IN DWORD dwFlags);
3567 
3568 HMONITOR
3569 NTAPI
3571  IN LPCRECT pRect,
3572  IN DWORD dwFlags);
3573 
3574 HMONITOR
3575 NTAPI
3577  IN HWND hWnd,
3578  IN DWORD dwFlags);
3579 
3580 typedef struct _SETSCROLLBARINFO
3581 {
3586 
3587 BOOL
3588 NTAPI
3590  HWND hwnd,
3591  LONG idObject,
3593 
3594 #endif /* __WIN32K_NTUSER_H */
3595 
3596 /* EOF */
ULONG fFreed
Definition: ntuser.h:429
ULONG bAnsi
Definition: ntuser.h:96
struct tagOEMBITMAPINFO OEMBITMAPINFO
INT aiSysMet[SM_CMETRICS]
Definition: ntuser.h:962
WCHAR szName[16]
Definition: ntuser.h:938
WND wnd
Definition: ntuser.h:743
HKL NTAPI NtUserGetKeyboardLayout(DWORD dwThreadid)
DWORD_PTR dwMenuData
Definition: ntuser.h:398
VOID NTAPI RtlInitLargeUnicodeString(IN OUT PLARGE_UNICODE_STRING, IN PCWSTR, IN INT)
Definition: rtlstr.c:42
DWORD NTAPI NtUserCallHwndParam(HWND hWnd, DWORD_PTR Param, DWORD Routine)
Definition: simplecall.c:755
BOOL NTAPI NtUserPostThreadMessage(DWORD idThread, UINT Msg, WPARAM wParam, LPARAM lParam)
Definition: message.c:2079
HANDLE NTAPI NtUserRemoveProp(HWND hWnd, ATOM Atom)
HBITMAP hbmAlpha
Definition: ntuser.h:1133
signed char * PCHAR
Definition: retypes.h:7
INT cxBmp
Definition: ntuser.h:357
UINT NTAPI NtUserEnableMenuItem(HMENU hMenu, UINT uIDEnableItem, UINT uEnable)
Definition: menu.c:5856
BOOL NTAPI NtUserDrawIconEx(HDC hdc, int xLeft, int yTop, HICON hIcon, int cxWidth, int cyWidth, UINT istepIfAniCur, HBRUSH hbrFlickerFreeDraw, UINT diFlags, BOOL bMetaHDC, PVOID pDIXData)
Definition: cursoricon.c:2083
UINT uiShellMsg
Definition: ntuser.h:1016
ULONG_PTR cHandleEntries
Definition: ntuser.h:1005
HWND NTAPI NtUserCreateWindowEx(DWORD dwExStyle, PLARGE_STRING plstrClassName, PLARGE_STRING plstrClsVersion, PLARGE_STRING plstrWindowName, DWORD dwStyle, int x, int y, int nWidth, int nHeight, HWND hWndParent, HMENU hMenu, HINSTANCE hInstance, LPVOID lpParam, DWORD dwFlags, PVOID acbiBuffer)
Definition: window.c:2495
CONST char * PCSZ
Definition: umtypes.h:125
UINT_PTR NTAPI NtUserSetTimer(HWND hWnd, UINT_PTR nIDEvent, UINT uElapse, TIMERPROC lpTimerFunc)
Definition: timer.c:630
struct tagHOOK HOOK
HMENU NTAPI NtUserGetSystemMenu(HWND hWnd, BOOL bRevert)
Definition: menu.c:5661
HWND hWnd
Definition: ntuser.h:405
IN PUNICODE_STRING IN POBJECT_ATTRIBUTES ObjectAttributes
Definition: conport.c:35
ULONG fsHooks
Definition: ntuser.h:296
HFONT hMsgFont
Definition: ntuser.h:947
POINT MaxPos
Definition: ntuser.h:716
struct tagMBSTRING * PMBSTRING
BOOL NTAPI NtUserTrackMouseEvent(LPTRACKMOUSEEVENT lpEventTrack)
Definition: mouse.c:482
const DOCKBAR PVOID HWND HWND * hwnd
Definition: tooldock.h:22
BOOL NTAPI NtUserGetCaretPos(LPPOINT lpPoint)
Definition: caret.c:395
const uint16_t * PCWSTR
Definition: typedefs.h:55
DWORD dwReserved
Definition: ntuser.h:744
#define IN
Definition: typedefs.h:38
CALLBACKWND CallbackWnd
Definition: ntuser.h:297
GLint GLint GLsizei width
Definition: gl.h:1546
#define LONG_PTR
Definition: treelist.c:79
DWORD_PTR dwItemData
Definition: ntuser.h:348
return
Definition: dirsup.c:529
struct _CLSMENUNAME CLSMENUNAME
BOOL NTAPI NtUserRegisterUserApiHook(PUNICODE_STRING m_dllname1, PUNICODE_STRING m_funname1, DWORD dwUnknown3, DWORD dwUnknown4)
Definition: hook.c:1724
ULONG Win32ClientInfo3[26]
Definition: ntuser.h:312
WORD fsWakeBitsJournal
Definition: ntuser.h:168
DWORD ExStyle
Definition: ntuser.h:668
PVOID pSelf
Definition: ntuser.h:190
ASMGENDATA Table[]
Definition: genincdata.c:61
static HICON
Definition: imagelist.c:84
UINT wID
Definition: ntuser.h:342
_GETCPD
Definition: ntuser.h:506
INT cInDDEMLCallback
Definition: ntuser.h:299
WNDPROC pfnStaticWndProc
Definition: ntuser.h:772
INT cpxThumb
Definition: ntuser.h:496
DWORD dwProdVersion
Definition: ntuser.h:1166
LPWSTR lpName
Definition: ntuser.h:1124
DWORD NTAPI NtUserDdeInitialize(DWORD Unknown0, DWORD Unknown1, DWORD Unknown2, DWORD Unknown3, DWORD Unknown4)
Definition: dde.c:465
HWND hTaskManWindow
Definition: ntuser.h:140
USHORT BitCount
Definition: ntuser.h:989
UINT HideFocus
Definition: ntuser.h:722
struct _DESKTOP * rpdeskParent
Definition: ntuser.h:539
struct _WND * spwndPopupMenu
Definition: ntuser.h:438
INT fCUASLayer
Definition: ntuser.h:1173
unsigned short RTL_ATOM
Definition: atom.c:42
ULONG CURSORF_flags
Definition: ntuser.h:1128
INT page
Definition: ntuser.h:490
LIST_ENTRY ThreadListEntry
Definition: ntuser.h:728
IN PUNICODE_STRING IN POBJECT_ATTRIBUTES IN DWORD Unknown3
Definition: conport.c:35
struct _CALLBACKWND * PCALLBACKWND
struct _CLIENTTHREADINFO CLIENTTHREADINFO
struct _USER_HANDLE_TABLE USER_HANDLE_TABLE
BOOL NTAPI NtUserNotifyProcessCreate(HANDLE NewProcessId, HANDLE ParentThreadId, ULONG dwUnknown, ULONG CreateFlags)
Definition: ntstubs.c:516
WNDPROC pfnClientPrevious
Definition: ntuser.h:520
INT fSysWow64Only
Definition: ntuser.h:1172
struct _DESKTOPINFO DESKTOPINFO
DWORD_PTR NTAPI NtUserGetThreadState(DWORD Routine)
Definition: misc.c:231
_Must_inspect_result_ _Out_ LPSIZE psize
Definition: ntgdi.h:1569
HDESK NTAPI NtUserOpenInputDesktop(DWORD dwFlags, BOOL fInherit, ACCESS_MASK dwDesiredAccess)
Definition: desktop.c:2637
struct _DESKTOP * rpdesk
Definition: ntuser.h:189
BOOL NTAPI NtUserDdeSetQualityOfService(IN HWND hwndClient, IN PSECURITY_QUALITY_OF_SERVICE pqosNew, OUT PSECURITY_QUALITY_OF_SERVICE pqosPrev)
Definition: dde.c:442
struct _DESKTOP_CONSOLE_THREAD DESKTOP_CONSOLE_THREAD
INT fInitOpen
Definition: ntuser.h:1164
DPISERVERINFO dpiSystem
Definition: ntuser.h:981
#define FNID_NUMSERVERPROC
Definition: ntuser.h:856
ULONG fToggle
Definition: ntuser.h:418
DWORD NTAPI NtUserRemoteRedrawScreen(VOID)
Definition: ntstubs.c:919
enum _CONSOLECONTROL CONSOLECONTROL
ULONG PropListItems
Definition: ntuser.h:688
HBRUSH hbrBack
Definition: ntuser.h:399
DWORD NTAPI NtUserDragObject(HWND hwnd1, HWND hwnd2, UINT u1, DWORD dw1, HCURSOR hc1)
Definition: ntstubs.c:71
DWORD ExStyle2
Definition: ntuser.h:709
static HMENU hmenu
Definition: win.c:66
DWORD fsHooks
Definition: ntuser.h:137
#define Y(I)
HWND NTAPI NtUserSetCapture(HWND Wnd)
Definition: focus.c:1587
_Out_opt_ PICONINFO _Inout_opt_ PUNICODE_STRING lpInstName
Definition: ntuser.h:2267
struct tagMENULIST * PMENULIST
ULONG fIsSysMenu
Definition: ntuser.h:413
struct _THREADINFO * pti
Definition: ntuser.h:25
struct _CLS CLS
HANDLE hLocale
Definition: ntuser.h:1110
struct tagDDEPACK * PDDEPACK
DWORD dwRIPFlags
Definition: ntuser.h:999
DWORD NTAPI NtUserModifyUserStartupInfoFlags(DWORD Unknown0, DWORD Unknown1)
Definition: ntstubs.c:212
ULONG fRightButton
Definition: ntuser.h:417
struct _WNDMSG WNDMSG
DWORD NTAPI NtUserGetListBoxInfo(HWND hWnd)
Definition: window.c:3387
PVOID Buffer
Definition: ntuser.h:97
LPSTR pszClientAnsiMenuName
Definition: ntuser.h:466
enum _CONSOLECONTROL * PCONSOLECONTROL
BOOL NTAPI NtUserThunkedMenuItemInfo(HMENU hMenu, UINT uItem, BOOL fByPosition, BOOL bInsert, LPMENUITEMINFOW lpmii, PUNICODE_STRING lpszCaption)
Definition: menu.c:6556
CHAR acOemToAnsi[256]
Definition: ntuser.h:1022
BOOL NTAPI NtUserDestroyCursor(_In_ HANDLE Handle, _In_ BOOL bForce)
Definition: cursoricon.c:793
UINT Dummy
Definition: ntuser.h:150
BOOL NTAPI NtUserAttachThreadInput(IN DWORD idAttach, IN DWORD idAttachTo, IN BOOL fAttach)
Definition: input.c:664
struct _CLIENTTHREADINFO * PCLIENTTHREADINFO
WORD ATOM
Definition: dimm.idl:113
struct tagMENULIST * pNext
Definition: ntuser.h:365
struct _THROBJHEAD THROBJHEAD
HPALETTE NTAPI NtUserSelectPalette(HDC hDC, HPALETTE hpal, BOOL ForceBackground)
Definition: windc.c:1033
Definition: ftp_var.h:139
HWND NTAPI NtUserGetAncestor(HWND hWnd, UINT Flags)
Definition: window.c:3217
ATOM atomFrostedWindowProp
Definition: ntuser.h:1021
HKL NTAPI NtUserActivateKeyboardLayout(HKL hKl, ULONG Flags)
Definition: kbdlayout.c:705
struct tagCURSORDATA * aspcur
Definition: ntuser.h:1141
#define pt(x, y)
Definition: drawing.c:79
struct _CLIENTINFO CLIENTINFO
WNDPROC pfnGhostWndProc
Definition: ntuser.h:774
LRESULT NTAPI NtUserCallNextHookEx(int Code, WPARAM wParam, LPARAM lParam, BOOL Ansi)
Definition: hook.c:1371
UINT ucWheelScrollLines
Definition: ntuser.h:974
struct tagCURSORDATA * PCURSORDATA
LONG NTAPI NtUserChangeDisplaySettings(PUNICODE_STRING lpszDeviceName, LPDEVMODEW lpDevMode, DWORD dwflags, LPVOID lParam)
Definition: display.c:952
INT page
Definition: ntuser.h:475
DWORD NTAPI NtUserUpdateInputContext(DWORD Unknown0, DWORD Unknown1, DWORD Unknown2)
Definition: ntstubs.c:358
WNDPROC pfnEditWndProc
Definition: ntuser.h:769
UINT NTAPI NtUserGetMenuIndex(HMENU hMenu, HMENU hSubMenu)
Definition: menu.c:6069
uint16_t * PWSTR
Definition: typedefs.h:54
unsigned char type
Definition: ntuser.h:28
HINSTANCE hModule
Definition: ntuser.h:672
BOOL NTAPI NtUserCreateCaret(HWND hWnd, HBITMAP hBitmap, int nWidth, int nHeight)
Definition: caret.c:309
enum _GETCPD GETCPD
BOOL NTAPI NtUserTrackPopupMenuEx(HMENU hmenu, UINT fuFlags, int x, int y, HWND hwnd, LPTPMPARAMS lptpm)
Definition: menu.c:6616
UINT fFreeActiveEvent
Definition: ntuser.h:1192
WNDPROC lpfnWndProc
Definition: ntuser.h:682
struct _USERCONNECT * PUSERCONNECT
HCURSOR NTAPI NtUserSetCursor(HCURSOR hCursor)
Definition: cursoricon.c:1049
BOOL NTAPI NtUserScrollDC(HDC hDC, int dx, int dy, CONST RECT *lprcScroll, CONST RECT *lprcClip, HRGN hrgnUpdate, LPRECT lprcUpdate)
struct _SETSCROLLBARINFO SETSCROLLBARINFO
HINSTANCE hModule
Definition: ntuser.h:552
static DWORD DWORD istep
Definition: cursoricon.c:1638
SBDATA Vert
Definition: ntuser.h:483
BOOL NTAPI NtUserRegisterHotKey(HWND hWnd, int id, UINT fsModifiers, UINT vk)
Definition: hotkey.c:512
GLint dy
Definition: linetemp.h:97
HANDLE h
Definition: ntuser.h:176
BOOL NTAPI NtUserCallMsgFilter(LPMSG msg, INT code)
Definition: message.c:2216
WORD vk
Definition: input.c:82
struct tagIMEINFOEX * PIMEINFOEX
ULONG tickLastMsgChecked
Definition: ntuser.h:170
char CHAR
Definition: xmlstorage.h:175
ThreadStateRoutines
Definition: ntuser.h:2444
TW_UINT32 TW_UINT16 TW_UINT16 MSG
Definition: twain.h:1827
LIST_ENTRY ListEntry
Definition: ntuser.h:404
struct tagMENULIST MENULIST
HDESK hDesk
Definition: ntuser.h:1063
WNDPROC_EX pfnStaticWndProc
Definition: ntuser.h:805
DWORD recipients
Definition: ntuser.h:1062
WNDPROC pfnDefWindowProc
Definition: ntuser.h:762
HWND NTAPI NtUserGetClipboardViewer(VOID)
Definition: clipboard.c:797
UINT fState
Definition: ntuser.h:341
struct _PFNCLIENT * PPFNCLIENT
struct _tagFINDEXISTINGCURICONPARAM FINDEXISTINGCURICONPARAM
ULONG fDestroyed
Definition: ntuser.h:426
BOOL NTAPI NtUserUnlockWindowStation(HWINSTA hWindowStation)
Definition: winsta.c:1549
_Out_opt_ PICONINFO _Inout_opt_ PUNICODE_STRING _Inout_opt_ PUNICODE_STRING _Out_opt_ LPDWORD pbpp
Definition: ntuser.h:2267
DWORD NTAPI NtUserCreateInputContext(DWORD dwUnknown1)
Definition: ntstubs.c:428
struct @1591 Msg[]
BOOL NTAPI NtUserCloseClipboard(VOID)
Definition: clipboard.c:586
*nSize LPSTR _Inout_ LPDWORD nSize
Definition: winbase.h:2031
LONG NTSTATUS
Definition: precomp.h:26
struct tagHOOK * phkNext
Definition: ntuser.h:218
DWORD NTAPI NtUserGetInternalWindowPos(HWND hwnd, LPRECT rectWnd, LPPOINT ptIcon)
Definition: winpos.c:3215
PVOID pActCtx
Definition: ntuser.h:274
ULONG ulWidth
Definition: ntuser.h:355
ULONG hTaskWow
Definition: ntuser.h:204
ULONG MaximumLength
Definition: ntuser.h:105
HANDLE HIMC
Definition: ntuser.h:8
DWORD APIENTRY NtUserDbgWin32HeapFail(DWORD Unknown0, DWORD Unknown1)
Definition: ntstubs.c:289
static HDC
Definition: imagelist.c:92
ULONG_PTR CI_flags
Definition: ntuser.h:287
#define CALLBACK
Definition: compat.h:27
_In_ DWORD nLength
Definition: wincon.h:461
struct _REGISTER_SYSCLASS * PREGISTER_SYSCLASS
INT pxRight
Definition: ntuser.h:495
UINT cicur
Definition: ntuser.h:1140
LIST_ENTRY PropListHead
Definition: ntuser.h:687
LPWSTR pwszClientUnicodeMenuName
Definition: ntuser.h:467
HWND hWnd
Definition: settings.c:17
ULONG cch
Definition: ntuser.h:347
ULONG fInCancel
Definition: ntuser.h:430
WNDPROC pfnMessageWindowProc
Definition: ntuser.h:763
UINT Global
Definition: ntuser.h:561
#define CCHILDREN_SCROLLBAR
Definition: winuser.h:3720
struct tagOEMBITMAPINFO * POEMBITMAPINFO
IN PUNICODE_STRING IN POBJECT_ATTRIBUTES IN DWORD IN DWORD IN DWORD IN DWORD Unknown6
Definition: conport.c:35
HKL hKL
Definition: ntuser.h:1182
struct tagIMEINFOEX IMEINFOEX
INT pos
Definition: ntuser.h:476
DWORD NTAPI NtUserGetImeInfoEx(PIMEINFOEX pImeInfoEx, DWORD dwUnknown2)
Definition: ime.c:111
HANDLE HWND
Definition: compat.h:13
PWND spwnd
Definition: ntuser.h:1179
struct _WND * spwndActivePopup
Definition: ntuser.h:443
PSBINFO pSBInfo
Definition: ntuser.h:690
struct _WND WND
SHORT xHotspot
Definition: ntuser.h:1129
static HRGN hRgn
Definition: mapping.c:33
BOOL NTAPI NtUserGetScrollBarInfo(HWND hWnd, LONG idObject, PSCROLLBARINFO psbi)
Definition: scrollbar.c:1172
ULONG cyItem
Definition: ntuser.h:352
BOOL NTAPI NtUserRegisterRawInputDevices(IN PCRAWINPUTDEVICE pRawInputDevices, IN UINT uiNumDevices, IN UINT cbSize)
Definition: ntstubs.c:666
INT NTAPI NtUserInternalGetWindowText(HWND hWnd, LPWSTR lpString, INT nMaxCount)
Definition: window.c:4383
HMENU SystemMenu
Definition: ntuser.h:692
INT NTAPI NtUserGetPriorityClipboardFormat(UINT *paFormatPriorityList, INT cFormats)
Definition: clipboard.c:820
DWORD_PTR NTAPI NtUserCallOneParam(DWORD_PTR Param, DWORD Routine)
Definition: simplecall.c:145
WNDPROC pfnDialogWndProc
Definition: ntuser.h:768
_Inout_ __drv_aliasesMem PSLIST_ENTRY _Inout_ PSLIST_ENTRY _In_ ULONG Count
Definition: exfuncs.h:1015
HWND NTAPI NtUserChildWindowFromPointEx(HWND Parent, LONG x, LONG y, UINT Flags)
Definition: winpos.c:3124
ULONG yItem
Definition: ntuser.h:350
struct _WND * spwndNotify
Definition: ntuser.h:393
HBRUSH NTAPI NtUserGetControlBrush(HWND hwnd, HDC hdc, UINT ctlType)
Definition: misc.c:182
BOOL TimeToHide
Definition: ntuser.h:406
BOOL NTAPI NtUserPostMessage(HWND hWnd, UINT Msg, WPARAM wParam, LPARAM lParam)
Definition: message.c:2062
_In_ BOOL _In_ HANDLE hProcess
Definition: mapping.h:70
GLint GLint GLint GLint GLint x
Definition: gl.h:1548
HBITMAP hbmMask
Definition: ntuser.h:1131
BOOL NTAPI NtUserEndDeferWindowPosEx(HDWP WinPosInfo, DWORD Unknown1)
Definition: winpos.c:3145
BOOL NTAPI NtUserCheckWindowThreadDesktop(HWND hwnd, DWORD dwThreadId, ULONG ReturnValue)
DWORD NTAPI NtUserSetImeHotKey(DWORD Unknown0, DWORD Unknown1, DWORD Unknown2, DWORD Unknown3, DWORD Unknown4)
Definition: ime.c:68
struct _CURICON_OBJECT * spcur
Definition: ntuser.h:554
ULONG fHierarchyDropped
Definition: ntuser.h:416
struct _SBWND SBWND
BOOL NTAPI NtUserFillWindow(HWND hWndPaint, HWND hWndPaint1, HDC hDC, HBRUSH hBrush)
Definition: painting.c:1690
USHORT dmLogPixels
Definition: ntuser.h:990
BOOL NTAPI NtUserDdeGetQualityOfService(IN HWND hwndClient, IN HWND hWndServer, OUT PSECURITY_QUALITY_OF_SERVICE pqosPrev)
Definition: dde.c:430
ULONG fIsTrackPopup
Definition: ntuser.h:414
DWORD dwExpWinVer
Definition: ntuser.h:289
DWORD NTAPI NtUserGetImeHotKey(DWORD Unknown0, DWORD Unknown1, DWORD Unknown2, DWORD Unknown3)
Definition: ime.c:42
UINT_PTR WPARAM
Definition: windef.h:207
ACPI_BUFFER *RetBuffer ACPI_BUFFER *RetBuffer char ACPI_WALK_RESOURCE_CALLBACK void *Context ACPI_BUFFER *RetBuffer UINT16 ACPI_RESOURCE **ResourcePtr ACPI_GENERIC_ADDRESS *Reg UINT32 *ReturnValue UINT8 UINT8 *Slp_TypB ACPI_PHYSICAL_ADDRESS PhysicalAddress64 UINT32 UINT32 *TimeElapsed UINT32 ACPI_STATUS const char UINT32 ACPI_STATUS const char UINT32 const char const char * ModuleName
Definition: acpixf.h:1270
BYTE afAsyncKeyStateRecentDow[8]
Definition: ntuser.h:306
ACPI_PHYSICAL_ADDRESS ACPI_SIZE BOOLEAN Warn BOOLEAN Physical UINT32 ACPI_TABLE_HEADER *OutTableHeader ACPI_TABLE_HEADER **OutTable ACPI_HANDLE UINT32 ACPI_WALK_CALLBACK ACPI_WALK_CALLBACK void void **ReturnValue UINT32 ACPI_BUFFER *RetPathPtr ACPI_OBJECT_HANDLER void *Data ACPI_OBJECT_HANDLER void **Data ACPI_STRING ACPI_OBJECT_LIST ACPI_BUFFER *ReturnObjectBuffer ACPI_DEVICE_INFO **ReturnBuffer ACPI_HANDLE Parent
Definition: acpixf.h:728
DWORD NTAPI NtUserRemoteRedrawRectangle(DWORD dwUnknown1, DWORD dwUnknown2, DWORD dwUnknown3, DWORD dwUnknown4)
Definition: ntstubs.c:907
enum _GETCPD * PGETCPD
RECT rcClient
Definition: ntuser.h:681
BOOL NTAPI NtUserValidateRect(HWND hWnd, CONST RECT *lpRect)
struct _USERCONNECT USERCONNECT
HICON HCURSOR
Definition: windef.h:299
UINT NTAPI NtUserGetCaretBlinkTime(VOID)
Definition: caret.c:380
DWORD NTAPI NtUserCtxDisplayIOCtl(DWORD dwUnknown1, DWORD dwUnknown2, DWORD dwUnknown3)
Definition: ntstubs.c:935
UINT uFlags
Definition: api.c:59
GLdouble u1
Definition: glext.h:8308
static HDC hdcSrc
Definition: xlate.c:32
HIMC hImc
Definition: ntuser.h:704
int32_t INT_PTR
Definition: typedefs.h:62
INT NTAPI NtUserEnumDisplayMonitors(OPTIONAL IN HDC hDC, OPTIONAL IN LPCRECT pRect, OPTIONAL OUT HMONITOR *hMonitorList, OPTIONAL OUT LPRECT monitorRectList, OPTIONAL IN DWORD listSize)
struct _MDIWND * PMDIWND
_Out_opt_ PICONINFO _Inout_opt_ PUNICODE_STRING _Inout_opt_ PUNICODE_STRING lpResName
Definition: ntuser.h:2267
static HWINEVENTHOOK(WINAPI *pSetWinEventHook)(DWORD
char * LPSTR
Definition: xmlstorage.h:182
struct _CLS * pclsClone
Definition: ntuser.h:546
_Out_ RTL_ATOM * Atom
Definition: class.h:54
WNDPROC pfnComboListBoxProc
Definition: ntuser.h:767
_CONSOLECONTROL
Definition: ntuser.h:1766
INT WSBflags
Definition: ntuser.h:481
ATOM atomContextHelpIdProp
Definition: ntuser.h:1020
struct _PFNCLIENT PFNCLIENT
BOOL NTAPI NtUserGetMenuBarInfo(HWND hwnd, LONG idObject, LONG idItem, PMENUBARINFO pmbi)
Definition: menu.c:5914
struct tagPOPUPMENU * PPOPUPMENU
#define BOOL
Definition: nt_native.h:43
HDC NTAPI NtUserGetDC(HWND hWnd)
Definition: windc.c:1013
MENUINFO CONST * LPCMENUINFO
Definition: winuser.h:3719
struct tagSBINFO * PSBINFO
struct _WND * spwndClipboardListener
Definition: ntuser.h:708
#define MAX_MB_STRINGS
Definition: ntuser.h:907
struct _REGISTER_SYSCLASS REGISTER_SYSCLASS
UNICODE_STRING lpstr
Definition: ntuser.h:360
RTL_ATOM atomClassName
Definition: ntuser.h:536
struct _PROCESSINFO * ppi
Definition: ntuser.h:26
BOOL NTAPI NtUserInvalidateRect(HWND hWnd, CONST RECT *lpRect, BOOL bErase)
Definition: painting.c:2532
BOOL NTAPI NtUserGetMonitorInfo(IN HMONITOR hMonitor, OUT LPMONITORINFO pMonitorInfo)
Definition: monitor.c:728
int32_t INT
Definition: typedefs.h:56
WNDMSG awmControl[FNID_LAST - FNID_FIRST]
Definition: ntuser.h:1083
NTSTATUS NTAPI NtUserInitializeClientPfnArrays(PPFNCLIENT pfnClientA, PPFNCLIENT pfnClientW, PPFNCLIENTWORKER pfnClientWorker, HINSTANCE hmodUser)
Definition: ntstubs.c:124
struct _THREADINFO * ptiHooked
Definition: ntuser.h:223
struct _LARGE_ANSI_STRING LARGE_ANSI_STRING
struct tagDPISERVERINFO * PDPISERVERINFO
COLORREF argbSystem[NUM_SYSCOLORS]
Definition: ntuser.h:964
BOOL NTAPI NtUserEnableScrollBar(HWND hWnd, UINT wSBflags, UINT wArrows)
Definition: scrollbar.c:1282
BOOL APIENTRY NtUserPeekMessage(PMSG pMsg, HWND hWnd, UINT MsgFilterMin, UINT MsgFilterMax, UINT RemoveMsg)
Definition: message.c:2174
POINTL point
Definition: edittest.c:50
& rect
Definition: startmenu.cpp:1413
struct _CURICON_OBJECT * spicn
Definition: ntuser.h:553
WPARAM wParam
Definition: combotst.c:138
INT pxTop
Definition: ntuser.h:492
struct _PROCDESKHEAD * PPROCDESKHEAD
DWORD NTAPI NtUserQueryInputContext(DWORD dwUnknown1, DWORD dwUnknown2)
Definition: ntstubs.c:632
UINT NTAPI NtUserSendInput(UINT nInputs, LPINPUT pInput, INT cbSize)
Definition: input.c:707
PIMEUI pimeui
Definition: ntuser.h:1200
_OBI_TYPES
Definition: ntuser.h:925
ATOM atomNVClassName
Definition: ntuser.h:537
struct _SHAREDINFO SHAREDINFO
HFONT hFont
Definition: main.c:53
VOID(CALLBACK * TIMERPROC)(HWND, UINT, UINT_PTR, DWORD)
Definition: winuser.h:2872
struct _BROADCASTPARM BROADCASTPARM
GLint GLint GLsizei GLsizei GLsizei GLint GLenum format
Definition: gl.h:1546
BOOL NTAPI NtUserGetObjectInformation(HANDLE hObject, DWORD nIndex, PVOID pvInformation, DWORD nLength, PDWORD nLengthNeeded)
Definition: winsta.c:1063
struct _DESKTOP_CONSOLE_THREAD * PDESKTOP_CONSOLE_THREAD
DWORD NTAPI NtUserGetGuiResources(HANDLE hProcess, DWORD uiFlags)
Definition: misc.c:505
#define _In_opt_
Definition: no_sal2.h:213
LRESULT(CALLBACK * HOOKPROC)(int, WPARAM, LPARAM)
Definition: winuser.h:2874
struct _PROPLISTITEM * PPROPLISTITEM
BOOL NTAPI NtUserEmptyClipboard(VOID)
Definition: clipboard.c:719
struct _SHAREDINFO * PSHAREDINFO
UINT wMaxBtnSize
Definition: ntuser.h:950
DWORD dwLastRITEventTickCount
Definition: ntuser.h:969
SBCALC SBCalc
Definition: ntuser.h:738
HBITMAP hbmUserAlpha
Definition: ntuser.h:1135
struct tagDDEPACK DDEPACK
struct _USER_HANDLE_TABLE * PUSER_HANDLE_TABLE
ULONG fTrackMouseEvent
Definition: ntuser.h:431
struct _THREADINFO * GetW32ThreadInfo(VOID)
Definition: misc.c:781
PCLIENTTHREADINFO pClientThreadInfo
Definition: ntuser.h:300
HBRUSH NTAPI NtUserGetControlColor(HWND hwndParent, HWND hwnd, HDC hdc, UINT CtlMsg)
Definition: misc.c:206
HDESK NTAPI NtUserCreateDesktop(POBJECT_ATTRIBUTES poa, PUNICODE_STRING lpszDesktopDevice, LPDEVMODEW lpdmw, DWORD dwFlags, ACCESS_MASK dwDesiredAccess)
Definition: desktop.c:2483
UINT uStr
Definition: ntuser.h:940
ULONG fShowTimer
Definition: ntuser.h:424
HWINSTA NTAPI NtUserOpenWindowStation(POBJECT_ATTRIBUTES ObjectAttributes, ACCESS_MASK dwDesiredAccess)
uint32_t ULONG_PTR
Definition: typedefs.h:63
struct _CALLPROCDATA * spcpdNext
Definition: ntuser.h:519
GETCPD wType
Definition: ntuser.h:521
OEMBITMAPINFO oembmi[OBI_CTYPES]
Definition: ntuser.h:987
WNDPROC_EX pfnMDIClientWndProc
Definition: ntuser.h:804
HICON hIconSmWindows
Definition: ntuser.h:982
struct _SETSCROLLBARINFO * PSETSCROLLBARINFO
DWORD_PTR NTAPI NtUserQueryWindow(HWND hWnd, DWORD Index)
Definition: window.c:4001
struct tagMENU MENU
HWND NTAPI NtUserSetActiveWindow(HWND Wnd)
Definition: focus.c:1546
WNDMSG DefWindowSpecMsgs
Definition: ntuser.h:1085
SCROLLINFO ScrollInfo
Definition: ntuser.h:569
struct tagHOOK * PHOOK
WNDPROC lpfnWndProc
Definition: ntuser.h:549
_Success_(return !=0) _At_(pustrName -> Buffer, _Out_z_bytecap_post_bytecount_(pustrName->MaximumLength, return *2+2)) ULONG APIENTRY NtUserGetAtomName(_In_ ATOM atom, _Inout_ PUNICODE_STRING pustrName)
Definition: fsctrl.c:3139
ULONG cbwndExtra
Definition: ntuser.h:702
NTSTATUS NTAPI NtUserSetInformationThread(IN HANDLE ThreadHandle, IN USERTHREADINFOCLASS ThreadInformationClass, IN PVOID ThreadInformation, IN ULONG ThreadInformationLength)
Definition: ntstubs.c:699
BOOL NTAPI NtUserCloseDesktop(HDESK hDesktop)
Definition: desktop.c:2677
_Must_inspect_result_ _In_ ULONG Flags
Definition: wsk.h:170
Definition: window.c:28
DWORD CSF_flags
Definition: ntuser.h:541
HINSTANCE hInstance
Definition: charmap.c:20
DWORD NTAPI NtUserGetAppImeLevel(DWORD dwUnknown1)
Definition: ime.c:102
PFNCLIENT apfnClientW
Definition: ntuser.h:1010
PROCDESKHEAD head
Definition: ntuser.h:518
BOOL NTAPI NtUserSwitchDesktop(HDESK hDesktop)
Definition: desktop.c:2888
WNDPROC pfnComboBoxWndProc
Definition: ntuser.h:766
struct _DESKTOP * rpdesk
Definition: ntuser.h:224
DWORD NTAPI NtUserSetImeOwnerWindow(DWORD Unknown0, DWORD Unknown1)
Definition: ime.c:140
unsigned char * LPBYTE
Definition: typedefs.h:52
BOOL NTAPI NtUserUpdateLayeredWindow(HWND hwnd, HDC hdcDst, POINT *pptDst, SIZE *psize, HDC hdcSrc, POINT *pptSrc, COLORREF crKey, BLENDFUNCTION *pblend, DWORD dwFlags, RECT *prcDirty)
Definition: layered.c:341
UINT32 void void ** ReturnValue
Definition: acevents.h:214
ULONG ulX
Definition: ntuser.h:354
NTSTATUS(* NTAPI)(IN PFILE_FULL_EA_INFORMATION EaBuffer, IN ULONG EaLength, OUT PULONG ErrorOffset)
Definition: IoEaTest.cpp:117
ULONG cxTextAlign
Definition: ntuser.h:392
UINT style
Definition: ntuser.h:548
INT pxDownArrow
Definition: ntuser.h:498
_In_ ULONG _In_ ULONG Offset
Definition: ntddpcm.h:101
struct _CALLPROCDATA CALLPROCDATA
struct _BROADCASTPARM * PBROADCASTPARM
DWORD dwSRVIFlags
Definition: ntuser.h:1004
PROCDESKHEAD head
Definition: ntuser.h:385
HANDLE Data
Definition: ntuser.h:1054
DWORD fnid
Definition: ntuser.h:673
_In_ HANDLE _In_ DWORD _In_ DWORD _Inout_opt_ LPOVERLAPPED _In_opt_ LPTRANSMIT_FILE_BUFFERS _In_ DWORD dwReserved
Definition: mswsock.h:90
PSTR lpszClientAnsiMenuName
Definition: ntuser.h:542
unsigned int BOOL
Definition: ntddk_ex.h:94
BOOL fGlobalHandle
Definition: ntuser.h:1107
WNDPROC pfnListBoxWndProc
Definition: ntuser.h:770
PWSTR lpszClientUnicodeMenuName
Definition: ntuser.h:543
BOOL NTAPI NtUserSetSysColors(int cElements, IN CONST INT *lpaElements, IN CONST COLORREF *lpaRgbValues, FLONG Flags)
Definition: ntstubs.c:311
DWORD NTAPI NtUserInitTask(DWORD Unknown0, DWORD Unknown1, DWORD Unknown2, DWORD Unknown3, DWORD Unknown4, DWORD Unknown5, DWORD Unknown6, DWORD Unknown7, DWORD Unknown8, DWORD Unknown9, DWORD Unknown10, DWORD Unknown11)
Definition: ntstubs.c:171
struct _THRDESKHEAD * PTHRDESKHEAD
long LONG
Definition: pedump.c:60
LIST_ENTRY PropListEntry
Definition: ntuser.h:1053
BOOL NTAPI NtUserTranslateMessage(LPMSG lpMsg, UINT flags)
Definition: message.c:2286
DWORD NTAPI NtUserQueryUserCounters(DWORD Unknown0, DWORD Unknown1, DWORD Unknown2, DWORD Unknown3, DWORD Unknown4)
Definition: ntstubs.c:223
HWND hwndUI
Definition: ntuser.h:1183
DWORD NTAPI NtUserGetRawInputDeviceInfo(HANDLE hDevice, UINT uiCommand, LPVOID pData, PUINT pcbSize)
Definition: ntstubs.c:470
ULONG_PTR NTAPI NtUserGetCPD(HWND hWnd, GETCPD Flags, ULONG_PTR Proc)
Definition: callproc.c:176
ULONG cbHandleTable
Definition: ntuser.h:1012
PRTL_UNICODE_STRING_BUFFER PULONG PULONG Unknown4