summaryrefslogtreecommitdiff
path: root/Assets/uGUI-2017.1/Editor/UI/InputFieldEditor.cs
diff options
context:
space:
mode:
Diffstat (limited to 'Assets/uGUI-2017.1/Editor/UI/InputFieldEditor.cs')
-rw-r--r--Assets/uGUI-2017.1/Editor/UI/InputFieldEditor.cs139
1 files changed, 139 insertions, 0 deletions
diff --git a/Assets/uGUI-2017.1/Editor/UI/InputFieldEditor.cs b/Assets/uGUI-2017.1/Editor/UI/InputFieldEditor.cs
new file mode 100644
index 0000000..f100f07
--- /dev/null
+++ b/Assets/uGUI-2017.1/Editor/UI/InputFieldEditor.cs
@@ -0,0 +1,139 @@
+using UnityEditor.AnimatedValues;
+using UnityEngine;
+using UnityEngine.UI;
+
+namespace UnityEditor.UI
+{
+ [CanEditMultipleObjects]
+ [CustomEditor(typeof(InputField), true)]
+ public class InputFieldEditor : SelectableEditor
+ {
+ SerializedProperty m_TextComponent;
+ SerializedProperty m_Text;
+ SerializedProperty m_ContentType;
+ SerializedProperty m_LineType;
+ SerializedProperty m_InputType;
+ SerializedProperty m_CharacterValidation;
+ SerializedProperty m_KeyboardType;
+ SerializedProperty m_CharacterLimit;
+ SerializedProperty m_CaretBlinkRate;
+ SerializedProperty m_CaretWidth;
+ SerializedProperty m_CaretColor;
+ SerializedProperty m_CustomCaretColor;
+ SerializedProperty m_SelectionColor;
+ SerializedProperty m_HideMobileInput;
+ SerializedProperty m_Placeholder;
+ SerializedProperty m_OnValueChanged;
+ SerializedProperty m_OnEndEdit;
+ SerializedProperty m_ReadOnly;
+
+ AnimBool m_CustomColor;
+
+ protected override void OnEnable()
+ {
+ base.OnEnable();
+ m_TextComponent = serializedObject.FindProperty("m_TextComponent");
+ m_Text = serializedObject.FindProperty("m_Text");
+ m_ContentType = serializedObject.FindProperty("m_ContentType");
+ m_LineType = serializedObject.FindProperty("m_LineType");
+ m_InputType = serializedObject.FindProperty("m_InputType");
+ m_CharacterValidation = serializedObject.FindProperty("m_CharacterValidation");
+ m_KeyboardType = serializedObject.FindProperty("m_KeyboardType");
+ m_CharacterLimit = serializedObject.FindProperty("m_CharacterLimit");
+ m_CaretBlinkRate = serializedObject.FindProperty("m_CaretBlinkRate");
+ m_CaretWidth = serializedObject.FindProperty("m_CaretWidth");
+ m_CaretColor = serializedObject.FindProperty("m_CaretColor");
+ m_CustomCaretColor = serializedObject.FindProperty("m_CustomCaretColor");
+ m_SelectionColor = serializedObject.FindProperty("m_SelectionColor");
+ m_HideMobileInput = serializedObject.FindProperty("m_HideMobileInput");
+ m_Placeholder = serializedObject.FindProperty("m_Placeholder");
+ m_OnValueChanged = serializedObject.FindProperty("m_OnValueChanged");
+ m_OnEndEdit = serializedObject.FindProperty("m_OnEndEdit");
+ m_ReadOnly = serializedObject.FindProperty("m_ReadOnly");
+
+ m_CustomColor = new AnimBool(m_CustomCaretColor.boolValue);
+ m_CustomColor.valueChanged.AddListener(Repaint);
+ }
+
+ protected override void OnDisable()
+ {
+ base.OnDisable();
+ m_CustomColor.valueChanged.RemoveListener(Repaint);
+ }
+
+ public override void OnInspectorGUI()
+ {
+ serializedObject.Update();
+
+ base.OnInspectorGUI();
+
+ EditorGUILayout.Space();
+
+ EditorGUILayout.PropertyField(m_TextComponent);
+
+ if (m_TextComponent != null && m_TextComponent.objectReferenceValue != null)
+ {
+ Text text = m_TextComponent.objectReferenceValue as Text;
+ if (text.supportRichText)
+ {
+ EditorGUILayout.HelpBox("Using Rich Text with input is unsupported.", MessageType.Warning);
+ }
+ }
+
+ using (new EditorGUI.DisabledScope(m_TextComponent == null || m_TextComponent.objectReferenceValue == null))
+ {
+ EditorGUILayout.PropertyField(m_Text);
+ EditorGUILayout.PropertyField(m_CharacterLimit);
+
+ EditorGUILayout.Space();
+
+ EditorGUILayout.PropertyField(m_ContentType);
+ if (!m_ContentType.hasMultipleDifferentValues)
+ {
+ EditorGUI.indentLevel++;
+
+ if (m_ContentType.enumValueIndex == (int)InputField.ContentType.Standard ||
+ m_ContentType.enumValueIndex == (int)InputField.ContentType.Autocorrected ||
+ m_ContentType.enumValueIndex == (int)InputField.ContentType.Custom)
+ EditorGUILayout.PropertyField(m_LineType);
+
+ if (m_ContentType.enumValueIndex == (int)InputField.ContentType.Custom)
+ {
+ EditorGUILayout.PropertyField(m_InputType);
+ EditorGUILayout.PropertyField(m_KeyboardType);
+ EditorGUILayout.PropertyField(m_CharacterValidation);
+ }
+
+ EditorGUI.indentLevel--;
+ }
+
+ EditorGUILayout.Space();
+
+ EditorGUILayout.PropertyField(m_Placeholder);
+ EditorGUILayout.PropertyField(m_CaretBlinkRate);
+ EditorGUILayout.PropertyField(m_CaretWidth);
+
+ EditorGUILayout.PropertyField(m_CustomCaretColor);
+
+ m_CustomColor.target = m_CustomCaretColor.boolValue;
+
+ if (EditorGUILayout.BeginFadeGroup(m_CustomColor.faded))
+ {
+ EditorGUILayout.PropertyField(m_CaretColor);
+ }
+ EditorGUILayout.EndFadeGroup();
+
+ EditorGUILayout.PropertyField(m_SelectionColor);
+ EditorGUILayout.PropertyField(m_HideMobileInput);
+ EditorGUILayout.PropertyField(m_ReadOnly);
+
+ EditorGUILayout.Space();
+
+ EditorGUILayout.PropertyField(m_OnValueChanged);
+ EditorGUILayout.PropertyField(m_OnEndEdit);
+ }
+
+ serializedObject.ApplyModifiedProperties();
+ }
+ }
+}