Multi-Platform Package Manager for Stable Diffusion
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 

69 lines
1.9 KiB

using System;
using System.Diagnostics.CodeAnalysis;
using Projektanker.Icons.Avalonia;
using StabilityMatrix.Avalonia.Models;
using StabilityMatrix.Avalonia.Models.TagCompletion;
using StabilityMatrix.Avalonia.Styles;
namespace StabilityMatrix.Avalonia.Controls.CodeCompletion;
[SuppressMessage("ReSharper", "MemberCanBePrivate.Global")]
public static class CompletionIcons
{
public static readonly IconData General = new()
{
FAIcon = "fa-solid fa-star-of-life",
Foreground = ThemeColors.LightSteelBlue,
};
public static readonly IconData Artist = new()
{
FAIcon = "fa-solid fa-palette",
Foreground = ThemeColors.AmericanYellow,
};
public static readonly IconData Character = new()
{
FAIcon = "fa-solid fa-user",
Foreground = ThemeColors.LuminousGreen,
};
public static readonly IconData Copyright = new()
{
FAIcon = "fa-solid fa-copyright",
Foreground = ThemeColors.DeepMagenta,
};
public static readonly IconData Species = new()
{
FAIcon = "fa-solid fa-dragon",
FontSize = 14,
Foreground = ThemeColors.HalloweenOrange,
};
public static readonly IconData Invalid = new()
{
FAIcon = "fa-solid fa-question",
Foreground = ThemeColors.CompletionForegroundBrush,
};
public static readonly IconData Keyword = new()
{
FAIcon = "fa-solid fa-key",
Foreground = ThemeColors.CompletionForegroundBrush,
};
public static IconData? GetIconForTagType(TagType tagType)
{
return tagType switch
{
TagType.General => General,
TagType.Artist => Artist,
TagType.Character => Character,
TagType.Species => Species,
TagType.Invalid => Invalid,
TagType.Copyright => Copyright,
_ => null
};
}
}