public static void DisplayDeserializedObject(fiDeserializedObject obj, fiGraphMetadata metadata) { EditorGUILayout.BeginHorizontal(); GUILayout.Space(10); GUILayout.BeginVertical(); for (int i = 0; i < obj.Members.Count; ++i) { fiDeserializedMember member = obj.Members[i]; PropertyEditorChain editor = PropertyEditor.Get( member.InspectedProperty.StorageType, member.InspectedProperty.MemberInfo); GUILayout.BeginHorizontal(); member.ShouldRestore.Enabled = GUILayout.Toggle(member.ShouldRestore.Enabled, GUIContent.none, GUILayout.Width(15)); GUI.enabled = false; string label = member.InspectedProperty.DisplayName; if (member.ShouldRestore.Enabled) { editor.FirstEditor.EditWithGUILayout(new GUIContent(label), member.Value, metadata.Enter(label)); } else { GUILayout.Label(new GUIContent(label + " (will not restore)")); } GUI.enabled = true; GUILayout.EndHorizontal(); if (i != obj.Members.Count - 1) { fiEditorGUILayout.Splitter(1); } } GUILayout.EndVertical(); EditorGUILayout.EndHorizontal(); }
public static void DisplayDeserializedObject(fiDeserializedObject obj, fiGraphMetadata metadata) { EditorGUILayout.BeginHorizontal(); GUILayout.Space(10); GUILayout.BeginVertical(); for (int i = 0; i < obj.Members.Count; ++i) { fiDeserializedMember member = obj.Members[i]; PropertyEditorChain editor = PropertyEditor.Get( member.InspectedProperty.StorageType, member.InspectedProperty.MemberInfo); GUILayout.BeginHorizontal(); member.ShouldRestore.Enabled = GUILayout.Toggle(member.ShouldRestore.Enabled, GUIContent.none, GUILayout.Width(15)); GUI.enabled = false; string label = member.InspectedProperty.DisplayName; if (member.ShouldRestore.Enabled) { editor.FirstEditor.EditWithGUILayout(new GUIContent(label), member.Value, metadata.Enter(label, null)); } else { GUILayout.Label(new GUIContent(label + " (will not restore)")); } GUI.enabled = true; GUILayout.EndHorizontal(); if (i != obj.Members.Count - 1) { fiEditorGUILayout.Splitter(1); } } GUILayout.EndVertical(); EditorGUILayout.EndHorizontal(); }