135 lines
4.5 KiB
C#
135 lines
4.5 KiB
C#
|
using UnityEngine;
|
||
|
using System.Collections.Generic;
|
||
|
|
||
|
|
||
|
namespace TMPro
|
||
|
{
|
||
|
public enum Compute_DistanceTransform_EventTypes { Processing, Completed };
|
||
|
|
||
|
|
||
|
public static class TMPro_EventManager
|
||
|
{
|
||
|
public static readonly FastAction<object, Compute_DT_EventArgs> COMPUTE_DT_EVENT = new FastAction<object, Compute_DT_EventArgs>();
|
||
|
|
||
|
// Event & Delegate used to notify TextMesh Pro objects that Material properties have been changed.
|
||
|
public static readonly FastAction<bool, Material> MATERIAL_PROPERTY_EVENT = new FastAction<bool, Material>();
|
||
|
|
||
|
public static readonly FastAction<bool, Object> FONT_PROPERTY_EVENT = new FastAction<bool, Object>();
|
||
|
|
||
|
public static readonly FastAction<bool, Object> SPRITE_ASSET_PROPERTY_EVENT = new FastAction<bool, Object>();
|
||
|
|
||
|
public static readonly FastAction<bool, Object> TEXTMESHPRO_PROPERTY_EVENT = new FastAction<bool, Object>();
|
||
|
|
||
|
public static readonly FastAction<GameObject, Material, Material> DRAG_AND_DROP_MATERIAL_EVENT = new FastAction<GameObject, Material, Material>();
|
||
|
|
||
|
public static readonly FastAction<bool> TEXT_STYLE_PROPERTY_EVENT = new FastAction<bool>();
|
||
|
|
||
|
public static readonly FastAction<Object> COLOR_GRADIENT_PROPERTY_EVENT = new FastAction<Object>();
|
||
|
|
||
|
public static readonly FastAction TMP_SETTINGS_PROPERTY_EVENT = new FastAction();
|
||
|
|
||
|
public static readonly FastAction RESOURCE_LOAD_EVENT = new FastAction();
|
||
|
|
||
|
public static readonly FastAction<bool, Object> TEXTMESHPRO_UGUI_PROPERTY_EVENT = new FastAction<bool, Object>();
|
||
|
|
||
|
public static readonly FastAction<Object> TEXT_CHANGED_EVENT = new FastAction<Object>();
|
||
|
|
||
|
//public static readonly FastAction WILL_RENDER_CANVASES = new FastAction();
|
||
|
|
||
|
public static void ON_MATERIAL_PROPERTY_CHANGED(bool isChanged, Material mat)
|
||
|
{
|
||
|
MATERIAL_PROPERTY_EVENT.Call(isChanged, mat);
|
||
|
}
|
||
|
|
||
|
public static void ON_FONT_PROPERTY_CHANGED(bool isChanged, Object obj)
|
||
|
{
|
||
|
FONT_PROPERTY_EVENT.Call(isChanged, obj);
|
||
|
}
|
||
|
|
||
|
public static void ON_SPRITE_ASSET_PROPERTY_CHANGED(bool isChanged, Object obj)
|
||
|
{
|
||
|
SPRITE_ASSET_PROPERTY_EVENT.Call(isChanged, obj);
|
||
|
}
|
||
|
|
||
|
public static void ON_TEXTMESHPRO_PROPERTY_CHANGED(bool isChanged, Object obj)
|
||
|
{
|
||
|
TEXTMESHPRO_PROPERTY_EVENT.Call(isChanged, obj);
|
||
|
}
|
||
|
|
||
|
public static void ON_DRAG_AND_DROP_MATERIAL_CHANGED(GameObject sender, Material currentMaterial, Material newMaterial)
|
||
|
{
|
||
|
DRAG_AND_DROP_MATERIAL_EVENT.Call(sender, currentMaterial, newMaterial);
|
||
|
}
|
||
|
|
||
|
public static void ON_TEXT_STYLE_PROPERTY_CHANGED(bool isChanged)
|
||
|
{
|
||
|
TEXT_STYLE_PROPERTY_EVENT.Call(isChanged);
|
||
|
}
|
||
|
|
||
|
public static void ON_COLOR_GRADIENT_PROPERTY_CHANGED(Object obj)
|
||
|
{
|
||
|
COLOR_GRADIENT_PROPERTY_EVENT.Call(obj);
|
||
|
}
|
||
|
|
||
|
|
||
|
public static void ON_TEXT_CHANGED(Object obj)
|
||
|
{
|
||
|
TEXT_CHANGED_EVENT.Call(obj);
|
||
|
}
|
||
|
|
||
|
public static void ON_TMP_SETTINGS_CHANGED()
|
||
|
{
|
||
|
TMP_SETTINGS_PROPERTY_EVENT.Call();
|
||
|
}
|
||
|
|
||
|
public static void ON_RESOURCES_LOADED()
|
||
|
{
|
||
|
RESOURCE_LOAD_EVENT.Call();
|
||
|
}
|
||
|
|
||
|
public static void ON_TEXTMESHPRO_UGUI_PROPERTY_CHANGED(bool isChanged, Object obj)
|
||
|
{
|
||
|
TEXTMESHPRO_UGUI_PROPERTY_EVENT.Call(isChanged, obj);
|
||
|
}
|
||
|
|
||
|
//public static void ON_BASE_MATERIAL_CHANGED(Material mat)
|
||
|
//{
|
||
|
// BASE_MATERIAL_EVENT.Call(mat);
|
||
|
//}
|
||
|
|
||
|
//public static void ON_PROGRESSBAR_UPDATE(Progress_Bar_EventTypes event_type, Progress_Bar_EventArgs eventArgs)
|
||
|
//{
|
||
|
// if (PROGRESS_BAR_EVENT != null)
|
||
|
// PROGRESS_BAR_EVENT(event_type, eventArgs);
|
||
|
//}
|
||
|
|
||
|
public static void ON_COMPUTE_DT_EVENT(object Sender, Compute_DT_EventArgs e)
|
||
|
{
|
||
|
COMPUTE_DT_EVENT.Call(Sender, e);
|
||
|
}
|
||
|
}
|
||
|
|
||
|
|
||
|
public class Compute_DT_EventArgs
|
||
|
{
|
||
|
public Compute_DistanceTransform_EventTypes EventType;
|
||
|
public float ProgressPercentage;
|
||
|
public Color[] Colors;
|
||
|
|
||
|
|
||
|
public Compute_DT_EventArgs(Compute_DistanceTransform_EventTypes type, float progress)
|
||
|
{
|
||
|
EventType = type;
|
||
|
ProgressPercentage = progress;
|
||
|
}
|
||
|
|
||
|
public Compute_DT_EventArgs(Compute_DistanceTransform_EventTypes type, Color[] colors)
|
||
|
{
|
||
|
EventType = type;
|
||
|
Colors = colors;
|
||
|
}
|
||
|
|
||
|
}
|
||
|
|
||
|
}
|