public ConnectionDragStartedEventArgs(RoutedEvent routedEvent,
                                       GraphControl source,
                                       GraphNodeItemView?elementItem,
                                       ConnectorItem connectorItem,
                                       PointerEventArgs baseArgs) : base(routedEvent, source, elementItem, connectorItem, baseArgs)
 {
     SourceGraph = source;
 }
Exemplo n.º 2
0
 public ConnectionDraggingEventArgs(RoutedEvent routedEvent,
                                    IInteractive?source,
                                    GraphNodeItemView?elementItem,
                                    object connection,
                                    ConnectorItem connectorItem,
                                    PointerEventArgs baseArgs) : base(routedEvent, source, elementItem, connectorItem, baseArgs)
 {
     Connection = connection;
 }
Exemplo n.º 3
0
    public override void OnUsePrimaryDown()
    {
        if (!manager.HoverInteractable)
        {
            return;
        }

        if (manager.HoverInteractable is Socket)
        {
            Socket s = manager.HoverInteractable as Socket;

            Debug.Log("SOCKET!");

            if (combined)
            {
                connector.otherConnector.AttachToSocket(s);

                StartCoroutine(WaitAndEnableCollisions(otherItem));
                DeCombine();
                return;
            }
            else
            {
                connector.AttachToSocket(s);
                StartCoroutine(WaitAndEnableCollisions(this));
                DeCombine();
                manager.GetComponent <ItemManager>().DeRefItem();
                return;
            }
        }

        // When picking up other connector
        if (!combined)
        {
            if (manager.HoverInteractable is ConnectorItem)
            {
                ConnectorItem otherConnectorItem = manager.HoverInteractable as ConnectorItem;

                if (otherConnectorItem.connector == connector.otherConnector)
                {
                    // Combine!
                    otherConnectorItem.SetPhysics(false);
                    otherConnectorItem.SetCollisions(false);

                    otherConnectorItem.connector.Disconnect();

                    otherConnectorItem.transform.parent        = transform;
                    otherConnectorItem.transform.localPosition = -Vector3.up * 0.1f;
                    otherConnectorItem.transform.localRotation = Quaternion.identity;

                    Combine();
                }
            }
        }
    }
Exemplo n.º 4
0
 protected ConnectionDragEventArgs(RoutedEvent routedEvent,
                                   IInteractive?source,
                                   GraphNodeItemView?elementItem,
                                   ConnectorItem sourceConnectorItem,
                                   PointerEventArgs baseArgs) : base(routedEvent, source,
                                                                     baseArgs.Pointer,
                                                                     (baseArgs.Source as IVisual)?.VisualRoot,
                                                                     baseArgs.GetPosition(null),
                                                                     baseArgs.Timestamp,
                                                                     baseArgs.GetCurrentPoint(null).Properties,
                                                                     baseArgs.KeyModifiers)
 {
     ElementItem     = elementItem;
     SourceConnector = sourceConnectorItem;
 }
Exemplo n.º 5
0
 public ConnectorItemDragStartedEventArgs(RoutedEvent routedEvent,
                                          ConnectorItem source, PointerEventArgs baseArgs) : base(routedEvent, source, baseArgs)
 {
     SourceConnector = source;
 }
Exemplo n.º 6
0
 public void GetConnectorItem(out IConnectorItem item)
 {
     item        = new ConnectorItem();
     item.NodeId = _itemCounter++;
 }