<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="utf-8">
    <title>JSDoc: Class: Display</title>

    <script src="scripts/prettify/prettify.js"> </script>
    <script src="scripts/prettify/lang-css.js"> </script>
    <!--[if lt IE 9]>
      <script src="//html5shiv.googlecode.com/svn/trunk/html5.js"></script>
    <![endif]-->
    <link type="text/css" rel="stylesheet" href="styles/prettify-tomorrow.css">
    <link type="text/css" rel="stylesheet" href="styles/jsdoc-default.css">
</head>

<body>

<div id="main">

    <h1 class="page-title">Class: Display</h1>

    




<section>

<header>
    
        <h2><span class="attribs"><span class="type-signature"></span></span>
            <span class="ancestors"><a href="Guacamole.html">Guacamole</a>.</span>Display<span class="signature">()</span><span class="type-signature"></span></h2>
        
    
</header>

<article>
    <div class="container-overview">
    
        

    

    
    <h4 class="name" id="Display"><span class="type-signature"></span>new Display<span class="signature">()</span><span class="type-signature"></span></h4>
    

    



<div class="description">
    The Guacamole display. The display does not deal with the Guacamole
protocol, and instead implements a set of graphical operations which
embody the set of operations present in the protocol. The order operations
are executed is guaranteed to be in the same order as their corresponding
functions are called.
</div>













<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="Display.js.html">Display.js</a>, <a href="Display.js.html#line31">line 31</a>
    </li></ul></dd>
    

    

    

    
</dl>




















    
    </div>

    

    

    
        <h3 class="subsection-title">Classes</h3>

        <dl>
            <dt><a href="Guacamole.Display.VisibleLayer.html">VisibleLayer</a></dt>
            <dd></dd>
        </dl>
    

    

    

    

    
        <h3 class="subsection-title">Members</h3>

        
            
<h4 class="name" id="cursorHotspotX"><span class="type-signature"></span>cursorHotspotX<span class="type-signature"> :Number</span></h4>




<div class="description">
    The X coordinate of the hotspot of the mouse cursor. The hotspot is
the relative location within the image of the mouse cursor at which
each click occurs.
</div>



    <h5>Type:</h5>
    <ul>
        <li>
            
<span class="param-type">Number</span>


        </li>
    </ul>





<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="Display.js.html">Display.js</a>, <a href="Display.js.html#line84">line 84</a>
    </li></ul></dd>
    

    

    

    
</dl>






        
            
<h4 class="name" id="cursorHotspotY"><span class="type-signature"></span>cursorHotspotY<span class="type-signature"> :Number</span></h4>




<div class="description">
    The Y coordinate of the hotspot of the mouse cursor. The hotspot is
the relative location within the image of the mouse cursor at which
each click occurs.
</div>



    <h5>Type:</h5>
    <ul>
        <li>
            
<span class="param-type">Number</span>


        </li>
    </ul>





<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="Display.js.html">Display.js</a>, <a href="Display.js.html#line93">line 93</a>
    </li></ul></dd>
    

    

    

    
</dl>






        
            
<h4 class="name" id="cursorX"><span class="type-signature"></span>cursorX<span class="type-signature"> :Number</span></h4>




<div class="description">
    The current X coordinate of the local mouse cursor. This is not
necessarily the location of the actual mouse - it refers only to
the location of the cursor image within the Guacamole display, as
last set by moveCursor().
</div>



    <h5>Type:</h5>
    <ul>
        <li>
            
<span class="param-type">Number</span>


        </li>
    </ul>





<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="Display.js.html">Display.js</a>, <a href="Display.js.html#line103">line 103</a>
    </li></ul></dd>
    

    

    

    
</dl>






        
            
<h4 class="name" id="cursorY"><span class="type-signature"></span>cursorY<span class="type-signature"> :Number</span></h4>




<div class="description">
    The current X coordinate of the local mouse cursor. This is not
necessarily the location of the actual mouse - it refers only to
the location of the cursor image within the Guacamole display, as
last set by moveCursor().
</div>



    <h5>Type:</h5>
    <ul>
        <li>
            
<span class="param-type">Number</span>


        </li>
    </ul>





<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="Display.js.html">Display.js</a>, <a href="Display.js.html#line113">line 113</a>
    </li></ul></dd>
    

    

    

    
</dl>






        
    

    
        <h3 class="subsection-title">Methods</h3>

        
            

    

    
    <h4 class="name" id="arc"><span class="type-signature"></span>arc<span class="signature">(layer, x, y, radius, startAngle, endAngle, negative)</span><span class="type-signature"></span></h4>
    

    



<div class="description">
    Add the specified arc to the current path.
</div>









    <h5>Parameters:</h5>
    

<table class="params">
    <thead>
    <tr>
        
        <th>Name</th>
        

        <th>Type</th>

        

        

        <th class="last">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name"><code>layer</code></td>
            

            <td class="type">
            
                
<span class="param-type"><a href="Guacamole.Layer.html">Guacamole.Layer</a></span>


            
            </td>

            

            

            <td class="description last">The layer to draw upon.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>x</code></td>
            

            <td class="type">
            
                
<span class="param-type">Number</span>


            
            </td>

            

            

            <td class="description last">The X coordinate of the center of the circle which
                  will contain the arc.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>y</code></td>
            

            <td class="type">
            
                
<span class="param-type">Number</span>


            
            </td>

            

            

            <td class="description last">The Y coordinate of the center of the circle which
                  will contain the arc.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>radius</code></td>
            

            <td class="type">
            
                
<span class="param-type">Number</span>


            
            </td>

            

            

            <td class="description last">The radius of the circle.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>startAngle</code></td>
            

            <td class="type">
            
                
<span class="param-type">Number</span>


            
            </td>

            

            

            <td class="description last">The starting angle of the arc, in radians.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>endAngle</code></td>
            

            <td class="type">
            
                
<span class="param-type">Number</span>


            
            </td>

            

            

            <td class="description last">The ending angle of the arc, in radians.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>negative</code></td>
            

            <td class="type">
            
                
<span class="param-type">Boolean</span>


            
            </td>

            

            

            <td class="description last">Whether the arc should be drawn in order of
                          decreasing angle.</td>
        </tr>

    
    </tbody>
</table>






<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="Display.js.html">Display.js</a>, <a href="Display.js.html#line829">line 829</a>
    </li></ul></dd>
    

    

    

    
</dl>




















        
            

    

    
    <h4 class="name" id="clip"><span class="type-signature"></span>clip<span class="signature">(layer)</span><span class="type-signature"></span></h4>
    

    



<div class="description">
    Clip all future drawing operations by the current path. The current path
is implicitly closed. The current path can continue to be reused
for other operations (such as fillColor()) but a new path will be started
once a path drawing operation (path() or rect()) is used.
</div>









    <h5>Parameters:</h5>
    

<table class="params">
    <thead>
    <tr>
        
        <th>Name</th>
        

        <th>Type</th>

        

        

        <th class="last">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name"><code>layer</code></td>
            

            <td class="type">
            
                
<span class="param-type"><a href="Guacamole.Layer.html">Guacamole.Layer</a></span>


            
            </td>

            

            

            <td class="description last">The layer to affect.</td>
        </tr>

    
    </tbody>
</table>






<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="Display.js.html">Display.js</a>, <a href="Display.js.html#line889">line 889</a>
    </li></ul></dd>
    

    

    

    
</dl>




















        
            

    

    
    <h4 class="name" id="close"><span class="type-signature"></span>close<span class="signature">(layer)</span><span class="type-signature"></span></h4>
    

    



<div class="description">
    Closes the current path by connecting the end point with the start
point (if any) with a straight line.
</div>









    <h5>Parameters:</h5>
    

<table class="params">
    <thead>
    <tr>
        
        <th>Name</th>
        

        <th>Type</th>

        

        

        <th class="last">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name"><code>layer</code></td>
            

            <td class="type">
            
                
<span class="param-type"><a href="Guacamole.Layer.html">Guacamole.Layer</a></span>


            
            </td>

            

            

            <td class="description last">The layer to draw upon.</td>
        </tr>

    
    </tbody>
</table>






<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="Display.js.html">Display.js</a>, <a href="Display.js.html#line858">line 858</a>
    </li></ul></dd>
    

    

    

    
</dl>




















        
            

    

    
    <h4 class="name" id="copy"><span class="type-signature"></span>copy<span class="signature">(srcLayer, srcx, srcy, srcw, srch, dstLayer, x, y)</span><span class="type-signature"></span></h4>
    

    



<div class="description">
    Copy a rectangle of image data from one Layer to this Layer. This
operation will copy exactly the image data that will be drawn once all
operations of the source Layer that were pending at the time this
function was called are complete. This operation will not alter the
size of the source Layer even if its autosize property is set to true.
</div>









    <h5>Parameters:</h5>
    

<table class="params">
    <thead>
    <tr>
        
        <th>Name</th>
        

        <th>Type</th>

        

        

        <th class="last">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name"><code>srcLayer</code></td>
            

            <td class="type">
            
                
<span class="param-type"><a href="Guacamole.Layer.html">Guacamole.Layer</a></span>


            
            </td>

            

            

            <td class="description last">The Layer to copy image data from.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>srcx</code></td>
            

            <td class="type">
            
                
<span class="param-type">Number</span>


            
            </td>

            

            

            <td class="description last">The X coordinate of the upper-left corner of the
                     rectangle within the source Layer's coordinate
                     space to copy data from.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>srcy</code></td>
            

            <td class="type">
            
                
<span class="param-type">Number</span>


            
            </td>

            

            

            <td class="description last">The Y coordinate of the upper-left corner of the
                     rectangle within the source Layer's coordinate
                     space to copy data from.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>srcw</code></td>
            

            <td class="type">
            
                
<span class="param-type">Number</span>


            
            </td>

            

            

            <td class="description last">The width of the rectangle within the source Layer's
                     coordinate space to copy data from.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>srch</code></td>
            

            <td class="type">
            
                
<span class="param-type">Number</span>


            
            </td>

            

            

            <td class="description last">The height of the rectangle within the source
                     Layer's coordinate space to copy data from.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>dstLayer</code></td>
            

            <td class="type">
            
                
