public override void SetUpButton(GameObject buttonGameObject, int index) { // getting variables Button btn = buttonGameObject.GetComponent <Button>(); ButtonUIController buttonUI = buttonGameObject.GetComponent <ButtonUIController>(); // setting thumbnail // if this get a out of index exception then it means there are more save files then thumbnail buttonGameObject.GetComponent <ButtonUIController>().ContentImage.sprite = thumbnailSprits[index]; buttonGameObject.GetComponentInChildren <Text>().text = filenames[index]; btn.onClick.AddListener(delegate { ButtonAction(index); }); }
/// <summary> /// Generates the tab buttons for each of the windows /// </summary> private void GenerateTabs() { Vector2 parentDiameters = tabViewport.GetComponent <RectTransform>().sizeDelta; float gutter = parentDiameters.x / windows.Length; float center = parentDiameters.y / 2; List <ButtonUIController> tabButtonList = new List <ButtonUIController>(); for (int i = 0; i < windows.Length; i++) { GameObject tab = Instantiate(tabButton, tabViewport.transform); float spacing = (gutter * i); float offset = (parentDiameters.x / 2); tab.transform.localPosition = new Vector3(spacing - offset + (gutter / 2), 0, 0); tab.name = "Tab: " + i; ViewportContent windowController = windows[i].GetComponent <ViewportContent>(); ButtonUIController buttonController = tab.GetComponent <ButtonUIController>(); if (windowController != null && buttonController != null) { tabButtonList.Add(buttonController); tab.transform.localScale = tab.transform.localScale * windowController.tabButtonScale; buttonController.SetImage(windowController.tabButtonImage); buttonController.SetName(windowController.tabName); } else { tab.GetComponentInChildren <Text>().text = windows[i].name; } int index = i; Button button = tab.GetComponent <Button>(); button.onClick.AddListener(delegate { SwitchTabs(index); }); } tabButtons = tabButtonList.ToArray(); }
//creating buttons public override void SetUpButton(GameObject buttonGameObject, int index) { ObjectData currentObject = spawnableObjects[index]; button = buttonGameObject.GetComponent <Button>(); Text buttontext = buttonGameObject.GetComponentInChildren <Text>(); ButtonUIController buttonController = buttonGameObject.GetComponent <ButtonUIController>(); if (buttonController != null) { if (currentObject.objectImage != null) { buttonController.SetImage(currentObject.objectImage); } if (currentObject.displayName) { buttonController.SetName(currentObject.spawnObject.name); } } else { if (currentObject.objectImage != null) { button.image.sprite = currentObject.objectImage; } if (currentObject.displayName) { buttontext.text = currentObject.spawnObject.name; } else { buttontext.text = ""; } } }
/// <summary> /// Generates the required subtabs for each of the GridSpawnWindow's /// </summary> /// <param name="container">STUMP</param> /// <param name="alignment">The alignment in which the tab buttons will be placed</param> private void generateSubTabs(RectTransform container, SubTabAlignment alignment) { Vector2 viewPortDiameters = container.sizeDelta; float gutter = 0; float center = 0; //float offset = 0; if (alignment == SubTabAlignment.Vertical) { gutter = viewPortDiameters.y / pages.Length; center = viewPortDiameters.y / 2; //offset = (viewPortDiameters.y / 2); } else if (alignment == SubTabAlignment.Horizontal) { gutter = viewPortDiameters.x / pages.Length; center = viewPortDiameters.x / 2; //offset = (viewPortDiameters.x / 2); } List <ButtonUIController> tabButtonList = new List <ButtonUIController>(); for (int i = 0; i < pages.Length; i++) { GameObject subTab = Instantiate(subTabButton, subTabContainer.transform); float spacing = (gutter * i); if (alignment == SubTabAlignment.Vertical) { //STUMP throw new NotImplementedException(); //subTab.transform.localPosition = new Vector3(0, spacing - center + (gutter / 2), 0); } else if (alignment == SubTabAlignment.Horizontal) { subTab.transform.localPosition = new Vector3(spacing - center + (gutter / 2), 0, 0); } subTab.name = "Subtab: " + i; ButtonUIController buttonController = subTab.GetComponent <ButtonUIController>(); ViewportContent subWindowController = pages[i].GetComponent <ViewportContent>(); if (subWindowController != null && buttonController != null) { tabButtonList.Add(buttonController); subTab.transform.localScale = subTab.transform.localScale * subWindowController.tabButtonScale; buttonController.SetImage(subWindowController.tabButtonImage); buttonController.SetName(subWindowController.tabName); } else { subTab.GetComponentInChildren <Text>().text = pages[i].name; } int index = i; Button button = subTab.GetComponent <Button>(); button.onClick.AddListener(delegate { SwitchToPage(index); }); } tabButtons = tabButtonList.ToArray(); }