LinkingBaseTool
Esta classe abstrata é a classe base para LinkingTool e RelinkingTool.
Herda de: DiagramTool
Construtores
protected LinkingBaseTool()
linkingBaseTool = LinkingBaseTool()
Isto faz a inicialização comum para as ferramentas de ligação.
Propriedades
protected bool Forwards { get; set; }
value = linkingBaseTool.Forwards
linkingBaseTool.Forwards = value
Obtém ou define se a operação de ligação está na direcção da frente.
protected Node OriginalFromNode { get; set; }
value = linkingBaseTool.OriginalFromNode
linkingBaseTool.OriginalFromNode = value
Obtém ou define o nó original do qual o link foi conectado.
protected FrameworkElement OriginalFromPort { get; set; }
value = linkingBaseTool.OriginalFromPort
linkingBaseTool.OriginalFromPort = value
Obtém ou define o FrameworkElement que é o porto a partir do qual o link foi conectado.
protected Link OriginalLink { get; set; }
value = linkingBaseTool.OriginalLink
linkingBaseTool.OriginalLink = value
Obtém ou define o Link original sendo conectado novamente pelo RelinkingTool.
protected Node OriginalToNode { get; set; }
value = linkingBaseTool.OriginalToNode
linkingBaseTool.OriginalToNode = value
Obtém ou define o nó original ao qual o link foi conectado.
protected FrameworkElement OriginalToPort { get; set; }
value = linkingBaseTool.OriginalToPort
linkingBaseTool.OriginalToPort = value
Obtém ou define o FrameworkElement que é o porto para o qual o link foi conectado.
public double PortGravity { get; set; }
value = linkingBaseTool.PortGravity
linkingBaseTool.PortGravity = value
Obtém ou define a distância em que o snapping de ligação ocorre.
protected FrameworkElement TargetPort { get; set; }
value = linkingBaseTool.TargetPort
linkingBaseTool.TargetPort = value
Obtém ou define uma porta FrameworkElement proposta para conectar um link.
public Node TemporaryFromNode { get; set; }
value = linkingBaseTool.TemporaryFromNode
linkingBaseTool.TemporaryFromNode = value
Obtém ou define o nó temporário no final "de" do link.
protected FrameworkElement TemporaryFromPort { get; }
value = linkingBaseTool.TemporaryFromPort
Obtém o elemento que representa a porta para TemporaryFromNode.
public Link TemporaryLink { get; set; }
value = linkingBaseTool.TemporaryLink
linkingBaseTool.TemporaryLink = value
Obtém ou define o Link temporário que é mostrado enquanto o usuário está desenhando ou reconectando um link.
public DataTemplate TemporaryLinkTemplate { get; set; }
value = linkingBaseTool.TemporaryLinkTemplate
linkingBaseTool.TemporaryLinkTemplate = value
Obtém ou define o DataTemplate usado para renderizar o TemporaryLink.
public DataTemplate TemporaryNodeTemplate { get; set; }
value = linkingBaseTool.TemporaryNodeTemplate
linkingBaseTool.TemporaryNodeTemplate = value
Obtém ou define o DataTemplate usado para renderizar o TemporaryFromNode e TemporaryToNode.
public Node TemporaryToNode { get; set; }
value = linkingBaseTool.TemporaryToNode
linkingBaseTool.TemporaryToNode = value
Obtém ou define o nó temporário no final "para" do link.
protected FrameworkElement TemporaryToPort { get; }
value = linkingBaseTool.TemporaryToPort
Obtém o elemento que representa a porta para TemporaryToNode.
protected Dictionary<FrameworkElement, bool> ValidPortsCache { get; set; }
value = linkingBaseTool.ValidPortsCache
linkingBaseTool.ValidPortsCache = value
Obtém ou define o dicionário usado para acompanhar as portas para as quais um link pode ser válido.
Métodos
protected virtual void CopyPortProperties(Node realnode, FrameworkElement realport, Node tempnode, FrameworkElement tempport, bool toend)
linkingBaseTool.CopyPortProperties(realnode, realport, tempnode, tempport, toend)
Faça um porto temporário olhar e agir como um verdadeiro.
- realnode
- realport
- tempnode
- tempport
- toend
protected virtual Link CreateTemporaryLink()
result = linkingBaseTool.CreateTemporaryLink()
Construir um Link para atuar como um link temporário.
protected virtual Node CreateTemporaryNode(bool toend)
result = linkingBaseTool.CreateTemporaryNode(toend)
Construir um nó para funcionar como um nó temporário.
- toend
Retorna: um nó não ligado definido pelo TemporaryNodeTemplate, ou se isso for nulo, pelo modelo padrão chamado "DefaultTemporaryNodeTemplate".
public override void DoMouseMove()
linkingBaseTool.DoMouseMove()
O movimento do mouse resulta no nó temporário que se move para onde está localizado o válido TargetPort, ou para onde o mouse está se não houver um porto de destino válido próximo.
public override void DoStart()
linkingBaseTool.DoStart()
Se necessário, ligue para Boolean) e CreateTemporaryLink, e capture o mouse.
public override void DoStop()
linkingBaseTool.DoStop()
Liberte a captura do mouse e limpe qualquer estado temporário.
protected virtual FrameworkElement FindTargetPort(bool toend)
result = linkingBaseTool.FindTargetPort(toend)
Encontre uma porta com a qual o usuário possa completar um link válido.
- toend
- verdadeiro se procurando por um porto "para"
Retorna: a FrameworkElement representando uma porta válida, ou nula, se tal porta não estiver perto do ponto atual do mouse (dentro de PortGravity distância)
public virtual bool IsInSameNode(FrameworkElement fromport, FrameworkElement toport)
result = linkingBaseTool.IsInSameNode(fromport, toport)
Este predicado é verdadeiro se ambos os portos de argumento estão no mesmo nó.
- fromport
- toport
public virtual bool IsLinked(FrameworkElement fromport, FrameworkElement toport)
result = linkingBaseTool.IsLinked(fromport, toport)
Este predicado é verdadeiro se houver um link no modelo indo de para .
- fromport
- a FrameworkElement representando a porta "de"
- toport
- a FrameworkElement representando a porta "para"
public virtual bool IsValidFrom(Node fromnode, FrameworkElement fromport)
result = linkingBaseTool.IsValidFrom(fromnode, fromport)
Este predicado é verdadeiro se for permitido conectar um link de um dado nó/porta.
- fromnode
- fromport
Retorna: Falso se o estiver numa Camada que não seja AllowLink. Falso se DependencyObject) para o for falso ou nulo. Falso se o número de links conectados ao exceder o valor DependencyObject. Caso contrário, verdadeiro.
public virtual bool IsValidLink(Node fromnode, FrameworkElement fromport, Node tonode, FrameworkElement toport)
result = linkingBaseTool.IsValidLink(fromnode, fromport, tonode, toport)
Este predicado deve ser verdadeiro quando for logicamente válido conectar um link de um nó/porta para outro nó/porta.
- fromnode
- o "de" Node
- fromport
- o "de" FrameworkElement
- tonode
- o "para" Node (talvez o mesmo que )
- toport
- o "para" FrameworkElement (talvez o mesmo que )
Retorna: Falso se FrameworkElement) for falso para o e . Falso se FrameworkElement) for falso para o e . Falso se FrameworkElement) for verdadeiro a menos que DependencyObject) seja verdadeiro para ambas as portas. Falso se FrameworkElement) for verdadeiro a menos que DependencyObject) seja verdadeiro para ambas as portas. Falso se tentar ligar ao próprio nó( s) da etiqueta do link. Falso se Objeto) ou um dos métodos específicos do modelo IsRelinkValid é falso, dependendo se OriginalLink@ é nulo (um novo link) ou não nulo (um relink). Caso contrário, verdadeiro.
public virtual bool IsValidTo(Node tonode, FrameworkElement toport)
result = linkingBaseTool.IsValidTo(tonode, toport)
Este predicado é verdadeiro se for permitido conectar um link a um dado nó/porta.
- tonode
- toport
Retorna: Falso se o estiver numa Camada que não seja AllowLink. Falso se DependencyObject) para o for falso ou nulo. Falso se o número de links conectados ao exceder o valor DependencyObject. Caso contrário, verdadeiro.
protected virtual void SetNoTargetPortProperties(Node tempnode, FrameworkElement tempport)
linkingBaseTool.SetNoTargetPortProperties(tempnode, tempport)
Reinicie as propriedades temporárias do porto para valores neutros quando não houver porto alvo.
- tempnode
- tempport
Campos
public static readonly DependencyProperty PortGravityProperty
value = LinkingBaseTool.PortGravityProperty
Identifica a propriedade PortGravity dependência.
public static readonly DependencyProperty TemporaryLinkTemplateProperty
value = LinkingBaseTool.TemporaryLinkTemplateProperty
Identifica a propriedade TemporaryLinkTemplate dependência.
public static readonly DependencyProperty TemporaryNodeTemplateProperty
value = LinkingBaseTool.TemporaryNodeTemplateProperty
Identifica a propriedade TemporaryNodeTemplate dependência.