diff options
| author | Andrew Lee <alee14498@protonmail.com> | 2020-04-19 17:19:32 -0400 |
|---|---|---|
| committer | Andrew Lee <alee14498@protonmail.com> | 2020-04-19 17:19:32 -0400 |
| commit | c55fba8ab2a1c9d3df65eda4a5a1e957f4aa1f78 (patch) | |
| tree | ee4d51c7c1d633e11f46453ef1edd3c77c4ef9f7 /Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_UiEditorPanel.cs | |
| download | Project-Sandbox-c55fba8ab2a1c9d3df65eda4a5a1e957f4aa1f78.tar.gz Project-Sandbox-c55fba8ab2a1c9d3df65eda4a5a1e957f4aa1f78.tar.bz2 Project-Sandbox-c55fba8ab2a1c9d3df65eda4a5a1e957f4aa1f78.zip | |
Inital commit
Diffstat (limited to 'Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_UiEditorPanel.cs')
| -rw-r--r-- | Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_UiEditorPanel.cs | 91 |
1 files changed, 91 insertions, 0 deletions
diff --git a/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_UiEditorPanel.cs b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_UiEditorPanel.cs new file mode 100644 index 0000000..d44999e --- /dev/null +++ b/Library/PackageCache/com.unity.textmeshpro@2.0.1/Scripts/Editor/TMP_UiEditorPanel.cs @@ -0,0 +1,91 @@ +using UnityEngine;
+using UnityEngine.UI;
+using UnityEditor;
+
+namespace TMPro.EditorUtilities
+{
+
+ [CustomEditor(typeof(TextMeshProUGUI), true), CanEditMultipleObjects]
+ public class TMP_UiEditorPanel : TMP_BaseEditorPanel
+ {
+ static readonly GUIContent k_RaycastTargetLabel = new GUIContent("Raycast Target", "Whether the text blocks raycasts from the Graphic Raycaster.");
+
+ SerializedProperty m_RaycastTargetProp;
+
+ protected override void OnEnable()
+ {
+ base.OnEnable();
+ m_RaycastTargetProp = serializedObject.FindProperty("m_RaycastTarget");
+ }
+
+ protected override void DrawExtraSettings()
+ {
+ Foldout.extraSettings = EditorGUILayout.Foldout(Foldout.extraSettings, k_ExtraSettingsLabel, true, TMP_UIStyleManager.boldFoldout);
+ if (Foldout.extraSettings)
+ {
+ EditorGUI.indentLevel += 1;
+
+ DrawMargins();
+
+ DrawGeometrySorting();
+
+ DrawRichText();
+
+ DrawRaycastTarget();
+
+ DrawParsing();
+
+ DrawKerning();
+
+ DrawPadding();
+
+ EditorGUI.indentLevel -= 1;
+ }
+ }
+
+ protected void DrawRaycastTarget()
+ {
+ EditorGUI.BeginChangeCheck();
+ EditorGUILayout.PropertyField(m_RaycastTargetProp, k_RaycastTargetLabel);
+ if (EditorGUI.EndChangeCheck())
+ {
+ // Change needs to propagate to the child sub objects.
+ Graphic[] graphicComponents = m_TextComponent.GetComponentsInChildren<Graphic>();
+ for (int i = 1; i < graphicComponents.Length; i++)
+ graphicComponents[i].raycastTarget = m_RaycastTargetProp.boolValue;
+
+ m_HavePropertiesChanged = true;
+ }
+ }
+
+ // Method to handle multi object selection
+ protected override bool IsMixSelectionTypes()
+ {
+ GameObject[] objects = Selection.gameObjects;
+ if (objects.Length > 1)
+ {
+ for (int i = 0; i < objects.Length; i++)
+ {
+ if (objects[i].GetComponent<TextMeshProUGUI>() == null)
+ return true;
+ }
+ }
+ return false;
+ }
+ protected override void OnUndoRedo()
+ {
+ int undoEventId = Undo.GetCurrentGroup();
+ int lastUndoEventId = s_EventId;
+
+ if (undoEventId != lastUndoEventId)
+ {
+ for (int i = 0; i < targets.Length; i++)
+ {
+ //Debug.Log("Undo & Redo Performed detected in Editor Panel. Event ID:" + Undo.GetCurrentGroup());
+ TMPro_EventManager.ON_TEXTMESHPRO_UGUI_PROPERTY_CHANGED(true, targets[i] as TextMeshProUGUI);
+ s_EventId = undoEventId;
+ }
+ }
+ }
+ }
+}
\ No newline at end of file |
