mirror of
https://github.com/reactos/reactos.git
synced 2025-08-03 13:56:05 +00:00
- Start initializing client pfn arrays so that they can be loaded into the server information structure and help register class atoms in win32k.
svn path=/trunk/; revision=41905
This commit is contained in:
parent
1ad4b7ad1f
commit
038073d31c
2 changed files with 96 additions and 11 deletions
|
@ -61,3 +61,81 @@ BOOL WINAPI RegisterSystemControls(VOID)
|
||||||
|
|
||||||
return NtUserRegisterSystemClasses(sizeof(cls) / sizeof(cls[0]), cls);
|
return NtUserRegisterSystemClasses(sizeof(cls) / sizeof(cls[0]), cls);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
#if 0
|
||||||
|
static PFNCLIENT pfnClientA;
|
||||||
|
static PFNCLIENT pfnClientW;
|
||||||
|
static PFNCLIENTWORKER pfnClientWorker;
|
||||||
|
|
||||||
|
BOOL WINAPI RegisterClientPFN(VOID)
|
||||||
|
{
|
||||||
|
NTSTATUS Status;
|
||||||
|
|
||||||
|
pfnClientA.pfnScrollBarWndProc = ScrollBarWndProcA;
|
||||||
|
pfnClientW.pfnScrollBarWndProc = ScrollBarWndProcW;
|
||||||
|
pfnClientA.pfnTitleWndProc = IconTitleWndProc;
|
||||||
|
pfnClientW.pfnTitleWndProc = IconTitleWndProc;
|
||||||
|
pfnClientA.pfnMenuWndProc = PopupMenuWndProcA;
|
||||||
|
pfnClientW.pfnMenuWndProc = PopupMenuWndProcW;
|
||||||
|
pfnClientA.pfnDesktopWndProc = DesktopWndProc; // Fixme!
|
||||||
|
pfnClientW.pfnDesktopWndProc = DesktopWndProc;
|
||||||
|
pfnClientA.pfnDefWindowProc = DefWindowProcA;
|
||||||
|
pfnClientW.pfnDefWindowProc = DefWindowProcW;
|
||||||
|
pfnClientA.pfnMessageWindowProc = DefWindowProcA;
|
||||||
|
pfnClientW.pfnMessageWindowProc = DefWindowProcW;
|
||||||
|
pfnClientA.pfnSwitchWindowProc = DefWindowProcA;
|
||||||
|
pfnClientW.pfnSwitchWindowProc = DefWindowProcW;
|
||||||
|
pfnClientA.pfnButtonWndProc = ButtonWndProcA;
|
||||||
|
pfnClientW.pfnButtonWndProc = ButtonWndProcW
|
||||||
|
pfnClientA.pfnComboBoxWndProc = ComboWndProcA;
|
||||||
|
pfnClientW.pfnComboBoxWndProc = ComboWndProcW;
|
||||||
|
pfnClientA.pfnComboListBoxProc = ListBoxWndProcA;
|
||||||
|
pfnClientW.pfnComboListBoxProc = ListBoxWndProcW;
|
||||||
|
pfnClientA.pfnDialogWndProc = DefDlgProcA;
|
||||||
|
pfnClientW.pfnDialogWndProc = DefDlgProcW;
|
||||||
|
pfnClientA.pfnEditWndProc = EditWndProcA;
|
||||||
|
pfnClientW.pfnEditWndProc = EditWndProcW;
|
||||||
|
pfnClientA.pfnListBoxWndProc = ListBoxWndProcA;
|
||||||
|
pfnClientW.pfnListBoxWndProc = ListBoxWndProcW;
|
||||||
|
pfnClientA.pfnMDIClientWndProc = MDIClientWndProcA;
|
||||||
|
pfnClientW.pfnMDIClientWndProc = MDIClientWndProcW;
|
||||||
|
pfnClientA.pfnStaticWndProc = StaticWndProcA;
|
||||||
|
pfnClientW.pfnStaticWndProc = StaticWndProcW;
|
||||||
|
pfnClientA.pfnImeWndProc = DefWindowProcA;
|
||||||
|
pfnClientW.pfnImeWndProc = DefWindowProcW;
|
||||||
|
pfnClientA.pfnGhostWndProc = DefWindowProcA;
|
||||||
|
pfnClientW.pfnGhostWndProc = DefWindowProcW;
|
||||||
|
pfnClientA.pfnHkINLPCWPSTRUCT = DefWindowProcA;
|
||||||
|
pfnClientW.pfnHkINLPCWPSTRUCT = DefWindowProcW;
|
||||||
|
pfnClientA.pfnHkINLPCWPRETSTRUCT = DefWindowProcA;
|
||||||
|
pfnClientW.pfnHkINLPCWPRETSTRUCT = DefWindowProcW;
|
||||||
|
pfnClientA.pfnDispatchHook = DefWindowProcA;
|
||||||
|
pfnClientW.pfnDispatchHook = DefWindowProcW;
|
||||||
|
pfnClientA.pfnDispatchDefWindowProc = DefWindowProcA;
|
||||||
|
pfnClientW.pfnDispatchDefWindowProc = DefWindowProcW;
|
||||||
|
pfnClientA.pfnDispatchMessage = DefWindowProcA;
|
||||||
|
pfnClientW.pfnDispatchMessage = DefWindowProcW;
|
||||||
|
pfnClientA.pfnMDIActivateDlgProc = DefWindowProcA;
|
||||||
|
pfnClientW.pfnMDIActivateDlgProc = DefWindowProcW;
|
||||||
|
|
||||||
|
pfnClientWorker.pfnButtonWndProc = ButtonWndProc_common;
|
||||||
|
pfnClientWorker.pfnComboBoxWndProc = ComboWndProc_common;
|
||||||
|
pfnClientWorker.pfnComboListBoxProc = ListBoxWndProc_common;
|
||||||
|
// pfnClientWorker.pfnDialogWndProc = DefDlgProc_common;
|
||||||
|
pfnClientWorker.pfnEditWndProc = EditWndProc_common;
|
||||||
|
pfnClientWorker.pfnListBoxWndProc = ListBoxWndProc_common;
|
||||||
|
pfnClientWorker.pfnMDIClientWndProc = MDIClientWndProc_common;
|
||||||
|
pfnClientWorker.pfnStaticWndProc = StaticWndProc_common;
|
||||||
|
pfnClientWorker.pfnImeWndProc = User32DefWindowProc;
|
||||||
|
pfnClientWorker.pfnGhostWndProc = User32DefWindowProc;
|
||||||
|
pfnClientWorker.pfnCtfHookProc = User32DefWindowProc;
|
||||||
|
|
||||||
|
Status = NtUserInitializeClientPfnArrays( &pfnClientA,
|
||||||
|
&pfnClientW,
|
||||||
|
&pfnClientWorker,
|
||||||
|
User32Instance);
|
||||||
|
|
||||||
|
return NT_SUCCESS(Status) ? TRUE : FALSE;
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
|
@ -231,19 +231,26 @@ typedef struct _PFNCLIENT
|
||||||
WNDPROC pfnMDIActivateDlgProc;
|
WNDPROC pfnMDIActivateDlgProc;
|
||||||
} PFNCLIENT, *PPFNCLIENT;
|
} PFNCLIENT, *PPFNCLIENT;
|
||||||
|
|
||||||
|
/*
|
||||||
|
Wine Common proc ( HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam, BOOL Unicode );
|
||||||
|
Windows uses Ansi == TRUE, Wine uses Unicode == TRUE.
|
||||||
|
*/
|
||||||
|
|
||||||
|
typedef LRESULT(CALLBACK *WNDPROC_EX)(HWND,UINT,WPARAM,LPARAM,BOOL);
|
||||||
|
|
||||||
typedef struct _PFNCLIENTWORKER
|
typedef struct _PFNCLIENTWORKER
|
||||||
{
|
{
|
||||||
WNDPROC pfnButtonWndProc;
|
WNDPROC_EX pfnButtonWndProc;
|
||||||
WNDPROC pfnComboBoxWndProc;
|
WNDPROC_EX pfnComboBoxWndProc;
|
||||||
WNDPROC pfnComboListBoxProc;
|
WNDPROC_EX pfnComboListBoxProc;
|
||||||
WNDPROC pfnDialogWndProc;
|
WNDPROC_EX pfnDialogWndProc;
|
||||||
WNDPROC pfnEditWndProc;
|
WNDPROC_EX pfnEditWndProc;
|
||||||
WNDPROC pfnListBoxWndProc;
|
WNDPROC_EX pfnListBoxWndProc;
|
||||||
WNDPROC pfnMDIClientWndProc;
|
WNDPROC_EX pfnMDIClientWndProc;
|
||||||
WNDPROC pfnStaticWndProc;
|
WNDPROC_EX pfnStaticWndProc;
|
||||||
WNDPROC pfnImeWndProc;
|
WNDPROC_EX pfnImeWndProc;
|
||||||
WNDPROC pfnGhostWndProc;
|
WNDPROC_EX pfnGhostWndProc;
|
||||||
WNDPROC pfnCtfHookProc;
|
WNDPROC_EX pfnCtfHookProc;
|
||||||
} PFNCLIENTWORKER, *PPFNCLIENTWORKER;
|
} PFNCLIENTWORKER, *PPFNCLIENTWORKER;
|
||||||
|
|
||||||
struct _WND;
|
struct _WND;
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue