diff --git a/ILSpy/App.xaml.cs b/ILSpy/App.xaml.cs index 26dc4d1a8..96145ef17 100644 --- a/ILSpy/App.xaml.cs +++ b/ILSpy/App.xaml.cs @@ -34,6 +34,7 @@ using ICSharpCode.ILSpy.AppEnv; using ICSharpCode.ILSpy.Options; using ICSharpCode.ILSpyX.Analyzers; using ICSharpCode.ILSpyX.Settings; +using ICSharpCode.TreeView; using Medo.Application; @@ -75,6 +76,8 @@ namespace ICSharpCode.ILSpy SingleInstance.NewInstanceDetected += SingleInstance_NewInstanceDetected; } + SharpTreeNode.ImagesProvider = new WpfWindowsTreeNodeImagesProvider(); + InitializeComponent(); Resources.RegisterDefaultStyles(); diff --git a/ILSpy/Images/WpfWindowsTreeNodeImagesProvider.cs b/ILSpy/Images/WpfWindowsTreeNodeImagesProvider.cs new file mode 100644 index 000000000..73369c126 --- /dev/null +++ b/ILSpy/Images/WpfWindowsTreeNodeImagesProvider.cs @@ -0,0 +1,9 @@ +using ICSharpCode.TreeView.PlatformAbstractions; + +namespace ICSharpCode.ILSpy +{ + public class WpfWindowsTreeNodeImagesProvider : ITreeNodeImagesProvider + { + public object Assembly => Images.Assembly; + } +} diff --git a/ILSpy/TreeNodes/AssemblyReferenceTreeNode.cs b/ILSpy/TreeNodes/AssemblyReferenceTreeNode.cs index 109a8004a..80c39380e 100644 --- a/ILSpy/TreeNodes/AssemblyReferenceTreeNode.cs +++ b/ILSpy/TreeNodes/AssemblyReferenceTreeNode.cs @@ -24,6 +24,8 @@ using ICSharpCode.Decompiler.Metadata; using ICSharpCode.Decompiler.TypeSystem; using ICSharpCode.TreeView.PlatformAbstractions; +using TomsToolbox.Wpf.Controls; + namespace ICSharpCode.ILSpy.TreeNodes { /// @@ -49,7 +51,7 @@ namespace ICSharpCode.ILSpy.TreeNodes get { return Language.EscapeName(r.Name) + GetSuffixString(r.Handle); } } - public override object Icon => Images.Assembly; + public override object Icon => ImagesProvider.Assembly; public override bool ShowExpander { get { diff --git a/SharpTreeView/PlatformAbstractions/ITreeNodeImagesProvider.cs b/SharpTreeView/PlatformAbstractions/ITreeNodeImagesProvider.cs new file mode 100644 index 000000000..3cf7e4e05 --- /dev/null +++ b/SharpTreeView/PlatformAbstractions/ITreeNodeImagesProvider.cs @@ -0,0 +1,7 @@ +namespace ICSharpCode.TreeView.PlatformAbstractions +{ + public interface ITreeNodeImagesProvider + { + object Assembly { get; } + } +} diff --git a/SharpTreeView/SharpTreeNode.cs b/SharpTreeView/SharpTreeNode.cs index 30d61dce6..d3dde4470 100644 --- a/SharpTreeView/SharpTreeNode.cs +++ b/SharpTreeView/SharpTreeNode.cs @@ -29,6 +29,8 @@ namespace ICSharpCode.TreeView { public partial class SharpTreeNode : INotifyPropertyChanged { + public static ITreeNodeImagesProvider ImagesProvider { get; set; } + SharpTreeNodeCollection modelChildren; internal SharpTreeNode modelParent; bool isVisible = true;