Пример #1
0
    public void EndNewLink(DataflowInput input)
    {
        newLinkInput          = input;
        uiLinkTmp.inputAnchor = input.transform.GetChild(1).GetComponent <RectTransform>();

        //Check if the same or if type matches
        if (newLinkOutput.transform.parent.parent == newLinkInput.transform.parent.parent || (newLinkOutput.type != newLinkInput.type && newLinkInput.type != Dataflow.IOType.Activator))
        {
            newLinkOutput = null;
            newLinkInput  = null;
            Destroy(uiLinkTmp.gameObject);
            return;
        }

        //Remove already existing link
        if (newLinkInput.link != null)
        {
            if (!newLinkInput.noDefaultValue)
            {
                newLinkInput.transform.GetChild(0).gameObject.SetActive(true);
            }
            dataflow.DeleteLink(newLinkInput);
            Destroy(newLinkInput.uiLink.gameObject);
        }

        dataflow.AddLink(newLinkOutput, newLinkInput);
        newLinkInput.uiLink = uiLinkTmp;
        newLinkInput.transform.GetChild(0).gameObject.SetActive(false);

        newLinkOutput = null;
        newLinkInput  = null;
    }