Browse Source

Use NaturalSort.Extension instead of Interop

pull/3196/head
Christoph Wille 1 year ago
parent
commit
4998375a9e
  1. 1
      Directory.Packages.props
  2. 1
      ILSpy/ILSpy.csproj
  3. 7
      ILSpy/TreeNodes/NaturalStringComparer.cs

1
Directory.Packages.props

@ -28,6 +28,7 @@
<PackageVersion Include="Microsoft.VisualStudio.Composition" Version="17.7.40" /> <PackageVersion Include="Microsoft.VisualStudio.Composition" Version="17.7.40" />
<PackageVersion Include="Microsoft.Xaml.Behaviors.Wpf" Version="1.1.77" /> <PackageVersion Include="Microsoft.Xaml.Behaviors.Wpf" Version="1.1.77" />
<PackageVersion Include="Mono.Cecil" Version="0.11.5" /> <PackageVersion Include="Mono.Cecil" Version="0.11.5" />
<PackageVersion Include="NaturalSort.Extension" Version="4.2.0" />
<PackageVersion Include="NSubstitute" Version="5.1.0" /> <PackageVersion Include="NSubstitute" Version="5.1.0" />
<PackageVersion Include="NSubstitute.Analyzers.CSharp" Version="1.0.17" /> <PackageVersion Include="NSubstitute.Analyzers.CSharp" Version="1.0.17" />
<PackageVersion Include="NUnit" Version="4.1.0" /> <PackageVersion Include="NUnit" Version="4.1.0" />

1
ILSpy/ILSpy.csproj

@ -48,6 +48,7 @@
<PackageReference Include="Microsoft.VisualStudio.Composition" /> <PackageReference Include="Microsoft.VisualStudio.Composition" />
<PackageReference Include="DataGridExtensions" /> <PackageReference Include="DataGridExtensions" />
<PackageReference Include="Microsoft.Xaml.Behaviors.Wpf" /> <PackageReference Include="Microsoft.Xaml.Behaviors.Wpf" />
<PackageReference Include="NaturalSort.Extension" />
<PackageReference Include="TomsToolbox.Wpf.Styles" /> <PackageReference Include="TomsToolbox.Wpf.Styles" />
</ItemGroup> </ItemGroup>

7
ILSpy/TreeNodes/NaturalStringComparer.cs

@ -16,9 +16,13 @@
// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER // OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
// DEALINGS IN THE SOFTWARE. // DEALINGS IN THE SOFTWARE.
using System;
using System.Collections;
using System.Collections.Generic; using System.Collections.Generic;
using System.Runtime.InteropServices; using System.Runtime.InteropServices;
using NaturalSort.Extension;
namespace ICSharpCode.ILSpy.TreeNodes namespace ICSharpCode.ILSpy.TreeNodes
{ {
[System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Design", "CA1060:MovePInvokesToNativeMethodsClass")] [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Design", "CA1060:MovePInvokesToNativeMethodsClass")]
@ -27,7 +31,8 @@ namespace ICSharpCode.ILSpy.TreeNodes
[DllImport("shlwapi.dll", CharSet = CharSet.Unicode)] [DllImport("shlwapi.dll", CharSet = CharSet.Unicode)]
static extern int StrCmpLogicalW(string psz1, string psz2); static extern int StrCmpLogicalW(string psz1, string psz2);
public static readonly NaturalStringComparer Instance = new NaturalStringComparer(); // public static readonly NaturalStringComparer Instance = new NaturalStringComparer();
public static readonly IComparer<string> Instance = StringComparison.OrdinalIgnoreCase.WithNaturalSort();
public int Compare(string x, string y) public int Compare(string x, string y)
{ {

Loading…
Cancel
Save