oleview: Fixed idl files generation with oleautomation flag.
This commit is contained in:
parent
4e51c02224
commit
bd4437f18f
@ -493,9 +493,10 @@ static int EnumEnums(ITypeInfo *pTypeInfo, int cVars, HTREEITEM hParent)
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int EnumFuncs(ITypeInfo *pTypeInfo, int cFuncs, HTREEITEM hParent)
|
static int EnumFuncs(ITypeInfo *pTypeInfo, TYPEATTR *pTypeAttr, HTREEITEM hParent)
|
||||||
{
|
{
|
||||||
int i, j;
|
int i, j;
|
||||||
|
int cFuncs;
|
||||||
unsigned namesNo;
|
unsigned namesNo;
|
||||||
TVINSERTSTRUCT tvis;
|
TVINSERTSTRUCT tvis;
|
||||||
FUNCDESC *pFuncDesc;
|
FUNCDESC *pFuncDesc;
|
||||||
@ -509,6 +510,8 @@ static int EnumFuncs(ITypeInfo *pTypeInfo, int cFuncs, HTREEITEM hParent)
|
|||||||
tvis.hInsertAfter = (HTREEITEM)TVI_LAST;
|
tvis.hInsertAfter = (HTREEITEM)TVI_LAST;
|
||||||
tvis.hParent = hParent;
|
tvis.hParent = hParent;
|
||||||
|
|
||||||
|
cFuncs = pTypeAttr->cFuncs;
|
||||||
|
|
||||||
for(i=0; i<cFuncs; i++)
|
for(i=0; i<cFuncs; i++)
|
||||||
{
|
{
|
||||||
TYPELIB_DATA *tld;
|
TYPELIB_DATA *tld;
|
||||||
@ -600,8 +603,12 @@ static int EnumFuncs(ITypeInfo *pTypeInfo, int cFuncs, HTREEITEM hParent)
|
|||||||
AddToTLDataStrW(tld, wszNewLine);
|
AddToTLDataStrW(tld, wszNewLine);
|
||||||
}
|
}
|
||||||
|
|
||||||
AddToTLDataStrW(tld, wszText);
|
if(pTypeAttr->wTypeFlags & TYPEFLAG_FOLEAUTOMATION)
|
||||||
AddToTLDataStrW(tld, wszAfter);
|
AddToTLDataStrW(tld, wszVT_HRESULT);
|
||||||
|
else {
|
||||||
|
AddToTLDataStrW(tld, wszText);
|
||||||
|
AddToTLDataStrW(tld, wszAfter);
|
||||||
|
}
|
||||||
AddToTLDataStrW(tld, wszSpace);
|
AddToTLDataStrW(tld, wszSpace);
|
||||||
if(pFuncDesc->memid >= MIN_FUNC_ID)
|
if(pFuncDesc->memid >= MIN_FUNC_ID)
|
||||||
{
|
{
|
||||||
@ -735,7 +742,7 @@ static int EnumImplTypes(ITypeInfo *pTypeInfo, int cImplTypes, HTREEITEM hParent
|
|||||||
|
|
||||||
hParent = TreeView_InsertItem(typelib.hTree, &tvis);
|
hParent = TreeView_InsertItem(typelib.hTree, &tvis);
|
||||||
EnumVars(pRefTypeInfo, pTypeAttr->cVars, hParent);
|
EnumVars(pRefTypeInfo, pTypeAttr->cVars, hParent);
|
||||||
EnumFuncs(pRefTypeInfo, pTypeAttr->cFuncs, hParent);
|
EnumFuncs(pRefTypeInfo, pTypeAttr, hParent);
|
||||||
EnumImplTypes(pRefTypeInfo, pTypeAttr->cImplTypes, hParent);
|
EnumImplTypes(pRefTypeInfo, pTypeAttr->cImplTypes, hParent);
|
||||||
|
|
||||||
SysFreeString(bstrName);
|
SysFreeString(bstrName);
|
||||||
@ -1195,7 +1202,7 @@ static int PopulateTree(void)
|
|||||||
AddToTLDataStrW(tld, wszColon);
|
AddToTLDataStrW(tld, wszColon);
|
||||||
AddToTLDataStrW(tld, wszNewLine);
|
AddToTLDataStrW(tld, wszNewLine);
|
||||||
tvis.hParent = TreeView_InsertItem(typelib.hTree, &tvis);
|
tvis.hParent = TreeView_InsertItem(typelib.hTree, &tvis);
|
||||||
EnumFuncs(pTypeInfo, pTypeAttr->cFuncs, tvis.hParent);
|
EnumFuncs(pTypeInfo, pTypeAttr, tvis.hParent);
|
||||||
AddChildrenData(tvis.hParent, tld);
|
AddChildrenData(tvis.hParent, tld);
|
||||||
|
|
||||||
EnumImplTypes(pTypeInfo, pTypeAttr->cImplTypes, hParent);
|
EnumImplTypes(pTypeInfo, pTypeAttr->cImplTypes, hParent);
|
||||||
@ -1254,7 +1261,7 @@ static int PopulateTree(void)
|
|||||||
hParent = TreeView_InsertItem(typelib.hTree, &tvis);
|
hParent = TreeView_InsertItem(typelib.hTree, &tvis);
|
||||||
|
|
||||||
EnumVars(pTypeInfo, pTypeAttr->cVars, hParent);
|
EnumVars(pTypeInfo, pTypeAttr->cVars, hParent);
|
||||||
EnumFuncs(pTypeInfo, pTypeAttr->cFuncs, hParent);
|
EnumFuncs(pTypeInfo, pTypeAttr, hParent);
|
||||||
EnumImplTypes(pTypeInfo, pTypeAttr->cImplTypes, hParent);
|
EnumImplTypes(pTypeInfo, pTypeAttr->cImplTypes, hParent);
|
||||||
|
|
||||||
if(memcmp(bstrName, wszVT_UNKNOWN, sizeof(wszVT_UNKNOWN)))
|
if(memcmp(bstrName, wszVT_UNKNOWN, sizeof(wszVT_UNKNOWN)))
|
||||||
|
Loading…
x
Reference in New Issue
Block a user