Initial Commit
This commit is contained in:
parent
53eb92e9af
commit
270ab7d11f
15341 changed files with 700234 additions and 0 deletions
|
@ -0,0 +1,76 @@
|
|||
using UnityEditor.SceneManagement;
|
||||
using UnityEngine;
|
||||
using UnityEngine.UI;
|
||||
|
||||
namespace UnityEditor.UI
|
||||
{
|
||||
[CustomEditor(typeof(Toggle), true)]
|
||||
[CanEditMultipleObjects]
|
||||
/// <summary>
|
||||
/// Custom Editor for the Toggle Component.
|
||||
/// Extend this class to write a custom editor for a component derived from Toggle.
|
||||
/// </summary>
|
||||
public class ToggleEditor : SelectableEditor
|
||||
{
|
||||
SerializedProperty m_OnValueChangedProperty;
|
||||
SerializedProperty m_TransitionProperty;
|
||||
SerializedProperty m_GraphicProperty;
|
||||
SerializedProperty m_GroupProperty;
|
||||
SerializedProperty m_IsOnProperty;
|
||||
|
||||
protected override void OnEnable()
|
||||
{
|
||||
base.OnEnable();
|
||||
|
||||
m_TransitionProperty = serializedObject.FindProperty("toggleTransition");
|
||||
m_GraphicProperty = serializedObject.FindProperty("graphic");
|
||||
m_GroupProperty = serializedObject.FindProperty("m_Group");
|
||||
m_IsOnProperty = serializedObject.FindProperty("m_IsOn");
|
||||
m_OnValueChangedProperty = serializedObject.FindProperty("onValueChanged");
|
||||
}
|
||||
|
||||
public override void OnInspectorGUI()
|
||||
{
|
||||
base.OnInspectorGUI();
|
||||
EditorGUILayout.Space();
|
||||
|
||||
serializedObject.Update();
|
||||
Toggle toggle = serializedObject.targetObject as Toggle;
|
||||
EditorGUI.BeginChangeCheck();
|
||||
EditorGUILayout.PropertyField(m_IsOnProperty);
|
||||
if (EditorGUI.EndChangeCheck())
|
||||
{
|
||||
EditorSceneManager.MarkSceneDirty(toggle.gameObject.scene);
|
||||
ToggleGroup group = m_GroupProperty.objectReferenceValue as ToggleGroup;
|
||||
|
||||
toggle.isOn = m_IsOnProperty.boolValue;
|
||||
|
||||
if (group != null && group.isActiveAndEnabled && toggle.IsActive())
|
||||
{
|
||||
if (toggle.isOn || (!group.AnyTogglesOn() && !group.allowSwitchOff))
|
||||
{
|
||||
toggle.isOn = true;
|
||||
group.NotifyToggleOn(toggle);
|
||||
}
|
||||
}
|
||||
}
|
||||
EditorGUILayout.PropertyField(m_TransitionProperty);
|
||||
EditorGUILayout.PropertyField(m_GraphicProperty);
|
||||
EditorGUI.BeginChangeCheck();
|
||||
EditorGUILayout.PropertyField(m_GroupProperty);
|
||||
if (EditorGUI.EndChangeCheck())
|
||||
{
|
||||
EditorSceneManager.MarkSceneDirty(toggle.gameObject.scene);
|
||||
ToggleGroup group = m_GroupProperty.objectReferenceValue as ToggleGroup;
|
||||
toggle.group = group;
|
||||
}
|
||||
|
||||
EditorGUILayout.Space();
|
||||
|
||||
// Draw the event notification options
|
||||
EditorGUILayout.PropertyField(m_OnValueChangedProperty);
|
||||
|
||||
serializedObject.ApplyModifiedProperties();
|
||||
}
|
||||
}
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue