plugins/org.symbian.tools.wrttools.doc.WRTKit/html/WRTKit_Actions-GUID-38771443-166b-4112-9569-c07229cd7449.html
<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html lang="en" xml:lang="en">
<head>
<meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
<meta name="copyright" content="(C) Copyright 2005" />
<meta name="DC.rights.owner" content="(C) Copyright 2005" />
<meta content="concept" name="DC.Type" />
<meta name="DC.Title" content="Actions" />
<meta scheme="URI" name="DC.Relation" content="WRTKit_Developing_widgets_using_the_WRTKit-GUID-a321db96-0a01-4e55-b24b-96905f40cb5c.html" />
<meta content="XHTML" name="DC.Format" />
<meta content="GUID-38771443-166B-4112-9569-C07229CD7449" name="DC.Identifier" />
<meta content="en" name="DC.Language" />
<link href="commonltr.css" type="text/css" rel="stylesheet" />
<title>
Actions</title>
</head>
<body id="GUID-38771443-166B-4112-9569-C07229CD7449"><a name="GUID-38771443-166B-4112-9569-C07229CD7449"><!-- --></a>
<h1 class="topictitle1">
Actions</h1>
<div>
<p>
Widgets can let users trigger actions in many ways. One way is by inserting menu
items in the Options menu, using the menu object that the S60 Web Runtime
defines. Another way is to use links that call JavaScript functions. Such links
could for example be included as part of content in a ContentPanel control.
Links belong more to web pages than widgets or applications, however, and are
not recommended except in cases when they result in a web URL being opened up in
a web browser (i.e. using the widget.openURL() method).
</p>
<p>
The third way is to use one of the WRTKit action controls: FormButton and
NavigationButton. Both controls are very similar in usage but differ greatly in
presentation and intended use. The FormButton control is meant to be used in
situations where pressing the button would result in some kind of process taking
place, e.g. settings being saved. The NavigationButton control is intended for
moving between views inside the widget, or other similar type of actions.
FormButton controls look similar to buttons in a PC application or "Submit"-
buttons on a web page. NavigatationButton controls don't really have a
counterpart in the PC application domain, but is common in mobile device
application that have large user interfaces that are split into several views.
</p>
<div class="fignone" id="GUID-38771443-166B-4112-9569-C07229CD7449__GUID-AC8282AE-227F-481A-8774-B3904AABDD9F"><a name="GUID-38771443-166B-4112-9569-C07229CD7449__GUID-AC8282AE-227F-481A-8774-B3904AABDD9F"><!-- --></a><span class="figcap">Figure 1.
NavigationButton controls</span>
<br /><img src="NavigationButton_Controls_Screenshot_1.png" /><br />
</div>
<p>
In an email widget, NavigationButton controls could be used so that there would
be a "Folders"-view where each folder (e.g. Inbox, Sent, Trash, etc.) would have
a corresponding NavigationButton. Clicking on the button for a folder would open
up that folder in a new view. FormButton controls could be used for example in a
view that lets users write new emails to trigger sending of the written email. A
FormButton in a view like that could have "Send" as the button text.
</p>
<div class="fignone" id="GUID-38771443-166B-4112-9569-C07229CD7449__GUID-60F75AE9-DE96-4044-BAB4-BAB27F08A1D7"><a name="GUID-38771443-166B-4112-9569-C07229CD7449__GUID-60F75AE9-DE96-4044-BAB4-BAB27F08A1D7"><!-- --></a><span class="figcap">Figure 2.
FormButton controls</span>
<br /><img src="FormButton_Controls_Screenshot_1.png" /><br />
</div>
<p>
The FormButton and NavigationButton controls fire events with the event type
"ActionPerformed" whenever a user presses the button. The event can be turned
into a function call to a callback function of the developer's choice by
registering the function to the control for the "ActionPerformed" event type.
This is done using the addEventListener() method that all controls inherit from
the UIElement base class.
</p>
</div>
<div>
<div class="familylinks">
<div class="parentlink"><strong>Parent topic:</strong> <a href="WRTKit_Developing_widgets_using_the_WRTKit-GUID-a321db96-0a01-4e55-b24b-96905f40cb5c.html">Developing widgets using the WRTKit</a></div>
</div>
</div>
</body>
</html>