PATCH: typelib stuff
Marcus Meissner
marcus at jet.franken.de
Sun Nov 10 15:22:47 CST 2002
Hi,
Ciao, Marcus
Changelog:
Silence one FIXME(). Implement ITypeInfo::GetDocumentation
for variable descriptions.
Index: typelib.c
===================================================================
RCS file: /home/wine/wine/dlls/oleaut32/typelib.c,v
retrieving revision 1.78
diff -u -r1.78 typelib.c
--- typelib.c 8 Nov 2002 18:51:28 -0000 1.78
+++ typelib.c 10 Nov 2002 21:08:29 -0000
@@ -4309,7 +4307,8 @@
argspos += arglen;
} else {
TYPEDESC *tdesc = &(pFDesc->funcdesc.lprgelemdescParam[i].tdesc);
- FIXME("set %d to pointer for get (type is %d)\n",i,tdesc->vt);
+ if (tdesc->vt != VT_PTR)
+ FIXME("set %d to pointer for get (type is %d)\n",i,tdesc->vt);
/*FIXME: give pointers for the rest, so propertyget works*/
args[argspos] = (DWORD)&args2[args2pos];
@@ -4418,6 +4417,8 @@
*
* Retrieves the documentation string, the complete Help file name and path,
* and the context ID for the Help topic for a specified type description.
+ *
+ * (Can be tested by the Visual Basic Editor in Word for instance.)
*/
static HRESULT WINAPI ITypeInfo_fnGetDocumentation( ITypeInfo2 *iface,
MEMBERID memid, BSTR *pBstrName, BSTR *pBstrDocString,
@@ -4452,8 +4453,13 @@
}
for(pVDesc=This->varlist; pVDesc; pVDesc=pVDesc->next)
if(pVDesc->vardesc.memid==memid){
- FIXME("Not implemented\n");
- return S_OK;
+ if(pBstrName)
+ *pBstrName = SysAllocString(pVDesc->Name);
+ if(pBstrDocString)
+ *pBstrDocString=SysAllocString(pVDesc->HelpString);
+ if(pdwHelpContext)
+ *pdwHelpContext=pVDesc->HelpContext;
+ return S_OK;
}
}
return TYPE_E_ELEMENTNOTFOUND;
More information about the wine-patches
mailing list