From: James Tabor Date: Mon, 27 Sep 2010 02:46:16 +0000 (+0000) Subject: [Win32k] X-Git-Tag: backups/reactos-yarotows@57446~10^2~150 X-Git-Url: https://git.reactos.org/?p=reactos.git;a=commitdiff_plain;h=e4ec5687333fb2265b36bd1c406ad0c4f57a87cc [Win32k] - Implement win32k support functions for Get and Set process default layout. - Due to changes with wine it will be difficult to sync when RTL support is being added to ComCtl32. svn path=/trunk/; revision=48904 --- diff --git a/reactos/subsystems/win32/win32k/ntuser/simplecall.c b/reactos/subsystems/win32/win32k/ntuser/simplecall.c index 7c4d2226354..0ac918aad9c 100644 --- a/reactos/subsystems/win32/win32k/ntuser/simplecall.c +++ b/reactos/subsystems/win32/win32k/ntuser/simplecall.c @@ -317,6 +317,41 @@ NtUserCallOneParam( _SEH2_END; RETURN(Ret); } + case ONEPARAM_ROUTINE_SETPROCDEFLAYOUT: + { + PPROCESSINFO ppi; + if (Param & LAYOUT_ORIENTATIONMASK) + { + ppi = PsGetCurrentProcessWin32Process(); + ppi->dwLayout = Param; + RETURN(TRUE); + } + SetLastWin32Error(ERROR_INVALID_PARAMETER); + RETURN(FALSE); + } + case ONEPARAM_ROUTINE_GETPROCDEFLAYOUT: + { + BOOL Ret = TRUE; + PPROCESSINFO ppi; + PDWORD pdwLayout; + if ( PsGetCurrentProcess() == CsrProcess) + { + SetLastWin32Error(ERROR_INVALID_ACCESS); + RETURN(FALSE); + } + ppi = PsGetCurrentProcessWin32Process(); + _SEH2_TRY + { + pdwLayout = (PDWORD)Param; + *pdwLayout = ppi->dwLayout; + } + _SEH2_EXCEPT(EXCEPTION_EXECUTE_HANDLER) + { + Ret = FALSE; + } + _SEH2_END; + RETURN(Ret); + } } DPRINT1("Calling invalid routine number 0x%x in NtUserCallOneParam(), Param=0x%x\n", Routine, Param);