52 lines
1.2 KiB
C#
52 lines
1.2 KiB
C#
|
|
using System.IO;
|
||
|
|
|
||
|
|
using UnityEditor;
|
||
|
|
using UnityEngine;
|
||
|
|
|
||
|
|
using Codice.LogWrapper;
|
||
|
|
using Unity.PlasticSCM.Editor.AssetUtils;
|
||
|
|
|
||
|
|
namespace Unity.PlasticSCM.Editor.UI
|
||
|
|
{
|
||
|
|
internal static class Fonts
|
||
|
|
{
|
||
|
|
internal enum Name
|
||
|
|
{
|
||
|
|
Cascadia,
|
||
|
|
}
|
||
|
|
|
||
|
|
internal static Font GetCascadiaFont()
|
||
|
|
{
|
||
|
|
if (mCascadiaFont == null)
|
||
|
|
mCascadiaFont = Fonts.GetFont(Fonts.Name.Cascadia);
|
||
|
|
|
||
|
|
return mCascadiaFont;
|
||
|
|
}
|
||
|
|
|
||
|
|
static Font GetFont(this Name font)
|
||
|
|
{
|
||
|
|
string fontFileName = font.ToString().ToLower() + ".ttf";
|
||
|
|
|
||
|
|
string fontFileRelativePath = GetFontFileRelativePath(fontFileName);
|
||
|
|
|
||
|
|
Font result = AssetDatabase.LoadAssetAtPath<Font>(fontFileRelativePath);
|
||
|
|
|
||
|
|
if (result == null)
|
||
|
|
mLog.WarnFormat("Font not found: {0}", fontFileName);
|
||
|
|
|
||
|
|
return result;
|
||
|
|
}
|
||
|
|
|
||
|
|
static string GetFontFileRelativePath(string fontFileName)
|
||
|
|
{
|
||
|
|
return Path.Combine(
|
||
|
|
AssetsPath.GetFontsFolderRelativePath(),
|
||
|
|
fontFileName);
|
||
|
|
}
|
||
|
|
|
||
|
|
static Font mCascadiaFont;
|
||
|
|
|
||
|
|
static readonly ILog mLog = PlasticApp.GetLogger("Fonts");
|
||
|
|
}
|
||
|
|
}
|