95 lines
2.6 KiB
C#
95 lines
2.6 KiB
C#
using System;
|
|
using System.Threading;
|
|
using System.Threading.Tasks;
|
|
|
|
#pragma warning disable CS0162
|
|
|
|
namespace DA_Assets.FCU.Extensions
|
|
{
|
|
public static class FcuExtensions
|
|
{
|
|
public static bool IsCancellationRequested(this FigmaConverterUnity fcu, TokenType type)
|
|
{
|
|
CancellationTokenSource token = fcu.CancellationTokenController.GetToken(type);
|
|
|
|
if (token == null)
|
|
{
|
|
return false;
|
|
}
|
|
else
|
|
{
|
|
return token.IsCancellationRequested;
|
|
}
|
|
}
|
|
|
|
public static CancellationToken GetToken(this FigmaConverterUnity fcu, TokenType type)
|
|
{
|
|
CancellationTokenSource token = fcu.CancellationTokenController.GetToken(type);
|
|
|
|
if (token == null)
|
|
{
|
|
return default;
|
|
}
|
|
else
|
|
{
|
|
return token.Token;
|
|
}
|
|
}
|
|
|
|
public static bool IsJsonNetExists(this FigmaConverterUnity fcu)
|
|
{
|
|
#if JSONNET_EXISTS
|
|
return true;
|
|
#endif
|
|
return false;
|
|
}
|
|
|
|
public static async Task ReEnableRectTransform(this FigmaConverterUnity fcu)
|
|
{
|
|
fcu.gameObject.SetActive(false);
|
|
await Task.Delay(100);
|
|
fcu.gameObject.SetActive(true);
|
|
}
|
|
|
|
|
|
public static Type GetCurrentImageType(this FigmaConverterUnity fcu)
|
|
{
|
|
switch (fcu.Settings.ImageSpritesSettings.ImageComponent)
|
|
{
|
|
case ImageComponent.UnityImage:
|
|
return typeof(UnityEngine.UI.Image);
|
|
case ImageComponent.RawImage:
|
|
return typeof(UnityEngine.UI.RawImage);
|
|
#if SUBC_SHAPES_EXISTS
|
|
case ImageComponent.SubcShape:
|
|
return typeof(Shapes2D.Shape);
|
|
#endif
|
|
#if MPUIKIT_EXISTS
|
|
case ImageComponent.MPImage:
|
|
return typeof(MPUIKIT.MPImage);
|
|
#endif
|
|
#if JOSH_PUI_EXISTS
|
|
case ImageComponent.ProceduralImage:
|
|
return typeof(UnityEngine.UI.ProceduralImage.ProceduralImage);
|
|
#endif
|
|
}
|
|
|
|
return null;
|
|
}
|
|
|
|
public static Type GetCurrentTextType(this FigmaConverterUnity fcu)
|
|
{
|
|
switch (fcu.Settings.TextFontsSettings.TextComponent)
|
|
{
|
|
case TextComponent.UnityText:
|
|
return typeof(UnityEngine.UI.Text);
|
|
#if TextMeshPro
|
|
case TextComponent.TextMeshPro:
|
|
return typeof(TMPro.TextMeshProUGUI);
|
|
#endif
|
|
}
|
|
|
|
return null;
|
|
}
|
|
}
|
|
} |