Starting Background Job
The following snippet shows the definition of a background job that is implemented in JavaScript. The RCP Action (IAction) is also implemented in JavaScript and starts the job.
...
<job id="test_job" name="Doing something..." modal="true">
<![CDATA[
monitor.beginTask("Processing...", nsteps);
for(n=0; n<nsteps; n++)
{
monitor.worked(1);
sleep(1000);
if(monitor.isCanceled())
break;
out.println("Hello!");
}
monitor.done();
]]>
</job>
<action id="do_this" text="${action_text}" icon="icons/ina.gif" enablement="true"
language="JavaScript">
test_job.start();
</action>
...
<job id="test_job" name="Doing something..." modal="true">
<![CDATA[
monitor.beginTask("Processing...", nsteps);
for(n=0; n<nsteps; n++)
{
monitor.worked(1);
sleep(1000);
if(monitor.isCanceled())
break;
out.println("Hello!");
}
monitor.done();
]]>
</job>
<action id="do_this" text="${action_text}" icon="icons/ina.gif" enablement="true"
language="JavaScript">
test_job.start();
</action>
...
Defining RCP Perspective
<?xml version="1.0"?>
<perspective xmlns="http://www.rcml.net/ns/rcml/1.0/perspective">
<view id="mailapp.navigationView" relationship="LEFT" standalone="true" showtitle="false"
ratio="0.25"/>
<folder id="letters" relationship="TOP" ratio="0.6">
<view id="mailapp.view"/>
<placeholder id="mailapp.view:*"/>
</folder>
</perspective>
<perspective xmlns="http://www.rcml.net/ns/rcml/1.0/perspective">
<view id="mailapp.navigationView" relationship="LEFT" standalone="true" showtitle="false"
ratio="0.25"/>
<folder id="letters" relationship="TOP" ratio="0.6">
<view id="mailapp.view"/>
<placeholder id="mailapp.view:*"/>
</folder>
</perspective>