TimeTravel

This commit is contained in:
2022-01-31 23:13:39 +01:00
parent 80570d8895
commit c2dcb49016
78 changed files with 2294 additions and 363 deletions

View File

@@ -0,0 +1,9 @@
using FileTime.Core.Models;
namespace FileTime.Avalonia.IconProviders
{
public interface IIconProvider
{
string GetImage(IItem item);
}
}

View File

@@ -0,0 +1,33 @@
using FileTime.Core.Models;
using FileTime.Providers.Local;
using System.Linq;
namespace FileTime.Avalonia.IconProviders
{
public class MaterialIconProvider : IIconProvider
{
public string GetImage(IItem item)
{
var icon = "file.svg";
if (item is IContainer)
{
icon = "folder.svg";
}
else if (item is IElement element)
{
if(element is LocalFile localFile && element.FullName.EndsWith(".svg"))
{
return localFile.File.FullName;
}
icon = !element.Name.Contains('.')
? icon
: element.Name.Split('.').Last() switch
{
"cs" => "csharp.svg",
_ => icon
};
}
return "/Assets/material/" + icon;
}
}
}