<span class="param-type"><a href="Guacamole.Layer.html">Guacamole.Layer</a></span>


            
            </td>

            

            

            <td class="description last">The layer to draw upon.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>x</code></td>
            

            <td class="type">
            
                
<span class="param-type">Number</span>


            
            </td>

            

            

            <td class="description last">The destination X coordinate.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>y</code></td>
            

            <td class="type">
            
                
<span class="param-type">Number</span>


            
            </td>

            

            

            <td class="description last">The destination Y coordinate.</td>
        </tr>

    
    </tbody>
</table>






<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="Display.js.html">Display.js</a>, <a href="Display.js.html#line783">line 783</a>
    </li></ul></dd>
    

    

    

    
</dl>




















        
            

    

    
    <h4 class="name" id="createBuffer"><span class="type-signature"></span>createBuffer<span class="signature">()</span><span class="type-signature"> &rarr; {<a href="Guacamole.Layer.html">Guacamole.Layer</a>}</span></h4>
    

    



<div class="description">
    Creates a new buffer. Buffers are invisible, off-screen surfaces. They
are implemented in the same manner as layers, but do not provide the
same nesting semantics.
</div>













<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="Display.js.html">Display.js</a>, <a href="Display.js.html#line364">line 364</a>
    </li></ul></dd>
    

    

    

    
</dl>















<h5>Returns:</h5>

        
<div class="param-desc">
    The newly-created buffer.
</div>



<dl>
    <dt>
        Type
    </dt>
    <dd>
        
<span class="param-type"><a href="Guacamole.Layer.html">Guacamole.Layer</a></span>


    </dd>
</dl>

    





        
            

    

    
    <h4 class="name" id="createLayer"><span class="type-signature"></span>createLayer<span class="signature">()</span><span class="type-signature"> &rarr; {<a href="Guacamole.Display.VisibleLayer.html">Guacamole.Display.VisibleLayer</a>}</span></h4>
    

    



<div class="description">
    Creates a new layer. The new layer will be a direct child of the default
layer, but can be moved to be a child of any other layer. Layers returned
by this function are visible.
</div>













<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="Display.js.html">Display.js</a>, <a href="Display.js.html#line351">line 351</a>
    </li></ul></dd>
    

    

    

    
</dl>















<h5>Returns:</h5>

        
<div class="param-desc">
    The newly-created layer.
</div>



<dl>
    <dt>
        Type
    </dt>
    <dd>
        
<span class="param-type"><a href="Guacamole.Display.VisibleLayer.html">Guacamole.Display.VisibleLayer</a></span>


    </dd>
</dl>

    





        
            

    

    
    <h4 class="name" id="curveTo"><span class="type-signature"></span>curveTo<span class="signature">(layer, cp1x, cp1y, cp2x, cp2y, x, y)</span><span class="type-signature"></span></h4>
    

    



<div class="description">
    Starts a new path at the specified point.
</div>









    <h5>Parameters:</h5>
    

<table class="params">
    <thead>
    <tr>
        
        <th>Name</th>
        

        <th>Type</th>

        

        

        <th class="last">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name"><code>layer</code></td>
            

            <td class="type">
            
                
<span class="param-type"><a href="Guacamole.Layer.html">Guacamole.Layer</a></span>


            
            </td>

            

            

            <td class="description last">The layer to draw upon.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>cp1x</code></td>
            

            <td class="type">
            
                
<span class="param-type">Number</span>


            
            </td>

            

            

            <td class="description last">The X coordinate of the first control point.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>cp1y</code></td>
            

            <td class="type">
            
                
<span class="param-type">Number</span>


            
            </td>

            

            

            <td class="description last">The Y coordinate of the first control point.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>cp2x</code></td>
            

            <td class="type">
            
                
<span class="param-type">Number</span>


            
            </td>

            

            

            <td class="description last">The X coordinate of the second control point.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>cp2y</code></td>
            

            <td class="type">
            
                
<span class="param-type">Number</span>


            
            </td>

            

            

            <td class="description last">The Y coordinate of the second control point.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>x</code></td>
            

            <td class="type">
            
                
<span class="param-type">Number</span>


            
            </td>

            

            

            <td class="description last">The X coordinate of the endpoint of the curve.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>y</code></td>
            

            <td class="type">
            
                
<span class="param-type">Number</span>


            
            </td>

            

            

            <td class="description last">The Y coordinate of the endpoint of the curve.</td>
        </tr>

    
    </tbody>
</table>






<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="Display.js.html">Display.js</a>, <a href="Display.js.html#line846">line 846</a>
    </li></ul></dd>
    

    

    

    
</dl>




















        
            

    

    
    <h4 class="name" id="dispose"><span class="type-signature"></span>dispose<span class="signature">(layer)</span><span class="type-signature"></span></h4>
    

    



<div class="description">
    Removes the given layer container entirely, such that it is no longer
contained within its parent layer, if any.
</div>









    <h5>Parameters:</h5>
    

<table class="params">
    <thead>
    <tr>
        
        <th>Name</th>
        

        <th>Type</th>

        

        

        <th class="last">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name"><code>layer</code></td>
            

            <td class="type">
            
                
<span class="param-type"><a href="Guacamole.Display.VisibleLayer.html">Guacamole.Display.VisibleLayer</a></span>


            
            </td>

            

            

            <td class="description last">The layer being removed from its parent.</td>
        </tr>

    
    </tbody>
</table>






<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="Display.js.html">Display.js</a>, <a href="Display.js.html#line1087">line 1087</a>
    </li></ul></dd>
    

    

    

    
</dl>




















        
            

    

    
    <h4 class="name" id="distort"><span class="type-signature"></span>distort<span class="signature">(layer, a, b, c, d, e, f)</span><span class="type-signature"></span></h4>
    

    



