public void SetMainModalVisiblity(bool?visible)
        {
            if (visible == null)
            {
                return;
            }
            bool value = (bool)visible;

            UserInterfaceManager.Instance.MainModal.Visible = value;

            if (!value)
            {
                XRInteractableTerrain terrain = TerrainModelManager.Instance.GetComponentFromCurrentModel <XRInteractableTerrain>();
                terrain.SwitchToActivity(XRInteractableTerrainActivity.Default);
            }
        }
Exemplo n.º 2
0
        private void Start()
        {
            _terrainModel = GetComponent <TerrainModel>();

            XRInteractableTerrain interactableTerrain = GetComponent <XRInteractableTerrain>();

            if (interactableTerrain is XRInteractableGlobeTerrain)
            {
                _overlayController = GlobeTerrainOverlayController.Instance;
            }
            else
            {
                _overlayController = LocalTerrainOverlayController.Instance;
            }

            // Disable script after initializing.
            enabled = false;
        }
        private void TriggerClickedHandler(object sender, ClickedEventArgs e)
        {
            XRInteractableTerrain interactableTerrain = _terrainModelManager.GetComponentFromCurrentModel <XRInteractableTerrain>();

            switch (CurrentActivity)
            {
            case ControllerModalActivity.Default:
                SecondaryXRController controller = (SecondaryXRController)_controller;
                controller.Flashlight?.Toggle();
                break;

            case ControllerModalActivity.ToolsDistance:
            case ControllerModalActivity.ToolsHeightProfile:
                interactableTerrain.CompleteSelection();
                break;

            default:
                Input.RegisterKeyPress(KeyCode.T);
                break;
            }
        }
        private void MenuButtonPressedHandler(object sender, ClickedEventArgs e)
        {
            MainModal             mainModal           = UserInterfaceManager.Instance.MainModal;
            XRInteractableTerrain interactableTerrain = _terrainModelManager.GetComponentFromCurrentModel <XRInteractableTerrain>();

            switch (CurrentActivity)
            {
            case ControllerModalActivity.Default:
                // TODO Turn on secondary controller menu instead.
                SecondaryXRController controller = (SecondaryXRController)_controller;
                controller.Flashlight?.CycleNextColor();
                break;

            case ControllerModalActivity.BBoxSelection:
            case ControllerModalActivity.ToolsDistance:
            case ControllerModalActivity.ToolsHeightProfile:
                if (interactableTerrain.CancelSelection())
                {
                    mainModal.Visible = true;
                }
                break;

            case ControllerModalActivity.BookmarkResults:
            case ControllerModalActivity.NomenclatureResults:
            case ControllerModalActivity.ProductResults:
                Input.RegisterKeyPress(KeyCode.M);
                break;

            case ControllerModalActivity.LayerManager:
                mainModal.Visible = true;
                StartActivity(ControllerModalActivity.Default);
                break;

            case ControllerModalActivity.ToolsSunAngle:
                break;
            }
        }