private void SetIconUriSource(VbaType type) { if (type.IsEnum) { IconUriSource = @"\Resources\enum.png"; } else if (type.IsType) { IconUriSource = @"\Resources\type.png"; } else if (type.IsModule) { IconUriSource = @"\Resources\module.png"; } else if (type.IsInterface) { IconUriSource = @"\Resources\interface.png"; } else if (type.IsDispatch) { IconUriSource = @"\Resources\udt.png"; } else if (type.IsCoClass) { IconUriSource = @"\Resources\udt.png"; } }
public FieldInfo(string name, VbaType type, object value, bool isConstant) { Name = name; Type = type; IsConstant = isConstant; Value = value; }
public MemberViewModel(VbaType type) { if (type.Hidden) { FontColor = HiddenFontColor; } Name = type.Name; }
private void GetViewModelForVbaType(VbaType type) { LibraryOrTypeNodeViewModel vm; if (!_vmRegistry.TryGetValue(type, out vm)) { vm = new LibraryOrTypeNodeViewModel(type); _vmRegistry[type] = vm; } ChildNodes.Add(vm); }
private void AddImplementedInterfaces(VbaType type) { // add the implemented interfaces. var info = _infoAndAttrs.First(i => i.Name == type.Name); foreach (var inherited in ComHelper.GetInheritedTypeInfos(info)) { var implemented = FindOrLoadType(inherited); type.AddImplementedType(implemented); } }
private LibraryOrTypeNodeViewModel(VbaType type) { Name = type.Name; foreach (var f in type.Fields) { TypesOrMembers.Add(new MemberViewModel(f)); } foreach (var m in type.Methods) { TypesOrMembers.Add(new MemberViewModel(m)); } if (type.Hidden) { AccessUriSource = @"\Resources\lock.png"; } foreach (var i in type.ImplementedInterfaces) { ChildNodes.Add(new LibraryOrTypeNodeViewModel(i)); } SetIconUriSource(type); }