blob: a4eacab01da7d6448ef6d2bdf1fccb757e1a49b8 [file] [log] [blame]
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
<meta name="generator" content="JsDoc Toolkit" />
<title>JsDoc Reference - rap</title>
<style type="text/css">
/* default.css */
body
{
font: 12px "Lucida Grande", Tahoma, Arial, Helvetica, sans-serif;
width: 800px;
}
.header
{
clear: both;
background-color: #ccc;
padding: 8px;
}
h1
{
font-size: 150%;
font-weight: bold;
padding: 0;
margin: 1em 0 0 .3em;
}
hr
{
border: none 0;
border-top: 1px solid #7F8FB1;
height: 1px;
}
pre.code
{
display: block;
padding: 8px;
border: 1px dashed #ccc;
}
#index
{
margin-top: 24px;
float: left;
width: 160px;
position: absolute;
left: 8px;
background-color: #F3F3F3;
padding: 8px;
}
#content
{
margin-left: 190px;
width: 600px;
}
.classList
{
list-style-type: none;
padding: 0;
margin: 0 0 0 8px;
font-family: arial, sans-serif;
font-size: 1em;
overflow: auto;
}
.classList li
{
padding: 0;
margin: 0 0 8px 0;
}
.summaryTable { width: 100%; }
h1.classTitle
{
font-size:170%;
line-height:130%;
}
h2 { font-size: 110%; }
caption, div.sectionTitle
{
background-color: #7F8FB1;
color: #fff;
font-size:130%;
text-align: left;
padding: 2px 6px 2px 6px;
border: 1px #7F8FB1 solid;
}
div.sectionTitle { margin-bottom: 8px; }
.summaryTable thead { display: none; }
.summaryTable td
{
vertical-align: top;
padding: 4px;
border-bottom: 1px #7F8FB1 solid;
border-right: 1px #7F8FB1 solid;
}
/*col#summaryAttributes {}*/
.summaryTable td.attributes
{
border-left: 1px #7F8FB1 solid;
width: 140px;
text-align: right;
}
td.attributes, .fixedFont
{
line-height: 15px;
color: #002EBE;
font-family: "Courier New",Courier,monospace;
font-size: 13px;
}
.summaryTable td.nameDescription
{
text-align: left;
font-size: 13px;
line-height: 15px;
}
.summaryTable td.nameDescription, .description
{
line-height: 15px;
padding: 4px;
padding-left: 4px;
}
.summaryTable { margin-bottom: 8px; }
ul.inheritsList
{
list-style: square;
margin-left: 20px;
padding-left: 0;
}
.detailList {
margin-left: 20px;
line-height: 15px;
}
.detailList dt { margin-left: 20px; }
.detailList .heading
{
font-weight: bold;
padding-bottom: 6px;
margin-left: 0;
}
.light, td.attributes, .light a:link, .light a:visited
{
color: #777;
font-style: italic;
}
.fineprint
{
text-align: right;
font-size: 10px;
}
</style>
</head>
<body>
<!-- ============================== header ================================= -->
<!-- begin static/header.html -->
<div id="header">
</div>
<!-- end static/header.html -->
<!-- ============================== classes index ============================ -->
<div id="index">
<!-- begin publish.classesIndex -->
<div align="center"><a href="../index.html">Index</a></div>
<hr />
<h2>Global Objects</h2>
<ul class="classList">
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li><a href="../symbols/rap.html">rap</a></li>
<li><a href="../symbols/SWT.html">SWT</a></li>
</ul>
<h2>Types</h2>
<ul class="classList">
<li><a href="../symbols/%24.html">$</a></li>
<li><a href="../symbols/Button.html">Button</a></li>
<li><a href="../symbols/Canvas.html">Canvas</a></li>
<li><a href="../symbols/Combo.html">Combo</a></li>
<li><a href="../symbols/Composite.html">Composite</a></li>
<li><a href="../symbols/Control.html">Control</a></li>
<li><a href="../symbols/Event.html">Event</a></li>
<li><a href="../symbols/Label.html">Label</a></li>
<li><a href="../symbols/ProgressBar.html">ProgressBar</a></li>
<li><a href="../symbols/RemoteObject.html">RemoteObject</a></li>
<li><a href="../symbols/Scale.html">Scale</a></li>
<li><a href="../symbols/Spinner.html">Spinner</a></li>
<li><a href="../symbols/Text.html">Text</a></li>
<li><a href="../symbols/Widget.html">Widget</a></li>
<li></li>
<li></li>
</ul>
<hr />
<!-- end publish.classesIndex -->
</div>
<div id="content">
<!-- ============================== class title ============================ -->
<h1 class="classTitle">
Object rap
</h1>
<!-- ============================== class summary ========================== -->
<p class="description">
Holds all global public methods of the RAP WebClient.
</p>
<!-- ============================== constructor summary ==================== -->
<table class="summaryTable" cellspacing="0" summary="A summary of the constructor documented in the class rap.">
<caption>Object Summary</caption>
<thead>
<tr>
<th scope="col">Constructor Attributes</th>
<th scope="col">Constructor Name and Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="attributes">&nbsp;</td>
<td class="nameDescription" >
<div class="fixedFont">
<b><a href="../symbols/rap.html#constructor">rap</a></b>
</div>
<div class="description">Contains methods required for custom widget development and RWT Scripting.</div>
</td>
</tr>
</tbody>
</table>
<!-- ============================== properties summary ===================== -->
<!-- ============================== methods summary ======================== -->
<table class="summaryTable" cellspacing="0" summary="A summary of the methods documented in the class rap.">
<caption>Method Summary</caption>
<thead>
<tr>
<th scope="col">Method Attributes</th>
<th scope="col">Method Name and Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="attributes">&lt;static&gt; &nbsp;</td>
<td class="nameDescription">
<div class="fixedFont">rap.<b><a href="../symbols/rap.html#.getObject">getObject</a></b>(id)
</div>
<div class="description">Returns the client object associated with the given id as returned
by <code>org.eclipse.rap.rwt.lifecycle.WidgetUtil.getId</code> and
<code>org.eclipse.rap.rwt.remote.RemoteObject.getId</code>.</div>
</td>
</tr>
<tr>
<td class="attributes">&lt;static&gt; &nbsp;</td>
<td class="nameDescription">
<div class="fixedFont">rap.<b><a href="../symbols/rap.html#.getRemoteObject">getRemoteObject</a></b>(object)
</div>
<div class="description">Returns an instance of <a href="../symbols/RemoteObject.html">RemoteObject</a> for the given client object.</div>
</td>
</tr>
<tr>
<td class="attributes">&lt;static&gt; &nbsp;</td>
<td class="nameDescription">
<div class="fixedFont">rap.<b><a href="../symbols/rap.html#.off">off</a></b>(type, listener)
</div>
<div class="description">De-register the function as a listener of the given type.</div>
</td>
</tr>
<tr>
<td class="attributes">&lt;static&gt; &nbsp;</td>
<td class="nameDescription">
<div class="fixedFont">rap.<b><a href="../symbols/rap.html#.on">on</a></b>(type, listener)
</div>
<div class="description">Register the function as a listener of the given type.</div>
</td>
</tr>
<tr>
<td class="attributes">&lt;static&gt; &nbsp;</td>
<td class="nameDescription">
<div class="fixedFont">rap.<b><a href="../symbols/rap.html#.registerTypeHandler">registerTypeHandler</a></b>(type, handler)
</div>
<div class="description">Registers a RAP protocol type handler for a specific type of client objects.</div>
</td>
</tr>
</tbody>
</table>
<!-- ============================== events summary ======================== -->
<table class="summaryTable" cellspacing="0" summary="A summary of the events documented in the class rap.">
<caption>Event Summary</caption>
<thead>
<tr>
<th scope="col">Event Attributes</th>
<th scope="col">Event Name and Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="attributes">&nbsp;</td>
<td class="nameDescription">
<div class="fixedFont">
<b><a href="../symbols/rap.html#event:render">render</a></b>
</div>
<div class="description">Sent after a message has been processed.</div>
</td>
</tr>
<tr>
<td class="attributes">&nbsp;</td>
<td class="nameDescription">
<div class="fixedFont">
<b><a href="../symbols/rap.html#event:send">send</a></b>
</div>
<div class="description">Sent right before a message is send to the server.</div>
</td>
</tr>
</tbody>
</table>
<!-- ============================== constructor details ==================== -->
<div class="details"><a name="constructor"> </a>
<div class="sectionTitle">
Object Detail
</div>
<div class="fixedFont">
<b>rap</b>
</div>
<div class="description">
Contains methods required for custom widget development and RWT Scripting.
</div>
<dl class="detailList">
<dt class="heading">Since:</dt>
<dd>2.0</dd>
</dl>
</div>
<!-- ============================== field details ========================== -->
<!-- ============================== method details ========================= -->
<div class="sectionTitle">
Method Detail
</div>
<a name=".getObject"> </a>
<div class="fixedFont">&lt;static&gt;
<span class="light">{Object}</span>
<span class="light">rap.</span><b>getObject</b>(id)
</div>
<div class="description">
Returns the client object associated with the given id as returned
by <code>org.eclipse.rap.rwt.lifecycle.WidgetUtil.getId</code> and
<code>org.eclipse.rap.rwt.remote.RemoteObject.getId</code>.
If there is no object registered for the given id, <code>null</code> is returned.
For internal objects (e.g. RWT/SWT widgets) a wrapper is returned that approximates
the API of its Java analoge. <a href="../symbols/Composite.html#append">Composite#append</a> and <a href="../symbols/Widget.html#$el">Widget#$el</a> are special cases
where additional scripting-only API is provided.
</div>
<dl class="detailList">
<dt class="heading">Parameters:</dt>
<dt>
<span class="light fixedFont">{string}</span> <b>id</b>
</dt>
<dd>The protocol id for a client object.</dd>
</dl>
<dl class="detailList">
<dt class="heading">Returns:</dt>
<dd><span class="light fixedFont">{Object}</span> The client object associated with the id.</dd>
</dl>
<dl class="detailList">
<dt class="heading">See:</dt>
<dd><a href="../symbols/Composite.html">Composite</a>, Widget</dd>
</dl>
<hr />
<a name=".getRemoteObject"> </a>
<div class="fixedFont">&lt;static&gt;
<span class="light">{<a href="../symbols/RemoteObject.html">RemoteObject</a>}</span>
<span class="light">rap.</span><b>getRemoteObject</b>(object)
</div>
<div class="description">
Returns an instance of <a href="../symbols/RemoteObject.html">RemoteObject</a> for the given client object.
A client object is any object that was created by an type handler factory method.
Multiple calls for the same object will return the same RemoteObject
instance.
</div>
<dl class="detailList">
<dt class="heading">Parameters:</dt>
<dt>
<span class="light fixedFont">{Object}</span> <b>object</b>
</dt>
<dd>The client object.</dd>
</dl>
<dl class="detailList">
<dt class="heading">Returns:</dt>
<dd><span class="light fixedFont">{<a href="../symbols/RemoteObject.html">RemoteObject</a>}</span> </dd>
</dl>
<dl class="detailList">
<dt class="heading">See:</dt>
<dd><a href="../symbols/rap.html#.registerTypeHandler">rap.registerTypeHandler</a></dd>
</dl>
<hr />
<a name=".off"> </a>
<div class="fixedFont">&lt;static&gt;
<span class="light">rap.</span><b>off</b>(type, listener)
</div>
<div class="description">
De-register the function as a listener of the given type.
</div>
<dl class="detailList">
<dt class="heading">Parameters:</dt>
<dt>
<span class="light fixedFont">{string}</span> <b>type</b>
</dt>
<dd>The type of the event</dd>
<dt>
<span class="light fixedFont">{Function}</span> <b>listener</b>
</dt>
<dd>The callback function</dd>
</dl>
<hr />
<a name=".on"> </a>
<div class="fixedFont">&lt;static&gt;
<span class="light">rap.</span><b>on</b>(type, listener)
</div>
<div class="description">
Register the function as a listener of the given type. Registering unkown
types throws an Error.
</div>
<dl class="detailList">
<dt class="heading">Parameters:</dt>
<dt>
<span class="light fixedFont">{string}</span> <b>type</b>
</dt>
<dd>The type of the event (e.g. "send").</dd>
<dt>
<span class="light fixedFont">{Function}</span> <b>listener</b>
</dt>
<dd>The callback function. It is executed in global context.</dd>
</dl>
<hr />
<a name=".registerTypeHandler"> </a>
<div class="fixedFont">&lt;static&gt;
<span class="light">rap.</span><b>registerTypeHandler</b>(type, handler)
</div>
<div class="description">
Registers a RAP protocol type handler for a specific type of client objects.
The handler is used by the protocol message processor to process operations that target
any client object of this type. Example:
</div>
<pre class="code">rap.registerTypeHandler( "project.MyWidget", {
factory : function( properties ) {
return new MyWidget();
},
properties : [ "propA", "propB" ]
} );</pre>
<dl class="detailList">
<dt class="heading">Parameters:</dt>
<dt>
<span class="light fixedFont">{string}</span> <b>type</b>
</dt>
<dd></dd>
<dt>
<span class="light fixedFont">{Object}</span> <b>handler</b>
</dt>
<dd>The handler object.</dd>
<dt>
<span class="light fixedFont">{Function}</span> <b>handler.factory</b>
</dt>
<dd>Called for create operations.
Is given a properties object as the first argument, which may contain any number for
properties/fields set by the server. Has to return a "client object" representing an instance
of the type of this handler. <em>Required for all type handler</em>.</dd>
<dt>
<span class="light fixedFont">{string}</span> <b>handler.destructor</b>
</dt>
<dd>Name of the method that is called for destroy operations.
If the string is given, the client object <em>has</em> to implement a method with the given
name. <em>Optional</em></dd>
<dt>
<span class="light fixedFont">{string[]}</span> <b>handler.properties</b>
</dt>
<dd>List of properties supported by this type.
The order in the list controls the order in which the properties are applied by the message
processor. The client object <em>has</em> to implement a setter for each supported property.
For example, if the property is "bounds", <code>setBounds</code> will be called on the client
object. Properties given by the server that are not in this list will be ignored. (One
exception is the factory, which gets an object with <i>all</i> properties set by the server
at that time.) If the property changes on the client, <a href="../symbols/RemoteObject.html#set">RemoteObject#set</a> can be
used to synchronize the value with the server.
<em>Optional.</em></dd>
<dt>
<span class="light fixedFont">{string[]}</span> <b>handler.methods</b>
</dt>
<dd>List of methods supported by this type.
The order in the list is meaningless, "call" operations are processed in the order in which
they are given by the server. The client object has to implement a method of the same name.
One argument will be given, which is a properties object with any number of properties/fields.
A "call" operation given by the server for a method that is not in this list will be ignored.
<em>Optional.</em></dd>
<dt>
<span class="light fixedFont">{string[]}</span> <b>handler.events</b>
</dt>
<dd>List of event types supported by this type.
The server may instruct the client object with "listen" operations to start or stop sending
notifications when events of he given event type occur. Notifications may and can only be
sent for types that are given in this list and are listend to by the server. See also
<a href="../symbols/RemoteObject.html#notify">RemoteObject#notify</a>.
<em>Optional.</em></dd>
</dl>
<!-- ============================== event details ========================= -->
<div class="sectionTitle">
Event Detail
</div>
<a name="event:render"> </a>
<div class="fixedFont">
<b>render</b>
</div>
<div class="description">
Sent after a message has been processed.
</div>
<hr />
<a name="event:send"> </a>
<div class="fixedFont">
<b>send</b>
</div>
<div class="description">
Sent right before a message is send to the server.
</div>
<hr />
</div>
<!-- ============================== footer ================================= -->
<div class="fineprint" style="clear:both">
Copyright (c) EclipseSource and others 2013. All rights reserved.
</div>
</body>
</html>