Browse Source

Use gray text color for non-public types and members. Closes #143.

pull/263/merge
Daniel Grunwald 14 years ago
parent
commit
6e3aa7825f
  1. 8
      ILSpy/TreeNodes/EventTreeNode.cs
  2. 6
      ILSpy/TreeNodes/FieldTreeNode.cs
  3. 13
      ILSpy/TreeNodes/ILSpyTreeNode.cs
  4. 6
      ILSpy/TreeNodes/MethodTreeNode.cs
  5. 13
      ILSpy/TreeNodes/PropertyTreeNode.cs
  6. 2
      ILSpy/TreeNodes/TypeTreeNode.cs
  7. 3
      ILSpy/XmlDoc/XmlDocLoader.cs
  8. 5
      SharpTreeView/SharpTreeNode.cs
  9. 4
      SharpTreeView/Themes/Generic.xaml

8
ILSpy/TreeNodes/EventTreeNode.cs

@ -108,6 +108,14 @@ namespace ICSharpCode.ILSpy.TreeNodes @@ -108,6 +108,14 @@ namespace ICSharpCode.ILSpy.TreeNodes
language.DecompileEvent(ev, output, options);
}
public override bool IsPublicAPI {
get {
MethodDefinition accessor = ev.AddMethod ?? ev.RemoveMethod;
return accessor != null && (accessor.IsPublic || accessor.IsFamilyOrAssembly || accessor.IsFamily);
}
}
MemberReference IMemberTreeNode.Member
{
get { return ev; }

6
ILSpy/TreeNodes/FieldTreeNode.cs

@ -112,6 +112,12 @@ namespace ICSharpCode.ILSpy.TreeNodes @@ -112,6 +112,12 @@ namespace ICSharpCode.ILSpy.TreeNodes
{
language.DecompileField(field, output, options);
}
public override bool IsPublicAPI {
get {
return field.IsPublic || field.IsFamily || field.IsFamilyOrAssembly;
}
}
MemberReference IMemberTreeNode.Member
{

13
ILSpy/TreeNodes/ILSpyTreeNode.cs

@ -166,5 +166,18 @@ namespace ICSharpCode.ILSpy.TreeNodes @@ -166,5 +166,18 @@ namespace ICSharpCode.ILSpy.TreeNodes
ApplyFilterToChild(node);
}
}
public virtual bool IsPublicAPI {
get { return true; }
}
public override System.Windows.Media.Brush Foreground {
get {
if (IsPublicAPI)
return base.Foreground;
else
return System.Windows.SystemColors.GrayTextBrush;
}
}
}
}

6
ILSpy/TreeNodes/MethodTreeNode.cs

@ -137,6 +137,12 @@ namespace ICSharpCode.ILSpy.TreeNodes @@ -137,6 +137,12 @@ namespace ICSharpCode.ILSpy.TreeNodes
return FilterResult.Hidden;
}
public override bool IsPublicAPI {
get {
return method.IsPublic || method.IsFamily || method.IsFamilyOrAssembly;
}
}
MemberReference IMemberTreeNode.Member
{
get { return method; }

13
ILSpy/TreeNodes/PropertyTreeNode.cs

@ -148,6 +148,19 @@ namespace ICSharpCode.ILSpy.TreeNodes @@ -148,6 +148,19 @@ namespace ICSharpCode.ILSpy.TreeNodes
{
language.DecompileProperty(property, output, options);
}
public override bool IsPublicAPI {
get {
switch (GetAttributesOfMostAccessibleMethod(property) & MethodAttributes.MemberAccessMask) {
case MethodAttributes.Public:
case MethodAttributes.Family:
case MethodAttributes.FamORAssem:
return true;
default:
return false;
}
}
}
MemberReference IMemberTreeNode.Member
{

2
ILSpy/TreeNodes/TypeTreeNode.cs

@ -62,7 +62,7 @@ namespace ICSharpCode.ILSpy.TreeNodes @@ -62,7 +62,7 @@ namespace ICSharpCode.ILSpy.TreeNodes
get { return HighlightSearchMatch(this.Language.FormatTypeName(type)); }
}
public bool IsPublicAPI {
public override bool IsPublicAPI {
get {
switch (type.Attributes & TypeAttributes.VisibilityMask) {
case TypeAttributes.Public:

3
ILSpy/XmlDoc/XmlDocLoader.cs

@ -99,6 +99,9 @@ namespace ICSharpCode.ILSpy.XmlDoc @@ -99,6 +99,9 @@ namespace ICSharpCode.ILSpy.XmlDoc
static string LookupLocalizedXmlDoc(string fileName)
{
if (string.IsNullOrEmpty(fileName))
return null;
string xmlFileName = Path.ChangeExtension(fileName, ".xml");
string currentCulture = System.Threading.Thread.CurrentThread.CurrentUICulture.TwoLetterISOLanguageName;
string localizedXmlDocFile = GetLocalizedName(xmlFileName, currentCulture);

5
SharpTreeView/SharpTreeNode.cs

@ -12,6 +12,7 @@ using System.Collections.ObjectModel; @@ -12,6 +12,7 @@ using System.Collections.ObjectModel;
using System.Windows.Controls;
using System.Collections.Specialized;
using System.Windows.Input;
using System.Windows.Media;
namespace ICSharpCode.TreeView
{
@ -101,6 +102,10 @@ namespace ICSharpCode.TreeView @@ -101,6 +102,10 @@ namespace ICSharpCode.TreeView
get { return null; }
}
public virtual Brush Foreground {
get { return SystemColors.WindowTextBrush; }
}
public virtual object Icon
{
get { return null; }

4
SharpTreeView/Themes/Generic.xaml

@ -181,6 +181,7 @@ @@ -181,6 +181,7 @@
<Border Background="Transparent">
<Border Background="{TemplateBinding Background}">
<Default:SharpTreeNodeView Name="nodeView"
Foreground="{Binding Foreground}"
HorizontalAlignment="Left" />
</Border>
</Border>
@ -210,7 +211,8 @@ @@ -210,7 +211,8 @@
</MultiTrigger>-->
<Trigger Property="IsEnabled"
Value="False">
<Setter Property="Foreground"
<Setter TargetName="nodeView"
Property="Foreground"
Value="{DynamicResource {x:Static SystemColors.GrayTextBrushKey}}" />
</Trigger>
</ControlTemplate.Triggers>

Loading…
Cancel
Save