//create a path between two solids public IPath CreatePath(IPathHost host, ISolid start, ISolid end) { var p = new LinkPath(host, start, end); if (p.Start.IsConnectable) { p.Start.Connectable.ConnectTo(p.End.Connectable, host); } if (p.End.IsConnectable) { p.End.Connectable.ConnectTo(p.Start.Connectable, host); } LinkRoot.Add(p); return(p); }
public async Task <bool> RegisterAccount() { var request = new RestRequest(Method.POST); var body = new { devicetype = "taskbarv3" }; request.AddJsonBody(body); var response = await client.ExecuteAsync <RootObject>(request); LinkRoot linkRoot = JsonConvert.DeserializeObject <List <LinkRoot> >(response.Content).First(); if (linkRoot?.Error == null) { user = linkRoot.Success.Username; SaveUserToConfig(linkRoot.Success.Username); return(true); } return(false); }
//remove a path public void RemovePath(IPath path) { LinkRoot.Remove(path); if (path.Start.IsConnectable) { path.Start.Connectable.DisconnectFrom(path.End.Connectable, path.Host); } if (path.End.IsConnectable) { path.End.Connectable.DisconnectFrom(path.Start.Connectable, path.Host); } var disposablePath = path as IDisposable; if (disposablePath != null) { disposablePath.Dispose(); } }
public void Clear() { Root.Clear(); LinkRoot.Clear(); }