public override void OnInspectorGUI() { EditorGUI.BeginDisabledGroup(true); { EditorGUILayout.ObjectField( "Script:", MonoScript.FromScriptableObject((ScriptableObject)target), serializedObject.GetType(), false); } EditorGUI.EndDisabledGroup(); GUILayout.Space(10); serializedObject.Update(); EditorGUILayout.HelpBox(HelpMessage, MessageType.Info); EditorGUILayout.PropertyField(_gameEvent); GUILayout.Space(10); EditorGUILayout.PropertyField(_size); _reorderableList.DoLayoutList(); GUILayout.Space(10); SOArchitectureEditorHelpers.DrawDescription(_descriptionProperty, ref _isShowingDescription); serializedObject.ApplyModifiedProperties(); }
public override void OnInspectorGUI() { var buttonStyle = new GUIStyle(GUI.skin.button) { alignment = TextAnchor.MiddleCenter, fixedWidth = 200f, margin = new RectOffset(0, 0, 10, 20), }; serializedObject.Update(); EditorGUI.BeginDisabledGroup(true); { EditorGUILayout.ObjectField( "Script:", MonoScript.FromScriptableObject((ScriptableObject)target), serializedObject.GetType(), false); } EditorGUI.EndDisabledGroup(); GUILayout.Space(10); EditorGUI.BeginDisabledGroup(Application.isPlaying); { EditorGUILayout.HelpBox("Do not create game events with white spaces", MessageType.Warning); if (GUILayout.Button("Create interface", buttonStyle)) { SOArchitectureEditorHelpers.CreateInterface(_gameEvent.name); } } EditorGUI.EndDisabledGroup(); EditorGUI.BeginDisabledGroup(!Application.isPlaying); { GUILayout.Label("Press the Raise button to simulate the event in the game"); if (GUILayout.Button("Raise")) { _gameEvent.Raise(); } } EditorGUI.EndDisabledGroup(); GUILayout.Space(10); SOArchitectureEditorHelpers.DrawDescription(_descriptionProperty, ref _isShowingDescription); serializedObject.ApplyModifiedProperties(); }
public override void OnInspectorGUI() { serializedObject.Update(); EditorGUI.BeginDisabledGroup(true); { EditorGUILayout.ObjectField( "Script:", MonoScript.FromScriptableObject((ScriptableObject)target), serializedObject.GetType(), false); } EditorGUI.EndDisabledGroup(); EditorGUILayout.PropertyField(_readOnlyProperty); EditorGUILayout.PropertyField(!_readOnlyProperty.boolValue ? _gameEventProperty : _logProperty); EditorGUILayout.PropertyField(_valueProperty); GUILayout.Space(10); SOArchitectureEditorHelpers.DrawDescription(_descriptionProperty, ref _isShowingDescription); serializedObject.ApplyModifiedProperties(); }