LinkingBaseTool
Этот абстрактный класс является базовым классом для LinkingTool и RelinkingTool.
Наследует: DiagramTool
Конструкторы
protected LinkingBaseTool()
linkingBaseTool = LinkingBaseTool()
Это делает общую инициализацию для инструментов связи.
Свойства
protected bool Forwards { get; set; }
value = linkingBaseTool.Forwards
linkingBaseTool.Forwards = value
Получает или устанавливает, находится ли операция соединения в прямом направлении.
protected Node OriginalFromNode { get; set; }
value = linkingBaseTool.OriginalFromNode
linkingBaseTool.OriginalFromNode = value
Получает или устанавливает исходный узел, с которого была соединена ссылка.
protected FrameworkElement OriginalFromPort { get; set; }
value = linkingBaseTool.OriginalFromPort
linkingBaseTool.OriginalFromPort = value
Получает или устанавливает FrameworkElement, то есть порт, с которого была подключена ссылка.
protected Link OriginalLink { get; set; }
value = linkingBaseTool.OriginalLink
linkingBaseTool.OriginalLink = value
Получает или устанавливает исходную ссылку, которая повторно соединяется по адресу RelinkingTool.
protected Node OriginalToNode { get; set; }
value = linkingBaseTool.OriginalToNode
linkingBaseTool.OriginalToNode = value
Получает или устанавливает исходный узел, к которому была подключена ссылка.
protected FrameworkElement OriginalToPort { get; set; }
value = linkingBaseTool.OriginalToPort
linkingBaseTool.OriginalToPort = value
Получает или устанавливает FrameworkElement, то есть порт, к которому была подключена ссылка.
public double PortGravity { get; set; }
value = linkingBaseTool.PortGravity
linkingBaseTool.PortGravity = value
Получает или устанавливает расстояние, на котором происходит разрыв связи.
protected FrameworkElement TargetPort { get; set; }
value = linkingBaseTool.TargetPort
linkingBaseTool.TargetPort = value
Получает или устанавливает предлагаемый порт FrameworkElement для подключения ссылки.
public Node TemporaryFromNode { get; set; }
value = linkingBaseTool.TemporaryFromNode
linkingBaseTool.TemporaryFromNode = value
Получает или устанавливает временный Узел в «от» конца ссылки.
protected FrameworkElement TemporaryFromPort { get; }
value = linkingBaseTool.TemporaryFromPort
Получает элемент, представляющий порт для TemporaryFromNode.
public Link TemporaryLink { get; set; }
value = linkingBaseTool.TemporaryLink
linkingBaseTool.TemporaryLink = value
Получает или устанавливает временную ссылку, которая отображается, когда пользователь рисует или повторно подключает ссылку.
public DataTemplate TemporaryLinkTemplate { get; set; }
value = linkingBaseTool.TemporaryLinkTemplate
linkingBaseTool.TemporaryLinkTemplate = value
Получает или устанавливает DataTemplate, используемый для отображения TemporaryLink.
public DataTemplate TemporaryNodeTemplate { get; set; }
value = linkingBaseTool.TemporaryNodeTemplate
linkingBaseTool.TemporaryNodeTemplate = value
Получает или устанавливает DataTemplate, используемый для отображения TemporaryFromNode и TemporaryToNode.
public Node TemporaryToNode { get; set; }
value = linkingBaseTool.TemporaryToNode
linkingBaseTool.TemporaryToNode = value
Получает или устанавливает временный узел в конце ссылки.
protected FrameworkElement TemporaryToPort { get; }
value = linkingBaseTool.TemporaryToPort
Получает элемент, представляющий порт для TemporaryToNode.
protected Dictionary<FrameworkElement, bool> ValidPortsCache { get; set; }
value = linkingBaseTool.ValidPortsCache
linkingBaseTool.ValidPortsCache = value
Получает или устанавливает словарь, используемый для отслеживания портов, для которых ссылка может быть действительной.
Методы
protected virtual void CopyPortProperties(Node realnode, FrameworkElement realport, Node tempnode, FrameworkElement tempport, bool toend)
linkingBaseTool.CopyPortProperties(realnode, realport, tempnode, tempport, toend)
Сделайте временный порт похожим на настоящий.
- realnode
- realport
- tempnode
- tempport
- toend
protected virtual Link CreateTemporaryLink()
result = linkingBaseTool.CreateTemporaryLink()
Постройте ссылку, чтобы действовать как временная ссылка.
protected virtual Node CreateTemporaryNode(bool toend)
result = linkingBaseTool.CreateTemporaryNode(toend)
Постройте узел, чтобы он действовал как временный узел.
- toend
Возвращает: несвязанный Узел, определенный TemporaryNodeTemplate, или, если он не имеет силы, шаблоном по умолчанию под названием «DefaultTemporaryNodeTemplate».
public override void DoMouseMove()
linkingBaseTool.DoMouseMove()
Движение мыши приводит к тому, что временный узел перемещается туда, где находится действительный TargetPort, или туда, где находится мышь, если поблизости нет действительного целевого порта.
public override void DoStart()
linkingBaseTool.DoStart()
При необходимости звоните в Boolean) и CreateTemporaryLink, и захватите мышь.
public override void DoStop()
linkingBaseTool.DoStop()
Выпустите захват мыши и очистите любое временное состояние.
protected virtual FrameworkElement FindTargetPort(bool toend)
result = linkingBaseTool.FindTargetPort(toend)
Найдите порт, с которым пользователь может заполнить действующую ссылку.
- toend
- Если вы ищете порт «to»
Возвращает: a FrameworkElement, представляющий действительный порт, или нулевой, если такой порт не находится вблизи текущей точки мыши (в пределах расстояния PortGravity)
public virtual bool IsInSameNode(FrameworkElement fromport, FrameworkElement toport)
result = linkingBaseTool.IsInSameNode(fromport, toport)
Этот предикат верен, если оба порта аргументов находятся в одном и том же Узле.
- fromport
- toport
public virtual bool IsLinked(FrameworkElement fromport, FrameworkElement toport)
result = linkingBaseTool.IsLinked(fromport, toport)
Этот предикат верен, если в модели есть связь, идущая от к.
- fromport
- a FrameworkElement, представляющий порт "из"
- toport
- a FrameworkElement, представляющий порт "to"
public virtual bool IsValidFrom(Node fromnode, FrameworkElement fromport)
result = linkingBaseTool.IsValidFrom(fromnode, fromport)
Этот предикат верен, если допустимо подключить ссылку из данного узла/порта.
- fromnode
- fromport
Возвращает: Ложно, если на Слое, который не содержит AllowLink. Ложно, если DependencyObject) для является либо ложным, либо нулевым. Ложно, если количество ссылок, подключенных к Слою, превысит значение DependencyObject.
public virtual bool IsValidLink(Node fromnode, FrameworkElement fromport, Node tonode, FrameworkElement toport)
result = linkingBaseTool.IsValidLink(fromnode, fromport, tonode, toport)
Этот предикат должен быть верным, когда логически допустимо подключить ссылку из одного узла/порта к другому узлу/порту.
- fromnode
- Узел «из»
- fromport
- "Из" FrameworkElement
- tonode
- Узел «to» (возможно, тот же самый, что и узел)
- toport
- «to» FrameworkElement (возможно, то же самое, что и )
Возвращает: Ложно, если FrameworkElement) является ложным для обоих портов, и . Ложно, если FrameworkElement) является ложным для обоих портов, и . Ложно, если DependencyObject является истинным, если FrameworkElement не является истинным для обоих портов. Ложно, если попытка ссылки на собственный узел (ы) ярлыка ссылки. Ложно, если попытка ссылки на собственный узел (ы) ярлыка ссылки. Ложно, если метод IsRelinkValid является ложным, в зависимости от того, является ли OriginalLink нулевым (новая ссылка) или ненулевым (повторная ссылка).
public virtual bool IsValidTo(Node tonode, FrameworkElement toport)
result = linkingBaseTool.IsValidTo(tonode, toport)
Этот предикат верен, если допустимо подключить ссылку к данному узлу/порту.
- tonode
- toport
Возвращает: Ложно, если на Слое, который не содержит AllowLink. Ложно, если DependencyObject) для является либо ложным, либо нулевым. Ложно, если количество ссылок, подключенных к Слою, превысит значение DependencyObject.
protected virtual void SetNoTargetPortProperties(Node tempnode, FrameworkElement tempport)
linkingBaseTool.SetNoTargetPortProperties(tempnode, tempport)
Сброс свойств временного порта на нейтральные значения, когда нет целевого порта.
- tempnode
- tempport
Поля
public static readonly DependencyProperty PortGravityProperty
value = LinkingBaseTool.PortGravityProperty
Идентифицирует свойство зависимости PortGravity.
public static readonly DependencyProperty TemporaryLinkTemplateProperty
value = LinkingBaseTool.TemporaryLinkTemplateProperty
Идентифицирует свойство зависимости TemporaryLinkTemplate.
public static readonly DependencyProperty TemporaryNodeTemplateProperty
value = LinkingBaseTool.TemporaryNodeTemplateProperty
Идентифицирует свойство зависимости TemporaryNodeTemplate.