LayoutManager
Esta classe é responsável por posicionar automaticamente todos os nós no diagrama.
Herda de: FrameworkElement
Construtores
public LayoutManager()
layoutManager = LayoutManager()
O construtor para o gerenciador de layout padrão que é o valor inicial de LayoutManager.
Propriedades
public bool Animated { get; set; }
value = layoutManager.Animated
layoutManager.Animated = value
Obtém ou define se deve haver movimento animado movendo os nós de suas posições atuais para suas posições estabelecidas.
public bool AnimationDisablesDiagram { get; set; }
value = layoutManager.AnimationDisablesDiagram
layoutManager.AnimationDisablesDiagram = value
Obtém ou define se o Diagrama está desativado durante uma animação de layout.
public int AnimationTime { get; set; }
value = layoutManager.AnimationTime
layoutManager.AnimationTime = value
Obtém ou define o tempo em milissegundos que qualquer animação deve levar.
public Point DefaultLocation { get; set; }
value = layoutManager.DefaultLocation
layoutManager.DefaultLocation = value
Obtém ou define a localização a partir da qual nós não posicionados aparecem no início da animação.
public Diagram Diagram { get; internal set; }
value = layoutManager.Diagram
layoutManager.Diagram = value
Obtém o Diagrama para o qual este LayoutManagerexecuta layouts automáticos.
public LayoutInitial Initial { get; set; }
value = layoutManager.Initial
layoutManager.Initial = value
Obtém ou define sob que condições uma "inicialização" ou "reset" do modelo deve fazer com que layouts sejam invalidados.
public bool SkipsInvalidate { get; set; }
value = layoutManager.SkipsInvalidate
layoutManager.SkipsInvalidate = value
Obtém ou define se LayoutChange) não deve fazer nada quando uma peça é adicionada/removida/alterada.
Métodos
public virtual bool CanLayoutPart(Part p, IDiagramLayout lay)
result = layoutManager.CanLayoutPart(p, lay)
Este predicado decide se uma Parte deve participar de um layout IDiagramLayout.
- p
- um Nó ou Ligação
- lay
- o layout que pode ser responsável pelo posicionamento da peça
Retorna: Verdadeiro se a parte é visível e se a parte LayoutId não é "Nenhum" e é "Tudo" ou o mesmo valor que o layout's ID. Falso para todos os Adornos e para todos os Nodos que são IsLinkLabel, e para todos os Grupos que não têm Layout.
public virtual void InvalidateLayout(Part p, LayoutChange change)
layoutManager.InvalidateLayout(p, change)
Declare que IDiagramLayout incluindo uma determinada parte é agora inválida e pode precisar ser executada novamente em breve.
- p
- deve ser uma parte
- change
- uma dica sobre a razão para a necessidade de um novo layout; isto é usado para decidir se um layout é realmente necessário.
public virtual void LayoutDiagram(LayoutInitial init, bool immediate)
layoutManager.LayoutDiagram(init, immediate)
Solicitar uma nova disposição de todos os layouts inválidos neste diagrama.
- init
- Se o valor for InvalidateAll, todos IDiagramLayouts serão declarados inválidos, e todos serão executados no momento dado pelo argumento. Se o valor for InvalidateIfNodesUnlocated, IDiagramLayouts só serão declarados inválidos se forem responsáveis por Nós que não tenham uma Localização, porque os seus valores X e/ou Y são Double.NaN@. Se o valor for ValidateAll, todos IDiagramLayouts serão declarados válidos, e nenhum layout ocorrerá até que algo mais aconteça invalidar um layout. Se o valor for Nenhum, nenhuma validade de layout será alterada -- quaisquer layouts inválidos serão realizados no momento especificado.
- immediate
- Se verdadeiro este método executa um layout imediato. Se falso este método programa um layout para ocorrer em breve.
public void LayoutDiagram()
layoutManager.LayoutDiagram()
Solicitar uma nova disposição de todos os nós e links neste diagrama.
public void MoveAnimated(Node node, Point newpos)
layoutManager.MoveAnimated(node, newpos)
Isto basicamente apenas define o valor da posição, mas com movimento animado.
- node
- newpos
- uma nova posição nas coordenadas do modelo
protected virtual void PerformLayout()
layoutManager.PerformLayout()
Este método é chamado assíncrono, a fim de layout de um Diagrama.
Campos
public static readonly DependencyProperty AnimatedProperty
value = LayoutManager.AnimatedProperty
Identifica a propriedade de dependência Animada.
public static readonly DependencyProperty AnimationDisablesDiagramProperty
value = LayoutManager.AnimationDisablesDiagramProperty
Identifica a propriedade AnimationDisablesDiagram dependência.
public static readonly DependencyProperty AnimationTimeProperty
value = LayoutManager.AnimationTimeProperty
Identifica a propriedade AnimationTime dependência.
public static readonly DependencyProperty DefaultLocationProperty
value = LayoutManager.DefaultLocationProperty
Identifica a propriedade DefaultLocation dependência.
public static readonly DependencyProperty InitialProperty
value = LayoutManager.InitialProperty
Identifica a propriedade de dependência inicial.