@@ -0,0 +1,95 @@
|
||||
using UnityEngine;
|
||||
using System.Collections;
|
||||
|
||||
#pragma warning disable 0649 // Disabled warnings.
|
||||
|
||||
namespace TMPro
|
||||
{
|
||||
|
||||
[System.Serializable]
|
||||
public class TMP_Style
|
||||
{
|
||||
// PUBLIC PROPERTIES
|
||||
|
||||
/// <summary>
|
||||
/// The name identifying this style. ex. <style="name">.
|
||||
/// </summary>
|
||||
public string name
|
||||
{ get { return m_Name; } set { if (value != m_Name) m_Name = value; } }
|
||||
|
||||
/// <summary>
|
||||
/// The hash code corresponding to the name of this style.
|
||||
/// </summary>
|
||||
public int hashCode
|
||||
{ get { return m_HashCode; } set { if (value != m_HashCode) m_HashCode = value; } }
|
||||
|
||||
/// <summary>
|
||||
/// The initial definition of the style. ex. <b> <u>.
|
||||
/// </summary>
|
||||
public string styleOpeningDefinition
|
||||
{ get { return m_OpeningDefinition; } }
|
||||
|
||||
/// <summary>
|
||||
/// The closing definition of the style. ex. </b> </u>.
|
||||
/// </summary>
|
||||
public string styleClosingDefinition
|
||||
{ get { return m_ClosingDefinition; } }
|
||||
|
||||
|
||||
public int[] styleOpeningTagArray
|
||||
{ get { return m_OpeningTagArray; } }
|
||||
|
||||
|
||||
public int[] styleClosingTagArray
|
||||
{ get { return m_ClosingTagArray; } }
|
||||
|
||||
|
||||
// PRIVATE FIELDS
|
||||
[SerializeField]
|
||||
private string m_Name;
|
||||
|
||||
[SerializeField]
|
||||
private int m_HashCode;
|
||||
|
||||
[SerializeField]
|
||||
private string m_OpeningDefinition;
|
||||
|
||||
[SerializeField]
|
||||
private string m_ClosingDefinition;
|
||||
|
||||
[SerializeField]
|
||||
private int[] m_OpeningTagArray;
|
||||
|
||||
[SerializeField]
|
||||
private int[] m_ClosingTagArray;
|
||||
|
||||
|
||||
//public TMP_Style()
|
||||
//{
|
||||
//Debug.Log("New Style with Name: " + m_Name + " was created. ID: ");
|
||||
//}
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// Function to update the content of the int[] resulting from changes to OpeningDefinition & ClosingDefinition.
|
||||
/// </summary>
|
||||
public void RefreshStyle()
|
||||
{
|
||||
m_HashCode = TMP_TextUtilities.GetSimpleHashCode(m_Name);
|
||||
|
||||
m_OpeningTagArray = new int[m_OpeningDefinition.Length];
|
||||
for (int i = 0; i < m_OpeningDefinition.Length; i++)
|
||||
m_OpeningTagArray[i] = m_OpeningDefinition[i];
|
||||
|
||||
m_ClosingTagArray = new int[m_ClosingDefinition.Length];
|
||||
for (int i = 0; i < m_ClosingDefinition.Length; i++)
|
||||
m_ClosingTagArray[i] = m_ClosingDefinition[i];
|
||||
|
||||
#if UNITY_EDITOR
|
||||
// Event to update objects when styles are changed in the editor.
|
||||
TMPro_EventManager.ON_TEXT_STYLE_PROPERTY_CHANGED(true);
|
||||
#endif
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user