public void Activate(MLControllerRadialMenu menu) { previousMenu = menu; if (previousMenu != null) { previousMenu.usingSubMenu(true); } active = true; thumbDown = false; if (_controllerConnectionHandler.ConnectedController != null) { initialButtonY = _controllerConnectionHandler.ConnectedController.Touch1PosAndForce.y; } menuObject = Instantiate(MenuPrefab); menuObject.GetComponent <Canvas>().worldCamera = Camera.main; buttons = menuObject.GetComponentsInChildren <Button>(); if (menuObject.transform.name.ToLower().Contains("metric")) { FindObjectOfType <UpdateMetric>().initializeButtons(menuObject); } else if (menuObject.transform.name.ToLower().Contains("timewindow")) { FindObjectOfType <UpdateTimeWindow>().initializeButtons(menuObject); } }
private void HandleOnTriggerDown(byte controllerId, float value) { try { if (!active || hoveredButton == null) { return; } //string metric = hoveredButton.transform.name; if (hoveredButton != null && hoveredButton.transform.name.ToLower() != "back") { hoveredButton.onClick.Invoke(); if (menuObject.transform.name.ToLower().Contains("metric")) { HostMetrics[] metrics = FindObjectsOfType <HostMetrics>(); foreach (HostMetrics metric in metrics) { metric.UpdateMetric(hoveredButton.transform.name); } } } if (previousMenu != null) { previousMenu.usingSubMenu(false); } Destroy(menuObject); if (hoveredButton.transform.name.ToLower() == "back") { previousMenu.SetActiveMenu(true); } hoveredButton = null; active = false; } catch (Exception e) { GameObject.Find("DebugText").GetComponent <Text>().text = "1D Menu: " + e.Message; } }
public void Activate(MLControllerRadialMenu menu) { previousMenu = menu; previousMenu.usingSubMenu(true); active = true; thumbDown = false; playbackSlider = Instantiate(Resources.Load("Prefabs/PlaybackSpeed") as GameObject); playbackSlider.GetComponent <Canvas>().worldCamera = Camera.main; playbackSlider.transform.Find("Slider").localPosition = new Vector3(sliderPosition, 0, 0); playbackSlider.transform.Find("Slider/SliderLabel").GetComponent <Text>().text = string.Format("{0:N2}", playbackSpeed); initiatedTime = Time.time; }
private void HandleOnTriggerDown(byte controllerId, float value) { if (!active || Mathf.Abs(Time.time - initiatedTime) < 0.2f) { return; } HostMetrics[] hosts = FindObjectsOfType <HostMetrics>(); foreach (HostMetrics host in hosts) { host.UpdatePlaybackSpeed(playbackSpeed); } WIMFocusObject[] wimFocusObjects = Resources.FindObjectsOfTypeAll(typeof(WIMFocusObject)) as WIMFocusObject[]; foreach (WIMFocusObject wimFocus in wimFocusObjects) { wimFocus.UpdatePlaybackSpeed(playbackSpeed); } previousMenu.usingSubMenu(false); Destroy(playbackSlider); active = false; }