<divid=Content><divclass="CClass"><divclass=CTopicid=MainTopic><h1class=CTitle><aname="mxGraphView"></a>mxGraphView</h1><divclass=CBody><p>Extends <ahref="../util/mxEventSource-js.html#mxEventSource"class=LClassid=link148onMouseOver="ShowTip(event, 'tt1', 'link148')"onMouseOut="HideTip('tt1')">mxEventSource</a> to implement a view for a graph. This class is in charge of computing the absolute coordinates for the relative child geometries, the points for perimeters and edge styles and keeping them cached in <ahref="mxCellState-js.html#mxCellState"class=LClassid=link149onMouseOver="ShowTip(event, 'tt42', 'link149')"onMouseOut="HideTip('tt42')">mxCellStates</a> for faster retrieval. The states are updated whenever the model or the view state (translate, scale) changes. The scale and translate are honoured in the bounds.</p><!--START_ND_SUMMARY--><divclass=Summary><divclass=STitle>Summary</div><divclass=SBorder><tableborder=0cellspacing=0cellpadding=0class=STable><trclass="SMain"><tdclass=SEntry><ahref="#mxGraphView">mxGraphView</a></td><tdclass=SDescription>Extends <ahref="../util/mxEventSource-js.html#mxEventSource"class=LClassid=link1onMouseOver="ShowTip(event, 'tt1', 'link1')"onMouseOut="HideTip('tt1')">mxEventSource</a> to implement a view for a graph. </td></tr><trclass="SGroup SIndent1"><tdclass=SEntry><ahref="#mxGraphView.Events">Events</a></td><tdclass=SDescription></td></tr><trclass="SEvent SIndent2 SMarked"><tdclass=SEntry><ahref="#mxGraphView.mxEvent.UNDO">mxEvent.UNDO</a></td><tdclass=SDescription>Fires after the root was changed in <ahref="#mxGraphView.setCurrentRoot"class=LFunctionid=link2onMouseOver="ShowTip(event, 'tt2', 'link2')"onMouseOut="HideTip('tt2')">setCurrentRoot</a>. </td></tr><trclass="SEvent SIndent2"><tdclass=SEntry><ahref="#mxGraphView.mxEvent.SCALE_AND_TRANSLATE">mxEvent.<wbr>SCALE_AND_TRANSLATE</a></td><tdclass=SDescription>Fires after the scale and translate have been changed in <ahref="#mxGraphView.scaleAndTranslate"class=LFunctionid=link3onMouseOver="ShowTip(event, 'tt3', 'link3')"onMouseOut="HideTip('tt3')">scaleAndTranslate</a>. </td></tr><trclass="SEvent SIndent2 SMarked"><tdclass=SEntry><ahref="#mxGraphView.mxEvent.SCALE">mxEvent.<wbr>SCALE</a></td><tdclass=SDescription>Fires after the scale was changed in <ahref="#mxGraphView.setScale"class=LFunctionid=link4onMouseOver="ShowTip(event, 'tt4', 'link4')"onMouseOut="HideTip('tt4')">setScale</a>. </td></tr><trclass="SEvent SIndent2"><tdclass=SEntry><ahref="#mxGraphView.mxEvent.TRANSLATE">mxEvent.<wbr>TRANSLATE</a></td><tdclass=SDescription>Fires after the translate was changed in <ahref="#mxGraphView.setTranslate"class=LFunctionid=link5onMouseOver="ShowTip(event, 'tt5', 'link5')"onMouseOut="HideTip('tt5')">setTranslate</a>. </td></tr><trclass="SEvent SIndent2 SMarked"><tdclass=SEntry><ahref="#mxGraphView.mxEvent.DOWN_and_mxEvent.UP">mxEvent.<wbr>DOWN and mxEvent.UP</a></td><tdclass=SDescription>Fire if the current root is changed by executing an <ahref="#mxCurrentRootChange"class=LClassid=link6onMouseOver="ShowTip(event, 'tt6', 'link6')"onMouseOut="HideTip('tt6')">mxCurrentRootChange</a>. </td></tr><trclass="SGroup SIndent1"><tdclass=SEntry><ahref="#mxGraphView.Functions">Functions</a></td><tdclass=SDescription></td></tr><trclass="SFunction SIndent2 SMarked"><tdclass=SEntry><ahref="#mxGraphView.mxGraphView"id=link7onMouseOver="ShowTip(event, 'tt7', 'link7')"onMouseOut="HideTip('tt7')">mxGraphView</a></td><tdclass=SDescription>Constructs a new view for the given <ahref="mxGraph-js.html#mxGraph"class=LClassid=link8onMouseOver="ShowTip(event, 'tt8', 'link8')"onMouseOut="HideTip('tt8')">mxGraph</a>.</td></tr><trclass="SGroup SIndent1"><tdclass=SEntry><ahref="#mxGraphView.Variables">Variables</a></td><tdclass=SDescription></td></tr><trclass="SVariable SIndent2 SMarked"><tdclass=SEntry><ahref="#mxGraphView.doneResource"id=link9onMouseOver="ShowTip(event, 'tt9', 'link9')"onMouseOut="HideTip('tt9')">doneResource</
<divclass="CEvent"><divclass=CTopic><h3class=CTitle><aname="mxGraphView.mxEvent.UNDO"></a>mxEvent.UNDO</h3><divclass=CBody><p>Fires after the root was changed in <ahref="#mxGraphView.setCurrentRoot"class=LFunctionid=link150onMouseOver="ShowTip(event, 'tt2', 'link150')"onMouseOut="HideTip('tt2')">setCurrentRoot</a>. The <code>edit</code> property contains the <ahref="../util/mxUndoableEdit-js.html#mxUndoableEdit"class=LClassid=link151onMouseOver="ShowTip(event, 'tt101', 'link151')"onMouseOut="HideTip('tt101')">mxUndoableEdit</a> which contains the <ahref="#mxCurrentRootChange"class=LClassid=link152onMouseOver="ShowTip(event, 'tt6', 'link152')"onMouseOut="HideTip('tt6')">mxCurrentRootChange</a>.</p></div></div></div>
<divclass="CEvent"><divclass=CTopic><h3class=CTitle><aname="mxGraphView.mxEvent.SCALE_AND_TRANSLATE"></a>mxEvent.<wbr>SCALE_AND_TRANSLATE</h3><divclass=CBody><p>Fires after the scale and translate have been changed in <ahref="#mxGraphView.scaleAndTranslate"class=LFunctionid=link153onMouseOver="ShowTip(event, 'tt3', 'link153')"onMouseOut="HideTip('tt3')">scaleAndTranslate</a>. The <code>scale</code>, <code>previousScale</code>, <code>translate</code> and <code>previousTranslate</code> properties contain the new and previous scale and translate, respectively.</p></div></div></div>
<divclass="CEvent"><divclass=CTopic><h3class=CTitle><aname="mxGraphView.mxEvent.SCALE"></a>mxEvent.<wbr>SCALE</h3><divclass=CBody><p>Fires after the scale was changed in <ahref="#mxGraphView.setScale"class=LFunctionid=link154onMouseOver="ShowTip(event, 'tt4', 'link154')"onMouseOut="HideTip('tt4')">setScale</a>. The <code>scale</code> and <code>previousScale</code> properties contain the new and previous scale.</p></div></div></div>
<divclass="CEvent"><divclass=CTopic><h3class=CTitle><aname="mxGraphView.mxEvent.TRANSLATE"></a>mxEvent.<wbr>TRANSLATE</h3><divclass=CBody><p>Fires after the translate was changed in <ahref="#mxGraphView.setTranslate"class=LFunctionid=link155onMouseOver="ShowTip(event, 'tt5', 'link155')"onMouseOut="HideTip('tt5')">setTranslate</a>. The <code>translate</code> and <code>previousTranslate</code> properties contain the new and previous value for translate.</p></div></div></div>
<divclass="CEvent"><divclass=CTopic><h3class=CTitle><aname="mxGraphView.mxEvent.DOWN_and_mxEvent.UP"></a>mxEvent.<wbr>DOWN and mxEvent.UP</h3><divclass=CBody><p>Fire if the current root is changed by executing an <ahref="#mxCurrentRootChange"class=LClassid=link156onMouseOver="ShowTip(event, 'tt6', 'link156')"onMouseOut="HideTip('tt6')">mxCurrentRootChange</a>. The event name depends on the location of the root in the cell hierarchy with respect to the current root. The <code>root</code> and <code>previous</code> properties contain the new and previous root, respectively.</p></div></div></div>
<divclass="CFunction"><divclass=CTopic><h3class=CTitle><aname="mxGraphView.mxGraphView"></a>mxGraphView</h3><divclass=CBody><blockquote><tableborder=0cellspacing=0cellpadding=0class="Prototype prettyprint"><tr><td><tableborder=0cellspacing=0cellpadding=0><tr><tdclass=PBeforeParametersnowrap>function mxGraphView(</td><tdclass=PParameternowrap>graph</td><tdclass=PAfterParametersnowrap>)</td></tr></table></td></tr></table></blockquote><p>Constructs a new view for the given <ahref="mxGraph-js.html#mxGraph"class=LClassid=link157onMouseOver="ShowTip(event, 'tt8', 'link157')"onMouseOut="HideTip('tt8')">mxGraph</a>.</p><h4class=CHeading>Parameters</h4><tableborder=0cellspacing=0cellpadding=0class=CDescriptionList><tr><tdclass=CDLEntry>graph</td><tdclass=CDLDescription>Reference to the enclosing <ahref="mxGraph-js.html#mxGraph"class=LClassid=link158onMouseOver="ShowTip(event, 'tt8', 'link158')"onMouseOut="HideTip('tt8')">mxGraph</a>.</td></tr></table></div></div></div>
<divclass="CVariable"><divclass=CTopic><h3class=CTitle><aname="mxGraphView.doneResource"></a>doneResource</h3><divclass=CBody><blockquote><tableborder=0cellspacing=0cellpadding=0class="Prototype prettyprint"><tr><td>mxGraphView.prototype.doneResource</td></tr></table></blockquote><p>Specifies the resource key for the status message after a long operation. If the resource for this key does not exist then the value is used as the status message. Default is ‘done’.</p></div></div></div>
<divclass="CFunction"><divclass=CTopic><h3class=CTitle><aname="mxGraphView.updatingDocumentResource"></a>updatingDocumentResource</h3><divclass=CBody><p>Specifies the resource key for the status message while the document is being updated. If the resource for this key does not exist then the value is used as the status message. Default is ‘updatingDocument’.</p></div></div></div>
<divclass="CVariable"><divclass=CTopic><h3class=CTitle><aname="mxGraphView.allowEval"></a>allowEval</h3><divclass=CBody><blockquote><tableborder=0cellspacing=0cellpadding=0class="Prototype prettyprint"><tr><td>mxGraphView.prototype.allowEval</td></tr></table></blockquote><p>Specifies if string values in cell styles should be evaluated using <ahref="../util/mxUtils-js.html#mxUtils.eval"class=LFunctionid=link159onMouseOver="ShowTip(event, 'tt11', 'link159')"onMouseOut="HideTip('tt11')">mxUtils.eval</a>. This will only be used if the string values can’t be mapped to objects using <ahref="mxStyleRegistry-js.html#mxStyleRegistry"class=LClassid=link160onMouseOver="ShowTip(event, 'tt102', 'link160')"onMouseOut="HideTip('tt102')">mxStyleRegistry</a>. Default is false. NOTE: Enabling this switch carries a possible security risk (see the section on security in the manual).</p></div></div></div>
<divclass="CVariable"><divclass=CTopic><h3class=CTitle><aname="mxGraphView.captureDocumentGesture"></a>captureDocumentGesture</h3><divclass=CBody><blockquote><tableborder=0cellspacing=0cellpadding=0class="Prototype prettyprint"><tr><td>mxGraphView.prototype.captureDocumentGesture</td></tr></table></blockquote><p>Specifies if a gesture should be captured when it goes outside of the graph container. Default is true.</p></div></div></div>
<divclass="CVariable"><divclass=CTopic><h3class=CTitle><aname="mxGraphView.optimizeVmlReflows"></a>optimizeVmlReflows</h3><divclass=CBody><blockquote><tableborder=0cellspacing=0cellpadding=0class="Prototype prettyprint"><tr><td>mxGraphView.prototype.optimizeVmlReflows</td></tr></table></blockquote><p>Specifies if the <canvas> should be hidden while rendering in IE8 standards mode and quirks mode. This will significantly improve rendering performance. Default is true.</p></div></div></div>
<divclass="CVariable"><divclass=CTopic><h3class=CTitle><aname="mxGraphView.rendering"></a>rendering</h3><divclass=CBody><blockquote><tableborder=0cellspacing=0cellpadding=0class="Prototype prettyprint"><tr><td>mxGraphView.prototype.rendering</td></tr></table></blockquote><p>Specifies if shapes should be created, updated and destroyed using the methods of <ahref="mxCellRenderer-js.html#mxCellRenderer"class=LClassid=link161onMouseOver="ShowTip(event, 'tt15', 'link161')"onMouseOut="HideTip('tt15')">mxCellRenderer</a> in <ahref="#mxGraphView.graph"class=LVariableid=link162onMouseOver="ShowTip(event, 'tt16', 'link162')"onMouseOut="HideTip('tt16')">graph</a>. Default is true.</p></div></div></div>
<divclass="CVariable"><divclass=CTopic><h3class=CTitle><aname="mxGraphView.graph"></a>graph</h3><divclass=CBody><blockquote><tableborder=0cellspacing=0cellpadding=0class="Prototype prettyprint"><tr><td>mxGraphView.prototype.graph</td></tr></table></blockquote><p>Reference to the enclosing <ahref="mxGraph-js.html#mxGraph"class=LClassid=link163onMouseOver="ShowTip(event, 'tt8', 'link163')"onMouseOut="HideTip('tt8')">mxGraph</a>.</p></div></div></div>
<divclass="CVariable"><divclass=CTopic><h3class=CTitle><aname="mxGraphView.currentRoot"></a>currentRoot</h3><divclass=CBody><blockquote><tableborder=0cellspacing=0cellpadding=0class="Prototype prettyprint"><tr><td>mxGraphView.prototype.currentRoot</td></tr></table></blockquote><p><ahref="../model/mxCell-js.html#mxCell"class=LClassid=link164onMouseOver="ShowTip(event, 'tt18', 'link164')"onMouseOut="HideTip('tt18')">mxCell</a> that acts as the root of the displayed cell hierarchy.</p></div></div></div>
<divclass="CVariable"><divclass=CTopic><h3class=CTitle><aname="mxGraphView.graphBounds"></a>graphBounds</h3><divclass=CBody><blockquote><tableborder=0cellspacing=0cellpadding=0class="Prototype prettyprint"><tr><td>mxGraphView.prototype.graphBounds</td></tr></table></blockquote><p><ahref="../util/mxRectangle-js.html#mxRectangle"class=LClassid=link165onMouseOver="ShowTip(event, 'tt20', 'link165')"onMouseOut="HideTip('tt20')">mxRectangle</a> that caches the scales, translated bounds of the current view.</p></div></div></div>
<divclass="CVariable"><divclass=CTopic><h3class=CTitle><aname="mxGraphView.scale"></a>scale</h3><divclass=CBody><blockquote><tableborder=0cellspacing=0cellpadding=0class="Prototype prettyprint"><tr><td>mxGraphView.prototype.scale</td></tr></table></blockquote><p>Specifies the scale. Default is 1 (100%).</p></div></div></div>
<divclass="CVariable"><divclass=CTopic><h3class=CTitle><aname="mxGraphView.translate"></a>translate</h3><divclass=CBody><blockquote><tableborder=0cellspacing=0cellpadding=0class="Prototype prettyprint"><tr><td>mxGraphView.prototype.translate</td></tr></table></blockquote><p><ahref="../util/mxPoint-js.html#mxPoint"class=LClassid=link166onMouseOver="ShowTip(event, 'tt23', 'link166')"onMouseOut="HideTip('tt23')">mxPoint</a> that specifies the current translation. Default is a new empty <ahref="../util/mxPoint-js.html#mxPoint"class=LClassid=link167onMouseOver="ShowTip(event, 'tt23', 'link167')"onMouseOut="HideTip('tt23')">mxPoint</a>.</p></div></div></div>
<divclass="CVariable"><divclass=CTopic><h3class=CTitle><aname="mxGraphView.updateStyle"></a>updateStyle</h3><divclass=CBody><blockquote><tableborder=0cellspacing=0cellpadding=0class="Prototype prettyprint"><tr><td>mxGraphView.prototype.updateStyle</td></tr></table></blockquote><p>Specifies if the style should be updated in each validation step. If this is false then the style is only updated if the state is created or if the style of the cell was changed. Default is false.</p></div></div></div>
<divclass="CVariable"><divclass=CTopic><h3class=CTitle><aname="mxGraphView.lastNode"></a>lastNode</h3><divclass=CBody><blockquote><tableborder=0cellspacing=0cellpadding=0class="Prototype prettyprint"><tr><td>mxGraphView.prototype.lastNode</td></tr></table></blockquote><p>During validation, this contains the last DOM node that was processed.</p></div></div></div>
<divclass="CVariable"><divclass=CTopic><h3class=CTitle><aname="mxGraphView.lastHtmlNode"></a>lastHtmlNode</h3><divclass=CBody><blockquote><tableborder=0cellspacing=0cellpadding=0class="Prototype prettyprint"><tr><td>mxGraphView.prototype.lastHtmlNode</td></tr></table></blockquote><p>During validation, this contains the last HTML DOM node that was processed.</p></div></div></div>
<divclass="CVariable"><divclass=CTopic><h3class=CTitle><aname="mxGraphView.lastEdgeNode"></a>lastEdgeNode</h3><divclass=CBody><blockquote><tableborder=0cellspacing=0cellpadding=0class="Prototype prettyprint"><tr><td>mxGraphView.prototype.lastEdgeNode</td></tr></table></blockquote><p>During validation, this contains the last edge’s DOM node that was processed.</p></div></div></div>
<divclass="CFunction"><divclass=CTopic><h3class=CTitle><aname="mxGraphView.getBounds"></a>getBounds</h3><divclass=CBody><blockquote><tableborder=0cellspacing=0cellpadding=0class="Prototype prettyprint"><tr><td><tableborder=0cellspacing=0cellpadding=0><tr><tdclass=PBeforeParametersnowrap>mxGraphView.prototype.getBounds = function(</td><tdclass=PParameternowrap>cells</td><tdclass=PAfterParametersnowrap>)</td></tr></table></td></tr></table></blockquote><p>Returns the bounds (on the screen) for the given array of <ahref="../model/mxCell-js.html#mxCell"class=LClassid=link170onMouseOver="ShowTip(event, 'tt18', 'link170')"onMouseOut="HideTip('tt18')">mxCells</a>.</p><h4class=CHeading>Parameters</h4><tableborder=0cellspacing=0cellpadding=0class=CDescriptionList><tr><tdclass=CDLEntry>cells</td><tdclass=CDLDescription>Array of <ahref="../model/mxCell-js.html#mxCell"class=LClassid=link171onMouseOver="ShowTip(event, 'tt18', 'link171')"onMouseOut="HideTip('tt18')">mxCells</a> to return the bounds for.</td></tr></table></div></div></div>
<divclass="CFunction"><divclass=CTopic><h3class=CTitle><aname="mxGraphView.setCurrentRoot"></a>setCurrentRoot</h3><divclass=CBody><blockquote><tableborder=0cellspacing=0cellpadding=0class="Prototype prettyprint"><tr><td><tableborder=0cellspacing=0cellpadding=0><tr><tdclass=PBeforeParametersnowrap>mxGraphView.prototype.setCurrentRoot = function(</td><tdclass=PParameternowrap>root</td><tdclass=PAfterParametersnowrap>)</td></tr></table></td></tr></table></blockquote><p>Sets and returns the current root and fires an <undo> event before calling <ahref="mxGraph-js.html#mxGraph.sizeDidChange"class=LFunctionid=link172onMouseOver="ShowTip(event, 'tt31', 'link172')"onMouseOut="HideTip('tt31')">mxGraph.sizeDidChange</a>.</p><h4class=CHeading>Parameters</h4><tableborder=0cellspacing=0cellpadding=0class=CDescriptionList><tr><tdclass=CDLEntry>root</td><tdclass=CDLDescription><ahref="../model/mxCell-js.html#mxCell"class=LClassid=link173onMouseOver="ShowTip(event, 'tt18', 'link173')"onMouseOut="HideTip('tt18')">mxCell</a> that specifies the root of the displayed cell hierarchy.</td></tr></table></div></div></div>
<divclass="CFunction"><divclass=CTopic><h3class=CTitle><aname="mxGraphView.scaleAndTranslate"></a>scaleAndTranslate</h3><divclass=CBody><blockquote><tableborder=0cellspacing=0cellpadding=0class="Prototype prettyprint"><tr><td><tableborder=0cellspacing=0cellpadding=0><tr><tdclass=PBeforeParametersnowrap>mxGraphView.prototype.scaleAndTranslate = function(</td><tdclass=PParameternowrap>scale,</td></tr><tr><td></td><tdclass=PParameternowrap>dx,</td></tr><tr><td></td><tdclass=PParameternowrap>dy</td><tdclass=PAfterParametersnowrap>)</td></tr></table></td></tr></table></blockquote><p>Sets the scale and translation and fires a <ahref="#mxGraphView.scale"class=LVariableid=link174onMouseOver="ShowTip(event, 'tt21', 'link174')"onMouseOut="HideTip('tt21')">scale</a> and <ahref="#mxGraphView.translate"class=LVariableid=link175onMouseOver="ShowTip(event, 'tt22', 'link175')"onMouseOut="HideTip('tt22')">translate</a> event before calling <ahref="#mxGraphView.revalidate"class=LFunctionid=link176onMouseOver="ShowTip(event, 'tt32', 'link176')"onMouseOut="HideTip('tt32')">revalidate</a> followed by <ahref="mxGraph-js.html#mxGraph.sizeDidChange"class=LFunctionid=link177onMouseOver="ShowTip(event, 'tt31', 'link177')"onMouseOut="HideTip('tt31')">mxGraph.sizeDidChange</a>.</p><h4class=CHeading>Parameters</h4><tableborder=0cellspacing=0cellpadding=0class=CDescriptionList><tr><tdclass=CDLEntry>scale</td><tdclass=CDLDescription>Decimal value that specifies the new scale (1 is 100%).</td></tr><tr><tdclass=CDLEntry>dx</td><tdclass=CDLDescription>X-coordinate of the translation.</td></tr><tr><tdclass=CDLEntry>dy</td><tdclass=CDLDescription>Y-coordinate of the translation.</td></tr></table></div></div></div>
<divclass="CFunction"><divclass=CTopic><h3class=CTitle><aname="mxGraphView.setScale"></a>setScale</h3><divclass=CBody><blockquote><tableborder=0cellspacing=0cellpadding=0class="Prototype prettyprint"><tr><td><tableborder=0cellspacing=0cellpadding=0><tr><tdclass=PBeforeParametersnowrap>mxGraphView.prototype.setScale = function(</td><tdclass=PParameternowrap>value</td><tdclass=PAfterParametersnowrap>)</td></tr></table></td></tr></table></blockquote><p>Sets the scale and fires a <ahref="#mxGraphView.scale"class=LVariableid=link179onMouseOver="ShowTip(event, 'tt21', 'link179')"onMouseOut="HideTip('tt21')">scale</a> event before calling <ahref="#mxGraphView.revalidate"class=LFunctionid=link180onMouseOver="ShowTip(event, 'tt32', 'link180')"onMouseOut="HideTip('tt32')">revalidate</a> followed by <ahref="mxGraph-js.html#mxGraph.sizeDidChange"class=LFunctionid=link181onMouseOver="ShowTip(event, 'tt31', 'link181')"onMouseOut="HideTip('tt31')">mxGraph.sizeDidChange</a>.</p><h4class=CHeading>Parameters</h4><tableborder=0cellspacing=0cellpadding=0class=CDescriptionList><tr><tdclass=CDLEntry>value</td><tdclass=CDLDescription>Decimal value that specifies the new scale (1 is 100%).</td></tr></table></div></div></div>
<divclass="CFunction"><divclass=CTopic><h3class=CTitle><aname="mxGraphView.setTranslate"></a>setTranslate</h3><divclass=CBody><blockquote><tableborder=0cellspacing=0cellpadding=0class="Prototype prettyprint"><tr><td><tableborder=0cellspacing=0cellpadding=0><tr><tdclass=PBeforeParametersnowrap>mxGraphView.prototype.setTranslate = function(</td><tdclass=PParameternowrap>dx,</td></tr><tr><td></td><tdclass=PParameternowrap>dy</td><tdclass=PAfterParametersnowrap>)</td></tr></table></td></tr></table></blockquote><p>Sets the translation and fires a <ahref="#mxGraphView.translate"class=LVariableid=link183onMouseOver="ShowTip(event, 'tt22', 'link183')"onMouseOut="HideTip('tt22')">translate</a> event before calling <ahref="#mxGraphView.revalidate"class=LFunctionid=link184onMouseOver="ShowTip(event, 'tt32', 'link184')"onMouseOut="HideTip('tt32')">revalidate</a> followed by <ahref="mxGraph-js.html#mxGraph.sizeDidChange"class=LFunctionid=link185onMouseOver="ShowTip(event, 'tt31', 'link185')"onMouseOut="HideTip('tt31')">mxGraph.sizeDidChange</a>. The translation is the negative of the origin.</p><h4class=CHeading>Parameters</h4><tableborder=0cellspacing=0cellpadding=0class=CDescriptionList><tr><tdclass=CDLEntry>dx</td><tdclass=CDLDescription>X-coordinate of the translation.</td></tr><tr><tdclass=CDLEntry>dy</td><tdclass=CDLDescription>Y-coordinate of the translation.</td></tr></table></div></div></div>
<divclass="CFunction"><divclass=CTopic><h3class=CTitle><aname="mxGraphView.refresh"></a>refresh</h3><divclass=CBody><blockquote><tableborder=0cellspacing=0cellpadding=0class="Prototype prettyprint"><tr><td>mxGraphView.prototype.refresh = function()</td></tr></table></blockquote><p>Clears the view if <ahref="#mxGraphView.currentRoot"class=LVariableid=link186onMouseOver="ShowTip(event, 'tt17', 'link186')"onMouseOut="HideTip('tt17')">currentRoot</a> is not null and revalidates.</p></div></div></div>
<divclass="CFunction"><divclass=CTopic><h3class=CTitle><aname="mxGraphView.revalidate"></a>revalidate</h3><divclass=CBody><blockquote><tableborder=0cellspacing=0cellpadding=0class="Prototype prettyprint"><tr><td>mxGraphView.prototype.revalidate = function()</td></tr></table></blockquote><p>Revalidates the complete view with all cell states.</p></div></div></div>
<divclass="CFunction"><divclass=CTopic><h3class=CTitle><aname="mxGraphView.clear"></a>clear</h3><divclass=CBody><blockquote><tableborder=0cellspacing=0cellpadding=0class="Prototype prettyprint"><tr><td><tableborder=0cellspacing=0cellpadding=0><tr><tdclass=PBeforeParametersnowrap>mxGraphView.prototype.clear = function(</td><tdclass=PParameternowrap>cell,</td></tr><tr><td></td><tdclass=PParameternowrap>force,</td></tr><tr><td></td><tdclass=PParameternowrap>recurse</td><tdclass=PAfterParametersnowrap>)</td></tr></table></td></tr></table></blockquote><p>Removes the state of the given cell and all descendants if the given cell is not the current root.</p><h4class=CHeading>Parameters</h4><tableborder=0cellspacing=0cellpadding=0class=CDescriptionList><tr><tdclass=CDLEntry>cell</td><tdclass=CDLDescription>Optional <ahref="../model/mxCell-js.html#mxCell"class=LClassid=link187onMouseOver="ShowTip(event, 'tt18', 'link187')"onMouseOut="HideTip('tt18')">mxCell</a> for which the state should be removed. Default is the root of the model.</td></tr><tr><tdclass=CDLEntry>force</td><tdclass=CDLDescription>Boolean indicating if the current root should be ignored for recursion.</td></tr></table></div></div></div>
<divclass="CFunction"><divclass=CTopic><h3class=CTitle><aname="mxGraphView.invalidate"></a>invalidate</h3><divclass=CBody><blockquote><tableborder=0cellspacing=0cellpadding=0class="Prototype prettyprint"><tr><td><tableborder=0cellspacing=0cellpadding=0><tr><tdclass=PBeforeParametersnowrap>mxGraphView.prototype.invalidate = function(</td><tdclass=PParameternowrap>cell,</td></tr><tr><td></td><tdclass=PParameternowrap>recurse,</td></tr><tr><td></td><tdclass=PParameternowrap>includeEdges</td><tdclass=PAfterParametersnowrap>)</td></tr></table></td></tr></table></blockquote><p>Invalidates the state of the given cell, all its descendants and connected edges.</p><h4class=CHeading>Parameters</h4><tableborder=0cellspacing=0cellpadding=0class=CDescriptionList><tr><tdclass=CDLEntry>cell</td><tdclass=CDLDescription>Optional <ahref="../model/mxCell-js.html#mxCell"class=LClassid=link188onMouseOver="ShowTip(event, 'tt18', 'link188')"onMouseOut="HideTip('tt18')">mxCell</a> to be invalidated. Default is the root of the model.</td></tr></table></div></div></div>
<divclass="CFunction"><divclass=CTopic><h3class=CTitle><aname="mxGraphView.resetValidationState"></a>resetValidationState</h3><divclass=CBody><blockquote><tableborder=0cellspacing=0cellpadding=0class="Prototype prettyprint"><tr><td>mxGraphView.prototype.resetValidationState = function()</td></tr></table></blockquote><p>Resets the current validation state.</p></div></div></div>
<divclass="CFunction"><divclass=CTopic><h3class=CTitle><aname="mxGraphView.validate"></a>validate</h3><divclass=CBody><blockquote><tableborder=0cellspacing=0cellpadding=0class="Prototype prettyprint"><tr><td><tableborder=0cellspacing=0cellpadding=0><tr><tdclass=PBeforeParametersnowrap>mxGraphView.prototype.validate = function(</td><tdclass=PParameternowrap>cell</td><tdclass=PAfterParametersnowrap>)</td></tr></table></td></tr></table></blockquote><p>Calls <ahref="#mxGraphView.validateCell"class=LFunctionid=link189onMouseOver="ShowTip(event, 'tt40', 'link189')"onMouseOut="HideTip('tt40')">validateCell</a> and <validateCellState> and updates the <ahref="#mxGraphView.graphBounds"class=LVariableid=link190onMouseOver="ShowTip(event, 'tt19', 'link190')"onMouseOut="HideTip('tt19')">graphBounds</a> using <ahref="#mxGraphView.getBoundingBox"class=LFunctionid=link191onMouseOver="ShowTip(event, 'tt41', 'link191')"onMouseOut="HideTip('tt41')">getBoundingBox</a>. Finally the background is validated using <ahref="#mxGraphView.validateBackground"class=LFunctionid=link192onMouseOver="ShowTip(event, 'tt44', 'link192')"onMouseOut="HideTip('tt44')">validateBackground</a>.</p><h4class=CHeading>Parameters</h4><tableborder=0cellspacing=0cellpadding=0class=CDescriptionList><tr><tdclass=CDLEntry>cell</td><tdclass=CDLDescription>Optional <ahref="../model/mxCell-js.html#mxCell"class=LClassid=link193onMouseOver="ShowTip(event, 'tt18', 'link193')"onMouseOut="HideTip('tt18')">mxCell</a> to be used as the root of the validation. Default is <ahref="#mxGraphView.currentRoot"class=LVariableid=link194onMouseOver="ShowTip(event, 'tt17', 'link194')"onMouseOut="HideTip('tt17')">currentRoot</a> or the root of the model.</td></tr></table></div></div></div>
<divclass="CFunction"><divclass=CTopic><h3class=CTitle><aname="mxGraphView.getBoundingBox"></a>getBoundingBox</h3><divclass=CBody><blockquote><tableborder=0cellspacing=0cellpadding=0class="Prototype prettyprint"><tr><td><tableborder=0cellspacing=0cellpadding=0><tr><tdclass=PBeforeParametersnowrap>mxGraphView.prototype.getBoundingBox = function(</td><tdclass=PParameternowrap>state,</td></tr><tr><td></td><tdclass=PParameternowrap>recurse</td><tdclass=PAfterParametersnowrap>)</td></tr></table></td></tr></table></blockquote><p>Returns the bounding box of the shape and the label for the given <ahref="mxCellState-js.html#mxCellState"class=LClassid=link195onMouseOver="ShowTip(event, 'tt42', 'link195')"onMouseOut="HideTip('tt42')">mxCellState</a> and its children if recurse is true.</p><h4class=CHeading>Parameters</h4><tableborder=0cellspacing=0cellpadding=0class=CDescriptionList><tr><tdclass=CDLEntry>state</td><tdclass=CDLDescription><ahref="mxCellState-js.html#mxCellState"class=LClassid=link196onMouseOver="ShowTip(event, 'tt42', 'link196')"onMouseOut="HideTip('tt42')">mxCellState</a> whose bounding box should be returned.</td></tr><tr><tdclass=CDLEntry>recurse</td><tdclass=CDLDescription>Optional boolean indicating if the children should be included. Default is true.</td></tr></table></div></div></div>
<divclass="CFunction"><divclass=CTopic><h3class=CTitle><aname="mxGraphView.createBackgroundPageShape"></a>createBackgroundPageShape</h3><divclass=CBody><blockquote><tableborder=0cellspacing=0cellpadding=0class="Prototype prettyprint"><tr><td><tableborder=0cellspacing=0cellpadding=0><tr><tdclass=PBeforeParametersnowrap>mxGraphView.prototype.createBackgroundPageShape = function(</td><tdclass=PParameternowrap>bounds</td><tdclass=PAfterParametersnowrap>)</td></tr></table></td></tr></table></blockquote><p>Creates and returns the shape used as the background page.</p><h4class=CHeading>Parameters</h4><tableborder=0cellspacing=0cellpadding=0class=CDescriptionList><tr><tdclass=CDLEntry>bounds</td><tdclass=CDLDescription><ahref="../util/mxRectangle-js.html#mxRectangle"class=LClassid=link197onMouseOver="ShowTip(event, 'tt20', 'link197')"onMouseOut="HideTip('tt20')">mxRectangle</a> that represents the bounds of the shape.</td></tr></table></div></div></div>
<divclass="CFunction"><divclass=CTopic><h3class=CTitle><aname="mxGraphView.getBackgroundPageBounds"></a>getBackgroundPageBounds</h3><divclass=CBody><blockquote><tableborder=0cellspacing=0cellpadding=0class="Prototype prettyprint"><tr><td>mxGraphView.prototype.getBackgroundPageBounds = function()</td></tr></table></blockquote><p>Returns the bounds for the background page.</p></div></div></div>
<divclass="CFunction"><divclass=CTopic><h3class=CTitle><aname="mxGraphView.redrawBackgroundImage"></a>redrawBackgroundImage</h3><divclass=CBody><blockquote><tableborder=0cellspacing=0cellpadding=0class="Prototype prettyprint"><tr><td><tableborder=0cellspacing=0cellpadding=0><tr><tdclass=PBeforeParametersnowrap>mxGraphView.prototype.redrawBackgroundImage = function(</td><tdclass=PParameternowrap>backgroundImage,</td></tr><tr><td></td><tdclass=PParameternowrap>bg</td><tdclass=PAfterParametersnowrap>)</td></tr></table></td></tr></table></blockquote><p>Updates the bounds and redraws the background image.</p><h4class=CHeading>Example</h4><p>If the background image should not be scaled, this can be replaced with the following.</p><blockquote><preclass="prettyprint">mxGraphView.prototype.redrawBackground = function(backgroundImage, bg)
};</pre></blockquote><h4class=CHeading>Parameters</h4><tableborder=0cellspacing=0cellpadding=0class=CDescriptionList><tr><tdclass=CDLEntry>backgroundImage</td><tdclass=CDLDescription><ahref="../shape/mxImageShape-js.html#mxImageShape"class=LClassid=link200onMouseOver="ShowTip(event, 'tt103', 'link200')"onMouseOut="HideTip('tt103')">mxImageShape</a> that represents the background image.</td></tr><tr><tdclass=CDLEntry>bg</td><tdclass=CDLDescription><ahref="../util/mxImage-js.html#mxImage"class=LClassid=link201onMouseOver="ShowTip(event, 'tt104', 'link201')"onMouseOut="HideTip('tt104')">mxImage</a> that specifies the image and its dimensions.</td></tr></table></div></div></div>
<divclass="CFunction"><divclass=CTopic><h3class=CTitle><aname="mxGraphView.validateCell"></a>validateCell</h3><divclass=CBody><blockquote><tableborder=0cellspacing=0cellpadding=0class="Prototype prettyprint"><tr><td><tableborder=0cellspacing=0cellpadding=0><tr><tdclass=PBeforeParametersnowrap>mxGraphView.prototype.validateCell = function(</td><tdclass=PParameternowrap>cell,</td></tr><tr><td></td><tdclass=PParameternowrap>visible</td><tdclass=PAfterParametersnowrap>)</td></tr></table></td></tr></table></blockquote><p>Recursively creates the cell state for the given cell if visible is true and the given cell is visible. If the cell is not visible but the state exists then it is removed using <ahref="#mxGraphView.removeState"class=LFunctionid=link202onMouseOver="ShowTip(event, 'tt83', 'link202')"onMouseOut="HideTip('tt83')">removeState</a>.</p><h4class=CHeading>Parameters</h4><tableborder=0cellspacing=0cellpadding=0class=CDescriptionList><tr><tdclass=CDLEntry>cell</td><tdclass=CDLDescription><ahref="../model/mxCell-js.html#mxCell"class=LClassid=link203onMouseOver="ShowTip(event, 'tt18', 'link203')"onMouseOut="HideTip('tt18')">mxCell</a> whose <ahref="mxCellState-js.html#mxCellState"class=LClassid=link204onMouseOver="ShowTip(event, 'tt42', 'link204')"onMouseOut="HideTip('tt42')">mxCellState</a> should be created.</td></tr><tr><tdclass=CDLEntry>visible</td><tdclass=CDLDescription>Optional boolean indicating if the cell should be visible. Default is true.</td></tr></table></div></div></div>
<divclass="CFunction"><divclass=CTopic><h3class=CTitle><aname="mxGraphView.validateCellStates"></a>validateCellStates</h3><divclass=CBody><p>Validates and repaints the <ahref="mxCellState-js.html#mxCellState"class=LClassid=link205onMouseOver="ShowTip(event, 'tt42', 'link205')"onMouseOut="HideTip('tt42')">mxCellState</a> for the given <ahref="../model/mxCell-js.html#mxCell"class=LClassid=link206onMouseOver="ShowTip(event, 'tt18', 'link206')"onMouseOut="HideTip('tt18')">mxCell</a>.</p><h4class=CHeading>Parameters</h4><tableborder=0cellspacing=0cellpadding=0class=CDescriptionList><tr><tdclass=CDLEntry>cell</td><tdclass=CDLDescription><ahref="../model/mxCell-js.html#mxCell"class=LClassid=link207onMouseOver="ShowTip(event, 'tt18', 'link207')"onMouseOut="HideTip('tt18')">mxCell</a> whose <ahref="mxCellState-js.html#mxCellState"class=LClassid=link208onMouseOver="ShowTip(event, 'tt42', 'link208')"onMouseOut="HideTip('tt42')">mxCellState</a> should be validated.</td></tr><tr><tdclass=CDLEntry>recurse</td><tdclass=CDLDescription>Optional boolean indicating if the children of the cell should be validated. Default is true.</td></tr></table></div></div></div>
<divclass="CFunction"><divclass=CTopic><h3class=CTitle><aname="mxGraphView.updateCellState"></a>updateCellState</h3><divclass=CBody><blockquote><tableborder=0cellspacing=0cellpadding=0class="Prototype prettyprint"><tr><td><tableborder=0cellspacing=0cellpadding=0><tr><tdclass=PBeforeParametersnowrap>mxGraphView.prototype.updateCellState = function(</td><tdclass=PParameternowrap>state</td><tdclass=PAfterParametersnowrap>)</td></tr></table></td></tr></table></blockquote><p>Updates the given <ahref="mxCellState-js.html#mxCellState"class=LClassid=link209onMouseOver="ShowTip(event, 'tt42', 'link209')"onMouseOut="HideTip('tt42')">mxCellState</a>.</p><h4class=CHeading>Parameters</h4><tableborder=0cellspacing=0cellpadding=0class=CDescriptionList><tr><tdclass=CDLEntry>state</td><tdclass=CDLDescription><ahref="mxCellState-js.html#mxCellState"class=LClassid=link210onMouseOver="ShowTip(event, 'tt42', 'link210')"onMouseOut="HideTip('tt42')">mxCellState</a> to be updated.</td></tr></table></div></div></div>
<divclass="CFunction"><divclass=CTopic><h3class=CTitle><aname="mxGraphView.updateVertexState"></a>updateVertexState</h3><divclass=CBody><blockquote><tableborder=0cellspacing=0cellpadding=0class="Prototype prettyprint"><tr><td><tableborder=0cellspacing=0cellpadding=0><tr><tdclass=PBeforeParametersnowrap>mxGraphView.prototype.updateVertexState = function(</td><tdclass=PParameternowrap>state,</td></tr><tr><td></td><tdclass=PParameternowrap>geo</td><tdclass=PAfterParametersnowrap>)</td></tr></table></td></tr></table></blockquote><p>Validates the given cell state.</p></div></div></div>
<divclass="CFunction"><divclass=CTopic><h3class=CTitle><aname="mxGraphView.updateEdgeState"></a>updateEdgeState</h3><divclass=CBody><blockquote><tableborder=0cellspacing=0cellpadding=0class="Prototype prettyprint"><tr><td><tableborder=0cellspacing=0cellpadding=0><tr><tdclass=PBeforeParametersnowrap>mxGraphView.prototype.updateEdgeState = function(</td><tdclass=PParameternowrap>state,</td></tr><tr><td></td><tdclass=PParameternowrap>geo</td><tdclass=PAfterParametersnowrap>)</td></tr></table></td></tr></table></blockquote><p>Validates the given cell state.</p></div></div></div>
<divclass="CFunction"><divclass=CTopic><h3class=CTitle><aname="mxGraphView.updateVertexLabelOffset"></a>updateVertexLabelOffset</h3><divclass=CBody><blockquote><tableborder=0cellspacing=0cellpadding=0class="Prototype prettyprint"><tr><td><tableborder=0cellspacing=0cellpadding=0><tr><tdclass=PBeforeParametersnowrap>mxGraphView.prototype.updateVertexLabelOffset = function(</td><tdclass=PParameternowrap>state</td><tdclass=PAfterParametersnowrap>)</td></tr></table></td></tr></table></blockquote><p>Updates the absoluteOffset of the given vertex cell state. This takes into account the label position styles.</p><h4class=CHeading>Parameters</h4><tableborder=0cellspacing=0cellpadding=0class=CDescriptionList><tr><tdclass=CDLEntry>state</td><tdclass=CDLDescription><ahref="mxCellState-js.html#mxCellState"class=LClassid=link211onMouseOver="ShowTip(event, 'tt42', 'link211')"onMouseOut="HideTip('tt42')">mxCellState</a> whose absolute offset should be updated.</td></tr></table></div></div></div>
<divclass="CFunction"><divclass=CTopic><h3class=CTitle><aname="mxGraphView.stateValidated"></a>stateValidated</h3><divclass=CBody><blockquote><tableborder=0cellspacing=0cellpadding=0class="Prototype prettyprint"><tr><td><tableborder=0cellspacing=0cellpadding=0><tr><tdclass=PBeforeParametersnowrap>mxGraphView.prototype.stateValidated = function(</td><tdclass=PParameternowrap>state</td><tdclass=PAfterParametersnowrap>)</td></tr></table></td></tr></table></blockquote><p>Invoked when a state has been processed in <validatePoints>. This is used to update the order of the DOM nodes of the shape.</p><h4class=CHeading>Parameters</h4><tableborder=0cellspacing=0cellpadding=0class=CDescriptionList><tr><tdclass=CDLEntry>state</td><tdclass=CDLDescription><ahref="mxCellState-js.html#mxCellState"class=LClassid=link212onMouseOver="ShowTip(event, 'tt42', 'link212')"onMouseOut="HideTip('tt42')">mxCellState</a> that represents the cell state.</td></tr></table></div></div></div>
<divclass="CFunction"><divclass=CTopic><h3class=CTitle><aname="mxGraphView.updateFixedTerminalPoints"></a>updateFixedTerminalPoints</h3><divclass=CBody><blockquote><tableborder=0cellspacing=0cellpadding=0class="Prototype prettyprint"><tr><td><tableborder=0cellspacing=0cellpadding=0><tr><tdclass=PBeforeParametersnowrap>mxGraphView.prototype.updateFixedTerminalPoints = function(</td><tdclass=PParameternowrap>edge,</td></tr><tr><td></td><tdclass=PParameternowrap>source,</td></tr><tr><td></td><tdclass=PParameternowrap>target</td><tdclass=PAfterParametersnowrap>)</td></tr></table></td></tr></table></blockquote><p>Sets the initial absolute terminal points in the given state before the edge style is computed.</p><h4class=CHeading>Parameters</h4><tableborder=0cellspacing=0cellpadding=0class=CDescriptionList><tr><tdclass=CDLEntry>edge</td><tdclass=CDLDescription><ahref="mxCellState-js.html#mxCellState"class=LClassid=link213onMouseOver="ShowTip(event, 'tt42', 'link213')"onMouseOut="HideTip('tt42')">mxCellState</a> whose initial terminal points should be updated.</td></tr><tr><tdclass=CDLEntry>source</td><tdclass=CDLDescription><ahref="mxCellState-js.html#mxCellState"class=LClassid=link214onMouseOver="ShowTip(event, 'tt42', 'link214')"onMouseOut="HideTip('tt42')">mxCellState</a> which represents the source terminal.</td></tr><tr><tdclass=CDLEntry>target</td><tdclass=CDLDescription><ahref="mxCellState-js.html#mxCellState"class=LClassid=link215onMouseOver="ShowTip(event, 'tt42', 'link215')"onMouseOut="HideTip('tt42')">mxCellState</a> which represents the target terminal.</td></tr></table></div></div></div>
<divclass="CFunction"><divclass=CTopic><h3class=CTitle><aname="mxGraphView.updateFixedTerminalPoint"></a>updateFixedTerminalPoint</h3><divclass=CBody><blockquote><tableborder=0cellspacing=0cellpadding=0class="Prototype prettyprint"><tr><td><tableborder=0cellspacing=0cellpadding=0><tr><tdclass=PBeforeParametersnowrap>mxGraphView.prototype.updateFixedTerminalPoint = function(</td><tdclass=PParameternowrap>edge,</td></tr><tr><td></td><tdclass=PParameternowrap>terminal,</td></tr><tr><td></td><tdclass=PParameternowrap>source,</td></tr><tr><td></td><tdclass=PParameternowrap>constraint</td><tdclass=PAfterParametersnowrap>)</td></tr></table></td></tr></table></blockquote><p>Sets the fixed source or target terminal point on the given edge.</p><h4class=CHeading>Parameters</h4><tableborder=0cellspacing=0cellpadding=0class=CDescriptionList><tr><tdclass=CDLEntry>edge</td><tdclass=CDLDescription><ahref="mxCellState-js.html#mxCellState"class=LClassid=link216onMouseOver="ShowTip(event, 'tt42', 'link216')"onMouseOut="HideTip('tt42')">mxCellState</a> whose terminal point should be updated.</td></tr><tr><tdclass=CDLEntry>terminal</td><tdclass=CDLDescription><ahref="mxCellState-js.html#mxCellState"class=LClassid=link217onMouseOver="ShowTip(event, 'tt42', 'link217')"onMouseOut="HideTip('tt42')">mxCellState</a> which represents the actual terminal.</td></tr><tr><tdclass=CDLEntry>source</td><tdclass=CDLDescription>Boolean that specifies if the terminal is the source.</td></tr><tr><tdclass=CDLEntry>constraint</td><tdclass=CDLDescription><ahref="mxConnectionConstraint-js.html#mxConnectionConstraint"class=LClassid=link218onMouseOver="ShowTip(event, 'tt105', 'link218')"onMouseOut="HideTip('tt105')">mxConnectionConstraint</a> that specifies the connection.</td></tr></table></div></div></div>
<divclass="CFunction"><divclass=CTopic><h3class=CTitle><aname="mxGraphView.updatePoints"></a>updatePoints</h3><divclass=CBody><blockquote><tableborder=0cellspacing=0cellpadding=0class="Prototype prettyprint"><tr><td><tableborder=0cellspacing=0cellpadding=0><tr><tdclass=PBeforeParametersnowrap>mxGraphView.prototype.updatePoints = function(</td><tdclass=PParameternowrap>edge,</td></tr><tr><td></td><tdclass=PParameternowrap>points,</td></tr><tr><td></td><tdclass=PParameternowrap>source,</td></tr><tr><td></td><tdclass=PParameternowrap>target</td><tdclass=PAfterParametersnowrap>)</td></tr></table></td></tr></table></blockquote><p>Updates the absolute points in the given state using the specified array of <ahref="../util/mxPoint-js.html#mxPoint"class=LClassid=link219onMouseOver="ShowTip(event, 'tt23', 'link219')"onMouseOut="HideTip('tt23')">mxPoints</a> as the relative points.</p><h4class=CHeading>Parameters</h4><tableborder=0cellspacing=0cellpadding=0class=CDescriptionList><tr><tdclass=CDLEntry>edge</td><tdclass=CDLDescription><ahref="mxCellState-js.html#mxCellState"class=LClassid=link220onMouseOver="ShowTip(event, 'tt42', 'link220')"onMouseOut="HideTip('tt42')">mxCellState</a> whose absolute points should be updated.</td></tr><tr><tdclass=CDLEntry>points</td><tdclass=CDLDescription>Array of <ahref="../util/mxPoint-js.html#mxPoint"class=LClassid=link221onMouseOver="ShowTip(event, 'tt23', 'link221')"onMouseOut="HideTip('tt23')">mxPoints</a> that constitute the relative points.</td></tr><tr><tdclass=CDLEntry>source</td><tdclass=CDLDescription><ahref="mxCellState-js.html#mxCellState"class=LClassid=link222onMouseOver="ShowTip(event, 'tt42', 'link222')"onMouseOut="HideTip('tt42')">mxCellState</a> that represents the source terminal.</td></tr><tr><tdclass=CDLEntry>target</td><tdclass=CDLDescription><ahref="mxCellState-js.html#mxCellState"class=LClassid=link223onMouseOver="ShowTip(event, 'tt42', 'link223')"onMouseOut="HideTip('tt42')">mxCellState</a> that represents the target terminal.</td></tr></table></div></div></div>
<divclass="CFunction"><divclass=CTopic><h3class=CTitle><aname="mxGraphView.transformControlPoint"></a>transformControlPoint</h3><divclass=CBody><blockquote><tableborder=0cellspacing=0cellpadding=0class="Prototype prettyprint"><tr><td><tableborder=0cellspacing=0cellpadding=0><tr><tdclass=PBeforeParametersnowrap>mxGraphView.prototype.transformControlPoint = function(</td><tdclass=PParameternowrap>state,</td></tr><tr><td></td><tdclass=PParameternowrap>pt</td><tdclass=PAfterParametersnowrap>)</td></tr></table></td></tr></table></blockquote><p>Transforms the given control point to an absolute point.</p></div></div></div>
<divclass="CFunction"><divclass=CTopic><h3class=CTitle><aname="mxGraphView.getEdgeStyle"></a>getEdgeStyle</h3><divclass=CBody><blockquote><tableborder=0cellspacing=0cellpadding=0class="Prototype prettyprint"><tr><td><tableborder=0cellspacing=0cellpadding=0><tr><tdclass=PBeforeParametersnowrap>mxGraphView.prototype.getEdgeStyle = function(</td><tdclass=PParameternowrap>edge,</td></tr><tr><td></td><tdclass=PParameternowrap>points,</td></tr><tr><td></td><tdclass=PParameternowrap>source,</td></tr><tr><td></td><tdclass=PParameternowrap>target</td><tdclass=PAfterParametersnowrap>)</td></tr></table></td></tr></table></blockquote><p>Returns the edge style function to be used to render the given edge state.</p></div></div></div>
<divclass="CFunction"><divclass=CTopic><h3class=CTitle><aname="mxGraphView.updateFloatingTerminalPoints"></a>updateFloatingTerminalPoints</h3><divclass=CBody><blockquote><tableborder=0cellspacing=0cellpadding=0class="Prototype prettyprint"><tr><td><tableborder=0cellspacing=0cellpadding=0><tr><tdclass=PBeforeParametersnowrap>mxGraphView.prototype.updateFloatingTerminalPoints = function(</td><tdclass=PParameternowrap>state,</td></tr><tr><td></td><tdclass=PParameternowrap>source,</td></tr><tr><td></td><tdclass=PParameternowrap>target</td><tdclass=PAfterParametersnowrap>)</td></tr></table></td></tr></table></blockquote><p>Updates the terminal points in the given state after the edge style was computed for the edge.</p><h4class=CHeading>Parameters</h4><tableborder=0cellspacing=0cellpadding=0class=CDescriptionList><tr><tdclass=CDLEntry>state</td><tdclass=CDLDescription><ahref="mxCellState-js.html#mxCellState"class=LClassid=link224onMouseOver="ShowTip(event, 'tt42', 'link224')"onMouseOut="HideTip('tt42')">mxCellState</a> whose terminal points should be updated.</td></tr><tr><tdclass=CDLEntry>source</td><tdclass=CDLDescription><ahref="mxCellState-js.html#mxCellState"class=LClassid=link225onMouseOver="ShowTip(event, 'tt42', 'link225')"onMouseOut="HideTip('tt42')">mxCellState</a> that represents the source terminal.</td></tr><tr><tdclass=CDLEntry>target</td><tdclass=CDLDescription><ahref="mxCellState-js.html#mxCellState"class=LClassid=link226onMouseOver="ShowTip(event, 'tt42', 'link226')"onMouseOut="HideTip('tt42')">mxCellState</a> that represents the target terminal.</td></tr></table></div></div></div>
<divclass="CFunction"><divclass=CTopic><h3class=CTitle><aname="mxGraphView.updateFloatingTerminalPoint"></a>updateFloatingTerminalPoint</h3><divclass=CBody><blockquote><tableborder=0cellspacing=0cellpadding=0class="Prototype prettyprint"><tr><td><tableborder=0cellspacing=0cellpadding=0><tr><tdclass=PBeforeParametersnowrap>mxGraphView.prototype.updateFloatingTerminalPoint = function(</td><tdclass=PParameternowrap>edge,</td></tr><tr><td></td><tdclass=PParameternowrap>start,</td></tr><tr><td></td><tdclass=PParameternowrap>end,</td></tr><tr><td></td><tdclass=PParameternowrap>source</td><tdclass=PAfterParametersnowrap>)</td></tr></table></td></tr></table></blockquote><p>Updates the absolute terminal point in the given state for the given start and end state, where start is the source if source is true.</p><h4class=CHeading>Parameters</h4><tableborder=0cellspacing=0cellpadding=0class=CDescriptionList><tr><tdclass=CDLEntry>edge</td><tdclass=CDLDescription><ahref="mxCellState-js.html#mxCellState"class=LClassid=link227onMouseOver="ShowTip(event, 'tt42', 'link227')"onMouseOut="HideTip('tt42')">mxCellState</a> whose terminal point should be updated.</td></tr><tr><tdclass=CDLEntry>start</td><tdclass=CDLDescription><ahref="mxCellState-js.html#mxCellState"class=LClassid=link228onMouseOver="ShowTip(event, 'tt42', 'link228')"onMouseOut="HideTip('tt42')">mxCellState</a> for the terminal on “this” side of the edge.</td></tr><tr><tdclass=CDLEntry>end</td><tdclass=CDLDescription><ahref="mxCellState-js.html#mxCellState"class=LClassid=link229onMouseOver="ShowTip(event, 'tt42', 'link229')"onMouseOut="HideTip('tt42')">mxCellState</a> for the terminal on the other side of the edge.</td></tr><tr><tdclass=CDLEntry>source</td><tdclass=CDLDescription>Boolean indicating if start is the source terminal state.</td></tr></table></div></div></div>
<divclass="CFunction"><divclass=CTopic><h3class=CTitle><aname="mxGraphView.getTerminalPort"></a>getTerminalPort</h3><divclass=CBody><blockquote><tableborder=0cellspacing=0cellpadding=0class="Prototype prettyprint"><tr><td><tableborder=0cellspacing=0cellpadding=0><tr><tdclass=PBeforeParametersnowrap>mxGraphView.prototype.getTerminalPort = function(</td><tdclass=PParameternowrap>state,</td></tr><tr><td></td><tdclass=PParameternowrap>terminal,</td></tr><tr><td></td><tdclass=PParameternowrap>source</td><tdclass=PAfterParametersnowrap>)</td></tr></table></td></tr></table></blockquote><p>Returns an <ahref="mxCellState-js.html#mxCellState"class=LClassid=link230onMouseOver="ShowTip(event, 'tt42', 'link230')"onMouseOut="HideTip('tt42')">mxCellState</a> that represents the source or target terminal or port for the given edge.</p><h4class=CHeading>Parameters</h4><tableborder=0cellspacing=0cellpadding=0class=CDescriptionList><tr><tdclass=CDLEntry>state</td><tdclass=CDLDescription><ahref="mxCellState-js.html#mxCellState"class=LClassid=link231onMouseOver="ShowTip(event, 'tt42', 'link231')"onMouseOut="HideTip('tt42')">mxCellState</a> that represents the state of the edge.</td></tr><tr><tdclass=CDLEntry>terminal</td><tdclass=CDLDescription><ahref="mxCellState-js.html#mxCellState"class=LClassid=link232onMouseOver="ShowTip(event, 'tt42', 'link232')"onMouseOut="HideTip('tt42')">mxCellState</a> that represents the terminal.</td></tr><tr><tdclass=CDLEntry>source</td><tdclass=CDLDescription>Boolean indicating if the given terminal is the source terminal.</td></tr></table></div></div></div>
<divclass="CFunction"><divclass=CTopic><h3class=CTitle><aname="mxGraphView.getPerimeterPoint"></a>getPerimeterPoint</h3><divclass=CBody><blockquote><tableborder=0cellspacing=0cellpadding=0class="Prototype prettyprint"><tr><td><tableborder=0cellspacing=0cellpadding=0><tr><tdclass=PBeforeParametersnowrap>mxGraphView.prototype.getPerimeterPoint = function(</td><tdclass=PParameternowrap>terminal,</td></tr><tr><td></td><tdclass=PParameternowrap>next,</td></tr><tr><td></td><tdclass=PParameternowrap>orthogonal,</td></tr><tr><td></td><tdclass=PParameternowrap>border</td><tdclass=PAfterParametersnowrap>)</td></tr></table></td></tr></table></blockquote><p>Returns an <ahref="../util/mxPoint-js.html#mxPoint"class=LClassid=link233onMouseOver="ShowTip(event, 'tt23', 'link233')"onMouseOut="HideTip('tt23')">mxPoint</a> that defines the location of the intersection point between the perimeter and the line between the center of the shape and the given point.</p><h4class=CHeading>Parameters</h4><tableborder=0cellspacing=0cellpadding=0class=CDescriptionList><tr><tdclass=CDLEntry>terminal</td><tdclass=CDLDescription><ahref="mxCellState-js.html#mxCellState"class=LClassid=link234onMouseOver="ShowTip(event, 'tt42', 'link234')"onMouseOut="HideTip('tt42')">mxCellState</a> for the source or target terminal.</td></tr><tr><tdclass=CDLEntry>next</td><tdclass=CDLDescription><ahref="../util/mxPoint-js.html#mxPoint"class=LClassid=link235onMouseOver="ShowTip(event, 'tt23', 'link235')"onMouseOut="HideTip('tt23')">mxPoint</a> that lies outside of the given terminal.</td></tr><tr><tdclass=CDLEntry>orthogonal</td><tdclass=CDLDescription>Boolean that specifies if the orthogonal projection onto the perimeter should be returned. If this is false then the intersection of the perimeter and the line between the next and the center point is returned.</td></tr><tr><tdclass=CDLEntry>border</td><tdclass=CDLDescription>Optional border between the perimeter and the shape.</td></tr></table></div></div></div>
<divclass="CFunction"><divclass=CTopic><h3class=CTitle><aname="mxGraphView.getRoutingCenterX"></a>getRoutingCenterX</h3><divclass=CBody><blockquote><tableborder=0cellspacing=0cellpadding=0class="Prototype prettyprint"><tr><td><tableborder=0cellspacing=0cellpadding=0><tr><tdclass=PBeforeParametersnowrap>mxGraphView.prototype.getRoutingCenterX = function (</td><tdclass=PParameternowrap>state</td><tdclass=PAfterParametersnowrap>)</td></tr></table></td></tr></table></blockquote><p>Returns the x-coordinate of the center point for automatic routing.</p></div></div></div>
<divclass="CFunction"><divclass=CTopic><h3class=CTitle><aname="mxGraphView.getRoutingCenterY"></a>getRoutingCenterY</h3><divclass=CBody><blockquote><tableborder=0cellspacing=0cellpadding=0class="Prototype prettyprint"><tr><td><tableborder=0cellspacing=0cellpadding=0><tr><tdclass=PBeforeParametersnowrap>mxGraphView.prototype.getRoutingCenterY = function (</td><tdclass=PParameternowrap>state</td><tdclass=PAfterParametersnowrap>)</td></tr></table></td></tr></table></blockquote><p>Returns the y-coordinate of the center point for automatic routing.</p></div></div></div>
<divclass="CFunction"><divclass=CTopic><h3class=CTitle><aname="mxGraphView.getPerimeterBounds"></a>getPerimeterBounds</h3><divclass=CBody><blockquote><tableborder=0cellspacing=0cellpadding=0class="Prototype prettyprint"><tr><td><tableborder=0cellspacing=0cellpadding=0><tr><tdclass=PBeforeParametersnowrap>mxGraphView.prototype.getPerimeterBounds = function(</td><tdclass=PParameternowrap>terminal,</td></tr><tr><td></td><tdclass=PParameternowrap>border</td><tdclass=PAfterParametersnowrap>)</td></tr></table></td></tr></table></blockquote><p>Returns the perimeter bounds for the given terminal, edge pair as an <ahref="../util/mxRectangle-js.html#mxRectangle"class=LClassid=link236onMouseOver="ShowTip(event, 'tt20', 'link236')"onMouseOut="HideTip('tt20')">mxRectangle</a>.</p><p>If you have a model where each terminal has a relative child that should act as the graphical endpoint for a connection from/to the terminal, then this method can be replaced as follows:</p><blockquote><preclass="prettyprint">var oldGetPerimeterBounds = mxGraphView.prototype.getPerimeterBounds;
};</pre></blockquote><h4class=CHeading>Parameters</h4><tableborder=0cellspacing=0cellpadding=0class=CDescriptionList><tr><tdclass=CDLEntry>terminal</td><tdclass=CDLDescription><ahref="mxCellState-js.html#mxCellState"class=LClassid=link237onMouseOver="ShowTip(event, 'tt42', 'link237')"onMouseOut="HideTip('tt42')">mxCellState</a> that represents the terminal.</td></tr><tr><tdclass=CDLEntry>border</td><tdclass=CDLDescription>Number that adds a border between the shape and the perimeter.</td></tr></table></div></div></div>
<divclass="CFunction"><divclass=CTopic><h3class=CTitle><aname="mxGraphView.getPerimeterFunction"></a>getPerimeterFunction</h3><divclass=CBody><blockquote><tableborder=0cellspacing=0cellpadding=0class="Prototype prettyprint"><tr><td><tableborder=0cellspacing=0cellpadding=0><tr><tdclass=PBeforeParametersnowrap>mxGraphView.prototype.getPerimeterFunction = function(</td><tdclass=PParameternowrap>state</td><tdclass=PAfterParametersnowrap>)</td></tr></table></td></tr></table></blockquote><p>Returns the perimeter function for the given state.</p></div></div></div>
<divclass="CFunction"><divclass=CTopic><h3class=CTitle><aname="mxGraphView.getNextPoint"></a>getNextPoint</h3><divclass=CBody><blockquote><tableborder=0cellspacing=0cellpadding=0class="Prototype prettyprint"><tr><td><tableborder=0cellspacing=0cellpadding=0><tr><tdclass=PBeforeParametersnowrap>mxGraphView.prototype.getNextPoint = function(</td><tdclass=PParameternowrap>edge,</td></tr><tr><td></td><tdclass=PParameternowrap>opposite,</td></tr><tr><td></td><tdclass=PParameternowrap>source</td><tdclass=PAfterParametersnowrap>)</td></tr></table></td></tr></table></blockquote><p>Returns the nearest point in the list of absolute points or the center of the opposite terminal.</p><h4class=CHeading>Parameters</h4><tableborder=0cellspacing=0cellpadding=0class=CDescriptionList><tr><tdclass=CDLEntry>edge</td><tdclass=CDLDescription><ahref="mxCellState-js.html#mxCellState"class=LClassid=link238onMouseOver="ShowTip(event, 'tt42', 'link238')"onMouseOut="HideTip('tt42')">mxCellState</a> that represents the edge.</td></tr><tr><tdclass=CDLEntry>opposite</td><tdclass=CDLDescription><ahref="mxCellState-js.html#mxCellState"class=LClassid=link239onMouseOver="ShowTip(event, 'tt42', 'link239')"onMouseOut="HideTip('tt42')">mxCellState</a> that represents the opposite terminal.</td></tr><tr><tdclass=CDLEntry>source</td><tdclass=CDLDescription>Boolean indicating if the next point for the source or target should be returned.</td></tr></table></div></div></div>
<divclass="CFunction"><divclass=CTopic><h3class=CTitle><aname="mxGraphView.getVisibleTerminal"></a>getVisibleTerminal</h3><divclass=CBody><blockquote><tableborder=0cellspacing=0cellpadding=0class="Prototype prettyprint"><tr><td><tableborder=0cellspacing=0cellpadding=0><tr><tdclass=PBeforeParametersnowrap>mxGraphView.prototype.getVisibleTerminal = function(</td><tdclass=PParameternowrap>edge,</td></tr><tr><td></td><tdclass=PParameternowrap>source</td><tdclass=PAfterParametersnowrap>)</td></tr></table></td></tr></table></blockquote><p>Returns the nearest ancestor terminal that is visible. The edge appears to be connected to this terminal on the display. The result of this method is cached in <ahref="mxCellState-js.html#mxCellState.getVisibleTerminalState"class=LFunctionid=link240onMouseOver="ShowTip(event, 'tt106', 'link240')"onMouseOut="HideTip('tt106')">mxCellState.getVisibleTerminalState</a>.</p><h4class=CHeading>Parameters</h4><tableborder=0cellspacing=0cellpadding=0class=CDescriptionList><tr><tdclass=CDLEntry>edge</td><tdclass=CDLDescription><ahref="../model/mxCell-js.html#mxCell"class=LClassid=link241onMouseOver="ShowTip(event, 'tt18', 'link241')"onMouseOut="HideTip('tt18')">mxCell</a> whose visible terminal should be returned.</td></tr><tr><tdclass=CDLEntry>source</td><tdclass=CDLDescription>Boolean that specifies if the source or target terminal should be returned.</td></tr></table></div></div></div>
<divclass="CFunction"><divclass=CTopic><h3class=CTitle><aname="mxGraphView.updateEdgeBounds"></a>updateEdgeBounds</h3><divclass=CBody><blockquote><tableborder=0cellspacing=0cellpadding=0class="Prototype prettyprint"><tr><td><tableborder=0cellspacing=0cellpadding=0><tr><tdclass=PBeforeParametersnowrap>mxGraphView.prototype.updateEdgeBounds = function(</td><tdclass=PParameternowrap>state</td><tdclass=PAfterParametersnowrap>)</td></tr></table></td></tr></table></blockquote><p>Updates the given state using the bounding box of t he absolute points. Also updates <ahref="mxCellState-js.html#mxCellState.terminalDistance"class=LVariableid=link242onMouseOver="ShowTip(event, 'tt107', 'link242')"onMouseOut="HideTip('tt107')">mxCellState.terminalDistance</a>, <ahref="mxCellState-js.html#mxCellState.length"class=LVariableid=link243onMouseOver="ShowTip(event, 'tt108', 'link243')"onMouseOut="HideTip('tt108')">mxCellState.length</a> and <ahref="mxCellState-js.html#mxCellState.segments"class=LVariableid=link244onMouseOver="ShowTip(event, 'tt109', 'link244')"onMouseOut="HideTip('tt109')">mxCellState.segments</a>.</p><h4class=CHeading>Parameters</h4><tableborder=0cellspacing=0cellpadding=0class=CDescriptionList><tr><tdclass=CDLEntry>state</td><tdclass=CDLDescription><ahref="mxCellState-js.html#mxCellState"class=LClassid=link245onMouseOver="ShowTip(event, 'tt42', 'link245')"onMouseOut="HideTip('tt42')">mxCellState</a> whose bounds should be updated.</td></tr></table></div></div></div>
<divclass="CFunction"><divclass=CTopic><h3class=CTitle><aname="mxGraphView.getPoint"></a>getPoint</h3><divclass=CBody><blockquote><tableborder=0cellspacing=0cellpadding=0class="Prototype prettyprint"><tr><td><tableborder=0cellspacing=0cellpadding=0><tr><tdclass=PBeforeParametersnowrap>mxGraphView.prototype.getPoint = function(</td><tdclass=PParameternowrap>state,</td></tr><tr><td></td><tdclass=PParameternowrap>geometry</td><tdclass=PAfterParametersnowrap>)</td></tr></table></td></tr></table></blockquote><p>Returns the absolute point on the edge for the given relative <ahref="../model/mxGeometry-js.html#mxGeometry"class=LClassid=link246onMouseOver="ShowTip(event, 'tt71', 'link246')"onMouseOut="HideTip('tt71')">mxGeometry</a> as an <ahref="../util/mxPoint-js.html#mxPoint"class=LClassid=link247onMouseOver="ShowTip(event, 'tt23', 'link247')"onMouseOut="HideTip('tt23')">mxPoint</a>. The edge is represented by the given <ahref="mxCellState-js.html#mxCellState"class=LClassid=link248onMouseOver="ShowTip(event, 'tt42', 'link248')"onMouseOut="HideTip('tt42')">mxCellState</a>.</p><h4class=CHeading>Parameters</h4><tableborder=0cellspacing=0cellpadding=0class=CDescriptionList><tr><tdclass=CDLEntry>state</td><tdclass=CDLDescription><ahref="mxCellState-js.html#mxCellState"class=LClassid=link249onMouseOver="ShowTip(event, 'tt42', 'link249')"onMouseOut="HideTip('tt42')">mxCellState</a> that represents the state of the parent edge.</td></tr><tr><tdclass=CDLEntry>geometry</td><tdclass=CDLDescription><ahref="../model/mxGeometry-js.html#mxGeometry"class=LClassid=link250onMouseOver="ShowTip(event, 'tt71', 'link250')"onMouseOut="HideTip('tt71')">mxGeometry</a> that represents the relative location.</td></tr></table></div></div></div>
<divclass="CFunction"><divclass=CTopic><h3class=CTitle><aname="mxGraphView.getRelativePoint"></a>getRelativePoint</h3><divclass=CBody><blockquote><tableborder=0cellspacing=0cellpadding=0class="Prototype prettyprint"><tr><td><tableborder=0cellspacing=0cellpadding=0><tr><tdclass=PBeforeParametersnowrap>mxGraphView.prototype.getRelativePoint = function(</td><tdclass=PParameternowrap>edgeState,</td></tr><tr><td></td><tdclass=PParameternowrap>x,</td></tr><tr><td></td><tdclass=PParameternowrap>y</td><tdclass=PAfterParametersnowrap>)</td></tr></table></td></tr></table></blockquote><p>Gets the relative point that describes the given, absolute label position for the given edge state.</p><h4class=CHeading>Parameters</h4><tableborder=0cellspacing=0cellpadding=0class=CDescriptionList><tr><tdclass=CDLEntry>state</td><tdclass=CDLDescription><ahref="mxCellState-js.html#mxCellState"class=LClassid=link251onMouseOver="ShowTip(event, 'tt42', 'link251')"onMouseOut="HideTip('tt42')">mxCellState</a> that represents the state of the parent edge.</td></tr><tr><tdclass=CDLEntry>x</td><tdclass=CDLDescription>Specifies the x-coordinate of the absolute label location.</td></tr><tr><tdclass=CDLEntry>y</td><tdclass=CDLDescription>Specifies the y-coordinate of the absolute label location.</td></tr></table></div></div></div>
<divclass="CFunction"><divclass=CTopic><h3class=CTitle><aname="mxGraphView.updateEdgeLabelOffset"></a>updateEdgeLabelOffset</h3><divclass=CBody><blockquote><tableborder=0cellspacing=0cellpadding=0class="Prototype prettyprint"><tr><td><tableborder=0cellspacing=0cellpadding=0><tr><tdclass=PBeforeParametersnowrap>mxGraphView.prototype.updateEdgeLabelOffset = function(</td><tdclass=PParameternowrap>state</td><tdclass=PAfterParametersnowrap>)</td></tr></table></td></tr></table></blockquote><p>Updates <ahref="mxCellState-js.html#mxCellState.absoluteOffset"class=LVariableid=link252onMouseOver="ShowTip(event, 'tt74', 'link252')"onMouseOut="HideTip('tt74')">mxCellState.absoluteOffset</a> for the given state. The absolute offset is normally used for the position of the edge label. Is is calculated from the geometry as an absolute offset from the center between the two endpoints if the geometry is absolute, or as the relative distance between the center along the line and the absolute orthogonal distance if the geometry is relative.</p><h4class=CHeading>Parameters</h4><tableborder=0cellspacing=0cellpadding=0class=CDescriptionList><tr><tdclass=CDLEntry>state</td><tdclass=CDLDescription><ahref="mxCellState-js.html#mxCellState"class=LClassid=link253onMouseOver="ShowTip(event, 'tt42', 'link253')"onMouseOut="HideTip('tt42')">mxCellState</a> whose absolute offset should be updated.</td></tr></table></div></div></div>
<divclass="CFunction"><divclass=CTopic><h3class=CTitle><aname="mxGraphView.getState"></a>getState</h3><divclass=CBody><blockquote><tableborder=0cellspacing=0cellpadding=0class="Prototype prettyprint"><tr><td><tableborder=0cellspacing=0cellpadding=0><tr><tdclass=PBeforeParametersnowrap>mxGraphView.prototype.getState = function(</td><tdclass=PParameternowrap>cell,</td></tr><tr><td></td><tdclass=PParameternowrap>create</td><tdclass=PAfterParametersnowrap>)</td></tr></table></td></tr></table></blockquote><p>Returns the <ahref="mxCellState-js.html#mxCellState"class=LClassid=link254onMouseOver="ShowTip(event, 'tt42', 'link254')"onMouseOut="HideTip('tt42')">mxCellState</a> for the given cell. If create is true, then the state is created if it does not yet exist.</p><h4class=CHeading>Parameters</h4><tableborder=0cellspacing=0cellpadding=0class=CDescriptionList><tr><tdclass=CDLEntry>cell</td><tdclass=CDLDescription><ahref="../model/mxCell-js.html#mxCell"class=LClassid=link255onMouseOver="ShowTip(event, 'tt18', 'link255')"onMouseOut="HideTip('tt18')">mxCell</a> for which the <ahref="mxCellState-js.html#mxCellState"class=LClassid=link256onMouseOver="ShowTip(event, 'tt42', 'link256')"onMouseOut="HideTip('tt42')">mxCellState</a> should be returned.</td></tr><tr><tdclass=CDLEntry>create</td><tdclass=CDLDescription>Optional boolean indicating if a new state should be created if it does not yet exist. Default is false.</td></tr></table></div></div></div>
<divclass="CFunction"><divclass=CTopic><h3class=CTitle><aname="mxGraphView.getCellStates"></a>getCellStates</h3><divclass=CBody><blockquote><tableborder=0cellspacing=0cellpadding=0class="Prototype prettyprint"><tr><td><tableborder=0cellspacing=0cellpadding=0><tr><tdclass=PBeforeParametersnowrap>mxGraphView.prototype.getCellStates = function(</td><tdclass=PParameternowrap>cells</td><tdclass=PAfterParametersnowrap>)</td></tr></table></td></tr></table></blockquote><p>Returns the <ahref="mxCellState-js.html#mxCellState"class=LClassid=link261onMouseOver="ShowTip(event, 'tt42', 'link261')"onMouseOut="HideTip('tt42')">mxCellStates</a> for the given array of <ahref="../model/mxCell-js.html#mxCell"class=LClassid=link262onMouseOver="ShowTip(event, 'tt18', 'link262')"onMouseOut="HideTip('tt18')">mxCells</a>. The array contains all states that are not null, that is, the returned array may have less elements than the given array. If no argument is given, then this returns <states>.</p></div></div></div>
<divclass="CFunction"><divclass=CTopic><h3class=CTitle><aname="mxGraphView.removeState"></a>removeState</h3><divclass=CBody><blockquote><tableborder=0cellspacing=0cellpadding=0class="Prototype prettyprint"><tr><td><tableborder=0cellspacing=0cellpadding=0><tr><tdclass=PBeforeParametersnowrap>mxGraphView.prototype.removeState = function(</td><tdclass=PParameternowrap>cell</td><tdclass=PAfterParametersnowrap>)</td></tr></table></td></tr></table></blockquote><p>Removes and returns the <ahref="mxCellState-js.html#mxCellState"class=LClassid=link263onMouseOver="ShowTip(event, 'tt42', 'link263')"onMouseOut="HideTip('tt42')">mxCellState</a> for the given cell.</p><h4class=CHeading>Parameters</h4><tableborder=0cellspacing=0cellpadding=0class=CDescriptionList><tr><tdclass=CDLEntry>cell</td><tdclass=CDLDescription><ahref="../model/mxCell-js.html#mxCell"class=LClassid=link264onMouseOver="ShowTip(event, 'tt18', 'link264')"onMouseOut="HideTip('tt18')">mxCell</a> for which the <ahref="mxCellState-js.html#mxCellState"class=LClassid=link265onMouseOver="ShowTip(event, 'tt42', 'link265')"onMouseOut="HideTip('tt42')">mxCellState</a> should be removed.</td></tr></table></div></div></div>
<divclass="CFunction"><divclass=CTopic><h3class=CTitle><aname="mxGraphView.createState"></a>createState</h3><divclass=CBody><blockquote><tableborder=0cellspacing=0cellpadding=0class="Prototype prettyprint"><tr><td><tableborder=0cellspacing=0cellpadding=0><tr><tdclass=PBeforeParametersnowrap>mxGraphView.prototype.createState = function(</td><tdclass=PParameternowrap>cell</td><tdclass=PAfterParametersnowrap>)</td></tr></table></td></tr></table></blockquote><p>Creates and returns an <ahref="mxCellState-js.html#mxCellState"class=LClassid=link266onMouseOver="ShowTip(event, 'tt42', 'link266')"onMouseOut="HideTip('tt42')">mxCellState</a> for the given cell and initializes it using <mxCellRenderer.initialize>.</p><h4class=CHeading>Parameters</h4><tableborder=0cellspacing=0cellpadding=0class=CDescriptionList><tr><tdclass=CDLEntry>cell</td><tdclass=CDLDescription><ahref="../model/mxCell-js.html#mxCell"class=LClassid=link267onMouseOver="ShowTip(event, 'tt18', 'link267')"onMouseOut="HideTip('tt18')">mxCell</a> for which a new <ahref="mxCellState-js.html#mxCellState"class=LClassid=link268onMouseOver="ShowTip(event, 'tt42', 'link268')"onMouseOut="HideTip('tt42')">mxCellState</a> should be created.</td></tr></table></div></div></div>
<divclass="CFunction"><divclass=CTopic><h3class=CTitle><aname="mxGraphView.getCanvas"></a>getCanvas</h3><divclass=CBody><blockquote><tableborder=0cellspacing=0cellpadding=0class="Prototype prettyprint"><tr><td>mxGraphView.prototype.getCanvas = function()</td></tr></table></blockquote><p>Returns the DOM node that contains the background-, draw- and overlaypane.</p></div></div></div>
<divclass="CFunction"><divclass=CTopic><h3class=CTitle><aname="mxGraphView.getBackgroundPane"></a>getBackgroundPane</h3><divclass=CBody><blockquote><tableborder=0cellspacing=0cellpadding=0class="Prototype prettyprint"><tr><td>mxGraphView.prototype.getBackgroundPane = function()</td></tr></table></blockquote><p>Returns the DOM node that represents the background layer.</p></div></div></div>
<divclass="CFunction"><divclass=CTopic><h3class=CTitle><aname="mxGraphView.getDrawPane"></a>getDrawPane</h3><divclass=CBody><blockquote><tableborder=0cellspacing=0cellpadding=0class="Prototype prettyprint"><tr><td>mxGraphView.prototype.getDrawPane = function()</td></tr></table></blockquote><p>Returns the DOM node that represents the main drawing layer.</p></div></div></div>
<divclass="CFunction"><divclass=CTopic><h3class=CTitle><aname="mxGraphView.getOverlayPane"></a>getOverlayPane</h3><divclass=CBody><blockquote><tableborder=0cellspacing=0cellpadding=0class="Prototype prettyprint"><tr><td>mxGraphView.prototype.getOverlayPane = function()</td></tr></table></blockquote><p>Returns the DOM node that represents the topmost drawing layer.</p></div></div></div>
<divclass="CFunction"><divclass=CTopic><h3class=CTitle><aname="mxGraphView.isContainerEvent"></a>isContainerEvent</h3><divclass=CBody><blockquote><tableborder=0cellspacing=0cellpadding=0class="Prototype prettyprint"><tr><td><tableborder=0cellspacing=0cellpadding=0><tr><tdclass=PBeforeParametersnowrap>mxGraphView.prototype.isContainerEvent = function(</td><tdclass=PParameternowrap>evt</td><tdclass=PAfterParametersnowrap>)</td></tr></table></td></tr></table></blockquote><p>Returns true if the event origin is one of the drawing panes or containers of the view.</p></div></div></div>
<divclass="CFunction"><divclass=CTopic><h3class=CTitle><aname="mxGraphView.isScrollEvent"></a>isScrollEvent</h3><divclass=CBody><blockquote><tableborder=0cellspacing=0cellpadding=0class="Prototype prettyprint"><tr><td><tableborder=0cellspacing=0cellpadding=0><tr><tdclass=PBeforeParametersnowrap>mxGraphView.prototype.isScrollEvent = function(</td><tdclass=PParameternowrap>evt</td><tdclass=PAfterParametersnowrap>)</td></tr></table></td></tr></table></blockquote><p>Returns true if the event origin is one of the scrollbars of the container in IE. Such events are ignored.</p></div></div></div>
<divclass="CFunction"><divclass=CTopic><h3class=CTitle><aname="mxGraphView.init"></a>init</h3><divclass=CBody><blockquote><tableborder=0cellspacing=0cellpadding=0class="Prototype prettyprint"><tr><td>mxGraphView.prototype.init = function()</td></tr></table></blockquote><p>Initializes the graph event dispatch loop for the specified container and invokes <ahref="#mxGraphView.create"class=LFunctionid=link269onMouseOver="ShowTip(event, 'tt92', 'link269')"onMouseOut="HideTip('tt92')">create</a> to create the required DOM nodes for the display.</p></div></div></div>
<divclass="CFunction"><divclass=CTopic><h3class=CTitle><aname="mxGraphView.installListeners"></a>installListeners</h3><divclass=CBody><blockquote><tableborder=0cellspacing=0cellpadding=0class="Prototype prettyprint"><tr><td>mxGraphView.prototype.installListeners = function()</td></tr></table></blockquote><p>Installs the required listeners in the container.</p></div></div></div>
<divclass="CFunction"><divclass=CTopic><h3class=CTitle><aname="mxGraphView.create"></a>create</h3><divclass=CBody><blockquote><tableborder=0cellspacing=0cellpadding=0class="Prototype prettyprint"><tr><td>mxGraphView.prototype.createHtml = function()</td></tr></table></blockquote><p>Creates the DOM nodes for the HTML display.</p></div></div></div>
<divclass="CFunction"><divclass=CTopic><h3class=CTitle><aname="mxGraphView.updateHtmlCanvasSize"></a>updateHtmlCanvasSize</h3><divclass=CBody><blockquote><tableborder=0cellspacing=0cellpadding=0class="Prototype prettyprint"><tr><td><tableborder=0cellspacing=0cellpadding=0><tr><tdclass=PBeforeParametersnowrap>mxGraphView.prototype.updateHtmlCanvasSize = function(</td><tdclass=PParameternowrap>width,</td></tr><tr><td></td><tdclass=PParameternowrap>height</td><tdclass=PAfterParametersnowrap>)</td></tr></table></td></tr></table></blockquote><p>Updates the size of the HTML canvas.</p></div></div></div>
<divclass="CFunction"><divclass=CTopic><h3class=CTitle><aname="mxGraphView.createHtmlPane"></a>createHtmlPane</h3><divclass=CBody><blockquote><tableborder=0cellspacing=0cellpadding=0class="Prototype prettyprint"><tr><td><tableborder=0cellspacing=0cellpadding=0><tr><tdclass=PBeforeParametersnowrap>mxGraphView.prototype.createHtmlPane = function(</td><tdclass=PParameternowrap>width,</td></tr><tr><td></td><tdclass=PParameternowrap>height</td><tdclass=PAfterParametersnowrap>)</td></tr></table></td></tr></table></blockquote><p>Creates and returns a drawing pane in HTML (DIV).</p></div></div></div>
<divclass="CFunction"><divclass=CTopic><h3class=CTitle><aname="mxGraphView.create"></a>create</h3><divclass=CBody><blockquote><tableborder=0cellspacing=0cellpadding=0class="Prototype prettyprint"><tr><td>mxGraphView.prototype.createVml = function()</td></tr></table></blockquote><p>Creates the DOM nodes for the VML display.</p></div></div></div>
<divclass="CFunction"><divclass=CTopic><h3class=CTitle><aname="mxGraphView.createVmlPane"></a>createVmlPane</h3><divclass=CBody><blockquote><tableborder=0cellspacing=0cellpadding=0class="Prototype prettyprint"><tr><td><tableborder=0cellspacing=0cellpadding=0><tr><tdclass=PBeforeParametersnowrap>mxGraphView.prototype.createVmlPane = function(</td><tdclass=PParameternowrap>width,</td></tr><tr><td></td><tdclass=PParameternowrap>height</td><tdclass=PAfterParametersnowrap>)</td></tr></table></td></tr></table></blockquote><p>Creates a drawing pane in VML (group).</p></div></div></div>
<divclass="CFunction"><divclass=CTopic><h3class=CTitle><aname="mxGraphView.create"></a>create</h3><divclass=CBody><blockquote><tableborder=0cellspacing=0cellpadding=0class="Prototype prettyprint"><tr><td>mxGraphView.prototype.createSvg = function()</td></tr></table></blockquote><p>Creates and returns the DOM nodes for the SVG display.</p></div></div></div>
<divclass="CFunction"><divclass=CTopic><h3class=CTitle><aname="mxGraphView.updateContainerStyle"></a>updateContainerStyle</h3><divclass=CBody><blockquote><tableborder=0cellspacing=0cellpadding=0class="Prototype prettyprint"><tr><td><tableborder=0cellspacing=0cellpadding=0><tr><tdclass=PBeforeParametersnowrap>mxGraphView.prototype.updateContainerStyle = function(</td><tdclass=PParameternowrap>container</td><tdclass=PAfterParametersnowrap>)</td></tr></table></td></tr></table></blockquote><p>Updates the style of the container after installing the SVG DOM elements.</p></div></div></div>
<divclass="CFunction"><divclass=CTopic><h3class=CTitle><aname="mxGraphView.destroy"></a>destroy</h3><divclass=CBody><blockquote><tableborder=0cellspacing=0cellpadding=0class="Prototype prettyprint"><tr><td>mxGraphView.prototype.destroy = function()</td></tr></table></blockquote><p>Destroys the view and all its resources.</p></div></div></div>
<divclass="CClass"><divclass=CTopic><h2class=CTitle><aname="mxCurrentRootChange"></a>mxCurrentRootChange</h2><divclass=CBody><p>Action to change the current root in a view.</p><!--START_ND_SUMMARY--><divclass=Summary><divclass=STitle>Summary</div><divclass=SBorder><tableborder=0cellspacing=0cellpadding=0class=STable><trclass="SGroup"><tdclass=SEntry><ahref="#mxCurrentRootChange.Functions">Functions</a></td><tdclass=SDescription></td></tr><trclass="SFunction SIndent1 SMarked"><tdclass=SEntry><ahref="#mxCurrentRootChange.mxCurrentRootChange"id=link270onMouseOver="ShowTip(event, 'tt99', 'link270')"onMouseOut="HideTip('tt99')">mxCurrentRootChange</a></td><tdclass=SDescription>Constructs a change of the current root in the given view.</td></tr><trclass="SFunction SIndent1"><tdclass=SEntry><ahref="#mxCurrentRootChange.execute"id=link271onMouseOver="ShowTip(event, 'tt100', 'link271')"onMouseOut="HideTip('tt100')">execute</a></td><tdclass=SDescription>Changes the current root of the view.</td></tr></table></div></div><!--END_ND_SUMMARY--></div></div></div>
<divclass="CFunction"><divclass=CTopic><h3class=CTitle><aname="mxCurrentRootChange.mxCurrentRootChange"></a>mxCurrentRootChange</h3><divclass=CBody><blockquote><tableborder=0cellspacing=0cellpadding=0class="Prototype prettyprint"><tr><td><tableborder=0cellspacing=0cellpadding=0><tr><tdclass=PBeforeParametersnowrap>function mxCurrentRootChange(</td><tdclass=PParameternowrap>view,</td></tr><tr><td></td><tdclass=PParameternowrap>root</td><tdclass=PAfterParametersnowrap>)</td></tr></table></td></tr></table></blockquote><p>Constructs a change of the current root in the given view.</p></div></div></div>
<divclass="CFunction"><divclass=CTopic><h3class=CTitle><aname="mxCurrentRootChange.execute"></a>execute</h3><divclass=CBody><blockquote><tableborder=0cellspacing=0cellpadding=0class="Prototype prettyprint"><tr><td>mxCurrentRootChange.prototype.execute = function()</td></tr></table></blockquote><p>Changes the current root of the view.</p></div></div></div>
</div><!--Content-->
<divid=Footer><ahref="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
<divclass=CToolTipid="tt1"><divclass=CClass>Base class for objects that dispatch named events. </div></div><divclass=CToolTipid="tt2"><divclass=CFunction><blockquote><tableborder=0cellspacing=0cellpadding=0class="Prototype prettyprint"><tr><td><tableborder=0cellspacing=0cellpadding=0><tr><tdclass=PBeforeParametersnowrap>mxGraphView.prototype.setCurrentRoot = function(</td><tdclass=PParameternowrap>root</td><tdclass=PAfterParametersnowrap>)</td></tr></table></td></tr></table></blockquote>Sets and returns the current root and fires an undo event before calling mxGraph.sizeDidChange.</div></div><divclass=CToolTipid="tt3"><divclass=CFunction><blockquote><tableborder=0cellspacing=0cellpadding=0class="Prototype prettyprint"><tr><td><tableborder=0cellspacing=0cellpadding=0><tr><tdclass=PBeforeParametersnowrap>mxGraphView.prototype.scaleAndTranslate = function(</td><tdclass=PParameternowrap>scale,</td></tr><tr><td></td><tdclass=PParameternowrap>dx,</td></tr><tr><td></td><tdclass=PParameternowrap>dy</td><tdclass=PAfterParametersnowrap>)</td></tr></table></td></tr></table></blockquote>Sets the scale and translation and fires a scale and translate event before calling revalidate followed by mxGraph.sizeDidChange.</div></div><divclass=CToolTipid="tt4"><divclass=CFunction><blockquote><tableborder=0cellspacing=0cellpadding=0class="Prototype prettyprint"><tr><td><tableborder=0cellspacing=0cellpadding=0><tr><tdclass=PBeforeParametersnowrap>mxGraphView.prototype.setScale = function(</td><tdclass=PParameternowrap>value</td><tdclass=PAfterParametersnowrap>)</td></tr></table></td></tr></table></blockquote>Sets the scale and fires a scale event before calling revalidate followed by mxGraph.sizeDidChange.</div></div><divclass=CToolTipid="tt5"><divclass=CFunction><blockquote><tableborder=0cellspacing=0cellpadding=0class="Prototype prettyprint"><tr><td><tableborder=0cellspacing=0cellpadding=0><tr><tdclass=PBeforeParametersnowrap>mxGraphView.prototype.setTranslate = function(</td><tdclass=PParameternowrap>dx,</td></tr><tr><td></td><tdclass=PParameternowrap>dy</td><tdclass=PAfterParametersnowrap>)</td></tr></table></td></tr></table></blockquote>Sets the translation and fires a translate event before calling revalidate followed by mxGraph.sizeDidChange. </div></div><divclass=CToolTipid="tt6"><divclass=CClass>Action to change the current root in a view.</div></div><divclass=CToolTipid="tt7"><divclass=CFunction><blockquote><tableborder=0cellspacing=0cellpadding=0class="Prototype prettyprint"><tr><td><tableborder=0cellspacing=0cellpadding=0><tr><tdclass=PBeforeParametersnowrap>function mxGraphView(</td><tdclass=PParameternowrap>graph</td><tdclass=PAfterParametersnowrap>)</td></tr></table></td></tr></table></blockquote>Constructs a new view for the given mxGraph.</div></div><divclass=CToolTipid="tt8"><divclass=CClass>Extends mxEventSource to implement a graph component for the browser. </div></div><divclass=CToolTipid="tt9"><divclass=CVariable><blockquote><tableborder=0cellspacing=0cellpadding=0class="Prototype prettyprint"><tr><td>mxGraphView.prototype.doneResource</td></tr></table></blockquote>Specifies the resource key for the status message after a long operation. </div></div><divclass=CToolTipid="tt10"><divclass=CVariable><blockquote><tableborder=0cellspacing=0cellpadding=0class="Prototype prettyprint"><tr><td>mxGraphView.prototype.allowEval</td></tr></table></blockquote>Specifies if string values in cell styles should be evaluated using mxUtils.eval. </div></div><divclass=CToolTipid="tt11"><divclass=CFunction><blockquote><tableborder=0cellspacing=0cellpadding=0class="Prototype prettyprint"><tr><td><tableborder=0cellspacing=0cellpadding=0><tr><tdclass=PBeforeParametersnowrap>eval: function(</td><tdclass=PParameternowrap>expr</td><tdclass=PAfterParametersnowrap>)</td></tr></table></td></tr></table></blockquote>Evaluates the given expression using eval and returns the JavaScript object that represents the expression result.