Links erstellen

Die Klasse ConnectionAdorner ermöglicht Ihnen, neue Links im Diagramm zu erstellen. Vor der Erstellung eines Links wird eine Funktion im Diagramm aufgerufen, um sicherzustellen, dass die Aktion zulässig ist. Diese Funktion kann über die Markup allowCreateLinkFunction, die das folgende Format hat, an den DiagramEditor gebunden werden:
allowCreateLinkFunction: function(DiagramEditor, startNode, endNode)
Beim Erstellen eines neuen Links wird eine Funktion aufgerufen, um die Änderung des neuen Links zu aktivieren:
onLinkUpdated: function (diagram, link, isNew, undoAction)
Erläuterungen:
  • diagram ist das aktuelle Diagramm.
  • link ist der erstellte Link.
  • isNew ist ein boolescher Wert, der angibt, ob der Link neu ist (true für einen neu erstellten Link).
  • undoAction ist die ConnectAction, die für diese Aktualisierung erstellt wird. Sie können angepasste Aktionen für "undo" und "redo" festlegen und weitere beliebige Daten hinzufügen, die für diese Aktion erforderlich sind.

Klasse "ConnectAction"

Die Klasse ConnectAction ermöglicht Ihnen, die Verbindungsaktion rückgängig zu machen (undo) oder zu wiederholen (redo). Sie können diese Aktion anpassen, indem Sie Benutzerfunktionen hinzufügen, die gewöhnlich in der Funktion onLinkUpdated aufgerufen werden. Sie enthält die folgenden Methoden:
  • getLink: Ruft den geänderten Link ab. Diese Methode sucht automatisch den richtigen Link, selbst nach Ersetzungen durch undo-Aktionen.
  • setUndoUserFunction: Legt die benutzerdefinierte undo-Funktion fest.
  • getUndoUserFunction: Ruft die benutzerdefinierte undo-Funktion ab.
  • setRedoUserFunction: Legt die benutzerdefinierte redo-Funktion fest.
  • getRedoUserFunction: Ruft die benutzerdefinierte redo-Funktion ab.

Verbindungshandles verwenden

Das Verbindungshandle wird durch ein Dreieck auf jeder Seite des Zeichenrahmens des Elements dargestellt. Wie die Größensteuerungselemente werden diese Handles hervorgehoben, wenn Sie den Cursor über sie bewegen, wodurch angezeigt wird, dass eine Aktion ausgeführt werden kann. Wenn Sie auf das Handle klicken, wird ein Link zwischen dem ausgewählten Handle (unter Erstellung eines BasicPort an der angegebenen Position) und dem Mauscursor erstellt. Der neue Link wird erstellt, wenn Sie den gehaltenen Endpunkt auf einen Port in einem anderen Knoten oder Untergraphen ziehen.
Die Zielports werden in den Entitäten angezeigt, wenn Sie den Mauszeiger darüber bewegen. Die Zielports sehen exakt wie die Ports des Ursprungs aus. Wenn eine Übergabeaktion auf einem der Ports ausgeführt wird, wird ein BasicPort an der Seite des Elements erstellt und das Linkende damit verbunden. Ist kein Verbindungszielhandle angegeben und die Maustaste direkt über der Zielkomponente losgelassen, wird ein AutomaticPort erstellt.
Während Sie die Steuertaste gedrückt halten, können Sie einen AutomaticPort am Ursprung des Links erstellen. In diesem Fall kann der Link von jedem Port stammen.
Hinweis
  • Während des Ziehens des Verbindungshandels wird die Funktion allowCreateLink bei jedem Ereignis "Maustaste bewegen" ausgewertet, und der Mauscursor ändert sich, um anzuzeigen, ob die Verbindungsaktion an dieser Stelle zulässig ist.
  • Nach dem Erstellen des Links werden die Anfangs- und Endelemente ausgewertet, und der Link wird dem gemeinsamen übergeordneten Element der ersten Ebene erneut zugeordnet. Gehören beispielsweise beide Elemente zu demselben Untergraphen, ist das übergeordnete Element des Links ebenfalls dieser Untergraph.