public override void OnInspectorGUI() { ListBoxLineItem myTarget = null; try { myTarget = (ListBoxLineItem)target; } catch { } if (myTarget != null) { GUI.changed = false; EditorGUILayout.Space(); EditorStyles.label.fontStyle = FontStyle.Bold; EditorGUILayout.LabelField("GAME TURN DISPLAY"); EditorStyles.label.fontStyle = FontStyle.Normal; EditorGUILayout.ObjectField("Owning ListBox", myTarget.ListBoxControlObject, typeof(GameObject), true); EditorGUILayout.Separator(); EditorGUILayout.Space(); EditorStyles.label.fontStyle = FontStyle.Bold; EditorGUILayout.LabelField("LINE ITEM VALUES"); EditorStyles.label.fontStyle = FontStyle.Normal; EditorGUILayout.LabelField("Index", myTarget.Index.ToString()); EditorGUILayout.LabelField("Value", myTarget.Value); EditorGUILayout.LabelField("Text", myTarget.Text); EditorGUILayout.LabelField("Sub Text", myTarget.SubText); if (Application.isPlaying && myTarget.ListBoxControlObject != null) { EditorGUILayout.LabelField("Selected", (myTarget.ListBoxControlObject.GetComponent <ListBoxControl>().IsSelectedByIndex(myTarget.Index)) ? "YES" : "no"); } EditorGUILayout.Separator(); EditorGUILayout.Space(); EditorStyles.label.fontStyle = FontStyle.Bold; EditorGUILayout.LabelField("LINE ITEM PROPERTIES"); EditorStyles.label.fontStyle = FontStyle.Normal; EditorGUILayout.LabelField("Width", myTarget.Width.ToString()); EditorGUILayout.LabelField("Height", myTarget.Height.ToString()); EditorGUILayout.LabelField("X-Pos", myTarget.X.ToString()); EditorGUILayout.LabelField("Y-Pos", myTarget.Y.ToString()); EditorGUILayout.LabelField("Spacing", myTarget.Spacing.ToString()); EditorGUILayout.ColorField("Normal Color", myTarget.ItemNormalColor); EditorGUILayout.ColorField("Highlight Color", myTarget.ItemHighlightColor); EditorGUILayout.ColorField("Selected Color", myTarget.ItemSelectedColor); EditorGUILayout.ColorField("Disabled Color", myTarget.ItemDisabledColor); EditorGUILayout.Separator(); EditorGUILayout.Space(); if (GUI.changed) { EditorUtility.SetDirty(myTarget); if (!Application.isPlaying) { EditorSceneManager.MarkSceneDirty(EditorSceneManager.GetActiveScene()); } } } }
public virtual bool MoveItemDown(int intIndex) { if (intIndex < 0 || intIndex >= _items.Count - 1) { return(false); } // UNSELECT BOTH ITEMS bool blnOrig = IsSelectedByIndex(intIndex); bool blnTrgt = IsSelectedByIndex(intIndex + 1); UnSelectItem(intIndex); UnSelectItem(intIndex + 1); // MOVE THE ITEM ListBoxLineItem liOrig = _items[intIndex]; ListBoxLineItem liTrgt = _items[intIndex + 1]; liOrig.Index++; liTrgt.Index--; _items[intIndex] = liTrgt; _items[intIndex + 1] = liOrig; _items[intIndex].AutoSize(); _items[intIndex + 1].AutoSize(); // UPDATE SELECTION if (blnTrgt) { SelectByIndex(intIndex); } if (blnOrig) { SelectByIndex(intIndex + 1); } if (_intSelectedItem == intIndex) { _intSelectedItem++; } return(true); }