/// <summary> /// Renders the currently selected step /// </summary> /// <param name="rStep"></param> private bool DrawEffectDetailItem(ActorCoreEffect rItem) { bool lIsDirty = false; if (rItem == null) { EditorGUILayout.LabelField("NULL"); return(false); } if (rItem.Name.Length > 0) { EditorHelper.DrawSmallTitle(rItem.Name.Length > 0 ? rItem.Name : "Actor Core Effect"); } else { string lName = BaseNameAttribute.GetName(rItem.GetType()); EditorHelper.DrawSmallTitle(lName.Length > 0 ? lName : "Actor Core Effect"); } // Render out the Effect specific inspectors bool lIsEffectDirty = rItem.OnInspectorGUI(mTarget); if (lIsEffectDirty) { lIsDirty = true; } if (lIsDirty) { mTarget._EffectDefinitions[mEffectList.index] = rItem.Serialize(); } return(lIsDirty); }
/// <summary> /// Allows us to draw each item in the list /// </summary> /// <param name="rRect"></param> /// <param name="rIndex"></param> /// <param name="rIsActive"></param> /// <param name="rIsFocused"></param> private void DrawEffectListItem(Rect rRect, int rIndex, bool rIsActive, bool rIsFocused) { if (rIndex < mTarget._Effects.Count) { ActorCoreEffect lItem = mTarget._Effects[rIndex]; if (lItem == null) { EditorGUI.LabelField(rRect, "NULL"); return; } rRect.y += 2; string lName = lItem.Name; if (lName.Length == 0) { lName = BaseNameAttribute.GetName(lItem.GetType()); } Rect lNameRect = new Rect(rRect.x, rRect.y, rRect.width, EditorGUIUtility.singleLineHeight); EditorGUI.LabelField(lNameRect, lName); } }