public void OnPointerDown(PointerEventData EventData) { // TODO: let the CTUITreeViewItem handle what happens on click? // Then this just becomes a dumb input component. if (mItem.mChildren != null) { mItem.mExpanded = !mItem.mExpanded; mItem.RebuildEntireTree(); } mItem.OnClicked(this); }
private void _OnClickCreateNewAssetWindow(GameObject Window, EAssetType Type, string AssetName) { string errorStr; if (CGame.AssetManager.IsAssetNameValid(AssetName, out errorStr)) { GameObject.Destroy(Window); CTUITreeViewItem treeItem = null; CAsset asset = null; if (Type == EAssetType.AT_MODEL) { treeItem = _tviModels; asset = new CModelAsset(); } else if (Type == EAssetType.AT_BRUSH) { treeItem = _tviBrushes; asset = new CBrushAsset(); } else if (Type == EAssetType.AT_LEVEL) { treeItem = _tviLevels; asset = new CLevelAsset(); } else if (Type == EAssetType.AT_ITEM) { treeItem = _tviItems; asset = new CItemAsset(); } asset.mName = AssetName; asset.mFileName = CGame.DataDirectory + asset.mName + "." + CAssetManager.ASSET_FILE_EXTENSION; Debug.Log("New Asset Path: " + asset.mFileName); asset.Save(); CAssetDeclaration decl = CGame.AssetManager.CreateAssetDeclaration(asset); treeItem.AddItem(decl.mName, () => OnClickAsset(decl.mName), () => mToolkit.EditAsset(decl.mName)); treeItem.RebuildEntireTree(); mToolkit.EditAsset(AssetName); } else { Debug.Log("Asset creation failed: " + errorStr); } }
private void _RebuildComponentTree() { _treeViewPrimItem.RemoveChildren(); CTUITreeViewItem selectedItem = null; for (int i = 0; i < _vectorModel.mPlanes.Count; ++i) { int guid = i; CTUITreeViewItem item = _treeViewPrimItem.AddItem(i + ": " + _vectorModel.mPlanes[i].mName, () => _OnClickPrimitive(guid, false)); if (_selectedPrimID == i) { selectedItem = item; } } _treeViewPrimItem.RebuildEntireTree(); if (selectedItem != null) { selectedItem.Select(); } }