private void AddListener(UIVertexInfo vertex) { vertex.btnDelete.onClick.AddListener(OnDeleteClick); vertex.btnPick.onClick.AddListener(OnPickClick); vertex.fieldX.onValueChanged.AddListener(OnInputChanged); vertex.fieldY.onValueChanged.AddListener(OnInputChanged); vertex.fieldZ.onValueChanged.AddListener(OnInputChanged); }
private void FindVertexInfos() { vertexInfos = new UIVertexInfo[4]; for (int i = 0; i < 4; i++) { var t = vertexList.GetChild(i); var vi = new UIVertexInfo { parentObject = t as RectTransform, btnDelete = t.Find("Delete" + i).GetComponent <Button>(), btnPick = t.Find("PickPoint" + i).GetComponent <Button>(), fieldX = t.Find("InputField_X").GetComponent <InputField>(), fieldY = t.Find("InputField_Y").GetComponent <InputField>(), fieldZ = t.Find("InputField_Z").GetComponent <InputField>() }; vi.SetDefaultValues(); vertexInfos[i] = vi; } }
private void FinishPick() { pickingVertex = false; selectedHighlight.SetActive(false); vertexPicker.SetActive(false); UIVertexInfo currVertexInfo = vertexInfos[pickingVertexIndex]; currVertexInfo.SetCoordinates(vertexPicker.Result); currVertexInfo.SetCoordinates(currVertexInfo.oldCoords); for (int j = 0; j < vertexInfos.Length; j++) { if (j != deletedIndex) { vertexInfos[j].EnableUIElements(); } else { vertexInfos[j].DisableUIElements(); } } }
void Update() { if (pickingVertex) { tip.text = PickTip; UIVertexInfo currVertexInfo = vertexInfos[pickingVertexIndex]; if (vertexPicker.Result != Vector3.zero && vertexPicker.Result != Vector3.positiveInfinity) { currVertexInfo.SetCoordinates(vertexPicker.Result); } if (Input.GetMouseButtonDown(0) && !CVSPUIManager.Instance.MouseOverUI) { if (pickingVertexIndex != vertexInfos.Length - 1) { PickNext(); } else { FinishPick(); StartCoroutine(UnlockCoroutine()); } } else if (Input.GetKeyDown(KeyCode.Escape)) { FinishPick(); CVSPUIManager.Instance.LockGameUI(false); foreach (var item in vertexInfos) { item.SetCoordinates(item.coordsBforeEdit); } } } else { tip.text = IdleTip; } }