2024-03-17 18:37:06 -07:00
|
|
|
|
using System.IO;
|
2024-02-05 23:08:37 -08:00
|
|
|
|
|
2024-03-17 18:37:06 -07:00
|
|
|
|
using Avalonia.Data.Converters;
|
|
|
|
|
|
|
|
|
|
namespace SourceGit.Converters
|
|
|
|
|
{
|
|
|
|
|
public static class PathConverters
|
|
|
|
|
{
|
2024-02-05 23:08:37 -08:00
|
|
|
|
public static FuncValueConverter<string, string> PureFileName =
|
|
|
|
|
new FuncValueConverter<string, string>(fullpath => Path.GetFileName(fullpath) ?? "");
|
|
|
|
|
|
|
|
|
|
public static FuncValueConverter<string, string> PureDirectoryName =
|
|
|
|
|
new FuncValueConverter<string, string>(fullpath => Path.GetDirectoryName(fullpath) ?? "");
|
|
|
|
|
|
|
|
|
|
public static FuncValueConverter<string, string> TruncateIfTooLong =
|
2024-03-17 18:37:06 -07:00
|
|
|
|
new FuncValueConverter<string, string>(fullpath =>
|
|
|
|
|
{
|
2024-02-05 23:08:37 -08:00
|
|
|
|
if (fullpath.Length <= 50) return fullpath;
|
|
|
|
|
return fullpath.Substring(0, 20) + ".../" + Path.GetFileName(fullpath);
|
|
|
|
|
});
|
|
|
|
|
}
|
2024-03-17 18:37:06 -07:00
|
|
|
|
}
|