Module: wine Branch: master Commit: 352c98d7d57103b7a5f1bef03eb77ac8a6c98039 URL: http://source.winehq.org/git/wine.git/?a=commit;h=352c98d7d57103b7a5f1bef03e...
Author: John Klehm xixsimplicityxix@gmail.com Date: Wed Apr 9 18:44:36 2008 -0500
wintab32: Implement WTSetA/W.
---
dlls/wintab32/context.c | 32 ++++++++++++++++++++++++++------ 1 files changed, 26 insertions(+), 6 deletions(-)
diff --git a/dlls/wintab32/context.c b/dlls/wintab32/context.c index 3147ec0..9551d87 100644 --- a/dlls/wintab32/context.c +++ b/dlls/wintab32/context.c @@ -692,11 +692,21 @@ BOOL WINAPI WTGetW(HCTX hCtx, LPLOGCONTEXTW lpLogCtx) */ BOOL WINAPI WTSetA(HCTX hCtx, LPLOGCONTEXTA lpLogCtx) { - FIXME("(%p, %p): stub\n", hCtx, lpLogCtx); + LPOPENCONTEXT context;
- SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + TRACE("hCtx=%p, lpLogCtx=%p\n", hCtx, lpLogCtx);
- return FALSE; + if (!hCtx || !lpLogCtx) return FALSE; + + /* TODO: if cur process not owner of hCtx only modify + * attribs not locked by owner */ + + EnterCriticalSection(&csTablet); + context = TABLET_FindOpenContext(hCtx); + LOGCONTEXTAtoW(lpLogCtx, &context->context); + LeaveCriticalSection(&csTablet); + + return TRUE; }
/*********************************************************************** @@ -704,11 +714,21 @@ BOOL WINAPI WTSetA(HCTX hCtx, LPLOGCONTEXTA lpLogCtx) */ BOOL WINAPI WTSetW(HCTX hCtx, LPLOGCONTEXTW lpLogCtx) { - FIXME("(%p, %p): stub\n", hCtx, lpLogCtx); + LPOPENCONTEXT context;
- SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + TRACE("hCtx=%p, lpLogCtx=%p\n", hCtx, lpLogCtx);
- return FALSE; + if (!hCtx || !lpLogCtx) return FALSE; + + /* TODO: if cur process not hCtx owner only modify + * attribs not locked by owner */ + + EnterCriticalSection(&csTablet); + context = TABLET_FindOpenContext(hCtx); + memmove(&context->context, lpLogCtx, sizeof(LOGCONTEXTW)); + LeaveCriticalSection(&csTablet); + + return TRUE; }
/***********************************************************************