public void UpdateMenu()
    {
        if (currentFocusPoint >= 0)
        {
            return;
        }
        if (CurrentObject.ActionObjectMetadata.ObjectModel?.Type == IO.Swagger.Model.ObjectModel.TypeEnum.Mesh)
        {
            UpdatePositionBlockVO.SetActive(false);
            UpdatePositionBlockMesh.SetActive(true);
            RobotsListsBlock.SetActive(true);
        }
        else if (CurrentObject.ActionObjectMetadata.ObjectModel != null)
        {
            UpdatePositionBlockVO.SetActive(true);
            UpdatePositionBlockMesh.SetActive(false);
            RobotsListsBlock.SetActive(true);
        }
        else
        {
            UpdatePositionBlockVO.SetActive(false);
            UpdatePositionBlockMesh.SetActive(false);
            RobotsListsBlock.SetActive(false);
        }

        RobotsList.gameObject.GetComponent <DropdownRobots>().Init(OnRobotChanged, true);

        if (RobotsList.Dropdown.dropdownItems.Count > 0)
        {
            OnRobotChanged(RobotsList.Dropdown.selectedText.text);
        }
        else
        {
            UpdatePositionBlockVO.SetActive(false);
            UpdatePositionBlockMesh.SetActive(false);
            RobotsListsBlock.SetActive(false);
        }
        FocusObjectDoneButton.interactable = false;
        NextButton.interactable            = false;
        PreviousButton.interactable        = false;
        objectName.text = CurrentObject.Data.Name;

        VisibilitySlider.value = CurrentObject.GetVisibility() * 100;
    }
Example #2
0
    public async override void UpdateMenu()
    {
        base.UpdateMenu();

        objectParameters  = Parameter.InitParameters(CurrentObject.ObjectParameters.Values.ToList(), Parameters, OnChangeParameterHandler, DynamicContentLayout, CanvasRoot, true);
        parametersChanged = false;
        UpdateSaveBtn();

        if (!SceneManager.Instance.SceneStarted)
        {
            UpdatePositionBlockVO.SetActive(false);
            UpdatePositionBlockMesh.SetActive(false);
            RobotsListsBlock.SetActive(false);
            return;
        }
        if (currentFocusPoint >= 0)
        {
            return;
        }
        if (SceneManager.Instance.RobotInScene())
        {
            await RobotsList.gameObject.GetComponent <DropdownRobots>().Init(OnRobotChanged, true);

            string robotId = null;
            try {
                robotId = SceneManager.Instance.RobotNameToId(RobotsList.GetValue().ToString());
            } catch (ItemNotFoundException ex) {
                Debug.LogError(ex);
                robotId = null;
            }
            if (string.IsNullOrEmpty(robotId))
            {
                Notifications.Instance.ShowNotification("Robot not found", "Robot with name " + RobotsList.GetValue().ToString() + "does not exists");
            }
            else
            {
                OnRobotChanged(robotId);
            }

            if (CurrentObject.ActionObjectMetadata.ObjectModel?.Type == IO.Swagger.Model.ObjectModel.TypeEnum.Mesh)
            {
                UpdatePositionBlockVO.SetActive(false);
                UpdatePositionBlockMesh.SetActive(true);
                RobotsListsBlock.SetActive(true);
            }
            else if (CurrentObject.ActionObjectMetadata.ObjectModel != null)
            {
                UpdatePositionBlockVO.SetActive(true);
                UpdatePositionBlockMesh.SetActive(false);
                RobotsListsBlock.SetActive(true);
                ShowModelSwitch.Interactable = SceneManager.Instance.RobotsEEVisible;
                if (ShowModelSwitch.Interactable && ShowModelSwitch.Switch.isOn)
                {
                    ShowModelOnEE();
                }
            }
            else
            {
                UpdatePositionBlockVO.SetActive(false);
                UpdatePositionBlockMesh.SetActive(false);
                RobotsListsBlock.SetActive(false);
            }
        }
        else
        {
            UpdatePositionBlockVO.SetActive(false);
            UpdatePositionBlockMesh.SetActive(false);
            RobotsListsBlock.SetActive(false);
        }


        FocusObjectDoneButton.interactable = false;
        NextButton.interactable            = false;
        PreviousButton.interactable        = false;
    }
    public void UpdateMenu()
    {
        if (currentFocusPoint >= 0)
        {
            return;
        }

        if (SceneManager.Instance.RobotInScene())
        {
            RobotsList.gameObject.GetComponent <DropdownRobots>().Init(OnRobotChanged, true);
            string robotId = null;
            try {
                robotId = SceneManager.Instance.RobotNameToId(RobotsList.GetValue().ToString());
            } catch (ItemNotFoundException ex) {
                Debug.LogError(ex);
                robotId = null;
            }
            if (string.IsNullOrEmpty(robotId))
            {
                Notifications.Instance.ShowNotification("Robot not found", "Robot with name " + RobotsList.GetValue().ToString() + "does not exists");
            }
            else
            {
                OnRobotChanged(robotId);
            }

            if (CurrentObject.ActionObjectMetadata.ObjectModel?.Type == IO.Swagger.Model.ObjectModel.TypeEnum.Mesh)
            {
                UpdatePositionBlockVO.SetActive(false);
                UpdatePositionBlockMesh.SetActive(true);
                RobotsListsBlock.SetActive(true);
            }
            else if (CurrentObject.ActionObjectMetadata.ObjectModel != null)
            {
                UpdatePositionBlockVO.SetActive(true);
                UpdatePositionBlockMesh.SetActive(false);
                RobotsListsBlock.SetActive(true);
                ShowModelSwitch.Interactable = SceneManager.Instance.RobotsEEVisible;
                if (ShowModelSwitch.Interactable && ShowModelSwitch.Switch.isOn)
                {
                    ShowModelOnEE();
                }
            }
            else
            {
                UpdatePositionBlockVO.SetActive(false);
                UpdatePositionBlockMesh.SetActive(false);
                RobotsListsBlock.SetActive(false);
            }
        }
        else
        {
            UpdatePositionBlockVO.SetActive(false);
            UpdatePositionBlockMesh.SetActive(false);
            RobotsListsBlock.SetActive(false);
        }


        FocusObjectDoneButton.interactable = false;
        NextButton.interactable            = false;
        PreviousButton.interactable        = false;
        objectName.text = CurrentObject.Data.Name;

        VisibilitySlider.value = CurrentObject.GetVisibility() * 100;
    }