void OpenBreadcrump(HistoryElement history) { //Destroy all breadcrumps after the one clicked GMButton button = breadcrumps.FirstOrDefault(b => b.Value == history).Key; if (button != null) { int childIndex = button.transform.GetSiblingIndex(); for (int i = transform.childCount - 1; i >= childIndex; --i) { Transform breadcrump = transform.GetChild(i); GMButton _button = breadcrump.GetComponent <GMButton>(); if (_button != null) { breadcrumps.Remove(_button); Destroy(_button.gameObject); } } } this.Publish(new Service.DevUIService.Events.NewDataTable() { // since this is a single object and the DataBrowser is meant for lists, wrap the object in a list objectList = history.objectList, tableTitle = history.historyTitle, }); }
void SpawnBreadcrump(HistoryElement historyElement) { GMButton breadcrump = Instantiate(breadcrumpTemplate); breadcrump.transform.SetParent(transform, false); if (!breadcrump.gameObject.activeSelf) { breadcrump.gameObject.SetActive(true); } breadcrump.GetComponentInChildren <Text>().text = historyElement.historyTitle; breadcrump.onClick.AddListener( () => OpenBreadcrump(historyElement) ); breadcrumps.Add(breadcrump, historyElement); }
private void Awake() { button = gameObject.GetComponent <GMButton>(); button.onClick.AddListener(OnClick); }