FillDefaultInspector
Adds default inspector property fields under a container VisualElement.
Read time 2 minutesLast updated 10 days ago
Definition
- Type: Method
- Namespace: UnityEditor.UIElements
- Assembly: UnityEditor.CoreModule
FillDefaultInspector(VisualElement, SerializedObject, Editor)
Adds default inspector property fields under a container VisualElement.
public static void FillDefaultInspector(VisualElement container, SerializedObject serializedObject, Editor editor)
Parameters
The parent VisualElement
The SerializedObject to inspect
The editor currently used
Remarks
The following example shows how to fill a container with default inspector fields. For a complete example, refer to Create a default Inspector.
Examples
using UnityEditor;using UnityEditor.UIElements;using UnityEngine;using UnityEngine.UIElements;[CreateAssetMenu]public class MyEditorData : ScriptableObject{ public string myString; public float myFloat; public string myInt;}[CustomEditor(typeof(MyEditorData))]public class MyEditor : UnityEditor.Editor{ public override VisualElement CreateInspectorGUI() { var root = new VisualElement(); root.Add(new Label("My Custom Inspector")); InspectorElement.FillDefaultInspector(root, serializedObject, this); return root; }}
FillDefaultInspector(VisualElement, SerializedObject, Editor, string[])
Adds default inspector property fields under a container VisualElement.
public static void FillDefaultInspector(VisualElement container, SerializedObject serializedObject, Editor editor, params string[] propertiesToExclude)
Parameters
The parent VisualElement.
The SerializedObject to inspect.
The Editor currently used.
Remarks
The following example shows how to fill a container with default Inspector fields. For a complete example, refer to Create a default Inspector.
using UnityEditor;using UnityEditor.UIElements;using UnityEngine;using UnityEngine.UIElements;[CreateAssetMenu]public class MyEditorData : ScriptableObject{ public string myString; public float myFloat; public string myInt;}[CustomEditor(typeof(MyEditorData))]public class MyEditor : UnityEditor.Editor{ public override VisualElement CreateInspectorGUI() { var root = new VisualElement(); root.Add(new Label("My Custom Inspector")); InspectorElement.FillDefaultInspector(root, serializedObject, this); return root; }}
The following example shows how to fill a container with default Inspector fields, excluding a specific property that is displayed as a Slider.
using UnityEditor;using UnityEditor.UIElements;using UnityEngine;using UnityEngine.UIElements;[CreateAssetMenu]public class MyEditorDataExclude : ScriptableObject{ public string myString; public float myFloat; public string myInt;}[CustomEditor(typeof(MyEditorDataExclude))]public class MyEditorExclude : UnityEditor.Editor{ public override VisualElement CreateInspectorGUI() { var root = new VisualElement(); root.Add(new Label("My Custom Inspector")); var myFloatSlider = new Slider { bindingPath = "myFloat", label = "My Float" }; root.Add(myFloatSlider); // Draw all properties except "myFloat" InspectorElement.FillDefaultInspector(root, serializedObject, this, "myFloat"); return root; }}