ServerManagers/src/ARKServerManager/Lib/ViewConverters/EngramClassNameToDisplayNameConverter.cs
2021-01-07 16:23:23 +10:00

38 lines
1.1 KiB
C#

using System;
using System.Globalization;
using System.Windows.Data;
namespace ServerManagerTool.Lib.ViewModel
{
public class EngramClassNameToDisplayNameConverter : IValueConverter
{
public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
{
return Convert(value);
}
public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
{
throw new NotImplementedException();
}
public static object Convert(object value)
{
try
{
var strVal = value as string;
var name = GameData.FriendlyNameForClass(strVal);
if (!string.IsNullOrWhiteSpace(name) && !name.Equals(strVal))
return name;
var firstIndex = strVal.IndexOf('_') + 1;
var length = strVal.LastIndexOf('_') - firstIndex;
return strVal.Substring(firstIndex, length);
}
catch
{
return value;
}
}
}
}