/*--------------------------------------------------------------------------------------------*/ private static T BuildRenderer <T>(Transform pParentTx, GameObject pPrefab, string pDisplayTypeName, Type pDefaultType) where T : class, IGameObjectProvider { if (pPrefab != null) { T prefabRend = TryBuildPrefabRenderer <T>(pPrefab); if (prefabRend != null) { prefabRend.gameObject.transform.SetParent(pParentTx, false); TreeUpdater treeUp = prefabRend.gameObject.GetComponent <TreeUpdater>(); if (treeUp != null) { TreeUpdater.SendTreeUpdatableChanged(treeUp, "BuildRenderer"); } return(prefabRend); } Debug.LogError(pDisplayTypeName + " prefab '" + pPrefab.name + "' must contain a '" + typeof(T) + "' component. ", pParentTx); } Debug.LogWarning("Could not find existing renderer, and no prefab provided.", pParentTx); return(default(T)); }
/*--------------------------------------------------------------------------------------------*/ public void ReleaseSelectionPrevention() { if (IsSelectionPrevented) { IsSelectionPrevented = false; TreeUpdater.SendTreeUpdatableChanged(this, "ReleaseSelectionPrevent"); } }
/*--------------------------------------------------------------------------------------------*/ public virtual void DeselectStickySelections() { if (!IsStickySelected) { return; } IsStickySelected = false; TreeUpdater.SendTreeUpdatableChanged(this, "IsStickySelected"); OnDeselected(this); }