private void SetSelectedNode(SceneNode selectedNode) { if (selectedNode == null) { return; } if (selectedNode.SceneId == SceneManagerController.ANY_SCENE_ID) { serializedScene = serializedManager.GetAnySceneSerializedModel(); Repaint(); return; } SerializedProperty scenesProp = serializedManager.ScenesProp; // Get the serialized property of the scene node from the scene manager for (int i = 0; i < scenesProp.arraySize; i++) { SerializedSceneModel serializedModel = serializedManager.GetSerializedSceneModel(i); if (serializedModel.SceneIdProp.intValue == selectedNode.SceneId) { serializedScene = serializedModel; Repaint(); break; } } }
private void OnDrawElement(Rect rect, int index, bool isActive, bool isSelected) { SerializedSceneModel serializedScene = serializedManager.GetSerializedSceneModel(index); Rect toggleRect = new Rect(rect); toggleRect.width = 20f; Rect labelRect = new Rect(rect); labelRect.xMin = 40f; EditorGUI.BeginChangeCheck(); serializedScene.IncludeInIterProp.boolValue = EditorGUI.Toggle(toggleRect, includeInIterContent, serializedScene.IncludeInIterProp.boolValue); EditorGUI.LabelField(labelRect, serializedScene.SceneNameProp.stringValue); if(EditorGUI.EndChangeCheck()) serializedScene.SerializedObject.ApplyModifiedProperties(); }