gojs
Version:
Interactive diagrams, charts, and graphs, such as trees, flowcharts, orgcharts, UML, BPMN, or business diagrams
133 lines • 75.3 kB
HTML
<!DOCTYPE html><html class="default"><head><meta charSet="utf-8"/><meta http-equiv="x-ua-compatible" content="IE=edge"/><title>TextEditingTool | 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 TextEditingTool </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><a href="Tool.html" class="tsd-signature-type" data-tsd-kind="Class">Tool</a><ul class="tsd-hierarchy"><li><span class="target">TextEditingTool</span></li></ul></li></ul></section><section class="tsd-panel tsd-comment"><div class="tsd-comment tsd-typography">
<p>The TextEditingTool is used to let the user interactively edit text in place.
This sets the <a href="TextBlock.html#text">TextBlock.text</a> property; you may want to save the changed text to the model
by using a TwoWay <a href="Binding.html">Binding</a> on the "text" property of editable TextBlocks.</p>
<div><p>Typically this is used by setting the <a href="TextBlock.html#editable">TextBlock.editable</a> property to true
on a particular <a href="TextBlock.html">TextBlock</a> in a part.
When the part is selected and the user clicks on the <a href="TextBlock.html">TextBlock</a>
or invokes the <a href="CommandHandler.html#editTextBlock">CommandHandler.editTextBlock</a> command,
this tool is started and it uses an HTMLTextArea to perform in-place text editing.
(For more details see the description for <a href="TextEditingTool.html#doActivate">TextEditingTool.doActivate</a>.)</p>
<p>The <a href="TextBlock.html">TextBlock</a> is accessible as the <a href="TextEditingTool.html#textBlock">TextEditingTool.textBlock</a> property.
The text editor is accessible as the <a href="TextEditingTool.html#currentTextEditor">TextEditingTool.currentTextEditor</a> property.
From the text editor control one can access the <a href="TextBlock.html">TextBlock</a> being edited via the
'textEditingTool' property to get to this tool, from which one can use
the <a href="TextEditingTool.html#textBlock">TextEditingTool.textBlock</a> property.</p>
<p>You can disable mouse clicking from starting this text editing tool
by setting <a href="Tool.html#isEnabled">Tool.isEnabled</a> to false.
You can disable the F2 key from starting this text editing tool
by making sure <a href="Part.html#canEdit">Part.canEdit</a> returns false,
by either setting <a href="Diagram.html#allowTextEdit">Diagram.allowTextEdit</a> to false
or by setting <a href="Part.html#textEditable">Part.textEditable</a> to false.</p>
<p>If you want to programmatically start the user editing a particular TextBlock,
call <a href="CommandHandler.html#editTextBlock">CommandHandler.editTextBlock</a>.
That command method is also invoked by the F2 key on the keyboard.</p>
<p class="boxread">
For a general discussion of text editing validation, see: <a href="../../intro/validation.html#TextEditingValidation">Introduction to Text Validation</a>.
For customizing the TextEditingTool, read about <a href="HTMLInfo.html">HTMLInfo</a> and see <a href="../../intro/HTMLInteraction.html#TextEditors">Introduction to Text Editors</a>.</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 tsd-is-overwrite"><a href="TextEditingTool.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="TextEditingTool.html#currentTextEditor" class="tsd-kind-icon">current<wbr/>Text<wbr/>Editor</a></li><li class="tsd-kind-accessor tsd-parent-kind-class"><a href="TextEditingTool.html#defaultTextEditor" class="tsd-kind-icon">default<wbr/>Text<wbr/>Editor</a></li><li class="tsd-kind-accessor tsd-parent-kind-class"><a href="TextEditingTool.html#selectsTextOnActivate" class="tsd-kind-icon">selects<wbr/>Text<wbr/>On<wbr/>Activate</a></li><li class="tsd-kind-accessor tsd-parent-kind-class"><a href="TextEditingTool.html#starting" class="tsd-kind-icon">starting</a></li><li class="tsd-kind-accessor tsd-parent-kind-class"><a href="TextEditingTool.html#state" class="tsd-kind-icon">state</a></li><li class="tsd-kind-accessor tsd-parent-kind-class"><a href="TextEditingTool.html#textBlock" class="tsd-kind-icon">text<wbr/>Block</a></li><li class="tsd-kind-accessor tsd-parent-kind-class"><a href="TextEditingTool.html#textValidation" class="tsd-kind-icon">text<wbr/>Validation</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="TextEditingTool.html#acceptText" class="tsd-kind-icon">accept<wbr/>Text</a></li><li class="tsd-kind-method tsd-parent-kind-class tsd-is-overwrite"><a href="TextEditingTool.html#canStart" class="tsd-kind-icon">can<wbr/>Start</a></li><li class="tsd-kind-method tsd-parent-kind-class tsd-is-overwrite"><a href="TextEditingTool.html#doActivate" class="tsd-kind-icon">do<wbr/>Activate</a></li><li class="tsd-kind-method tsd-parent-kind-class tsd-is-overwrite"><a href="TextEditingTool.html#doCancel" class="tsd-kind-icon">do<wbr/>Cancel</a></li><li class="tsd-kind-method tsd-parent-kind-class tsd-is-overwrite"><a href="TextEditingTool.html#doDeactivate" class="tsd-kind-icon">do<wbr/>Deactivate</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="TextEditingTool.html#doError" class="tsd-kind-icon">do<wbr/>Error</a></li><li class="tsd-kind-method tsd-parent-kind-class tsd-is-overwrite"><a href="TextEditingTool.html#doMouseDown" class="tsd-kind-icon">do<wbr/>Mouse<wbr/>Down</a></li><li class="tsd-kind-method tsd-parent-kind-class tsd-is-overwrite"><a href="TextEditingTool.html#doMouseUp" class="tsd-kind-icon">do<wbr/>Mouse<wbr/>Up</a></li><li class="tsd-kind-method tsd-parent-kind-class tsd-is-overwrite"><a href="TextEditingTool.html#doStart" class="tsd-kind-icon">do<wbr/>Start</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="TextEditingTool.html#doSuccess" class="tsd-kind-icon">do<wbr/>Success</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="TextEditingTool.html#isValidText" class="tsd-kind-icon">is<wbr/>Valid<wbr/>Text</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="TextEditingTool.html#measureTemporaryTextBlock" class="tsd-kind-icon">measure<wbr/>Temporary<wbr/>Text<wbr/>Block</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="TextEditingTool.html#static-DoubleClick" class="tsd-kind-icon">Double<wbr/>Click</a></li><li class="tsd-kind-constant tsd-parent-kind-class tsd-is-static"><a href="TextEditingTool.html#static-Enter" class="tsd-kind-icon">Enter</a></li><li class="tsd-kind-constant tsd-parent-kind-class tsd-is-static"><a href="TextEditingTool.html#static-LostFocus" class="tsd-kind-icon">Lost<wbr/>Focus</a></li><li class="tsd-kind-constant tsd-parent-kind-class tsd-is-static"><a href="TextEditingTool.html#static-MouseDown" class="tsd-kind-icon">Mouse<wbr/>Down</a></li><li class="tsd-kind-constant tsd-parent-kind-class tsd-is-static"><a href="TextEditingTool.html#static-SingleClick" class="tsd-kind-icon">Single<wbr/>Click</a></li><li class="tsd-kind-constant tsd-parent-kind-class tsd-is-static"><a href="TextEditingTool.html#static-SingleClickSelected" class="tsd-kind-icon">Single<wbr/>Click<wbr/>Selected</a></li><li class="tsd-kind-constant tsd-parent-kind-class tsd-is-static"><a href="TextEditingTool.html#static-StateActive" class="tsd-kind-icon">State<wbr/>Active</a></li><li class="tsd-kind-constant tsd-parent-kind-class tsd-is-static"><a href="TextEditingTool.html#static-StateEditing" class="tsd-kind-icon">State<wbr/>Editing</a></li><li class="tsd-kind-constant tsd-parent-kind-class tsd-is-static"><a href="TextEditingTool.html#static-StateInvalid" class="tsd-kind-icon">State<wbr/>Invalid</a></li><li class="tsd-kind-constant tsd-parent-kind-class tsd-is-static"><a href="TextEditingTool.html#static-StateNone" class="tsd-kind-icon">State<wbr/>None</a></li><li class="tsd-kind-constant tsd-parent-kind-class tsd-is-static"><a href="TextEditingTool.html#static-StateValidated" class="tsd-kind-icon">State<wbr/>Validated</a></li><li class="tsd-kind-constant tsd-parent-kind-class tsd-is-static"><a href="TextEditingTool.html#static-StateValidating" class="tsd-kind-icon">State<wbr/>Validating</a></li><li class="tsd-kind-constant tsd-parent-kind-class tsd-is-static"><a href="TextEditingTool.html#static-Tab" class="tsd-kind-icon">Tab</a></li></ul></section></div></section></section><section class="tsd-panel-group tsd-index-group tsd-is-inherited"><h2>Inherited Members</h2><section class="tsd-panel tsd-index-panel"><div class="tsd-index-content"><section class="tsd-index-section undefined"><h3>Properties</h3><ul class="tsd-index-list"><li class="tsd-kind-accessor tsd-parent-kind-class"><a href="Tool.html#diagram" class="tsd-kind-icon">Tool.diagram</a></li><li class="tsd-kind-accessor tsd-parent-kind-class"><a href="Tool.html#isActive" class="tsd-kind-icon">Tool.is<wbr/>Active</a></li><li class="tsd-kind-accessor tsd-parent-kind-class"><a href="Tool.html#isEnabled" class="tsd-kind-icon">Tool.is<wbr/>Enabled</a></li><li class="tsd-kind-accessor tsd-parent-kind-class"><a href="Tool.html#name" class="tsd-kind-icon">Tool.name</a></li><li class="tsd-kind-accessor tsd-parent-kind-class"><a href="Tool.html#transactionResult" class="tsd-kind-icon">Tool.transaction<wbr/>Result</a></li></ul></section><section class="tsd-index-section undefined"><h3>Methods</h3><ul class="tsd-index-list"><li class="tsd-kind-method tsd-parent-kind-class"><a href="Tool.html#canStartMultiTouch" class="tsd-kind-icon">Tool.can<wbr/>Start<wbr/>Multi<wbr/>Touch</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="Tool.html#cancelWaitAfter" class="tsd-kind-icon">Tool.cancel<wbr/>Wait<wbr/>After</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="Tool.html#doKeyDown" class="tsd-kind-icon">Tool.do<wbr/>Key<wbr/>Down</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="Tool.html#doKeyUp" class="tsd-kind-icon">Tool.do<wbr/>Key<wbr/>Up</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="Tool.html#doMouseMove" class="tsd-kind-icon">Tool.do<wbr/>Mouse<wbr/>Move</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="Tool.html#doMouseWheel" class="tsd-kind-icon">Tool.do<wbr/>Mouse<wbr/>Wheel</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="Tool.html#doWaitAfter" class="tsd-kind-icon">Tool.do<wbr/>Wait<wbr/>After</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="Tool.html#findToolHandleAt" class="tsd-kind-icon">Tool.find<wbr/>Tool<wbr/>Handle<wbr/>At</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="Tool.html#isBeyondDragSize" class="tsd-kind-icon">Tool.is<wbr/>Beyond<wbr/>Drag<wbr/>Size</a></li><li class="tsd-kind-method tsd-parent-kind-class tsd-has-type-parameter"><a href="Tool.html#standardMouseClick" class="tsd-kind-icon">Tool.standard<wbr/>Mouse<wbr/>Click</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="Tool.html#standardMouseOver" class="tsd-kind-icon">Tool.standard<wbr/>Mouse<wbr/>Over</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="Tool.html#standardMouseSelect" class="tsd-kind-icon">Tool.standard<wbr/>Mouse<wbr/>Select</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="Tool.html#standardMouseWheel" class="tsd-kind-icon">Tool.standard<wbr/>Mouse<wbr/>Wheel</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="Tool.html#standardPinchZoomMove" class="tsd-kind-icon">Tool.standard<wbr/>Pinch<wbr/>Zoom<wbr/>Move</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="Tool.html#standardPinchZoomStart" class="tsd-kind-icon">Tool.standard<wbr/>Pinch<wbr/>Zoom<wbr/>Start</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="Tool.html#standardWaitAfter" class="tsd-kind-icon">Tool.standard<wbr/>Wait<wbr/>After</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="Tool.html#startTransaction" class="tsd-kind-icon">Tool.start<wbr/>Transaction</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="Tool.html#stopTool" class="tsd-kind-icon">Tool.stop<wbr/>Tool</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="Tool.html#stopTransaction" class="tsd-kind-icon">Tool.stop<wbr/>Transaction</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="Tool.html#updateAdornments" class="tsd-kind-icon">Tool.update<wbr/>Adornments</a></li></ul></section></div></section></section><section class="tsd-panel-group tsd-member-group "><h2>Constructors</h2><section class="tsd-panel tsd-member tsd-kind-constructor tsd-parent-kind-class tsd-is-overwrite"><a id="constructor" class="tsd-anchor"></a><h3 class="tsd-anchor-link"> constructor<a href="#constructor" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-constructor tsd-parent-kind-class tsd-is-overwrite"><li class="tsd-signature tsd-kind-icon">new <wbr/>Text<wbr/>Editing<wbr/>Tool<span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="TextEditingTool.html" class="tsd-signature-type" data-tsd-kind="Class">TextEditingTool</a></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><div class="tsd-comment tsd-typography">
<p>You do not normally need to create an instance of this tool
because one already exists as the <a href="ToolManager.html#textEditingTool">ToolManager.textEditingTool</a>, which you can modify.</p>
<div><p>The <a href="Tool.html#name">Tool.name</a> of this tool is "TextEditing".</p>
</div></div><h4 class="tsd-returns-title">Returns <a href="TextEditingTool.html" class="tsd-signature-type" data-tsd-kind="Class">TextEditingTool</a></h4></li></ul></section></section><section class="tsd-panel-group tsd-member-group "><h2>Properties</h2><section class="tsd-panel tsd-member tsd-kind-accessor tsd-parent-kind-class"><a id="currentTextEditor" class="tsd-anchor"></a><h3 class="tsd-anchor-link"> current<wbr/>Text<wbr/>Editor<span class="tsd-signature-symbol">: </span><a href="HTMLInfo.html" class="tsd-signature-type" data-tsd-kind="Class">HTMLInfo</a><a href="#currentTextEditor" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-descriptions"><li class="tsd-description"><div class="tsd-comment tsd-typography">
<p>Gets or sets the <a href="HTMLInfo.html">HTMLInfo</a> that is editing the text.</p>
</div></li></ul></section><section class="tsd-panel tsd-member tsd-kind-accessor tsd-parent-kind-class"><a id="defaultTextEditor" class="tsd-anchor"></a><h3 class="tsd-anchor-link"> default<wbr/>Text<wbr/>Editor<span class="tsd-signature-symbol">: </span><a href="HTMLInfo.html" class="tsd-signature-type" data-tsd-kind="Class">HTMLInfo</a><a href="#defaultTextEditor" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-descriptions"><li class="tsd-description"><div class="tsd-comment tsd-typography">
<p>Gets or sets the default <a href="HTMLInfo.html">HTMLInfo</a> that edits the text.</p>
<div><p>When <a href="TextEditingTool.html#doActivate">TextEditingTool.doActivate</a> is called, the <a href="TextEditingTool.html#currentTextEditor">currentTextEditor</a> is set to this value by default.
If a <a href="TextBlock.html#textEditor">TextBlock.textEditor</a> is specified on the TextBlock, that editor is used instead.</p>
<p>This tool will call <a href="HTMLInfo.html#show">HTMLInfo.show</a> during <a href="TextEditingTool.html#doActivate">doActivate</a>,
and <a href="HTMLInfo.html#hide">HTMLInfo.hide</a> during <a href="TextEditingTool.html#doDeactivate">doDeactivate</a>.</p>
<p>By default the value is an <a href="HTMLInfo.html">HTMLInfo</a>, and the <a href="HTMLInfo.html#mainElement">HTMLInfo.mainElement</a> is an <code>HTMLTextArea</code>.
You can see the default implementation details <a href="../../extensions/TextEditor.html">here</a>.</p>
<p>For typical operation, HTMLInfo implementations should have a way of calling <a href="TextEditingTool.html#acceptText">TextEditingTool.acceptText</a>.</p>
</div></div></li></ul></section><section class="tsd-panel tsd-member tsd-kind-accessor tsd-parent-kind-class"><a id="selectsTextOnActivate" class="tsd-anchor"></a><h3 class="tsd-anchor-link"> selects<wbr/>Text<wbr/>On<wbr/>Activate<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">boolean</span><a href="#selectsTextOnActivate" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-descriptions"><li class="tsd-description"><div class="tsd-comment tsd-typography">
<p>Gets or sets whether to select (highlight) the editable text when the TextEditingTool is activated.
The default is true.</p>
<dl class="tsd-comment-tags"><dt class="">since</dt><dd><p>1.5</p>
</dd></dl></div></li></ul></section><section class="tsd-panel tsd-member tsd-kind-accessor tsd-parent-kind-class"><a id="starting" class="tsd-anchor"></a><h3 class="tsd-anchor-link"> starting<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">EnumValue</span><a href="#starting" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-descriptions"><li class="tsd-description"><div class="tsd-comment tsd-typography">
<p>Gets or sets how user gestures can start in-place editing of text.</p>
<div><p>Possible values are <a href="TextEditingTool.html#static-SingleClickSelected">TextEditingTool.SingleClickSelected</a>, <a href="TextEditingTool.html#static-SingleClick">TextEditingTool.SingleClick</a>, and <a href="TextEditingTool.html#static-DoubleClick">TextEditingTool.DoubleClick</a>.</p>
<p>The default is <a href="TextEditingTool.html#static-SingleClickSelected">TextEditingTool.SingleClickSelected</a></p>
</div></div></li></ul></section><section class="tsd-panel tsd-member tsd-kind-accessor tsd-parent-kind-class"><a id="state" class="tsd-anchor"></a><h3 class="tsd-anchor-link"> state<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">EnumValue</span><a href="#state" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-descriptions"><li class="tsd-description"><div class="tsd-comment tsd-typography">
<p>Gets or sets the state of the TextEditingTool.
The only accepted values are listed as constant properties of TextEditingTool, including:</p>
<ul>
<li><a href="TextEditingTool.html#static-StateNone">TextEditingTool.StateNone</a></li>
<li><a href="TextEditingTool.html#static-StateActive">TextEditingTool.StateActive</a></li>
<li><a href="TextEditingTool.html#static-StateEditing">TextEditingTool.StateEditing</a></li>
<li><a href="TextEditingTool.html#static-StateValidating">TextEditingTool.StateValidating</a></li>
<li><a href="TextEditingTool.html#static-StateValidated">TextEditingTool.StateValidated</a></li>
</ul>
<div><p>The starting value value is <a href="TextEditingTool.html#static-StateNone">TextEditingTool.StateNone</a>,
<a href="TextEditingTool.html#doActivate">TextEditingTool.doActivate</a> sets the value to <a href="TextEditingTool.html#static-StateActive">TextEditingTool.StateActive</a>.
The default text editor receiving focus sets the value to <a href="TextEditingTool.html#static-StateEditing">TextEditingTool.StateEditing</a>.
<a href="TextEditingTool.html#acceptText">TextEditingTool.acceptText</a> sets the value to <a href="TextEditingTool.html#static-StateValidating">TextEditingTool.StateValidating</a>.
Once accepted and the tool begins the "TextEditing" transaction, the value is set to <a href="TextEditingTool.html#static-StateValidated">TextEditingTool.StateValidated</a>.</p>
</div><dl class="tsd-comment-tags"><dt class="">since</dt><dd><p>1.7</p>
</dd></dl></div></li></ul></section><section class="tsd-panel tsd-member tsd-kind-accessor tsd-parent-kind-class"><a id="textBlock" class="tsd-anchor"></a><h3 class="tsd-anchor-link"> text<wbr/>Block<span class="tsd-signature-symbol">: </span><a href="TextBlock.html" class="tsd-signature-type" data-tsd-kind="Class">TextBlock</a><a href="#textBlock" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-descriptions"><li class="tsd-description"><div class="tsd-comment tsd-typography">
<p>Gets or sets the <a href="TextBlock.html">TextBlock</a> that is being edited.
This property is initially null and is set in <a href="TextEditingTool.html#doActivate">TextEditingTool.doActivate</a>
as the <a href="TextBlock.html">TextBlock</a> at the mouse click point.
However, if you set this property beforehand, <a href="TextEditingTool.html#doActivate">TextEditingTool.doActivate</a>
will not set it, and this tool will edit the given <a href="TextBlock.html">TextBlock</a>.</p>
</div></li></ul></section><section class="tsd-panel tsd-member tsd-kind-accessor tsd-parent-kind-class"><a id="textValidation" class="tsd-anchor"></a><h3 class="tsd-anchor-link"> text<wbr/>Validation<span class="tsd-signature-symbol">: </span><span class="tsd-signature-symbol">(</span>aTextBlock<span class="tsd-signature-symbol">: </span><a href="TextBlock.html" class="tsd-signature-type" data-tsd-kind="Class">TextBlock</a>, oldString<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span>, newString<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol"> => </span><span class="tsd-signature-type">boolean</span><a href="#textValidation" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-descriptions"><li class="tsd-description"><div class="tsd-comment tsd-typography">
<p>Gets or sets the predicate that determines whether or not a string of text is valid.
If this is non-null, this predicate is called in addition to any <a href="TextBlock.html#textValidation">TextBlock.textValidation</a> predicate.
See <a href="TextEditingTool.html#isValidText">isValidText</a> for more details.
The default predicate is null, which is equivalent to simply returning true.</p>
<div><p>The function, if supplied, must not have any side-effects.</p>
</div></div></li></ul></section></section><section class="tsd-panel-group tsd-member-group "><h2>Methods</h2><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="acceptText" class="tsd-anchor"></a><h3 class="tsd-anchor-link"><span class="tsd-flag ts-flagVirtual">Virtual</span> accept<wbr/>Text<a href="#acceptText" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">accept<wbr/>Text<span class="tsd-signature-symbol">(</span>reason<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">EnumValue</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><div class="tsd-comment tsd-typography">
<p>Finish editing by trying to accept the new text.</p>
<div><p>Please read the Introduction page on <a href="../../intro/extensions.html">Extensions</a> for how to override methods and how to call this base method.</p>
</div></div><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>reason: <span class="tsd-signature-type">EnumValue</span></h5><div class="tsd-comment tsd-typography">
<p>The reason must be either <a href="TextEditingTool.html#static-LostFocus">TextEditingTool.LostFocus</a>,
<a href="TextEditingTool.html#static-MouseDown">TextEditingTool.MouseDown</a>, <a href="TextEditingTool.html#static-Tab">TextEditingTool.Tab</a>, or <a href="TextEditingTool.html#static-Enter">TextEditingTool.Enter</a>.</p>
</div></li></ul><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class tsd-is-overwrite"><a id="canStart" class="tsd-anchor"></a><h3 class="tsd-anchor-link"><span class="tsd-flag ts-flagOverride">Override</span> <span class="tsd-flag ts-flagVirtual">Virtual</span> can<wbr/>Start<a href="#canStart" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class tsd-is-overwrite"><li class="tsd-signature tsd-kind-icon">can<wbr/>Start<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></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><div class="tsd-comment tsd-typography">
<p>This may run when there is a mouse-click on a <a href="TextBlock.html">TextBlock</a> for which the
<a href="TextBlock.html#editable">TextBlock.editable</a> property is true in a <a href="Part.html">Part</a>
that <a href="Part.html#isSelected">Part.isSelected</a>.</p>
<div><p>This method may be overridden.
Please read the Introduction page on <a href="../../intro/extensions.html">Extensions</a> for how to override methods and how to call this base method.</p>
</div></div><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">boolean</span></h4><div></div></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class tsd-is-overwrite"><a id="doActivate" class="tsd-anchor"></a><h3 class="tsd-anchor-link"><span class="tsd-flag ts-flagOverride">Override</span> do<wbr/>Activate<a href="#doActivate" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class tsd-is-overwrite"><li class="tsd-signature tsd-kind-icon">do<wbr/>Activate<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></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><div class="tsd-comment tsd-typography">
<p>Start editing the text for a <a href="TextEditingTool.html#textBlock">textBlock</a>.</p>
<div><p>If <a href="TextEditingTool.html#textBlock">TextEditingTool.textBlock</a> is not already specified, this looks for one at the current
mouse point. If none is found, this method does nothing.</p>
<p>This method sets <a href="TextEditingTool.html#currentTextEditor">currentTextEditor</a>.
If <a href="TextBlock.html#textEditor">TextBlock.textEditor</a> is defined on the <a href="TextBlock.html">TextBlock</a> it will use that as the value.
By default, it uses the value of <a href="TextEditingTool.html#defaultTextEditor">defaultTextEditor</a>, which is an <a href="HTMLInfo.html">HTMLInfo</a>
showing an HTML textarea, with the CSS class <code>goTXarea</code>.</p>
<p>If the <a href="TextEditingTool.html#currentTextEditor">currentTextEditor</a> is an <a href="HTMLInfo.html">HTMLInfo</a>, this method calls <a href="HTMLInfo.html#show">HTMLInfo.show</a> on that instance.</p>
<p>This sets <a href="Tool.html#isActive">Tool.isActive</a> to true.
Custom text editors should call <a href="TextEditingTool.html#acceptText">TextEditingTool.acceptText</a> to finish the edit
by modifying the <a href="TextBlock.html">TextBlock</a> and committing the edit transaction.
Or call <a href="TextEditingTool.html#doCancel">TextEditingTool.doCancel</a> to abort the edit.</p>
</div></div><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class tsd-is-overwrite"><a id="doCancel" class="tsd-anchor"></a><h3 class="tsd-anchor-link"><span class="tsd-flag ts-flagOverride">Override</span> do<wbr/>Cancel<a href="#doCancel" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class tsd-is-overwrite"><li class="tsd-signature tsd-kind-icon">do<wbr/>Cancel<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></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><div class="tsd-comment tsd-typography">
<p>Abort any text editing operation.</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 tsd-kind-method tsd-parent-kind-class tsd-is-overwrite"><a id="doDeactivate" class="tsd-anchor"></a><h3 class="tsd-anchor-link"><span class="tsd-flag ts-flagOverride">Override</span> do<wbr/>Deactivate<a href="#doDeactivate" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class tsd-is-overwrite"><li class="tsd-signature tsd-kind-icon">do<wbr/>Deactivate<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></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><div class="tsd-comment tsd-typography">
<p>Release the mouse.</p>
<div><p>If the <a href="TextEditingTool.html#currentTextEditor">currentTextEditor</a> is an <a href="HTMLInfo.html">HTMLInfo</a>, this calls <a href="HTMLInfo.html#hide">HTMLInfo.hide</a>.</p>
</div></div><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="doError" class="tsd-anchor"></a><h3 class="tsd-anchor-link"><span class="tsd-flag ts-flagVirtual">Virtual</span> do<wbr/>Error<a href="#doError" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">do<wbr/>Error<span class="tsd-signature-symbol">(</span>oldstring<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span>, newstring<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><div class="tsd-comment tsd-typography">
<p>Call the <a href="TextEditingTool.html#textBlock">textBlock</a>'s <a href="TextBlock.html#errorFunction">TextBlock.errorFunction</a>, if there is one,
and then show the text editor again.
This is called only when the <a href="TextEditingTool.html#isValidText">isValidText</a> method returned false.
The value of <a href="TextEditingTool.html#state">state</a> will be StateInvalid.
This method may be overridden.
You may wish to override this method in order to not continue showing the editor.</p>
<dl class="tsd-comment-tags"><dt class="">since</dt><dd><p>2.1</p>
</dd></dl></div><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>oldstring: <span class="tsd-signature-type">string</span></h5></li><li><h5>newstring: <span class="tsd-signature-type">string</span></h5></li></ul><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class tsd-is-overwrite"><a id="doMouseDown" class="tsd-anchor"></a><h3 class="tsd-anchor-link"><span class="tsd-flag ts-flagOverride">Override</span> do<wbr/>Mouse<wbr/>Down<a href="#doMouseDown" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class tsd-is-overwrite"><li class="tsd-signature tsd-kind-icon">do<wbr/>Mouse<wbr/>Down<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></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><div class="tsd-comment tsd-typography">
<p>This calls <a href="TextEditingTool.html#acceptText">acceptText</a> with the reason <a href="TextEditingTool.html#static-MouseDown">TextEditingTool.MouseDown</a>,
if this tool <a href="Tool.html#isActive">Tool.isActive</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 tsd-kind-method tsd-parent-kind-class tsd-is-overwrite"><a id="doMouseUp" class="tsd-anchor"></a><h3 class="tsd-anchor-link"><span class="tsd-flag ts-flagOverride">Override</span> do<wbr/>Mouse<wbr/>Up<a href="#doMouseUp" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class tsd-is-overwrite"><li class="tsd-signature tsd-kind-icon">do<wbr/>Mouse<wbr/>Up<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></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><div class="tsd-comment tsd-typography">
<p>A click (mouse up) calls <a href="TextEditingTool.html#doActivate">TextEditingTool.doActivate</a> if this tool is not already active
and if <a href="TextEditingTool.html#canStart">TextEditingTool.canStart</a> returns true.</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 tsd-kind-method tsd-parent-kind-class tsd-is-overwrite"><a id="doStart" class="tsd-anchor"></a><h3 class="tsd-anchor-link"><span class="tsd-flag ts-flagOverride">Override</span> do<wbr/>Start<a href="#doStart" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class tsd-is-overwrite"><li class="tsd-signature tsd-kind-icon">do<wbr/>Start<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></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><div class="tsd-comment tsd-typography">
<p>This calls <a href="TextEditingTool.html#doActivate">TextEditingTool.doActivate</a> if there is a
<a href="TextEditingTool.html#textBlock">textBlock</a> set. <a href="TextEditingTool.html#doActivate">doActivate</a> attempts to set <a href="TextEditingTool.html#textBlock">textBlock</a> if it is null.</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 tsd-kind-method tsd-parent-kind-class"><a id="doSuccess" class="tsd-anchor"></a><h3 class="tsd-anchor-link"><span class="tsd-flag ts-flagVirtual">Virtual</span> do<wbr/>Success<a href="#doSuccess" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">do<wbr/>Success<span class="tsd-signature-symbol">(</span>oldstring<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span>, newstring<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><div class="tsd-comment tsd-typography">
<p>Call the <a href="TextEditingTool.html#textBlock">textBlock</a>'s <a href="TextBlock.html#textEdited">TextBlock.textEdited</a> event handler, if there is one.
This is called just after the <a href="TextBlock.html#text">TextBlock.text</a> has been set to the new string value.
When this method returns, this tool raises the "TextEdited" <a href="DiagramEvent.html">DiagramEvent</a>
and commits the transaction.
This method may be overridden.</p>
<dl class="tsd-comment-tags"><dt class="">since</dt><dd><p>2.1</p>
</dd></dl></div><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>oldstring: <span class="tsd-signature-type">string</span></h5></li><li><h5>newstring: <span class="tsd-signature-type">string</span></h5></li></ul><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="isValidText" class="tsd-anchor"></a><h3 class="tsd-anchor-link"><span class="tsd-flag ts-flagVirtual">Virtual</span> is<wbr/>Valid<wbr/>Text<a href="#isValidText" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">is<wbr/>Valid<wbr/>Text<span class="tsd-signature-symbol">(</span>textblock<span class="tsd-signature-symbol">: </span><a href="TextBlock.html" class="tsd-signature-type" data-tsd-kind="Class">TextBlock</a>, oldstr<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span>, newstr<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">boolean</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><div class="tsd-comment tsd-typography">
<p>This predica