Commit 4e51c022 authored by Piotr Caban's avatar Piotr Caban Committed by Alexandre Julliard

oleview: Fixed idl files generation with dual interfaces.

parent d19f1673
...@@ -120,6 +120,7 @@ typedef struct ...@@ -120,6 +120,7 @@ typedef struct
WCHAR wszInsertAfter[MAX_LOAD_STRING]; WCHAR wszInsertAfter[MAX_LOAD_STRING];
INT idlLen; INT idlLen;
BOOL bPredefine; BOOL bPredefine;
BOOL bHide;
}TYPELIB_DATA; }TYPELIB_DATA;
extern GLOBALS globals; extern GLOBALS globals;
......
...@@ -758,8 +758,10 @@ static void AddIdlData(HTREEITEM hCur, TYPELIB_DATA *pTLData) ...@@ -758,8 +758,10 @@ static void AddIdlData(HTREEITEM hCur, TYPELIB_DATA *pTLData)
{ {
tvi.hItem = hCur; tvi.hItem = hCur;
SendMessage(typelib.hTree, TVM_GETITEM, 0, (LPARAM)&tvi); SendMessage(typelib.hTree, TVM_GETITEM, 0, (LPARAM)&tvi);
AddToTLDataStrW(pTLData, wszNewLine); if(!((TYPELIB_DATA*)(tvi.lParam))->bHide) {
AddToTLDataStrWithTabsW(pTLData, ((TYPELIB_DATA*)(tvi.lParam))->idl); AddToTLDataStrW(pTLData, wszNewLine);
AddToTLDataStrWithTabsW(pTLData, ((TYPELIB_DATA*)(tvi.lParam))->idl);
}
hCur = TreeView_GetNextSibling(typelib.hTree, hCur); hCur = TreeView_GetNextSibling(typelib.hTree, hCur);
} }
} }
...@@ -788,7 +790,8 @@ static void AddPredefinitions(HTREEITEM hFirst, TYPELIB_DATA *pTLData) ...@@ -788,7 +790,8 @@ static void AddPredefinitions(HTREEITEM hFirst, TYPELIB_DATA *pTLData)
{ {
tvi.hItem = hCur; tvi.hItem = hCur;
SendMessage(typelib.hTree, TVM_GETITEM, 0, (LPARAM)&tvi); SendMessage(typelib.hTree, TVM_GETITEM, 0, (LPARAM)&tvi);
if(((TYPELIB_DATA*)(tvi.lParam))->bPredefine) if(((TYPELIB_DATA*)(tvi.lParam))->bPredefine &&
!((TYPELIB_DATA*)(tvi.lParam))->bHide)
{ {
AddToStrW(wszText, wszSemicolon); AddToStrW(wszText, wszSemicolon);
AddToTLDataStrWithTabsW(pTLData, wszText); AddToTLDataStrWithTabsW(pTLData, wszText);
...@@ -1164,6 +1167,8 @@ static int PopulateTree(void) ...@@ -1164,6 +1167,8 @@ static int PopulateTree(void)
CreateInterfaceInfo(pTypeInfo, pTypeAttr->cImplTypes, bstrName, CreateInterfaceInfo(pTypeInfo, pTypeAttr->cImplTypes, bstrName,
bstrData, ulHelpContext, pTypeAttr, tld); bstrData, ulHelpContext, pTypeAttr, tld);
tld->bPredefine = TRUE; tld->bPredefine = TRUE;
if(pTypeAttr->wTypeFlags & TYPEFLAG_FDUAL)
tld->bHide = TRUE;
AddToStrW(wszText, wszTKIND_DISPATCH); AddToStrW(wszText, wszTKIND_DISPATCH);
AddToStrW(wszText, bstrName); AddToStrW(wszText, bstrName);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment