gojs
Version:
Interactive diagrams, charts, and graphs, such as trees, flowcharts, orgcharts, UML, BPMN, or business diagrams
131 lines (124 loc) • 534 kB
HTML
<!DOCTYPE html><html class="default"><head><meta charSet="utf-8"/><meta http-equiv="x-ua-compatible" content="IE=edge"/><title>Diagram | GoJS API</title><meta name="description" content="Documentation for GoJS API"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="../../assets/css/style.css"/><link rel="stylesheet" href="../assets/style-tsd.css"/><link rel="stylesheet" href="../assets/highlight.css"/><script async src="../assets/search.js" id="search-script"></script></head><body><script>document.body.classList.add(localStorage.getItem("tsd-theme") || "os")</script><header><nav id="navTop" class="w-full z-30 top-0 text-white bg-nwoods-primary"><div class="w-full container max-w-screen-lg mx-auto flex flex-wrap sm:flex-nowrap items-center justify-between mt-0 py-2"><div class="md:pl-4"><a class="text-white hover:text-white no-underline hover:no-underline\n font-bold text-2xl lg:text-4xl rounded-lg hover:bg-nwoods-secondary" href="../../index.html"><h1 class="my-0 p-1 leading-none">GoJS</h1></a></div><button id="topnavButton" class="rounded-lg sm:hidden focus:outline-none focus:ring" aria-label="Navigation"><svg fill="currentColor" viewBox="0 0 20 20" class="w-6 h-6"><path id="topnavOpen" fill-rule="evenodd" d="M3 5a1 1 0 011-1h12a1 1 0 110 2H4a1 1 0 01-1-1zM3 10a1 1 0 011-1h12a1 1 0 110 2H4a1 1 0 01-1-1zM9 15a1 1 0 011-1h6a1 1 0 110 2h-6a1 1 0 01-1-1z" clip-rule="evenodd"></path><path id="topnavClosed" class="hidden" fill-rule="evenodd" d="M4.293 4.293a1 1 0 011.414 0L10 8.586l4.293-4.293a1 1 0 111.414 1.414L11.414 10l4.293 4.293a1 1 0 01-1.414 1.414L10 11.414l-4.293 4.293a1 1 0 01-1.414-1.414L8.586 10 4.293 5.707a1 1 0 010-1.414z" clip-rule="evenodd"></path></svg></button><div id="topnavList" class="hidden sm:block items-center w-auto mt-0 text-white p-0 z-20"><ul class="list-reset list-none font-semibold flex justify-end flex-wrap sm:flex-nowrap items-center px-0 pb-0"><li class="p-1 sm:p-0"><a class="topnav-link" href="../../learn/index.html">Learn</a></li><li class="p-1 sm:p-0"><a class="topnav-link" href="../../samples/index.html">Samples</a></li><li class="p-1 sm:p-0"><a class="topnav-link" href="../../intro/index.html">Intro</a></li><li class="p-1 sm:p-0"><a class="topnav-link" href="../../api/index.html">API</a></li><li class="p-1 sm:p-0"><a class="topnav-link" href="https://www.nwoods.com/products/register.html">Register</a></li><li class="p-1 sm:p-0"><a class="topnav-link" href="../../download.html">Download</a></li><li class="p-1 sm:p-0"><a class="topnav-link" href="https://forum.nwoods.com/c/gojs/11">Forum</a></li><li class="p-1 sm:p-0"><a class="topnav-link" href="https://www.nwoods.com/contact.html" target="_blank" rel="noopener" id="contactBtn">Contact</a></li><li class="p-1 sm:p-0"><a class="topnav-link" href="https://www.nwoods.com/sales/index.html" target="_blank" rel="noopener" id="buyBtn">Buy</a></li></ul></div></div><hr class="border-b border-gray-600 opacity-50 my-0 py-0"/></nav><div class="tsd-page-header"><div class="tsd-page-toolbar"><div class="w-full max-w-screen-xl mx-auto px-2"><div class="table-wrap"><div class="table-cell" id="tsd-search" data-base=".."><div class="field"><label for="tsd-search-field" class="tsd-widget search no-caption">Search</label><input type="text" id="tsd-search-field"/></div><ul class="results"><li class="state loading">Preparing search index...</li><li class="state failure">The search index is not available</li></ul><a href="../index.html" class="title">GoJS API</a></div><div class="table-cell" id="tsd-widgets"><div id="tsd-filter"><a href="#" class="tsd-widget options no-caption" data-toggle="options">Options</a><div class="tsd-filter-group"><div class="tsd-select" id="tsd-filter-visibility"><span class="tsd-select-label">All</span><ul class="tsd-select-list"><li data-value="public">Public</li><li data-value="protected">Public/Protected</li><li data-value="private" class="selected">All</li></ul></div> <input type="checkbox" id="tsd-filter-inherited"/><label class="tsd-widget" for="tsd-filter-inherited">Inherited</label></div></div><a href="#" class="tsd-widget menu no-caption" data-toggle="menu">Menu</a></div></div></div></div></div><div class="tsd-page-title"><div class="w-full max-w-screen-xl mx-auto px-2"><div class="top-copyright"><b>GoJS</b>® Diagramming Components<br/>version 2.3.8<br/>by <a href="https://www.nwoods.com/">Northwoods Software®</a></div><div><h1>Class Diagram </h1></div></div></div></header><div class="tsd w-full max-w-screen-xl mx-auto pb-4"><div class="row px-2 w-full"><div class="col-8 col-content"><section class="tsd-panel tsd-hierarchy"><h3>Hierarchy</h3><ul class="tsd-hierarchy"><li><span class="target">Diagram</span><ul class="tsd-hierarchy"><li><a href="Palette.html" class="tsd-signature-type" data-tsd-kind="Class">Palette</a></li><li><a href="Overview.html" class="tsd-signature-type" data-tsd-kind="Class">Overview</a></li></ul></li></ul></section><section class="tsd-panel tsd-comment"><div class="tsd-comment tsd-typography">
<p>A Diagram is associated with an HTML DIV element. Constructing a Diagram creates
an HTML Canvas element which it places inside of the given DIV element, in addition to several helper DIVs.
<strong>GoJS</strong> will manage the contents of this DIV -- you should not modify the contents of the DIV,
although you may style the given DIV (background, border, etc) and position and size it as needed.</p>
<div><p>Minimal Diagram construction looks like this. HTML:</p>
<pre><code class="language-html"><span class="hl-10"><</span><span class="hl-1">div</span><span class="hl-2"> </span><span class="hl-4">id</span><span class="hl-2">=</span><span class="hl-6">"myDiagramDiv"</span><span class="hl-2"> </span><span class="hl-4">style</span><span class="hl-2">=</span><span class="hl-6">"border: solid 1px black; width:400px; height:400px"</span><span class="hl-10">></</span><span class="hl-1">div</span><span class="hl-10">></span>
</code></pre>
<p>JavaScript:</p>
<pre><code class="language-js"><br/><span class="hl-4">myDiagram</span><span class="hl-2"> = </span><span class="hl-1">new</span><span class="hl-2"> </span><span class="hl-4">go</span><span class="hl-2">.</span><span class="hl-5">Diagram</span><span class="hl-2">(</span><span class="hl-6">"myDiagramDiv"</span><span class="hl-2">, </span><span class="hl-0">// create a Diagram for the DIV HTML element</span><br/><span class="hl-2"> {</span><br/><span class="hl-2"> </span><span class="hl-6">"undoManager.isEnabled"</span><span class="hl-4">:</span><span class="hl-2"> </span><span class="hl-1">true</span><span class="hl-2"> </span><span class="hl-0">// enable undo & redo</span><br/><span class="hl-2"> });</span>
</code></pre>
<p>The diagram will draw onto an HTML Canvas element, created inside the Diagram DIV.</p>
<p>Each Diagram holds a set of <a href="Layer.html">Layer</a>s each of which holds some number of <a href="Part.html">Part</a>s
such as <a href="Node.html">Node</a>s and <a href="Link.html">Link</a>s.
Each <a href="Part.html">Part</a> consists of <a href="GraphObject.html">GraphObject</a>s such as <a href="TextBlock.html">TextBlock</a>s and <a href="Shape.html">Shape</a>s
and <a href="Panel.html">Panel</a>s holding yet more GraphObjects.</p>
<p>A Diagram and its Parts provide the visual representation of a <a href="Model.html">Model</a> that holds JavaScript
data objects for the nodes and the links.
The model provides the way to recognize the relationships between the data.</p>
<p class="boxrun">
Two Diagrams can display and manipulate the same Model. (<a href="../../samples/updateDemo.html">Example</a>)
<p>A diagram will automatically create <a href="Node.html">Node</a>s and <a href="Link.html">Link</a>s corresponding to the model data.
The diagram has a number of named templates it uses to create the actual parts:
<a href="Diagram.html#nodeTemplateMap">nodeTemplateMap</a>, <a href="Diagram.html#groupTemplateMap">groupTemplateMap</a>, and <a href="Diagram.html#linkTemplateMap">linkTemplateMap</a>.
Each template may have some data <a href="Binding.html">Binding</a>s that set the part's <a href="GraphObject.html">GraphObject</a>s' properties
based on the value of properties of the data.</p>
<p>A simple Node template and Model data (both nodes and links) may look like this:</p>
<pre><code class="language-js"><span class="hl-1">var</span><span class="hl-2"> </span><span class="hl-4">$</span><span class="hl-2"> = </span><span class="hl-4">go</span><span class="hl-2">.</span><span class="hl-4">GraphObject</span><span class="hl-2">.</span><span class="hl-4">make</span><span class="hl-2">; </span><span class="hl-0">// for conciseness</span><br/><br/><span class="hl-0">// define a simple Node template</span><br/><span class="hl-4">myDiagram</span><span class="hl-2">.</span><span class="hl-4">nodeTemplate</span><span class="hl-2"> =</span><br/><span class="hl-2"> </span><span class="hl-5">$</span><span class="hl-2">(</span><span class="hl-4">go</span><span class="hl-2">.</span><span class="hl-4">Node</span><span class="hl-2">, </span><span class="hl-6">"Auto"</span><span class="hl-2">, </span><span class="hl-0">// the Shape will go around the TextBlock</span><br/><span class="hl-2"> </span><span class="hl-5">$</span><span class="hl-2">(</span><span class="hl-4">go</span><span class="hl-2">.</span><span class="hl-4">Shape</span><span class="hl-2">, </span><span class="hl-6">"RoundedRectangle"</span><span class="hl-2">,</span><br/><span class="hl-2"> </span><span class="hl-0">// Shape.fill is bound to Node.data.color</span><br/><span class="hl-2"> </span><span class="hl-1">new</span><span class="hl-2"> </span><span class="hl-4">go</span><span class="hl-2">.</span><span class="hl-5">Binding</span><span class="hl-2">(</span><span class="hl-6">"fill"</span><span class="hl-2">, </span><span class="hl-6">"color"</span><span class="hl-2">)),</span><br/><span class="hl-2"> </span><span class="hl-5">$</span><span class="hl-2">(</span><span class="hl-4">go</span><span class="hl-2">.</span><span class="hl-4">TextBlock</span><span class="hl-2">,</span><br/><span class="hl-2"> { </span><span class="hl-4">margin:</span><span class="hl-2"> </span><span class="hl-7">3</span><span class="hl-2"> }, </span><span class="hl-0">// some room around the text</span><br/><span class="hl-2"> </span><span class="hl-0">// TextBlock.text is bound to Node.data.key</span><br/><span class="hl-2"> </span><span class="hl-1">new</span><span class="hl-2"> </span><span class="hl-4">go</span><span class="hl-2">.</span><span class="hl-5">Binding</span><span class="hl-2">(</span><span class="hl-6">"text"</span><span class="hl-2">, </span><span class="hl-6">"key"</span><span class="hl-2">))</span><br/><span class="hl-2"> );</span><br/><br/><span class="hl-0">// create the model data that will be represented by Nodes and Links</span><br/><span class="hl-4">myDiagram</span><span class="hl-2">.</span><span class="hl-4">model</span><span class="hl-2"> = </span><span class="hl-1">new</span><span class="hl-2"> </span><span class="hl-4">go</span><span class="hl-2">.</span><span class="hl-5">GraphLinksModel</span><span class="hl-2">(</span><br/><span class="hl-2">[</span><br/><span class="hl-2"> { </span><span class="hl-4">key:</span><span class="hl-2"> </span><span class="hl-6">"Alpha"</span><span class="hl-2">, </span><span class="hl-4">color:</span><span class="hl-2"> </span><span class="hl-6">"lightblue"</span><span class="hl-2"> },</span><br/><span class="hl-2"> { </span><span class="hl-4">key:</span><span class="hl-2"> </span><span class="hl-6">"Beta"</span><span class="hl-2">, </span><span class="hl-4">color:</span><span class="hl-2"> </span><span class="hl-6">"orange"</span><span class="hl-2"> },</span><br/><span class="hl-2"> { </span><span class="hl-4">key:</span><span class="hl-2"> </span><span class="hl-6">"Gamma"</span><span class="hl-2">, </span><span class="hl-4">color:</span><span class="hl-2"> </span><span class="hl-6">"lightgreen"</span><span class="hl-2"> },</span><br/><span class="hl-2"> { </span><span class="hl-4">key:</span><span class="hl-2"> </span><span class="hl-6">"Delta"</span><span class="hl-2">, </span><span class="hl-4">color:</span><span class="hl-2"> </span><span class="hl-6">"pink"</span><span class="hl-2"> }</span><br/><span class="hl-2">],</span><br/><span class="hl-2">[</span><br/><span class="hl-2"> { </span><span class="hl-4">from:</span><span class="hl-2"> </span><span class="hl-6">"Alpha"</span><span class="hl-2">, </span><span class="hl-4">to:</span><span class="hl-2"> </span><span class="hl-6">"Beta"</span><span class="hl-2"> },</span><br/><span class="hl-2"> { </span><span class="hl-4">from:</span><span class="hl-2"> </span><span class="hl-6">"Alpha"</span><span class="hl-2">, </span><span class="hl-4">to:</span><span class="hl-2"> </span><span class="hl-6">"Gamma"</span><span class="hl-2"> },</span><br/><span class="hl-2"> { </span><span class="hl-4">from:</span><span class="hl-2"> </span><span class="hl-6">"Beta"</span><span class="hl-2">, </span><span class="hl-4">to:</span><span class="hl-2"> </span><span class="hl-6">"Beta"</span><span class="hl-2"> },</span><br/><span class="hl-2"> { </span><span class="hl-4">from:</span><span class="hl-2"> </span><span class="hl-6">"Gamma"</span><span class="hl-2">, </span><span class="hl-4">to:</span><span class="hl-2"> </span><span class="hl-6">"Delta"</span><span class="hl-2"> },</span><br/><span class="hl-2"> { </span><span class="hl-4">from:</span><span class="hl-2"> </span><span class="hl-6">"Delta"</span><span class="hl-2">, </span><span class="hl-4">to:</span><span class="hl-2"> </span><span class="hl-6">"Alpha"</span><span class="hl-2"> }</span><br/><span class="hl-2">]);</span>
</code></pre>
<p class="boxrun">
The above code is used to make the <a href="../../samples/minimal.html">Minimal sample</a>, a simple example of
creating a Diagram and setting its model.
<p class="boxread">
Read about models on the <a href="../../intro/usingModels.html">Using Models</a> page in the introduction.
A diagram is responsible for scrolling (<a href="Diagram.html#position">position</a>) and zooming (<a href="Diagram.html#scale">scale</a>) all of the parts that it shows.
Each <a href="Part.html">Part</a> occupies some area given by its <a href="GraphObject.html#actualBounds">GraphObject.actualBounds</a>.
<p>The union of all of the parts' bounds constitutes the <a href="Diagram.html#documentBounds">documentBounds</a>.
The document bounds determines the area that the diagram can be scrolled to.
There are several properties that you can set, such as <a href="Diagram.html#initialContentAlignment">initialContentAlignment</a>,
that control the initial size and position of the diagram contents.</p>
<p>At any later time you can also explicitly set the <a href="Diagram.html#position">position</a> and/or <a href="Diagram.html#scale">scale</a> to
get the appearance that you want. But you may find it easier to call methods to get the desired effect.
For example, if you want to make a particular Node be centered in the viewport,
call either <a href="Diagram.html#centerRect">centerRect</a> or <a href="Diagram.html#scrollToRect">scrollToRect</a> with the Node's <a href="GraphObject.html#actualBounds">GraphObject.actualBounds</a>,
depending on whether or not you want the view to be scrolled if the node is already in view.</p>
<p class="boxread">
Read in the Introduction about <a href="../../intro/viewport.html">Viewports</a>
and the <a href="../../intro/initialView.html">Initial Viewport</a>.
You can have the diagram perform automatic layouts of its nodes and links by setting
<a href="Diagram.html#layout">layout</a> to an instance of the <a href="Layout.html">Layout</a> subclass of your choice.
The default <a href="Diagram.html#layout">layout</a> is an instance of the <a href="Layout.html">Layout</a> base class that ignores links and
only positions <a href="Node.html">Node</a>s that do not have a location.
This default layout will allow you to programmatically position nodes (including by loading
from a database) and will also allow the user to manually position nodes using the <a href="DraggingTool.html">DraggingTool</a>.
<p>If you do supply a particular layout as the <a href="Diagram.html#layout">layout</a>, you can control which <a href="Part.html">Part</a>s it operates
on by setting <a href="Part.html#isLayoutPositioned">Part.isLayoutPositioned</a>.
Normally, of course, it works on all top-level nodes and links.
The layout is performed both after the model is first loaded as well as after any part is added or removed
or changes visibility or size.
You can disable the initial layout by setting <a href="Layout.html#isInitial">Layout.isInitial</a> to false.
You can disable later automatic layouts by setting <a href="Layout.html#isOngoing">Layout.isOngoing</a> to false.</p>
<p class="boxread">
See the <a href="../../intro/layouts.html">Layouts</a> page in the Introduction for a summary of layout behavior.
<p>A diagram maintains a collection of selected parts, the <a href="Diagram.html#selection">Diagram.selection</a>.
To select a Part you set its <a href="Part.html#isSelected">Part.isSelected</a> property to true.</p>
<p>There are many properties, named "allow...", that control what operations the user
may perform on the parts in the diagram. These correspond to the same named
properties on <a href="Layer.html">Layer</a> that govern the behavior for those parts in a particular layer.
Furthermore for some of these properties there are corresponding properties on
<a href="Part.html">Part</a>, named "...able", that govern the behavior for that individual part.
For example, the <a href="Diagram.html#allowCopy">allowCopy</a> property corresponds to <a href="Layer.html#allowCopy">Layer.allowCopy</a> and
to the property <a href="Part.html#copyable">Part.copyable</a>.
The <a href="Part.html#canCopy">Part.canCopy</a> predicate is false if any of these properties is false.</p>
<p class="boxread">
See the <a href="../../intro/permissions.html">Permissions</a> page for a more thorough discussion.
<p>The <a href="Diagram.html#commandHandler">commandHandler</a> implements various standard commands,
such as the <a href="CommandHandler.html#deleteSelection">CommandHandler.deleteSelection</a> method and the
<a href="CommandHandler.html#canDeleteSelection">CommandHandler.canDeleteSelection</a> predicate.</p>
<p class="boxread">
See the <a href="../../intro/commands.html">Commands</a> page for a listing of keyboard commands and
the use of commands in general.
<p>The diagram supports modular behavior for mouse events by implementing "tools".
All mouse and keyboard events are represented by <a href="InputEvent.html">InputEvent</a>s and redirected
to the <a href="Diagram.html#currentTool">currentTool</a>.
The default tool is an instance of <a href="ToolManager.html">ToolManager</a> which keeps three lists of mode-less tools:
<a href="ToolManager.html#mouseDownTools">ToolManager.mouseDownTools</a>, <a href="ToolManager.html#mouseMoveTools">ToolManager.mouseMoveTools</a>, and <a href="ToolManager.html#mouseUpTools">ToolManager.mouseUpTools</a>.
The ToolManager searches these lists when a mouse event happens to find the first tool that can run.
It then makes that tool the new <a href="Diagram.html#currentTool">currentTool</a>, where it can continue to process input events.
When the tool is done, it stops itself, causing the <a href="Diagram.html#defaultTool">defaultTool</a> to be the new <a href="Diagram.html#currentTool">currentTool</a>.</p>
<p>Mouse-down tools include:</p>
<ul>
<li><a href="ToolManager.html#actionTool">ToolManager.actionTool</a>, to support objects like "buttons"</li>
<li><a href="ToolManager.html#relinkingTool">ToolManager.relinkingTool</a>, to reconnect an existing link</li>
<li><a href="ToolManager.html#linkReshapingTool">ToolManager.linkReshapingTool</a>, to modify the route of an existing link</li>
<li><a href="ToolManager.html#rotatingTool">ToolManager.rotatingTool</a>, to change the angle of an object</li>
<li><a href="ToolManager.html#resizingTool">ToolManager.resizingTool</a>, to change the size of an object</li>
</ul>
<p>Mouse-move tools include:</p>
<ul>
<li><a href="ToolManager.html#linkingTool">ToolManager.linkingTool</a>, to draw a new link</li>
<li><a href="ToolManager.html#draggingTool">ToolManager.draggingTool</a>, to move or copy the selection</li>
<li><a href="ToolManager.html#dragSelectingTool">ToolManager.dragSelectingTool</a>, to select parts within a rectangular area</li>
<li><a href="ToolManager.html#panningTool">ToolManager.panningTool</a>, to pan the diagram</li>
</ul>
<p>Mouse-up tools include:</p>
<ul>
<li><a href="ToolManager.html#contextMenuTool">ToolManager.contextMenuTool</a>, to manage context menus</li>
<li><a href="ToolManager.html#textEditingTool">ToolManager.textEditingTool</a>, to support in-place text editing</li>
<li><a href="ToolManager.html#clickCreatingTool">ToolManager.clickCreatingTool</a>, to create new parts where the user clicks</li>
<li><a href="ToolManager.html#clickSelectingTool">ToolManager.clickSelectingTool</a>, to select parts</li>
</ul>
<p>You can also run a tool in a modal fashion by explicitly setting <a href="Diagram.html#currentTool">currentTool</a>.
That tool will keep running until some code replaces the <a href="Diagram.html#currentTool">currentTool</a>.
This normally happens when the current tool calls <a href="Tool.html#stopTool">Tool.stopTool</a>, such as on a mouse-up event.</p>
<p class="boxread">
See the <a href="../../intro/tools.html">Tools</a> page for a listing of predefined tools and how they operate.
<p>A diagram raises various <a href="DiagramEvent.html">DiagramEvent</a>s when interesting things happen that may have affected the whole diagram.
See the documentation for <a href="DiagramEvent.html">DiagramEvent</a> for a complete listing.</p>
<p>When you need to display multiple Models, but not at the same time, you can do so by using only one Diagram and setting the <a href="Diagram.html#model">model</a> to a different one.
You can also have two Diagrams share a DIV by swapping the <a href="Diagram.html#div">div</a> to <code>null</code> on one Diagram and setting it on the other.
When permanently removing a Diagram,t o clear any memory used,
set the <a href="Diagram.html#div">div</a> to <code>null</code> and remove all references to the Diagram. These scenarios are discussed more on the
<a href="../../intro/replacingDeleting.html">Replacing Diagrams and Models</a> intro page.</p>
</div></div></section><section class="tsd-panel-group tsd-index-group"><h2>Index</h2><section class="tsd-panel tsd-index-panel"><div class="tsd-index-content"><section class="tsd-index-section "><h3>Constructors</h3><ul class="tsd-index-list"><li class="tsd-kind-constructor tsd-parent-kind-class"><a href="Diagram.html#constructor" class="tsd-kind-icon">constructor</a></li></ul></section><section class="tsd-index-section "><h3>Properties</h3><ul class="tsd-index-list"><li class="tsd-kind-accessor tsd-parent-kind-class"><a href="Diagram.html#allowClipboard" class="tsd-kind-icon">allow<wbr/>Clipboard</a></li><li class="tsd-kind-accessor tsd-parent-kind-class"><a href="Diagram.html#allowCopy" class="tsd-kind-icon">allow<wbr/>Copy</a></li><li class="tsd-kind-accessor tsd-parent-kind-class"><a href="Diagram.html#allowDelete" class="tsd-kind-icon">allow<wbr/>Delete</a></li><li class="tsd-kind-accessor tsd-parent-kind-class"><a href="Diagram.html#allowDragOut" class="tsd-kind-icon">allow<wbr/>Drag<wbr/>Out</a></li><li class="tsd-kind-accessor tsd-parent-kind-class"><a href="Diagram.html#allowDrop" class="tsd-kind-icon">allow<wbr/>Drop</a></li><li class="tsd-kind-accessor tsd-parent-kind-class"><a href="Diagram.html#allowGroup" class="tsd-kind-icon">allow<wbr/>Group</a></li><li class="tsd-kind-accessor tsd-parent-kind-class"><a href="Diagram.html#allowHorizontalScroll" class="tsd-kind-icon">allow<wbr/>Horizontal<wbr/>Scroll</a></li><li class="tsd-kind-accessor tsd-parent-kind-class"><a href="Diagram.html#allowInsert" class="tsd-kind-icon">allow<wbr/>Insert</a></li><li class="tsd-kind-accessor tsd-parent-kind-class"><a href="Diagram.html#allowLink" class="tsd-kind-icon">allow<wbr/>Link</a></li><li class="tsd-kind-accessor tsd-parent-kind-class"><a href="Diagram.html#allowMove" class="tsd-kind-icon">allow<wbr/>Move</a></li><li class="tsd-kind-accessor tsd-parent-kind-class"><a href="Diagram.html#allowRelink" class="tsd-kind-icon">allow<wbr/>Relink</a></li><li class="tsd-kind-accessor tsd-parent-kind-class"><a href="Diagram.html#allowReshape" class="tsd-kind-icon">allow<wbr/>Reshape</a></li><li class="tsd-kind-accessor tsd-parent-kind-class"><a href="Diagram.html#allowResize" class="tsd-kind-icon">allow<wbr/>Resize</a></li><li class="tsd-kind-accessor tsd-parent-kind-class"><a href="Diagram.html#allowRotate" class="tsd-kind-icon">allow<wbr/>Rotate</a></li><li class="tsd-kind-accessor tsd-parent-kind-class"><a href="Diagram.html#allowSelect" class="tsd-kind-icon">allow<wbr/>Select</a></li><li class="tsd-kind-accessor tsd-parent-kind-class"><a href="Diagram.html#allowTextEdit" class="tsd-kind-icon">allow<wbr/>Text<wbr/>Edit</a></li><li class="tsd-kind-accessor tsd-parent-kind-class"><a href="Diagram.html#allowUndo" class="tsd-kind-icon">allow<wbr/>Undo</a></li><li class="tsd-kind-accessor tsd-parent-kind-class"><a href="Diagram.html#allowUngroup" class="tsd-kind-icon">allow<wbr/>Ungroup</a></li><li class="tsd-kind-accessor tsd-parent-kind-class"><a href="Diagram.html#allowVerticalScroll" class="tsd-kind-icon">allow<wbr/>Vertical<wbr/>Scroll</a></li><li class="tsd-kind-accessor tsd-parent-kind-class"><a href="Diagram.html#allowZoom" class="tsd-kind-icon">allow<wbr/>Zoom</a></li><li class="tsd-kind-get-signature tsd-parent-kind-class"><a href="Diagram.html#animationManager" class="tsd-kind-icon">animation<wbr/>Manager</a></li><li class="tsd-kind-accessor tsd-parent-kind-class"><a href="Diagram.html#autoScale" class="tsd-kind-icon">auto<wbr/>Scale</a></li><li class="tsd-kind-accessor tsd-parent-kind-class"><a href="Diagram.html#autoScrollInterval" class="tsd-kind-icon">auto<wbr/>Scroll<wbr/>Interval</a></li><li class="tsd-kind-accessor tsd-parent-kind-class"><a href="Diagram.html#autoScrollRegion" class="tsd-kind-icon">auto<wbr/>Scroll<wbr/>Region</a></li><li class="tsd-kind-accessor tsd-parent-kind-class"><a href="Diagram.html#click" class="tsd-kind-icon">click</a></li><li class="tsd-kind-accessor tsd-parent-kind-class"><a href="Diagram.html#commandHandler" class="tsd-kind-icon">command<wbr/>Handler</a></li><li class="tsd-kind-accessor tsd-parent-kind-class"><a href="Diagram.html#contentAlignment" class="tsd-kind-icon">content<wbr/>Alignment</a></li><li class="tsd-kind-accessor tsd-parent-kind-class"><a href="Diagram.html#contextClick" class="tsd-kind-icon">context<wbr/>Click</a></li><li class="tsd-kind-accessor tsd-parent-kind-class"><a href="Diagram.html#contextMenu" class="tsd-kind-icon">context<wbr/>Menu</a></li><li class="tsd-kind-accessor tsd-parent-kind-class"><a href="Diagram.html#currentCursor" class="tsd-kind-icon">current<wbr/>Cursor</a></li><li class="tsd-kind-accessor tsd-parent-kind-class"><a href="Diagram.html#currentTool" class="tsd-kind-icon">current<wbr/>Tool</a></li><li class="tsd-kind-accessor tsd-parent-kind-class"><a href="Diagram.html#defaultCursor" class="tsd-kind-icon">default<wbr/>Cursor</a></li><li class="tsd-kind-accessor tsd-parent-kind-class"><a href="Diagram.html#defaultScale" class="tsd-kind-icon">default<wbr/>Scale</a></li><li class="tsd-kind-accessor tsd-parent-kind-class"><a href="Diagram.html#defaultTool" class="tsd-kind-icon">default<wbr/>Tool</a></li><li class="tsd-kind-accessor tsd-parent-kind-class"><a href="Diagram.html#div" class="tsd-kind-icon">div</a></li><li class="tsd-kind-get-signature tsd-parent-kind-class"><a href="Diagram.html#documentBounds" class="tsd-kind-icon">document<wbr/>Bounds</a></li><li class="tsd-kind-accessor tsd-parent-kind-class"><a href="Diagram.html#doubleClick" class="tsd-kind-icon">double<wbr/>Click</a></li><li class="tsd-kind-accessor tsd-parent-kind-class"><a href="Diagram.html#firstInput" class="tsd-kind-icon">first<wbr/>Input</a></li><li class="tsd-kind-accessor tsd-parent-kind-class"><a href="Diagram.html#fixedBounds" class="tsd-kind-icon">fixed<wbr/>Bounds</a></li><li class="tsd-kind-accessor tsd-parent-kind-class"><a href="Diagram.html#grid" class="tsd-kind-icon">grid</a></li><li class="tsd-kind-accessor tsd-parent-kind-class"><a href="Diagram.html#groupSelectionAdornmentTemplate" class="tsd-kind-icon">group<wbr/>Selection<wbr/>Adornment<wbr/>Template</a></li><li class="tsd-kind-accessor tsd-parent-kind-class"><a href="Diagram.html#groupTemplate" class="tsd-kind-icon">group<wbr/>Template</a></li><li class="tsd-kind-accessor tsd-parent-kind-class"><a href="Diagram.html#groupTemplateMap" class="tsd-kind-icon">group<wbr/>Template<wbr/>Map</a></li><li class="tsd-kind-accessor tsd-parent-kind-class"><a href="Diagram.html#handlesDragDropForTopLevelParts" class="tsd-kind-icon">handles<wbr/>Drag<wbr/>Drop<wbr/>For<wbr/>Top<wbr/>Level<wbr/>Parts</a></li><li class="tsd-kind-accessor tsd-parent-kind-class"><a href="Diagram.html#hasHorizontalScrollbar" class="tsd-kind-icon">has<wbr/>Horizontal<wbr/>Scrollbar</a></li><li class="tsd-kind-accessor tsd-parent-kind-class"><a href="Diagram.html#hasVerticalScrollbar" class="tsd-kind-icon">has<wbr/>Vertical<wbr/>Scrollbar</a></li><li class="tsd-kind-get-signature tsd-parent-kind-class"><a href="Diagram.html#highlighteds" class="tsd-kind-icon">highlighteds</a></li><li class="tsd-kind-accessor tsd-parent-kind-class"><a href="Diagram.html#initialAutoScale" class="tsd-kind-icon">initial<wbr/>Auto<wbr/>Scale</a></li><li class="tsd-kind-accessor tsd-parent-kind-class"><a href="Diagram.html#initialContentAlignment" class="tsd-kind-icon">initial<wbr/>Content<wbr/>Alignment</a></li><li class="tsd-kind-accessor tsd-parent-kind-class"><a href="Diagram.html#initialDocumentSpot" class="tsd-kind-icon">initial<wbr/>Document<wbr/>Spot</a></li><li class="tsd-kind-accessor tsd-parent-kind-class"><a href="Diagram.html#initialPosition" class="tsd-kind-icon">initial<wbr/>Position</a></li><li class="tsd-kind-accessor tsd-parent-kind-class"><a href="Diagram.html#initialScale" class="tsd-kind-icon">initial<wbr/>Scale</a></li><li class="tsd-kind-accessor tsd-parent-kind-class"><a href="Diagram.html#initialViewportSpot" class="tsd-kind-icon">initial<wbr/>Viewport<wbr/>Spot</a></li><li class="tsd-kind-accessor tsd-parent-kind-class"><a href="Diagram.html#isEnabled" class="tsd-kind-icon">is<wbr/>Enabled</a></li><li class="tsd-kind-accessor tsd-parent-kind-class"><a href="Diagram.html#isModelReadOnly" class="tsd-kind-icon">is<wbr/>Model<wbr/>Read<wbr/>Only</a></li><li class="tsd-kind-accessor tsd-parent-kind-class"><a href="Diagram.html#isModified" class="tsd-kind-icon">is<wbr/>Modified</a></li><li class="tsd-kind-accessor tsd-parent-kind-class"><a href="Diagram.html#isMouseCaptured" class="tsd-kind-icon">is<wbr/>Mouse<wbr/>Captured</a></li><li class="tsd-kind-accessor tsd-parent-kind-class"><a href="Diagram.html#isReadOnly" class="tsd-kind-icon">is<wbr/>Read<wbr/>Only</a></li><li class="tsd-kind-accessor tsd-parent-kind-class"><a href="Diagram.html#isTreePathToChildren" class="tsd-kind-icon">is<wbr/>Tree<wbr/>Path<wbr/>To<wbr/>Children</a></li><li class="tsd-kind-accessor tsd-parent-kind-class"><a href="Diagram.html#lastInput" class="tsd-kind-icon">last<wbr/>Input</a></li><li class="tsd-kind-get-signature tsd-parent-kind-class"><a href="Diagram.html#layers" class="tsd-kind-icon">layers</a></li><li class="tsd-kind-accessor tsd-parent-kind-class"><a href="Diagram.html#layout" class="tsd-kind-icon">layout</a></li><li class="tsd-kind-accessor tsd-parent-kind-class"><a href="Diagram.html#linkSelectionAdornmentTemplate" class="tsd-kind-icon">link<wbr/>Selection<wbr/>Adornment<wbr/>Template</a></li><li class="tsd-kind-accessor tsd-parent-kind-class"><a href="Diagram.html#linkTemplate" class="tsd-kind-icon">link<wbr/>Template</a></li><li class="tsd-kind-accessor tsd-parent-kind-class"><a href="Diagram.html#linkTemplateMap" class="tsd-kind-icon">link<wbr/>Template<wbr/>Map</a></li><li class="tsd-kind-get-signature tsd-parent-kind-class"><a href="Diagram.html#links" class="tsd-kind-icon">links</a></li><li class="tsd-kind-accessor tsd-parent-kind-class"><a href="Diagram.html#maxScale" class="tsd-kind-icon">max<wbr/>Scale</a></li><li class="tsd-kind-accessor tsd-parent-kind-class"><a href="Diagram.html#maxSelectionCount" class="tsd-kind-icon">max<wbr/>Selection<wbr/>Count</a></li><li class="tsd-kind-accessor tsd-parent-kind-class"><a href="Diagram.html#minScale" class="tsd-kind-icon">min<wbr/>Scale</a></li><li class="tsd-kind-accessor tsd-parent-kind-class"><a href="Diagram.html#model" class="tsd-kind-icon">model</a></li><li class="tsd-kind-accessor tsd-parent-kind-class"><a href="Diagram.html#mouseDragOver" class="tsd-kind-icon">mouse<wbr/>Drag<wbr/>Over</a></li><li class="tsd-kind-accessor tsd-parent-kind-class"><a href="Diagram.html#mouseDrop" class="tsd-kind-icon">mouse<wbr/>Drop</a></li><li class="tsd-kind-accessor tsd-parent-kind-class"><a href="Diagram.html#mouseEnter" class="tsd-kind-icon">mouse<wbr/>Enter</a></li><li class="tsd-kind-accessor tsd-parent-kind-class"><a href="Diagram.html#mouseHold" class="tsd-kind-icon">mouse<wbr/>Hold</a></li><li class="tsd-kind-accessor tsd-parent-kind-class"><a href="Diagram.html#mouseHover" class="tsd-kind-icon">mouse<wbr/>Hover</a></li><li class="tsd-kind-accessor tsd-parent-kind-class"><a href="Diagram.html#mouseLeave" class="tsd-kind-icon">mouse<wbr/>Leave</a></li><li class="tsd-kind-accessor tsd-parent-kind-class"><a href="Diagram.html#mouseOver" class="tsd-kind-icon">mouse<wbr/>Over</a></li><li class="tsd-kind-accessor tsd-parent-kind-class"><a href="Diagram.html#nodeSelectionAdornmentTemplate" class="tsd-kind-icon">node<wbr/>Selection<wbr/>Adornment<wbr/>Template</a></li><li class="tsd-kind-accessor tsd-parent-kind-class"><a href="Diagram.html#nodeTemplate" class="tsd-kind-icon">node<wbr/>Template</a></li><li class="tsd-kind-accessor tsd-parent-kind-class"><a href="Diagram.html#nodeTemplateMap" class="tsd-kind-icon">node<wbr/>Template<wbr/>Map</a></li><li class="tsd-kind-get-signature tsd-parent-kind-class"><a href="Diagram.html#nodes" class="tsd-kind-icon">nodes</a></li><li class="tsd-kind-accessor tsd-parent-kind-class"><a href="Diagram.html#opacity" class="tsd-kind-icon">opacity</a></li><li class="tsd-kind-accessor tsd-parent-kind-class"><a href="Diagram.html#padding" class="tsd-kind-icon">padding</a></li><li class="tsd-kind-get-signature tsd-parent-kind-class"><a href="Diagram.html#parts" class="tsd-kind-icon">parts</a></li><li class="tsd-kind-accessor tsd-parent-kind-class"><a href="Diagram.html#position" class="tsd-kind-icon">position</a></li><li class="tsd-kind-accessor tsd-parent-kind-class"><a href="Diagram.html#positionComputation" class="tsd-kind-icon">position<wbr/>Computation</a></li><li class="tsd-kind-accessor tsd-parent-kind-class"><a href="Diagram.html#renderer" class="tsd-kind-icon">renderer</a></li><li class="tsd-kind-accessor tsd-parent-kind-class"><a href="Diagram.html#scale" class="tsd-kind-icon">scale</a></li><li class="tsd-kind-accessor tsd-parent-kind-class"><a href="Diagram.html#scaleComputation" class="tsd-kind-icon">scale<wbr/>Computation</a></li><li class="tsd-kind-accessor tsd-parent-kind-class"><a href="Diagram.html#scrollHorizontalLineChange" class="tsd-kind-icon">scroll<wbr/>Horizontal<wbr/>Line<wbr/>Change</a></li><li class="tsd-kind-accessor tsd-parent-kind-class"><a href="Diagram.html#scrollMargin" class="tsd-kind-icon">scroll<wbr/>Margin</a></li><li class="tsd-kind-accessor tsd-parent-kind-class"><a href="Diagram.html#scrollMode" class="tsd-kind-icon">scroll<wbr/>Mode</a></li><li class="tsd-kind-accessor tsd-parent-kind-class"><a href="Diagram.html#scrollVerticalLineChange" class="tsd-kind-icon">scroll<wbr/>Vertical<wbr/>Line<wbr/>Change</a></li><li class="tsd-kind-accessor tsd-parent-kind-class"><a href="Diagram.html#scrollsPageOnFocus" class="tsd-kind-icon">scrolls<wbr/>Page<wbr/>On<wbr/>Focus</a></li><li class="tsd-kind-get-signature tsd-parent-kind-class"><a href="Diagram.html#selection" class="tsd-kind-icon">selection</a></li><li class="tsd-kind-accessor tsd-parent-kind-class"><a href="Diagram.html#skipsUndoManager" class="tsd-kind-icon">skips<wbr/>Undo<wbr/>Manager</a></li><li class="tsd-kind-accessor tsd-parent-kind-class"><a href="Diagram.html#toolManager" class="tsd-kind-icon">tool<wbr/>Manager</a></li><li class="tsd-kind-accessor tsd-parent-kind-class"><a href="Diagram.html#toolTip" class="tsd-kind-icon">tool<wbr/>Tip</a></li><li class="tsd-kind-get-signature tsd-parent-kind-class"><a href="Diagram.html#undoManager" class="tsd-kind-icon">undo<wbr/>Manager</a></li><li class="tsd-kind-accessor tsd-parent-kind-class"><a href="Diagram.html#validCycle" class="tsd-kind-icon">valid<wbr/>Cycle</a></li><li class="tsd-kind-accessor tsd-parent-kind-class"><a href="Diagram.html#viewSize" class="tsd-kind-icon">view<wbr/>Size</a></li><li class="tsd-kind-get-signature tsd-parent-kind-class"><a href="Diagram.html#viewportBounds" class="tsd-kind-icon">viewport<wbr/>Bounds</a></li><li class="tsd-kind-accessor tsd-parent-kind-class"><a href="Diagram.html#zoomPoint" class="tsd-kind-icon">zoom<wbr/>Point</a></li><li class="tsd-kind-accessor tsd-parent-kind-class tsd-is-static"><a href="Diagram.html#static-licenseKey" class="tsd-kind-icon">license<wbr/>Key</a></li><li class="tsd-kind-get-signature tsd-parent-kind-class tsd-is-static"><a href="Diagram.html#static-version" class="tsd-kind-icon">version</a></li></ul></section><section class="tsd-index-section "><h3>Methods</h3><ul class="tsd-index-list"><li class="tsd-kind-method tsd-parent-kind-class"><a href="Diagram.html#add" class="tsd-kind-icon">add</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="Diagram.html#addChangedListener" class="tsd-kind-icon">add<wbr/>Changed<wbr/>Listener</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="Diagram.html#addDiagramListener" class="tsd-kind-icon">add<wbr/>Diagram<wbr/>Listener</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="Diagram.html#addLayer" class="tsd-kind-icon">add<wbr/>Layer</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="Diagram.html#addLayerAfter" class="tsd-kind-icon">add<wbr/>Layer<wbr/>After</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="Diagram.html#addLayerBefore" class="tsd-kind-icon">add<wbr/>Layer<wbr/>Before</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="Diagram.html#addModelChangedListener" class="tsd-kind-icon">add<wbr/>Model<wbr/>Changed<wbr/>Listener</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="Diagram.html#alignDocument" class="tsd-kind-icon">align<wbr/>Document</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="Diagram.html#attach" class="tsd-kind-icon">attach</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="Diagram.html#centerRect" class="tsd-kind-icon">center<wbr/>Rect</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="Diagram.html#clear" class="tsd-kind-icon">clear</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="Diagram.html#clearHighlighteds" class="tsd-kind-icon">clear<wbr/>Highlighteds</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="Diagram.html#clearSelection" class="tsd-kind-icon">clear<wbr/>Selection</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="Diagram.html#commit" class="tsd-kind-icon">commit</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="Diagram.html#commitTransaction" class="tsd-kind-icon">commit<wbr/>Transaction</a></li><li class="tsd-kind-method tsd-parent-kind-class tsd-is-protected"><a href="Diagram.html#computeBounds" class="tsd-kind-icon">compute<wbr/>Bounds</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="Diagram.html#computeMove" class="tsd-kind-icon">compute<wbr/>Move</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="Diagram.html#computePartsBounds" class="tsd-kind-icon">compute<wbr/>Parts<wbr/>Bounds</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="Diagram.html#copyParts" class="tsd-kind-icon">copy<wbr/>Parts</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="Diagram.html#delayInitialization" class="tsd-kind-icon">delay<wbr/>Initialization</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="Diagram.html#ensureBounds" class="tsd-kind-icon">ensure<wbr/>Bounds</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="Diagram.html#findLayer" class="tsd-kind-icon">find<wbr/>Layer</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="Diagram.html#findLinkForData" class="tsd-kind-icon">find<wbr/>Link<wbr/>For<wbr/>Data</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="Diagram.html#findLinkForKey" class="tsd-kind-icon">find<wbr/>Link<wbr/>For<wbr/>Key</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="Diagram.html#findLinksByExample" class="tsd-kind-icon">find<wbr/>Links<wbr/>By<wbr/>Example</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="Diagram.html#findNodeForData" class="tsd-kind-icon">find<wbr/>Node<wbr/>For<wbr/>Data</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="Diagram.html#findNodeForKey" class="tsd-kind-icon">find<wbr/>Node<wbr/>For<wbr/>Key</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="Diagram.html#findNodesByExample" class="tsd-kind-icon">find<wbr/>Nodes<wbr/>By<wbr/>Example</a></li><li class="tsd-kind-method tsd-parent-kind-class tsd-has-type-parameter"><a href="Diagram.html#findObjectAt" class="tsd-kind-icon">find<wbr/>Object<wbr/>At</a></li><li class="tsd-kind-method tsd-parent-kind-class tsd-has-type-parameter"><a href="Diagram.html#findObjectsAt" class="tsd-kind-icon">find<wbr/>Objects<wbr/>At</a></li><li class="tsd-kind-method tsd-parent-kind-class tsd-has-type-parameter"><a href="Diagram.html#findObjectsIn" class="tsd-kind-icon">find<wbr/>Objects<wbr/>In</a></li><li class="tsd-kind-method tsd-parent-kind-class tsd-has-type-parameter"><a href="Diagram.html#findObjectsNear" class="tsd-kind-icon">find<wbr/>Objects<wbr/>Near</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="Diagram.html#findPartAt" class="tsd-kind-icon">find<wbr/>Part<wbr/>At</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="Diagram.html#findPartForData" class="tsd-kind-icon">find<wbr/>Part<wbr/>For<wbr/>Data</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="Diagram.html#findPartForKey" class="tsd-kind-icon">find<wbr/>Part<wbr/>For<wbr/>Key</a></li><li class="tsd-kind-method tsd-parent-kind-class tsd-has-type-parameter"><a href="Diagram.html#findPartsAt" class="tsd-kind-icon">find<wbr/>Parts<wbr/>At</a></li><li class="tsd-kind-method tsd-parent-kind-class tsd-has-type-parameter"><a href="Diagram.html#findPartsIn" class="tsd-kind-icon">find<wbr/>Parts<wbr/>In</a></li><li class="tsd-kind-method tsd-parent-kind-class tsd-has-type-parameter"><a href="Diagram.html#findPartsNear" class="tsd-kind-icon">find<wbr/>Parts<wbr/>Near</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="Diagram.html#findTopLevelGroups" class="tsd-kind-icon">find<wbr/>Top<wbr/>Level<wbr/>Groups</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="Diagram.html#findTreeRoots" class="tsd-kind-icon">find<wbr/>Tree<wbr/>Roots</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="Diagram.html#focus" class="tsd-kind-icon">focus</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="Diagram.html#highlight" class="tsd-kind-icon">highlight</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="Diagram.html#highlightCollection" class="tsd-kind-icon">highlight<wbr/>Collection</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="Diagram.html#layoutDiagram" class="tsd-kind-icon">layout<wbr/>Diagram</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="Diagram.html#makeImage" class="tsd-kind-icon">make<wbr/>Image</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="Diagram.html#makeImageData" class="tsd-kind-icon">make<wbr/>Image<wbr/>Data</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="Diagram.html#makeSvg" class="tsd-kind-icon">make<wbr/>Svg</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="Diagram.html#moveParts" class="tsd-kind-icon">move<wbr/>Parts</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="Diagram.html#rebuildParts" class="tsd-kind-icon">rebuild<wbr/>Parts</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="Diagram.html#remove" class="tsd-kind-icon">remove</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="Diagram.html#removeChangedListener" class="tsd-kind-icon">remove<wbr/>Changed<wbr/>Listener</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="Diagram.html#removeDiagramListener" class="tsd-kind-icon">remove<wbr/>Diagram<wbr/>Listener</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="Diagram.html#removeLayer" class="tsd-kind-icon">remove<wbr/>Layer</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="Diagram.html#removeModelChangedListener" class="tsd-kind-icon">remove<wbr/>Model<wbr/>Changed<wbr/>Listener</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="Diagram.html#removeParts" class="tsd-kind-icon">remove<wbr/>Parts</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="Diagram.html#requestUpdate" class="tsd-kind-icon">request<wbr/>Update</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="Diagram.html#rollbackTransaction" class="tsd-kind-icon">rollback<wbr/>Transaction</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="Diagram.html#scroll" class="tsd-kind-icon">scroll</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="Diagram.html#scrollToRect" class="tsd-kind-icon">scroll<wbr/>To<wbr/>Rect</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="Diagram.html#select" class="tsd-kind-icon">select</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="Diagram.html#selectCollection" class="tsd-kind-icon">select<wbr/>Collection</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="Diagram.html#set" class="tsd-kind-icon">set</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="Diagram.html#setProperties" class="tsd-kind-icon">set<wbr/>Properties</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="Diagram.html#startTransaction" class="tsd-kind-icon">start<wbr/>Transaction</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="Diagram.html#transformDocToView" class="tsd-kind-icon">transform<wbr/>Doc<wbr/>To<wbr/>View</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="Diagram.html#transformViewToDoc" class="tsd-kind-icon">transform<wbr/>View<wbr/>To<wbr/>Doc</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="Diagram.html#updateAllRelationshipsFromData" class="tsd-kind-icon">update<wbr/>All<wbr/>Relationships<wbr/>From<wbr/>Data</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="Diagram.html#updateAllTargetBindings" class="tsd-kind-icon">update<wbr/>All<wbr/>Target<wbr/>Bindings</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="Diagram.html#zoomToFit" class="tsd-kind-icon">zoom<wbr/>To<wbr/>Fit</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="Diagram.html#zoomToRect" class="tsd-kind-icon">zoom<wbr/>To<wbr/>Rect</a></li><li class="tsd-kind-method tsd-parent-kind-class tsd-is-static"><a href="Diagram.html#static-fromDiv" class="tsd-kind-icon">from<wbr/>Div</a></li><li class="tsd-kind-method tsd-parent-kind-class tsd-is-static"><a href="Diagram.html#static-inherit" class="tsd-kind-icon">inherit</a></li><li class="tsd-kind-method tsd-parent-kind-class tsd-is-static"><a href="Diagram.html#static-isUsingDOM" class="tsd-kind-icon">is<wbr/>UsingDOM</a></li><li class="tsd-kind-method tsd-parent-kind-class tsd-is-static"><a href="Diagram.html#static-useDOM" class="tsd-kind-icon">useDOM</a></li></ul></section><section class="tsd-index-section "><h3>Constants</h3><ul class="tsd-index-list"><li class="tsd-kind-constant tsd-parent-kind-class tsd-is-static"><a href="Diagram.html#static-CycleAll" class="tsd-kind-icon">Cycle<wbr/>All</a></li><li class="tsd-kind-constant tsd-parent-kind-class tsd-is-static"><a href="Diagram.html#static-CycleDestinationTree" class="tsd-kind-icon">Cycle<wbr/>Destination<wbr/>Tree</a></li><li class="tsd-kind-constant tsd-parent-kind-class tsd-is-static"><a href="Diagram.html#static-CycleNotDirected" class="tsd-kind-icon">Cycle<wbr/>Not<wbr/>Directed</a></li><li class="tsd-kind-constant tsd-parent-kind-class tsd-is-static"><a href="Diagram.html#static-CycleNotUndirected" class="tsd-kind-icon">Cycle<wbr/>Not<wbr/>Undirected</a></li><li class="tsd-kind-constant tsd-parent-kind-class tsd-is-static"><a href="Diagram.html#static-CycleSourceTree" class="tsd-kind-icon">Cycle<wbr/>Source<wbr/>Tree</a></li><li class="tsd-kind-constant tsd