gojs
Version:
Interactive diagrams, charts, and graphs, such as trees, flowcharts, orgcharts, UML, BPMN, or business diagrams
107 lines (105 loc) • 24.4 kB
HTML
<html class="default"><head><meta charSet="utf-8"/><meta http-equiv="x-ua-compatible" content="IE=edge"/><title>HTMLInfo | 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 HTMLInfo </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">HTMLInfo</span></li></ul></section><section class="tsd-panel tsd-comment"><div class="tsd-comment tsd-typography">
<p>HTMLInfo is used to show and hide custom HTML page elements, such as a context menu, tooltip, or text editor made of HTML.</p>
<div><p>Properties that can be set to an HTMLInfo include:</p>
<ul>
<li><a href="TextEditingTool.html#defaultTextEditor">TextEditingTool.defaultTextEditor</a></li>
<li><a href="TextBlock.html#textEditor">TextBlock.textEditor</a></li>
<li><a href="GraphObject.html#contextMenu">GraphObject.contextMenu</a></li>
<li><a href="Diagram.html#contextMenu">Diagram.contextMenu</a></li>
<li><a href="GraphObject.html#toolTip">GraphObject.toolTip</a></li>
<li><a href="Diagram.html#toolTip">Diagram.toolTip</a></li>
</ul>
<p>When a context menu is set to an instance of HTMLInfo,
<a href="ContextMenuTool.html#showContextMenu">ContextMenuTool.showContextMenu</a> and <a href="ContextMenuTool.html#hideContextMenu">ContextMenuTool.hideContextMenu</a>
call <a href="HTMLInfo.html#show">show</a> and <a href="HTMLInfo.html#hide">hide</a> respectively. You may define <a href="HTMLInfo.html#mainElement">mainElement</a>
instead of <a href="HTMLInfo.html#hide">hide</a> in order to automatically use a default hide method.</p>
<p>When a tooltip is set to an instance of HTMLInfo,
<a href="ToolManager.html#showToolTip">ToolManager.showToolTip</a> and <a href="ToolManager.html#hideToolTip">ToolManager.hideToolTip</a>
call <a href="HTMLInfo.html#show">show</a> and <a href="HTMLInfo.html#hide">hide</a> respectively.</p>
<p>When a text editor is set to an instance of HTMLInfo,
<a href="TextEditingTool.html#doActivate">TextEditingTool.doActivate</a> calls <a href="HTMLInfo.html#show">show</a> and <a href="TextEditingTool.html#doDeactivate">TextEditingTool.doDeactivate</a> calls <a href="HTMLInfo.html#hide">hide</a>.</p>
<p>For HTMLInfo to work, you must define <a href="HTMLInfo.html#show">show</a>
and either <a href="HTMLInfo.html#hide">hide</a> or <a href="HTMLInfo.html#mainElement">mainElement</a>.
Typical usage will also stop the <a href="ContextMenuTool.html">ContextMenuTool</a> once the desired context action occurs,
typically by calling <code>diagram.currentTool.stopTool();</code>.</p>
<p>Example usage of HTMLInfo can be found in the
<a href="../../samples/customContextMenu.html">Custom Context Menu</a> and
<a href="../../samples/htmlLightBoxContextMenu.html">HTML LightBox Context Menu</a> samples, the
<a href="../../samples/customTextEditingTool.html">Custom TextEditingTool sample</a>, and the
<a href="../../extensions/TextEditor.html">Text Editor implementation extension</a>.</p>
<p>Here is the outline for typical usage of HTMLInfo as a context menu:</p>
<pre><code class="language-js"><span class="hl-0">// Assign an HTMLInfo to the Diagram:</span><br/><span class="hl-4">myDiagram</span><span class="hl-2">.</span><span class="hl-4">contextMenu</span><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">HTMLInfo</span><span class="hl-2">, {</span><br/><span class="hl-2"> </span><span class="hl-4">show:</span><span class="hl-2"> </span><span class="hl-4">showContextMenu</span><span class="hl-2">,</span><br/><span class="hl-2"> </span><span class="hl-4">hide:</span><span class="hl-2"> </span><span class="hl-4">hideContextMenu</span><br/><span class="hl-2">});</span><br/><br/><span class="hl-1">function</span><span class="hl-2"> </span><span class="hl-5">showContextMenu</span><span class="hl-2">(</span><span class="hl-4">obj</span><span class="hl-2">, </span><span class="hl-4">diagram</span><span class="hl-2">, </span><span class="hl-4">tool</span><span class="hl-2">) {</span><br/><span class="hl-2"> </span><span class="hl-0">// Show the context menu HTML element:</span><br/><span class="hl-2"> </span><span class="hl-4">SomeDOMElement</span><span class="hl-2">.</span><span class="hl-4">style</span><span class="hl-2">.</span><span class="hl-4">display</span><span class="hl-2"> = </span><span class="hl-6">"block"</span><span class="hl-2">;</span><br/><br/><span class="hl-2"> </span><span class="hl-0">// Also show relevant buttons given the current state</span><br/><span class="hl-2"> </span><span class="hl-0">// and the GraphObject obj; if null, the context menu is for the whole Diagram</span><br/><span class="hl-2">}</span><br/><br/><span class="hl-1">function</span><span class="hl-2"> </span><span class="hl-5">hideContextMenu</span><span class="hl-2">() {</span><br/><span class="hl-2"> </span><span class="hl-4">SomeDOMElement</span><span class="hl-2">.</span><span class="hl-4">style</span><span class="hl-2">.</span><span class="hl-4">display</span><span class="hl-2"> = </span><span class="hl-6">"none"</span><span class="hl-2">;</span><br/><span class="hl-2">}</span><br/><br/><span class="hl-1">function</span><span class="hl-2"> </span><span class="hl-5">buttonClick</span><span class="hl-2">() {</span><br/><span class="hl-2"> </span><span class="hl-0">// do some action when a context menu button is clicked</span><br/><br/><span class="hl-2"> </span><span class="hl-0">// then:</span><br/><span class="hl-2"> </span><span class="hl-4">myDiagram</span><span class="hl-2">.</span><span class="hl-4">currentTool</span><span class="hl-2">.</span><span class="hl-5">stopTool</span><span class="hl-2">();</span><br/><span class="hl-2">}</span>
</code></pre>
<p>By default, <a href="TextEditingTool.html#defaultTextEditor">TextEditingTool.defaultTextEditor</a> is an instance of HTMLInfo.
You can see its default implementation details <a href="../../extensions/TextEditor.html">here</a>.</p>
</div><dl class="tsd-comment-tags"><dt class="">since</dt><dd><p>1.7</p>
</dd></dl></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="HTMLInfo.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="HTMLInfo.html#hide" class="tsd-kind-icon">hide</a></li><li class="tsd-kind-accessor tsd-parent-kind-class"><a href="HTMLInfo.html#mainElement" class="tsd-kind-icon">main<wbr/>Element</a></li><li class="tsd-kind-accessor tsd-parent-kind-class"><a href="HTMLInfo.html#show" class="tsd-kind-icon">show</a></li><li class="tsd-kind-accessor tsd-parent-kind-class"><a href="HTMLInfo.html#valueFunction" class="tsd-kind-icon">value<wbr/>Function</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"><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"><li class="tsd-signature tsd-kind-icon">new HTMLInfo<span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="HTMLInfo.html" class="tsd-signature-type" data-tsd-kind="Class">HTMLInfo</a></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><div class="tsd-comment tsd-typography">
<p>A newly constructed HTMLInfo can be assigned as a value of <a href="TextEditingTool.html#defaultTextEditor">TextEditingTool.defaultTextEditor</a>, <a href="TextBlock.html#textEditor">TextBlock.textEditor</a>
<a href="GraphObject.html#contextMenu">GraphObject.contextMenu</a>, <a href="Diagram.html#contextMenu">Diagram.contextMenu</a>, <a href="GraphObject.html#toolTip">GraphObject.toolTip</a>, or <a href="Diagram.html#toolTip">Diagram.toolTip</a>.</p>
</div><h4 class="tsd-returns-title">Returns <a href="HTMLInfo.html" class="tsd-signature-type" data-tsd-kind="Class">HTMLInfo</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="hide" class="tsd-anchor"></a><h3 class="tsd-anchor-link"> hide<span class="tsd-signature-symbol">: </span><span class="tsd-signature-symbol">(</span>a<span class="tsd-signature-symbol">: </span><a href="Diagram.html" class="tsd-signature-type" data-tsd-kind="Class">Diagram</a>, b<span class="tsd-signature-symbol">: </span><a href="Tool.html" class="tsd-signature-type" data-tsd-kind="Class">Tool</a><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol"> => </span><span class="tsd-signature-type">void</span><a href="#hide" 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 function to call when an HTMLInfo is to be hidden.
The function should "hide" the HTMLInfo, either by removing any traces of it or otherwise
returning the page state to one where the HTMLInfo content is no longer considered active.</p>
<div><p>Setting this is not strictly necessary, if no action is to be taken when hiding the HTMLInfo.</p>
<p>If this is called by:</p>
<ul>
<li><a href="ContextMenuTool.html#hideContextMenu">ContextMenuTool.hideContextMenu</a>, the second argument is the <a href="ContextMenuTool.html">ContextMenuTool</a>.</li>
<li><a href="ToolManager.html#hideToolTip">ToolManager.hideToolTip</a>, the second argument is the <a href="ToolManager.html">ToolManager</a>.</li>
<li><a href="TextEditingTool.html#doDeactivate">TextEditingTool.doDeactivate</a>, the second argument is the <a href="TextEditingTool.html">TextEditingTool</a>.</li>
</ul>
</div><dl class="tsd-comment-tags"><dt class="">see</dt><dd><p><a href="HTMLInfo.html#mainElement">mainElement</a></p>
</dd></dl></div></li></ul></section><section class="tsd-panel tsd-member tsd-kind-accessor tsd-parent-kind-class"><a id="mainElement" class="tsd-anchor"></a><h3 class="tsd-anchor-link"> main<wbr/>Element<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">HTMLElement</span><a href="#mainElement" 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 primary HTML Element that represents this HTMLInfo.
In a context menu, this would be the outermost HTML element, the one which typically
shows and hides. If this is set and <a href="HTMLInfo.html#hide">hide</a> is not, HTMLInfo will automatically execute:</p>
<pre><code class="language-js"><span class="hl-2"> </span><span class="hl-4">tool</span><span class="hl-2">.</span><span class="hl-4">mainElement</span><span class="hl-2">.</span><span class="hl-4">style</span><span class="hl-2">.</span><span class="hl-4">display</span><span class="hl-2"> = </span><span class="hl-6">"none"</span><span class="hl-2">;</span>
</code></pre>
<div><p>when <a href="HTMLInfo.html#hide">hide</a> would typically be called.</p>
<p>This is set only for convenience; the default value for this property is null.</p>
</div><dl class="tsd-comment-tags"><dt class="">see</dt><dd><p><a href="HTMLInfo.html#hide">hide</a></p>
</dd></dl></div></li></ul></section><section class="tsd-panel tsd-member tsd-kind-accessor tsd-parent-kind-class"><a id="show" class="tsd-anchor"></a><h3 class="tsd-anchor-link"> show<span class="tsd-signature-symbol">: </span><span class="tsd-signature-symbol">(</span>a<span class="tsd-signature-symbol">: </span><a href="GraphObject.html" class="tsd-signature-type" data-tsd-kind="Class">GraphObject</a>, b<span class="tsd-signature-symbol">: </span><a href="Diagram.html" class="tsd-signature-type" data-tsd-kind="Class">Diagram</a>, c<span class="tsd-signature-symbol">: </span><a href="Tool.html" class="tsd-signature-type" data-tsd-kind="Class">Tool</a><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol"> => </span><span class="tsd-signature-type">void</span><a href="#show" 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 function to call when an HTMLInfo is to be shown,
such as when used as the <a href="GraphObject.html#contextMenu">GraphObject.contextMenu</a> or <a href="Diagram.html#toolTip">Diagram.toolTip</a> or <a href="TextBlock.html#textEditor">TextBlock.textEditor</a>.</p>
<div><p>If this is called by:</p>
<ul>
<li><a href="ContextMenuTool.html#showContextMenu">ContextMenuTool.showContextMenu</a>, the first argument is the <a href="GraphObject.html">GraphObject</a> for which the context menu is being shown, or null for the diagram background.</li>
<li><a href="ToolManager.html#showToolTip">ToolManager.showToolTip</a>, the first argument is the <a href="GraphObject.html">GraphObject</a> for which the tooltip is being shown, or null for the diagram background.</li>
<li><a href="TextEditingTool.html#doActivate">TextEditingTool.doActivate</a>, the first argument is the <a href="TextBlock.html">TextBlock</a> for which the text editor is being shown.</li>
</ul>
<p>If you need access to any bound data for the first argument, if it is non-null, you can get it via:
<code>obj.part.data</code>
and then you can look at any of the properties you have put on that data.</p>
<p>When used as a context menu, typically shown elements, such as buttons, should call
<code>diagram.currentTool.stopTool();</code> when their action is completed.</p>
</div></div></li></ul></section><section class="tsd-panel tsd-member tsd-kind-accessor tsd-parent-kind-class"><a id="valueFunction" class="tsd-anchor"></a><h3 class="tsd-anchor-link"> value<wbr/>Function<span class="tsd-signature-symbol">: </span><span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol"> => </span><span class="tsd-signature-type">any</span><a href="#valueFunction" 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 a function that returns the primary value associated with this HTMLInfo,
such as the string value of a text editor, which would be solicited by the <a href="TextEditingTool.html">TextEditingTool</a>.</p>
<div><p>This typically returns a string.</p>
</div></div></li></ul></section></section></div><div class="col-4 col-menu menu-sticky-wrap menu-highlight"><nav class="tsd-navigation primary"><ul><li class=""><a href="../index.html">GoJS Class Index</a></li></ul></nav><nav class="tsd-navigation secondary menu-sticky"><ul><li class="current tsd-kind-class"><a href="HTMLInfo.html" class="tsd-kind-icon">HTMLInfo</a><ul><li class="tsd-kind-constructor tsd-parent-kind-class"><a href="HTMLInfo.html#constructor" class="tsd-kind-icon">constructor</a></li><li class="tsd-kind-accessor tsd-parent-kind-class"><a href="HTMLInfo.html#hide" class="tsd-kind-icon">hide</a></li><li class="tsd-kind-accessor tsd-parent-kind-class"><a href="HTMLInfo.html#mainElement" class="tsd-kind-icon">main<wbr/>Element</a></li><li class="tsd-kind-accessor tsd-parent-kind-class"><a href="HTMLInfo.html#show" class="tsd-kind-icon">show</a></li><li class="tsd-kind-accessor tsd-parent-kind-class"><a href="HTMLInfo.html#valueFunction" class="tsd-kind-icon">value<wbr/>Function</a></li></ul></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-2022 by Northwoods Software Corporation.</div></div><footer class=""><div class="tsd w-full max-w-screen-xl mx-auto px-2"><h2>Settings</h2><p class="mb-4">Theme <select id="theme"><option value="os">OS</option><option value="light">Light</option><option value="dark">Dark</option></select></p></div></footer><div class="overlay"></div><script src="../assets/main.js"></script><script async src="https://www.googletagmanager.com/gtag/js?id=UA-1506307-5"></script>
<script>
window.dataLayer = window.dataLayer || [];
function gtag(){dataLayer.push(arguments);}
gtag('js', new Date()); gtag('config', 'UA-1506307-5');
var getOutboundLink = function(url, label) {
gtag('event', 'click', {
'event_category': 'outbound',
'event_label': label,
'transport_type': 'beacon'
});
}
// topnav
var topButton = document.getElementById("topnavButton");
var topnavList = document.getElementById("topnavList");
topButton.addEventListener("click", function() {
this.classList.toggle("active");
topnavList.classList.toggle("hidden");
document.getElementById("topnavOpen").classList.toggle("hidden");
document.getElementById("topnavClosed").classList.toggle("hidden");
});
document.getElementById("contactBtn").addEventListener("click", function() {
getOutboundLink('https://www.nwoods.com/contact.html', 'contact');
});
document.getElementById("buyBtn").addEventListener("click", function() {
getOutboundLink('https://www.nwoods.com/sales/index.html', 'buy');
});
</script></body></html>