ILinksModel
Um modelo que suporta relações de ligação diretas entre nós, com a informação de relação armazenada em estruturas de dados de ligação separadas.
Implementa: IDiagramModel
Propriedades
public IEnumerable LinksSource { get; set; }
value = iLinksModel.LinksSource
iLinksModel.LinksSource = value
A coleta de objetos de dados de link
public ValidCycle ValidCycle { get; set; }
value = iLinksModel.ValidCycle
iLinksModel.ValidCycle = value
Esta propriedade controla a estrutura global do gráfico que pode ser desenhada.
public ValidUnconnectedLinks ValidUnconnectedLinks { get; set; }
value = iLinksModel.ValidUnconnectedLinks
iLinksModel.ValidUnconnectedLinks = value
Esta propriedade controla se os dados de link devem sempre se conectar aos dados de nó em ambas as extremidades do link.
Métodos
public void AddLink(object linkdata)
iLinksModel.AddLink(linkdata)
Adicionar um dado de link para LinksSource.
- linkdata
public object AddLinkCopy(object linkdata)
result = iLinksModel.AddLinkCopy(linkdata)
Adicione uma cópia de um link de dados a este modelo.
- linkdata
Retorna: os dados de ligação recentemente copiados
public void DoLinkAdded(object linkdata)
iLinksModel.DoLinkAdded(linkdata)
Este método deve ser chamado quando um link de dados foi adicionado à coleção LinksSource.
- linkdata
public void DoLinkLabelChanged(object linkdata)
iLinksModel.DoLinkLabelChanged(linkdata)
Este método deve ser chamado quando qualquer nó "label" é adicionado, removido ou substituído.
- linkdata
public void DoLinkPortsChanged(object linkdata)
iLinksModel.DoLinkPortsChanged(linkdata)
Este método deve ser chamado quando o nó "de" ou o nó "para" (ou porto) tiver mudado.
- linkdata
- um dado de ligação
public void DoLinkRemoved(object linkdata)
iLinksModel.DoLinkRemoved(linkdata)
Este método deve ser chamado quando um link de dados foi removido da coleção LinksSource.
- linkdata
public string GetCategoryForLink(object linkdata)
result = iLinksModel.GetCategoryForLink(linkdata)
Para ajudar a distinguir entre diferentes tipos de links, cada link tem uma "categoria" que é apenas uma string.
- linkdata
Retorna: a categoria padrão é a string vazia
public IEnumerable<object> GetFromLinksForNode(object nodedata)
result = iLinksModel.GetFromLinksForNode(nodedata)
Encontre todas as ligações que venham para um dado nó.
- nodedata
Retorna: uma sequência de dados de ligação
public object GetFromNodeForLink(object linkdata)
result = iLinksModel.GetFromNodeForLink(linkdata)
Devolve o nó do qual vem uma ligação.
- linkdata
Retorna: um dado de nó
public object GetFromParameterForLink(object linkdata)
result = iLinksModel.GetFromParameterForLink(linkdata)
Devolve qualquer informação de parâmetros "de" porto.
- linkdata
Retorna: os dados dos parâmetros porta
public bool GetHasLabeledLinkForNode(object nodedata)
result = iLinksModel.GetHasLabeledLinkForNode(nodedata)
Este predicado é verdadeiro se os dados do nó fornecido estão associados a um dado link como uma etiqueta.
- nodedata
- um dado de nó que é um "label"
public bool GetHasLabelNodeForLink(object linkdata)
result = iLinksModel.GetHasLabelNodeForLink(linkdata)
Este predicado é verdadeiro se os dados de link indicados tiverem uma etiqueta de nó.
- linkdata
- um dado de ligação
public bool GetIsLinkLabelForNode(object nodedata)
result = iLinksModel.GetIsLinkLabelForNode(nodedata)
Este predicado é verdadeiro se os dados do nó fornecido agirem como um rótulo para um link.
- nodedata
- um dado de nó
public object GetLabeledLinkForNode(object nodedata)
result = iLinksModel.GetLabeledLinkForNode(nodedata)
Encontre os dados de link com os quais um nó de etiqueta está associado, se houver.
- nodedata
- um dado de nó que é um "label"
Retorna: um dado de ligação, ou nulo se não existir nenhum
public object GetLabelNodeForLink(object linkdata)
result = iLinksModel.GetLabelNodeForLink(linkdata)
Encontre os dados do nó que são a etiqueta para um link, se houver um.
- linkdata
- um dado de ligação
Retorna: um dado de nó, ou nulo se não houver nenhum
public IEnumerable<object> GetLinksBetweenNodes(object fromdata, object fromparam, object todata, object toparam)
result = iLinksModel.GetLinksBetweenNodes(fromdata, fromparam, todata, toparam)
Encontre todas as ligações que ligam dois nós/portos numa direcção.
- fromdata
- uma tecla de nó que identifica os dados do nó de onde vem o link
- fromparam
- um valor opcional que identifica em qual porta no nó "de" o link está conectado
- todata
- uma chave de nó identifica os dados do nó para os quais o link vai
- toparam
- um valor opcional que identifica em qual porta no nó "para" o link está conectado
Retorna: uma sequência de dados de ligação
public IEnumerable<object> GetLinksForNode(object nodedata, Predicate<object> predicate)
result = iLinksModel.GetLinksForNode(nodedata, predicate)
Encontre todos os links conectados a um nó que satisfaçam um determinado predicado.
- nodedata
- predicate
- o predicado toma um único argumento, o link data
Retorna: uma sequência de dados de ligação
public IEnumerable<object> GetLinksForNode(object nodedata)
result = iLinksModel.GetLinksForNode(nodedata)
Encontre todas as ligações ligadas a um nó em qualquer direcção.
- nodedata
Retorna: uma sequência de dados de ligação
public IEnumerable<object> GetToLinksForNode(object nodedata)
result = iLinksModel.GetToLinksForNode(nodedata)
Encontre todas as ligações que saem de um dado nó.
- nodedata
Retorna: uma sequência de dados de ligação
public object GetToNodeForLink(object linkdata)
result = iLinksModel.GetToNodeForLink(linkdata)
Devolve o nó para o qual vai uma ligação.
- linkdata
Retorna: um dado de nó
public object GetToParameterForLink(object linkdata)
result = iLinksModel.GetToParameterForLink(linkdata)
Devolve qualquer informação de parâmetro "para" porta.
- linkdata
Retorna: os dados dos parâmetros porta
public bool IsLinkData(object linkdata)
result = iLinksModel.IsLinkData(linkdata)
Este predicado é verdadeiro se o linkdata estiver na coleção LinksSource.
- linkdata
public bool IsLinkType(object linkdata)
result = iLinksModel.IsLinkType(linkdata)
Este predicado é verdadeiro se o objeto não for null e for de um tipo que o modelo aceita para dados de link.
- linkdata
public bool IsRelinkValid(object newfromdata, object newfromparam, object newtodata, object newtoparam, object oldlinkdata)
result = iLinksModel.IsRelinkValid(newfromdata, newfromparam, newtodata, newtoparam, oldlinkdata)
Este predicado é verdadeiro se mudar uma ligação existente entre dois nós/portes resultaria em um gráfico válido
- newfromdata
- uma tecla de nó que identifica os dados do nó de onde viria o novo link
- newfromparam
- um valor opcional que identifica em qual porta no nó "de" o link seria conectado
- newtodata
- uma tecla de nó identifica os dados do nó para os quais o novo link iria
- newtoparam
- um valor opcional que identifica em qual porta no nó "para" o link seria conectado
- oldlinkdata
- uma ligação existente que seria apagada
public void RemoveLink(object linkdata)
iLinksModel.RemoveLink(linkdata)
Remova os dados de uma ligação de LinksSource.
- linkdata
public void SetLinkFromPort(object linkdata, object nodedata, object portparam)
iLinksModel.SetLinkFromPort(linkdata, nodedata, portparam)
Defina as informações do nó e do porto "de" para os dados de uma ligação.
- linkdata
- os dados de ligação que estão a ser modificados
- nodedata
- um dado de nó
- portparam
public void SetLinkLabel(object linkdata, object labelnodedata)
iLinksModel.SetLinkLabel(linkdata, labelnodedata)
Altere os dados do nó "label" para um dado de link.
- linkdata
- os dados de ligação que estão a ser modificados
- labelnodedata
- os novos dados de nó que são um "label"; podem ser nulos para remover o rótulo
public void SetLinkToPort(object linkdata, object nodedata, object portparam)
iLinksModel.SetLinkToPort(linkdata, nodedata, portparam)
Defina as informações de nó e porta "para" para os dados de uma ligação.
- linkdata
- os dados de ligação que estão a ser modificados
- nodedata
- um dado de nó
- portparam