Aric Stewart : msctf: Define ITfCompartmentMgr for Context.

Alexandre Julliard julliard at winehq.org
Fri Jun 12 10:41:10 CDT 2009


Module: wine
Branch: master
Commit: 3726e38b1952510124b6c22e2ddd492605a3e774
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=3726e38b1952510124b6c22e2ddd492605a3e774

Author: Aric Stewart <aric at codeweavers.com>
Date:   Thu Jun 11 13:33:33 2009 -0500

msctf: Define ITfCompartmentMgr for Context.

---

 dlls/msctf/context.c |   10 ++++++++++
 1 files changed, 10 insertions(+), 0 deletions(-)

diff --git a/dlls/msctf/context.c b/dlls/msctf/context.c
index be1ee2d..2c7acb0 100644
--- a/dlls/msctf/context.c
+++ b/dlls/msctf/context.c
@@ -68,6 +68,9 @@ typedef struct tagContext {
     LONG refCount;
     BOOL connected;
 
+    /* Aggregation */
+    ITfCompartmentMgr  *CompartmentMgr;
+
     TfClientId tidOwner;
     TfEditCookie defaultCookie;
     TS_STATUS documentStatus;
@@ -175,6 +178,7 @@ static void Context_Destructor(Context *This)
         free_sink(sink);
     }
 
+    CompartmentMgr_Destructor(This->CompartmentMgr);
     HeapFree(GetProcessHeap(),0,This);
 }
 
@@ -195,6 +199,10 @@ static HRESULT WINAPI Context_QueryInterface(ITfContext *iface, REFIID iid, LPVO
     {
         *ppvOut = &This->InsertAtSelectionVtbl;
     }
+    else if (IsEqualIID(iid, &IID_ITfCompartmentMgr))
+    {
+        *ppvOut = This->CompartmentMgr;
+    }
 
     if (*ppvOut)
     {
@@ -718,6 +726,8 @@ HRESULT Context_Constructor(TfClientId tidOwner, IUnknown *punk, ITfContext **pp
     This->tidOwner = tidOwner;
     This->connected = FALSE;
 
+    CompartmentMgr_Constructor((IUnknown*)This, &IID_IUnknown, (IUnknown**)&This->CompartmentMgr);
+
     cookie->lockType = TF_ES_READ;
     cookie->pOwningContext = This;
 




More information about the wine-cvs mailing list