oleview: Mimick native treeview display of enumerations.
Misha Koshelev
mk144210 at bcm.tmc.edu
Tue Feb 27 19:37:39 CST 2007
This is a pretty nitpicky patch, but it mimicks the dichotomy in native
where the treeview displays "const int enumname = enumvalue" and the idl
has the "enumname = enumvalue."
Changelog:
* oleview: Mimick native treeview display of enumerations.
-------------- next part --------------
From e429f007f78aa73a4783203c5039d3e508063378 Mon Sep 17 00:00:00 2001
From: Misha Koshelev <mk144210 at bcm.tmc.edu>
Date: Tue, 27 Feb 2007 19:35:27 -0600
Subject: oleview: Mimick native treeview display of enumerations.
---
programs/oleview/typelib.c | 19 ++++++++++++++-----
1 files changed, 14 insertions(+), 5 deletions(-)
diff --git a/programs/oleview/typelib.c b/programs/oleview/typelib.c
index 779ed26..49568bb 100644
--- a/programs/oleview/typelib.c
+++ b/programs/oleview/typelib.c
@@ -95,6 +95,7 @@ static const WCHAR wszDefaultValue[]
= { 'd','e','f','a','u','l','t','v','a','l','u','e','\0' };
static const WCHAR wszReadOnly[] = { 'r','e','a','d','o','n','l','y','\0' };
+static const WCHAR wszConst[] = { 'c','o','n','s','t','\0' };
void ShowLastError(void)
{
@@ -443,6 +444,7 @@ int EnumEnums(ITypeInfo *pTypeInfo, int
VARDESC *pVarDesc;
BSTR bstrName;
WCHAR wszText[MAX_LOAD_STRING];
+ WCHAR wszAfter[MAX_LOAD_STRING];
U(tvis).item.mask = TVIF_TEXT|TVIF_PARAM;
U(tvis).item.cchTextMax = MAX_LOAD_STRING;
@@ -462,7 +464,7 @@ int EnumEnums(ITypeInfo *pTypeInfo, int
U(tvis).item.lParam = (LPARAM) tld;
memset(wszText, 0, sizeof(wszText));
- AddToStrW(wszText, bstrName);
+ memset(wszAfter, 0, sizeof(wszAfter));
if (pVarDesc->varkind == VAR_CONST)
{
@@ -470,14 +472,21 @@ int EnumEnums(ITypeInfo *pTypeInfo, int
VariantInit(&var);
if (VariantChangeType(&var, pVarDesc->lpvarValue, 0, VT_BSTR) == S_OK)
{
+ AddToStrW(wszText, wszConst);
AddToStrW(wszText, wszSpace);
- AddToStrW(wszText, wszEquals);
- AddToStrW(wszText, wszSpace);
- AddToStrW(wszText, V_BSTR(&var));
+ AddToStrW(wszAfter, wszSpace);
+ AddToStrW(wszAfter, wszEquals);
+ AddToStrW(wszAfter, wszSpace);
+ AddToStrW(wszAfter, V_BSTR(&var));
}
}
- AddToTLDataStrW(tld, wszText);
+ CreateTypeInfo(wszText, wszAfter, pVarDesc->elemdescVar.tdesc, pTypeInfo);
+ AddToStrW(wszText, wszSpace);
+ AddToStrW(wszText, bstrName);
+ AddToStrW(wszText, wszAfter);
+ AddToTLDataStrW(tld, bstrName);
+ AddToTLDataStrW(tld, wszAfter);
if (i<cVars-1)
AddToTLDataStrW(tld, wszComa);
AddToTLDataStrW(tld, wszNewLine);
--
1.4.1
More information about the wine-patches
mailing list