cdocutils.nodes document q)q}q(U nametypesq}q(XresetqKXQueueqKXcallback object methodsqNXcallback object propertiesq NX api-callbackq KXSignalq KX executeHooksq KXexecuting a callback objectq NXDelayqKXspecifying a callbackqNXmathjax.callback methodsqNXthe mathjax.callback classqNuUsubstitution_defsq}qUparse_messagesq]qUcurrent_sourceqNU decorationqNUautofootnote_startqKUnameidsq}q(hhhhhUcallback-object-methodsqh Ucallback-object-propertiesqh U api-callbackqh h h h h Uexecuting-a-callback-objectqhhhUspecifying-a-callbackqhUmathjax-callback-methodsq hUthe-mathjax-callback-classq!uUchildrenq"]q#(cdocutils.nodes target q$)q%}q&(U rawsourceq'X.. _api-callback:q(Uparentq)hUsourceq*cdocutils.nodes reprunicode q+XV/Data/Code/JavaScript/MathJax/Code/SourceForge/trunk/mathjax/docs/rst/api/callback.rstq,q-}q.bUtagnameq/Utargetq0U attributesq1}q2(Uidsq3]q4Ubackrefsq5]q6Udupnamesq7]q8Uclassesq9]q:Unamesq;]qKUdocumentq?hh"]q@ubcdocutils.nodes section qA)qB}qC(h'Uh)hh*h-Uexpect_referenced_by_nameqD}qEh h%sh/UsectionqFh1}qG(h7]qHh9]qIh5]qJh3]qK(h!heh;]qL(hh euh>Kh?hUexpect_referenced_by_idqM}qNhh%sh"]qO(cdocutils.nodes title qP)qQ}qR(h'XThe MathJax.Callback ClassqSh)hBh*h-h/UtitleqTh1}qU(h7]qVh9]qWh5]qXh3]qYh;]qZuh>Kh?hh"]q[cdocutils.nodes Text q\XThe MathJax.Callback Classq]q^}q_(h'hSh)hQubaubcdocutils.nodes paragraph q`)qa}qb(h'XThe ``MathJax.Callback`` object is one of the key mechanisms used by MathJax to synchronize its actions with those that occur asynchronously, like loading files and stylesheets. A `Callback` object is used to tie the execution of a function to the completion of an asynchronous action. See :ref:`Synchronizing with MathJax ` for more details, and :ref:`Using Callbacks ` in particular for examples of how to specify and use MathJax `Callback` objects.qch)hBh*h-h/U paragraphqdh1}qe(h7]qfh9]qgh5]qhh3]qih;]qjuh>Kh?hh"]qk(h\XThe qlqm}qn(h'XThe qoh)haubcdocutils.nodes literal qp)qq}qr(h'X``MathJax.Callback``qsh1}qt(h7]quh9]qvh5]qwh3]qxh;]qyuh)hah"]qzh\XMathJax.Callbackq{q|}q}(h'Uh)hqubah/Uliteralq~ubh\X object is one of the key mechanisms used by MathJax to synchronize its actions with those that occur asynchronously, like loading files and stylesheets. A qq}q(h'X object is one of the key mechanisms used by MathJax to synchronize its actions with those that occur asynchronously, like loading files and stylesheets. A qh)haubcdocutils.nodes title_reference q)q}q(h'X `Callback`qh1}q(h7]qh9]qh5]qh3]qh;]quh)hah"]qh\XCallbackqq}q(h'Uh)hubah/Utitle_referencequbh\Xe object is used to tie the execution of a function to the completion of an asynchronous action. See qq}q(h'Xe object is used to tie the execution of a function to the completion of an asynchronous action. See qh)haubcsphinx.addnodes pending_xref q)q}q(h'X3:ref:`Synchronizing with MathJax `qh)hah/U pending_xrefqh1}q(UreftypeqXrefqU reftargetqXsynchronizationqU refdomainqXstdqh3]qh5]qU refexplicitqh7]qh9]qh;]qUrefdocqU api/callbackquh>Kh"]qcdocutils.nodes emphasis q)q}q(h'hh1}q(h7]qh9]q(UxrefqhXstd-refqeh5]qh3]qh;]quh)hh"]qh\XSynchronizing with MathJaxqq}q(h'Uh)hubah/Uemphasisqubaubh\X for more details, and qq}q(h'X for more details, and qh)haubh)q}q(h'X(:ref:`Using Callbacks `qh)hah/hh1}q(UreftypeqXrefqhXusing-callbacksqU refdomainqXstdqh3]qh5]qU refexplicitqʈh7]qh9]qh;]qhhuh>Kh"]qh)q}q(h'hh1}q(h7]qh9]q(hhXstd-refqeh5]qh3]qh;]quh)hh"]qh\XUsing Callbacksqمq}q(h'Uh)hubah/hubaubh\X> in particular for examples of how to specify and use MathJax q܅q}q(h'X> in particular for examples of how to specify and use MathJax qh)haubh)q}q(h'X `Callback`qh1}q(h7]qh9]qh5]qh3]qh;]quh)hah"]qh\XCallbackqꅁq}q(h'Uh)hubah/hubh\X objects.q텁q}q(h'X objects.qh)haubeubhA)q}q(h'Uh)hBh*h-h/hFh1}q(h7]qh9]qh5]qh3]qhah;]qhauh>Kh?hh"]q(hP)q}q(h'XSpecifying a callbackqh)hh*h-h/hTh1}q(h7]qh9]qh5]rh3]rh;]ruh>Kh?hh"]rh\XSpecifying a callbackrr}r(h'hh)hubaubh`)r}r(h'XWhen a method includes a callback as one of its arguments, that callback can be specified in a number of different ways, depending on the functionality that is required of the callback. The easiest case is to simply provide a function to be called, but it is also possible to include data to pass to the function when it is executed, and even the object that will be used as the javascript `this` object when the function is called.r h)hh*h-h/hdh1}r (h7]r h9]r h5]r h3]rh;]ruh>Kh?hh"]r(h\XWhen a method includes a callback as one of its arguments, that callback can be specified in a number of different ways, depending on the functionality that is required of the callback. The easiest case is to simply provide a function to be called, but it is also possible to include data to pass to the function when it is executed, and even the object that will be used as the javascript rr}r(h'XWhen a method includes a callback as one of its arguments, that callback can be specified in a number of different ways, depending on the functionality that is required of the callback. The easiest case is to simply provide a function to be called, but it is also possible to include data to pass to the function when it is executed, and even the object that will be used as the javascript rh)jubh)r}r(h'X`this`rh1}r(h7]rh9]rh5]rh3]rh;]ruh)jh"]rh\Xthisrr }r!(h'Uh)jubah/hubh\X$ object when the function is called.r"r#}r$(h'X$ object when the function is called.r%h)jubeubh`)r&}r'(h'XMost functions that take callbacks as arguments accept a `callback specification` rather than an actual callback object, though you can use the :meth:`MathJax.Callback` function to convert a callback specification into a Callback object if needed.r(h)hh*h-h/hdh1}r)(h7]r*h9]r+h5]r,h3]r-h;]r.uh>Kh?hh"]r/(h\X9Most functions that take callbacks as arguments accept a r0r1}r2(h'X9Most functions that take callbacks as arguments accept a r3h)j&ubh)r4}r5(h'X`callback specification`r6h1}r7(h7]r8h9]r9h5]r:h3]r;h;]r<uh)j&h"]r=h\Xcallback specificationr>r?}r@(h'Uh)j4ubah/hubh\X? rather than an actual callback object, though you can use the rArB}rC(h'X? rather than an actual callback object, though you can use the rDh)j&ubh)rE}rF(h'X:meth:`MathJax.Callback`rGh)j&h/hh1}rH(UreftyperIXmethrJhXMathJax.CallbackrKU refdomainrLXpyrMh3]rNh5]rOU refexplicitrPh7]rQh9]rRh;]rShhUpy:classrTNU py:modulerUNuh>Kh"]rVhp)rW}rX(h'jGh1}rY(h7]rZh9]r[(hjMXpy-methr\eh5]r]h3]r^h;]r_uh)jEh"]r`h\XMathJax.Callback()rarb}rc(h'Uh)jWubah/h~ubaubh\XO function to convert a callback specification into a Callback object if needed.rdre}rf(h'XO function to convert a callback specification into a Callback object if needed.rgh)j&ubeubh`)rh}ri(h'X5A callback specification is any one of the following:rjh)hh*h-h/hdh1}rk(h7]rlh9]rmh5]rnh3]roh;]rpuh>K!h?hh"]rqh\X5A callback specification is any one of the following:rrrs}rt(h'jjh)jhubaubcdocutils.nodes block_quote ru)rv}rw(h'Uh)hh*Nh/U block_quoterxh1}ry(h7]rzh9]r{h5]r|h3]r}h;]r~uh>Nh?hh"]r(csphinx.addnodes index r)r}r(h'Uh1}r(h3]rh5]rh7]rh9]rh;]rUentriesr]ruh)jvh"]rh/Uindexrubcsphinx.addnodes desc r)r}r(h'Uh)jvh/Udescrh1}r(UnoindexrUdomainrUh3]rh5]rh7]rh9]rh;]rUobjtyperXdescriberUdesctyperjuh?hh"]r(csphinx.addnodes desc_signature r)r}r(h'Xfnrh)jh*h-h/Udesc_signaturerh1}r(h3]rh5]rh7]rh9]rh;]rUfirstruh>K)h?hh"]rcsphinx.addnodes desc_name r)r}r(h'jh)jh*h-h/U desc_namerh1}r(h7]rh9]rh5]rh3]rh;]ruh>K)h?hh"]rh\Xfnrr}r(h'Uh)jubaubaubcsphinx.addnodes desc_content r)r}r(h'Uh)jh*h-h/U desc_contentrh1}r(h7]rh9]rh5]rh3]rh;]ruh>K)h?hh"]rh`)r}r(h'XA function that is to be called when the callback is executed. No additional data is passed to it (other that what it is called with at the time the callback is executed), and `this` will be the window object.rh)jh*h-h/hdh1}r(h7]rh9]rh5]rh3]rh;]ruh>K%h?hh"]r(h\XA function that is to be called when the callback is executed. No additional data is passed to it (other that what it is called with at the time the callback is executed), and rr}r(h'XA function that is to be called when the callback is executed. No additional data is passed to it (other that what it is called with at the time the callback is executed), and rh)jubh)r}r(h'X`this`rh1}r(h7]rh9]rh5]rh3]rh;]ruh)jh"]rh\Xthisrr}r(h'Uh)jubah/hubh\X will be the window object.rr}r(h'X will be the window object.rh)jubeubaubeubj)r}r(h'Uh1}r(h3]rh5]rh7]rh9]rh;]rUentriesr]ruh)jvh"]rh/jubj)r}r(h'Uh)jvh/jh1}r(jjUh3]rh5]rh7]rh9]rh;]rjXdescriberjjuh?hh"]r(j)r}r(h'X[fn]rh)jh*h-h/jh1}r(h3]rh5]rh7]rh9]rh;]rjuh>K.h?hh"]rj)r}r(h'jh)jh*h-h/jh1}r(h7]rh9]rh5]rh3]rh;]ruh>K.h?hh"]r h\X[fn]r r }r (h'Uh)jubaubaubj)r }r(h'Uh)jh*h-h/jh1}r(h7]rh9]rh5]rh3]rh;]ruh>K.h?hh"]rh`)r}r(h'XUAn array containing a function to be called when the callback is executed (as above).rh)j h*h-h/hdh1}r(h7]rh9]rh5]rh3]rh;]ruh>K,h?hh"]rh\XUAn array containing a function to be called when the callback is executed (as above).r r!}r"(h'jh)jubaubaubeubj)r#}r$(h'Uh1}r%(h3]r&h5]r'h7]r(h9]r)h;]r*Uentriesr+]r,uh)jvh"]r-h/jubj)r.}r/(h'Uh)jvh/jh1}r0(jjUh3]r1h5]r2h7]r3h9]r4h;]r5jXdescriber6jj6uh?hh"]r7(j)r8}r9(h'X [fn, data...]r:h)j.h*h-h/jh1}r;(h3]r<h5]r=h7]r>h9]r?h;]r@juh>KHh?hh"]rAj)rB}rC(h'j:h)j8h*h-h/jh1}rD(h7]rEh9]rFh5]rGh3]rHh;]rIuh>KHh?hh"]rJh\X [fn, data...]rKrL}rM(h'Uh)jBubaubaubj)rN}rO(h'Uh)j.h*h-h/jh1}rP(h7]rQh9]rRh5]rSh3]rTh;]rUuh>KHh?hh"]rV(h`)rW}rX(h'XAn array containing a function together with data to be passed to that function when the callback is executed; `this` is still the window object. For example,rYh)jNh*h-h/hdh1}rZ(h7]r[h9]r\h5]r]h3]r^h;]r_uh>K1h?hh"]r`(h\XoAn array containing a function together with data to be passed to that function when the callback is executed; rarb}rc(h'XoAn array containing a function together with data to be passed to that function when the callback is executed; rdh)jWubh)re}rf(h'X`this`rgh1}rh(h7]rih9]rjh5]rkh3]rlh;]rmuh)jWh"]rnh\Xthisrorp}rq(h'Uh)jeubah/hubh\X) is still the window object. For example,rrrs}rt(h'X) is still the window object. For example,ruh)jWubeubcdocutils.nodes literal_block rv)rw}rx(h'X#[function (x,y) {return x+y}, 2, 3]ryh)jNh*h-h/U literal_blockrzh1}r{(Ulinenosr|Ulanguager}X javascriptr~U xml:spacerUpreserverh3]rh5]rh7]rh9]rh;]ruh>K8h?hh"]rh\X#[function (x,y) {return x+y}, 2, 3]rr}r(h'Uh)jwubaubh`)r}r(h'Xwould specify a callback that would pass ``2`` and ``3`` to the given function, and it would return their sum, ``5``, when the callback is executed.rh)jNh*h-h/hdh1}r(h7]rh9]rh5]rh3]rh;]ruh>K9h?hh"]r(h\X)would specify a callback that would pass rr}r(h'X)would specify a callback that would pass rh)jubhp)r}r(h'X``2``rh1}r(h7]rh9]rh5]rh3]rh;]ruh)jh"]rh\X2r}r(h'Uh)jubah/h~ubh\X and rr}r(h'X and rh)jubhp)r}r(h'X``3``rh1}r(h7]rh9]rh5]rh3]rh;]ruh)jh"]rh\X3r}r(h'Uh)jubah/h~ubh\X7 to the given function, and it would return their sum, rr}r(h'X7 to the given function, and it would return their sum, rh)jubhp)r}r(h'X``5``rh1}r(h7]rh9]rh5]rh3]rh;]ruh)jh"]rh\X5r}r(h'Uh)jubah/h~ubh\X , when the callback is executed.rr}r(h'X , when the callback is executed.rh)jubeubj)r}r(h'Uh)jNh*Nh/jh1}r(h3]rh5]rh7]rh9]rh;]rUentriesr]ruh>Nh?hh"]rubj)r}r(h'Uh)jNh*Nh/jh1}r(jjUh3]rh5]rh7]rh9]rh;]rjXdescriberjjuh>Nh?hh"]r(j)r}r(h'X [object, fn]rh)jh*h-h/jh1}r(h3]rh5]rh7]rh9]rh;]rjuh>K>h?hh"]rj)r}r(h'jh)jh*h-h/jh1}r(h7]rh9]rh5]rh3]rh;]ruh>K>h?hh"]rh\X [object, fn]rr}r(h'Uh)jubaubaubj)r}r(h'Uh)jh*h-h/jh1}r(h7]rh9]rh5]rh3]rh;]ruh>K>h?hh"]rubeubh`)r}r(h'XeAn array containing an object to use as `this` and a function to call for the callback. For example,rh)jNh*h-h/hdh1}r(h7]rh9]rh5]rh3]rh;]ruh>K?h?hh"]r(h\X(An array containing an object to use as rr}r(h'X(An array containing an object to use as r h)jubh)r }r (h'X`this`r h1}r (h7]rh9]rh5]rh3]rh;]ruh)jh"]rh\Xthisrr}r(h'Uh)j ubah/hubh\X7 and a function to call for the callback. For example,rr}r(h'X7 and a function to call for the callback. For example,rh)jubeubjv)r}r(h'X*[{x:'foo', y:'bar'}, function () {this.x}]rh)jNh*h-h/jzh1}r(j|j}X javascriptrjjh3]r h5]r!h7]r"h9]r#h;]r$uh>KEh?hh"]r%h\X*[{x:'foo', y:'bar'}, function () {this.x}]r&r'}r((h'Uh)jubaubh`)r)}r*(h'XMwould produce a callback that returns the string ``"foo"`` when it is called.r+h)jNh*h-h/hdh1}r,(h7]r-h9]r.h5]r/h3]r0h;]r1uh>KFh?hh"]r2(h\X1would produce a callback that returns the string r3r4}r5(h'X1would produce a callback that returns the string r6h)j)ubhp)r7}r8(h'X ``"foo"``r9h1}r:(h7]r;h9]r<h5]r=h3]r>h;]r?uh)j)h"]r@h\X"foo"rArB}rC(h'Uh)j7ubah/h~ubh\X when it is called.rDrE}rF(h'X when it is called.rGh)j)ubeubeubeubj)rH}rI(h'Uh1}rJ(h3]rKh5]rLh7]rMh9]rNh;]rOUentriesrP]rQuh)jvh"]rRh/jubj)rS}rT(h'Uh)jvh/jh1}rU(jjUh3]rVh5]rWh7]rXh9]rYh;]rZjXdescriber[jj[uh?hh"]r\(j)r]}r^(h'X[object, fn, data...]r_h)jSh*h-h/jh1}r`(h3]rah5]rbh7]rch9]rdh;]rejuh>KMh?hh"]rfj)rg}rh(h'j_h)j]h*h-h/jh1}ri(h7]rjh9]rkh5]rlh3]rmh;]rnuh>KMh?hh"]roh\X[object, fn, data...]rprq}rr(h'Uh)jgubaubaubj)rs}rt(h'Uh)jSh*h-h/jh1}ru(h7]rvh9]rwh5]rxh3]ryh;]rzuh>KMh?hh"]r{h`)r|}r}(h'XSSimilar to the previous case, but with data that is passed to the function as well.r~h)jsh*h-h/hdh1}r(h7]rh9]rh5]rh3]rh;]ruh>KKh?hh"]rh\XSSimilar to the previous case, but with data that is passed to the function as well.rr}r(h'j~h)j|ubaubaubeubh`)r}r(h'X..describe:: ["method", object]rh)jvh*h-h/hdh1}r(h7]rh9]rh5]rh3]rh;]ruh>KNh"]rh\X..describe:: ["method", object]rr}r(h'jh)jubaubju)r}r(h'Uh1}r(h7]rh9]rh5]rh3]rh;]ruh)jvh"]r(h`)r}r(h'XHere, `object` is an object that has a method called `method`, and the callback will execute that method (with the object as `this`) when it is called. For example,rh)jh*h-h/hdh1}r(h7]rh9]rh5]rh3]rh;]ruh>KPh"]r(h\XHere, rr}r(h'XHere, rh)jubh)r}r(h'X`object`rh1}r(h7]rh9]rh5]rh3]rh;]ruh)jh"]rh\Xobjectrr}r(h'Uh)jubah/hubh\X' is an object that has a method called rr}r(h'X' is an object that has a method called rh)jubh)r}r(h'X`method`rh1}r(h7]rh9]rh5]rh3]rh;]ruh)jh"]rh\Xmethodrr}r(h'Uh)jubah/hubh\X@, and the callback will execute that method (with the object as rr}r(h'X@, and the callback will execute that method (with the object as rh)jubh)r}r(h'X`this`rh1}r(h7]rh9]rh5]rh3]rh;]ruh)jh"]rh\Xthisrr}r(h'Uh)jubah/hubh\X") when it is called. For example,rr}r(h'X") when it is called. For example,rh)jubeubjv)r}r(h'X["length",[1,2,3,4]]rh1}r(j|j}X javascriptrjjh3]rh5]rh7]rh9]rh;]ruh)jh"]rh\X["length",[1,2,3,4]]rr}r(h'Uh)jubah/jzubh`)r}r(h'Xgwould call the `length` method on the array ``[1,2,3,4]`` when the callback is called, returning ``4``.rh)jh*h-h/hdh1}r(h7]rh9]rh5]rh3]rh;]ruh>KXh"]r(h\Xwould call the rr}r(h'Xwould call the rh)jubh)r}r(h'X`length`rh1}r(h7]rh9]rh5]rh3]rh;]ruh)jh"]rh\Xlengthrr}r(h'Uh)jubah/hubh\X method on the array r r }r (h'X method on the array r h)jubhp)r }r(h'X ``[1,2,3,4]``rh1}r(h7]rh9]rh5]rh3]rh;]ruh)jh"]rh\X [1,2,3,4]rr}r(h'Uh)j ubah/h~ubh\X( when the callback is called, returning rr}r(h'X( when the callback is called, returning rh)jubhp)r}r(h'X``4``r h1}r!(h7]r"h9]r#h5]r$h3]r%h;]r&uh)jh"]r'h\X4r(}r)(h'Uh)jubah/h~ubh\X.r*}r+(h'X.h)jubeubeh/jxubj)r,}r-(h'Uh1}r.(h3]r/h5]r0h7]r1h9]r2h;]r3Uentriesr4]r5uh)jvh"]r6h/jubj)r7}r8(h'Uh)jvh/jh1}r9(jjUh3]r:h5]r;h7]r<h9]r=h;]r>jXdescriber?jj?uh?hh"]r@(j)rA}rB(h'X["method", object, data...]rCh)j7h*h-h/jh1}rD(h3]rEh5]rFh7]rGh9]rHh;]rIjuh>Kfh?hh"]rJj)rK}rL(h'jCh)jAh*h-h/jh1}rM(h7]rNh9]rOh5]rPh3]rQh;]rRuh>Kfh?hh"]rSh\X["method", object, data...]rTrU}rV(h'Uh)jKubaubaubj)rW}rX(h'Uh)j7h*h-h/jh1}rY(h7]rZh9]r[h5]r\h3]r]h;]r^uh>Kfh?hh"]r_(h`)r`}ra(h'XOSimilar to the previous case, but with data that is passed to the method. E.g.,rbh)jWh*h-h/hdh1}rc(h7]rdh9]reh5]rfh3]rgh;]rhuh>K]h?hh"]rih\XOSimilar to the previous case, but with data that is passed to the method. E.g.,rjrk}rl(h'jbh)j`ubaubjv)rm}rn(h'X["slice",[1,2,3,4],1,3]roh)jWh*h-h/jzh1}rp(j|j}X javascriptrqjjh3]rrh5]rsh7]rth9]ruh;]rvuh>Kch?hh"]rwh\X["slice",[1,2,3,4],1,3]rxry}rz(h'Uh)jmubaubh`)r{}r|(h'Xhwould perform the equivalent of ``[1,2,3,4].slice(1,3)``, which returns the array ``[2,3]`` as a result.r}h)jWh*h-h/hdh1}r~(h7]rh9]rh5]rh3]rh;]ruh>Kdh?hh"]r(h\X would perform the equivalent of rr}r(h'X would perform the equivalent of rh)j{ubhp)r}r(h'X``[1,2,3,4].slice(1,3)``rh1}r(h7]rh9]rh5]rh3]rh;]ruh)j{h"]rh\X[1,2,3,4].slice(1,3)rr}r(h'Uh)jubah/h~ubh\X, which returns the array rr}r(h'X, which returns the array rh)j{ubhp)r}r(h'X ``[2,3]``rh1}r(h7]rh9]rh5]rh3]rh;]ruh)j{h"]rh\X[2,3]rr}r(h'Uh)jubah/h~ubh\X as a result.rr}r(h'X as a result.rh)j{ubeubeubeubj)r}r(h'Uh1}r(h3]rh5]rh7]rh9]rh;]rUentriesr]ruh)jvh"]rh/jubj)r}r(h'Uh)jvh/jh1}r(jjUh3]rh5]rh7]rh9]rh;]rjXdescriberjjuh?hh"]r(j)r}r(h'X%{hook: fn, data: [...], object: this}rh)jh*h-h/jh1}r(h3]rh5]rh7]rh9]rh;]rjuh>Kqh?hh"]rj)r}r(h'jh)jh*h-h/jh1}r(h7]rh9]rh5]rh3]rh;]ruh>Kqh?hh"]rh\X%{hook: fn, data: [...], object: this}rr}r(h'Uh)jubaubaubj)r}r(h'Uh)jh*h-h/jh1}r(h7]rh9]rh5]rh3]rh;]ruh>Kqh?hh"]rh`)r}r(h'XHere the data for the callback are given in an associative array of `key:value` pairs. The value of `hook` is the function to call, the value of `data` is an array of the arguments to pass to the function, and the value of `object` is the object to use as `this` in the function call. The specification need not include all three `key:value` pairs; any that are missing get default values (a function that does nothing, an empty array, and the window object, respectively).rh)jh*h-h/hdh1}r(h7]rh9]rh5]rh3]rh;]ruh>Kih?hh"]r(h\XDHere the data for the callback are given in an associative array of rr}r(h'XDHere the data for the callback are given in an associative array of rh)jubh)r}r(h'X `key:value`rh1}r(h7]rh9]rh5]rh3]rh;]ruh)jh"]rh\X key:valuerr}r(h'Uh)jubah/hubh\X pairs. The value of rr}r(h'X pairs. The value of rh)jubh)r}r(h'X`hook`rh1}r(h7]rh9]rh5]rh3]rh;]ruh)jh"]rh\Xhookrr }r (h'Uh)jubah/hubh\X' is the function to call, the value of r r }r (h'X' is the function to call, the value of rh)jubh)r}r(h'X`data`rh1}r(h7]rh9]rh5]rh3]rh;]ruh)jh"]rh\Xdatarr}r(h'Uh)jubah/hubh\XH is an array of the arguments to pass to the function, and the value of rr}r(h'XH is an array of the arguments to pass to the function, and the value of rh)jubh)r }r!(h'X`object`r"h1}r#(h7]r$h9]r%h5]r&h3]r'h;]r(uh)jh"]r)h\Xobjectr*r+}r,(h'Uh)j ubah/hubh\X is the object to use as r-r.}r/(h'X is the object to use as r0h)jubh)r1}r2(h'X`this`r3h1}r4(h7]r5h9]r6h5]r7h3]r8h;]r9uh)jh"]r:h\Xthisr;r<}r=(h'Uh)j1ubah/hubh\XE in the function call. The specification need not include all three r>r?}r@(h'XE in the function call. The specification need not include all three rAh)jubh)rB}rC(h'X `key:value`rDh1}rE(h7]rFh9]rGh5]rHh3]rIh;]rJuh)jh"]rKh\X key:valuerLrM}rN(h'Uh)jBubah/hubh\X pairs; any that are missing get default values (a function that does nothing, an empty array, and the window object, respectively).rOrP}rQ(h'X pairs; any that are missing get default values (a function that does nothing, an empty array, and the window object, respectively).rRh)jubeubaubeubj)rS}rT(h'Uh1}rU(h3]rVh5]rWh7]rXh9]rYh;]rZUentriesr[]r\uh)jvh"]r]h/jubj)r^}r_(h'Uh)jvh/jh1}r`(jjUh3]rah5]rbh7]rch9]rdh;]rejXdescriberfjjfuh?hh"]rg(j)rh}ri(h'X"string"rjh)j^h*h-h/jh1}rk(h3]rlh5]rmh7]rnh9]roh;]rpjuh>Kzh?hh"]rqj)rr}rs(h'jjh)jhh*h-h/jh1}rt(h7]ruh9]rvh5]rwh3]rxh;]ryuh>Kzh?hh"]rzh\X"string"r{r|}r}(h'Uh)jrubaubaubj)r~}r(h'Uh)j^h*h-h/jh1}r(h7]rh9]rh5]rh3]rh;]ruh>Kzh?hh"]rh`)r}r(h'X!This specifies a callback where the string is executed via an ``eval()`` statement. The code is run in the global context, so any variables or functions created by the string become part of the global namespace. The return value is the value of the last statement executed in the string.rh)j~h*h-h/hdh1}r(h7]rh9]rh5]rh3]rh;]ruh>Kth?hh"]r(h\X>This specifies a callback where the string is executed via an rr}r(h'X>This specifies a callback where the string is executed via an rh)jubhp)r}r(h'X ``eval()``rh1}r(h7]rh9]rh5]rh3]rh;]ruh)jh"]rh\Xeval()rr}r(h'Uh)jubah/h~ubh\X statement. The code is run in the global context, so any variables or functions created by the string become part of the global namespace. The return value is the value of the last statement executed in the string.rr}r(h'X statement. The code is run in the global context, so any variables or functions created by the string become part of the global namespace. The return value is the value of the last statement executed in the string.rh)jubeubaubeubeubhA)r}r(h'Uh)hh*h-h/hFh1}r(h7]rh9]rh5]rh3]rhah;]rh auh>K|h?hh"]r(hP)r}r(h'XExecuting a Callback Objectrh)jh*h-h/hTh1}r(h7]rh9]rh5]rh3]rh;]ruh>K|h?hh"]rh\XExecuting a Callback Objectrr}r(h'jh)jubaubh`)r}r(h'XEThe `Callback` object is itself a function, and calling that function executes the callback. You can pass the callback additional parameters, just as you can any function, and these will be added to the callback function's argument list following any data that was supplied at the time the callback was created. For examplerh)jh*h-h/hdh1}r(h7]rh9]rh5]rh3]rh;]ruh>K~h?hh"]r(h\XThe rr}r(h'XThe rh)jubh)r}r(h'X `Callback`rh1}r(h7]rh9]rh5]rh3]rh;]ruh)jh"]rh\XCallbackrr}r(h'Uh)jubah/hubh\X7 object is itself a function, and calling that function executes the callback. You can pass the callback additional parameters, just as you can any function, and these will be added to the callback function's argument list following any data that was supplied at the time the callback was created. For examplerr}r(h'X7 object is itself a function, and calling that function executes the callback. You can pass the callback additional parameters, just as you can any function, and these will be added to the callback function's argument list following any data that was supplied at the time the callback was created. For examplerh)jubeubjv)r}r(h'Xvar f = function (x,y) {return x + " and " +y} var cb = MathJax.Callback([f, "foo"]); var result = cb("bar"); // sets result to "foo and bar"rh)jh*h-h/jzh1}r(j|j}X javascriptrjjh3]rh5]rh7]rh9]rh;]ruh>Kh?hh"]rh\Xvar f = function (x,y) {return x + " and " +y} var cb = MathJax.Callback([f, "foo"]); var result = cb("bar"); // sets result to "foo and bar"rr}r(h'Uh)jubaubh`)r}r(h'XUsually, the callback is not executed by the code that creates it (as it is in the example above), but by some other code that runs at a later time at the completion of some other activity (say the loading of a file), or in response to a user action. For example:rh)jh*h-h/hdh1}r(h7]rh9]rh5]rh3]rh;]ruh>Kh?hh"]rh\XUsually, the callback is not executed by the code that creates it (as it is in the example above), but by some other code that runs at a later time at the completion of some other activity (say the loading of a file), or in response to a user action. For example:rr}r(h'jh)jubaubjv)r}r(h'Xfunction f(x) {alert("x contains "+x)}; function DelayedX(time) { var x = "hi"; setTimeout(MathJax.Callback([f, x], time); }rh)jh*h-h/jzh1}r(j|j}X javascriptrjjh3]rh5]rh7]rh9]rh;]ruh>Kh?hh"]rh\Xfunction f(x) {alert("x contains "+x)}; function DelayedX(time) { var x = "hi"; setTimeout(MathJax.Callback([f, x], time); }rr}r(h'Uh)jubaubh`)r}r(h'XThe ``DelayedX`` function arranges for the function ``f`` to be called at a later time, passing it the value of a local variable, ``x``. Normally, this would require the use of a closure, but that is not needed when a `MathJax.Callback` object is used.rh)jh*h-h/hdh1}r(h7]rh9]r h5]r h3]r h;]r uh>Kh?hh"]r (h\XThe rr}r(h'XThe rh)jubhp)r}r(h'X ``DelayedX``rh1}r(h7]rh9]rh5]rh3]rh;]ruh)jh"]rh\XDelayedXrr}r(h'Uh)jubah/h~ubh\X$ function arranges for the function rr }r!(h'X$ function arranges for the function r"h)jubhp)r#}r$(h'X``f``r%h1}r&(h7]r'h9]r(h5]r)h3]r*h;]r+uh)jh"]r,h\Xfr-}r.(h'Uh)j#ubah/h~ubh\XI to be called at a later time, passing it the value of a local variable, r/r0}r1(h'XI to be called at a later time, passing it the value of a local variable, r2h)jubhp)r3}r4(h'X``x``r5h1}r6(h7]r7h9]r8h5]r9h3]r:h;]r;uh)jh"]r<h\Xxr=}r>(h'Uh)j3ubah/h~ubh\XS. Normally, this would require the use of a closure, but that is not needed when a r?r@}rA(h'XS. Normally, this would require the use of a closure, but that is not needed when a rBh)jubh)rC}rD(h'X`MathJax.Callback`rEh1}rF(h7]rGh9]rHh5]rIh3]rJh;]rKuh)jh"]rLh\XMathJax.CallbackrMrN}rO(h'Uh)jCubah/hubh\X object is used.rPrQ}rR(h'X object is used.rSh)jubeubeubeubhA)rT}rU(h'Uh)hBh*h-h/hFh1}rV(h7]rWh9]rXh5]rYh3]rZhah;]r[h auh>Kh?hh"]r\(hP)r]}r^(h'XCallback Object Propertiesr_h)jTh*h-h/hTh1}r`(h7]rah9]rbh5]rch3]rdh;]reuh>Kh?hh"]rfh\XCallback Object Propertiesrgrh}ri(h'j_h)j]ubaubj)rj}rk(h'Uh)jTh*h-h/jh1}rl(h3]rmh5]rnh7]roh9]rph;]rqUentriesrr]rsuh>Nh?hh"]rtubj)ru}rv(h'Uh)jTh*h-h/jh1}rw(jjUh3]rxh5]ryh7]rzh9]r{h;]r|jXdescriber}jj}uh>Nh?hh"]r~(j)r}r(h'Xhookrh)juh*h-h/jh1}r(h3]rh5]rh7]rh9]rh;]rjuh>Kh?hh"]rj)r}r(h'jh)jh*h-h/jh1}r(h7]rh9]rh5]rh3]rh;]ruh>Kh?hh"]rh\Xhookrr}r(h'Uh)jubaubaubj)r}r(h'Uh)juh*h-h/jh1}r(h7]rh9]rh5]rh3]rh;]ruh>Kh?hh"]rh`)r}r(h'X8The function to be called when the callback is executed.rh)jh*h-h/hdh1}r(h7]rh9]rh5]rh3]rh;]ruh>Kh?hh"]rh\X8The function to be called when the callback is executed.rr}r(h'jh)jubaubaubeubj)r}r(h'Uh)jTh*h-h/jh1}r(h3]rh5]rh7]rh9]rh;]rUentriesr]ruh>Nh?hh"]rubj)r}r(h'Uh)jTh*h-h/jh1}r(jjUh3]rh5]rh7]rh9]rh;]rjXdescriberjjuh>Nh?hh"]r(j)r}r(h'Xdatarh)jh*h-h/jh1}r(h3]rh5]rh7]rh9]rh;]rjuh>Kh?hh"]rj)r}r(h'jh)jh*h-h/jh1}r(h7]rh9]rh5]rh3]rh;]ruh>Kh?hh"]rh\Xdatarr}r(h'Uh)jubaubaubj)r}r(h'Uh)jh*h-h/jh1}r(h7]rh9]rh5]rh3]rh;]ruh>Kh?hh"]rh`)r}r(h'XWAn array containing the arguments to pass to the callback function when it is executed.rh)jh*h-h/hdh1}r(h7]rh9]rh5]rh3]rh;]ruh>Kh?hh"]rh\XWAn array containing the arguments to pass to the callback function when it is executed.rr}r(h'jh)jubaubaubeubj)r}r(h'Uh)jTh*h-h/jh1}r(h3]rh5]rh7]rh9]rh;]rUentriesr]ruh>Nh?hh"]rubj)r}r(h'Uh)jTh*h-h/jh1}r(jjUh3]rh5]rh7]rh9]rh;]rjXdescriberjjuh>Nh?hh"]r(j)r}r(h'Xobjectrh)jh*h-h/jh1}r(h3]rh5]rh7]rh9]rh;]r juh>Kh?hh"]r j)r }r (h'jh)jh*h-h/jh1}r (h7]rh9]rh5]rh3]rh;]ruh>Kh?hh"]rh\Xobjectrr}r(h'Uh)j ubaubaubj)r}r(h'Uh)jh*h-h/jh1}r(h7]rh9]rh5]rh3]rh;]ruh>Kh?hh"]rh`)r }r!(h'XEThe object to use as `this` during the call to the callback function.r"h)jh*h-h/hdh1}r#(h7]r$h9]r%h5]r&h3]r'h;]r(uh>Kh?hh"]r)(h\XThe object to use as r*r+}r,(h'XThe object to use as r-h)j ubh)r.}r/(h'X`this`r0h1}r1(h7]r2h9]r3h5]r4h3]r5h;]r6uh)j h"]r7h\Xthisr8r9}r:(h'Uh)j.ubah/hubh\X* during the call to the callback function.r;r<}r=(h'X* during the call to the callback function.r>h)j ubeubaubeubj)r?}r@(h'Uh)jTh*h-h/jh1}rA(h3]rBh5]rCh7]rDh9]rEh;]rFUentriesrG]rHuh>Nh?hh"]rIubj)rJ}rK(h'Uh)jTh*h-h/jh1}rL(jjUh3]rMh5]rNh7]rOh9]rPh;]rQjXdescriberRjjRuh>Nh?hh"]rS(j)rT}rU(h'XcalledrVh)jJh*h-h/jh1}rW(h3]rXh5]rYh7]rZh9]r[h;]r\juh>Kh?hh"]r]j)r^}r_(h'jVh)jTh*h-h/jh1}r`(h7]rah9]rbh5]rch3]rdh;]reuh>Kh?hh"]rfh\Xcalledrgrh}ri(h'Uh)j^ubaubaubj)rj}rk(h'Uh)jJh*h-h/jh1}rl(h7]rmh9]rnh5]roh3]rph;]rquh>Kh?hh"]rrh`)rs}rt(h'XSet to ``true`` after the callback has been called, and undefined otherwise. A callback will not be exectued a second time unless the callback's :meth:`reset()` method is called first, or its ``autoReset`` property is set to ``true``.ruh)jjh*h-h/hdh1}rv(h7]rwh9]rxh5]ryh3]rzh;]r{uh>Kh?hh"]r|(h\XSet to r}r~}r(h'XSet to rh)jsubhp)r}r(h'X``true``rh1}r(h7]rh9]rh5]rh3]rh;]ruh)jsh"]rh\Xtruerr}r(h'Uh)jubah/h~ubh\X after the callback has been called, and undefined otherwise. A callback will not be exectued a second time unless the callback's rr}r(h'X after the callback has been called, and undefined otherwise. A callback will not be exectued a second time unless the callback's rh)jsubh)r}r(h'X:meth:`reset()`rh)jsh/hh1}r(UreftyperXmethrhXresetrU refdomainrXpyrh3]rh5]rU refexplicitrh7]rh9]rh;]rhhjTNjUNuh>Kh"]rhp)r}r(h'jh1}r(h7]rh9]r(hjXpy-methreh5]rh3]rh;]ruh)jh"]rh\Xreset()rr}r(h'Uh)jubah/h~ubaubh\X method is called first, or its rr}r(h'X method is called first, or its rh)jsubhp)r}r(h'X ``autoReset``rh1}r(h7]rh9]rh5]rh3]rh;]ruh)jsh"]rh\X autoResetrr}r(h'Uh)jubah/h~ubh\X property is set to rr}r(h'X property is set to rh)jsubhp)r}r(h'X``true``rh1}r(h7]rh9]rh5]rh3]rh;]ruh)jsh"]rh\Xtruerr}r(h'Uh)jubah/h~ubh\X.r}r(h'X.h)jsubeubaubeubj)r}r(h'Uh)jTh*h-h/jh1}r(h3]rh5]rh7]rh9]rh;]rUentriesr]ruh>Nh?hh"]rubj)r}r(h'Uh)jTh*h-h/jh1}r(jjUh3]rh5]rh7]rh9]rh;]rjXdescriberjjuh>Nh?hh"]r(j)r}r(h'X autoResetrh)jh*h-h/jh1}r(h3]rh5]rh7]rh9]rh;]rjuh>Kh?hh"]rj)r}r(h'jh)jh*h-h/jh1}r(h7]rh9]rh5]rh3]rh;]ruh>Kh?hh"]rh\X autoResetrr}r(h'Uh)jubaubaubj)r}r(h'Uh)jh*h-h/jh1}r(h7]rh9]rh5]rh3]rh;]ruh>Kh?hh"]rh`)r}r(h'XSet this to ``true`` if you want to be able to call the callback more than once. (This is the case for signal listeners, for example).r h)jh*h-h/hdh1}r (h7]r h9]r h5]r h3]rh;]ruh>Kh?hh"]r(h\X Set this to rr}r(h'X Set this to rh)jubhp)r}r(h'X``true``rh1}r(h7]rh9]rh5]rh3]rh;]ruh)jh"]rh\Xtruerr }r!(h'Uh)jubah/h~ubh\Xs if you want to be able to call the callback more than once. (This is the case for signal listeners, for example).r"r#}r$(h'Xs if you want to be able to call the callback more than once. (This is the case for signal listeners, for example).r%h)jubeubaubeubj)r&}r'(h'Uh)jTh*h-h/jh1}r((h3]r)h5]r*h7]r+h9]r,h;]r-Uentriesr.]r/uh>Nh?hh"]r0ubj)r1}r2(h'Uh)jTh*h-h/jh1}r3(jjUh3]r4h5]r5h7]r6h9]r7h;]r8jXdescriber9jj9uh>Nh?hh"]r:(j)r;}r<(h'X isCallbackr=h)j1h*h-h/jh1}r>(h3]r?h5]r@h7]rAh9]rBh;]rCjuh>Kh?hh"]rDj)rE}rF(h'j=h)j;h*h-h/jh1}rG(h7]rHh9]rIh5]rJh3]rKh;]rLuh>Kh?hh"]rMh\X isCallbackrNrO}rP(h'Uh)jEubaubaubj)rQ}rR(h'Uh)j1h*h-h/jh1}rS(h7]rTh9]rUh5]rVh3]rWh;]rXuh>Kh?hh"]rYh`)rZ}r[(h'XJAlways set to ``true`` (used to detect if an object is a callback or not).r\h)jQh*h-h/hdh1}r](h7]r^h9]r_h5]r`h3]rah;]rbuh>Kh?hh"]rc(h\XAlways set to rdre}rf(h'XAlways set to rgh)jZubhp)rh}ri(h'X``true``rjh1}rk(h7]rlh9]rmh5]rnh3]roh;]rpuh)jZh"]rqh\Xtruerrrs}rt(h'Uh)jhubah/h~ubh\X4 (used to detect if an object is a callback or not).rurv}rw(h'X4 (used to detect if an object is a callback or not).rxh)jZubeubaubeubeubhA)ry}rz(h'Uh)hBh*h-h/hFh1}r{(h7]r|h9]r}h5]r~h3]rhah;]rhauh>Kh?hh"]r(hP)r}r(h'XCallback Object Methodsrh)jyh*h-h/hTh1}r(h7]rh9]rh5]rh3]rh;]ruh>Kh?hh"]rh\XCallback Object Methodsrr}r(h'jh)jubaubj)r}r(h'Uh)jyh*h-h/jh1}r(h3]rh5]rh7]rh9]rh;]rUentriesr]r(UsinglerXreset()hhtrauh>Nh?hh"]rubj)r}r(h'Uh)jyh*h-h/jh1}r(jjXpyrh3]rh5]rh7]rh9]rh;]rjXmethodrjjuh>Nh?hh"]r(j)r}r(h'Xreset()rh)jh*h-h/jh1}r(h3]rhaUmodulerNh5]rh7]rh9]rh;]rhaUfullnamerhUclassrUjuh>Kh?hh"]r(j)r}r(h'hh)jh*h-h/jh1}r(h7]rh9]rh5]rh3]rh;]ruh>Kh?hh"]rh\Xresetrr}r(h'Uh)jubaubcsphinx.addnodes desc_parameterlist r)r}r(h'Uh)jh*h-h/Udesc_parameterlistrh1}r(h7]rh9]rh5]rh3]rh;]ruh>Kh?hh"]rubeubj)r}r(h'Uh)jh*h-h/jh1}r(h7]rh9]rh5]rh3]rh;]ruh>Kh?hh"]rh`)r}r(h'X(Clears the callback's `called` property.rh)jh*h-h/hdh1}r(h7]rh9]rh5]rh3]rh;]ruh>Kh?hh"]r(h\XClears the callback's rr}r(h'XClears the callback's rh)jubh)r}r(h'X`called`rh1}r(h7]rh9]rh5]rh3]rh;]ruh)jh"]rh\Xcalledrr}r(h'Uh)jubah/hubh\X property.rr}r(h'X property.rh)jubeubaubeubeubhA)r}r(h'Uh)hBh*h-h/hFh1}r(h7]rh9]rh5]rh3]rh ah;]rhauh>Kh?hh"]r(hP)r}r(h'XMathJax.Callback Methodsrh)jh*h-h/hTh1}r(h7]r h9]r h5]r h3]r h;]r uh>Kh?hh"]r h\XMathJax.Callback Methodsr r }r (h'jh)jubaubj)r }r (h'Uh)jh*Nh/jh1}r (h3]r h5]r h7]r h9]r h;]r Uentriesr ]r (jXDelay()hhtr auh>Nh?hh"]r ubj)r }r (h'Uh)jh*Nh/jh1}r (jjXpyr h3]r h5]r h7]r h9]r h;]r jXmethodr jj uh>Nh?hh"]r (j)r }r! (h'XDelay(time[, callback])r" h)j h*h-h/jh1}r# (h3]r$ hajNh5]r% h7]r& h9]r' h;]r( hajhjUjuh>Kh?hh"]r) (j)r* }r+ (h'hh)j h*h-h/jh1}r, (h7]r- h9]r. h5]r/ h3]r0 h;]r1 uh>Kh?hh"]r2 h\XDelayr3 r4 }r5 (h'Uh)j* ubaubj)r6 }r7 (h'Uh)j h*h-h/jh1}r8 (h7]r9 h9]r: h5]r; h3]r< h;]r= uh>Kh?hh"]r> (csphinx.addnodes desc_parameter r? )r@ }rA (h'XtimerB h)j6 h*h-h/Udesc_parameterrC h1}rD (h7]rE h9]rF h5]rG h3]rH h;]rI uh>Kh?hh"]rJ h\XtimerK rL }rM (h'Uh)j@ ubaubcsphinx.addnodes desc_optional rN )rO }rP (h'Uh)j6 h*h-h/U desc_optionalrQ h1}rR (h7]rS h9]rT h5]rU h3]rV h;]rW uh>Kh?hh"]rX j? )rY }rZ (h'Xcallbackr[ h)jO h*h-h/jC h1}r\ (h7]r] h9]r^ h5]r_ h3]r` h;]ra uh>Kh?hh"]rb h\Xcallbackrc rd }re (h'Uh)jY ubaubaubeubeubj)rf }rg (h'Uh)j h*h-h/jh1}rh (h7]ri h9]rj h5]rk h3]rl h;]rm uh>Kh?hh"]rn (h`)ro }rp (h'XWaits for the specified time (given in milliseconds) and then performs the callback. It returns the Callback object (or a blank one if none was supplied). The returned callback structure has a `timeout` property set to the result of the ``setTimeout()`` call that was used to perform the wait so that you can cancel the wait, if needed. Thus :meth:`MathJax.Callback.Delay()` can be used to start a timeout delay that executes the callback if an action doesn't occur within the given time (and if the action does occur, the timeout can be canceled). Since :meth:`MathJax.Callback.Delay()` returns a callback structure, it can be used in a callback queue to insert a delay between queued commands.rq h)jf h*h-h/hdh1}rr (h7]rs h9]rt h5]ru h3]rv h;]rw uh>Kh?hh"]rx (h\XWaits for the specified time (given in milliseconds) and then performs the callback. It returns the Callback object (or a blank one if none was supplied). The returned callback structure has a ry rz }r{ (h'XWaits for the specified time (given in milliseconds) and then performs the callback. It returns the Callback object (or a blank one if none was supplied). The returned callback structure has a r| h)jo ubh)r} }r~ (h'X `timeout`r h1}r (h7]r h9]r h5]r h3]r h;]r uh)jo h"]r h\Xtimeoutr r }r (h'Uh)j} ubah/hubh\X# property set to the result of the r r }r (h'X# property set to the result of the r h)jo ubhp)r }r (h'X``setTimeout()``r h1}r (h7]r h9]r h5]r h3]r h;]r uh)jo h"]r h\X setTimeout()r r }r (h'Uh)j ubah/h~ubh\XZ call that was used to perform the wait so that you can cancel the wait, if needed. Thus r r }r (h'XZ call that was used to perform the wait so that you can cancel the wait, if needed. Thus r h)jo ubh)r }r (h'X :meth:`MathJax.Callback.Delay()`r h)jo h/hh1}r (Ureftyper Xmethr hXMathJax.Callback.Delayr U refdomainr Xpyr h3]r h5]r U refexplicitr h7]r h9]r h;]r hhjTNjUNuh>Kh"]r hp)r }r (h'j h1}r (h7]r h9]r (hj Xpy-methr eh5]r h3]r h;]r uh)j h"]r h\XMathJax.Callback.Delay()r r }r (h'Uh)j ubah/h~ubaubh\X can be used to start a timeout delay that executes the callback if an action doesn't occur within the given time (and if the action does occur, the timeout can be canceled). Since r r }r (h'X can be used to start a timeout delay that executes the callback if an action doesn't occur within the given time (and if the action does occur, the timeout can be canceled). Since r h)jo ubh)r }r (h'X :meth:`MathJax.Callback.Delay()`r h)jo h/hh1}r (Ureftyper Xmethr hXMathJax.Callback.Delayr U refdomainr Xpyr h3]r h5]r U refexplicitr h7]r h9]r h;]r hhjTNjUNuh>Kh"]r hp)r }r (h'j h1}r (h7]r h9]r (hj Xpy-methr eh5]r h3]r h;]r uh)j h"]r h\XMathJax.Callback.Delay()r r }r (h'Uh)j ubah/h~ubaubh\Xl returns a callback structure, it can be used in a callback queue to insert a delay between queued commands.r r }r (h'Xl returns a callback structure, it can be used in a callback queue to insert a delay between queued commands.r h)jo ubeubcdocutils.nodes field_list r )r }r (h'Uh)jf h*Nh/U field_listr h1}r (h7]r h9]r h5]r h3]r h;]r uh>Nh?hh"]r (cdocutils.nodes field r )r }r (h'Uh)j h*h-h/Ufieldr h1}r (h7]r h9]r h5]r h3]r h;]r uh>Kh?hh"]r (cdocutils.nodes field_name r )r }r (h'X Parametersr h1}r (h7]r h9]r h5]r h3]r h;]r uh)j h"]r h\X Parameters r r }r (h'Uh)j ubah/U field_namer ubcdocutils.nodes field_body r )r }r (h'XW- **time** --- the amount of time to wait - **callback** --- the callback specificationr h1}r (h7]r h9]r h5]r h3]r h;]r uh)j h"]r cdocutils.nodes bullet_list r )r }r (h'Uh1}r (Ubulletr X-h3]r h5]r h7]r h9]r h;]r uh)j h"]r (cdocutils.nodes list_item r )r }r (h'X'**time** --- the amount of time to waitr h1}r (h7]r! h9]r" h5]r# h3]r$ h;]r% uh)j h"]r& h`)r' }r( (h'j h)j h*h-h/hdh1}r) (h7]r* h9]r+ h5]r, h3]r- h;]r. uh>Kh"]r/ (cdocutils.nodes strong r0 )r1 }r2 (h'X**time**r3 h1}r4 (h7]r5 h9]r6 h5]r7 h3]r8 h;]r9 uh)j' h"]r: h\Xtimer; r< }r= (h'Uh)j1 ubah/Ustrongr> ubh\X --- the amount of time to waitr? r@ }rA (h'X --- the amount of time to waitrB h)j' ubeubah/U list_itemrC ubj )rD }rE (h'X+**callback** --- the callback specificationrF h1}rG (h7]rH h9]rI h5]rJ h3]rK h;]rL uh)j h"]rM h`)rN }rO (h'jF h)jD h*h-h/hdh1}rP (h7]rQ h9]rR h5]rS h3]rT h;]rU uh>Kh"]rV (j0 )rW }rX (h'X **callback**rY h1}rZ (h7]r[ h9]r\ h5]r] h3]r^ h;]r_ uh)jN h"]r` h\Xcallbackra rb }rc (h'Uh)jW ubah/j> ubh\X --- the callback specificationrd re }rf (h'X --- the callback specificationrg h)jN ubeubah/jC ubeh/U bullet_listrh ubah/U field_bodyri ubeubj )rj }rk (h'Uh)j h*h-h/j h1}rl (h7]rm h9]rn h5]ro h3]rp h;]rq uh>Kh?hh"]rr (j )rs }rt (h'XReturnsru h1}rv (h7]rw h9]rx h5]ry h3]rz h;]r{ uh)jj h"]r| h\XReturns r} r~ }r (h'Uh)js ubah/j ubj )r }r (h'Xthe callback objectr h1}r (h7]r h9]r h5]r h3]r h;]r uh)jj h"]r h`)r }r (h'j h)j h*h-h/hdh1}r (h7]r h9]r h5]r h3]r h;]r uh>Kh"]r h\Xthe callback objectr r }r (h'j h)j ubaubah/ji ubeubeubeubeubj)r }r (h'Uh)jh*Nh/jh1}r (h3]r h5]r h7]r h9]r h;]r Uentriesr ]r (jXexecuteHooks()h h tr auh>Nh?hh"]r ubj)r }r (h'Uh)jh*Nh/jh1}r (jjXpyr h3]r h5]r h7]r h9]r h;]r jXmethodr jj uh>Nh?hh"]r (j)r }r (h'X#executeHooks(hooks[, data[,reset]])r h)j h*h-h/jh1}r (h3]r h ajNh5]r h7]r h9]r h;]r h ajh jUjuh>Kh?hh"]r (j)r }r (h'h h)j h*h-h/jh1}r (h7]r h9]r h5]r h3]r h;]r uh>Kh?hh"]r h\X executeHooksr r }r (h'Uh)j ubaubj)r }r (h'Uh)j h*h-h/jh1}r (h7]r h9]r h5]r h3]r h;]r uh>Kh?hh"]r (j? )r }r (h'Xhooksr h)j h*h-h/jC h1}r (h7]r h9]r h5]r h3]r h;]r uh>Kh?hh"]r h\Xhooksr r }r (h'Uh)j ubaubjN )r }r (h'Uh)j h*h-h/jQ h1}r (h7]r h9]r h5]r h3]r h;]r uh>Kh?hh"]r (j? )r }r (h'Xdatar h)j h*h-h/jC h1}r (h7]r h9]r h5]r h3]r h;]r uh>Kh?hh"]r h\Xdatar r }r (h'Uh)j ubaubjN )r }r (h'Uh)j h*h-h/jQ h1}r (h7]r h9]r h5]r h3]r h;]r uh>Kh?hh"]r j? )r }r (h'Xresetr h)j h*h-h/jC h1}r (h7]r h9]r h5]r h3]r h;]r uh>Kh?hh"]r h\Xresetr r }r (h'Uh)j ubaubaubeubeubeubj)r }r (h'Uh)j h*h-h/jh1}r (h7]r h9]r h5]r h3]r h;]r uh>Kh?hh"]r (h`)r }r (h'XCalls each callback in the `hooks` array (or the single hook if it is not an array), passing it the arguments stored in the data array. It `reset` is ``true``, then the callback's :meth:`reset()` method will be called before each hook is executed. If any of the hooks returns a `Callback` object, then it collects those callbacks and returns a new callback that will execute when all the ones returned by the hooks have been completed. Otherwise, :meth:`MathJax.Callback.executeHooks()` returns ``null``.r h)j h*h-h/hdh1}r (h7]r h9]r h5]r h3]r h;]r uh>Kh?hh"]r (h\XCalls each callback in the r r }r (h'XCalls each callback in the r h)j ubh)r }r (h'X`hooks`r h1}r (h7]r h9]r! h5]r" h3]r# h;]r$ uh)j h"]r% h\Xhooksr& r' }r( (h'Uh)j ubah/hubh\Xj array (or the single hook if it is not an array), passing it the arguments stored in the data array. It r) r* }r+ (h'Xj array (or the single hook if it is not an array), passing it the arguments stored in the data array. It r, h)j ubh)r- }r. (h'X`reset`r/ h1}r0 (h7]r1 h9]r2 h5]r3 h3]r4 h;]r5 uh)j h"]r6 h\Xresetr7 r8 }r9 (h'Uh)j- ubah/hubh\X is r: r; }r< (h'X is r= h)j ubhp)r> }r? (h'X``true``r@ h1}rA (h7]rB h9]rC h5]rD h3]rE h;]rF uh)j h"]rG h\XtruerH rI }rJ (h'Uh)j> ubah/h~ubh\X, then the callback's rK rL }rM (h'X, then the callback's rN h)j ubh)rO }rP (h'X:meth:`reset()`rQ h)j h/hh1}rR (UreftyperS XmethrT hXresetrU U refdomainrV XpyrW h3]rX h5]rY U refexplicitrZ h7]r[ h9]r\ h;]r] hhjTNjUNuh>Kh"]r^ hp)r_ }r` (h'jQ h1}ra (h7]rb h9]rc (hjW Xpy-methrd eh5]re h3]rf h;]rg uh)jO h"]rh h\Xreset()ri rj }rk (h'Uh)j_ ubah/h~ubaubh\XT method will be called before each hook is executed. If any of the hooks returns a rl rm }rn (h'XT method will be called before each hook is executed. If any of the hooks returns a ro h)j ubh)rp }rq (h'X `Callback`rr h1}rs (h7]rt h9]ru h5]rv h3]rw h;]rx uh)j h"]ry h\XCallbackrz r{ }r| (h'Uh)jp ubah/hubh\X object, then it collects those callbacks and returns a new callback that will execute when all the ones returned by the hooks have been completed. Otherwise, r} r~ }r (h'X object, then it collects those callbacks and returns a new callback that will execute when all the ones returned by the hooks have been completed. Otherwise, r h)j ubh)r }r (h'X':meth:`MathJax.Callback.executeHooks()`r h)j h/hh1}r (Ureftyper Xmethr hXMathJax.Callback.executeHooksr U refdomainr Xpyr h3]r h5]r U refexplicitr h7]r h9]r h;]r hhjTNjUNuh>Kh"]r hp)r }r (h'j h1}r (h7]r h9]r (hj Xpy-methr eh5]r h3]r h;]r uh)j h"]r h\XMathJax.Callback.executeHooks()r r }r (h'Uh)j ubah/h~ubaubh\X returns r r }r (h'X returns r h)j ubhp)r }r (h'X``null``r h1}r (h7]r h9]r h5]r h3]r h;]r uh)j h"]r h\Xnullr r }r (h'Uh)j ubah/h~ubh\X.r }r (h'X.h)j ubeubj )r }r (h'Uh)j h*Nh/j h1}r (h7]r h9]r h5]r h3]r h;]r uh>Nh?hh"]r (j )r }r (h'Uh)j h*h-h/j h1}r (h7]r h9]r h5]r h3]r h;]r uh>Kh?hh"]r (j )r }r (h'X Parametersr h1}r (h7]r h9]r h5]r h3]r h;]r uh)j h"]r h\X Parameters r r }r (h'Uh)j ubah/j ubj )r }r (h'X- **hooks** --- array of hooks to be called, or a hook - **data** --- array of arguments to pass to each hook in turn - **reset** --- ``true`` if the :meth:`reset()` method should be calledr h1}r (h7]r h9]r h5]r h3]r h;]r uh)j h"]r j )r }r (h'Uh1}r (j X-h3]r h5]r h7]r h9]r h;]r uh)j h"]r (j )r }r (h'X4**hooks** --- array of hooks to be called, or a hookr h1}r (h7]r h9]r h5]r h3]r h;]r uh)j h"]r h`)r }r (h'j h)j h*h-h/hdh1}r (h7]r h9]r h5]r h3]r h;]r uh>Kh"]r (j0 )r }r (h'X **hooks**r h1}r (h7]r h9]r h5]r h3]r h;]r uh)j h"]r h\Xhooksr r }r (h'Uh)j ubah/j> ubh\X+ --- array of hooks to be called, or a hookr r }r (h'X+ --- array of hooks to be called, or a hookr h)j ubeubah/jC ubj )r }r (h'X<**data** --- array of arguments to pass to each hook in turnr h1}r (h7]r h9]r h5]r h3]r h;]r uh)j h"]r h`)r }r (h'j h)j h*h-h/hdh1}r (h7]r h9]r h5]r h3]r h;]r uh>Kh"]r (j0 )r }r (h'X**data**r h1}r (h7]r h9]r h5]r h3]r! h;]r" uh)j h"]r# h\Xdatar$ r% }r& (h'Uh)j ubah/j> ubh\X4 --- array of arguments to pass to each hook in turnr' r( }r) (h'X4 --- array of arguments to pass to each hook in turnr* h)j ubeubah/jC ubj )r+ }r, (h'XE**reset** --- ``true`` if the :meth:`reset()` method should be calledr- h1}r. (h7]r/ h9]r0 h5]r1 h3]r2 h;]r3 uh)j h"]r4 h`)r5 }r6 (h'j- h)j+ h*h-h/hdh1}r7 (h7]r8 h9]r9 h5]r: h3]r; h;]r< uh>Kh"]r= (j0 )r> }r? (h'X **reset**r@ h1}rA (h7]rB h9]rC h5]rD h3]rE h;]rF uh)j5 h"]rG h\XresetrH rI }rJ (h'Uh)j> ubah/j> ubh\X --- rK rL }rM (h'X --- rN h)j5 ubhp)rO }rP (h'X``true``rQ h1}rR (h7]rS h9]rT h5]rU h3]rV h;]rW uh)j5 h"]rX h\XtruerY rZ }r[ (h'Uh)jO ubah/h~ubh\X if the r\ r] }r^ (h'X if the r_ h)j5 ubh)r` }ra (h'X:meth:`reset()`rb h)j5 h/hh1}rc (Ureftyperd Xmethre hXresetrf U refdomainrg Xpyrh h3]ri h5]rj U refexplicitrk h7]rl h9]rm h;]rn hhjTNjUNuh>Kh"]ro hp)rp }rq (h'jb h1}rr (h7]rs h9]rt (hjh Xpy-methru eh5]rv h3]rw h;]rx uh)j` h"]ry h\Xreset()rz r{ }r| (h'Uh)jp ubah/h~ubaubh\X method should be calledr} r~ }r (h'X method should be calledr h)j5 ubeubah/jC ubeh/jh ubah/ji ubeubj )r }r (h'Uh)j h*h-h/j h1}r (h7]r h9]r h5]r h3]r h;]r uh>Kh?hh"]r (j )r }r (h'XReturnsr h1}r (h7]r h9]r h5]r h3]r h;]r uh)j h"]r h\XReturns r r }r (h'Uh)j ubah/j ubj )r }r (h'X>callback that waits for all the hooks to complete, or ``null``r h1}r (h7]r h9]r h5]r h3]r h;]r uh)j h"]r h`)r }r (h'j h)j h*h-h/hdh1}r (h7]r h9]r h5]r h3]r h;]r uh>Kh"]r (h\X6callback that waits for all the hooks to complete, or r r }r (h'X6callback that waits for all the hooks to complete, or r h)j ubhp)r }r (h'X``null``r h1}r (h7]r h9]r h5]r h3]r h;]r uh)j h"]r h\Xnullr r }r (h'Uh)j ubah/h~ubeubah/ji ubeubeubeubeubj)r }r (h'Uh)jh*Nh/jh1}r (h3]r h5]r h7]r h9]r h;]r Uentriesr ]r (jXQueue()hhtr auh>Nh?hh"]r ubj)r }r (h'Uh)jh*Nh/jh1}r (jjXpyr h3]r h5]r h7]r h9]r h;]r jXmethodr jj uh>Nh?hh"]r (j)r }r (h'XQueue([callback,...])r h)j h*h-h/jh1}r (h3]r hajNh5]r h7]r h9]r h;]r hajhjUjuh>Kh?hh"]r (j)r }r (h'hh)j h*h-h/jh1}r (h7]r h9]r h5]r h3]r h;]r uh>Kh?hh"]r h\XQueuer r }r (h'Uh)j ubaubj)r }r (h'Uh)j h*h-h/jh1}r (h7]r h9]r h5]r h3]r h;]r uh>Kh?hh"]r jN )r }r (h'Uh)j h*h-h/jQ h1}r (h7]r h9]r h5]r h3]r h;]r uh>Kh?hh"]r (j? )r }r (h'Xcallbackr h)j h*h-h/jC h1}r (h7]r h9]r h5]r h3]r h;]r uh>Kh?hh"]r h\Xcallbackr r }r (h'Uh)j ubaubj? )r }r (h'X...r h)j h*h-h/jC h1}r (h7]r h9]r h5]r h3]r h;]r uh>Kh?hh"]r h\X...r r }r (h'Uh)j ubaubeubaubeubj)r }r (h'Uh)j h*h-h/jh1}r (h7]r h9]r h5]r h3]r h;]r uh>Kh?hh"]r (h`)r }r (h'XCreates a `MathJax.CallBack.Queue` object and pushes the given callbacks into the queue. See :ref:`Using Queues ` for more details about MathJax queues.r h)j h*h-h/hdh1}r (h7]r! h9]r" h5]r# h3]r$ h;]r% uh>Kh?hh"]r& (h\X Creates a r' r( }r) (h'X Creates a r* h)j ubh)r+ }r, (h'X`MathJax.CallBack.Queue`r- h1}r. (h7]r/ h9]r0 h5]r1 h3]r2 h;]r3 uh)j h"]r4 h\XMathJax.CallBack.Queuer5 r6 }r7 (h'Uh)j+ ubah/hubh\X< object and pushes the given callbacks into the queue. See r8 r9 }r: (h'X< object and pushes the given callbacks into the queue. See r; h)j ubh)r< }r= (h'X":ref:`Using Queues `r> h)j h/hh1}r? (Ureftyper@ XrefrA hX using-queuesrB U refdomainrC XstdrD h3]rE h5]rF U refexplicitrG h7]rH h9]rI h;]rJ hhuh>Kh"]rK h)rL }rM (h'j> h1}rN (h7]rO h9]rP (hjD Xstd-refrQ eh5]rR h3]rS h;]rT uh)j< h"]rU h\X Using QueuesrV rW }rX (h'Uh)jL ubah/hubaubh\X' for more details about MathJax queues.rY rZ }r[ (h'X' for more details about MathJax queues.r\ h)j ubeubj )r] }r^ (h'Uh)j h*Nh/j h1}r_ (h7]r` h9]ra h5]rb h3]rc h;]rd uh>Nh?hh"]re (j )rf }rg (h'Uh)j] h*h-h/j h1}rh (h7]ri h9]rj h5]rk h3]rl h;]rm uh>Kh?hh"]rn (j )ro }rp (h'X Parametersrq h1}rr (h7]rs h9]rt h5]ru h3]rv h;]rw uh)jf h"]rx h\X Parameters ry rz }r{ (h'Uh)jo ubah/j ubj )r| }r} (h'X6- **callback** --- one or more callback specificationsr~ h1}r (h7]r h9]r h5]r h3]r h;]r uh)jf h"]r j )r }r (h'Uh1}r (j X-h3]r h5]r h7]r h9]r h;]r uh)j| h"]r j )r }r (h'X4**callback** --- one or more callback specificationsr h1}r (h7]r h9]r h5]r h3]r h;]r uh)j h"]r h`)r }r (h'j h)j h*h-h/hdh1}r (h7]r h9]r h5]r h3]r h;]r uh>Kh"]r (j0 )r }r (h'X **callback**r h1}r (h7]r h9]r h5]r h3]r h;]r uh)j h"]r h\Xcallbackr r }r (h'Uh)j ubah/j> ubh\X( --- one or more callback specificationsr r }r (h'X( --- one or more callback specificationsr h)j ubeubah/jC ubah/jh ubah/ji ubeubj )r }r (h'Uh)j] h*h-h/j h1}r (h7]r h9]r h5]r h3]r h;]r uh>Kh?hh"]r (j )r }r (h'XReturnsr h1}r (h7]r h9]r h5]r h3]r h;]r uh)j h"]r h\XReturns r r }r (h'Uh)j ubah/j ubj )r }r (h'Xthe `Queue` objectr h1}r (h7]r h9]r h5]r h3]r h;]r uh)j h"]r h`)r }r (h'j h)j h*h-h/hdh1}r (h7]r h9]r h5]r h3]r h;]r uh>Kh"]r (h\Xthe r r }r (h'Xthe r h)j ubh)r }r (h'X`Queue`r h1}r (h7]r h9]r h5]r h3]r h;]r uh)j h"]r h\XQueuer r }r (h'Uh)j ubah/hubh\X objectr r }r (h'X objectr h)j ubeubah/ji ubeubeubeubeubj)r }r (h'Uh)jh*Nh/jh1}r (h3]r h5]r h7]r h9]r h;]r Uentriesr ]r (jXSignal()h h tr auh>Nh?hh"]r ubj)r }r (h'Uh)jh*Nh/jh1}r (jjXpyrh3]rh5]rh7]rh9]rh;]rjXmethodrjjuh>Nh?hh"]r(j)r}r (h'X Signal(name)r h)j h*h-h/jh1}r (h3]r h ajNh5]r h7]rh9]rh;]rh ajh jUjuh>Mh?hh"]r(j)r}r(h'h h)jh*h-h/jh1}r(h7]rh9]rh5]rh3]rh;]ruh>Mh?hh"]rh\XSignalrr}r(h'Uh)jubaubj)r}r(h'Uh)jh*h-h/jh1}r (h7]r!h9]r"h5]r#h3]r$h;]r%uh>Mh?hh"]r&j? )r'}r((h'Xnamer)h)jh*h-h/jC h1}r*(h7]r+h9]r,h5]r-h3]r.h;]r/uh>Mh?hh"]r0h\Xnamer1r2}r3(h'Uh)j'ubaubaubeubj)r4}r5(h'Uh)j h*h-h/jh1}r6(h7]r7h9]r8h5]r9h3]r:h;]r;uh>Mh?hh"]r<(h`)r=}r>(h'XLooks for a named signal, creates it if it doesn't already exist, and returns the signal object. See :ref:`Using Signals ` for more details.r?h)j4h*h-h/hdh1}r@(h7]rAh9]rBh5]rCh3]rDh;]rEuh>Kh?hh"]rF(h\XfLooks for a named signal, creates it if it doesn't already exist, and returns the signal object. See rGrH}rI(h'XfLooks for a named signal, creates it if it doesn't already exist, and returns the signal object. See rJh)j=ubh)rK}rL(h'X$:ref:`Using Signals `rMh)j=h/hh1}rN(UreftyperOXrefrPhX using-signalsrQU refdomainrRXstdrSh3]rTh5]rUU refexplicitrVh7]rWh9]rXh;]rYhhuh>Kh"]rZh)r[}r\(h'jMh1}r](h7]r^h9]r_(hjSXstd-refr`eh5]rah3]rbh;]rcuh)jKh"]rdh\X Using Signalsrerf}rg(h'Uh)j[ubah/hubaubh\X for more details.rhri}rj(h'X for more details.rkh)j=ubeubj )rl}rm(h'Uh)j4h*Nh/j h1}rn(h7]roh9]rph5]rqh3]rrh;]rsuh>Nh?hh"]rt(j )ru}rv(h'Uh)jlh*h-h/j h1}rw(h7]rxh9]ryh5]rzh3]r{h;]r|uh>Mh?hh"]r}(j )r~}r(h'X Parametersrh1}r(h7]rh9]rh5]rh3]rh;]ruh)juh"]rh\X Parameters rr}r(h'Uh)j~ubah/j ubj )r}r(h'X2- **name** --- name of the signal to get or createrh1}r(h7]rh9]rh5]rh3]rh;]ruh)juh"]rj )r}r(h'Uh1}r(j X-h3]rh5]rh7]rh9]rh;]ruh)jh"]rj )r}r(h'X0**name** --- name of the signal to get or createrh1}r(h7]rh9]rh5]rh3]rh;]ruh)jh"]rh`)r}r(h'jh)jh*h-h/hdh1}r(h7]rh9]rh5]rh3]rh;]ruh>Mh"]r(j0 )r}r(h'X**name**rh1}r(h7]rh9]rh5]rh3]rh;]ruh)jh"]rh\Xnamerr}r(h'Uh)jubah/j> ubh\X( --- name of the signal to get or createrr}r(h'X( --- name of the signal to get or createrh)jubeubah/jC ubah/jh ubah/ji ubeubj )r}r(h'Uh)jlh*h-h/j h1}r(h7]rh9]rh5]rh3]rh;]ruh>Mh?hh"]r(j )r}r(h'XReturnsrh1}r(h7]rh9]rh5]rh3]rh;]ruh)jh"]rh\XReturns rr}r(h'Uh)jubah/j ubj )r}r(h'Xthe `Signal` objectrh1}r(h7]rh9]rh5]rh3]rh;]ruh)jh"]rh`)r}r(h'jh)jh*h-h/hdh1}r(h7]rh9]rh5]rh3]rh;]ruh>Mh"]r(h\Xthe rr}r(h'Xthe rh)jubh)r}r(h'X`Signal`rh1}r(h7]rh9]rh5]rh3]rh;]ruh)jh"]rh\XSignalrr}r(h'Uh)jubah/hubh\X objectrr}r(h'X objectrh)jubeubah/ji ubeubeubeubeubeubeubeh'UU transformerrNU footnote_refsr}rUrefnamesr}rUsymbol_footnotesr]rUautofootnote_refsr]rUsymbol_footnote_refsr ]r U citationsr ]r h?hU current_liner NUtransform_messagesr]rcdocutils.nodes system_message r)r}r(h'Uh1}r(h7]rUlevelrKh3]rh5]rUsourcerh-h9]rh;]rUlinerKUtyperUINFOruh"]rh`)r}r (h'Uh1}r!(h7]r"h9]r#h5]r$h3]r%h;]r&uh)jh"]r'h\X2Hyperlink target "api-callback" is not referenced.r(r)}r*(h'Uh)jubah/hdubah/Usystem_messager+ubaUreporterr,NUid_startr-KU autofootnotesr.]r/U citation_refsr0}r1Uindirect_targetsr2]r3Usettingsr4(cdocutils.frontend Values r5or6}r7(Ufootnote_backlinksr8KUrecord_dependenciesr9NU rfc_base_urlr:Uhttp://tools.ietf.org/html/r;U tracebackr<KUpep_referencesr=NUstrip_commentsr>NU toc_backlinksr?Uentryr@U language_coderAUenrBU datestamprCNU report_levelrDKU _destinationrENU halt_levelrFKU strip_classesrGNhTNUerror_encoding_error_handlerrHUbackslashreplacerIUdebugrJNUembed_stylesheetrKUoutput_encoding_error_handlerrLUstrictrMU sectnum_xformrNKUdump_transformsrONU docinfo_xformrPKUwarning_streamrQNUpep_file_url_templaterRUpep-%04drSUexit_status_levelrTKUconfigrUNUstrict_visitorrVNUcloak_email_addressesrWUtrim_footnote_reference_spacerXUenvrYNUdump_pseudo_xmlrZNUexpose_internalsr[NUsectsubtitle_xformr\U source_linkr]NUrfc_referencesr^NUoutput_encodingr_Uutf-8r`U source_urlraNUinput_encodingrbU utf-8-sigrcU_disable_configrdNU id_prefixreUU tab_widthrfKUerror_encodingrgUUTF-8rhU_sourceriUV/Data/Code/JavaScript/MathJax/Code/SourceForge/trunk/mathjax/docs/rst/api/callback.rstrjU generatorrkNUdump_internalsrlNU pep_base_urlrmUhttp://www.python.org/dev/peps/rnUinput_encoding_error_handlerrojMUauto_id_prefixrpUidrqUdoctitle_xformrrUstrip_elements_with_classesrsNU _config_filesrt]ruUfile_insertion_enabledrvKU raw_enabledrwKU dump_settingsrxNubUsymbol_footnote_startryKUidsrz}r{(hjhjh jhjyh jh j hhBh!hBhj hjThhhj uUsubstitution_namesr|}r}h/h?h1}r~(h7]rh3]rh5]rUsourcerh-h9]rh;]ruU footnotesr]rUrefidsr}rh]rh%asub.