public override void DrawGUI() { EventResponder returnedResponder; Expanded = TriggerGUILayout.DrawCustomActionInspectorBar(Expanded, Action, out returnedResponder); if (!returnedResponder) { Delete(); return; } if (returnedResponder != Action) { Action = returnedResponder; } if (Expanded) { EditorGUILayout.BeginHorizontal(GUILayout.ExpandWidth(true)); GUILayout.Space(25); EditorGUILayout.BeginVertical(); GUILayout.BeginVertical(GUI.skin.box); TriggerAttribute triggerAttribute = TriggerGUILayout.GetTriggerAttribute(Action.GetType()); if (triggerAttribute != null) { GUILayout.Label(triggerAttribute.Description, EditorStyles.wordWrappedLabel, GUILayout.ExpandWidth(false)); } EditorGUILayoutExt.BeginLabelStyle(11, FontStyle.Bold, null, null); GUILayout.Label("Input Parameters"); EditorGUILayoutExt.EndLabelStyle(); TriggerGUILayout.DrawSerializedObject(_serializedAction, Action.GetType(), GetScopeVariables()); EditorGUILayout.Separator(); GUILayout.EndVertical(); EditorGUILayout.EndVertical(); EditorGUILayout.EndHorizontal(); } }
public override void DrawGUI() { EventFilter returnedFilter; Expanded = TriggerGUILayout.DrawCustomFilterInspectorBar(Expanded, Filter, out returnedFilter); if (!returnedFilter) { foreach (Variable var in _outputVariables.Values) { ScriptableObject.DestroyImmediate(var); } Delete(); return; } Filter = returnedFilter; if (Expanded) { EditorGUILayout.BeginHorizontal(GUILayout.ExpandWidth(true)); GUILayout.Space(25); EditorGUILayout.BeginVertical(); GUILayout.BeginVertical(GUI.skin.box); TriggerAttribute triggerAttribute = TriggerGUILayout.GetTriggerAttribute(Filter.GetType()); if (triggerAttribute != null) { GUILayout.Label(triggerAttribute.Description, EditorStyles.wordWrappedLabel, GUILayout.ExpandWidth(false)); } EditorGUILayoutExt.BeginLabelStyle(11, FontStyle.Bold, null, null); GUILayout.Label("Input Parameters"); EditorGUILayoutExt.EndLabelStyle(); TriggerGUILayout.DrawSerializedObject(_serializedFilter, Filter.GetType(), Parent.GetScopeVariables()); EditorGUILayout.Separator(); EditorGUILayoutExt.BeginLabelStyle(11, FontStyle.Bold, null, null); GUILayout.Label("Output Parameters"); EditorGUILayoutExt.EndLabelStyle(); foreach (var v in Filter.GetOutputParameterDeclarations()) { GUILayout.Label(v.Name, GUILayout.ExpandWidth(false)); } EditorGUILayout.BeginHorizontal(); GUILayout.FlexibleSpace(); GUILayout.Box("", GUILayout.Width(300), GUILayout.Height(1)); EditorGUILayout.EndHorizontal(); TriggerGUILayout.DrawAddFilterSelector(Filter.gameObject, Context.Refresh); TriggerGUILayout.DrawAddActionSelector(Filter.gameObject, Context.Refresh); EditorGUILayout.Separator(); GUILayout.EndVertical(); EditorGUILayout.EndVertical(); EditorGUILayout.EndHorizontal(); } }
public override void DrawGUI() { EventSender returnedSender; Expanded = TriggerGUILayout.DrawCustomEventInspectorBar(Expanded, _gameObject, out returnedSender); if (Sender != returnedSender) { Sender = returnedSender; } if (Sender == null) { return; } if (Expanded) { EditorGUILayout.BeginHorizontal(GUILayout.ExpandWidth(true)); GUILayout.Space(25); EditorGUILayout.BeginVertical(); GUILayout.BeginVertical(GUI.skin.box); TriggerAttribute triggerAttribute = TriggerGUILayout.GetTriggerAttribute(Sender.GetType()); if (triggerAttribute != null) { GUILayout.Label(triggerAttribute.Description, EditorStyles.wordWrappedLabel, GUILayout.ExpandWidth(false)); } if (_serializedEvent.GetIterator().CountRemaining() > 1) { EditorGUILayoutExt.BeginLabelStyle(11, FontStyle.Bold, null, null); GUILayout.Label("Input Parameters"); EditorGUILayoutExt.EndLabelStyle(); } TriggerGUILayout.DrawSerializedObject(_serializedEvent, Sender.GetType(), Context.GlobalSymbolTable.Variables); if (Sender.GetOutputParameterDeclarations().Count > 0) { EditorGUILayout.Separator(); EditorGUILayoutExt.BeginLabelStyle(11, FontStyle.Bold, null, null); GUILayout.Label("Output Parameters"); EditorGUILayoutExt.EndLabelStyle(); foreach (var v in Sender.GetOutputParameterDeclarations()) { EditorGUILayout.BeginHorizontal(); GUILayout.Space(15); GUILayout.Label(v.Name + " (" + v.Type.Name + ")", GUILayout.ExpandWidth(false)); if (!string.IsNullOrEmpty(v.Description)) { GUILayout.Label(v.Description); } EditorGUILayout.EndHorizontal(); } } EditorGUILayout.BeginHorizontal(); GUILayout.FlexibleSpace(); GUILayout.Box("", GUILayout.Width(300), GUILayout.Height(1)); EditorGUILayout.EndHorizontal(); TriggerGUILayout.DrawAddFilterSelector(Sender.gameObject, Context.Refresh); TriggerGUILayout.DrawAddActionSelector(Sender.gameObject, Context.Refresh); EditorGUILayout.Separator(); GUILayout.EndVertical(); EditorGUILayout.Separator(); EditorGUILayout.EndVertical(); EditorGUILayout.EndHorizontal(); } }