<div class="description">
    Applies the given affine transform (defined with six values from the
transform's matrix) to the given layer.
</div>









    <h5>Parameters:</h5>
    

<table class="params">
    <thead>
    <tr>
        
        <th>Name</th>
        

        <th>Type</th>

        

        

        <th class="last">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name"><code>layer</code></td>
            

            <td class="type">
            
                
<span class="param-type"><a href="Guacamole.Display.VisibleLayer.html">Guacamole.Display.VisibleLayer</a></span>


            
            </td>

            

            

            <td class="description last">The layer being distorted.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>a</code></td>
            

            <td class="type">
            
                
<span class="param-type">Number</span>


            
            </td>

            

            

            <td class="description last">The first value in the affine transform's matrix.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>b</code></td>
            

            <td class="type">
            
                
<span class="param-type">Number</span>


            
            </td>

            

            

            <td class="description last">The second value in the affine transform's matrix.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>c</code></td>
            

            <td class="type">
            
                
<span class="param-type">Number</span>


            
            </td>

            

            

            <td class="description last">The third value in the affine transform's matrix.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>d</code></td>
            

            <td class="type">
            
                
<span class="param-type">Number</span>


            
            </td>

            

            

            <td class="description last">The fourth value in the affine transform's matrix.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>e</code></td>
            

            <td class="type">
            
                
<span class="param-type">Number</span>


            
            </td>

            

            

            <td class="description last">The fifth value in the affine transform's matrix.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>f</code></td>
            

            <td class="type">
            
                
<span class="param-type">Number</span>


            
            </td>

            

            

            <td class="description last">The sixth value in the affine transform's matrix.</td>
        </tr>

    
    </tbody>
</table>






<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="Display.js.html">Display.js</a>, <a href="Display.js.html#line1118">line 1118</a>
    </li></ul></dd>
    

    

    

    
</dl>




















        
            

    

    
    <h4 class="name" id="draw"><span class="type-signature"></span>draw<span class="signature">(layer, x, y, url)</span><span class="type-signature"></span></h4>
    

    



<div class="description">
    Draws the image at the specified URL at the given coordinates. The image
will be loaded automatically, and this and any future operations will
wait for the image to finish loading.
</div>









    <h5>Parameters:</h5>
    

<table class="params">
    <thead>
    <tr>
        
        <th>Name</th>
        

        <th>Type</th>

        

        

        <th class="last">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name"><code>layer</code></td>
            

            <td class="type">
            
                
<span class="param-type"><a href="Guacamole.Layer.html">Guacamole.Layer</a></span>


            
            </td>

            

            

            <td class="description last">The layer to draw upon.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>x</code></td>
            

            <td class="type">
            
                
<span class="param-type">Number</span>


            
            </td>

            

            

            <td class="description last">The destination X coordinate.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>y</code></td>
            

            <td class="type">
            
                
<span class="param-type">Number</span>


            
            </td>

            

            

            <td class="description last">The destination Y coordinate.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>url</code></td>
            

            <td class="type">
            
                
<span class="param-type">String</span>


            
            </td>

            

            

            <td class="description last">The URL of the image to draw.</td>
        </tr>

    
    </tbody>
</table>






<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="Display.js.html">Display.js</a>, <a href="Display.js.html#line656">line 656</a>
    </li></ul></dd>
    

    

    

    
</dl>




















        
            

    

    
    <h4 class="name" id="drawBlob"><span class="type-signature"></span>drawBlob<span class="signature">(layer, x, y, blob)</span><span class="type-signature"></span></h4>
    

    



<div class="description">
    Draws the image contained within the specified Blob at the given
coordinates. The Blob specified must already be populated with image
data.
</div>









    <h5>Parameters:</h5>
    

<table class="params">
    <thead>
    <tr>
        
        <th>Name</th>
        

        <th>Type</th>

        

        

        <th class="last">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name"><code>layer</code></td>
            

            <td class="type">
            
                
<span class="param-type"><a href="Guacamole.Layer.html">Guacamole.Layer</a></span>


            
            </td>

            

            

            <td class="description last">The layer to draw upon.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>x</code></td>
            

            <td class="type">
            
                
<span class="param-type">Number</span>


            
            </td>

            

            

            <td class="description last">The destination X coordinate.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>y</code></td>
            

            <td class="type">
            
                
<span class="param-type">Number</span>


            
            </td>

            

            

            <td class="description last">The destination Y coordinate.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>blob</code></td>
            

            <td class="type">
            
                
<span class="param-type">Blob</span>


            
            </td>

            

            

            <td class="description last">The Blob containing the image data to draw.</td>
        </tr>

    
    </tbody>
</table>






<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="Display.js.html">Display.js</a>, <a href="Display.js.html#line550">line 550</a>
    </li></ul></dd>
    

    

    

    
</dl>




















        
            

    

    
    <h4 class="name" id="drawImage"><span class="type-signature"></span>drawImage<span class="signature">(layer, x, y, image)</span><span class="type-signature"></span></h4>
    

    



<div class="description">
    Draws the specified image at the given coordinates. The image specified
must already be loaded.
</div>









    <h5>Parameters:</h5>
    

<table class="params">
    <thead>
    <tr>
        
        <th>Name</th>
        

        <th>Type</th>

        

        

        <th class="last">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name"><code>layer</code></td>
            

            <td class="type">
            
                
<span class="param-type"><a href="Guacamole.Layer.html">Guacamole.Layer</a></span>


            
            </td>

            

            

            <td class="description last">The layer to draw upon.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>x</code></td>
            

            <td class="type">
            
                
<span class="param-type">Number</span>


            
            </td>

            

            

            <td class="description last">The destination X coordinate.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>y</code></td>
            

            <td class="type">
            
                
<span class="param-type">Number</span>


            
            </td>

            

            

            <td class="description last">The destination Y coordinate.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>image</code></td>
            

            <td class="type">
            
                
<span class="param-type">CanvasImageSource</span>


            
            </td>

            

            

            <td class="description last">The image to draw. Note that this not a URL.</td>
        </tr>

    
    </tbody>
</table>






<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="Display.js.html">Display.js</a>, <a href="Display.js.html#line527">line 527</a>
    </li></ul></dd>
    

    

    

    
</dl>




















        
            

    

    
    <h4 class="name" id="drawStream"><span class="type-signature"></span>drawStream<span class="signature">(layer, x, y, stream, mimetype)</span><span class="type-signature"></span></h4>
    

    



<div class="description">
    Draws the image within the given stream at the given coordinates. The
image will be loaded automatically, and this and any future operations
will wait for the image to finish loading. This function will
automatically choose an approriate method for reading and decoding the
given image stream, and should be preferred for received streams except
where manual decoding of the stream is unavoidable.
</div>









    <h5>Parameters:</h5>
    

<table class="params">
    <thead>
    <tr>
        
        <th>Name</th>
        

        <th>Type</th>

        

        

        <th class="last">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name"><code>layer</code></td>
            

            <td class="type">
            
                
<span class="param-type"><a href="Guacamole.Layer.html">Guacamole.Layer</a></span>


            
            </td>

            

            

            <td class="description last">The layer to draw upon.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>x</code></td>
            

            <td class="type">
            
                
<span class="param-type">Number</span>


            
            </td>

            

            

            <td class="description last">The destination X coordinate.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>y</code></td>
            

            <td class="type">
            
                
<span class="param-type">Number</span>


            
            </td>

            

            

            <td class="description last">The destination Y coordinate.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>stream</code></td>
            

            <td class="type">
            
                
<span class="param-type"><a href="Guacamole.InputStream.html">Guacamole.InputStream</a></span>


            
            </td>

            

            

            <td class="description last">The stream along which image data will be received.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>mimetype</code></td>
            

            <td class="type">
            
                
<span class="param-type">String</span>


            
            </td>

            

            

            <td class="description last">The mimetype of the image within the stream.</td>
        </tr>

    
    </tbody>
</table>






<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="Display.js.html">Display.js</a>, <a href="Display.js.html#line624">line 624</a>
    </li></ul></dd>
    

    

    

    
</dl>




















        
            

    

    
    <h4 class="name" id="fillColor"><span class="type-signature"></span>fillColor<span class="signature">(layer, r, g, b, a)</span><span class="type-signature"></span></h4>
    

    



<div class="description">
    Fills the current path with the specified color. The current path
is implicitly closed. The current path can continue to be reused
for other operations (such as clip()) but a new path will be started
once a path drawing operation (path() or rect()) is used.
</div>









    <h5>Parameters:</h5>
    

<table class="params">
    <thead>
    <tr>
        
        <th>Name</th>
        

        <th>Type</th>

        

        

        <th class="last">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name"><code>layer</code></td>
            

            <td class="type">
            
                
<span class="param-type"><a href="Guacamole.Layer.html">Guacamole.Layer</a></span>


            
            </td>

            

            

            <td class="description last">The layer to draw upon.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>r</code></td>
            

            <td class="type">
            
                
<span class="param-type">Number</span>


            
            </td>

            

            

            <td class="description last">The red component of the color to fill.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>g</code></td>
            

            <td class="type">
            
                
<span class="param-type">Number</span>


            
            </td>

            

            

            <td class="description last">The green component of the color to fill.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>b</code></td>
            

            <td class="type">
            
                
<span class="param-type">Number</span>


            
            </td>

            

            

            <td class="description last">The blue component of the color to fill.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>a</code></td>
            

            <td class="type">
            
                
<span class="param-type">Number</span>


            
            </td>

            

            

            <td class="description last">The alpha component of the color to fill.</td>
        </tr>

    
    </tbody>
</table>






<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="Display.js.html">Display.js</a>, <a href="Display.js.html#line930">line 930</a>
    </li></ul></dd>
    

    

    

    
</dl>




















        
            

    

    
    <h4 class="name" id="fillLayer"><span class="type-signature"></span>fillLayer<span class="signature">(layer, srcLayer)</span><span class="type-signature"></span></h4>
    

    



<div class="description">
    Fills the current path with the image within the specified layer. The
image data will be tiled infinitely within the stroke. The current path
is implicitly closed. The current path can continue to be reused
for other operations (such as clip()) but a new path will be started
once a path drawing operation (path() or rect()) is used.
</div>









    <h5>Parameters:</h5>
    

<table class="params">
    <thead>
    <tr>
        
        <th>Name</th>
        

        <th>Type</th>

        

        

        <th class="last">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name"><code>layer</code></td>
            

            <td class="type">
            
                
<span class="param-type"><a href="Guacamole.Layer.html">Guacamole.Layer</a></span>


            
            </td>

            

            

            <td class="description last">The layer to draw upon.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>srcLayer</code></td>
            

            <td class="type">
            
                
<span class="param-type"><a href="Guacamole.Layer.html">Guacamole.Layer</a></span>


            
            </td>

            

            

            <td class="description last">The layer to use as a repeating pattern
                                  within the fill.</td>
        </tr>

    
    </tbody>
</table>






<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="Display.js.html">Display.js</a>, <a href="Display.js.html#line969">line 969</a>
    </li></ul></dd>
    

    

    

    
</dl>




















        
            

    

    
    <h4 class="name" id="flatten"><span class="type-signature"></span>flatten<span class="signature">()</span><span class="type-signature"> &rarr; {HTMLCanvasElement}</span></h4>
    

    



<div class="description">
    Returns a canvas element containing the entire display, with all child
layers composited within.
</div>













<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="Display.js.html">Display.js</a>, <a href="Display.js.html#line1208">line 1208</a>
    </li></ul></dd>
    

    

    

    
</dl>















<h5>Returns:</h5>

        
<div class="param-desc">
    A new canvas element containing a copy of
                            the display.
</div>



<dl>
    <dt>
        Type
    </dt>
    <dd>
        
<span class="param-type">HTMLCanvasElement</span>


    </dd>
</dl>

    





        
            

    

    
    <h4 class="name" id="flush"><span class="type-signature"></span>flush<span class="signature">(callback)</span><span class="type-signature"></span></h4>
    

    



<div class="description">
    Flush all pending draw tasks, if possible, as a new frame. If the entire
frame is not ready, the flush will wait until all required tasks are
unblocked.
</div>









    <h5>Parameters:</h5>
    

<table class="params">
    <thead>
    <tr>
        
        <th>Name</th>
        

        <th>Type</th>

        

        

        <th class="last">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name"><code>callback</code></td>
            

            <td class="type">
            
                
<span class="param-type">function</span>


            
            </td>

            

            

            <td class="description last">The function to call when this frame is
                           flushed. This may happen immediately, or
                           later when blocked tasks become unblocked.</td>
        </tr>

    
    </tbody>
</table>






<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="Display.js.html">Display.js</a>, <a href="Display.js.html#line379">line 379</a>
    </li></ul></dd>
    

    

    

    
</dl>




















        
            

    

    
    <h4 class="name" id="getCursorLayer"><span class="type-signature"></span>getCursorLayer<span class="signature">()</span><span class="type-signature"> &rarr; {<a href="Guacamole.Display.VisibleLayer.html">Guacamole.Display.VisibleLayer</a>}</span></h4>
    

    



<div class="description">
    Returns the cursor layer of this display. Each Guacamole display contains
a layer for the image of the mouse cursor. This layer is a special case
and exists above all other layers, similar to the hardware mouse cursor.
</div>













<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="Display.js.html">Display.js</a>, <a href="Display.js.html#line340">line 340</a>
    </li></ul></dd>
    

    

    

    
</dl>















<h5>Returns:</h5>

        
<div class="param-desc">
    The cursor layer.
</div>



<dl>
    <dt>
        Type
    </dt>
    <dd>
        
<span class="param-type"><a href="Guacamole.Display.VisibleLayer.html">Guacamole.Display.VisibleLayer</a></span>


    </dd>
</dl>

    





        
            

    

    
    <h4 class="name" id="getDefaultLayer"><span class="type-signature"></span>getDefaultLayer<span class="signature">()</span><span class="type-signature"> &rarr; {<a href="Guacamole.Display.VisibleLayer.html">Guacamole.Display.VisibleLayer</a>}</span></h4>
    

    



<div class="description">
    Returns the default layer of this display. Each Guacamole display always
has at least one layer. Other layers can optionally be created within
this layer, but the default layer cannot be removed and is the absolute
ancestor of all other layers.
</div>













<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="Display.js.html">Display.js</a>, <a href="Display.js.html#line329">line 329</a>
    </li></ul></dd>
    

    

    

    
</dl>















<h5>Returns:</h5>

        
<div class="param-desc">
    The default layer.
</div>



<dl>
    <dt>
        Type
    </dt>
    <dd>
        
<span class="param-type"><a href="Guacamole.Display.VisibleLayer.html">Guacamole.Display.VisibleLayer</a></span>


    </dd>
</dl>

    





        
            

    

    
    <h4 class="name" id="getElement"><span class="type-signature"></span>getElement<span class="signature">()</span><span class="type-signature"> &rarr; {Element}</span></h4>
    

    



<div class="description">
    Returns the element which contains the Guacamole display.
</div>













<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="Display.js.html">Display.js</a>, <a href="Display.js.html#line299">line 299</a>
    </li></ul></dd>
    

    

    

    
</dl>















<h5>Returns:</h5>

        
<div class="param-desc">
    The element containing the Guacamole display.
</div>



<dl>
    <dt>
        Type
    </dt>
    <dd>
        
<span class="param-type">Element</span>


    </dd>
</dl>

    





        
            

    

    
    <h4 class="name" id="getHeight"><span class="type-signature"></span>getHeight<span class="signature">()</span><span class="type-signature"> &rarr; {Number}</span></h4>
    

    



<div class="description">
    Returns the height of this display.
</div>













<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="Display.js.html">Display.js</a>, <a href="Display.js.html#line317">line 317</a>
    </li></ul></dd>
    

    

    

    
</dl>















<h5>Returns:</h5>

        
<div class="param-desc">
    The height of this display;
</div>



<dl>
    <dt>
        Type
    </dt>
    <dd>
        
<span class="param-type">Number</span>


    </dd>
</dl>

    





        
            

    

    
    <h4 class="name" id="getScale"><span class="type-signature"></span>getScale<span class="signature">()</span><span class="type-signature"> &rarr; {Number}</span></h4>
    

    



<div class="description">
    Returns the scale of the display.
</div>













<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="Display.js.html">Display.js</a>, <a href="Display.js.html#line1197">line 1197</a>
    </li></ul></dd>
    

    

    

    
</dl>















<h5>Returns:</h5>

        
<div class="param-desc">
    The scale of the display.
</div>



<dl>
    <dt>
        Type
    </dt>
    <dd>
        
<span class="param-type">Number</span>


    </dd>
</dl>

    





        
            

    

    
    <h4 class="name" id="getWidth"><span class="type-signature"></span>getWidth<span class="signature">()</span><span class="type-signature"> &rarr; {Number}</span></h4>
    

    



<div class="description">
    Returns the width of this display.
</div>













<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="Display.js.html">Display.js</a>, <a href="Display.js.html#line308">line 308</a>
    </li></ul></dd>
    

    

    

    
</dl>















<h5>Returns:</h5>

        
<div class="param-desc">
    The width of this display;
</div>



<dl>
    <dt>
        Type
    </dt>
    <dd>
        
<span class="param-type">Number</span>


    </dd>
</dl>

    





        
            

    

    
    <h4 class="name" id="lineTo"><span class="type-signature"></span>lineTo<span class="signature">(layer, x, y)</span><span class="type-signature"></span></h4>
    

    



<div class="description">
    Add the specified line to the current path.
</div>









    <h5>Parameters:</h5>
    

<table class="params">
    <thead>
    <tr>
        
        <th>Name</th>
        

        <th>Type</th>

        

        

        <th class="last">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name"><code>layer</code></td>
            

            <td class="type">
            
                
<span class="param-type"><a href="Guacamole.Layer.html">Guacamole.Layer</a></span>


            
            </td>

            

            

            <td class="description last">The layer to draw upon.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>x</code></td>
            

            <td class="type">
            
                
<span class="param-type">Number</span>


            
            </td>

            

            

            <td class="description last">The X coordinate of the endpoint of the line to draw.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>y</code></td>
            

            <td class="type">
            
                
<span class="param-type">Number</span>


            
            </td>

            

            

            <td class="description last">The Y coordinate of the endpoint of the line to draw.</td>
        </tr>

    
    </tbody>
</table>






<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="Display.js.html">Display.js</a>, <a href="Display.js.html#line809">line 809</a>
    </li></ul></dd>
    

    

    

    
</dl>




















        
            

    

    
    <h4 class="name" id="move"><span class="type-signature"></span>move<span class="signature">(layer, parent, x, y, z)</span><span class="type-signature"></span></h4>
    

    



<div class="description">
    Moves the upper-left corner of the given layer to the given X and Y
coordinate, sets the Z stacking order, and reparents the layer
to the given parent layer.
</div>









    <h5>Parameters:</h5>
    

<table class="params">
    <thead>
    <tr>
        
        <th>Name</th>
        

        <th>Type</th>

        

        

        <th class="last">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name"><code>layer</code></td>
            

            <td class="type">
            
                
<span class="param-type"><a href="Guacamole.Display.VisibleLayer.html">Guacamole.Display.VisibleLayer</a></span>


            
            </td>

            

            

            <td class="description last">The layer being moved.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>parent</code></td>
            

            <td class="type">
            
                
<span class="param-type"><a href="Guacamole.Display.VisibleLayer.html">Guacamole.Display.VisibleLayer</a></span>


            
            </td>

            

            

            <td class="description last">The parent to set.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>x</code></td>
            

            <td class="type">
            
                
<span class="param-type">Number</span>


            
            </td>

            

            

            <td class="description last">The X coordinate to move to.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>y</code></td>
            

            <td class="type">
            
                
<span class="param-type">Number</span>


            
            </td>

            

            

            <td class="description last">The Y coordinate to move to.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>z</code></td>
            

            <td class="type">
            
                
<span class="param-type">Number</span>


            
            </td>

            

            

            <td class="description last">The Z coordinate to move to.</td>
        </tr>

    
    </tbody>
</table>






<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="Display.js.html">Display.js</a>, <a href="Display.js.html#line1144">line 1144</a>
    </li></ul></dd>
    

    

    

    
</dl>




















        
            

    

    
    <h4 class="name" id="moveCursor"><span class="type-signature"></span>moveCursor<span class="signature">(x, y)</span><span class="type-signature"></span></h4>
    

    



<div class="description">
    Sets the location of the local cursor to the given coordinates. For the
sake of responsiveness, this function performs its action immediately.
Cursor motion is not maintained within atomic frames.
</div>









    <h5>Parameters:</h5>
    

<table class="params">
    <thead>
    <tr>
        
        <th>Name</th>
        

        <th>Type</th>

        

        

        <th class="last">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name"><code>x</code></td>
            

            <td class="type">
            
                
<span class="param-type">Number</span>


            
            </td>

            

            

            <td class="description last">The X coordinate to move the cursor to.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>y</code></td>
            

            <td class="type">
            
                
<span class="param-type">Number</span>


            
            </td>

            

            

            <td class="description last">The Y coordinate to move the cursor to.</td>
        </tr>

    
    </tbody>
</table>






<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="Display.js.html">Display.js</a>, <a href="Display.js.html#line463">line 463</a>
    </li></ul></dd>
    

    

    

    
</dl>




















        
            

    

    
    <h4 class="name" id="moveTo"><span class="type-signature"></span>moveTo<span class="signature">(layer, x, y)</span><span class="type-signature"></span></h4>
    

    



<div class="description">
    Starts a new path at the specified point.
</div>









    <h5>Parameters:</h5>
    

<table class="params">
    <thead>
    <tr>
        
        <th>Name</th>
        

        <th>Type</th>

        

        

        <th class="last">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name"><code>layer</code></td>
            

            <td class="type">
            
                
<span class="param-type"><a href="Guacamole.Layer.html">Guacamole.Layer</a></span>


            
            </td>

            

            

            <td class="description last">The layer to draw upon.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>x</code></td>
            

            <td class="type">
            
                
<span class="param-type">Number</span>


            
            </td>

            

            

            <td class="description last">The X coordinate of the point to draw.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>y</code></td>
            

            <td class="type">
            
                
<span class="param-type">Number</span>


            
            </td>

            

            

            <td class="description last">The Y coordinate of the point to draw.</td>
        </tr>

    
    </tbody>
</table>






<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="Display.js.html">Display.js</a>, <a href="Display.js.html#line796">line 796</a>
    </li></ul></dd>
    

    

    

    
</dl>




















        
            

    

    
    <h4 class="name" id="play"><span class="type-signature"></span>play<span class="signature">(layer, mimetype, duration, url)</span><span class="type-signature"></span></h4>
    

    



<div class="description">
    Plays the video at the specified URL within this layer. The video
will be loaded automatically, and this and any future operations will
wait for the video to finish loading. Future operations will not be
executed until the video finishes playing.
</div>









    <h5>Parameters:</h5>
    

<table class="params">
    <thead>
    <tr>
        
        <th>Name</th>
        

        <th>Type</th>

        

        

        <th class="last">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name"><code>layer</code></td>
            

            <td class="type">
            
                
<span class="param-type"><a href="Guacamole.Layer.html">Guacamole.Layer</a></span>


            
            </td>

            

            

            <td class="description last">The layer to draw upon.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>mimetype</code></td>
            

            <td class="type">
            
                
<span class="param-type">String</span>


            
            </td>

            

            

            <td class="description last">The mimetype of the video to play.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>duration</code></td>
            

            <td class="type">
            
                
<span class="param-type">Number</span>


            
            </td>

            

            

            <td class="description last">The duration of the video in milliseconds.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>url</code></td>
            

            <td class="type">
            
                
<span class="param-type">String</span>


            
            </td>

            

            

            <td class="description last">The URL of the video to play.</td>
        </tr>

    
    </tbody>
</table>






<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="Display.js.html">Display.js</a>, <a href="Display.js.html#line684">line 684</a>
    </li></ul></dd>
    

    

    

    
</dl>




















        
            

    

    
    <h4 class="name" id="pop"><span class="type-signature"></span>pop<span class="signature">(layer)</span><span class="type-signature"></span></h4>
    

    



<div class="description">
    Pop layer state off stack.
</div>









    <h5>Parameters:</h5>
    

<table class="params">
    <thead>
    <tr>
        
        <th>Name</th>
        

        <th>Type</th>

        

        

        <th class="last">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name"><code>layer</code></td>
            

            <td class="type">
            
                
<span class="param-type"><a href="Guacamole.Layer.html">Guacamole.Layer</a></span>


            
            </td>

            

            

            <td class="description last">The layer to draw upon.</td>
        </tr>

    
    </tbody>
</table>






<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="Display.js.html">Display.js</a>, <a href="Display.js.html#line991">line 991</a>
    </li></ul></dd>
    

    

    

    
</dl>




















        
            

    

    
    <h4 class="name" id="push"><span class="type-signature"></span>push<span class="signature">(layer)</span><span class="type-signature"></span></h4>
    

    



<div class="description">
    Push current layer state onto stack.
</div>









    <h5>Parameters:</h5>
    

<table class="params">
    <thead>
    <tr>
        
        <th>Name</th>
        

        <th>Type</th>

        

        

        <th class="last">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name"><code>layer</code></td>
            

            <td class="type">
            
                
<span class="param-type"><a href="Guacamole.Layer.html">Guacamole.Layer</a></span>


            
            </td>

            

            

            <td class="description last">The layer to draw upon.</td>
        </tr>

    
    </tbody>
</table>






<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="Display.js.html">Display.js</a>, <a href="Display.js.html#line980">line 980</a>
    </li></ul></dd>
    

    

    

    
</dl>




















        
            

    

    
    <h4 class="name" id="put"><span class="type-signature"></span>put<span class="signature">(srcLayer, srcx, srcy, srcw, srch, dstLayer, x, y)</span><span class="type-signature"></span></h4>
    

    



<div class="description">
    Put a rectangle of image data from one Layer to this Layer directly
without performing any alpha blending. Simply copy the data.
</div>









    <h5>Parameters:</h5>
    

<table class="params">
    <thead>
    <tr>
        
        <th>Name</th>
        

        <th>Type</th>

        

        

        <th class="last">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name"><code>srcLayer</code></td>
            

            <td class="type">
            
                
<span class="param-type"><a href="Guacamole.Layer.html">Guacamole.Layer</a></span>


            
            </td>

            

            

            <td class="description last">The Layer to copy image data from.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>srcx</code></td>
            

            <td class="type">
            
                
<span class="param-type">Number</span>


            
            </td>

            

            

            <td class="description last">The X coordinate of the upper-left corner of the
                     rectangle within the source Layer's coordinate
                     space to copy data from.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>srcy</code></td>
            

            <td class="type">
            
                
<span class="param-type">Number</span>


            
            </td>

            

            

            <td class="description last">The Y coordinate of the upper-left corner of the
                     rectangle within the source Layer's coordinate
                     space to copy data from.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>srcw</code></td>
            

            <td class="type">
            
                
<span class="param-type">Number</span>


            
            </td>

            

            

            <td class="description last">The width of the rectangle within the source Layer's
                     coordinate space to copy data from.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>srch</code></td>
            

            <td class="type">
            
                
<span class="param-type">Number</span>


            
            </td>

            

            

            <td class="description last">The height of the rectangle within the source
                     Layer's coordinate space to copy data from.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>dstLayer</code></td>
            

            <td class="type">
            
                
<span class="param-type"><a href="Guacamole.Layer.html">Guacamole.Layer</a></span>


            
            </td>

            

            

            <td class="description last">The layer to draw upon.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>x</code></td>
            

            <td class="type">
            
                
<span class="param-type">Number</span>


            
            </td>

            

            

            <td class="description last">The destination X coordinate.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>y</code></td>
            

            <td class="type">
            
                
<span class="param-type">Number</span>


            
            </td>

            

            

            <td class="description last">The destination Y coordinate.</td>
        </tr>

    
    </tbody>
</table>






<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="Display.js.html">Display.js</a>, <a href="Display.js.html#line755">line 755</a>
    </li></ul></dd>
    

    

    

    
</dl>




















        
            

    

    
    <h4 class="name" id="rect"><span class="type-signature"></span>rect<span class="signature">(layer, x, y, w, h)</span><span class="type-signature"></span></h4>
    

    



<div class="description">
    Add the specified rectangle to the current path.
</div>









    <h5>Parameters:</h5>
    

<table class="params">
    <thead>
    <tr>
        
        <th>Name</th>
        

        <th>Type</th>

        

        

        <th class="last">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name"><code>layer</code></td>
            

            <td class="type">
            
                
<span class="param-type"><a href="Guacamole.Layer.html">Guacamole.Layer</a></span>


            
            </td>

            

            

            <td class="description last">The layer to draw upon.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>x</code></td>
            

            <td class="type">
            
                
<span class="param-type">Number</span>


            
            </td>

            

            

            <td class="description last">The X coordinate of the upper-left corner of the
                  rectangle to draw.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>y</code></td>
            

            <td class="type">
            
                
<span class="param-type">Number</span>


            
            </td>

            

            

            <td class="description last">The Y coordinate of the upper-left corner of the
                  rectangle to draw.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>w</code></td>
            

            <td class="type">
            
                
<span class="param-type">Number</span>


            
            </td>

            

            

            <td class="description last">The width of the rectangle to draw.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>h</code></td>
            

            <td class="type">
            
                
<span class="param-type">Number</span>


            
            </td>

            

            

            <td class="description last">The height of the rectangle to draw.</td>
        </tr>

    
    </tbody>
</table>






<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="Display.js.html">Display.js</a>, <a href="Display.js.html#line875">line 875</a>
    </li></ul></dd>
    

    

    

    
</dl>




















        
            

    

    
    <h4 class="name" id="reset"><span class="type-signature"></span>reset<span class="signature">(layer)</span><span class="type-signature"></span></h4>
    

    



<div class="description">
    Reset the layer, clearing the stack, the current path, and any transform
matrix.
</div>









    <h5>Parameters:</h5>
    

<table class="params">
    <thead>
    <tr>
        
        <th>Name</th>
        

        <th>Type</th>

        

        

        <th class="last">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name"><code>layer</code></td>
            

            <td class="type">
            
                
<span class="param-type"><a href="Guacamole.Layer.html">Guacamole.Layer</a></span>


            
            </td>

            

            

            <td class="description last">The layer to draw upon.</td>
        </tr>

    
    </tbody>
</table>






<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="Display.js.html">Display.js</a>, <a href="Display.js.html#line1003">line 1003</a>
    </li></ul></dd>
    

    

    

    
</dl>




















        
            

    

    
    <h4 class="name" id="resize"><span class="type-signature"></span>resize<span class="signature">(layer, width, height)</span><span class="type-signature"></span></h4>
    

    



<div class="description">
    Changes the size of the given Layer to the given width and height.
Resizing is only attempted if the new size provided is actually different
from the current size.
</div>









    <h5>Parameters:</h5>
    

<table class="params">
    <thead>
    <tr>
        
        <th>Name</th>
        

        <th>Type</th>

        

        

        <th class="last">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name"><code>layer</code></td>
            

            <td class="type">
            
                
<span class="param-type"><a href="Guacamole.Layer.html">Guacamole.Layer</a></span>


            
            </td>

            

            

            <td class="description last">The layer to resize.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>width</code></td>
            

            <td class="type">
            
                
<span class="param-type">Number</span>


            
            </td>

            

            

            <td class="description last">The new width.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>height</code></td>
            

            <td class="type">
            
                
<span class="param-type">Number</span>


            
            </td>

            

            

            <td class="description last">The new height.</td>
        </tr>

    
    </tbody>
</table>






<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="Display.js.html">Display.js</a>, <a href="Display.js.html#line484">line 484</a>
    </li></ul></dd>
    

    

    

    
</dl>




















        
            

    

    
    <h4 class="name" id="scale"><span class="type-signature"></span>scale<span class="signature">(scale)</span><span class="type-signature"></span></h4>
    

    



<div class="description">
    Sets the scale of the client display element such that it renders at
a relatively smaller or larger size, without affecting the true
resolution of the display.
</div>









    <h5>Parameters:</h5>
    

<table class="params">
    <thead>
    <tr>
        
        <th>Name</th>
        

        <th>Type</th>

        

        

        <th class="last">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name"><code>scale</code></td>
            

            <td class="type">
            
                
<span class="param-type">Number</span>


            
            </td>

            

            

            <td class="description last">The scale to resize to, where 1.0 is normal
                      size (1:1 scale).</td>
        </tr>

    
    </tbody>
</table>






<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="Display.js.html">Display.js</a>, <a href="Display.js.html#line1174">line 1174</a>
    </li></ul></dd>
    

    

    

    
</dl>




















        
            

    

    
    <h4 class="name" id="setChannelMask"><span class="type-signature"></span>setChannelMask<span class="signature">(layer, mask)</span><span class="type-signature"></span></h4>
    

    



<div class="description">
    Sets the channel mask for future operations on this Layer.

The channel mask is a Guacamole-specific compositing operation identifier
with a single bit representing each of four channels (in order): source
image where destination transparent, source where destination opaque,
destination where source transparent, and destination where source
opaque.
</div>









    <h5>Parameters:</h5>
    

<table class="params">
    <thead>
    <tr>
        
        <th>Name</th>
        

        <th>Type</th>

        

        

        <th class="last">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name"><code>layer</code></td>
            

            <td class="type">
            
                
<span class="param-type"><a href="Guacamole.Layer.html">Guacamole.Layer</a></span>


            
            </td>

            

            

            <td class="description last">The layer to modify.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>mask</code></td>
            

            <td class="type">
            
                
<span class="param-type">Number</span>


            
            </td>

            

            

            <td class="description last">The channel mask for future operations on this
                     Layer.</td>
        </tr>

    
    </tbody>
</table>






<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="Display.js.html">Display.js</a>, <a href="Display.js.html#line1058">line 1058</a>
    </li></ul></dd>
    

    

    

    
</dl>




















        
            

    

    
    <h4 class="name" id="setCursor"><span class="type-signature"></span>setCursor<span class="signature">(hotspotX, hotspotY, layer, srcx, srcy, srcw, srch)</span><span class="type-signature"></span></h4>
    

    



<div class="description">
    Sets the hotspot and image of the mouse cursor displayed within the
Guacamole display.
</div>









    <h5>Parameters:</h5>
    

<table class="params">
    <thead>
    <tr>
        
        <th>Name</th>
        

        <th>Type</th>

        

        

        <th class="last">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name"><code>hotspotX</code></td>
            

            <td class="type">
            
                
<span class="param-type">Number</span>


            
            </td>

            

            

            <td class="description last">The X coordinate of the cursor hotspot.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>hotspotY</code></td>
            

            <td class="type">
            
                
<span class="param-type">Number</span>


            
            </td>

            

            

            <td class="description last">The Y coordinate of the cursor hotspot.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>layer</code></td>
            

            <td class="type">
            
                
<span class="param-type"><a href="Guacamole.Layer.html">Guacamole.Layer</a></span>


            
            </td>

            

            

            <td class="description last">The source layer containing the data which
                               should be used as the mouse cursor image.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>srcx</code></td>
            

            <td class="type">
            
                
<span class="param-type">Number</span>


            
            </td>

            

            

            <td class="description last">The X coordinate of the upper-left corner of the
                     rectangle within the source layer's coordinate
                     space to copy data from.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>srcy</code></td>
            

            <td class="type">
            
                
<span class="param-type">Number</span>


            
            </td>

            

            

            <td class="description last">The Y coordinate of the upper-left corner of the
                     rectangle within the source layer's coordinate
                     space to copy data from.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>srcw</code></td>
            

            <td class="type">
            
                
<span class="param-type">Number</span>


            
            </td>

            

            

            <td class="description last">The width of the rectangle within the source layer's
                     coordinate space to copy data from.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>srch</code></td>
            

            <td class="type">
            
                
<span class="param-type">Number</span>


            
            </td>

            

            

            <td class="description last">The height of the rectangle within the source
                     layer's coordinate space to copy data from.</td>
        </tr>

    
    </tbody>
</table>






<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="Display.js.html">Display.js</a>, <a href="Display.js.html#line410">line 410</a>
    </li></ul></dd>
    

    

    

    
</dl>




















        
            

    

    
    <h4 class="name" id="setMiterLimit"><span class="type-signature"></span>setMiterLimit<span class="signature">(layer, limit)</span><span class="type-signature"></span></h4>
    

    



<div class="description">
    Sets the miter limit for stroke operations using the miter join. This
limit is the maximum ratio of the size of the miter join to the stroke
width. If this ratio is exceeded, the miter will not be drawn for that
joint of the path.
</div>









    <h5>Parameters:</h5>
    

<table class="params">
    <thead>
    <tr>
        
        <th>Name</th>
        

        <th>Type</th>

        

        

        <th class="last">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name"><code>layer</code></td>
            

            <td class="type">
            
                
<span class="param-type"><a href="Guacamole.Layer.html">Guacamole.Layer</a></span>


            
            </td>

            

            

            <td class="description last">The layer to modify.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>limit</code></td>
            

            <td class="type">
            
                
<span class="param-type">Number</span>


            
            </td>

            

            

            <td class="description last">The miter limit for stroke operations using the
                      miter join.</td>
        </tr>

    
    </tbody>
</table>






<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="Display.js.html">Display.js</a>, <a href="Display.js.html#line1074">line 1074</a>
    </li></ul></dd>
    

    

    

    
</dl>




















        
            

    

    
    <h4 class="name" id="setTransform"><span class="type-signature"></span>setTransform<span class="signature">(layer, a, b, c, d, e, f)</span><span class="type-signature"></span></h4>
    

    



<div class="description">
    Sets the given affine transform (defined with six values from the
transform's matrix).
</div>









    <h5>Parameters:</h5>
    

<table class="params">
    <thead>
    <tr>
        
        <th>Name</th>
        

        <th>Type</th>

        

        

        <th class="last">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name"><code>layer</code></td>
            

            <td class="type">
            
                
<span class="param-type"><a href="Guacamole.Layer.html">Guacamole.Layer</a></span>


            
            </td>

            

            

            <td class="description last">The layer to modify.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>a</code></td>
            

            <td class="type">
            
                
<span class="param-type">Number</span>


            
            </td>

            

            

            <td class="description last">The first value in the affine transform's matrix.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>b</code></td>
            

            <td class="type">
            
                
<span class="param-type">Number</span>


            
            </td>

            

            

            <td class="description last">The second value in the affine transform's matrix.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>c</code></td>
            

            <td class="type">
            
                
<span class="param-type">Number</span>


            
            </td>

            

            

            <td class="description last">The third value in the affine transform's matrix.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>d</code></td>
            

            <td class="type">
            
                
<span class="param-type">Number</span>


            
            </td>

            

            

            <td class="description last">The fourth value in the affine transform's matrix.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>e</code></td>
            

            <td class="type">
            
                
<span class="param-type">Number</span>


            
            </td>

            

            

            <td class="description last">The fifth value in the affine transform's matrix.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>f</code></td>
            

            <td class="type">
            
                
<span class="param-type">Number</span>


            
            </td>

            

            

            <td class="description last">The sixth value in the affine transform's matrix.</td>
        </tr>

    
    </tbody>
</table>






<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="Display.js.html">Display.js</a>, <a href="Display.js.html#line1021">line 1021</a>
    </li></ul></dd>
    

    

    

    
</dl>




















        
            

    

    
    <h4 class="name" id="shade"><span class="type-signature"></span>shade<span class="signature">(layer, alpha)</span><span class="type-signature"></span></h4>
    

    



<div class="description">
    Sets the opacity of the given layer to the given value, where 255 is
fully opaque and 0 is fully transparent.
</div>









    <h5>Parameters:</h5>
    

<table class="params">
    <thead>
    <tr>
        
        <th>Name</th>
        

        <th>Type</th>

        

        

        <th class="last">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name"><code>layer</code></td>
            

            <td class="type">
            
                
<span class="param-type"><a href="Guacamole.Display.VisibleLayer.html">Guacamole.Display.VisibleLayer</a></span>


            
            </td>

            

            

            <td class="description last">The layer whose opacity should be set.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>alpha</code></td>
            

            <td class="type">
            
                
<span class="param-type">Number</span>


            
            </td>

            

            

            <td class="description last">The opacity to set.</td>
        </tr>

    
    </tbody>
</table>






<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="Display.js.html">Display.js</a>, <a href="Display.js.html#line1160">line 1160</a>
    </li></ul></dd>
    

    

    

    
</dl>




















        
            

    

    
    <h4 class="name" id="showCursor"><span class="type-signature"></span>showCursor<span class="signature">(shown<span class="signature-attributes">opt</span>)</span><span class="type-signature"></span></h4>
    

    



<div class="description">
    Sets whether the software-rendered cursor is shown. This cursor differs
from the hardware cursor in that it is built into the Guacamole.Display,
and relies on its own Guacamole layer to render.
</div>









    <h5>Parameters:</h5>
    

<table class="params">
    <thead>
    <tr>
        
        <th>Name</th>
        

        <th>Type</th>

        
        <th>Attributes</th>
        

        
        <th>Default</th>
        

        <th class="last">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name"><code>shown</code></td>
            

            <td class="type">
            
                
<span class="param-type">Boolean</span>


            
            </td>

            
                <td class="attributes">
                
                    &lt;optional><br>
                

                

                
                </td>
            

            
                <td class="default">
                
                    true
                
                </td>
            

            <td class="description last">Whether to show the software cursor.</td>
        </tr>

    
    </tbody>
</table>






<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="Display.js.html">Display.js</a>, <a href="Display.js.html#line438">line 438</a>
    </li></ul></dd>
    

    

    

    
</dl>




















        
            

    

    
    <h4 class="name" id="strokeColor"><span class="type-signature"></span>strokeColor<span class="signature">(layer, cap, join, thickness, r, g, b, a)</span><span class="type-signature"></span></h4>
    

    



<div class="description">
    Stroke the current path with the specified color. The current path
is implicitly closed. The current path can continue to be reused
for other operations (such as clip()) but a new path will be started
once a path drawing operation (path() or rect()) is used.
</div>









    <h5>Parameters:</h5>
    

<table class="params">
    <thead>
    <tr>
        
        <th>Name</th>
        

        <th>Type</th>

        

        

        <th class="last">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name"><code>layer</code></td>
            

            <td class="type">
            
                
<span class="param-type"><a href="Guacamole.Layer.html">Guacamole.Layer</a></span>


            
            </td>

            

            

            <td class="description last">The layer to draw upon.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>cap</code></td>
            

            <td class="type">
            
                
<span class="param-type">String</span>


            
            </td>

            

            

            <td class="description last">The line cap style. Can be "round", "square",
                    or "butt".</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>join</code></td>
            

            <td class="type">
            
                
<span class="param-type">String</span>


            
            </td>

            

            

            <td class="description last">The line join style. Can be "round", "bevel",
                     or "miter".</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>thickness</code></td>
            

            <td class="type">
            
                
<span class="param-type">Number</span>


            
            </td>

            

            

            <td class="description last">The line thickness in pixels.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>r</code></td>
            

            <td class="type">
            
                
<span class="param-type">Number</span>


            
            </td>

            

            

            <td class="description last">The red component of the color to fill.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>g</code></td>
            

            <td class="type">
            
                
<span class="param-type">Number</span>


            
            </td>

            

            

            <td class="description last">The green component of the color to fill.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>b</code></td>
            

            <td class="type">
            
                
<span class="param-type">Number</span>


            
            </td>

            

            

            <td class="description last">The blue component of the color to fill.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>a</code></td>
            

            <td class="type">
            
                
<span class="param-type">Number</span>


            
            </td>

            

            

            <td class="description last">The alpha component of the color to fill.</td>
        </tr>

    
    </tbody>
</table>






<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="Display.js.html">Display.js</a>, <a href="Display.js.html#line912">line 912</a>
    </li></ul></dd>
    

    

    

    
</dl>




















        
            

    

    
    <h4 class="name" id="strokeLayer"><span class="type-signature"></span>strokeLayer<span class="signature">(layer, cap, join, thickness, srcLayer)</span><span class="type-signature"></span></h4>
    

    



<div class="description">
    Stroke the current path with the image within the specified layer. The
image data will be tiled infinitely within the stroke. The current path
is implicitly closed. The current path can continue to be reused
for other operations (such as clip()) but a new path will be started
once a path drawing operation (path() or rect()) is used.
</div>









    <h5>Parameters:</h5>
    

<table class="params">
    <thead>
    <tr>
        
        <th>Name</th>
        

        <th>Type</th>

        

        

        <th class="last">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name"><code>layer</code></td>
            

            <td class="type">
            
                
<span class="param-type"><a href="Guacamole.Layer.html">Guacamole.Layer</a></span>


            
            </td>

            

            

            <td class="description last">The layer to draw upon.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>cap</code></td>
            

            <td class="type">
            
                
<span class="param-type">String</span>


            
            </td>

            

            

            <td class="description last">The line cap style. Can be "round", "square",
                    or "butt".</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>join</code></td>
            

            <td class="type">
            
                
<span class="param-type">String</span>


            
            </td>

            

            

            <td class="description last">The line join style. Can be "round", "bevel",
                     or "miter".</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>thickness</code></td>
            

            <td class="type">
            
                
<span class="param-type">Number</span>


            
            </td>

            

            

            <td class="description last">The line thickness in pixels.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>srcLayer</code></td>
            

            <td class="type">
            
                
<span class="param-type"><a href="Guacamole.Layer.html">Guacamole.Layer</a></span>


            
            </td>

            

            

            <td class="description last">The layer to use as a repeating pattern
                                  within the stroke.</td>
        </tr>

    
    </tbody>
</table>






<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="Display.js.html">Display.js</a>, <a href="Display.js.html#line952">line 952</a>
    </li></ul></dd>
    

    

    

    
</dl>




















        
            

    

    
    <h4 class="name" id="transfer"><span class="type-signature"></span>transfer<span class="signature">(srcLayer, srcx, srcy, srcw, srch, dstLayer, x, y, transferFunction)</span><span class="type-signature"></span></h4>
    

    



<div class="description">
    Transfer a rectangle of image data from one Layer to this Layer using the
specified transfer function.
</div>









    <h5>Parameters:</h5>
    

<table class="params">
    <thead>
    <tr>
        
        <th>Name</th>
        

        <th>Type</th>

        

        

        <th class="last">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name"><code>srcLayer</code></td>
            

            <td class="type">
            
                
<span class="param-type"><a href="Guacamole.Layer.html">Guacamole.Layer</a></span>


            
            </td>

            

            

            <td class="description last">The Layer to copy image data from.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>srcx</code></td>
            

            <td class="type">
            
                
<span class="param-type">Number</span>


            
            </td>

            

            

            <td class="description last">The X coordinate of the upper-left corner of the
                     rectangle within the source Layer's coordinate
                     space to copy data from.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>srcy</code></td>
            

            <td class="type">
            
                
<span class="param-type">Number</span>


            
            </td>

            

            

            <td class="description last">The Y coordinate of the upper-left corner of the
                     rectangle within the source Layer's coordinate
                     space to copy data from.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>srcw</code></td>
            

            <td class="type">
            
                
<span class="param-type">Number</span>


            
            </td>

            

            

            <td class="description last">The width of the rectangle within the source Layer's
                     coordinate space to copy data from.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>srch</code></td>
            

            <td class="type">
            
                
<span class="param-type">Number</span>


            
            </td>

            

            

            <td class="description last">The height of the rectangle within the source
                     Layer's coordinate space to copy data from.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>dstLayer</code></td>
            

            <td class="type">
            
                
<span class="param-type"><a href="Guacamole.Layer.html">Guacamole.Layer</a></span>


            
            </td>

            

            

            <td class="description last">The layer to draw upon.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>x</code></td>
            

            <td class="type">
            
                
<span class="param-type">Number</span>


            
            </td>

            

            

            <td class="description last">The destination X coordinate.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>y</code></td>
            

            <td class="type">
            
                
<span class="param-type">Number</span>


            
            </td>

            

            

            <td class="description last">The destination Y coordinate.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>transferFunction</code></td>
            

            <td class="type">
            
                
<span class="param-type">function</span>


            
            </td>

            

            

            <td class="description last">The transfer function to use to
                                   transfer data from source to
                                   destination.</td>
        </tr>

    
    </tbody>
</table>






<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="Display.js.html">Display.js</a>, <a href="Display.js.html#line730">line 730</a>
    </li></ul></dd>
    

    

    

    
</dl>




















        
            

    

    
    <h4 class="name" id="transform"><span class="type-signature"></span>transform<span class="signature">(layer, a, b, c, d, e, f)</span><span class="type-signature"></span></h4>
    

    



<div class="description">
    Applies the given affine transform (defined with six values from the
transform's matrix).
</div>









    <h5>Parameters:</h5>
    

<table class="params">
    <thead>
    <tr>
        
        <th>Name</th>
        

        <th>Type</th>

        

        

        <th class="last">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name"><code>layer</code></td>
            

            <td class="type">
            
                
<span class="param-type"><a href="Guacamole.Layer.html">Guacamole.Layer</a></span>


            
            </td>

            

            

            <td class="description last">The layer to modify.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>a</code></td>
            

            <td class="type">
            
                
<span class="param-type">Number</span>


            
            </td>

            

            

            <td class="description last">The first value in the affine transform's matrix.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>b</code></td>
            

            <td class="type">
            
                
<span class="param-type">Number</span>


            
            </td>

            

            

            <td class="description last">The second value in the affine transform's matrix.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>c</code></td>
            

            <td class="type">
            
                
<span class="param-type">Number</span>


            
            </td>

            

            

            <td class="description last">The third value in the affine transform's matrix.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>d</code></td>
            

            <td class="type">
            
                
<span class="param-type">Number</span>


            
            </td>

            

            

            <td class="description last">The fourth value in the affine transform's matrix.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>e</code></td>
            

            <td class="type">
            
                
<span class="param-type">Number</span>


            
            </td>

            

            

            <td class="description last">The fifth value in the affine transform's matrix.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>f</code></td>
            

            <td class="type">
            
                
<span class="param-type">Number</span>


            
            </td>

            

            

            <td class="description last">The sixth value in the affine transform's matrix.</td>
        </tr>

    
    </tbody>
</table>






<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="Display.js.html">Display.js</a>, <a href="Display.js.html#line1039">line 1039</a>
    </li></ul></dd>
    

    

    

    
</dl>




















        
    

    

    
        <h3 class="subsection-title">Events</h3>

        
            

    

    
    <h4 class="name" id="event:oncursor">oncursor</h4>
    

    



<div class="description">
    Fired whenever the local cursor image is changed. This can be used to
implement special handling of the client-side cursor, or to override
the default use of a software cursor layer.
</div>









    <h5>Parameters:</h5>
    

<table class="params">
    <thead>
    <tr>
        
        <th>Name</th>
        

        <th>Type</th>

        

        

        <th class="last">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name"><code>canvas</code></td>
            

            <td class="type">
            
                
<span class="param-type">HTMLCanvasElement</span>


            
            </td>

            

            

            <td class="description last">The cursor image.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>x</code></td>
            

            <td class="type">
            
                
<span class="param-type">Number</span>


            
            </td>

            

            

            <td class="description last">The X-coordinate of the cursor hotspot.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>y</code></td>
            

            <td class="type">
            
                
<span class="param-type">Number</span>


            
            </td>

            

            

            <td class="description last">The Y-coordinate of the cursor hotspot.</td>
        </tr>

    
    </tbody>
</table>






<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="Display.js.html">Display.js</a>, <a href="Display.js.html#line135">line 135</a>
    </li></ul></dd>
    

    

    

    
</dl>




















        
            

    

    
    <h4 class="name" id="event:onresize">onresize</h4>
    

    



<div class="description">
    Fired when the default layer (and thus the entire Guacamole display)
is resized.
</div>









    <h5>Parameters:</h5>
    

<table class="params">
    <thead>
    <tr>
        
        <th>Name</th>
        

        <th>Type</th>

        

        

        <th class="last">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name"><code>width</code></td>
            

            <td class="type">
            
                
<span class="param-type">Number</span>


            
            </td>

            

            

            <td class="description last">The new width of the Guacamole display.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>height</code></td>
            

            <td class="type">
            
                
<span class="param-type">Number</span>


            
            </td>

            

            

            <td class="description last">The new height of the Guacamole display.</td>
        </tr>

    
    </tbody>
</table>






<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="Display.js.html">Display.js</a>, <a href="Display.js.html#line123">line 123</a>
    </li></ul></dd>
    

    

    

    
</dl>




















        
    
</article>

</section>




</div>

<nav>
    <h2><a href="index.html">Home</a></h2><h3>Namespaces</h3><ul><li><a href="Guacamole.html">Guacamole</a></li><li><a href="Guacamole.AudioContextFactory.html">AudioContextFactory</a></li></ul><h3>Classes</h3><ul><li><a href="Guacamole.ArrayBufferReader.html">ArrayBufferReader</a></li><li><a href="Guacamole.ArrayBufferWriter.html">ArrayBufferWriter</a></li><li><a href="Guacamole.AudioPlayer.html">AudioPlayer</a></li><li><a href="Guacamole.AudioRecorder.html">AudioRecorder</a></li><li><a href="Guacamole.BlobReader.html">BlobReader</a></li><li><a href="Guacamole.BlobWriter.html">BlobWriter</a></li><li><a href="Guacamole.ChainedTunnel.html">ChainedTunnel</a></li><li><a href="Guacamole.Client.html">Client</a></li><li><a href="Guacamole.DataURIReader.html">DataURIReader</a></li><li><a href="Guacamole.Display.html">Display</a></li><li><a href="Guacamole.Display.VisibleLayer.html">VisibleLayer</a></li><li><a href="Guacamole.HTTPTunnel.html">HTTPTunnel</a></li><li><a href="Guacamole.InputSink.html">InputSink</a></li><li><a href="Guacamole.InputStream.html">InputStream</a></li><li><a href="Guacamole.IntegerPool.html">IntegerPool</a></li><li><a href="Guacamole.JSONReader.html">JSONReader</a></li><li><a href="Guacamole.Keyboard.html">Keyboard</a></li><li><a href="Guacamole.Keyboard.ModifierState.html">ModifierState</a></li><li><a href="Guacamole.Layer.html">Layer</a></li><li><a href="Guacamole.Layer.Pixel.html">Pixel</a></li><li><a href="Guacamole.Mouse.html">Mouse</a></li><li><a href="Guacamole.Mouse.State.html">State</a></li><li><a href="Guacamole.Mouse.Touchpad.html">Touchpad</a></li><li><a href="Guacamole.Mouse.Touchscreen.html">Touchscreen</a></li><li><a href="Guacamole.Object.html">Object</a></li><li><a href="Guacamole.OnScreenKeyboard.html">OnScreenKeyboard</a></li><li><a href="Guacamole.OnScreenKeyboard.Key.html">Key</a></li><li><a href="Guacamole.OnScreenKeyboard.Layout.html">Layout</a></li><li><a href="Guacamole.OutputStream.html">OutputStream</a></li><li><a href="Guacamole.Parser.html">Parser</a></li><li><a href="Guacamole.RawAudioFormat.html">RawAudioFormat</a></li><li><a href="Guacamole.RawAudioPlayer.html">RawAudioPlayer</a></li><li><a href="Guacamole.RawAudioRecorder.html">RawAudioRecorder</a></li><li><a href="Guacamole.SessionRecording.html">SessionRecording</a></li><li><a href="Guacamole.StaticHTTPTunnel.html">StaticHTTPTunnel</a></li><li><a href="Guacamole.Status.html">Status</a></li><li><a href="Guacamole.StringReader.html">StringReader</a></li><li><a href="Guacamole.StringWriter.html">StringWriter</a></li><li><a href="Guacamole.Tunnel.html">Tunnel</a></li><li><a href="Guacamole.VideoPlayer.html">VideoPlayer</a></li><li><a href="Guacamole.WebSocketTunnel.html">WebSocketTunnel</a></li></ul><h3>Events</h3><ul><li><a href="Guacamole.ArrayBufferReader.html#event:ondata">ondata</a></li><li><a href="Guacamole.ArrayBufferReader.html#event:onend">onend</a></li><li><a href="Guacamole.ArrayBufferWriter.html#event:onack">onack</a></li><li><a href="Guacamole.AudioRecorder.html#event:onclose">onclose</a></li><li><a href="Guacamole.AudioRecorder.html#event:onerror">onerror</a></li><li><a href="Guacamole.BlobReader.html#event:onend">onend</a></li><li><a href="Guacamole.BlobReader.html#event:onprogress">onprogress</a></li><li><a href="Guacamole.BlobWriter.html#event:onack">onack</a></li><li><a href="Guacamole.BlobWriter.html#event:oncomplete">oncomplete</a></li><li><a href="Guacamole.BlobWriter.html#event:onerror">onerror</a></li><li><a href="Guacamole.BlobWriter.html#event:onprogress">onprogress</a></li><li><a href="Guacamole.ChainedTunnel.html#event:onerror">onerror</a></li><li><a href="Guacamole.ChainedTunnel.html#event:oninstruction">oninstruction</a></li><li><a href="Guacamole.ChainedTunnel.html#event:onstatechange">onstatechange</a></li><li><a href="Guacamole.ChainedTunnel.html#event:onuuid">onuuid</a></li><li><a href="Guacamole.Client.html#event:onargv">onargv</a></li><li><a href="Guacamole.Client.html#event:onaudio">onaudio</a></li><li><a href="Guacamole.Client.html#event:onclipboard">onclipboard</a></li><li><a href="Guacamole.Client.html#event:onerror">onerror</a></li><li><a href="Guacamole.Client.html#event:onfile">onfile</a></li><li><a href="Guacamole.Client.html#event:onfilesystem">onfilesystem</a></li><li><a href="Guacamole.Client.html#event:onname">onname</a></li><li><a href="Guacamole.Client.html#event:onpipe">onpipe</a></li><li><a href="Guacamole.Client.html#event:onrequired">onrequired</a></li><li><a href="Guacamole.Client.html#event:onstatechange">onstatechange</a></li><li><a href="Guacamole.Client.html#event:onsync">onsync</a></li><li><a href="Guacamole.Client.html#event:onvideo">onvideo</a></li><li><a href="Guacamole.DataURIReader.html#event:onend">onend</a></li><li><a href="Guacamole.Display.html#event:oncursor">oncursor</a></li><li><a href="Guacamole.Display.html#event:onresize">onresize</a></li><li><a href="Guacamole.HTTPTunnel.html#event:onerror">onerror</a></li><li><a href="Guacamole.HTTPTunnel.html#event:oninstruction">oninstruction</a></li><li><a href="Guacamole.HTTPTunnel.html#event:onstatechange">onstatechange</a></li><li><a href="Guacamole.HTTPTunnel.html#event:onuuid">onuuid</a></li><li><a href="Guacamole.InputStream.html#event:onblob">onblob</a></li><li><a href="Guacamole.InputStream.html#event:onend">onend</a></li><li><a href="Guacamole.JSONReader.html#event:onend">onend</a></li><li><a href="Guacamole.JSONReader.html#event:onprogress">onprogress</a></li><li><a href="Guacamole.Keyboard.html#event:onkeydown">onkeydown</a></li><li><a href="Guacamole.Keyboard.html#event:onkeyup">onkeyup</a></li><li><a href="Guacamole.Mouse.Touchpad.html#event:onmousedown">onmousedown</a></li><li><a href="Guacamole.Mouse.Touchpad.html#event:onmousemove">onmousemove</a></li><li><a href="Guacamole.Mouse.Touchpad.html#event:onmouseup">onmouseup</a></li><li><a href="Guacamole.Mouse.Touchscreen.html#event:onmousedown">onmousedown</a></li><li><a href="Guacamole.Mouse.Touchscreen.html#event:onmousemove">onmousemove</a></li><li><a href="Guacamole.Mouse.Touchscreen.html#event:onmouseup">onmouseup</a></li><li><a href="Guacamole.Mouse.html#event:onmousedown">onmousedown</a></li><li><a href="Guacamole.Mouse.html#event:onmousemove">onmousemove</a></li><li><a href="Guacamole.Mouse.html#event:onmouseout">onmouseout</a></li><li><a href="Guacamole.Mouse.html#event:onmouseup">onmouseup</a></li><li><a href="Guacamole.Object.html#event:onbody">onbody</a></li><li><a href="Guacamole.Object.html#event:onundefine">onundefine</a></li><li><a href="Guacamole.OnScreenKeyboard.html#event:onkeydown">onkeydown</a></li><li><a href="Guacamole.OnScreenKeyboard.html#event:onkeyup">onkeyup</a></li><li><a href="Guacamole.OutputStream.html#event:onack">onack</a></li><li><a href="Guacamole.Parser.html#event:oninstruction">oninstruction</a></li><li><a href="Guacamole.RawAudioRecorder.html#event:onclose">onclose</a></li><li><a href="Guacamole.RawAudioRecorder.html#event:onerror">onerror</a></li><li><a href="Guacamole.SessionRecording._PlaybackTunnel.html#event:onerror">onerror</a></li><li><a href="Guacamole.SessionRecording._PlaybackTunnel.html#event:oninstruction">oninstruction</a></li><li><a href="Guacamole.SessionRecording._PlaybackTunnel.html#event:onstatechange">onstatechange</a></li><li><a href="Guacamole.SessionRecording._PlaybackTunnel.html#event:onuuid">onuuid</a></li><li><a href="Guacamole.SessionRecording.html#event:onpause">onpause</a></li><li><a href="Guacamole.SessionRecording.html#event:onplay">onplay</a></li><li><a href="Guacamole.SessionRecording.html#event:onprogress">onprogress</a></li><li><a href="Guacamole.SessionRecording.html#event:onseek">onseek</a></li><li><a href="Guacamole.StaticHTTPTunnel.html#event:onerror">onerror</a></li><li><a href="Guacamole.StaticHTTPTunnel.html#event:oninstruction">oninstruction</a></li><li><a href="Guacamole.StaticHTTPTunnel.html#event:onstatechange">onstatechange</a></li><li><a href="Guacamole.StaticHTTPTunnel.html#event:onuuid">onuuid</a></li><li><a href="Guacamole.StringReader.html#event:onend">onend</a></li><li><a href="Guacamole.StringReader.html#event:ontext">ontext</a></li><li><a href="Guacamole.StringWriter.html#event:onack">onack</a></li><li><a href="Guacamole.Tunnel.html#event:onerror">onerror</a></li><li><a href="Guacamole.Tunnel.html#event:oninstruction">oninstruction</a></li><li><a href="Guacamole.Tunnel.html#event:onstatechange">onstatechange</a></li><li><a href="Guacamole.Tunnel.html#event:onuuid">onuuid</a></li><li><a href="Guacamole.WebSocketTunnel.html#event:onerror">onerror</a></li><li><a href="Guacamole.WebSocketTunnel.html#event:oninstruction">oninstruction</a></li><li><a href="Guacamole.WebSocketTunnel.html#event:onstatechange">onstatechange</a></li><li><a href="Guacamole.WebSocketTunnel.html#event:onuuid">onuuid</a></li></ul>
</nav>

<br class="clear">

<footer>
    Documentation generated by <a href="https://github.com/jsdoc/jsdoc">JSDoc 3.6.6</a> on Mon Dec 21 2020 15:19:53 GMT-0800 (Pacific Standard Time)
</footer>

<script> prettyPrint(); </script>
<script src="scripts/linenumber.js"> </script>
        <!-- Google Analytics -->
        <script type="text/javascript">
          (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
          (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
          m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
          })(window,document,'script','//www.google-analytics.com/analytics.js','ga');

          ga('create', 'UA-75289145-1', 'auto');
          ga('send', 'pageview');
        </script>
</body>
</html>