maxGraph/docs/js-api/files/util/mxSession-js.html

127 lines
69 KiB
HTML

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
<html><head><title>mxSession</title><link rel="stylesheet" type="text/css" href="../../styles/main.css"><script language=JavaScript src="../../javascript/main.js"></script><script language=JavaScript src="../../javascript/prettify.js"></script><script language=JavaScript src="../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"><script language=JavaScript><!--
if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
<!-- Generated by Natural Docs, version 1.5 -->
<!-- http://www.naturaldocs.org -->
<!-- saved from url=(0026)http://www.naturaldocs.org -->
<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="mxSession"></a>mxSession</h1><div class=CBody><p>Session for sharing an <a href="../model/mxGraphModel-js.html#mxGraphModel" class=LClass id=link50 onMouseOver="ShowTip(event, 'tt1', 'link50')" onMouseOut="HideTip('tt1')">mxGraphModel</a> with other parties via a backend that acts as a multicaster for all changes.</p><h4 class=CHeading>Diagram Sharing</h4><p>The diagram sharing is a mechanism where each atomic change of the model is encoded into XML using <a href="../io/mxCodec-js.html#mxCodec" class=LClass id=link51 onMouseOver="ShowTip(event, 'tt14', 'link51')" onMouseOut="HideTip('tt14')">mxCodec</a> and then transmitted to the server by the <a href="#mxSession.mxSession" class=LFunction id=link52 onMouseOver="ShowTip(event, 'tt8', 'link52')" onMouseOut="HideTip('tt8')">mxSession</a> object.&nbsp; On the server, the XML data is dispatched to each listener on the same diagram (except the sender), and the XML is decoded back into atomic changes on the client side, which are then executed on the model and stored in the command history.</p><p>The <a href="#mxSession.significantRemoteChanges" class=LVariable id=link53 onMouseOver="ShowTip(event, 'tt17', 'link53')" onMouseOut="HideTip('tt17')">mxSession.significantRemoteChanges</a> specifies how these changes are treated with respect to undo: The default value (true) will undo the last change regardless of whether it was a remote or a local change.&nbsp; If the switch is false, then an undo will go back until the last local change, silently undoing all remote changes up to that point.&nbsp; Note that these changes will be added as new remote changes to the history of the other clients.</p><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SMain"><td class=SEntry><a href="#mxSession" >mxSession</a></td><td class=SDescription>Session for sharing an <a href="../model/mxGraphModel-js.html#mxGraphModel" class=LClass id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">mxGraphModel</a> with other parties via a backend that acts as a multicaster for all changes.</td></tr><tr class="SGroup SIndent1"><td class=SEntry><a href="#mxSession.Events" >Events</a></td><td class=SDescription></td></tr><tr class="SEvent SIndent2 SMarked"><td class=SEntry><a href="#mxSession.mxEvent.CONNECT" >mxEvent.<wbr>CONNECT</a></td><td class=SDescription>Fires after the session has been started, that is, after the response to the initial request was received and the session goes into polling mode. </td></tr><tr class="SEvent SIndent2"><td class=SEntry><a href="#mxSession.mxEvent.SUSPEND" >mxEvent.<wbr>SUSPEND</a></td><td class=SDescription>Fires after <a href="#mxSession.suspend" class=LFunction id=link2 onMouseOver="ShowTip(event, 'tt2', 'link2')" onMouseOut="HideTip('tt2')">suspend</a> was called an the session was not already in suspended state. </td></tr><tr class="SEvent SIndent2 SMarked"><td class=SEntry><a href="#mxSession.mxEvent.RESUME" >mxEvent.<wbr>RESUME</a></td><td class=SDescription>Fires after the session was resumed in <a href="#mxSession.resume" class=LFunction id=link3 onMouseOver="ShowTip(event, 'tt3', 'link3')" onMouseOut="HideTip('tt3')">resume</a>. </td></tr><tr class="SEvent SIndent2"><td class=SEntry><a href="#mxSession.mxEvent.DISCONNECT" >mxEvent.<wbr>DISCONNECT</a></td><td class=SDescription>Fires after the session was stopped in <a href="#mxSession.stop" class=LFunction id=link4 onMouseOver="ShowTip(event, 'tt4', 'link4')" onMouseOut="HideTip('tt4')">stop</a>. </td></tr><tr class="SEvent SIndent2 SMarked"><td class=SEntry><a href="#mxSession.mxEvent.NOTIFY" >mxEvent.<wbr>NOTIFY</a></td><td class=SDescription>Fires after a notification was sent in <a href="#mxSession.notify" class=LFunction id=link5 onMouseOver="ShowTip(event, 'tt5', 'link5')" onMouseOut="HideTip('tt5')">notify</a>. </td></tr><tr class="SEvent SIndent2"><td class=SEntry><a href="#mxSession.mxEvent.GET" >mxEvent.GET</a></td><td class=SDescription>Fires after a response was received in <a href="#mxSession.get" class=LFunction id=link6 onMouseOver="ShowTip(event, 'tt6', 'link6')" onMouseOut="HideTip('tt6')">get</a>. </td></tr><tr class="SEvent SIndent2 SMarked"><td class=SEntry><a href="#mxSession.mxEvent.FIRED" >mxEvent.<wbr>FIRED</a></td><td class=SDescription>Fires after an array of edits has been executed on the model. </td></tr><tr class="SEvent SIndent2"><td class=SEntry><a href="#mxSession.mxEvent.RECEIVE" >mxEvent.<wbr>RECEIVE</a></td><td class=SDescription>Fires after an XML node was received in <a href="#mxSession.receive" class=LFunction id=link7 onMouseOver="ShowTip(event, 'tt7', 'link7')" onMouseOut="HideTip('tt7')">receive</a>. </td></tr><tr class="SGroup SIndent1"><td class=SEntry><a href="#mxSession.Functions" >Functions</a></td><td class=SDescription></td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#mxSession.mxSession" id=link8 onMouseOver="ShowTip(event, 'tt8', 'link8')" onMouseOut="HideTip('tt8')">mxSession</a></td><td class=SDescription>Constructs a new session using the given <a href="../model/mxGraphModel-js.html#mxGraphModel" class=LClass id=link9 onMouseOver="ShowTip(event, 'tt1', 'link9')" onMouseOut="HideTip('tt1')">mxGraphModel</a> and URLs to communicate with the backend.</td></tr><tr class="SGroup SIndent1"><td class=SEntry><a href="#mxSession.Variables" >Variables</a></td><td class=SDescription></td></tr><tr class="SVariable SIndent2 SMarked"><td class=SEntry><a href="#mxSession.model" id=link10 onMouseOver="ShowTip(event, 'tt9', 'link10')" onMouseOut="HideTip('tt9')">model</a></td><td class=SDescription>Reference to the enclosing <a href="../model/mxGraphModel-js.html#mxGraphModel" class=LClass id=link11 onMouseOver="ShowTip(event, 'tt1', 'link11')" onMouseOut="HideTip('tt1')">mxGraphModel</a>.</td></tr><tr class="SVariable SIndent2"><td class=SEntry><a href="#mxSession.urlInit" id=link12 onMouseOver="ShowTip(event, 'tt10', 'link12')" onMouseOut="HideTip('tt10')">urlInit</a></td><td class=SDescription>URL to initialize the session.</td></tr><tr class="SVariable SIndent2 SMarked"><td class=SEntry><a href="#mxSession.urlPoll" id=link13 onMouseOver="ShowTip(event, 'tt11', 'link13')" onMouseOut="HideTip('tt11')">urlPoll</a></td><td class=SDescription>URL for polling the backend.</td></tr><tr class="SVariable SIndent2"><td class=SEntry><a href="#mxSession.urlNotify" id=link14 onMouseOver="ShowTip(event, 'tt12', 'link14')" onMouseOut="HideTip('tt12')">urlNotify</a></td><td class=SDescription>URL to send changes to the backend.</td></tr><tr class="SVariable SIndent2 SMarked"><td class=SEntry><a href="#mxSession.codec" id=link15 onMouseOver="ShowTip(event, 'tt13', 'link15')" onMouseOut="HideTip('tt13')">codec</a></td><td class=SDescription>Reference to the <a href="../io/mxCodec-js.html#mxCodec" class=LClass id=link16 onMouseOver="ShowTip(event, 'tt14', 'link16')" onMouseOut="HideTip('tt14')">mxCodec</a> used to encoding and decoding changes.</td></tr><tr class="SVariable SIndent2"><td class=SEntry><a href="#mxSession.linefeed" id=link17 onMouseOver="ShowTip(event, 'tt15', 'link17')" onMouseOut="HideTip('tt15')">linefeed</a></td><td class=SDescription>Used for encoding linefeeds. </td></tr><tr class="SVariable SIndent2 SMarked"><td class=SEntry><a href="#mxSession.escapePostData" id=link18 onMouseOver="ShowTip(event, 'tt16', 'link18')" onMouseOut="HideTip('tt16')">escapePostData</a></td><td class=SDescription>Specifies if the data in the post request sent in <a href="#mxSession.notify" class=LFunction id=link19 onMouseOver="ShowTip(event, 'tt5', 'link19')" onMouseOut="HideTip('tt5')">notify</a> should be converted using encodeURIComponent. </td></tr><tr class="SVariable SIndent2"><td class=SEntry><a href="#mxSession.significantRemoteChanges" id=link20 onMouseOver="ShowTip(event, 'tt17', 'link20')" onMouseOut="HideTip('tt17')">significantRemoteChanges</a></td><td class=SDescription>Whether remote changes should be significant in the local command history. </td></tr><tr class="SVariable SIndent2 SMarked"><td class=SEntry><a href="#mxSession.sent" id=link21 onMouseOver="ShowTip(event, 'tt18', 'link21')" onMouseOut="HideTip('tt18')">sent</a></td><td class=SDescription>Total number of sent bytes.</td></tr><tr class="SVariable SIndent2"><td class=SEntry><a href="#mxSession.received" id=link22 onMouseOver="ShowTip(event, 'tt19', 'link22')" onMouseOut="HideTip('tt19')">received</a></td><td class=SDescription>Total number of received bytes.</td></tr><tr class="SVariable SIndent2 SMarked"><td class=SEntry><a href="#mxSession.debug" id=link23 onMouseOver="ShowTip(event, 'tt20', 'link23')" onMouseOut="HideTip('tt20')">debug</a></td><td class=SDescription>Specifies if the session should run in debug mode. </td></tr><tr class="SVariable SIndent2"><td class=SEntry><a href="#mxSession.connected" id=link24 onMouseOver="ShowTip(event, 'tt21', 'link24')" onMouseOut="HideTip('tt21')">connected</a></td><td class=SDescription></td></tr><tr class="SVariable SIndent2 SMarked"><td class=SEntry><a href="#mxSession.send" >send</a></td><td class=SDescription></td></tr><tr class="SVariable SIndent2"><td class=SEntry><a href="#mxSession.polling" id=link25 onMouseOver="ShowTip(event, 'tt22', 'link25')" onMouseOut="HideTip('tt22')">polling</a></td><td class=SDescription></td></tr><tr class="SGroup SIndent1"><td class=SEntry><a href="#mxSession.Functions" >Functions</a></td><td class=SDescription></td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#mxSession.start" id=link26 onMouseOver="ShowTip(event, 'tt23', 'link26')" onMouseOut="HideTip('tt23')">start</a></td><td class=SDescription></td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#mxSession.suspend" id=link27 onMouseOver="ShowTip(event, 'tt2', 'link27')" onMouseOut="HideTip('tt2')">suspend</a></td><td class=SDescription>Suspends the polling. </td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#mxSession.resume" id=link28 onMouseOver="ShowTip(event, 'tt3', 'link28')" onMouseOut="HideTip('tt3')">resume</a></td><td class=SDescription>Resumes the session if it has been suspended. </td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#mxSession.stop" id=link29 onMouseOver="ShowTip(event, 'tt4', 'link29')" onMouseOut="HideTip('tt4')">stop</a></td><td class=SDescription>Stops the session and fires a disconnect event. </td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#mxSession.poll" id=link30 onMouseOver="ShowTip(event, 'tt24', 'link30')" onMouseOut="HideTip('tt24')">poll</a></td><td class=SDescription>Sends an asynchronous GET request to <a href="#mxSession.urlPoll" class=LVariable id=link31 onMouseOver="ShowTip(event, 'tt11', 'link31')" onMouseOut="HideTip('tt11')">urlPoll</a>.</td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#mxSession.notify" id=link32 onMouseOver="ShowTip(event, 'tt5', 'link32')" onMouseOut="HideTip('tt5')">notify</a></td><td class=SDescription>Sends out the specified XML to <a href="#mxSession.urlNotify" class=LVariable id=link33 onMouseOver="ShowTip(event, 'tt12', 'link33')" onMouseOut="HideTip('tt12')">urlNotify</a> and fires a <a href="#mxSession.notify" class=LFunction id=link34 onMouseOver="ShowTip(event, 'tt5', 'link34')" onMouseOut="HideTip('tt5')">notify</a> event.</td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#mxSession.get" id=link35 onMouseOver="ShowTip(event, 'tt6', 'link35')" onMouseOut="HideTip('tt6')">get</a></td><td class=SDescription>Sends an asynchronous get request to the given URL, fires a <a href="#mxSession.get" class=LFunction id=link36 onMouseOver="ShowTip(event, 'tt6', 'link36')" onMouseOut="HideTip('tt6')">get</a> event and invokes the given onLoad function when a response is received.</td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#mxSession.isValidResponse" id=link37 onMouseOver="ShowTip(event, 'tt25', 'link37')" onMouseOut="HideTip('tt25')">isValidResponse</a></td><td class=SDescription>Returns true if the response data in the given <a href="mxXmlRequest-js.html#mxXmlRequest" class=LClass id=link38 onMouseOver="ShowTip(event, 'tt26', 'link38')" onMouseOut="HideTip('tt26')">mxXmlRequest</a> is valid.</td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#mxSession.encodeChanges" id=link39 onMouseOver="ShowTip(event, 'tt27', 'link39')" onMouseOut="HideTip('tt27')">encodeChanges</a></td><td class=SDescription>Returns the XML representation for the given array of changes.</td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#mxSession.receive" id=link40 onMouseOver="ShowTip(event, 'tt7', 'link40')" onMouseOut="HideTip('tt7')">receive</a></td><td class=SDescription>Processes the given node by applying the changes to the model. </td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#mxSession.processState" id=link41 onMouseOver="ShowTip(event, 'tt28', 'link41')" onMouseOut="HideTip('tt28')">processState</a></td><td class=SDescription>Processes the given state node which contains the current state of the remote model.</td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#mxSession.processDelta" id=link42 onMouseOver="ShowTip(event, 'tt29', 'link42')" onMouseOut="HideTip('tt29')">processDelta</a></td><td class=SDescription>Processes the given delta node which contains a sequence of edits which in turn map to one transaction on the remote model each.</td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#mxSession.processEdit" id=link43 onMouseOver="ShowTip(event, 'tt30', 'link43')" onMouseOut="HideTip('tt30')">processEdit</a></td><td class=SDescription>Processes the given edit by executing its changes and firing the required events via the model.</td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#mxSession.createUndoableEdit" id=link44 onMouseOver="ShowTip(event, 'tt31', 'link44')" onMouseOut="HideTip('tt31')">createUndoableEdit</a></td><td class=SDescription>Creates a new <a href="mxUndoableEdit-js.html#mxUndoableEdit" class=LClass id=link45 onMouseOver="ShowTip(event, 'tt32', 'link45')" onMouseOut="HideTip('tt32')">mxUndoableEdit</a> that implements the notify function to fire a &lt;change&gt; and <a href="#mxSession.notify" class=LFunction id=link46 onMouseOver="ShowTip(event, 'tt5', 'link46')" onMouseOut="HideTip('tt5')">notify</a> event via the model.</td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#mxSession.decodeChanges" id=link47 onMouseOver="ShowTip(event, 'tt33', 'link47')" onMouseOut="HideTip('tt33')">decodeChanges</a></td><td class=SDescription>Decodes and executes the changes represented by the children in the given node. </td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#mxSession.decodeChange" id=link48 onMouseOver="ShowTip(event, 'tt34', 'link48')" onMouseOut="HideTip('tt34')">decodeChange</a></td><td class=SDescription>Decodes, executes and returns the change object represented by the given XML node.</td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#mxSession.cellRemoved" id=link49 onMouseOver="ShowTip(event, 'tt35', 'link49')" onMouseOut="HideTip('tt35')">cellRemoved</a></td><td class=SDescription>Adds removed cells to the codec object lookup for references to the removed cells after this point in time.</td></tr></table></div></div><!--END_ND_SUMMARY--></div></div></div>
<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="mxSession.Events"></a>Events</h3></div></div>
<div class="CEvent"><div class=CTopic><h3 class=CTitle><a name="mxSession.mxEvent.CONNECT"></a>mxEvent.<wbr>CONNECT</h3><div class=CBody><p>Fires after the session has been started, that is, after the response to the initial request was received and the session goes into polling mode.&nbsp; This event has no properties.</p></div></div></div>
<div class="CEvent"><div class=CTopic><h3 class=CTitle><a name="mxSession.mxEvent.SUSPEND"></a>mxEvent.<wbr>SUSPEND</h3><div class=CBody><p>Fires after <a href="#mxSession.suspend" class=LFunction id=link54 onMouseOver="ShowTip(event, 'tt2', 'link54')" onMouseOut="HideTip('tt2')">suspend</a> was called an the session was not already in suspended state.&nbsp; This event has no properties.</p></div></div></div>
<div class="CEvent"><div class=CTopic><h3 class=CTitle><a name="mxSession.mxEvent.RESUME"></a>mxEvent.<wbr>RESUME</h3><div class=CBody><p>Fires after the session was resumed in <a href="#mxSession.resume" class=LFunction id=link55 onMouseOver="ShowTip(event, 'tt3', 'link55')" onMouseOut="HideTip('tt3')">resume</a>.&nbsp; This event has no properties.</p></div></div></div>
<div class="CEvent"><div class=CTopic><h3 class=CTitle><a name="mxSession.mxEvent.DISCONNECT"></a>mxEvent.<wbr>DISCONNECT</h3><div class=CBody><p>Fires after the session was stopped in <a href="#mxSession.stop" class=LFunction id=link56 onMouseOver="ShowTip(event, 'tt4', 'link56')" onMouseOut="HideTip('tt4')">stop</a>.&nbsp; The &lt;code&gt;reason&lt;/code&gt; property contains the optional exception that was passed to the stop method.</p></div></div></div>
<div class="CEvent"><div class=CTopic><h3 class=CTitle><a name="mxSession.mxEvent.NOTIFY"></a>mxEvent.<wbr>NOTIFY</h3><div class=CBody><p>Fires after a notification was sent in <a href="#mxSession.notify" class=LFunction id=link57 onMouseOver="ShowTip(event, 'tt5', 'link57')" onMouseOut="HideTip('tt5')">notify</a>.&nbsp; The &lt;code&gt;url&lt;/code&gt; property contains the URL and the &lt;code&gt;xml&lt;/code&gt; property contains the XML data of the request.</p></div></div></div>
<div class="CEvent"><div class=CTopic><h3 class=CTitle><a name="mxSession.mxEvent.GET"></a>mxEvent.GET</h3><div class=CBody><p>Fires after a response was received in <a href="#mxSession.get" class=LFunction id=link58 onMouseOver="ShowTip(event, 'tt6', 'link58')" onMouseOut="HideTip('tt6')">get</a>.&nbsp; The &lt;code&gt;url&lt;/code&gt; property contains the URL and the &lt;code&gt;request&lt;/code&gt; is the <a href="mxXmlRequest-js.html#mxXmlRequest" class=LClass id=link59 onMouseOver="ShowTip(event, 'tt26', 'link59')" onMouseOut="HideTip('tt26')">mxXmlRequest</a> that contains the response.</p></div></div></div>
<div class="CEvent"><div class=CTopic><h3 class=CTitle><a name="mxSession.mxEvent.FIRED"></a>mxEvent.<wbr>FIRED</h3><div class=CBody><p>Fires after an array of edits has been executed on the model.&nbsp; The &lt;code&gt;changes&lt;/code&gt; property contains the array of changes.</p></div></div></div>
<div class="CEvent"><div class=CTopic><h3 class=CTitle><a name="mxSession.mxEvent.RECEIVE"></a>mxEvent.<wbr>RECEIVE</h3><div class=CBody><p>Fires after an XML node was received in <a href="#mxSession.receive" class=LFunction id=link60 onMouseOver="ShowTip(event, 'tt7', 'link60')" onMouseOut="HideTip('tt7')">receive</a>.&nbsp; The &lt;code&gt;node&lt;/code&gt; property contains the node that was received.</p></div></div></div>
<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="mxSession.Functions"></a>Functions</h3></div></div>
<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="mxSession.mxSession"></a>mxSession</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype prettyprint"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>function mxSession(</td><td class=PParameter nowrap>model,</td></tr><tr><td></td><td class=PParameter nowrap>urlInit,</td></tr><tr><td></td><td class=PParameter nowrap>urlPoll,</td></tr><tr><td></td><td class=PParameter nowrap>urlNotify</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote><p>Constructs a new session using the given <a href="../model/mxGraphModel-js.html#mxGraphModel" class=LClass id=link61 onMouseOver="ShowTip(event, 'tt1', 'link61')" onMouseOut="HideTip('tt1')">mxGraphModel</a> and URLs to communicate with the backend.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>model</td><td class=CDLDescription><a href="../model/mxGraphModel-js.html#mxGraphModel" class=LClass id=link62 onMouseOver="ShowTip(event, 'tt1', 'link62')" onMouseOut="HideTip('tt1')">mxGraphModel</a> that contains the data.</td></tr><tr><td class=CDLEntry>urlInit</td><td class=CDLDescription>URL to be used for initializing the session.</td></tr><tr><td class=CDLEntry>urlPoll</td><td class=CDLDescription>URL to be used for polling the backend.</td></tr><tr><td class=CDLEntry>urlNotify</td><td class=CDLDescription>URL to be used for sending changes to the backend.</td></tr></table></div></div></div>
<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="mxSession.Variables"></a>Variables</h3></div></div>
<div class="CVariable"><div class=CTopic><h3 class=CTitle><a name="mxSession.model"></a>model</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype prettyprint"><tr><td>mxSession.prototype.model</td></tr></table></blockquote><p>Reference to the enclosing <a href="../model/mxGraphModel-js.html#mxGraphModel" class=LClass id=link63 onMouseOver="ShowTip(event, 'tt1', 'link63')" onMouseOut="HideTip('tt1')">mxGraphModel</a>.</p></div></div></div>
<div class="CVariable"><div class=CTopic><h3 class=CTitle><a name="mxSession.urlInit"></a>urlInit</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype prettyprint"><tr><td>mxSession.prototype.urlInit</td></tr></table></blockquote><p>URL to initialize the session.</p></div></div></div>
<div class="CVariable"><div class=CTopic><h3 class=CTitle><a name="mxSession.urlPoll"></a>urlPoll</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype prettyprint"><tr><td>mxSession.prototype.urlPoll</td></tr></table></blockquote><p>URL for polling the backend.</p></div></div></div>
<div class="CVariable"><div class=CTopic><h3 class=CTitle><a name="mxSession.urlNotify"></a>urlNotify</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype prettyprint"><tr><td>mxSession.prototype.urlNotify</td></tr></table></blockquote><p>URL to send changes to the backend.</p></div></div></div>
<div class="CVariable"><div class=CTopic><h3 class=CTitle><a name="mxSession.codec"></a>codec</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype prettyprint"><tr><td>mxSession.prototype.codec</td></tr></table></blockquote><p>Reference to the <a href="../io/mxCodec-js.html#mxCodec" class=LClass id=link64 onMouseOver="ShowTip(event, 'tt14', 'link64')" onMouseOut="HideTip('tt14')">mxCodec</a> used to encoding and decoding changes.</p></div></div></div>
<div class="CVariable"><div class=CTopic><h3 class=CTitle><a name="mxSession.linefeed"></a>linefeed</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype prettyprint"><tr><td>mxSession.prototype.linefeed</td></tr></table></blockquote><p>Used for encoding linefeeds.&nbsp; Default is &lsquo;&amp;#xa;&rsquo;.</p></div></div></div>
<div class="CVariable"><div class=CTopic><h3 class=CTitle><a name="mxSession.escapePostData"></a>escapePostData</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype prettyprint"><tr><td>mxSession.prototype.escapePostData</td></tr></table></blockquote><p>Specifies if the data in the post request sent in <a href="#mxSession.notify" class=LFunction id=link65 onMouseOver="ShowTip(event, 'tt5', 'link65')" onMouseOut="HideTip('tt5')">notify</a> should be converted using encodeURIComponent.&nbsp; Default is true.</p></div></div></div>
<div class="CVariable"><div class=CTopic><h3 class=CTitle><a name="mxSession.significantRemoteChanges"></a>significantRemoteChanges</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype prettyprint"><tr><td>mxSession.prototype.significantRemoteChanges</td></tr></table></blockquote><p>Whether remote changes should be significant in the local command history.&nbsp; Default is true.</p></div></div></div>
<div class="CVariable"><div class=CTopic><h3 class=CTitle><a name="mxSession.sent"></a>sent</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype prettyprint"><tr><td>mxSession.prototype.sent</td></tr></table></blockquote><p>Total number of sent bytes.</p></div></div></div>
<div class="CVariable"><div class=CTopic><h3 class=CTitle><a name="mxSession.received"></a>received</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype prettyprint"><tr><td>mxSession.prototype.received</td></tr></table></blockquote><p>Total number of received bytes.</p></div></div></div>
<div class="CVariable"><div class=CTopic><h3 class=CTitle><a name="mxSession.debug"></a>debug</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype prettyprint"><tr><td>mxSession.prototype.debug</td></tr></table></blockquote><p>Specifies if the session should run in debug mode.&nbsp; In this mode, no connection is established.&nbsp; The data is written to the console instead.&nbsp; Default is false.</p></div></div></div>
<div class="CVariable"><div class=CTopic><h3 class=CTitle><a name="mxSession.connected"></a>connected</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype prettyprint"><tr><td>mxSession.prototype.connected</td></tr></table></blockquote></div></div></div>
<div class="CVariable"><div class=CTopic><h3 class=CTitle><a name="mxSession.send"></a>send</h3></div></div>
<div class="CVariable"><div class=CTopic><h3 class=CTitle><a name="mxSession.polling"></a>polling</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype prettyprint"><tr><td>mxSession.prototype.polling</td></tr></table></blockquote></div></div></div>
<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="mxSession.Functions"></a>Functions</h3></div></div>
<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="mxSession.start"></a>start</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype prettyprint"><tr><td>mxSession.prototype.start = function()</td></tr></table></blockquote></div></div></div>
<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="mxSession.suspend"></a>suspend</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype prettyprint"><tr><td>mxSession.prototype.suspend = function()</td></tr></table></blockquote><p>Suspends the polling.&nbsp; Use <a href="#mxSession.resume" class=LFunction id=link66 onMouseOver="ShowTip(event, 'tt3', 'link66')" onMouseOut="HideTip('tt3')">resume</a> to reactive the session.&nbsp; Fires a suspend event.</p></div></div></div>
<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="mxSession.resume"></a>resume</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype prettyprint"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>mxSession.prototype.resume = function(</td><td class=PParameter nowrap>type,</td></tr><tr><td></td><td class=PParameter nowrap>attr,</td></tr><tr><td></td><td class=PParameter nowrap>value</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote><p>Resumes the session if it has been suspended.&nbsp; Fires a resume-event before starting the polling.</p></div></div></div>
<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="mxSession.stop"></a>stop</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype prettyprint"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>mxSession.prototype.stop = function(</td><td class=PParameter nowrap>reason</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote><p>Stops the session and fires a disconnect event.&nbsp; The given reason is passed to the disconnect event listener as the second argument.</p></div></div></div>
<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="mxSession.poll"></a>poll</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype prettyprint"><tr><td>mxSession.prototype.poll = function()</td></tr></table></blockquote><p>Sends an asynchronous GET request to <a href="#mxSession.urlPoll" class=LVariable id=link67 onMouseOver="ShowTip(event, 'tt11', 'link67')" onMouseOut="HideTip('tt11')">urlPoll</a>.</p></div></div></div>
<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="mxSession.notify"></a>notify</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype prettyprint"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>mxSession.prototype.notify = function(</td><td class=PParameter nowrap>xml,</td></tr><tr><td></td><td class=PParameter nowrap>onLoad,</td></tr><tr><td></td><td class=PParameter nowrap>onError</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote><p>Sends out the specified XML to <a href="#mxSession.urlNotify" class=LVariable id=link68 onMouseOver="ShowTip(event, 'tt12', 'link68')" onMouseOut="HideTip('tt12')">urlNotify</a> and fires a <a href="#mxSession.notify" class=LFunction id=link69 onMouseOver="ShowTip(event, 'tt5', 'link69')" onMouseOut="HideTip('tt5')">notify</a> event.</p></div></div></div>
<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="mxSession.get"></a>get</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype prettyprint"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>mxSession.prototype.get = function(</td><td class=PParameter nowrap>url,</td></tr><tr><td></td><td class=PParameter nowrap>onLoad,</td></tr><tr><td></td><td class=PParameter nowrap>onError</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote><p>Sends an asynchronous get request to the given URL, fires a <a href="#mxSession.get" class=LFunction id=link70 onMouseOver="ShowTip(event, 'tt6', 'link70')" onMouseOut="HideTip('tt6')">get</a> event and invokes the given onLoad function when a response is received.</p></div></div></div>
<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="mxSession.isValidResponse"></a>isValidResponse</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype prettyprint"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>mxSession.prototype.isValidResponse = function(</td><td class=PParameter nowrap>req</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote><p>Returns true if the response data in the given <a href="mxXmlRequest-js.html#mxXmlRequest" class=LClass id=link71 onMouseOver="ShowTip(event, 'tt26', 'link71')" onMouseOut="HideTip('tt26')">mxXmlRequest</a> is valid.</p></div></div></div>
<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="mxSession.encodeChanges"></a>encodeChanges</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype prettyprint"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>mxSession.prototype.encodeChanges = function(</td><td class=PParameter nowrap>changes,</td></tr><tr><td></td><td class=PParameter nowrap>invert</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote><p>Returns the XML representation for the given array of changes.</p></div></div></div>
<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="mxSession.receive"></a>receive</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype prettyprint"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>mxSession.prototype.receive = function(</td><td class=PParameter nowrap>node</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote><p>Processes the given node by applying the changes to the model.&nbsp; If the nodename is state, then the namespace is used as a prefix for creating Ids in the model, and the child nodes are visited recursively.&nbsp; If the nodename is delta, then the changes encoded in the child nodes are applied to the model.&nbsp; Each call to the receive function fires a <a href="#mxSession.receive" class=LFunction id=link72 onMouseOver="ShowTip(event, 'tt7', 'link72')" onMouseOut="HideTip('tt7')">receive</a> event with the given node as the second argument after processing.&nbsp; If changes are processed, then the function additionally fires a <a href="#mxSession.mxEvent.FIRED" class=LEvent id=link73 onMouseOver="ShowTip(event, 'tt36', 'link73')" onMouseOut="HideTip('tt36')">mxEvent.FIRED</a> event before the <a href="#mxSession.mxEvent.RECEIVE" class=LEvent id=link74 onMouseOver="ShowTip(event, 'tt37', 'link74')" onMouseOut="HideTip('tt37')">mxEvent.RECEIVE</a> event.</p></div></div></div>
<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="mxSession.processState"></a>processState</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype prettyprint"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>mxSession.prototype.processState = function(</td><td class=PParameter nowrap>node</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote><p>Processes the given state node which contains the current state of the remote model.</p></div></div></div>
<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="mxSession.processDelta"></a>processDelta</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype prettyprint"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>mxSession.prototype.processDelta = function(</td><td class=PParameter nowrap>node</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote><p>Processes the given delta node which contains a sequence of edits which in turn map to one transaction on the remote model each.</p></div></div></div>
<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="mxSession.processEdit"></a>processEdit</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype prettyprint"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>mxSession.prototype.processEdit = function(</td><td class=PParameter nowrap>node</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote><p>Processes the given edit by executing its changes and firing the required events via the model.</p></div></div></div>
<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="mxSession.createUndoableEdit"></a>createUndoableEdit</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype prettyprint"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>mxSession.prototype.createUndoableEdit = function(</td><td class=PParameter nowrap>changes</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote><p>Creates a new <a href="mxUndoableEdit-js.html#mxUndoableEdit" class=LClass id=link75 onMouseOver="ShowTip(event, 'tt32', 'link75')" onMouseOut="HideTip('tt32')">mxUndoableEdit</a> that implements the notify function to fire a &lt;change&gt; and <a href="#mxSession.notify" class=LFunction id=link76 onMouseOver="ShowTip(event, 'tt5', 'link76')" onMouseOut="HideTip('tt5')">notify</a> event via the model.</p></div></div></div>
<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="mxSession.decodeChanges"></a>decodeChanges</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype prettyprint"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>mxSession.prototype.decodeChanges = function(</td><td class=PParameter nowrap>node</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote><p>Decodes and executes the changes represented by the children in the given node.&nbsp; Returns an array that contains all changes.</p></div></div></div>
<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="mxSession.decodeChange"></a>decodeChange</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype prettyprint"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>mxSession.prototype.decodeChange = function(</td><td class=PParameter nowrap>node</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote><p>Decodes, executes and returns the change object represented by the given XML node.</p></div></div></div>
<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="mxSession.cellRemoved"></a>cellRemoved</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype prettyprint"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>mxSession.prototype.cellRemoved = function(</td><td class=PParameter nowrap>cell,</td></tr><tr><td></td><td class=PParameter nowrap>codec</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote><p>Adds removed cells to the codec object lookup for references to the removed cells after this point in time.</p></div></div></div>
</div><!--Content-->
<div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
<div id=Menu><div class=MEntry><div class=MFile><a href="../index-txt.html">API Specification</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">Editor</a><div class=MGroupContent id=MGroupContent1><div class=MEntry><div class=MFile><a href="../editor/mxDefaultKeyHandler-js.html">mxDefaultKeyHandler</a></div></div><div class=MEntry><div class=MFile><a href="../editor/mxDefaultPopupMenu-js.html">mxDefaultPopupMenu</a></div></div><div class=MEntry><div class=MFile><a href="../editor/mxDefaultToolbar-js.html">mxDefaultToolbar</a></div></div><div class=MEntry><div class=MFile><a href="../editor/mxEditor-js.html">mxEditor</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent2')">Handler</a><div class=MGroupContent id=MGroupContent2><div class=MEntry><div class=MFile><a href="../handler/mxCellHighlight-js.html">mxCellHighlight</a></div></div><div class=MEntry><div class=MFile><a href="../handler/mxCellMarker-js.html">mxCellMarker</a></div></div><div class=MEntry><div class=MFile><a href="../handler/mxCellTracker-js.html">mxCellTracker</a></div></div><div class=MEntry><div class=MFile><a href="../handler/mxConnectionHandler-js.html">mxConnectionHandler</a></div></div><div class=MEntry><div class=MFile><a href="../handler/mxConstraintHandler-js.html">mxConstraintHandler</a></div></div><div class=MEntry><div class=MFile><a href="../handler/mxEdgeHandler-js.html">mxEdgeHandler</a></div></div><div class=MEntry><div class=MFile><a href="../handler/mxEdgeSegmentHandler-js.html">mxEdgeSegmentHandler.js</a></div></div><div class=MEntry><div class=MFile><a href="../handler/mxElbowEdgeHandler-js.html">mxElbowEdgeHandler</a></div></div><div class=MEntry><div class=MFile><a href="../handler/mxGraphHandler-js.html">mxGraphHandler</a></div></div><div class=MEntry><div class=MFile><a href="../handler/mxKeyHandler-js.html">mxKeyHandler</a></div></div><div class=MEntry><div class=MFile><a href="../handler/mxPanningHandler-js.html">mxPanningHandler</a></div></div><div class=MEntry><div class=MFile><a href="../handler/mxPopupMenuHandler-js.html">mxPopupMenuHandler</a></div></div><div class=MEntry><div class=MFile><a href="../handler/mxRubberband-js.html">mxRubberband</a></div></div><div class=MEntry><div class=MFile><a href="../handler/mxSelectionCellsHandler-js.html">mxSelectionCellsHandler</a></div></div><div class=MEntry><div class=MFile><a href="../handler/mxTooltipHandler-js.html">mxTooltipHandler</a></div></div><div class=MEntry><div class=MFile><a href="../handler/mxVertexHandler-js.html">mxVertexHandler</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent3')">Io</a><div class=MGroupContent id=MGroupContent3><div class=MEntry><div class=MFile><a href="../io/mxCellCodec-js.html">mxCellCodec</a></div></div><div class=MEntry><div class=MFile><a href="../io/mxChildChangeCodec-js.html">mxChildChangeCodec</a></div></div><div class=MEntry><div class=MFile><a href="../io/mxCodec-js.html">mxCodec</a></div></div><div class=MEntry><div class=MFile><a href="../io/mxCodecRegistry-js.html">mxCodecRegistry</a></div></div><div class=MEntry><div class=MFile><a href="../io/mxDefaultKeyHandlerCodec-js.html">mxDefaultKeyHandlerCodec</a></div></div><div class=MEntry><div class=MFile><a href="../io/mxDefaultPopupMenuCodec-js.html">mxDefaultPopupMenuCodec</a></div></div><div class=MEntry><div class=MFile><a href="../io/mxDefaultToolbarCodec-js.html">mxDefaultToolbarCodec</a></div></div><div class=MEntry><div class=MFile><a href="../io/mxEditorCodec-js.html">mxEditorCodec</a></div></div><div class=MEntry><div class=MFile><a href="../io/mxGenericChangeCodec-js.html">mxGenericChangeCodec</a></div></div><div class=MEntry><div class=MFile><a href="../io/mxGraphCodec-js.html">mxGraphCodec</a></div></div><div class=MEntry><div class=MFile><a href="../io/mxGraphViewCodec-js.html">mxGraphViewCodec</a></div></div><div class=MEntry><div class=MFile><a href="../io/mxModelCodec-js.html">mxModelCodec</a></div></div><div class=MEntry><div class=MFile><a href="../io/mxObjectCodec-js.html">mxObjectCodec</a></div></div><div class=MEntry><div class=MFile><a href="../io/mxRootChangeCodec-js.html">mxRootChangeCodec</a></div></div><div class=MEntry><div class=MFile><a href="../io/mxStylesheetCodec-js.html">mxStylesheetCodec</a></div></div><div class=MEntry><div class=MFile><a href="../io/mxTerminalChangeCodec-js.html">mxTerminalChangeCodec</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent7')">Layout</a><div class=MGroupContent id=MGroupContent7><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent6')">Hierarchical</a><div class=MGroupContent id=MGroupContent6><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent4')">Model</a><div class=MGroupContent id=MGroupContent4><div class=MEntry><div class=MFile><a href="../layout/hierarchical/model/mxGraphAbstractHierarchyCell-js.html">mxGraphAbstractHierarchyCell</a></div></div><div class=MEntry><div class=MFile><a href="../layout/hierarchical/model/mxGraphHierarchyEdge-js.html">mxGraphHierarchyEdge</a></div></div><div class=MEntry><div class=MFile><a href="../layout/hierarchical/model/mxGraphHierarchyModel-js.html">mxGraphHierarchyModel</a></div></div><div class=MEntry><div class=MFile><a href="../layout/hierarchical/model/mxGraphHierarchyNode-js.html">mxGraphHierarchyNode</a></div></div><div class=MEntry><div class=MFile><a href="../layout/hierarchical/model/mxSwimlaneModel-js.html">mxSwimlaneModel</a></div></div></div></div></div><div class=MEntry><div class=MFile><a href="../layout/hierarchical/mxHierarchicalLayout-js.html">mxHierarchicalLayout</a></div></div><div class=MEntry><div class=MFile><a href="../layout/hierarchical/mxSwimlaneLayout-js.html">mxSwimlaneLayout</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent5')">Stage</a><div class=MGroupContent id=MGroupContent5><div class=MEntry><div class=MFile><a href="../layout/hierarchical/stage/mxCoordinateAssignment-js.html">mxCoordinateAssignment</a></div></div><div class=MEntry><div class=MFile><a href="../layout/hierarchical/stage/mxHierarchicalLayoutStage-js.html">mxHierarchicalLayoutStage</a></div></div><div class=MEntry><div class=MFile><a href="../layout/hierarchical/stage/mxMedianHybridCrossingReduction-js.html">mxMedianHybridCrossingReduction</a></div></div><div class=MEntry><div class=MFile><a href="../layout/hierarchical/stage/mxMinimumCycleRemover-js.html">mxMinimumCycleRemover</a></div></div><div class=MEntry><div class=MFile><a href="../layout/hierarchical/stage/mxSwimlaneOrdering-js.html">mxSwimlaneOrdering</a></div></div></div></div></div></div></div></div><div class=MEntry><div class=MFile><a href="../layout/mxCircleLayout-js.html">mxCircleLayout</a></div></div><div class=MEntry><div class=MFile><a href="../layout/mxCompactTreeLayout-js.html">mxCompactTreeLayout</a></div></div><div class=MEntry><div class=MFile><a href="../layout/mxCompositeLayout-js.html">mxCompositeLayout</a></div></div><div class=MEntry><div class=MFile><a href="../layout/mxEdgeLabelLayout-js.html">mxEdgeLabelLayout</a></div></div><div class=MEntry><div class=MFile><a href="../layout/mxFastOrganicLayout-js.html">mxFastOrganicLayout</a></div></div><div class=MEntry><div class=MFile><a href="../layout/mxGraphLayout-js.html">mxGraphLayout</a></div></div><div class=MEntry><div class=MFile><a href="../layout/mxParallelEdgeLayout-js.html">mxParallelEdgeLayout</a></div></div><div class=MEntry><div class=MFile><a href="../layout/mxPartitionLayout-js.html">mxPartitionLayout</a></div></div><div class=MEntry><div class=MFile><a href="../layout/mxRadialTreeLayout-js.html">mxRadialTreeLayout</a></div></div><div class=MEntry><div class=MFile><a href="../layout/mxStackLayout-js.html">mxStackLayout</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent8')">Model</a><div class=MGroupContent id=MGroupContent8><div class=MEntry><div class=MFile><a href="../model/mxCell-js.html">mxCell</a></div></div><div class=MEntry><div class=MFile><a href="../model/mxCellPath-js.html">mxCellPath</a></div></div><div class=MEntry><div class=MFile><a href="../model/mxGeometry-js.html">mxGeometry</a></div></div><div class=MEntry><div class=MFile><a href="../model/mxGraphModel-js.html">mxGraphModel</a></div></div></div></div></div><div class=MEntry><div class=MFile><a href="../mxClient-js.html">mxClient</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent9')">Shape</a><div class=MGroupContent id=MGroupContent9><div class=MEntry><div class=MFile><a href="../shape/mxActor-js.html">mxActor</a></div></div><div class=MEntry><div class=MFile><a href="../shape/mxArrow-js.html">mxArrow</a></div></div><div class=MEntry><div class=MFile><a href="../shape/mxCloud-js.html">mxCloud</a></div></div><div class=MEntry><div class=MFile><a href="../shape/mxConnector-js.html">mxConnector</a></div></div><div class=MEntry><div class=MFile><a href="../shape/mxCylinder-js.html">mxCylinder</a></div></div><div class=MEntry><div class=MFile><a href="../shape/mxDoubleEllipse-js.html">mxDoubleEllipse</a></div></div><div class=MEntry><div class=MFile><a href="../shape/mxEllipse-js.html">mxEllipse</a></div></div><div class=MEntry><div class=MFile><a href="../shape/mxHexagon-js.html">mxHexagon</a></div></div><div class=MEntry><div class=MFile><a href="../shape/mxImageShape-js.html">mxImageShape</a></div></div><div class=MEntry><div class=MFile><a href="../shape/mxLabel-js.html">mxLabel</a></div></div><div class=MEntry><div class=MFile><a href="../shape/mxLine-js.html">mxLine</a></div></div><div class=MEntry><div class=MFile><a href="../shape/mxMarker-js.html">mxMarker</a></div></div><div class=MEntry><div class=MFile><a href="../shape/mxPolyline-js.html">mxPolyline</a></div></div><div class=MEntry><div class=MFile><a href="../shape/mxRectangleShape-js.html">mxRectangleShape</a></div></div><div class=MEntry><div class=MFile><a href="../shape/mxRhombus-js.html">mxRhombus</a></div></div><div class=MEntry><div class=MFile><a href="../shape/mxShape-js.html">mxShape</a></div></div><div class=MEntry><div class=MFile><a href="../shape/mxStencil-js.html">mxStencil</a></div></div><div class=MEntry><div class=MFile><a href="../shape/mxStencilRegistry-js.html">mxStencilRegistry</a></div></div><div class=MEntry><div class=MFile><a href="../shape/mxSwimlane-js.html">mxSwimlane</a></div></div><div class=MEntry><div class=MFile><a href="../shape/mxText-js.html">mxText</a></div></div><div class=MEntry><div class=MFile><a href="../shape/mxTriangle-js.html">mxTriangle</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent10')">Util</a><div class=MGroupContent id=MGroupContent10><div class=MEntry><div class=MFile><a href="mxAbstractCanvas2D-js.html">mxAbstractCanvas2D</a></div></div><div class=MEntry><div class=MFile><a href="mxAnimation-js.html">mxAnimation</a></div></div><div class=MEntry><div class=MFile><a href="mxAutoSaveManager-js.html">mxAutoSaveManager</a></div></div><div class=MEntry><div class=MFile><a href="mxClipboard-js.html">mxClipboard</a></div></div><div class=MEntry><div class=MFile><a href="mxConstants-js.html">mxConstants</a></div></div><div class=MEntry><div class=MFile><a href="mxDictionary-js.html">mxDictionary</a></div></div><div class=MEntry><div class=MFile><a href="mxDivResizer-js.html">mxDivResizer</a></div></div><div class=MEntry><div class=MFile><a href="mxDragSource-js.html">mxDragSource</a></div></div><div class=MEntry><div class=MFile><a href="mxEffects-js.html">mxEffects</a></div></div><div class=MEntry><div class=MFile><a href="mxEvent-js.html">mxEvent</a></div></div><div class=MEntry><div class=MFile><a href="mxEventObject-js.html">mxEventObject</a></div></div><div class=MEntry><div class=MFile><a href="mxEventSource-js.html">mxEventSource</a></div></div><div class=MEntry><div class=MFile><a href="mxForm-js.html">mxForm</a></div></div><div class=MEntry><div class=MFile><a href="mxGuide-js.html">mxGuide</a></div></div><div class=MEntry><div class=MFile><a href="mxImage-js.html">mxImage</a></div></div><div class=MEntry><div class=MFile><a href="mxImageBundle-js.html">mxImageBundle</a></div></div><div class=MEntry><div class=MFile><a href="mxImageExport-js.html">mxImageExport</a></div></div><div class=MEntry><div class=MFile><a href="mxLog-js.html">mxLog</a></div></div><div class=MEntry><div class=MFile><a href="mxMorphing-js.html">mxMorphing</a></div></div><div class=MEntry><div class=MFile><a href="mxMouseEvent-js.html">mxMouseEvent</a></div></div><div class=MEntry><div class=MFile><a href="mxObjectIdentity-js.html">mxObjectIdentity</a></div></div><div class=MEntry><div class=MFile><a href="mxPanningManager-js.html">mxPanningManager</a></div></div><div class=MEntry><div class=MFile><a href="mxPoint-js.html">mxPoint</a></div></div><div class=MEntry><div class=MFile><a href="mxPopupMenu-js.html">mxPopupMenu</a></div></div><div class=MEntry><div class=MFile><a href="mxRectangle-js.html">mxRectangle</a></div></div><div class=MEntry><div class=MFile><a href="mxResources-js.html">mxResources</a></div></div><div class=MEntry><div class=MFile id=MSelected>mxSession</div></div><div class=MEntry><div class=MFile><a href="mxSvgCanvas2D-js.html">mxSvgCanvas2D</a></div></div><div class=MEntry><div class=MFile><a href="mxToolbar-js.html">mxToolbar</a></div></div><div class=MEntry><div class=MFile><a href="mxUndoableEdit-js.html">mxUndoableEdit</a></div></div><div class=MEntry><div class=MFile><a href="mxUndoManager-js.html">mxUndoManager</a></div></div><div class=MEntry><div class=MFile><a href="mxUrlConverter-js.html">mxUrlConverter</a></div></div><div class=MEntry><div class=MFile><a href="mxUtils-js.html">mxUtils</a></div></div><div class=MEntry><div class=MFile><a href="mxVmlCanvas2D-js.html">mxVmlCanvas2D</a></div></div><div class=MEntry><div class=MFile><a href="mxWindow-js.html">mxWindow</a></div></div><div class=MEntry><div class=MFile><a href="mxXmlCanvas2D-js.html">mxXmlCanvas2D</a></div></div><div class=MEntry><div class=MFile><a href="mxXmlRequest-js.html">mxXmlRequest</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent11')">View</a><div class=MGroupContent id=MGroupContent11><div class=MEntry><div class=MFile><a href="../view/mxCellEditor-js.html">mxCellEditor</a></div></div><div class=MEntry><div class=MFile><a href="../view/mxCellOverlay-js.html">mxCellOverlay</a></div></div><div class=MEntry><div class=MFile><a href="../view/mxCellRenderer-js.html">mxCellRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../view/mxCellState-js.html">mxCellState</a></div></div><div class=MEntry><div class=MFile><a href="../view/mxCellStatePreview-js.html">mxCellStatePreview</a></div></div><div class=MEntry><div class=MFile><a href="../view/mxConnectionConstraint-js.html">mxConnectionConstraint</a></div></div><div class=MEntry><div class=MFile><a href="../view/mxEdgeStyle-js.html">mxEdgeStyle</a></div></div><div class=MEntry><div class=MFile><a href="../view/mxGraph-js.html">mxGraph</a></div></div><div class=MEntry><div class=MFile><a href="../view/mxGraphSelectionModel-js.html">mxGraphSelectionModel</a></div></div><div class=MEntry><div class=MFile><a href="../view/mxGraphView-js.html">mxGraphView</a></div></div><div class=MEntry><div class=MFile><a href="../view/mxLayoutManager-js.html">mxLayoutManager</a></div></div><div class=MEntry><div class=MFile><a href="../view/mxMultiplicity-js.html">mxMultiplicity</a></div></div><div class=MEntry><div class=MFile><a href="../view/mxOutline-js.html">mxOutline</a></div></div><div class=MEntry><div class=MFile><a href="../view/mxPerimeter-js.html">mxPerimeter</a></div></div><div class=MEntry><div class=MFile><a href="../view/mxPrintPreview-js.html">mxPrintPreview</a></div></div><div class=MEntry><div class=MFile><a href="../view/mxSpaceManager-js.html">mxSpaceManager</a></div></div><div class=MEntry><div class=MFile><a href="../view/mxStyleRegistry-js.html">mxStyleRegistry</a></div></div><div class=MEntry><div class=MFile><a href="../view/mxStylesheet-js.html">mxStylesheet</a></div></div><div class=MEntry><div class=MFile><a href="../view/mxSwimlaneManager-js.html">mxSwimlaneManager</a></div></div><div class=MEntry><div class=MFile><a href="../view/mxTemporaryCellStates-js.html">mxTemporaryCellStates</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent12')">Index</a><div class=MGroupContent id=MGroupContent12><div class=MEntry><div class=MIndex><a href="../../index/General.html">Everything</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Classes.html">Classes</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Cookies.html">Cookies</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Events.html">Events</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Files.html">Files</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Functions.html">Functions</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Variables.html">Variables</a></div></div></div></div></div><script type="text/javascript"><!--
var searchPanel = new SearchPanel("searchPanel", "HTML", "../../search");
--></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option id=MSearchEverything selected value="General">Everything</option><option value="Classes">Classes</option><option value="Cookies">Cookies</option><option value="Events">Events</option><option value="Files">Files</option><option value="Functions">Functions</option><option value="Variables">Variables</option></select></div><script language=JavaScript><!--
HideAllBut([10], 13);// --></script></div><!--Menu-->
<!--START_ND_TOOLTIPS-->
<div class=CToolTip id="tt1"><div class=CClass>Extends mxEventSource to implement a graph model. </div></div><div class=CToolTip id="tt2"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype prettyprint"><tr><td>mxSession.prototype.suspend = function()</td></tr></table></blockquote>Suspends the polling. </div></div><div class=CToolTip id="tt3"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype prettyprint"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>mxSession.prototype.resume = function(</td><td class=PParameter nowrap>type,</td></tr><tr><td></td><td class=PParameter nowrap>attr,</td></tr><tr><td></td><td class=PParameter nowrap>value</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Resumes the session if it has been suspended. </div></div><div class=CToolTip id="tt4"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype prettyprint"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>mxSession.prototype.stop = function(</td><td class=PParameter nowrap>reason</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Stops the session and fires a disconnect event. </div></div><div class=CToolTip id="tt5"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype prettyprint"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>mxSession.prototype.notify = function(</td><td class=PParameter nowrap>xml,</td></tr><tr><td></td><td class=PParameter nowrap>onLoad,</td></tr><tr><td></td><td class=PParameter nowrap>onError</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Sends out the specified XML to urlNotify and fires a notify event.</div></div><div class=CToolTip id="tt6"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype prettyprint"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>mxSession.prototype.get = function(</td><td class=PParameter nowrap>url,</td></tr><tr><td></td><td class=PParameter nowrap>onLoad,</td></tr><tr><td></td><td class=PParameter nowrap>onError</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Sends an asynchronous get request to the given URL, fires a get event and invokes the given onLoad function when a response is received.</div></div><div class=CToolTip id="tt7"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype prettyprint"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>mxSession.prototype.receive = function(</td><td class=PParameter nowrap>node</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Processes the given node by applying the changes to the model. </div></div><div class=CToolTip id="tt8"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype prettyprint"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>function mxSession(</td><td class=PParameter nowrap>model,</td></tr><tr><td></td><td class=PParameter nowrap>urlInit,</td></tr><tr><td></td><td class=PParameter nowrap>urlPoll,</td></tr><tr><td></td><td class=PParameter nowrap>urlNotify</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Constructs a new session using the given mxGraphModel and URLs to communicate with the backend.</div></div><div class=CToolTip id="tt9"><div class=CVariable><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype prettyprint"><tr><td>mxSession.prototype.model</td></tr></table></blockquote>Reference to the enclosing mxGraphModel.</div></div><div class=CToolTip id="tt10"><div class=CVariable><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype prettyprint"><tr><td>mxSession.prototype.urlInit</td></tr></table></blockquote>URL to initialize the session.</div></div><div class=CToolTip id="tt11"><div class=CVariable><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype prettyprint"><tr><td>mxSession.prototype.urlPoll</td></tr></table></blockquote>URL for polling the backend.</div></div><div class=CToolTip id="tt12"><div class=CVariable><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype prettyprint"><tr><td>mxSession.prototype.urlNotify</td></tr></table></blockquote>URL to send changes to the backend.</div></div><div class=CToolTip id="tt13"><div class=CVariable><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype prettyprint"><tr><td>mxSession.prototype.codec</td></tr></table></blockquote>Reference to the mxCodec used to encoding and decoding changes.</div></div><div class=CToolTip id="tt14"><div class=CClass>XML codec for JavaScript object graphs. </div></div><div class=CToolTip id="tt15"><div class=CVariable><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype prettyprint"><tr><td>mxSession.prototype.linefeed</td></tr></table></blockquote>Used for encoding linefeeds. </div></div><div class=CToolTip id="tt16"><div class=CVariable><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype prettyprint"><tr><td>mxSession.prototype.escapePostData</td></tr></table></blockquote>Specifies if the data in the post request sent in notify should be converted using encodeURIComponent. </div></div><div class=CToolTip id="tt17"><div class=CVariable><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype prettyprint"><tr><td>mxSession.prototype.significantRemoteChanges</td></tr></table></blockquote>Whether remote changes should be significant in the local command history. </div></div><div class=CToolTip id="tt18"><div class=CVariable><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype prettyprint"><tr><td>mxSession.prototype.sent</td></tr></table></blockquote>Total number of sent bytes.</div></div><div class=CToolTip id="tt19"><div class=CVariable><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype prettyprint"><tr><td>mxSession.prototype.received</td></tr></table></blockquote>Total number of received bytes.</div></div><div class=CToolTip id="tt20"><div class=CVariable><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype prettyprint"><tr><td>mxSession.prototype.debug</td></tr></table></blockquote>Specifies if the session should run in debug mode. </div></div><div class=CToolTip id="tt21"><div class=CVariable><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype prettyprint"><tr><td>mxSession.prototype.connected</td></tr></table></blockquote></div></div><div class=CToolTip id="tt22"><div class=CVariable><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype prettyprint"><tr><td>mxSession.prototype.polling</td></tr></table></blockquote></div></div><div class=CToolTip id="tt23"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype prettyprint"><tr><td>mxSession.prototype.start = function()</td></tr></table></blockquote></div></div><div class=CToolTip id="tt24"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype prettyprint"><tr><td>mxSession.prototype.poll = function()</td></tr></table></blockquote>Sends an asynchronous GET request to urlPoll.</div></div><div class=CToolTip id="tt25"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype prettyprint"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>mxSession.prototype.isValidResponse = function(</td><td class=PParameter nowrap>req</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Returns true if the response data in the given mxXmlRequest is valid.</div></div><div class=CToolTip id="tt26"><div class=CClass>XML HTTP request wrapper. </div></div><div class=CToolTip id="tt27"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype prettyprint"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>mxSession.prototype.encodeChanges = function(</td><td class=PParameter nowrap>changes,</td></tr><tr><td></td><td class=PParameter nowrap>invert</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Returns the XML representation for the given array of changes.</div></div><div class=CToolTip id="tt28"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype prettyprint"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>mxSession.prototype.processState = function(</td><td class=PParameter nowrap>node</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Processes the given state node which contains the current state of the remote model.</div></div><div class=CToolTip id="tt29"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype prettyprint"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>mxSession.prototype.processDelta = function(</td><td class=PParameter nowrap>node</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Processes the given delta node which contains a sequence of edits which in turn map to one transaction on the remote model each.</div></div><div class=CToolTip id="tt30"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype prettyprint"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>mxSession.prototype.processEdit = function(</td><td class=PParameter nowrap>node</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Processes the given edit by executing its changes and firing the required events via the model.</div></div><div class=CToolTip id="tt31"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype prettyprint"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>mxSession.prototype.createUndoableEdit = function(</td><td class=PParameter nowrap>changes</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Creates a new mxUndoableEdit that implements the notify function to fire a change and notify event via the model.</div></div><div class=CToolTip id="tt32"><div class=CClass>Implements a composite undoable edit. </div></div><div class=CToolTip id="tt33"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype prettyprint"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>mxSession.prototype.decodeChanges = function(</td><td class=PParameter nowrap>node</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Decodes and executes the changes represented by the children in the given node. </div></div><div class=CToolTip id="tt34"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype prettyprint"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>mxSession.prototype.decodeChange = function(</td><td class=PParameter nowrap>node</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Decodes, executes and returns the change object represented by the given XML node.</div></div><div class=CToolTip id="tt35"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype prettyprint"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>mxSession.prototype.cellRemoved = function(</td><td class=PParameter nowrap>cell,</td></tr><tr><td></td><td class=PParameter nowrap>codec</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Adds removed cells to the codec object lookup for references to the removed cells after this point in time.</div></div><div class=CToolTip id="tt36"><div class=CEvent>Fires after an array of edits has been executed on the model. </div></div><div class=CToolTip id="tt37"><div class=CEvent>Fires after an XML node was received in receive. </div></div><!--END_ND_TOOLTIPS-->
<div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
<script language=JavaScript><!--
if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html>