コード例 #1
0
    public void Show(string did, string wid, DocumentsGetElementListResponse200Elements element)
    {
        StopPolling();

        Main.ShowProgress("Loading studio data...");

        foreach (Transform child in gameObject.transform)
        {
            Destroy(child.gameObject);
        }

        ResetScale();

        if (string.IsNullOrEmpty(did) || string.IsNullOrEmpty(wid) || element == null)
        {
            Main.HideProgress();
            return;
        }

        if (element.ElementType != "PARTSTUDIO")
        {
            LogError("Only part studios are supported");
            return;
        }


        StartCoroutine(Show(did, wid, element.Id));
    }
コード例 #2
0
    public void RefreshTabList(DocumentsGetElementListResponse200 List, DocumentsGetElementListResponse200Elements selectedElement)
    {
        foreach (Transform child in ContentContainer.transform)
        {
            Destroy(child.gameObject);
        }
        ;

        foreach (DocumentsGetElementListResponse200Elements _currentitem in List)
        {
            _currentgo = Instantiate(DocumentPrefab, ContentContainer.transform);
            _textcomp  = _currentgo.GetComponentInChildren <TextMeshProUGUI>();
            if (_currentitem.ElementType == "PARTSTUDIO")
            {
                _textcomp.text = "Part Studio : ";
            }
            else if (_currentitem.ElementType == "ASSEMBLY")
            {
                _textcomp.text = "Assembly : ";
            }
            _textcomp.text        += _currentitem.Name;//+ "\nLast modified by : " + _currentitem.ModifiedBy.Name + " on " + _currentitem.ModifiedAt + "\nOwned by : " + _currentitem.Owner.Name;
            _currentbutton         = _currentgo.GetComponentInChildren <Button>();
            _imagethumbnail        = _currentgo.GetComponentInChildren <Image>();
            _imagethumbnail.sprite = _currentitem.ThumbnailInfo.Image;
            _currentbutton.onClick.AddListener(() =>
            {
                Main.OpenTab(_currentitem);
            });
        }
    }
コード例 #3
0
    public void OpenTab(DocumentsGetElementListResponse200Elements element)
    {
        _currentElement = element;

        Workspace.Show(_currentDocument, _currentWorkspace, element);

        SelectFace(null);
    }
コード例 #4
0
    private IEnumerator AsyncOpenDocument(DocumentsGetDocumentsResponse200Items doc)
    {
        ShowProgress("Loading workspace...");

        _currentWorkspace = doc.DefaultWorkspace.Id;
        _currentDocument  = doc.Id;
        _currentElement   = null;

        var request = ApiClient.Instance.Documents.GetElementList("w", doc.Id, _currentWorkspace, "PARTSTUDIO", null, true);

        yield return(request.CallApi());

        if (!request.OK)
        {
            LogError("Unable to retrieve document tab list");
            yield break;
        }


        foreach (var reponse in request.Response)
        {
            var imgReq = new ImageRequest(reponse.ThumbnailInfo.Sizes[0].Href, Method.GET, new Dictionary <string, string>(), null, true);

            yield return(imgReq.CallApi());

            if (imgReq.Image == null)
            {
                LogError("Unable to get image : " + reponse.ThumbnailInfo.Href);
            }
            else
            {
                reponse.ThumbnailInfo.Image = imgReq.Image;
            }
        }

        var selectedTab = request.Response?[0];

        MenuDocument.RefreshTabList(request.Response, selectedTab);

        OpenTab(selectedTab);

        Workspace.gameObject.transform.position = MenuDocument.gameObject.transform.position + new Vector3(0, -0.5f, -0.5f);
    }