diff --git a/ILSpy/ILSpy.csproj b/ILSpy/ILSpy.csproj
index 319e94081..a7d106eed 100644
--- a/ILSpy/ILSpy.csproj
+++ b/ILSpy/ILSpy.csproj
@@ -322,6 +322,8 @@
+
+
@@ -450,6 +452,14 @@
Designer
MSBuild:Compile
+
+ Designer
+ MSBuild:Compile
+
+
+ Designer
+ MSBuild:Compile
+
Designer
MSBuild:Compile
diff --git a/ILSpy/Images/Images.cs b/ILSpy/Images/Images.cs
index 70c3928b9..f4d089535 100644
--- a/ILSpy/Images/Images.cs
+++ b/ILSpy/Images/Images.cs
@@ -215,7 +215,6 @@ namespace ICSharpCode.ILSpy
PreloadPublicIconToCache(TypeIcon.Struct, Images.Struct);
PreloadPublicIconToCache(TypeIcon.Interface, Images.Interface);
PreloadPublicIconToCache(TypeIcon.Delegate, Images.Delegate);
- PreloadPublicIconToCache(TypeIcon.StaticClass, Images.StaticClass);
}
protected override object GetBaseImage(TypeIcon icon)
@@ -237,9 +236,6 @@ namespace ICSharpCode.ILSpy
case TypeIcon.Delegate:
baseImage = Images.Delegate;
break;
- case TypeIcon.StaticClass:
- baseImage = Images.StaticClass;
- break;
default:
throw new ArgumentOutOfRangeException(nameof(icon), $"TypeIcon.{icon} is not supported!");
}
diff --git a/ILSpy/Images/OverlayStatic.png b/ILSpy/Images/OverlayStatic.png
index 1a0e5e9d4..e6a140ff3 100644
Binary files a/ILSpy/Images/OverlayStatic.png and b/ILSpy/Images/OverlayStatic.png differ
diff --git a/ILSpy/Images/OverlayStatic.xaml b/ILSpy/Images/OverlayStatic.xaml
new file mode 100644
index 000000000..a0a893f2c
--- /dev/null
+++ b/ILSpy/Images/OverlayStatic.xaml
@@ -0,0 +1,9 @@
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/ILSpy/Images/TypeIcon.cs b/ILSpy/Images/TypeIcon.cs
index a3e6b4b91..ec4b8fd58 100644
--- a/ILSpy/Images/TypeIcon.cs
+++ b/ILSpy/Images/TypeIcon.cs
@@ -25,7 +25,6 @@ namespace ICSharpCode.ILSpy
Enum,
Struct,
Interface,
- Delegate,
- StaticClass
+ Delegate
}
}
diff --git a/ILSpy/TreeNodes/TypeTreeNode.cs b/ILSpy/TreeNodes/TypeTreeNode.cs
index 8772874fe..cb40b06b2 100644
--- a/ILSpy/TreeNodes/TypeTreeNode.cs
+++ b/ILSpy/TreeNodes/TypeTreeNode.cs
@@ -112,11 +112,12 @@ namespace ICSharpCode.ILSpy.TreeNodes
public static object GetIcon(ITypeDefinition type)
{
- return Images.GetIcon(GetTypeIcon(type), GetOverlayIcon(type));
+ return Images.GetIcon(GetTypeIcon(type, out bool isStatic), GetOverlayIcon(type), isStatic);
}
- internal static TypeIcon GetTypeIcon(IType type)
+ internal static TypeIcon GetTypeIcon(IType type, out bool isStatic)
{
+ isStatic = false;
switch (type.Kind) {
case TypeKind.Interface:
return TypeIcon.Interface;
@@ -127,8 +128,7 @@ namespace ICSharpCode.ILSpy.TreeNodes
case TypeKind.Enum:
return TypeIcon.Enum;
default:
- if (type.GetDefinition()?.IsStatic == true)
- return TypeIcon.StaticClass;
+ isStatic = type.GetDefinition()?.IsStatic == true;
return TypeIcon.Class;
}
}