public void SelectConnection(ConnectionUI connection) { if (SelectedConnection != null) { SelectedConnection.IsConnectionSelected = false; } SelectedConnection = connection; if (SelectedConnection != null) { SelectedConnection.IsConnectionSelected = true; if (SelectedConnection is TransitionConnectionUI transitionConnection) { TransitionInspector.Show(transitionConnection); } else { TransitionInspector.Hide(); } } else { TransitionInspector.Hide(); } }
public void OnExitConnect(ConnectionUI connection) { if (ExitConnections.Count > 1) { ExitConnections[0].Delete(); } }
public void RemoveConnection(ConnectionUI connection) { GraphView.RemoveElement(connection); if (connection is TransitionConnectionUI transitionConnection) { TransitionConnections.Remove(transitionConnection); } SelectConnection(null); }
public ConnectionUI CreateConnection(IConnectable source, IConnectable destination = null, bool isTemporary = true) { ConnectionUI connection = null; if (isTemporary) { connection = new ConnectionUI(false) { Source = source }; GraphView.AddElement(connection); connection.SendToBack(); } else { bool isNew; (connection, isNew) = source.GetConnection(destination, true); connection.Source = source; connection.Destination = destination; if (isNew) { GraphView.AddElement(connection); connection.SendToBack(); connection.Source = source; connection.Destination = destination; source.ExitConnections.Add(connection); destination.EntryConnections.Add(connection); source.OnExitConnect(connection); destination.OnEntryConnect(connection); connection.schedule.Execute(() => connection.Refresh()); if (connection is TransitionConnectionUI transitionConnection) { TransitionConnections.Add(transitionConnection); } } } return(connection); }
public void OnExitConnectionDeleted(ConnectionUI connection) { }
public void OnEntryConnectionDeleted(ConnectionUI connection) { }
public void OnEntryConnect(ConnectionUI connection) { }