UNPKG

create-gojs-kit

Version:

A CLI for downloading GoJS samples, extensions, and docs

148 lines (146 loc) 37.7 kB
<!DOCTYPE html><html class="default" lang="en"><head><meta charSet="utf-8"/><link rel="stylesheet" href="../../assets/css/style.css"/><link rel="preconnect" href="https://rsms.me/"/><link rel="stylesheet" href="https://rsms.me/inter/inter.css"/><meta http-equiv="x-ua-compatible" content="IE=edge"/><title>DragCreatingTool | 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/style.css"/><link rel="stylesheet" href="../assets/highlight.css"/><link rel="stylesheet" href="../assets/custom.css"/><script defer src="../assets/main.js"></script><script async src="../assets/icons.js" id="tsd-icons-script"></script><script async src="../assets/search.js" id="tsd-search-script"></script><script async src="../assets/navigation.js" id="tsd-nav-script"></script><script type="text/javascript">// formerly in api.js var hash = null; function changeHash() { var panels = document.getElementsByClassName("tsd-panel"); for (let i = 0; i < panels.length; i++) { var p = panels[i]; p.classList.remove("targeted"); } hash = window.location.hash.slice(1); if (hash) { var elt = document.getElementById(hash); if (elt) elt.parentNode.classList.add("targeted"); } } document.addEventListener("DOMContentLoaded", changeHash); window.addEventListener("hashchange", changeHash);</script></head><body><script>document.documentElement.dataset.theme = localStorage.getItem("tsd-theme") || "os";document.body.style.display="none";setTimeout(() => app?app.showPage():document.body.style.removeProperty("display"),500)</script><header><nav id="navTop" class="w-full h-[var(--topnav-h)] z-30 bg-[var(--color-background-secondary)] border-b border-b-[var(--color-accent)]"><div class="max-w-screen-xl mx-auto flex flex-wrap items-start justify-between px-4"><a class="!text-white bg-nwoods-primary font-bold !leading-[calc(var(--topnav-h)_-_1px)] my-0 px-2 text-4xl lg:text-5xl logo" href="../../index.html">GoJS</a><div class="relative"><button id="topnavButton" class="h-[calc(var(--topnav-h)_-_1px)] px-2 m-0 text-[var(--color-text)] bg-inherit shadow-none md:hidden hover:!bg-inherit hover:!text-nwoods-accent hover:!shadow-none" aria-label="Navigation"><svg class="h-7 w-7 block" aria-hidden="true" fill="none" stroke="currentColor" stroke-width="2" viewBox="0 0 24 24"><path d="M3.75 6.75h16.5M3.75 12h16.5m-16.5 5.25h16.5" stroke-linecap="round" stroke-linejoin="round"></path></svg></button><div id="topnavList" class="hidden md:block"><div class="absolute right-0 z-30 flex flex-col items-end rounded border border-[var(--color-accent)] p-4 pl-12 shadow bg-[var(--color-background-secondary)] text-[var(--color-text)] font-semibold md:flex-row md:space-x-4 md:items-start md:border-0 md:p-0 md:shadow-none md:!bg-inherit"><a href="../../learn/index.html">Learn</a><a href="../../samples/index.html">Samples</a><a href="../../intro/index.html">Intro</a><a class="active" href="../../api/index.html">API</a><a href="../../download.html">Download</a><a href="https://forum.nwoods.com/c/gojs/11" target="_blank" rel="noopener">Forum</a><a href="https://nwoods.com/contact.html" target="_blank" rel="noopener" id="contactBtn">Contact</a><a href="https://nwoods.com/sales/index.html" target="_blank" rel="noopener" id="buyBtn">Buy</a></div></div></div></div></nav><script>window.addEventListener("DOMContentLoaded", function () { // topnav var topButton = document.getElementById("topnavButton"); var topnavList = document.getElementById("topnavList"); if (topButton && topnavList) { topButton.addEventListener("click", function (e) { topnavList .classList .toggle("hidden"); e.stopPropagation(); }); document.addEventListener("click", function (e) { // if the clicked element isn't the list, close the list if (!topnavList.classList.contains("hidden") && !e.target.closest("#topnavList")) { topButton.click(); } }); // set active <a> element // done via active tag below, always API } });</script><div class="tsd-page-toolbar"><div class="tsd-toolbar-contents container"><div class="table-cell" id="tsd-search" data-base=".."><div class="field"><div id="tsd-search-help"><code class="!text-lg">/</code> to search</div><label for="tsd-search-field" class="tsd-widget tsd-toolbar-icon search no-caption"><svg width="16" height="16" viewBox="0 0 16 16" fill="none"><use href="../assets/icons.svg#icon-search"></use></svg></label><input type="text" id="tsd-search-field" aria-label="Search"/></div><div class="field"><div id="tsd-toolbar-links"></div></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"><a href="#" class="tsd-widget tsd-toolbar-icon menu no-caption" data-toggle="menu" aria-label="Menu"><svg width="16" height="16" viewBox="0 0 16 16" fill="none"><use href="../assets/icons.svg#icon-menu"></use></svg></a></div></div></div></header><div class="container container-main"><div class="col-content"><div class="tsd-page-title"><div class="flex w-full max-w-screen-xl mx-auto px-2 items-center justify-between"><div><ul class="tsd-breadcrumb"><li><a href="../index.html">GoJS API</a></li><li><a href="DragCreatingTool.html">DragCreatingTool</a></li></ul><h1 class="flex items-center">Class DragCreatingTool</h1></div><div class="text-xs"><b>GoJS</b>® Diagramming Components<br/>version 3.1.0<br/>by <a href="https://nwoods.com/">Northwoods Software®</a></div></div></div><section class="tsd-panel tsd-extension"><p>This is an extension and not part of the main GoJS library. Note that the API for this class may change at any time. If you intend to use an extension in production, you should copy the code to your own source directory. See the <a href="../../intro/extensions.html">Extensions intro page</a> for more information.</p></section><section class="tsd-panel tsd-hierarchy"><h4>Hierarchy (<a class="link" href="../hierarchy.html#DragCreatingTool">view full</a>)</h4><ul class="tsd-hierarchy"><li><a href="Tool.html" class="tsd-signature-type tsd-kind-class">Tool</a><ul class="tsd-hierarchy"><li><span class="target">DragCreatingTool</span></li></ul></li></ul></section><section class="tsd-panel tsd-comment"><div class="tsd-comment tsd-typography"><p>The DragCreatingTool lets the user create a new node by dragging in the background to indicate its size and position.</p> <p>The default drag selection box is a magenta rectangle. You can modify the <a href="DragCreatingTool.html#box" class="tsd-kind-accessor">box</a> to customize its appearance.</p> <p>This tool will not be able to start running unless you have set the <a href="DragCreatingTool.html#archetypeNodeData" class="tsd-kind-accessor">archetypeNodeData</a> property to an object that can be copied and added to the diagram&#39;s model.</p> <p>You can use this tool in a modal manner by executing:</p> <pre><code class="language-js"><span class="hl-2"> </span><span class="hl-4">diagram</span><span class="hl-2">.</span><span class="hl-4">currentTool</span><span class="hl-2"> = </span><span class="hl-1">new</span><span class="hl-2"> </span><span class="hl-5">DragCreatingTool</span><span class="hl-2">();</span> </code><button>Copy</button></pre> <p>Use this tool in a mode-less manner by executing:</p> <pre><code class="language-js"><span class="hl-2"> </span><span class="hl-4">myDiagram</span><span class="hl-2">.</span><span class="hl-4">toolManager</span><span class="hl-2">.</span><span class="hl-4">mouseMoveTools</span><span class="hl-2">.</span><span class="hl-5">insertAt</span><span class="hl-2">(</span><span class="hl-7">2</span><span class="hl-2">, </span><span class="hl-1">new</span><span class="hl-2"> </span><span class="hl-5">DragCreatingTool</span><span class="hl-2">());</span> </code><button>Copy</button></pre> <p>However when used mode-lessly as a mouse-move tool, in <a href="ToolManager.html#mouseMoveTools" class="tsd-kind-accessor">go.ToolManager.mouseMoveTools</a>, this cannot start running unless there has been a motionless delay after the mouse-down event of at least <a href="DragCreatingTool.html#delay" class="tsd-kind-accessor">delay</a> milliseconds.</p> <p>This tool does not utilize any <a href="Adornment.html" class="tsd-kind-class">go.Adornment</a>s or tool handles, but it does temporarily add the <a href="DragCreatingTool.html#box" class="tsd-kind-accessor">box</a> Part to the diagram. This tool does conduct a transaction when inserting the new node.</p> <p>If you want to experiment with this extension, try the <a href="../../samples/DragCreating.html">Drag Creating</a> sample.</p> </div></section><section class="tsd-panel-group tsd-index-group"><section class="tsd-panel tsd-index-panel"><details class="tsd-index-content tsd-index-accordion" open><summary class="tsd-accordion-summary tsd-index-summary"><h5 class="tsd-index-heading uppercase" role="button" aria-expanded="true" tabIndex="0"><svg width="16" height="16" viewBox="0 0 16 16" fill="none"><use href="../assets/icons.svg#icon-chevronSmall"></use></svg> Index</h5></summary><div class="tsd-accordion-details"><section class="tsd-index-section"><h3 class="tsd-index-heading">Constructors</h3><div class="tsd-index-list"><a href="DragCreatingTool.html#constructor" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-512"></use></svg><span>constructor</span></a> </div></section><section class="tsd-index-section"><h3 class="tsd-index-heading">Accessors</h3><div class="tsd-index-list"><a href="DragCreatingTool.html#archetypeNodeData" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-262144"></use></svg><span>archetype<wbr/>Node<wbr/>Data</span></a> <a href="DragCreatingTool.html#box" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-262144"></use></svg><span>box</span></a> <a href="DragCreatingTool.html#delay" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-262144"></use></svg><span>delay</span></a> </div></section><section class="tsd-index-section"><h3 class="tsd-index-heading">Methods</h3><div class="tsd-index-list"><a href="DragCreatingTool.html#canStart" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>can<wbr/>Start</span></a> <a href="DragCreatingTool.html#computeBoxBounds" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>compute<wbr/>Box<wbr/>Bounds</span></a> <a href="DragCreatingTool.html#doActivate" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>do<wbr/>Activate</span></a> <a href="DragCreatingTool.html#doDeactivate" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>do<wbr/>Deactivate</span></a> <a href="DragCreatingTool.html#doMouseMove" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>do<wbr/>Mouse<wbr/>Move</span></a> <a href="DragCreatingTool.html#doMouseUp" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>do<wbr/>Mouse<wbr/>Up</span></a> <a href="DragCreatingTool.html#insertPart" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>insert<wbr/>Part</span></a> </div></section></div></details></section></section><section class="tsd-panel-group tsd-index-group tsd-is-inherited"><section class="tsd-panel tsd-index-panel"><details class="tsd-index-content tsd-index-accordion"><summary class="tsd-accordion-summary tsd-index-summary"><h5 class="tsd-index-heading uppercase" role="button" aria-expanded="false" tabIndex="0"><svg width="16" height="16" viewBox="0 0 16 16" fill="none"><use href="../assets/icons.svg#icon-chevronSmall"></use></svg> Inherited Index</h5></summary><div class="tsd-accordion-details"><div class="tsd-index-content"><section class="tsd-index-section"><h3 class="tsd-index-heading">Accessors</h3><div class="tsd-index-list"><a href="Tool.html#diagram" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-262144"></use></svg><span>Tool.diagram</span></a> <a href="Tool.html#isActive" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-262144"></use></svg><span>Tool.is<wbr/>Active</span></a> <a href="Tool.html#isEnabled" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-262144"></use></svg><span>Tool.is<wbr/>Enabled</span></a> <a href="Tool.html#name" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-262144"></use></svg><span>Tool.name</span></a> <a href="Tool.html#transactionResult" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-262144"></use></svg><span>Tool.transaction<wbr/>Result</span></a> </div></section><section class="tsd-index-section"><h3 class="tsd-index-heading">Methods</h3><div class="tsd-index-list"><a href="Tool.html#canStartMultiTouch" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>Tool.can<wbr/>Start<wbr/>Multi<wbr/>Touch</span></a> <a href="Tool.html#cancelWaitAfter" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>Tool.cancel<wbr/>Wait<wbr/>After</span></a> <a href="Tool.html#doCancel" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>Tool.do<wbr/>Cancel</span></a> <a href="Tool.html#doKeyDown" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>Tool.do<wbr/>Key<wbr/>Down</span></a> <a href="Tool.html#doKeyUp" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>Tool.do<wbr/>Key<wbr/>Up</span></a> <a href="Tool.html#doMouseDown" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>Tool.do<wbr/>Mouse<wbr/>Down</span></a> <a href="Tool.html#doMouseWheel" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>Tool.do<wbr/>Mouse<wbr/>Wheel</span></a> <a href="Tool.html#doStart" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>Tool.do<wbr/>Start</span></a> <a href="Tool.html#doStop" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>Tool.do<wbr/>Stop</span></a> <a href="Tool.html#doWaitAfter" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>Tool.do<wbr/>Wait<wbr/>After</span></a> <a href="Tool.html#findToolHandleAt" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>Tool.find<wbr/>Tool<wbr/>Handle<wbr/>At</span></a> <a href="Tool.html#isBeyondDragSize" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>Tool.is<wbr/>Beyond<wbr/>Drag<wbr/>Size</span></a> <a href="Tool.html#standardMouseClick" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>Tool.standard<wbr/>Mouse<wbr/>Click</span></a> <a href="Tool.html#standardMouseOver" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>Tool.standard<wbr/>Mouse<wbr/>Over</span></a> <a href="Tool.html#standardMouseSelect" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>Tool.standard<wbr/>Mouse<wbr/>Select</span></a> <a href="Tool.html#standardMouseWheel" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>Tool.standard<wbr/>Mouse<wbr/>Wheel</span></a> <a href="Tool.html#standardPinchZoomMove" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>Tool.standard<wbr/>Pinch<wbr/>Zoom<wbr/>Move</span></a> <a href="Tool.html#standardPinchZoomStart" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>Tool.standard<wbr/>Pinch<wbr/>Zoom<wbr/>Start</span></a> <a href="Tool.html#standardWaitAfter" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>Tool.standard<wbr/>Wait<wbr/>After</span></a> <a href="Tool.html#startTransaction" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>Tool.start<wbr/>Transaction</span></a> <a href="Tool.html#stopTool" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>Tool.stop<wbr/>Tool</span></a> <a href="Tool.html#stopTransaction" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>Tool.stop<wbr/>Transaction</span></a> <a href="Tool.html#updateAdornments" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>Tool.update<wbr/>Adornments</span></a> </div></section></div></div></details></section></section><section class="tsd-panel-group tsd-member-group"><h2>Constructors</h2><section class="tsd-panel tsd-member"><a id="constructor" class="tsd-anchor"></a><h3 class="tsd-anchor-link"><span>constructor</span><a href="#constructor" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><ul class="tsd-signatures"><li class="tsd-signature tsd-anchor-link"><a id="constructor.new_DragCreatingTool" class="tsd-anchor"></a><span class="tsd-kind-constructor-signature">new <wbr/>Drag<wbr/>Creating<wbr/>Tool</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">init</span><span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">Partial</span><span class="tsd-signature-symbol">&lt;</span><a href="DragCreatingTool.html" class="tsd-signature-type tsd-kind-class">DragCreatingTool</a><span class="tsd-signature-symbol">&gt;</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="DragCreatingTool.html" class="tsd-signature-type tsd-kind-class">DragCreatingTool</a><a href="#constructor.new_DragCreatingTool" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></li><li class="tsd-description"><div class="tsd-comment tsd-typography"><p>Constructs a DragCreatingTool, sets <a href="DragCreatingTool.html#box" class="tsd-kind-accessor">box</a> to a magenta rectangle, and sets name of the tool.</p> </div><div class="tsd-parameters"><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameter-list"><li><h5><code class="tsd-tag ts-flagOptional">Optional</code> <span class="tsd-kind-parameter">init</span>: <span class="tsd-signature-type">Partial</span><span class="tsd-signature-symbol">&lt;</span><a href="DragCreatingTool.html" class="tsd-signature-type tsd-kind-class">DragCreatingTool</a><span class="tsd-signature-symbol">&gt;</span></h5></li></ul></div><h4 class="tsd-returns-title">Returns <a href="DragCreatingTool.html" class="tsd-signature-type tsd-kind-class">DragCreatingTool</a></h4></li></ul></section></section><section class="tsd-panel-group tsd-member-group"><h2>Accessors</h2><section class="tsd-panel tsd-member"><a id="archetypeNodeData" class="tsd-anchor"></a><h3 class="tsd-anchor-link"><span>archetype<wbr/>Node<wbr/>Data</span><div class="membertype"><span class="tsd-signature-symbol">: </span><a href="ObjectData.html" class="tsd-signature-type tsd-kind-interface">ObjectData</a></div><a href="#archetypeNodeData" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><ul class="tsd-signatures"><li class="tsd-description"><div class="tsd-comment tsd-typography"><p>Gets or sets a data object that will be copied and added to the diagram&#39;s model each time this tool executes.</p> <p>The default value is null. The value must be non-null for this tool to be able to run. Setting this property does not raise any events.</p> </div></li></ul></section><section class="tsd-panel tsd-member"><a id="box" class="tsd-anchor"></a><h3 class="tsd-anchor-link"><span>box</span><div class="membertype"><span class="tsd-signature-symbol">: </span><a href="Part.html" class="tsd-signature-type tsd-kind-class">Part</a></div><a href="#box" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><ul class="tsd-signatures"><li class="tsd-description"><div class="tsd-comment tsd-typography"><p>Gets or sets the <a href="Part.html" class="tsd-kind-class">go.Part</a> used as the &quot;rubber-band box&quot; that is stretched to follow the mouse, as feedback for what area will be passed to <a href="DragCreatingTool.html#insertPart" class="tsd-kind-method">insertPart</a> upon a mouse-up.</p> <p>Initially this is a <a href="Part.html" class="tsd-kind-class">go.Part</a> containing only a simple magenta rectangular <a href="Shape.html" class="tsd-kind-class">go.Shape</a>. The object to be resized should be named &quot;SHAPE&quot;. Setting this property does not raise any events.</p> <p>Modifying this property while this tool <a href="Tool.html#isActive" class="tsd-kind-accessor">go.Tool.isActive</a> might have no effect.</p> </div></li></ul></section><section class="tsd-panel tsd-member"><a id="delay" class="tsd-anchor"></a><h3 class="tsd-anchor-link"><span>delay</span><div class="membertype"><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span></div><a href="#delay" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><ul class="tsd-signatures"><li class="tsd-description"><div class="tsd-comment tsd-typography"><p>Gets or sets the time in milliseconds for which the mouse must be stationary before this tool can be started.</p> <p>The default value is 175 milliseconds. A value of zero will allow this tool to run without any wait after the mouse down. Setting this property does not raise any events.</p> </div></li></ul></section></section><section class="tsd-panel-group tsd-member-group"><h2>Methods</h2><section class="tsd-panel tsd-member"><a id="canStart" class="tsd-anchor"></a><h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagOverride">Override</code><span>can<wbr/>Start</span><a href="#canStart" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><ul class="tsd-signatures"><li class="tsd-signature tsd-anchor-link"><a id="canStart.canStart-1" class="tsd-anchor"></a><span class="tsd-kind-call-signature">can<wbr/>Start</span><span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">boolean</span><a href="#canStart.canStart-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></li><li class="tsd-description"><div class="tsd-comment tsd-typography"><p>This tool can run when there has been a mouse-drag, far enough away not to be a click, and there has been delay of at least <a href="DragCreatingTool.html#delay" class="tsd-kind-accessor">delay</a> milliseconds after the mouse-down before a mouse-move.</p> </div><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">boolean</span></h4></li></ul></section><section class="tsd-panel tsd-member"><a id="computeBoxBounds" class="tsd-anchor"></a><h3 class="tsd-anchor-link"><span>compute<wbr/>Box<wbr/>Bounds</span><a href="#computeBoxBounds" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><ul class="tsd-signatures"><li class="tsd-signature tsd-anchor-link"><a id="computeBoxBounds.computeBoxBounds-1" class="tsd-anchor"></a><span class="tsd-kind-call-signature">compute<wbr/>Box<wbr/>Bounds</span><span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="Rect.html" class="tsd-signature-type tsd-kind-class">Rect</a><a href="#computeBoxBounds.computeBoxBounds-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></li><li class="tsd-description"><div class="tsd-comment tsd-typography"><p>This just returns a <a href="Rect.html" class="tsd-kind-class">go.Rect</a> stretching from the mouse-down point to the current mouse point.</p> </div><h4 class="tsd-returns-title">Returns <a href="Rect.html" class="tsd-signature-type tsd-kind-class">Rect</a></h4><p>a <a href="Rect.html" class="tsd-kind-class">go.Rect</a> in document coordinates.</p> </li></ul></section><section class="tsd-panel tsd-member"><a id="doActivate" class="tsd-anchor"></a><h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagOverride">Override</code><span>do<wbr/>Activate</span><a href="#doActivate" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><ul class="tsd-signatures"><li class="tsd-signature tsd-anchor-link"><a id="doActivate.doActivate-1" class="tsd-anchor"></a><span class="tsd-kind-call-signature">do<wbr/>Activate</span><span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span><a href="#doActivate.doActivate-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></li><li class="tsd-description"><div class="tsd-comment tsd-typography"><p>Capture the mouse and show the <a href="DragCreatingTool.html#box" class="tsd-kind-accessor">box</a>.</p> </div><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4></li></ul></section><section class="tsd-panel tsd-member"><a id="doDeactivate" class="tsd-anchor"></a><h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagOverride">Override</code><span>do<wbr/>Deactivate</span><a href="#doDeactivate" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><ul class="tsd-signatures"><li class="tsd-signature tsd-anchor-link"><a id="doDeactivate.doDeactivate-1" class="tsd-anchor"></a><span class="tsd-kind-call-signature">do<wbr/>Deactivate</span><span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span><a href="#doDeactivate.doDeactivate-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></li><li class="tsd-description"><div class="tsd-comment tsd-typography"><p>Release the mouse and remove any <a href="DragCreatingTool.html#box" class="tsd-kind-accessor">box</a>.</p> </div><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4></li></ul></section><section class="tsd-panel tsd-member"><a id="doMouseMove" class="tsd-anchor"></a><h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagOverride">Override</code><span>do<wbr/>Mouse<wbr/>Move</span><a href="#doMouseMove" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><ul class="tsd-signatures"><li class="tsd-signature tsd-anchor-link"><a id="doMouseMove.doMouseMove-1" class="tsd-anchor"></a><span class="tsd-kind-call-signature">do<wbr/>Mouse<wbr/>Move</span><span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span><a href="#doMouseMove.doMouseMove-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></li><li class="tsd-description"><div class="tsd-comment tsd-typography"><p>Update the <a href="DragCreatingTool.html#box" class="tsd-kind-accessor">box</a>&#39;s position and size according to the value of <a href="DragCreatingTool.html#computeBoxBounds" class="tsd-kind-method">computeBoxBounds</a>.</p> </div><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4></li></ul></section><section class="tsd-panel tsd-member"><a id="doMouseUp" class="tsd-anchor"></a><h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagOverride">Override</code><span>do<wbr/>Mouse<wbr/>Up</span><a href="#doMouseUp" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><ul class="tsd-signatures"><li class="tsd-signature tsd-anchor-link"><a id="doMouseUp.doMouseUp-1" class="tsd-anchor"></a><span class="tsd-kind-call-signature">do<wbr/>Mouse<wbr/>Up</span><span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span><a href="#doMouseUp.doMouseUp-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></li><li class="tsd-description"><div class="tsd-comment tsd-typography"><p>Call <a href="DragCreatingTool.html#insertPart" class="tsd-kind-method">insertPart</a> with the value of a call to <a href="DragCreatingTool.html#computeBoxBounds" class="tsd-kind-method">computeBoxBounds</a>.</p> </div><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4></li></ul></section><section class="tsd-panel tsd-member"><a id="insertPart" class="tsd-anchor"></a><h3 class="tsd-anchor-link"><span>insert<wbr/>Part</span><a href="#insertPart" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><ul class="tsd-signatures"><li class="tsd-signature tsd-anchor-link"><a id="insertPart.insertPart-1" class="tsd-anchor"></a><span class="tsd-kind-call-signature">insert<wbr/>Part</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">bounds</span><span class="tsd-signature-symbol">: </span><a href="Rect.html" class="tsd-signature-type tsd-kind-class">Rect</a><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="Part.html" class="tsd-signature-type tsd-kind-class">Part</a><a href="#insertPart.insertPart-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></li><li class="tsd-description"><div class="tsd-comment tsd-typography"><p>Create a node by adding a copy of the <a href="DragCreatingTool.html#archetypeNodeData" class="tsd-kind-accessor">archetypeNodeData</a> object to the diagram&#39;s model, assign its <a href="GraphObject.html#position" class="tsd-kind-accessor">go.GraphObject.position</a> and <a href="GraphObject.html#desiredSize" class="tsd-kind-accessor">go.GraphObject.desiredSize</a> according to the given bounds, and select the new part.</p> <p>The actual part that is added to the diagram may be a <a href="Part.html" class="tsd-kind-class">go.Part</a>, a <a href="Node.html" class="tsd-kind-class">go.Node</a>, or even a <a href="Group.html" class="tsd-kind-class">go.Group</a>, depending on the properties of the <a href="DragCreatingTool.html#archetypeNodeData" class="tsd-kind-accessor">archetypeNodeData</a> and the type of the template that is copied to create the part.</p> </div><div class="tsd-parameters"><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameter-list"><li><h5><span class="tsd-kind-parameter">bounds</span>: <a href="Rect.html" class="tsd-signature-type tsd-kind-class">Rect</a></h5><div class="tsd-comment tsd-typography"><p>a Point in document coordinates.</p> </div></li></ul></div><h4 class="tsd-returns-title">Returns <a href="Part.html" class="tsd-signature-type tsd-kind-class">Part</a></h4><p>the newly created Part, or null if it failed.</p> </li></ul></section></section></div><div class="col-sidebar"><div class="page-menu"><details open class="tsd-index-accordion tsd-page-navigation"><summary class="tsd-accordion-summary"><h3><svg width="20" height="20" viewBox="0 0 24 24" fill="none"><use href="../assets/icons.svg#icon-chevronDown"></use></svg>On This Page</h3></summary><div class="tsd-accordion-details"><ul><li><a href="#constructor"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-512"></use></svg><span>constructor</span></a></li><li><a href="#archetypeNodeData"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-262144"></use></svg><span>archetype<wbr/>Node<wbr/>Data</span></a></li><li><a href="#box"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-262144"></use></svg><span>box</span></a></li><li><a href="#delay"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-262144"></use></svg><span>delay</span></a></li><li><a href="#canStart"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>can<wbr/>Start</span></a></li><li><a href="#computeBoxBounds"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>compute<wbr/>Box<wbr/>Bounds</span></a></li><li><a href="#doActivate"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>do<wbr/>Activate</span></a></li><li><a href="#doDeactivate"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>do<wbr/>Deactivate</span></a></li><li><a href="#doMouseMove"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>do<wbr/>Mouse<wbr/>Move</span></a></li><li><a href="#doMouseUp"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>do<wbr/>Mouse<wbr/>Up</span></a></li><li><a href="#insertPart"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>insert<wbr/>Part</span></a></li></ul></div></details><div class="tsd-navigation settings"><div class="tsd-theme-toggle"><h4 class="uppercase">Theme</h4><select id="tsd-theme"><option value="os">System</option><option value="light">Light</option><option value="dark">Dark</option></select></div></div></div><div class="site-menu"><nav class="tsd-navigation"><a href="../index.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-1"></use></svg><span>GoJS API</span></a><ul class="tsd-small-nested-navigation" id="tsd-nav-container" data-base=".."><li>Loading...</li></ul></nav></div></div></div><div class="tsd w-full max-w-screen-xl mx-auto px-2"><div class="bottom-copyright">Copyright © 1998-2025 by Northwoods Software Corporation.</div></div><div class="overlay"></div><script async src="https://www.googletagmanager.com/gtag/js?id=G-S5QK8VSK84"></script><script>window.dataLayer = window.dataLayer || []; function gtag(){dataLayer.push(arguments);} gtag('js', new Date()); gtag('config', 'G-S5QK8VSK84'); var getOutboundLink = function(url, label) { gtag('event', 'click', { 'event_category': 'outbound', 'event_label': label, 'transport_type': 'beacon' }); } document.getElementById("contactBtn").addEventListener("click", function() { getOutboundLink('https://nwoods.com/contact.html', 'contact'); }); document.getElementById("buyBtn").addEventListener("click", function() { getOutboundLink('https://nwoods.com/sales/index.html', 'buy'); });</script></body></html>