<?xml version="1.0"?>
<?xml-stylesheet type="text/css" href="http://www.forum.nokia.com/piazza/wiki/skins/common/feed.css?878"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/">
	<channel>
		<title>Forum Nokia Wiki - Recent changes [en]</title>
		<link>http://wiki.forum.nokia.com/index.php/Special:Newestpages</link>
		<description>Track the most recent changes to the wiki in this feed.</description>
		<language>en</language>
		<generator>MediaWiki 1.15.1</generator>
		<lastBuildDate>Fri, 20 Nov 2009 22:25:50 GMT</lastBuildDate>
		<item>
			<title>How to create a new Component for the Guarana UI Library</title>
			<link>http://wiki.forum.nokia.com/index.php/How_to_create_a_new_Component_for_the_Guarana_UI_Library</link>
			<description>&lt;p&gt;&lt;br /&gt;
This article shows all the steps involved in &lt;b&gt;creating a new Component from scratch for the &lt;a href=&quot;http://wiki.forum.nokia.com/index.php/Guarana_UI:_a_jQuery-Based_UI_Library_for_Nokia_WRT&quot; class=&quot;external text&quot; title=&quot;http://wiki.forum.nokia.com/index.php/Guarana_UI:_a_jQuery-Based_UI_Library_for_Nokia_WRT&quot; rel=&quot;nofollow&quot;&gt;Nokia WRT Guarana UI Library&lt;/a&gt;&lt;/b&gt;.
&lt;/p&gt;&lt;p&gt;&lt;a href=&quot;/index.php/File:Guarana_ui_new_component.png&quot; class=&quot;image&quot; title=&quot;File:Guarana_ui_new_component.png&quot;&gt;&lt;img alt=&quot;File:Guarana_ui_new_component.png&quot; src=&quot;http://www.forum.nokia.com/piazza/wiki/images/f/fe/Guarana_ui_new_component.png&quot; width=&quot;360&quot; height=&quot;285&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;&lt;p&gt;The Component built is this article is also visible on the &lt;a href=&quot;http://www.jappit.com/m/guaranabrowser/#guarana_testcomponent&quot; class=&quot;external text&quot; title=&quot;http://www.jappit.com/m/guaranabrowser/#guarana_testcomponent&quot; rel=&quot;nofollow&quot;&gt;Guarana UI online Components Browser&lt;/a&gt;.
&lt;/p&gt;
&lt;table id=&quot;toc&quot; class=&quot;toc&quot; summary=&quot;Contents&quot;&gt;&lt;tr&gt;&lt;td&gt;&lt;div id=&quot;toctitle&quot;&gt;&lt;h2&gt;Contents&lt;/h2&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li class=&quot;toclevel-1&quot;&gt;&lt;a href=&quot;#Introduction&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;1&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Introduction&lt;/span&gt;&lt;/a&gt;
&lt;ul&gt;
&lt;li class=&quot;toclevel-2&quot;&gt;&lt;a href=&quot;#Component_files_Structure&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;1.1&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Component files Structure&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li class=&quot;toclevel-1&quot;&gt;&lt;a href=&quot;#The_Guarana_UI_Build_processes&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;2&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;The Guarana UI Build processes&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-1&quot;&gt;&lt;a href=&quot;#Setup_the_Component_source_files&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;3&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Setup the Component source files&lt;/span&gt;&lt;/a&gt;
&lt;ul&gt;
&lt;li class=&quot;toclevel-2&quot;&gt;&lt;a href=&quot;#Create_an_empty_Web_Runtime_project&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;3.1&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Create an empty Web Runtime project&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-2&quot;&gt;&lt;a href=&quot;#Setup_the_Component_skeleton_structure&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;3.2&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Setup the Component skeleton structure&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-2&quot;&gt;&lt;a href=&quot;#Build_Guarana_UI_and_move_resources&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;3.3&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Build Guarana UI and move resources&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li class=&quot;toclevel-1&quot;&gt;&lt;a href=&quot;#Writing_the_Component_code&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;4&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Writing the Component code&lt;/span&gt;&lt;/a&gt;
&lt;ul&gt;
&lt;li class=&quot;toclevel-2&quot;&gt;&lt;a href=&quot;#The_Component_JavaScript_skeleton&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;4.1&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;The Component JavaScript skeleton&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-2&quot;&gt;&lt;a href=&quot;#Define_the_Component_DOM_structure&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;4.2&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Define the Component DOM structure&lt;/span&gt;&lt;/a&gt;
&lt;ul&gt;
&lt;li class=&quot;toclevel-3&quot;&gt;&lt;a href=&quot;#The_Component.27s_CSS_classes&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;4.2.1&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;The Component's CSS classes&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li class=&quot;toclevel-2&quot;&gt;&lt;a href=&quot;#Initializing_the_Component&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;4.3&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Initializing the Component&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-2&quot;&gt;&lt;a href=&quot;#Create_the_DOM_structure&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;4.4&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Create the DOM structure&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-2&quot;&gt;&lt;a href=&quot;#Add_some_interactivity_to_the_Component&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;4.5&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Add some interactivity to the Component&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li class=&quot;toclevel-1&quot;&gt;&lt;a href=&quot;#Using_the_component&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;5&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Using the component&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-1&quot;&gt;&lt;a href=&quot;#Finalize_the_Component&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;6&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Finalize the Component&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-1&quot;&gt;&lt;a href=&quot;#Links_and_Resources&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;7&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Links and Resources&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;script type=&quot;text/javascript&quot;&gt; if (window.showTocToggle) { var tocShowText = &quot;show&quot;; var tocHideText = &quot;hide&quot;; showTocToggle(); } &lt;/script&gt;
&lt;a name=&quot;Introduction&quot; id=&quot;Introduction&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;Introduction&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;The &lt;a href=&quot;http://wiki.forum.nokia.com/index.php/Guarana_UI:_a_jQuery-Based_UI_Library_for_Nokia_WRT&quot; class=&quot;external text&quot; title=&quot;http://wiki.forum.nokia.com/index.php/Guarana_UI:_a_jQuery-Based_UI_Library_for_Nokia_WRT&quot; rel=&quot;nofollow&quot;&gt;Guarana UI Library&lt;/a&gt; is a &lt;b&gt;jQuery-Based UI Library for Nokia WRT&lt;/b&gt;, that provides a &lt;a href=&quot;http://wiki.forum.nokia.com/index.php/GuaranaUI-Documentation&quot; class=&quot;external text&quot; title=&quot;http://wiki.forum.nokia.com/index.php/GuaranaUI-Documentation&quot; rel=&quot;nofollow&quot;&gt;full set of Components&lt;/a&gt; ready to be used within Web Runtime widgets.
&lt;/p&gt;&lt;p&gt;&lt;b&gt;Guarana UI&lt;/b&gt; is structured into Components: &lt;b&gt;User Interface elements that fulfill a specific function&lt;/b&gt;. Some examples include: &lt;a href=&quot;/index.php/Date&quot; title=&quot;Date&quot;&gt;Date&lt;/a&gt;, &lt;a href=&quot;/index.php/Rating&quot; title=&quot;Rating&quot;&gt;Rating&lt;/a&gt; and &lt;a href=&quot;/index.php/Progress_Bar&quot; title=&quot;Progress Bar&quot;&gt;Progress Bar&lt;/a&gt;.
&lt;/p&gt;&lt;p&gt;The Guarana UI structure allows to create new Components, by extending the &lt;a href=&quot;/index.php/Widget&quot; title=&quot;Widget&quot;&gt;Widget&lt;/a&gt; base class. The &lt;a href=&quot;/index.php/Widget&quot; title=&quot;Widget&quot;&gt;Widget&lt;/a&gt; base class represents a common base for all Guarana UI Components, providing basic and utility functions that manage event handling, vibration control and loading management of the Components.
&lt;/p&gt;
&lt;a name=&quot;Component_files_Structure&quot; id=&quot;Component_files_Structure&quot;&gt;&lt;/a&gt;&lt;h3&gt; &lt;span class=&quot;mw-headline&quot;&gt;Component files Structure&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;A Guarana UI Component is typically composed by:
&lt;/p&gt;
&lt;ul&gt;&lt;li&gt; &lt;b&gt;1 JavaScript file&lt;/b&gt;, placed in the &quot;&amp;lt;GUARANA_BASE_PATH&amp;gt;/src/&quot; folder
&lt;/li&gt;&lt;li&gt; &lt;b&gt;1 CSS file&lt;/b&gt;, placed in the &quot;&amp;lt;GUARANA_BASE_PATH&amp;gt;/themes/nokia/base/&quot; folder
&lt;/li&gt;&lt;li&gt; optionally, &lt;b&gt;1 or more images&lt;/b&gt; placed in the &quot;&amp;lt;GUARANA_BASE_PATH&amp;gt;/themes/nokia/base/images/&quot; folder
&lt;/li&gt;&lt;/ul&gt;
&lt;a name=&quot;The_Guarana_UI_Build_processes&quot; id=&quot;The_Guarana_UI_Build_processes&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;The Guarana UI Build processes&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;Before starting to create the new Component, it is necessary to &lt;b&gt;download and uncompress the Full Guarana UI Package&lt;/b&gt;, available here: &lt;a href=&quot;http://www.forum.nokia.com/piazza/wiki/images/f/fa/Guarana_WRT_UI_Library_v1_0.zip&quot; class=&quot;external text&quot; title=&quot;http://www.forum.nokia.com/piazza/wiki/images/f/fa/Guarana_WRT_UI_Library_v1_0.zip&quot; rel=&quot;nofollow&quot;&gt;Guarana UI Full Package&lt;/a&gt;.
&lt;/p&gt;&lt;p&gt;The Full Package ships with all the source files of the Guarana UI Library, and includes the &lt;b&gt;build files necessary to create custom Library versions&lt;/b&gt;. To have a detailed overview of the Guarana UI folders and build process, check out the &lt;a href=&quot;http://wiki.forum.nokia.com/index.php/GuaranaUI-Overview&quot; class=&quot;external text&quot; title=&quot;http://wiki.forum.nokia.com/index.php/GuaranaUI-Overview&quot; rel=&quot;nofollow&quot;&gt;Guarana UI Overview&lt;/a&gt;.
&lt;/p&gt;&lt;p&gt;&lt;b&gt;Note:&lt;/b&gt; In this article, &amp;lt;GUARANA_BASE_PATH&amp;gt; refers to the complete path where the Guarana UI Full Package was uncompressed
&lt;/p&gt;
&lt;a name=&quot;Setup_the_Component_source_files&quot; id=&quot;Setup_the_Component_source_files&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;Setup the Component source files&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;The following sections describe &lt;b&gt;how to perform the setup steps for a new Guarana UI Component&lt;/b&gt;, here named TestComponent. The involved steps are:
&lt;/p&gt;
&lt;ul&gt;&lt;li&gt; &lt;b&gt;creating the Component skeleton&lt;/b&gt; in the Guarana UI Full Package
&lt;/li&gt;&lt;li&gt; &lt;b&gt;build and move the lib and themes folder&lt;/b&gt; to an empty Web Runtime widget
&lt;/li&gt;&lt;/ul&gt;
&lt;a name=&quot;Create_an_empty_Web_Runtime_project&quot; id=&quot;Create_an_empty_Web_Runtime_project&quot;&gt;&lt;/a&gt;&lt;h3&gt; &lt;span class=&quot;mw-headline&quot;&gt;Create an empty Web Runtime project&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;Before starting, &lt;b&gt;create an empty Web Runtime project&lt;/b&gt;: it will be used to write and test the actual Component's code. You can do this manually, or by using the available Web Runtime IDE's Plugins.
&lt;/p&gt;
&lt;a name=&quot;Setup_the_Component_skeleton_structure&quot; id=&quot;Setup_the_Component_skeleton_structure&quot;&gt;&lt;/a&gt;&lt;h3&gt; &lt;span class=&quot;mw-headline&quot;&gt;Setup the Component skeleton structure&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;Now let's start, by creating the &lt;b&gt;empty source files for the new TestComponent&lt;/b&gt;. These will be:
&lt;/p&gt;
&lt;ul&gt;&lt;li&gt; &lt;b&gt;testcomponent.js&lt;/b&gt;: place this empty file in the &lt;b&gt;&quot;&amp;lt;GUARANA_BASE_PATH&amp;gt;/src&quot; folder&lt;/b&gt;
&lt;/li&gt;&lt;li&gt; &lt;b&gt;testcomponent.css&lt;/b&gt;: place this empty file in the &lt;b&gt;&quot;&amp;lt;GUARANA_BASE_PATH&amp;gt;/themes/nokia/base/&quot; folder&lt;/b&gt;
&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;Now, it is necessary to &lt;b&gt;tell the Guarana UI Library that these files exist&lt;/b&gt;. To do this, &lt;b&gt;open the &quot;&amp;lt;GUARANA_BASE_PATH&amp;gt;/src/defaults.js&quot; file&lt;/b&gt;, and add this JavaScript code, just after all the other Components, as &lt;b&gt;properties of the window.NOKIA_DEFAULTS.modules object&lt;/b&gt;:
&lt;/p&gt;
&lt;pre class=&quot;javascript&quot; style=&quot;font-family:monospace;&quot;&gt;&lt;span style=&quot;color: #006600; font-style: italic;&quot;&gt;/*&lt;br /&gt;* Test Component&lt;br /&gt;*/&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #3366CC;&quot;&gt;'testcomponent'&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;:&lt;/span&gt; &lt;span style=&quot;color: #009900;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;	getPath&lt;span style=&quot;color: #339933;&quot;&gt;:&lt;/span&gt; &lt;span style=&quot;color: #003366; font-weight: bold;&quot;&gt;function&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #009900;&quot;&gt;&amp;#123;&lt;/span&gt; &lt;span style=&quot;color: #000066; font-weight: bold;&quot;&gt;return&lt;/span&gt; NOKIA_PATH_JAVASCRIPT &lt;span style=&quot;color: #339933;&quot;&gt;+&lt;/span&gt; &lt;span style=&quot;color: #3366CC;&quot;&gt;'testcomponent.js'&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt; &lt;span style=&quot;color: #009900;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt;&lt;br /&gt;	requires&lt;span style=&quot;color: #339933;&quot;&gt;:&lt;/span&gt; &lt;span style=&quot;color: #009900;&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span style=&quot;color: #3366CC;&quot;&gt;'widget'&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt; &lt;span style=&quot;color: #3366CC;&quot;&gt;'testcomponent-css'&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#93;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;&lt;span style=&quot;color: #3366CC;&quot;&gt;'testcomponent-css'&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;:&lt;/span&gt; &lt;span style=&quot;color: #009900;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;	getPath&lt;span style=&quot;color: #339933;&quot;&gt;:&lt;/span&gt; &lt;span style=&quot;color: #003366; font-weight: bold;&quot;&gt;function&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #009900;&quot;&gt;&amp;#123;&lt;/span&gt; &lt;span style=&quot;color: #000066; font-weight: bold;&quot;&gt;return&lt;/span&gt; NOKIA_PATH_STYLE_ROOT &lt;span style=&quot;color: #339933;&quot;&gt;+&lt;/span&gt; &lt;span style=&quot;color: #3366CC;&quot;&gt;'testcomponent.css'&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt; &lt;span style=&quot;color: #009900;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt;&lt;br /&gt;	type&lt;span style=&quot;color: #339933;&quot;&gt;:&lt;/span&gt; &lt;span style=&quot;color: #3366CC;&quot;&gt;'css'&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt;&lt;br /&gt;	requires&lt;span style=&quot;color: #339933;&quot;&gt;:&lt;/span&gt; &lt;span style=&quot;color: #009900;&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span style=&quot;color: #3366CC;&quot;&gt;'base-css'&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#93;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;/pre&gt;
&lt;p&gt;These 2 properties allow Guarana UI to know that new resources exist, and specify the &lt;b&gt;dependencies&lt;/b&gt; of each of them. Most of the Components usually require only the specified dependencies, but it's possible to change them accordingly to different needs.
&lt;/p&gt;&lt;p&gt;Before proceeding, &lt;b&gt;perform the same modifications to the &quot;&amp;lt;GUARANA_BASE_PATH&amp;gt;/build/build/js/defaults.js&quot; file&lt;/b&gt;.
&lt;/p&gt;
&lt;a name=&quot;Build_Guarana_UI_and_move_resources&quot; id=&quot;Build_Guarana_UI_and_move_resources&quot;&gt;&lt;/a&gt;&lt;h3&gt; &lt;span class=&quot;mw-headline&quot;&gt;Build Guarana UI and move resources&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;Now that the skeleton files are ready, it is possible to &lt;b&gt;build Guarana UI by using the standard build process&lt;/b&gt;. Just go into the &quot;&amp;lt;GUARANA_BASE_PATH&amp;gt;/build/&quot; folder and, from command-line, call:
&lt;/p&gt;
&lt;pre class=&quot;text&quot; style=&quot;font-family:monospace;&quot;&gt;ant&lt;/pre&gt;
&lt;p&gt;Once built, &lt;b&gt;move the &quot;&amp;lt;GUARANA_BASE_PATH&amp;gt;/build/Guarana/lib/&quot; and &quot;&amp;lt;GUARANA_BASE_PATH&amp;gt;/build/Guarana/themes/&quot; to the empty Web Runtime widget created before&lt;/b&gt;.
&lt;/p&gt;&lt;p&gt;Before proceeding, &lt;b&gt;check that the Component empty files were actually built&lt;/b&gt;. If so, they should be located at these paths:
&lt;/p&gt;
&lt;ul&gt;&lt;li&gt; &quot;&amp;lt;GUARANA_BASE_PATH&amp;gt;/build/Guarana/lib/testcomponent.js&quot;
&lt;/li&gt;&lt;li&gt; &quot;&amp;lt;GUARANA_BASE_PATH&amp;gt;/build/Guarana/themes/nokia/base/testcomponent.css&quot;
&lt;/li&gt;&lt;/ul&gt;
&lt;a name=&quot;Writing_the_Component_code&quot; id=&quot;Writing_the_Component_code&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;Writing the Component code&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;The following sections show how to write the actual Component's code.
&lt;/p&gt;
&lt;a name=&quot;The_Component_JavaScript_skeleton&quot; id=&quot;The_Component_JavaScript_skeleton&quot;&gt;&lt;/a&gt;&lt;h3&gt; &lt;span class=&quot;mw-headline&quot;&gt;The Component JavaScript skeleton&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;The very-basic Component is composed by just one function, that takes care of &lt;b&gt;initializing the Component&lt;/b&gt; itself:
&lt;/p&gt;
&lt;pre class=&quot;javascript&quot; style=&quot;font-family:monospace;&quot;&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #003366; font-weight: bold;&quot;&gt;function&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #009900;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;	Nokia.&lt;span style=&quot;color: #660066;&quot;&gt;TestComponent&lt;/span&gt; &lt;span style=&quot;color: #339933;&quot;&gt;=&lt;/span&gt; Nokia.&lt;span style=&quot;color: #660066;&quot;&gt;Widget&lt;/span&gt;.&lt;span style=&quot;color: #660066;&quot;&gt;extend&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;		initialize&lt;span style=&quot;color: #339933;&quot;&gt;:&lt;/span&gt; &lt;span style=&quot;color: #003366; font-weight: bold;&quot;&gt;function&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;options&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #009900;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;			&lt;span style=&quot;color: #006600; font-style: italic;&quot;&gt;// initialize the Component&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;		&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;	&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;/pre&gt;
&lt;p&gt;Some other functions and properties are also usually defined, and they are:
&lt;/p&gt;
&lt;ul&gt;&lt;li&gt; the &lt;b&gt;_create() function&lt;/b&gt;, that takes care of creating the &lt;b&gt;Component's DOM structure&lt;/b&gt; and of defining all the &lt;b&gt;event handlers&lt;/b&gt;
&lt;/li&gt;&lt;li&gt; the &lt;b&gt;Styles property&lt;/b&gt;, that holds the &lt;b&gt;names of CSS classes&lt;/b&gt; used by the Component
&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;So, a more complete Component will be the following one:
&lt;/p&gt;
&lt;pre class=&quot;javascript&quot; style=&quot;font-family:monospace;&quot;&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #003366; font-weight: bold;&quot;&gt;function&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #009900;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;	Nokia.&lt;span style=&quot;color: #660066;&quot;&gt;TestComponent&lt;/span&gt; &lt;span style=&quot;color: #339933;&quot;&gt;=&lt;/span&gt; Nokia.&lt;span style=&quot;color: #660066;&quot;&gt;Widget&lt;/span&gt;.&lt;span style=&quot;color: #660066;&quot;&gt;extend&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;		initialize&lt;span style=&quot;color: #339933;&quot;&gt;:&lt;/span&gt; &lt;span style=&quot;color: #003366; font-weight: bold;&quot;&gt;function&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;options&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #009900;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;			&lt;span style=&quot;color: #006600; font-style: italic;&quot;&gt;// initialize the Component&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;		&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;		_create&lt;span style=&quot;color: #339933;&quot;&gt;:&lt;/span&gt; &lt;span style=&quot;color: #003366; font-weight: bold;&quot;&gt;function&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #009900;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;			&lt;span style=&quot;color: #006600; font-style: italic;&quot;&gt;// create the Component DOM structure and define events&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;		&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;		Styles&lt;span style=&quot;color: #339933;&quot;&gt;:&lt;/span&gt; &lt;span style=&quot;color: #009900;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;			&lt;span style=&quot;color: #006600; font-style: italic;&quot;&gt;// define the main CSS styles classes used by the Component&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;		&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;	&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;/pre&gt;
&lt;a name=&quot;Define_the_Component_DOM_structure&quot; id=&quot;Define_the_Component_DOM_structure&quot;&gt;&lt;/a&gt;&lt;h3&gt; &lt;span class=&quot;mw-headline&quot;&gt;Define the Component DOM structure&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;The TestComponent built in this article has to show a message, and so it is possible to use the &lt;b&gt;following simple DOM structure&lt;/b&gt;:
&lt;/p&gt;
&lt;pre class=&quot;html4strict&quot; style=&quot;font-family:monospace;&quot;&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;lt;&lt;a href=&quot;http://december.com/html/4/element/div.html&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;div&lt;/span&gt;&lt;/a&gt; &lt;span style=&quot;color: #000066;&quot;&gt;class&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;test-component&amp;quot;&lt;/span&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;	&lt;span style=&quot;color: #009900;&quot;&gt;&amp;lt;&lt;a href=&quot;http://december.com/html/4/element/p.html&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;p&lt;/span&gt;&lt;/a&gt; &lt;span style=&quot;color: #000066;&quot;&gt;class&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;test-component-message&amp;quot;&lt;/span&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;		Hello World!&lt;br /&gt;	&lt;span style=&quot;color: #009900;&quot;&gt;&amp;lt;&lt;span style=&quot;color: #66cc66;&quot;&gt;/&lt;/span&gt;&lt;a href=&quot;http://december.com/html/4/element/p.html&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;p&lt;/span&gt;&lt;/a&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;lt;&lt;span style=&quot;color: #66cc66;&quot;&gt;/&lt;/span&gt;&lt;a href=&quot;http://december.com/html/4/element/div.html&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;div&lt;/span&gt;&lt;/a&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;
&lt;a name=&quot;The_Component.27s_CSS_classes&quot; id=&quot;The_Component.27s_CSS_classes&quot;&gt;&lt;/a&gt;&lt;h4&gt; &lt;span class=&quot;mw-headline&quot;&gt;The Component's CSS classes&lt;/span&gt;&lt;/h4&gt;
&lt;p&gt;Since the Component uses &lt;b&gt;2 CSS classes&lt;/b&gt;, it is possible to use the Component's &lt;b&gt;Styles property&lt;/b&gt; to store their names, as shown below:
&lt;/p&gt;
&lt;pre class=&quot;javascript&quot; style=&quot;font-family:monospace;&quot;&gt;Styles&lt;span style=&quot;color: #339933;&quot;&gt;:&lt;/span&gt; &lt;span style=&quot;color: #009900;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;	testComponent&lt;span style=&quot;color: #339933;&quot;&gt;:&lt;/span&gt; &lt;span style=&quot;color: #3366CC;&quot;&gt;'test-component'&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt;&lt;br /&gt;	message&lt;span style=&quot;color: #339933;&quot;&gt;:&lt;/span&gt; &lt;span style=&quot;color: #3366CC;&quot;&gt;'test-component-message'&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;/pre&gt;
&lt;p&gt;Those classes will be defined in the Component's CSS file, &lt;b&gt;testcomponent.css&lt;/b&gt;. Some simple rules are the following:
&lt;/p&gt;
&lt;pre class=&quot;css&quot; style=&quot;font-family:monospace;&quot;&gt;&lt;span style=&quot;color: #6666ff;&quot;&gt;.test-component&lt;/span&gt; &lt;span style=&quot;color: #00AA00;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;	&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;margin&lt;/span&gt;&lt;span style=&quot;color: #00AA00;&quot;&gt;:&lt;/span&gt; &lt;span style=&quot;color: #933;&quot;&gt;.5em&lt;/span&gt;&lt;span style=&quot;color: #00AA00;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;	&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;padding&lt;/span&gt;&lt;span style=&quot;color: #00AA00;&quot;&gt;:&lt;/span&gt; &lt;span style=&quot;color: #933;&quot;&gt;.5em&lt;/span&gt;&lt;span style=&quot;color: #00AA00;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;	&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;background&lt;/span&gt;&lt;span style=&quot;color: #00AA00;&quot;&gt;:&lt;/span&gt; &lt;span style=&quot;color: #cc00cc;&quot;&gt;#dddddd&lt;/span&gt;&lt;span style=&quot;color: #00AA00;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;	&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;border&lt;/span&gt;&lt;span style=&quot;color: #00AA00;&quot;&gt;:&lt;/span&gt; &lt;span style=&quot;color: #933;&quot;&gt;4px&lt;/span&gt; &lt;span style=&quot;color: #993333;&quot;&gt;solid&lt;/span&gt; &lt;span style=&quot;color: #cc00cc;&quot;&gt;#aaaaaa&lt;/span&gt;&lt;span style=&quot;color: #00AA00;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #00AA00;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #6666ff;&quot;&gt;.test-component-message&lt;/span&gt; &lt;span style=&quot;color: #00AA00;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;	&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;color&lt;/span&gt;&lt;span style=&quot;color: #00AA00;&quot;&gt;:&lt;/span&gt; &lt;span style=&quot;color: #cc00cc;&quot;&gt;#666666&lt;/span&gt;&lt;span style=&quot;color: #00AA00;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #00AA00;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;/pre&gt;
&lt;a name=&quot;Initializing_the_Component&quot; id=&quot;Initializing_the_Component&quot;&gt;&lt;/a&gt;&lt;h3&gt; &lt;span class=&quot;mw-headline&quot;&gt;Initializing the Component&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;The initialization is actually the &lt;b&gt;most important part of the Component&lt;/b&gt;, as it has to:
&lt;/p&gt;
&lt;ul&gt;&lt;li&gt; &lt;b&gt;initialize the Component's properties&lt;/b&gt;, by using the &lt;b&gt;passed options together with the default ones&lt;/b&gt;. The following code shows how to define some default options (in this case, a default message), and how to add to these options the ones passed to the Component:
&lt;/li&gt;&lt;/ul&gt;
&lt;pre class=&quot;javascript&quot; style=&quot;font-family:monospace;&quot;&gt;&lt;span style=&quot;color: #003366; font-weight: bold;&quot;&gt;var&lt;/span&gt; defaults &lt;span style=&quot;color: #339933;&quot;&gt;=&lt;/span&gt; &lt;span style=&quot;color: #009900;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;	message&lt;span style=&quot;color: #339933;&quot;&gt;:&lt;/span&gt; &lt;span style=&quot;color: #3366CC;&quot;&gt;&amp;quot;Hello World!&amp;quot;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;instance.&lt;span style=&quot;color: #660066;&quot;&gt;options&lt;/span&gt; &lt;span style=&quot;color: #339933;&quot;&gt;=&lt;/span&gt; jQuery.&lt;span style=&quot;color: #660066;&quot;&gt;extend&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;defaults&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt; options&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;/pre&gt;
&lt;ul&gt;&lt;li&gt; &lt;b&gt;get a reference to the Component's placeholder DOM element&lt;/b&gt;:
&lt;/li&gt;&lt;/ul&gt;
&lt;pre class=&quot;javascript&quot; style=&quot;font-family:monospace;&quot;&gt;instance.&lt;span style=&quot;color: #660066;&quot;&gt;element&lt;/span&gt; &lt;span style=&quot;color: #339933;&quot;&gt;=&lt;/span&gt; jQuery&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt; instance.&lt;span style=&quot;color: #660066;&quot;&gt;options&lt;/span&gt;.&lt;span style=&quot;color: #660066;&quot;&gt;element&lt;/span&gt; &lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;/pre&gt;
&lt;ul&gt;&lt;li&gt; call the &lt;b&gt;Widget super-class initialization function&lt;/b&gt;:
&lt;/li&gt;&lt;/ul&gt;
&lt;pre class=&quot;javascript&quot; style=&quot;font-family:monospace;&quot;&gt;instance._super.&lt;span style=&quot;color: #660066;&quot;&gt;apply&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;instance&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt; &lt;span style=&quot;color: #009900;&quot;&gt;&amp;#91;&lt;/span&gt;instance.&lt;span style=&quot;color: #660066;&quot;&gt;options&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#93;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;/pre&gt;
&lt;ul&gt;&lt;li&gt; &lt;b&gt;register the component&lt;/b&gt;. This is done with a call to the &quot;registerData()&quot; function:
&lt;/li&gt;&lt;/ul&gt;
&lt;pre class=&quot;javascript&quot; style=&quot;font-family:monospace;&quot;&gt;instance.&lt;span style=&quot;color: #660066;&quot;&gt;registerData&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #3366CC;&quot;&gt;&amp;quot;testcomponent&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;/pre&gt;
&lt;ul&gt;&lt;li&gt; &lt;b&gt;create the DOM structure&lt;/b&gt;. This is usually done from a separate function (usually the &quot;_create&quot; one), so the initialize() function just calls that:
&lt;/li&gt;&lt;/ul&gt;
&lt;pre class=&quot;javascript&quot; style=&quot;font-family:monospace;&quot;&gt;instance._create&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;/pre&gt;
&lt;ul&gt;&lt;li&gt; &lt;b&gt;fire the 'create' callback&lt;/b&gt;, to notify the finish of the initialization process:
&lt;/li&gt;&lt;/ul&gt;
&lt;pre class=&quot;javascript&quot; style=&quot;font-family:monospace;&quot;&gt;instance.&lt;span style=&quot;color: #660066;&quot;&gt;fireCallback&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #3366CC;&quot;&gt;'create'&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;/pre&gt;
&lt;p&gt;The complete initialize() function is the following one:
&lt;/p&gt;
&lt;pre class=&quot;javascript&quot; style=&quot;font-family:monospace;&quot;&gt;initialize&lt;span style=&quot;color: #339933;&quot;&gt;:&lt;/span&gt; &lt;span style=&quot;color: #003366; font-weight: bold;&quot;&gt;function&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;options&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #009900;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;	&lt;span style=&quot;color: #003366; font-weight: bold;&quot;&gt;var&lt;/span&gt; instance &lt;span style=&quot;color: #339933;&quot;&gt;=&lt;/span&gt; &lt;span style=&quot;color: #000066; font-weight: bold;&quot;&gt;this&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;	&lt;span style=&quot;color: #003366; font-weight: bold;&quot;&gt;var&lt;/span&gt; defaults &lt;span style=&quot;color: #339933;&quot;&gt;=&lt;/span&gt; &lt;span style=&quot;color: #009900;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;		message&lt;span style=&quot;color: #339933;&quot;&gt;:&lt;/span&gt; &lt;span style=&quot;color: #3366CC;&quot;&gt;&amp;quot;Hello World!&amp;quot;&lt;/span&gt;&lt;br /&gt;	&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;	instance.&lt;span style=&quot;color: #660066;&quot;&gt;options&lt;/span&gt; &lt;span style=&quot;color: #339933;&quot;&gt;=&lt;/span&gt; jQuery.&lt;span style=&quot;color: #660066;&quot;&gt;extend&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;defaults&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt; options&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;	instance.&lt;span style=&quot;color: #660066;&quot;&gt;element&lt;/span&gt; &lt;span style=&quot;color: #339933;&quot;&gt;=&lt;/span&gt; jQuery&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt; instance.&lt;span style=&quot;color: #660066;&quot;&gt;options&lt;/span&gt;.&lt;span style=&quot;color: #660066;&quot;&gt;element&lt;/span&gt; &lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;	instance._super.&lt;span style=&quot;color: #660066;&quot;&gt;apply&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;instance&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt; &lt;span style=&quot;color: #009900;&quot;&gt;&amp;#91;&lt;/span&gt;instance.&lt;span style=&quot;color: #660066;&quot;&gt;options&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#93;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;	instance.&lt;span style=&quot;color: #660066;&quot;&gt;registerData&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #3366CC;&quot;&gt;&amp;quot;testcomponent&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;	instance._create&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;	instance.&lt;span style=&quot;color: #660066;&quot;&gt;fireCallback&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #3366CC;&quot;&gt;'create'&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;/pre&gt;
&lt;a name=&quot;Create_the_DOM_structure&quot; id=&quot;Create_the_DOM_structure&quot;&gt;&lt;/a&gt;&lt;h3&gt; &lt;span class=&quot;mw-headline&quot;&gt;Create the DOM structure&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;Let's take back the Component's DOM structure: it is now necessary to create it via JavaScript, defining the necessary event handlers, and using the Styles property to assign the right CSS class to the various elements. The following code shows how this can be performed:
&lt;/p&gt;
&lt;pre class=&quot;text&quot; style=&quot;font-family:monospace;&quot;&gt;_create: function() {&lt;br /&gt;	var instance = this;&lt;br /&gt;	var options = instance.options;&lt;br /&gt;	var element = instance.element;&lt;br /&gt;	var Styles = instance.Styles;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;	element.each(function(i, el) {&lt;br /&gt;		Nokia.util.addClass(el, Styles.testComponent);&lt;br /&gt;	});&lt;br /&gt;&amp;nbsp;&lt;br /&gt;	instance.hello = Nokia.dom.parseHTML('&amp;lt;p class=&amp;quot;' + Styles.message + '&amp;quot;&amp;gt;' + this.options.message + '&amp;lt;/p&amp;gt;');&lt;br /&gt;&amp;nbsp;&lt;br /&gt;	element.append(instance.hello);&lt;br /&gt;&amp;nbsp;&lt;br /&gt;}&lt;/pre&gt;
&lt;p&gt;In the above code, it is possible to see how to use the Component's &quot;options&quot; property to retrieve the message to display.
&lt;/p&gt;
&lt;a name=&quot;Add_some_interactivity_to_the_Component&quot; id=&quot;Add_some_interactivity_to_the_Component&quot;&gt;&lt;/a&gt;&lt;h3&gt; &lt;span class=&quot;mw-headline&quot;&gt;Add some interactivity to the Component&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;In order to add some interactivity, let's define &lt;b&gt;a function that allows to change the displayed message&lt;/b&gt;. This function is visible below:
&lt;/p&gt;
&lt;pre class=&quot;text&quot; style=&quot;font-family:monospace;&quot;&gt;setValue: function(html)&lt;br /&gt;{&lt;br /&gt;	var instance = this;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;	instance.hello.html(html);&lt;br /&gt;}&lt;/pre&gt;
&lt;a name=&quot;Using_the_component&quot; id=&quot;Using_the_component&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;Using the component&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;The component is now &lt;b&gt;ready for use&lt;/b&gt;, and to actually create a TestComponent within a Web Runtime widget the following steps have to be performed:
&lt;/p&gt;
&lt;ul&gt;&lt;li&gt; &lt;b&gt;Include the Guarana UI CSS dependencies&lt;/b&gt; (as explained here: &lt;a href=&quot;/index.php/GuaranaUI-QuickStart&quot; title=&quot;GuaranaUI-QuickStart&quot;&gt;GuaranaUI-QuickStart&lt;/a&gt;):
&lt;/li&gt;&lt;/ul&gt;
&lt;pre class=&quot;html4strict&quot; style=&quot;font-family:monospace;&quot;&gt;&lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;&amp;lt;!-- Themeroller CSS --&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;lt;&lt;a href=&quot;http://december.com/html/4/element/link.html&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;link&lt;/span&gt;&lt;/a&gt; &lt;span style=&quot;color: #000066;&quot;&gt;rel&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;stylesheet&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #000066;&quot;&gt;href&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;themes/themeroller/default-theme/Themeroller.css&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #000066;&quot;&gt;type&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;text/css&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #000066;&quot;&gt;media&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;screen&amp;quot;&lt;/span&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;&amp;lt;!-- Specific Theme/Resolution CSS --&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;lt;&lt;a href=&quot;http://december.com/html/4/element/link.html&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;link&lt;/span&gt;&lt;/a&gt; &lt;span style=&quot;color: #000066;&quot;&gt;rel&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;stylesheet&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #000066;&quot;&gt;href&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;themes/nokia/ext-theme/default/360x640/custom.css&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #000066;&quot;&gt;type&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;text/css&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #000066;&quot;&gt;media&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;screen&amp;quot;&lt;/span&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;
&lt;ul&gt;&lt;li&gt; Include the &lt;b&gt;JavaScript dependencies&lt;/b&gt;:
&lt;/li&gt;&lt;/ul&gt;
&lt;pre class=&quot;html4strict&quot; style=&quot;font-family:monospace;&quot;&gt;&lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;&amp;lt;!-- jQuery file --&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;lt;&lt;a href=&quot;http://december.com/html/4/element/script.html&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;script&lt;/span&gt;&lt;/a&gt; &lt;span style=&quot;color: #000066;&quot;&gt;src&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;/lib/jquery/jQuery.js&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #000066;&quot;&gt;type&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;text/javascript&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #000066;&quot;&gt;charset&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;utf-8&amp;quot;&lt;/span&gt;&amp;gt;&amp;lt;&lt;span style=&quot;color: #66cc66;&quot;&gt;/&lt;/span&gt;&lt;a href=&quot;http://december.com/html/4/element/script.html&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;script&lt;/span&gt;&lt;/a&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;&amp;lt;!-- Guarana file --&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;lt;&lt;a href=&quot;http://december.com/html/4/element/script.html&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;script&lt;/span&gt;&lt;/a&gt; &lt;span style=&quot;color: #000066;&quot;&gt;src&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;/lib/Guarana.js&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #000066;&quot;&gt;type&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;text/javascript&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #000066;&quot;&gt;charset&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;utf-8&amp;quot;&lt;/span&gt;&amp;gt;&amp;lt;&lt;span style=&quot;color: #66cc66;&quot;&gt;/&lt;/span&gt;&lt;a href=&quot;http://december.com/html/4/element/script.html&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;script&lt;/span&gt;&lt;/a&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;
&lt;ul&gt;&lt;li&gt; Define a &lt;b&gt;placeholder DOM element&lt;/b&gt; in the widget's HTML code:
&lt;/li&gt;&lt;/ul&gt;
&lt;pre class=&quot;html4strict&quot; style=&quot;font-family:monospace;&quot;&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;lt;&lt;a href=&quot;http://december.com/html/4/element/div.html&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;div&lt;/span&gt;&lt;/a&gt; &lt;span style=&quot;color: #000066;&quot;&gt;id&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;testcomponent01&amp;quot;&lt;/span&gt;&amp;gt;&amp;lt;&lt;span style=&quot;color: #66cc66;&quot;&gt;/&lt;/span&gt;&lt;a href=&quot;http://december.com/html/4/element/div.html&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;div&lt;/span&gt;&lt;/a&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;
&lt;ul&gt;&lt;li&gt; Call the &lt;b&gt;&quot;Nokia.use&quot; function&lt;/b&gt; to tell Guarana UI that you need to use the new component. Details about the &lt;b&gt;Nokia Loader&lt;/b&gt; are available here: &lt;a href=&quot;/index.php/Nokia_Loader&quot; title=&quot;Nokia Loader&quot;&gt;Nokia Loader&lt;/a&gt;. Before calling the Nokia Loader, it is necessary to &lt;b&gt;define the 2 Guarana UI PATH variables&lt;/b&gt;, to specify where its folders are located:
&lt;/li&gt;&lt;/ul&gt;
&lt;pre class=&quot;javascript&quot; style=&quot;font-family:monospace;&quot;&gt;&lt;span style=&quot;color: #339933;&quot;&gt;&amp;lt;&lt;/span&gt;script&lt;span style=&quot;color: #339933;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;NOKIA_PATH_JAVASCRIPT &lt;span style=&quot;color: #339933;&quot;&gt;=&lt;/span&gt; &lt;span style=&quot;color: #3366CC;&quot;&gt;'lib/'&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;NOKIA_PATH_STYLE_ROOT &lt;span style=&quot;color: #339933;&quot;&gt;=&lt;/span&gt; &lt;span style=&quot;color: #3366CC;&quot;&gt;'themes/nokia/base/'&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;Nokia.&lt;span style=&quot;color: #003366; font-weight: bold;&quot;&gt;use&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #3366CC;&quot;&gt;'testcomponent'&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt; init&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #339933;&quot;&gt;&amp;lt;/&lt;/span&gt;script&lt;span style=&quot;color: #339933;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;
&lt;ul&gt;&lt;li&gt; When the Component resources will be available, the init() function is called. Within the init() function, it is so possible to &lt;b&gt;create an instance of the newly created TestComponent&lt;/b&gt;:
&lt;/li&gt;&lt;/ul&gt;
&lt;pre class=&quot;javascript&quot; style=&quot;font-family:monospace;&quot;&gt;&lt;span style=&quot;color: #003366; font-weight: bold;&quot;&gt;function&lt;/span&gt; init&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#123;&lt;/span&gt;	&lt;br /&gt;    &lt;span style=&quot;color: #003366; font-weight: bold;&quot;&gt;var&lt;/span&gt; testComponent1 &lt;span style=&quot;color: #339933;&quot;&gt;=&lt;/span&gt; &lt;span style=&quot;color: #003366; font-weight: bold;&quot;&gt;new&lt;/span&gt; Nokia.&lt;span style=&quot;color: #660066;&quot;&gt;TestComponent&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;        element&lt;span style=&quot;color: #339933;&quot;&gt;:&lt;/span&gt; &lt;span style=&quot;color: #3366CC;&quot;&gt;'#testcomponent01'&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt;&lt;br /&gt;        message&lt;span style=&quot;color: #339933;&quot;&gt;:&lt;/span&gt; &lt;span style=&quot;color: #3366CC;&quot;&gt;&amp;quot;I'm a custom message!&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt;&lt;br /&gt;        create&lt;span style=&quot;color: #339933;&quot;&gt;:&lt;/span&gt; &lt;span style=&quot;color: #003366; font-weight: bold;&quot;&gt;function&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #009900;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;            &lt;span style=&quot;color: #000066;&quot;&gt;alert&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #3366CC;&quot;&gt;'test component created'&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;        &lt;span style=&quot;color: #009900;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;    &lt;span style=&quot;color: #009900;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;/pre&gt;
&lt;p&gt;If all goes well, an alert message with the &quot;test component created&quot; message should be displayed, just after the Component creation.
&lt;/p&gt;
&lt;a name=&quot;Finalize_the_Component&quot; id=&quot;Finalize_the_Component&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;Finalize the Component&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;Now that the Component is ready, it is possible to &lt;b&gt;move its resources back to the Guarana UI Full Package&lt;/b&gt; folders, overwriting the empty files created at the beginning.
&lt;/p&gt;&lt;p&gt;&lt;b&gt;Note:&lt;/b&gt; if the &lt;b&gt;Component also uses images&lt;/b&gt; (e.g.: referenced by the Component's CSS file), it is necessary to move them also to the Guarana UI folders. In case of images, &lt;b&gt;the folder to use is the &quot;&amp;lt;GUARANA_BASE_PATH&amp;gt;/themes/nokia/base/images/&quot;&lt;/b&gt;.
&lt;/p&gt;&lt;p&gt;Once the Component's files are copied back to the Guarana UI folders, it is possible to launch a new build process, that will &lt;b&gt;optimize and compress the Component's code&lt;/b&gt;. Done that, everything is ready to use and distribute the new Component.
&lt;/p&gt;
&lt;a name=&quot;Links_and_Resources&quot; id=&quot;Links_and_Resources&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;Links and Resources&lt;/span&gt;&lt;/h2&gt;
&lt;ul&gt;&lt;li&gt; &lt;a href=&quot;/index.php/Guarana_UI:_a_jQuery-Based_UI_Library_for_Nokia_WRT&quot; title=&quot;Guarana UI: a jQuery-Based UI Library for Nokia WRT&quot;&gt;Guarana UI: a jQuery-Based UI Library for Nokia WRT&lt;/a&gt;
&lt;/li&gt;&lt;li&gt; &lt;a href=&quot;/index.php/GuaranaUI-Documentation&quot; title=&quot;GuaranaUI-Documentation&quot;&gt;GuaranaUI-Documentation&lt;/a&gt;
&lt;/li&gt;&lt;li&gt; &lt;a href=&quot;/index.php/GuaranaUI-Overview&quot; title=&quot;GuaranaUI-Overview&quot;&gt;GuaranaUI-Overview&lt;/a&gt;
&lt;/li&gt;&lt;li&gt; &lt;a href=&quot;http://www.jappit.com/m/guaranabrowser/#guarana_testcomponent&quot; class=&quot;external text&quot; title=&quot;http://www.jappit.com/m/guaranabrowser/#guarana_testcomponent&quot; rel=&quot;nofollow&quot;&gt;Guarana UI online Components Browser&lt;/a&gt;
&lt;/li&gt;&lt;/ul&gt;
</description>
			<pubDate>Fri, 20 Nov 2009 22:07:00 GMT</pubDate>			<dc:creator>Jappit</dc:creator>			<comments>http://wiki.forum.nokia.com/index.php/Talk:How_to_create_a_new_Component_for_the_Guarana_UI_Library</comments>		</item>
		<item>
			<title>KIS001490 - HTTP Filter doesn't receive events during a DM session</title>
			<link>http://wiki.forum.nokia.com/index.php/KIS001490_-_HTTP_Filter_doesn%27t_receive_events_during_a_DM_session</link>
			<description>&lt;p&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;div align=&quot;right&quot;&gt;&lt;a href=&quot;/index.php/File:KBKI_Header.gif&quot; class=&quot;image&quot; title=&quot;image:KBKI_Header.gif&quot;&gt;&lt;img alt=&quot;image:KBKI_Header.gif&quot; src=&quot;http://www.forum.nokia.com/piazza/wiki/images/4/46/KBKI_Header.gif&quot; width=&quot;708&quot; height=&quot;71&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;&lt;a href=&quot;/index.php/KnowledgeBase&quot; title=&quot;KnowledgeBase&quot;&gt; Knowledge Base Home &lt;/a&gt;&lt;/div&gt;
&lt;p&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;table style=&quot;background:#eceff2&quot; width=&quot;660px&quot; border=&quot;1&quot; cellpadding=&quot;5&quot; cellspacing=&quot;0&quot;&gt;

&lt;tr&gt;
&lt;td&gt;&lt;b&gt;ID&lt;/b&gt; &lt;/td&gt;&lt;td&gt;KIS001490
&lt;/td&gt;&lt;td&gt;&lt;b&gt;Creation date&lt;/b&gt; &lt;/td&gt;&lt;td&gt; November 20, 2009
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;b&gt;Platform&lt;/b&gt; &lt;/td&gt;&lt;td&gt; S60 3rd Edition FP1 &amp;amp; FP2
&lt;/td&gt;&lt;td&gt;&lt;b&gt;Devices&lt;/b&gt; &lt;/td&gt;&lt;td&gt; Tested on: Nokia N79, E71, E75
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;b&gt;Category&lt;/b&gt; &lt;/td&gt;&lt;td&gt; Symbian C++
&lt;/td&gt;&lt;td&gt;&lt;b&gt;Subcategory&lt;/b&gt; &lt;/td&gt;&lt;td&gt; Device Management
&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;
&lt;p&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;table style=&quot;background:#eceff2&quot; width=&quot;660px&quot; border=&quot;1&quot; cellpadding=&quot;5&quot; cellspacing=&quot;0&quot;&gt;

&lt;tr&gt;
&lt;td&gt;&lt;b&gt;Keywords (APIs, classes, methods, functions)&lt;/b&gt;:
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;a name=&quot;Description&quot; id=&quot;Description&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt; Description &lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;An HTTP Filter is an ECom plug-in which is loaded automatically during all HTTP sessions on the device. It receives all the events of the session. However, the filter doesn't receive the HTTP events that occur during Device Management client-server interactions.
&lt;/p&gt;
&lt;a name=&quot;How_to_reproduce&quot; id=&quot;How_to_reproduce&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt; How to reproduce &lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;Install an HTTP Filter which can receive all the HTTP events that occur in a session. Whenever a DM client-server HTTP transaction takes place, you can see that the &lt;tt&gt;MHFRunL()&lt;/tt&gt; function of the filter, used for receiving the events, is not invoked.
&lt;/p&gt;
&lt;a name=&quot;Solution&quot; id=&quot;Solution&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt; Solution &lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;No known solution.
&lt;/p&gt;</description>
			<pubDate>Fri, 20 Nov 2009 13:54:49 GMT</pubDate>			<dc:creator>Forum Nokia KB</dc:creator>			<comments>http://wiki.forum.nokia.com/index.php/Talk:KIS001490_-_HTTP_Filter_doesn%27t_receive_events_during_a_DM_session</comments>		</item>
		<item>
			<title>TSS001489 - Send data using RTP/RTCP API</title>
			<link>http://wiki.forum.nokia.com/index.php/TSS001489_-_Send_data_using_RTP/RTCP_API</link>
			<description>&lt;p&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;div align=&quot;right&quot;&gt;&lt;a href=&quot;/index.php/File:KBTS_Header.gif&quot; class=&quot;image&quot; title=&quot;image:KBTS_Header.gif&quot;&gt;&lt;img alt=&quot;image:KBTS_Header.gif&quot; src=&quot;http://www.forum.nokia.com/piazza/wiki/images/3/31/KBTS_Header.gif&quot; width=&quot;770&quot; height=&quot;76&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;&lt;a href=&quot;/index.php/KnowledgeBase&quot; title=&quot;KnowledgeBase&quot;&gt; Knowledge Base Home &lt;/a&gt;&lt;/div&gt;
&lt;p&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;table style=&quot;background:#eceff2&quot; width=&quot;660px&quot; border=&quot;1&quot; cellpadding=&quot;5&quot; cellspacing=&quot;0&quot;&gt;

&lt;tr&gt;
&lt;td&gt;&lt;b&gt;ID&lt;/b&gt; &lt;/td&gt;&lt;td&gt;TSS001489
&lt;/td&gt;&lt;td&gt;&lt;b&gt;Creation date&lt;/b&gt; &lt;/td&gt;&lt;td&gt; November 20, 2009
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;b&gt;Platform&lt;/b&gt; &lt;/td&gt;&lt;td&gt; S60 3rd Edition &amp;amp; 5th Edition
&lt;/td&gt;&lt;td&gt;&lt;b&gt;Devices&lt;/b&gt; &lt;/td&gt;&lt;td&gt; Tested on: Nokia N79, Nokia N97
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;b&gt;Category&lt;/b&gt; &lt;/td&gt;&lt;td&gt; Symbian C++
&lt;/td&gt;&lt;td&gt;&lt;b&gt;Subcategory&lt;/b&gt; &lt;/td&gt;&lt;td&gt; Connectivity
&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;
&lt;p&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;table style=&quot;background:#eceff2&quot; width=&quot;660px&quot; border=&quot;1&quot; cellpadding=&quot;5&quot; cellspacing=&quot;0&quot;&gt;

&lt;tr&gt;
&lt;td&gt;&lt;b&gt;Keywords (APIs, classes, methods, functions)&lt;/b&gt;: RTCP, RTP, streaming
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;a name=&quot;Overview&quot; id=&quot;Overview&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;Overview&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;The RTP/RTCP API available in the SDK API Plug-in pack can be used for delivering different types of data between devices. The Real-time Transport Protocol(RTP) is used to send or receive the data and the RTP Control Protocol(RTCP) provides out-of-band statistics and control information for an RTP flow.
&lt;/p&gt;
&lt;a name=&quot;Description&quot; id=&quot;Description&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt; Description &lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;This article demonstrates how to enable RTCP and register an observer for receiving the Receiver report(RR) packet in an RTP session. The receiver report informs the sender about the quality of service. The other RTCP messages that can be exchanged are Sender report(SR), Source description(SDES), End of participation (BYE), and Application-specific message (APP). 
&lt;/p&gt;&lt;p&gt;Since RTCP streaming is used during an RTP flow, more information on starting a RTP session is given in the following link: &lt;a href=&quot;http://wiki.forum.nokia.com/index.php/S60_RTP/RTC_API&quot; class=&quot;external free&quot; title=&quot;http://wiki.forum.nokia.com/index.php/S60_RTP/RTC_API&quot; rel=&quot;nofollow&quot;&gt;http://wiki.forum.nokia.com/index.php/S60_RTP/RTC_API&lt;/a&gt;
&lt;/p&gt;
&lt;a name=&quot;Solution&quot; id=&quot;Solution&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt; Solution &lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;&lt;b&gt;Header Files:&lt;/b&gt;
&lt;/p&gt;
&lt;pre class=&quot;text&quot; style=&quot;font-family:monospace;&quot;&gt;#include &amp;lt;rtpapi.h&amp;gt; &lt;br /&gt; #include &amp;lt;rtpheader.h&amp;gt;&lt;br /&gt; #include &amp;lt;RtpDef.h&amp;gt;&lt;/pre&gt;
&lt;p&gt;&lt;b&gt;Link Against:&lt;/b&gt;
&lt;/p&gt;
&lt;pre class=&quot;text&quot; style=&quot;font-family:monospace;&quot;&gt;LIBRARY  rtpservice.lib&lt;/pre&gt;
&lt;p&gt;&lt;b&gt;Enabling RTCP and registering an observer in an RTP session&lt;/b&gt;
&lt;/p&gt;
&lt;pre class=&quot;text&quot; style=&quot;font-family:monospace;&quot;&gt;iRtpId = iRtpSession-&amp;gt;CreateSessionL( sessionParam,&lt;br /&gt;                                       localPort,&lt;br /&gt;                                       ETrue,	//enable RTCP&lt;br /&gt;                                       NULL );	//Set default RTCP parameters&lt;br /&gt; // Set remote RTCP address&lt;br /&gt; TInt  err1 = iRtpSession-&amp;gt;SetRemoteRtcpAddress(iRtpId, addr2 );&amp;lt;br&amp;gt;&lt;br /&gt; //Register for RTCP callback&lt;br /&gt; err1 = iRtpSession-&amp;gt;RegisterRtcpObserver(iRtpId, *this);&lt;/pre&gt;
&lt;p&gt;&lt;b&gt;Sending a Receiver Report(RR) to sender:&lt;/b&gt;
&lt;/p&gt;
&lt;pre class=&quot;text&quot; style=&quot;font-family:monospace;&quot;&gt;iRtpSession-&amp;gt;SendRtcpRrPacket(aStreamId); //aStreamId is the TRtpId &lt;br /&gt;                                           //of a received RTP packet.&lt;/pre&gt;
&lt;p&gt;&lt;b&gt;Receiving the RTCP packet:&lt;/b&gt;
&lt;/p&gt;
&lt;pre class=&quot;text&quot; style=&quot;font-family:monospace;&quot;&gt;void CRTPEngine::RrReceived( TRtpId aStreamId, TRtpSSRC aSSRC )&lt;br /&gt; { &lt;br /&gt;  //Log the received parameters&lt;br /&gt; }&lt;/pre&gt;
&lt;p&gt;&lt;b&gt;Unregistering the RTCP callback and closing the session:&lt;/b&gt;
&lt;/p&gt;
&lt;pre class=&quot;text&quot; style=&quot;font-family:monospace;&quot;&gt;iRtpSession-&amp;gt;UnregisterRtcpObserver(iRtpId);&lt;br /&gt; iRtpSession-&amp;gt;CloseSession(iRtpId);&lt;/pre&gt;
&lt;a name=&quot;Example_Application&quot; id=&quot;Example_Application&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt; Example Application &lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;This application sends data packets using RTP and receives feedback about the sent packets using RTCP.
&lt;a href=&quot;http://wiki.forum.nokia.com/index.php/File:RTPTest.zip&quot; class=&quot;external free&quot; title=&quot;http://wiki.forum.nokia.com/index.php/File:RTPTest.zip&quot; rel=&quot;nofollow&quot;&gt;http://wiki.forum.nokia.com/index.php/File:RTPTest.zip&lt;/a&gt;
&lt;/p&gt;</description>
			<pubDate>Fri, 20 Nov 2009 13:42:36 GMT</pubDate>			<dc:creator>Forum Nokia KB</dc:creator>			<comments>http://wiki.forum.nokia.com/index.php/Talk:TSS001489_-_Send_data_using_RTP/RTCP_API</comments>		</item>
		<item>
			<title>KIS001488 - Feature Discovery returns invalid value for keyboard support on Nokia 5800 XpressMusic</title>
			<link>http://wiki.forum.nokia.com/index.php/KIS001488_-_Feature_Discovery_returns_invalid_value_for_keyboard_support_on_Nokia_5800_XpressMusic</link>
			<description>&lt;p&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;div align=&quot;right&quot;&gt;&lt;a href=&quot;/index.php/File:KBKI_Header.gif&quot; class=&quot;image&quot; title=&quot;image:KBKI_Header.gif&quot;&gt;&lt;img alt=&quot;image:KBKI_Header.gif&quot; src=&quot;http://www.forum.nokia.com/piazza/wiki/images/4/46/KBKI_Header.gif&quot; width=&quot;708&quot; height=&quot;71&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;&lt;a href=&quot;/index.php/KnowledgeBase&quot; title=&quot;KnowledgeBase&quot;&gt; Knowledge Base Home &lt;/a&gt;&lt;/div&gt;
&lt;p&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;table style=&quot;background:#eceff2&quot; width=&quot;660px&quot; border=&quot;1&quot; cellpadding=&quot;5&quot; cellspacing=&quot;0&quot;&gt;

&lt;tr&gt;
&lt;td&gt;&lt;b&gt;ID&lt;/b&gt; &lt;/td&gt;&lt;td&gt;KIS001488
&lt;/td&gt;&lt;td&gt;&lt;b&gt;Creation date&lt;/b&gt; &lt;/td&gt;&lt;td&gt; November 20, 2009
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;b&gt;Platform&lt;/b&gt; &lt;/td&gt;&lt;td&gt; S60 5th Edition
&lt;/td&gt;&lt;td&gt;&lt;b&gt;Devices&lt;/b&gt; &lt;/td&gt;&lt;td&gt; Nokia 5800 XpressMusic
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;b&gt;Category&lt;/b&gt; &lt;/td&gt;&lt;td&gt; Symbian C++
&lt;/td&gt;&lt;td&gt;&lt;b&gt;Subcategory&lt;/b&gt; &lt;/td&gt;&lt;td&gt; UI, Usability
&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;
&lt;p&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;table style=&quot;background:#eceff2&quot; width=&quot;660px&quot; border=&quot;1&quot; cellpadding=&quot;5&quot; cellspacing=&quot;0&quot;&gt;

&lt;tr&gt;
&lt;td&gt;&lt;b&gt;Keywords (APIs, classes, methods, functions)&lt;/b&gt;: CFeatureDiscovery, KFeatureIdQwertyInput
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;a name=&quot;Description&quot; id=&quot;Description&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;Description&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;The &lt;a href=&quot;http://library.forum.nokia.com/topic/S60_5th_Edition_Cpp_Developers_Library/GUID-759FBC7F-5384-4487-8457-A8D4B76F6AA6/html/classCFeatureDiscovery.html&quot; class=&quot;external text&quot; title=&quot;http://library.forum.nokia.com/topic/S60_5th_Edition_Cpp_Developers_Library/GUID-759FBC7F-5384-4487-8457-A8D4B76F6AA6/html/classCFeatureDiscovery.html&quot; rel=&quot;nofollow&quot;&gt;Feature Discovery API&lt;/a&gt; provides methods for querying supported features on an S60 device.
&lt;/p&gt;&lt;p&gt;The following line of code can be used for checking if a device has a QWERTY keyboard:
&lt;/p&gt;
&lt;pre class=&quot;cpp&quot; style=&quot;font-family:monospace;&quot;&gt;TBool isSupported &lt;span style=&quot;color: #000080;&quot;&gt;=&lt;/span&gt; CFeatureDiscovery&lt;span style=&quot;color: #008080;&quot;&gt;::&lt;/span&gt;&lt;span style=&quot;color: #007788;&quot;&gt;IsFeatureSupportedL&lt;/span&gt;&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#40;&lt;/span&gt; KFeatureIdQwertyInput &lt;span style=&quot;color: #008000;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #008080;&quot;&gt;;&lt;/span&gt;&lt;/pre&gt;
&lt;p&gt;This code returns &lt;tt&gt;ETrue&lt;/tt&gt; for Nokia 5800 XpressMusic, even though the device has no physical keyboard.
&lt;/p&gt;
&lt;a name=&quot;Solution&quot; id=&quot;Solution&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;Solution&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;No solution available.
&lt;/p&gt;</description>
			<pubDate>Fri, 20 Nov 2009 13:08:35 GMT</pubDate>			<dc:creator>Forum Nokia KB</dc:creator>			<comments>http://wiki.forum.nokia.com/index.php/Talk:KIS001488_-_Feature_Discovery_returns_invalid_value_for_keyboard_support_on_Nokia_5800_XpressMusic</comments>		</item>
		<item>
			<title>KIJ001487 - Scrollbar track tap may crash eSWT MIDlet with ListView</title>
			<link>http://wiki.forum.nokia.com/index.php/KIJ001487_-_Scrollbar_track_tap_may_crash_eSWT_MIDlet_with_ListView</link>
			<description>&lt;p&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;div align=&quot;right&quot;&gt;&lt;a href=&quot;/index.php/File:KBKI_Header.gif&quot; class=&quot;image&quot; title=&quot;image:KBKI_Header.gif&quot;&gt;&lt;img alt=&quot;image:KBKI_Header.gif&quot; src=&quot;http://www.forum.nokia.com/piazza/wiki/images/4/46/KBKI_Header.gif&quot; width=&quot;708&quot; height=&quot;71&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;&lt;a href=&quot;/index.php/KnowledgeBase&quot; title=&quot;KnowledgeBase&quot;&gt; Knowledge Base Home &lt;/a&gt;&lt;/div&gt;
&lt;p&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;table style=&quot;background:#eceff2&quot; width=&quot;660px&quot; border=&quot;1&quot; cellpadding=&quot;5&quot; cellspacing=&quot;0&quot;&gt;

&lt;tr&gt;
&lt;td&gt;&lt;b&gt;ID&lt;/b&gt; &lt;/td&gt;&lt;td&gt;KIJ001487
&lt;/td&gt;&lt;td&gt;&lt;b&gt;Creation date&lt;/b&gt; &lt;/td&gt;&lt;td&gt; November 20, 2009
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;b&gt;Platform&lt;/b&gt; &lt;/td&gt;&lt;td&gt; S60 5th Edition
&lt;/td&gt;&lt;td&gt;&lt;b&gt;Devices&lt;/b&gt; &lt;/td&gt;&lt;td&gt; Nokia N97, Nokia 5800 XpressMusic
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;b&gt;Category&lt;/b&gt; &lt;/td&gt;&lt;td&gt; Java ME
&lt;/td&gt;&lt;td&gt;&lt;b&gt;Subcategory&lt;/b&gt; &lt;/td&gt;&lt;td&gt; eSWT API
&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;
&lt;p&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;table style=&quot;background:#eceff2&quot; width=&quot;660px&quot; border=&quot;1&quot; cellpadding=&quot;5&quot; cellspacing=&quot;0&quot;&gt;

&lt;tr&gt;
&lt;td&gt;&lt;b&gt;Keywords (APIs, classes, methods, functions)&lt;/b&gt;: ListView
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;p&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;a name=&quot;Overview&quot; id=&quot;Overview&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;Overview&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;Tapping the scrollbar track area crashes an eSWT MIDlet with ListView.
&lt;/p&gt;
&lt;a name=&quot;Description&quot; id=&quot;Description&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt; Description &lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;ListView is an eSWT API widget that allows the user to select one or more items from a collection of items that can be displayed in a multi-column way with different styles.
&lt;/p&gt;&lt;p&gt;When there are several items available and some of them are not visible on the screen, a scrollbar allows the user to scroll the view to see all the items. On S60 5th Edition's touch-based devices, the user can drag the scrollbar by touching the screen.
&lt;/p&gt;&lt;p&gt;On certain S60 5th devices, when user taps the track area of a scrollbar (without dragging the thumb), the eSWT MIDlet with ListView may crash as result.
&lt;/p&gt;
&lt;a name=&quot;Solution&quot; id=&quot;Solution&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt; Solution &lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;No solution for the Nokia 5800 XpressMusic.
&lt;/p&gt;&lt;p&gt;This issue has been fixed for the Nokia N97, starting with second commercial software releases (v 20.0.019).
&lt;/p&gt;</description>
			<pubDate>Fri, 20 Nov 2009 11:58:18 GMT</pubDate>			<dc:creator>Forum Nokia KB</dc:creator>			<comments>http://wiki.forum.nokia.com/index.php/Talk:KIJ001487_-_Scrollbar_track_tap_may_crash_eSWT_MIDlet_with_ListView</comments>		</item>
		<item>
			<title>KIJ001486 - SortedList with FILTER style not working in eSWT MIDlets</title>
			<link>http://wiki.forum.nokia.com/index.php/KIJ001486_-_SortedList_with_FILTER_style_not_working_in_eSWT_MIDlets</link>
			<description>&lt;p&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;div align=&quot;right&quot;&gt;&lt;a href=&quot;/index.php/File:KBKI_Header.gif&quot; class=&quot;image&quot; title=&quot;image:KBKI_Header.gif&quot;&gt;&lt;img alt=&quot;image:KBKI_Header.gif&quot; src=&quot;http://www.forum.nokia.com/piazza/wiki/images/4/46/KBKI_Header.gif&quot; width=&quot;708&quot; height=&quot;71&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;&lt;a href=&quot;/index.php/KnowledgeBase&quot; title=&quot;KnowledgeBase&quot;&gt; Knowledge Base Home &lt;/a&gt;&lt;/div&gt;
&lt;p&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;table style=&quot;background:#eceff2&quot; width=&quot;660px&quot; border=&quot;1&quot; cellpadding=&quot;5&quot; cellspacing=&quot;0&quot;&gt;

&lt;tr&gt;
&lt;td&gt;&lt;b&gt;ID&lt;/b&gt; &lt;/td&gt;&lt;td&gt;KIJ001486
&lt;/td&gt;&lt;td&gt;&lt;b&gt;Creation date&lt;/b&gt; &lt;/td&gt;&lt;td&gt; November 20, 2009
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;b&gt;Platform&lt;/b&gt; &lt;/td&gt;&lt;td&gt; S60 5th Edition
&lt;/td&gt;&lt;td&gt;&lt;b&gt;Devices&lt;/b&gt; &lt;/td&gt;&lt;td&gt; Nokia N97, Nokia 5800 XpressMusic
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;b&gt;Category&lt;/b&gt; &lt;/td&gt;&lt;td&gt; Java ME
&lt;/td&gt;&lt;td&gt;&lt;b&gt;Subcategory&lt;/b&gt; &lt;/td&gt;&lt;td&gt; eSWT API
&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;
&lt;p&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;table style=&quot;background:#eceff2&quot; width=&quot;660px&quot; border=&quot;1&quot; cellpadding=&quot;5&quot; cellspacing=&quot;0&quot;&gt;

&lt;tr&gt;
&lt;td&gt;&lt;b&gt;Keywords (APIs, classes, methods, functions)&lt;/b&gt;: SortedList, FILTER
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;p&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;a name=&quot;Description&quot; id=&quot;Description&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt; Description &lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;SortedList instances represent a selectable user interface object that displays a sorted list of text items. Using the FILTER style adds a text entry field to the widget which enables the filtering of list items so that fewer items are displayed in the list.
&lt;/p&gt;&lt;p&gt;In S60 5th Edition devices however, the SortedList filter editor cannot be used, as tapping the entry field has no effect.
&lt;/p&gt;
&lt;a name=&quot;How_to_reproduce&quot; id=&quot;How_to_reproduce&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt; How to reproduce &lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;Download and install a test MIDlet (eSWT Showcase) from the Forum Nokia Java Developer's Library:
&lt;/p&gt;&lt;p&gt;&lt;a href=&quot;http://library.forum.nokia.com/index.jsp?topic=/Java_Developers_Library/GUID-660EC670-B7DB-4005-BF2D-411E5C0B3867_overview-d0e99645.html&quot; class=&quot;external free&quot; title=&quot;http://library.forum.nokia.com/index.jsp?topic=/Java_Developers_Library/GUID-660EC670-B7DB-4005-BF2D-411E5C0B3867_overview-d0e99645.html&quot; rel=&quot;nofollow&quot;&gt;http://library.forum.nokia.com/index.jsp?topic=/Java_Developers_Library/GUID-660EC670-B7DB-4005-BF2D-411E5C0B3867_overview-d0e99645.html&lt;/a&gt;
&lt;/p&gt;&lt;p&gt;1. From the main menu, select &lt;b&gt;Lists&lt;/b&gt;. 
&lt;/p&gt;&lt;p&gt;2. From &lt;b&gt;Lists&lt;/b&gt;, select &lt;b&gt;Gem Lookup&lt;/b&gt;.
&lt;/p&gt;&lt;p&gt;3. Try to tap the text entry field for the filter editor.
&lt;/p&gt;
&lt;a name=&quot;Solution&quot; id=&quot;Solution&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt; Solution &lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;No solution for the Nokia 5800 XpressMusic.
&lt;/p&gt;&lt;p&gt;This issue has been fixed for the Nokia N97, starting with second commercial software releases (v 20.0.019).
&lt;/p&gt;</description>
			<pubDate>Fri, 20 Nov 2009 10:34:17 GMT</pubDate>			<dc:creator>Forum Nokia KB</dc:creator>			<comments>http://wiki.forum.nokia.com/index.php/Talk:KIJ001486_-_SortedList_with_FILTER_style_not_working_in_eSWT_MIDlets</comments>		</item>
		<item>
			<title>KIJ001485 - MultiPageDialog in eSWT MIDlets causes application exit problems</title>
			<link>http://wiki.forum.nokia.com/index.php/KIJ001485_-_MultiPageDialog_in_eSWT_MIDlets_causes_application_exit_problems</link>
			<description>&lt;p&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;div align=&quot;right&quot;&gt;&lt;a href=&quot;/index.php/File:KBKI_Header.gif&quot; class=&quot;image&quot; title=&quot;image:KBKI_Header.gif&quot;&gt;&lt;img alt=&quot;image:KBKI_Header.gif&quot; src=&quot;http://www.forum.nokia.com/piazza/wiki/images/4/46/KBKI_Header.gif&quot; width=&quot;708&quot; height=&quot;71&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;&lt;a href=&quot;/index.php/KnowledgeBase&quot; title=&quot;KnowledgeBase&quot;&gt; Knowledge Base Home &lt;/a&gt;&lt;/div&gt;
&lt;p&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;table style=&quot;background:#eceff2&quot; width=&quot;660px&quot; border=&quot;1&quot; cellpadding=&quot;5&quot; cellspacing=&quot;0&quot;&gt;

&lt;tr&gt;
&lt;td&gt;&lt;b&gt;ID&lt;/b&gt; &lt;/td&gt;&lt;td&gt;KIJ001485
&lt;/td&gt;&lt;td&gt;&lt;b&gt;Creation date&lt;/b&gt; &lt;/td&gt;&lt;td&gt; November 20, 2009
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;b&gt;Platform&lt;/b&gt; &lt;/td&gt;&lt;td&gt; S60 5th Edition
&lt;/td&gt;&lt;td&gt;&lt;b&gt;Devices&lt;/b&gt; &lt;/td&gt;&lt;td&gt; Nokia N97, Nokia 5800 XpressMusic
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;b&gt;Category&lt;/b&gt; &lt;/td&gt;&lt;td&gt; Java ME
&lt;/td&gt;&lt;td&gt;&lt;b&gt;Subcategory&lt;/b&gt; &lt;/td&gt;&lt;td&gt; eSWT API
&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;
&lt;p&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;table style=&quot;background:#eceff2&quot; width=&quot;660px&quot; border=&quot;1&quot; cellpadding=&quot;5&quot; cellspacing=&quot;0&quot;&gt;

&lt;tr&gt;
&lt;td&gt;&lt;b&gt;Keywords (APIs, classes, methods, functions)&lt;/b&gt;: MultiPageDialog
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;p&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;a name=&quot;Description&quot; id=&quot;Description&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt; Description &lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;MultiPageDialog stands for a tabbed dialog which consists of multiple pages, with only one page made visible at time. The page visibility can be defined by end-users or applications programmatically.
&lt;/p&gt;&lt;p&gt;In S60 5th Edition devices, using MultiPageDialog results in problems with exiting the application: either the MIDlet hangs at exit, or the application crashes abruptly.
&lt;/p&gt;
&lt;a name=&quot;Solution&quot; id=&quot;Solution&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt; Solution &lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;No solution for Nokia 5800 XpressMusic.
&lt;/p&gt;&lt;p&gt;This issue will be fixed for the Nokia N97, starting from second commercial software releases (v 20.0.019).
&lt;/p&gt;</description>
			<pubDate>Fri, 20 Nov 2009 10:15:37 GMT</pubDate>			<dc:creator>Forum Nokia KB</dc:creator>			<comments>http://wiki.forum.nokia.com/index.php/Talk:KIJ001485_-_MultiPageDialog_in_eSWT_MIDlets_causes_application_exit_problems</comments>		</item>
		<item>
			<title>Incorrect Machine UID documented for Nokia 6730</title>
			<link>http://wiki.forum.nokia.com/index.php/Incorrect_Machine_UID_documented_for_Nokia_6730</link>
			<description>&lt;p&gt;&lt;br /&gt;
&lt;a href=&quot;/index.php/File:KB_Developer.gif&quot; class=&quot;image&quot; title=&quot;Image:KB_Developer.gif&quot;&gt;&lt;img alt=&quot;Image:KB_Developer.gif&quot; src=&quot;http://www.forum.nokia.com/piazza/wiki/images/a/a9/KB_Developer.gif&quot; width=&quot;760&quot; height=&quot;76&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;
&lt;table style=&quot;background:#f2efec&quot; width=&quot;660px&quot; border=&quot;1&quot; cellpadding=&quot;5&quot; cellspacing=&quot;0&quot;&gt;

&lt;tr&gt;
&lt;td&gt;&lt;b&gt;ID&lt;/b&gt; &lt;/td&gt;&lt;td&gt;Unofficial - No ID assigned
&lt;/td&gt;&lt;td&gt;&lt;b&gt;Creation date&lt;/b&gt; &lt;/td&gt;&lt;td&gt;18 November 2009
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;b&gt;Platform&lt;/b&gt; &lt;/td&gt;&lt;td&gt;S60 3rd Edition FP2
&lt;/td&gt;&lt;td&gt;&lt;b&gt;Devices&lt;/b&gt; &lt;/td&gt;&lt;td&gt;Nokia 6730 Classic
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;b&gt;Category&lt;/b&gt; &lt;/td&gt;&lt;td&gt;Symbian C++
&lt;/td&gt;&lt;td&gt;&lt;b&gt;Subcategory&lt;/b&gt; &lt;/td&gt;&lt;td&gt;&amp;nbsp;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;p&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;a name=&quot;Description&quot; id=&quot;Description&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;Description&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;Some Nokia documents (e.g.&lt;a href=&quot;http://www.forum.nokia.com/devices/6730_classic&quot; class=&quot;external free&quot; title=&quot;http://www.forum.nokia.com/devices/6730_classic&quot; rel=&quot;nofollow&quot;&gt;http://www.forum.nokia.com/devices/6730_classic&lt;/a&gt;) report the Product ID of the Nokia 6730 to be 0x2001DE9A. It was observed that this is not the value returned by HAL::Get when invoked with HAL::EMachineUid. The actual value returned is 0x2001DE97, rather than the documented product ID.
&lt;/p&gt;&lt;p&gt;This needs to be taken into account when writing code that checks for specific FP2 models.
&lt;/p&gt;&lt;p&gt;It is not known whether other uses of the Product ID (such as Product ID checking in a .pkg file) are also affected.
&lt;/p&gt;
&lt;a name=&quot;How_to_reproduce&quot; id=&quot;How_to_reproduce&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;How to reproduce&lt;/span&gt;&lt;/h2&gt;
&lt;pre&gt;   TInt uid;
   HAL::Get(HAL::EMachineUid, uid);
   /* uid will contain 0x2001DE97 on return */
&lt;/pre&gt;
&lt;a name=&quot;Solution&quot; id=&quot;Solution&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;Solution&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;Since there is currently no other device on the market which uses 0x2001DE9A as its product ID, it is probably safest to treat both values as variants of the 6730 Classic, as this discrepancy may be specific to a particular firmware variant or version of the device.
&lt;/p&gt;&lt;p&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;a name=&quot;Reference&quot; id=&quot;Reference&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;Reference&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;&lt;a href=&quot;http://www.forum.nokia.com/devices/6730_classic&quot; class=&quot;external free&quot; title=&quot;http://www.forum.nokia.com/devices/6730_classic&quot; rel=&quot;nofollow&quot;&gt;http://www.forum.nokia.com/devices/6730_classic&lt;/a&gt;
&lt;/p&gt;</description>
			<pubDate>Thu, 19 Nov 2009 08:31:31 GMT</pubDate>			<dc:creator>Mgroeber9110</dc:creator>			<comments>http://wiki.forum.nokia.com/index.php/Talk:Incorrect_Machine_UID_documented_for_Nokia_6730</comments>		</item>
		<item>
			<title>Porting iPhone web app to WRT - a porting example</title>
			<link>http://wiki.forum.nokia.com/index.php/Porting_iPhone_web_app_to_WRT_-_a_porting_example</link>
			<description>&lt;table id=&quot;toc&quot; class=&quot;toc&quot; summary=&quot;Contents&quot;&gt;&lt;tr&gt;&lt;td&gt;&lt;div id=&quot;toctitle&quot;&gt;&lt;h2&gt;Contents&lt;/h2&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li class=&quot;toclevel-1&quot;&gt;&lt;a href=&quot;#Introduction&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;1&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Introduction&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-1&quot;&gt;&lt;a href=&quot;#Porting_steps&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;2&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Porting steps&lt;/span&gt;&lt;/a&gt;
&lt;ul&gt;
&lt;li class=&quot;toclevel-2&quot;&gt;&lt;a href=&quot;#Create_a_new_project&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;2.1&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Create a new project&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-2&quot;&gt;&lt;a href=&quot;#Transfer_remote_website_content_into_local_static_content&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;2.2&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Transfer remote website content into local static content&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-2&quot;&gt;&lt;a href=&quot;#Edit_the_Info.plist_file&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;2.3&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Edit the Info.plist file&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-2&quot;&gt;&lt;a href=&quot;#Edit_HTML_files_and_file_paths_to_fit_local_context&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;2.4&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Edit HTML files and file paths to fit local context&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-2&quot;&gt;&lt;a href=&quot;#Remove_references_to_external_resources&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;2.5&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Remove references to external resources&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-2&quot;&gt;&lt;a href=&quot;#Test_the_first_working_project&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;2.6&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Test the first working project&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-2&quot;&gt;&lt;a href=&quot;#Make_the_application_scalable_to_different_screen_sizes&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;2.7&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Make the application scalable to different screen sizes&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-2&quot;&gt;&lt;a href=&quot;#Add_horoscope-related_functionality_with_JavaScript&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;2.8&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Add horoscope-related functionality with JavaScript&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-2&quot;&gt;&lt;a href=&quot;#Create_Options_menu&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;2.9&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Create Options menu&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li class=&quot;toclevel-1&quot;&gt;&lt;a href=&quot;#Conclusions&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;3&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Conclusions&lt;/span&gt;&lt;/a&gt;
&lt;ul&gt;
&lt;li class=&quot;toclevel-2&quot;&gt;&lt;a href=&quot;#First_conclusion&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;3.1&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;First conclusion&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-2&quot;&gt;&lt;a href=&quot;#Second_conclusion&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;3.2&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Second conclusion&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li class=&quot;toclevel-1&quot;&gt;&lt;a href=&quot;#iPhone_web_app.2FWRT_widget_co-development_tips&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;4&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;iPhone web app/WRT widget co-development tips&lt;/span&gt;&lt;/a&gt;
&lt;ul&gt;
&lt;li class=&quot;toclevel-2&quot;&gt;&lt;a href=&quot;#A_small_WRT_widget_acts_as_a_launcher&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;4.1&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;A small WRT widget acts as a launcher&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-2&quot;&gt;&lt;a href=&quot;#Optimising_the_UI&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;4.2&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Optimising the UI&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li class=&quot;toclevel-1&quot;&gt;&lt;a href=&quot;#Using_device-specific_JavaScript_APIs_in_WRT&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;5&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Using device-specific JavaScript APIs in WRT&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-1&quot;&gt;&lt;a href=&quot;#Final_conclusion&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;6&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Final conclusion&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;script type=&quot;text/javascript&quot;&gt; if (window.showTocToggle) { var tocShowText = &quot;show&quot;; var tocHideText = &quot;hide&quot;; showTocToggle(); } &lt;/script&gt;
&lt;p&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;a name=&quot;Introduction&quot; id=&quot;Introduction&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;Introduction&lt;/span&gt;&lt;/h1&gt;
&lt;p&gt;This article describes the porting process of a simple web app from iPhone to Web Runtime (WRT) on Nokia devices such as the Nokia N97 device. It complements the article &lt;a href=&quot;/index.php/Porting_iPhone_web_app_to_WRT_on_Nokia_devices&quot; title=&quot;Porting iPhone web app to WRT on Nokia devices&quot;&gt;Porting iPhone web app to WRT on Nokia devices&lt;/a&gt;, which provides a general description of what an iPhone web app developer needs to know when switching to WRT development on Nokia devices based on Symbian platform. The purpose of this article is to describe the porting steps in practice. The example is for a horoscope web application (&lt;a href=&quot;http://horoscope.internetdesigns.eu/&quot; class=&quot;external free&quot; title=&quot;http://horoscope.internetdesigns.eu/&quot; rel=&quot;nofollow&quot;&gt;http://horoscope.internetdesigns.eu/&lt;/a&gt;) that will be ported from iPhone to WRT.
&lt;/p&gt;&lt;p&gt;Porting a widget consists of the following steps: 
&lt;/p&gt;
&lt;ul&gt;&lt;li&gt; creating a new project 
&lt;/li&gt;&lt;li&gt; copying remote content (HTML pages, style sheets, and image resources) to local static content
&lt;/li&gt;&lt;li&gt; enabling user interaction with JavaScript™ code in Nokia devices 
&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;In addition to a porting case, the article discusses co-development possibilities and lists device-specific extensions to widgets on both platforms.
&lt;/p&gt;&lt;p&gt;&lt;b&gt;Prerequisites&lt;/b&gt;
&lt;/p&gt;&lt;p&gt;To get started, you will need a tool to create HTML pages and JavaScript files. A simple text editor will serve the purpose just fine, but in this document Aptana Studio with the Nokia WRT plug-in is used, because it contains more sophisticated features than a text editor. In addition, Aptana Studio can be used to create iPhone web apps. The tools can be downloaded here:
&lt;/p&gt;&lt;p&gt;&lt;a href=&quot;http://www.forum.nokia.com/Tools_Docs_and_Code/Tools/Runtimes/Web_Runtime/Aptana_Plugin/&quot; class=&quot;external free&quot; title=&quot;http://www.forum.nokia.com/Tools_Docs_and_Code/Tools/Runtimes/Web_Runtime/Aptana_Plugin/&quot; rel=&quot;nofollow&quot;&gt;http://www.forum.nokia.com/Tools_Docs_and_Code/Tools/Runtimes/Web_Runtime/Aptana_Plugin/&lt;/a&gt;
&lt;/p&gt;&lt;p&gt;For developers who are new to WRT, it will be helpful to read an introduction to WRT technology:
&lt;/p&gt;&lt;p&gt;&lt;a href=&quot;http://www.forum.nokia.com/Technology_Topics/Web_Technologies/Web_Runtime/&quot; class=&quot;external free&quot; title=&quot;http://www.forum.nokia.com/Technology_Topics/Web_Technologies/Web_Runtime/&quot; rel=&quot;nofollow&quot;&gt;http://www.forum.nokia.com/Technology_Topics/Web_Technologies/Web_Runtime/&lt;/a&gt;
&lt;/p&gt;
&lt;a name=&quot;Porting_steps&quot; id=&quot;Porting_steps&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;Porting steps&lt;/span&gt;&lt;/h1&gt;
&lt;a name=&quot;Create_a_new_project&quot; id=&quot;Create_a_new_project&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;Create a new project&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;1. Start Aptana Studio.
&lt;/p&gt;&lt;p&gt;2. Select File &amp;gt; New &amp;gt; Project.
&lt;/p&gt;&lt;p&gt;3. Select Nokia Web Runtime (WRT) &amp;gt; New Nokia Web Runtime Widget. Click Next.
&lt;/p&gt;&lt;p&gt;4. Select Basic Widget Project.
&lt;/p&gt;&lt;p&gt;5. Name the project ’horoscope’ and enter the location where the project will be created. Click Next.
&lt;/p&gt;&lt;p&gt;6. Name the widget ’horoscope’ and use com.widget.horoscope as the widget identifier. A unique widget identifier is required for successful installation of the widget on the device. Click Next.
&lt;/p&gt;&lt;p&gt;7. Name the main HTML file ’horoscope’. This file, horoscope.html, will be replaced in the following steps, but you’ll avoid having to rename the file if you name it ’horoscope.html’ here.
&lt;/p&gt;&lt;p&gt;8. Name the CSS file ’style’ and the JavaScript file ’horoscope’. Click Finish. The project has been created.
&lt;/p&gt;
&lt;a name=&quot;Transfer_remote_website_content_into_local_static_content&quot; id=&quot;Transfer_remote_website_content_into_local_static_content&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;Transfer remote website content into local static content&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;Your first task is to get the HTML pages from the website into the WRT project. The Horoscope web app is a dynamic website running in PHP, so getting the HTML files is done most easily by saving the web pages into the root directory of the Horoscope project. There are three pages to save:
&lt;/p&gt;&lt;p&gt;1. Save &lt;a href=&quot;http://horoscope.internetdesigns.eu/&quot; class=&quot;external free&quot; title=&quot;http://horoscope.internetdesigns.eu/&quot; rel=&quot;nofollow&quot;&gt;http://horoscope.internetdesigns.eu/&lt;/a&gt; as horoscope.html. Overwrite the existing horoscope.html in the project with this one.
&lt;/p&gt;&lt;p&gt;2. Save &lt;a href=&quot;http://horoscope.internetdesigns.eu/zodiac.php&quot; class=&quot;external free&quot; title=&quot;http://horoscope.internetdesigns.eu/zodiac.php&quot; rel=&quot;nofollow&quot;&gt;http://horoscope.internetdesigns.eu/zodiac.php&lt;/a&gt; as zodiac.html.
&lt;/p&gt;&lt;p&gt;3. Save &lt;a href=&quot;http://horoscope.internetdesigns.eu/horoscope.php&quot; class=&quot;external free&quot; title=&quot;http://horoscope.internetdesigns.eu/horoscope.php&quot; rel=&quot;nofollow&quot;&gt;http://horoscope.internetdesigns.eu/horoscope.php&lt;/a&gt; as zodiac_result.html.
&lt;/p&gt;&lt;p&gt;The next step is to get the style sheet for the web application. This can be done by browsing to &lt;a href=&quot;http://horoscope.internetdesigns.eu/css/style.css&quot; class=&quot;external free&quot; title=&quot;http://horoscope.internetdesigns.eu/css/style.css&quot; rel=&quot;nofollow&quot;&gt;http://horoscope.internetdesigns.eu/css/style.css&lt;/a&gt; and saving the file into your computer. As with the HTML files, save the Cascading Style Sheet (CSS) file into the root directory of the Horoscope project.
&lt;/p&gt;&lt;p&gt;After this, in Aptana Studio, refresh the project so that the HTML files and the CSS file appear in it. Right-click on the ’horoscope’ project in the Project view and select Refresh. The following files should now be visible in the project:
&lt;/p&gt;
&lt;ul&gt;&lt;li&gt; horoscope.html
&lt;/li&gt;&lt;/ul&gt;
&lt;ul&gt;&lt;li&gt; horoscope.js
&lt;/li&gt;&lt;/ul&gt;
&lt;ul&gt;&lt;li&gt; Info.plist
&lt;/li&gt;&lt;/ul&gt;
&lt;ul&gt;&lt;li&gt; style.css
&lt;/li&gt;&lt;/ul&gt;
&lt;ul&gt;&lt;li&gt; zodiac_result.html
&lt;/li&gt;&lt;/ul&gt;
&lt;ul&gt;&lt;li&gt; zodiac.html
&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;(* wrt_preview_frame.html)
&lt;/p&gt;&lt;p&gt;(* wrt_preview_main.html)
&lt;/p&gt;&lt;p&gt;After the web pages have been saved, the next task is to save the pictures from the web application as local copies. The reason for doing this is because the HTML pages have relative references to the pictures, and creating local copies saves you the trouble of updating all the references. Here is the list of pictures to be saved:
&lt;/p&gt;
&lt;ul&gt;&lt;li&gt; header.png (&lt;a href=&quot;http://iphoneapps.internetdesigns.eu/images/header.png&quot; class=&quot;external free&quot; title=&quot;http://iphoneapps.internetdesigns.eu/images/header.png&quot; rel=&quot;nofollow&quot;&gt;http://iphoneapps.internetdesigns.eu/images/header.png&lt;/a&gt;)
&lt;/li&gt;&lt;/ul&gt;
&lt;ul&gt;&lt;li&gt; home.png (&lt;a href=&quot;http://iphoneapps.internetdesigns.eu/images/home.png&quot; class=&quot;external free&quot; title=&quot;http://iphoneapps.internetdesigns.eu/images/home.png&quot; rel=&quot;nofollow&quot;&gt;http://iphoneapps.internetdesigns.eu/images/home.png&lt;/a&gt;)
&lt;/li&gt;&lt;/ul&gt;
&lt;ul&gt;&lt;li&gt; dayicon.png (&lt;a href=&quot;http://horoscope.internetdesigns.eu/img/dayicon.png&quot; class=&quot;external free&quot; title=&quot;http://horoscope.internetdesigns.eu/img/dayicon.png&quot; rel=&quot;nofollow&quot;&gt;http://horoscope.internetdesigns.eu/img/dayicon.png&lt;/a&gt;)
&lt;/li&gt;&lt;/ul&gt;
&lt;ul&gt;&lt;li&gt; weekicon.png (&lt;a href=&quot;http://horoscope.internetdesigns.eu/img/weekicon.png&quot; class=&quot;external free&quot; title=&quot;http://horoscope.internetdesigns.eu/img/weekicon.png&quot; rel=&quot;nofollow&quot;&gt;http://horoscope.internetdesigns.eu/img/weekicon.png&lt;/a&gt;)
&lt;/li&gt;&lt;/ul&gt;
&lt;ul&gt;&lt;li&gt; monthicon.png (&lt;a href=&quot;http://horoscope.internetdesigns.eu/img/monthicon.png&quot; class=&quot;external free&quot; title=&quot;http://horoscope.internetdesigns.eu/img/monthicon.png&quot; rel=&quot;nofollow&quot;&gt;http://horoscope.internetdesigns.eu/img/monthicon.png&lt;/a&gt;)
&lt;/li&gt;&lt;/ul&gt;
&lt;ul&gt;&lt;li&gt; aquarius.png (&lt;a href=&quot;http://horoscope.internetdesigns.eu/img/aquarius.png&quot; class=&quot;external free&quot; title=&quot;http://horoscope.internetdesigns.eu/img/aquarius.png&quot; rel=&quot;nofollow&quot;&gt;http://horoscope.internetdesigns.eu/img/aquarius.png&lt;/a&gt;)
&lt;/li&gt;&lt;/ul&gt;
&lt;ul&gt;&lt;li&gt; aries.png (&lt;a href=&quot;http://horoscope.internetdesigns.eu/img/aries.png&quot; class=&quot;external free&quot; title=&quot;http://horoscope.internetdesigns.eu/img/aries.png&quot; rel=&quot;nofollow&quot;&gt;http://horoscope.internetdesigns.eu/img/aries.png&lt;/a&gt;)
&lt;/li&gt;&lt;/ul&gt;
&lt;ul&gt;&lt;li&gt; cancer.png (&lt;a href=&quot;http://horoscope.internetdesigns.eu/img/cancer.png&quot; class=&quot;external free&quot; title=&quot;http://horoscope.internetdesigns.eu/img/cancer.png&quot; rel=&quot;nofollow&quot;&gt;http://horoscope.internetdesigns.eu/img/cancer.png&lt;/a&gt;)
&lt;/li&gt;&lt;/ul&gt;
&lt;ul&gt;&lt;li&gt; capricorn.png (&lt;a href=&quot;http://horoscope.internetdesigns.eu/img/capricorn.png&quot; class=&quot;external free&quot; title=&quot;http://horoscope.internetdesigns.eu/img/capricorn.png&quot; rel=&quot;nofollow&quot;&gt;http://horoscope.internetdesigns.eu/img/capricorn.png&lt;/a&gt;)
&lt;/li&gt;&lt;/ul&gt;
&lt;ul&gt;&lt;li&gt; gemini.png (&lt;a href=&quot;http://horoscope.internetdesigns.eu/img/gemini.png&quot; class=&quot;external free&quot; title=&quot;http://horoscope.internetdesigns.eu/img/gemini.png&quot; rel=&quot;nofollow&quot;&gt;http://horoscope.internetdesigns.eu/img/gemini.png&lt;/a&gt;)
&lt;/li&gt;&lt;/ul&gt;
&lt;ul&gt;&lt;li&gt; leo.png (&lt;a href=&quot;http://horoscope.internetdesigns.eu/img/leo.png&quot; class=&quot;external free&quot; title=&quot;http://horoscope.internetdesigns.eu/img/leo.png&quot; rel=&quot;nofollow&quot;&gt;http://horoscope.internetdesigns.eu/img/leo.png&lt;/a&gt;)
&lt;/li&gt;&lt;/ul&gt;
&lt;ul&gt;&lt;li&gt; libra.png (&lt;a href=&quot;http://horoscope.internetdesigns.eu/img/libra.png&quot; class=&quot;external free&quot; title=&quot;http://horoscope.internetdesigns.eu/img/libra.png&quot; rel=&quot;nofollow&quot;&gt;http://horoscope.internetdesigns.eu/img/libra.png&lt;/a&gt;)
&lt;/li&gt;&lt;/ul&gt;
&lt;ul&gt;&lt;li&gt; pisces.png (&lt;a href=&quot;http://horoscope.internetdesigns.eu/img/pisces.png&quot; class=&quot;external free&quot; title=&quot;http://horoscope.internetdesigns.eu/img/pisces.png&quot; rel=&quot;nofollow&quot;&gt;http://horoscope.internetdesigns.eu/img/pisces.png&lt;/a&gt;)
&lt;/li&gt;&lt;/ul&gt;
&lt;ul&gt;&lt;li&gt; sagittarius.png (&lt;a href=&quot;http://horoscope.internetdesigns.eu/img/sagittarius.png&quot; class=&quot;external free&quot; title=&quot;http://horoscope.internetdesigns.eu/img/sagittarius.png&quot; rel=&quot;nofollow&quot;&gt;http://horoscope.internetdesigns.eu/img/sagittarius.png&lt;/a&gt;)
&lt;/li&gt;&lt;/ul&gt;
&lt;ul&gt;&lt;li&gt; scorpio.png (&lt;a href=&quot;http://horoscope.internetdesigns.eu/img/scorpio.png&quot; class=&quot;external free&quot; title=&quot;http://horoscope.internetdesigns.eu/img/scorpio.png&quot; rel=&quot;nofollow&quot;&gt;http://horoscope.internetdesigns.eu/img/scorpio.png&lt;/a&gt;)
&lt;/li&gt;&lt;/ul&gt;
&lt;ul&gt;&lt;li&gt; taurus.png (&lt;a href=&quot;http://horoscope.internetdesigns.eu/img/taurus.png&quot; class=&quot;external free&quot; title=&quot;http://horoscope.internetdesigns.eu/img/taurus.png&quot; rel=&quot;nofollow&quot;&gt;http://horoscope.internetdesigns.eu/img/taurus.png&lt;/a&gt;)
&lt;/li&gt;&lt;/ul&gt;
&lt;ul&gt;&lt;li&gt; virgo.png (&lt;a href=&quot;http://horoscope.internetdesigns.eu/img/virgo.png&quot; class=&quot;external free&quot; title=&quot;http://horoscope.internetdesigns.eu/img/virgo.png&quot; rel=&quot;nofollow&quot;&gt;http://horoscope.internetdesigns.eu/img/virgo.png&lt;/a&gt;)
&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;&lt;br /&gt;
In Aptana Studio, create a new folder for the pictures:
&lt;/p&gt;&lt;p&gt;1. Select File &amp;gt; New &amp;gt; Other.
&lt;/p&gt;&lt;p&gt;2. Select General &amp;gt; Folder. Click Next.
&lt;/p&gt;&lt;p&gt;3. Select the Horoscope project as the parent folder and name the folder ’img’. Click Finish. The folder has been created.
&lt;/p&gt;&lt;p&gt;Save the pictures listed above into the img folder you just created.
&lt;/p&gt;
&lt;a name=&quot;Edit_the_Info.plist_file&quot; id=&quot;Edit_the_Info.plist_file&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;Edit the Info.plist file&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;Open Info.plist in Aptana’s editor by double-clicking on it in the Project view and make sure that horoscope.html is set as the main HTML file:
&lt;/p&gt;
&lt;pre&gt;
&amp;lt;key&amp;gt;MainHTML&amp;lt;/key&amp;gt;

&amp;lt;string&amp;gt;horoscope.html&amp;lt;/string&amp;gt;
&lt;/pre&gt;
&lt;p&gt;Also make sure that the key AllowNetworkAccess is set to true:
&lt;/p&gt;
&lt;pre&gt;
&amp;lt;key&amp;gt;AllowNetworkAccess&amp;lt;/key&amp;gt;

&amp;lt;true/&amp;gt;
&lt;/pre&gt;
&lt;p&gt;AllowNetworkAccess enables the widget to access the network.
&lt;/p&gt;
&lt;a name=&quot;Edit_HTML_files_and_file_paths_to_fit_local_context&quot; id=&quot;Edit_HTML_files_and_file_paths_to_fit_local_context&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;Edit HTML files and file paths to fit local context&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;The first modifications in the HTML pages will target the internal linking between the files in your project. First, in horoscope.html, change all occurrences of zodiac.php to zodiac.html. The result should look like this:
&lt;/p&gt;&lt;p&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;pre&gt;
&amp;lt;tr valign=&amp;quot;middle&amp;quot; align=&amp;quot;center&amp;quot;&amp;gt;

&amp;lt;td&amp;gt;Aries&amp;lt;br /&amp;gt;&amp;lt;a href=&amp;quot;zodiac.html?id=0&amp;quot; &amp;gt;&amp;lt;img src=&amp;quot;img/aries.png&amp;quot; alt=&amp;quot;Aries&amp;quot; border=&amp;quot;0&amp;quot; /&amp;gt;&amp;lt;/a&amp;gt;&amp;lt;/td&amp;gt;

&amp;lt;td&amp;gt;Taurus&amp;lt;br /&amp;gt;&amp;lt;a href=&amp;quot;zodiac.html?id=1&amp;quot; &amp;gt;&amp;lt;img src=&amp;quot;img/taurus.png&amp;quot; alt=&amp;quot;Taurus&amp;quot; border=&amp;quot;0&amp;quot; /&amp;gt;&amp;lt;/a&amp;gt;&amp;lt;/td&amp;gt;

&amp;lt;td&amp;gt;Gemini&amp;lt;br /&amp;gt;&amp;lt;a href=&amp;quot;zodiac.html?id=2&amp;quot; &amp;gt;&amp;lt;img src=&amp;quot;img/gemini.png&amp;quot; alt=&amp;quot;Gemini&amp;quot; border=&amp;quot;0&amp;quot; /&amp;gt;&amp;lt;/a&amp;gt;&amp;lt;/td&amp;gt;

&amp;lt;/tr&amp;gt;
&lt;/pre&gt;
&lt;p&gt;Next, in the &amp;lt;head&amp;gt; tag of each HTML page (horoscope.html, zodiac.html, zodiac_result.html), change the JavaScript link to point to horoscope.js, from this:
&lt;/p&gt;
&lt;pre&gt;
&amp;lt;script src=&amp;quot;http://iphoneapps.internetdesigns.eu/javascript/functions.js&amp;quot; type=&amp;quot;text/javascript&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&lt;/pre&gt;
&lt;p&gt;to this:
&lt;/p&gt;
&lt;pre&gt;
&amp;lt;script src=&amp;quot;horoscope.js&amp;quot; type=&amp;quot;text/javascript&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&lt;/pre&gt;
&lt;p&gt;You should have the horoscope.js in your Aptana project if you created the project with the New Project wizard (see Section 2.1, ’Create a new project’).
&lt;/p&gt;&lt;p&gt;Change the style-sheet link in every HTML file to point to style.css in the root folder of your project. This is the original line of code:
&lt;/p&gt;
&lt;pre&gt;
&amp;lt;link href=&amp;quot;css/style.css&amp;quot; rel=&amp;quot;stylesheet&amp;quot; type=&amp;quot;text/css&amp;quot; /&amp;gt;
&lt;/pre&gt;
&lt;p&gt;and this should be the result:
&lt;/p&gt;
&lt;pre&gt;
&amp;lt;link href=&amp;quot;style.css&amp;quot; rel=&amp;quot;stylesheet&amp;quot; type=&amp;quot;text/css&amp;quot; /&amp;gt;
&lt;/pre&gt;
&lt;p&gt;The style sheet itself contains many references to external images (for example, this line: li.menu:hover{background:url(&quot;&lt;a href=&quot;http://iphoneapps.internetdesigns.eu/images/menutouched.png&quot; class=&quot;external free&quot; title=&quot;http://iphoneapps.internetdesigns.eu/images/menutouched.png&quot; rel=&quot;nofollow&quot;&gt;http://iphoneapps.internetdesigns.eu/images/menutouched.png&lt;/a&gt;&quot;) repeat-x #369}), which causes the widget to download them from the internet. This doesn’t necessarily matter, but if you prefer, you can comment these lines out. (Also, the widget looks just fine without them.)
&lt;/p&gt;&lt;p&gt;With regard to the style sheet, you may have noticed some advanced CSS 3.0 parameters/values, such as text-overflow:ellipsis; or WebKit-related ones, such as -webkit-border-radius:8px;. These may or may not be understood by the WRT engine depending on the version in the user’s device. However, this is not a problem; the ones that are not understood by the engine will be silently ignored by it.
&lt;/p&gt;&lt;p&gt;Returning to the HTML files, change the menu list element in the zodiac.html so that it points to the zodiac_result.html instead of horoscope.php:
&lt;/p&gt;
&lt;pre&gt;
&amp;lt;ul class=&amp;quot;pageitem&amp;quot;&amp;gt;

&amp;lt;li class=&amp;quot;textbox&amp;quot;&amp;gt;&amp;lt;p&amp;gt;Which horoscope would you like to see?&amp;lt;/p&amp;gt;&amp;lt;/li&amp;gt;

&amp;lt;li class=&amp;quot;menu&amp;quot;&amp;gt;&amp;lt;a href=&amp;quot;zodiac_result.html?h=d&amp;amp;id=&amp;quot;&amp;gt;&amp;lt;img alt=&amp;quot;changelog&amp;quot; src=&amp;quot;img/dayicon.png&amp;quot; /&amp;gt;&amp;lt;span class=&amp;quot;name&amp;quot;&amp;gt;daily horoscope&amp;lt;/span&amp;gt;&amp;lt;span class=&amp;quot;arrow&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;/a&amp;gt;&amp;lt;/li&amp;gt;

&amp;lt;li class=&amp;quot;menu&amp;quot;&amp;gt;&amp;lt;a href=&amp;quot;zodiac_result.html?h=w&amp;amp;id=&amp;quot;&amp;gt;&amp;lt;img alt=&amp;quot;changelog&amp;quot; src=&amp;quot;img/weekicon.png&amp;quot; /&amp;gt;&amp;lt;span class=&amp;quot;name&amp;quot;&amp;gt;weekly horoscope&amp;lt;/span&amp;gt;&amp;lt;span class=&amp;quot;arrow&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;/a&amp;gt;&amp;lt;/li&amp;gt;

&amp;lt;li class=&amp;quot;menu&amp;quot;&amp;gt;&amp;lt;a href=&amp;quot;zodiac_result.html?h=m&amp;amp;id=&amp;quot;&amp;gt;&amp;lt;img alt=&amp;quot;changelog&amp;quot; src=&amp;quot;img/monthicon.png&amp;quot; /&amp;gt;&amp;lt;span class=&amp;quot;name&amp;quot;&amp;gt;monthly horoscope&amp;lt;/span&amp;gt;&amp;lt;span class=&amp;quot;arrow&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;/a&amp;gt;&amp;lt;/li&amp;gt;

&amp;lt;/ul&amp;gt;
&lt;/pre&gt;
&lt;p&gt;Lastly, remove the content from zodiac_result.html:
&lt;/p&gt;
&lt;pre&gt;
&amp;lt;img src=&amp;quot;img/&amp;quot; alt=&amp;quot;&amp;quot; border=&amp;quot;0&amp;quot; align=&amp;quot;left&amp;quot; hspace=&amp;quot;10&amp;quot;/&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;span class=&amp;quot;graytitle&amp;quot;&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;

&amp;lt;ul class=&amp;quot;pageitem&amp;quot;&amp;gt;

&amp;lt;li class=&amp;quot;textbox&amp;quot;&amp;gt;&amp;lt;img alt=&amp;quot;daily&amp;quot; src=&amp;quot;img/dayicon.png&amp;quot; /&amp;gt; &amp;lt;span class=&amp;quot;name&amp;quot;&amp;gt;daily horoscope&amp;lt;/span&amp;gt;&amp;lt;/li&amp;gt;

&amp;lt;li class=&amp;quot;textbox&amp;quot;&amp;gt;&amp;lt;strong&amp;gt;&amp;lt;/strong&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;/li&amp;gt;

&amp;lt;/ul&amp;gt;
&lt;/pre&gt;
&lt;p&gt;The fewer elements on the screen the better, because they are visible while the result page is loading.
&lt;/p&gt;
&lt;a name=&quot;Remove_references_to_external_resources&quot; id=&quot;Remove_references_to_external_resources&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;Remove references to external resources&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;You can now clean up the HTML pages a bit by removing references to the resources in the web. First, remove the Google-related JavaScript at the end of each HTML page:
&lt;/p&gt;
&lt;pre&gt;
&amp;lt;script type=&amp;quot;text/javascript&amp;quot;&amp;gt;

var gaJsHost = ((&amp;quot;https:&amp;quot; == document.location.protocol)&amp;nbsp;? &amp;quot;https://ssl.&amp;quot;&amp;nbsp;: &amp;quot;http://www.&amp;quot;);

document.write(unescape(&amp;quot;%3Cscript src=’&amp;quot; + gaJsHost + &amp;quot;google-analytics.com/ga.js’ type=’text/javascript’%3E%3C/script%3E&amp;quot;));

&amp;lt;/script&amp;gt;

&amp;lt;script type=&amp;quot;text/javascript&amp;quot;&amp;gt;

try {

var pageTracker = _gat._getTracker(&amp;quot;UA-5622831-6&amp;quot;);

pageTracker._trackPageview();

} catch(err) {}&amp;lt;/script&amp;gt;
&lt;/pre&gt;
&lt;p&gt;Also remove advertisements that lead to the affiliate website in zodiac.html and zodiac_result.html:
&lt;/p&gt;
&lt;pre&gt;
&amp;lt;a href=&amp;quot;http://iphoneapps.internetdesigns.eu/ringostation.htm&amp;quot;&amp;gt;&amp;lt;img src=&amp;quot;http://affiliates.ringostation.com/images/iphone_320_50_22.png&amp;quot; border=&amp;quot;0&amp;quot; /&amp;gt;&amp;lt;/a&amp;gt;
&lt;/pre&gt;
&lt;p&gt;However, keep the reference to the original creator of the web app in the footer (to give credit where credit is due).
&lt;/p&gt;
&lt;pre&gt;
&amp;lt;div id=&amp;quot;footer&amp;quot;&amp;gt;

&amp;lt;a class=&amp;quot;noeffect&amp;quot; href=&amp;quot;http://iphoneapps.internetdesigns.eu&amp;quot;&amp;gt;Designed by InternetDesigns&amp;lt;/a&amp;gt;

&amp;lt;/div&amp;gt;
&lt;/pre&gt;
&lt;a name=&quot;Test_the_first_working_project&quot; id=&quot;Test_the_first_working_project&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;Test the first working project&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;At this point, you have a working set of static HTML pages with internal linking and without unnecessary references to the resources in the web.
&lt;/p&gt;&lt;p&gt;Test the HTML pages with Aptana’s own editor. To do this, click on the Nokia Web Runtime (WRT) tab at the bottom of the editor view. The result should look something like this:
&lt;/p&gt;&lt;p&gt;&lt;br /&gt;
&lt;a href=&quot;/index.php/File:Horoscope.png&quot; class=&quot;image&quot; title=&quot;File:Horoscope.png&quot;&gt;&lt;img alt=&quot;File:Horoscope.png&quot; src=&quot;http://www.forum.nokia.com/piazza/wiki/images/a/af/Horoscope.png&quot; width=&quot;515&quot; height=&quot;371&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;&lt;p&gt;&lt;br /&gt;
Don’t worry about functionality yet; we’ll return to that shortly.
&lt;/p&gt;
&lt;a name=&quot;Make_the_application_scalable_to_different_screen_sizes&quot; id=&quot;Make_the_application_scalable_to_different_screen_sizes&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;Make the application scalable to different screen sizes&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;iPhone has a specific screen size that is used among all models. This is not the case with the plethora of Nokia devices based on Symbian platform. For Nokia touch devices, the current resolution is 360 x 640 pixels, and it can be either portrait or landscape, depending on which way the user is holding the device (for example, the Nokia N97 and Nokia 5800 XpressMusic devices). The common screen size for non-touch devices is QVGA (240 x 320 pixels) in a variety of physical sizes. Depending on the device, it can be portrait (for example, the Nokia 6730 device), landscape (the Nokia E71 and similar devices), or both (for example, the Nokia N95, Nokia N96, and Nokia 6760 slide devices). Furthermore, there are special cases such as the Nokia E90 Communicator, which has a small cover display of 240 x 320 pixels and a large internal display of 800 x 352 pixels.
&lt;/p&gt;&lt;p&gt;The same WRT widget can be installed into all of these devices, so you should make sure that your WRT widget always fits nicely in the user’s screen.
&lt;/p&gt;&lt;p&gt;Take a look at the &amp;lt;table&amp;gt; tag in horoscope.html. It has a fixed width that matches the iPhone’s screen width. This is what you would like to change, but since your widget will have to deal with many different screen sizes, you should handle that dynamically through some JavaScript code.
&lt;/p&gt;&lt;p&gt;First, give an ID to your table ’mainTable’):
&lt;/p&gt;
&lt;pre&gt;
&amp;lt;table id=&amp;quot;mainTable&amp;quot; border=&amp;quot;0&amp;quot; cellpadding=&amp;quot;0&amp;quot; cellspacing=&amp;quot;0&amp;quot; width=&amp;quot;320&amp;quot; class=&amp;quot;zodiac&amp;quot;  align=&amp;quot;center&amp;quot;&amp;gt;
&lt;/pre&gt;
&lt;p&gt;Then, in horoscope.js, add this code:
&lt;/p&gt;
&lt;pre&gt;
window.onload = init;

window.onresize = windowResized;

function init() {

// Call windowResized() manually because it doesn’t get called automatically

// for the first time

windowResized();

}

function windowResized() {

document.getElementById(&amp;quot;mainTable&amp;quot;).width = window.innerWidth;

}
&lt;/pre&gt;
&lt;p&gt;init() is called when the HTML page is loaded, and windowResized() is called whenever the screen size changes. windowResized() must also be called from the init() function because it does not get called automatically for the first time (in other words, the resize event is not raised when the widget is launched). windowResized() gets the inner width of the window (the width of the content area) and sets the width of the table to match it.
&lt;/p&gt;&lt;p&gt;Of course there may also be cases where the content doesn’t fit the screen vertically. However, the height of the whole HTML page is not easy to restrict. After all, HTML is designed for computer displays where it can flow vertically and be scrolled. Therefore, vertical scaling of content is omitted from this document.
&lt;/p&gt;&lt;p&gt;There is one other thing that can be done to improve the layout of the widget — remove the iPhone-specific title bar from every HTML file:
&lt;/p&gt;
&lt;pre&gt;
&amp;lt;div id=&amp;quot;topbar&amp;quot;&amp;gt;

&amp;lt;div id=&amp;quot;title&amp;quot;&amp;gt;Horoscope&amp;lt;/div&amp;gt;

&amp;lt;/div&amp;gt;
&lt;/pre&gt;
&lt;p&gt;Removing the title bar allows the content to fit nicely in landscape orientation in nHD resolution (640 x 360 pixels):
&lt;/p&gt;&lt;p&gt;&lt;a href=&quot;/index.php/File:Nhd_landscape_01.png&quot; class=&quot;image&quot; title=&quot;File:Nhd_landscape_01.png&quot;&gt;&lt;img alt=&quot;File:Nhd_landscape_01.png&quot; src=&quot;http://www.forum.nokia.com/piazza/wiki/images/b/bc/Nhd_landscape_01.png&quot; width=&quot;640&quot; height=&quot;360&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;&lt;p&gt;&lt;br /&gt;
&lt;/p&gt;&lt;p&gt;&lt;a href=&quot;/index.php/File:Nhd_landscape_02.png&quot; class=&quot;image&quot; title=&quot;File:Nhd_landscape_02.png&quot;&gt;&lt;img alt=&quot;File:Nhd_landscape_02.png&quot; src=&quot;http://www.forum.nokia.com/piazza/wiki/images/e/e0/Nhd_landscape_02.png&quot; width=&quot;640&quot; height=&quot;360&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;&lt;p&gt;&lt;br /&gt;
&lt;/p&gt;&lt;p&gt;&lt;a href=&quot;/index.php/File:Nhd_landscape_03.png&quot; class=&quot;image&quot; title=&quot;File:Nhd_landscape_03.png&quot;&gt;&lt;img alt=&quot;File:Nhd_landscape_03.png&quot; src=&quot;http://www.forum.nokia.com/piazza/wiki/images/1/1d/Nhd_landscape_03.png&quot; width=&quot;640&quot; height=&quot;360&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;&lt;p&gt;&lt;br /&gt;
NOTE: If there are any commands in the title bar, they should be moved to the Symbian S60 Options menu. Creation of the Options menu will be discussed later.
&lt;/p&gt;
&lt;a name=&quot;Add_horoscope-related_functionality_with_JavaScript&quot; id=&quot;Add_horoscope-related_functionality_with_JavaScript&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;Add horoscope-related functionality with JavaScript&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;Horoscope is originally a PHP-based website, which means that all work is done on the server side in PHP code. This is fine for a remote website, but not for your WRT widget. The goal now is to make zodiac.html and zodiac_result.html work with some JavaScript so that they will act as original PHP code.
&lt;/p&gt;&lt;p&gt;In this section, nothing is WRT specific. This is all about JavaScript code.
&lt;/p&gt;&lt;p&gt;* zodiac.html:
&lt;/p&gt;&lt;p&gt;This HTML page shows the sign that was selected in horoscope.html. Currently, the image source (the src attribute) is empty because no sign has been selected:
&lt;/p&gt;
&lt;pre&gt;
&amp;lt;img src=&amp;quot;img/&amp;quot; alt=&amp;quot;&amp;quot; border=&amp;quot;0&amp;quot; align=&amp;quot;left&amp;quot; hspace=&amp;quot;10&amp;quot;/&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;span class=&amp;quot;graytitle&amp;quot;&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;
&lt;/pre&gt;
&lt;p&gt;To be able to fill in the required image source through JavaScript, add an ID attribute to the img tag. This way you can refer to the img element from JavaScript code. Call the element ’image’:
&lt;/p&gt;
&lt;pre&gt;
&amp;lt;img id=&amp;quot;image&amp;quot; src=&amp;quot;img/&amp;quot; alt=&amp;quot;&amp;quot; border=&amp;quot;0&amp;quot; align=&amp;quot;left&amp;quot; hspace=&amp;quot;10&amp;quot;/&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;span class=&amp;quot;graytitle&amp;quot;&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;
&lt;/pre&gt;
&lt;p&gt;Next, parse the ID value from the URL parameters. For this, write a helper function that stores all URL parameters into an array. Open horoscope.js and write the following function in it:
&lt;/p&gt;
&lt;pre&gt;
function getUrlVars() {

var vars = [];

var hash;

var hashes = location.search.substr(1).split(&amp;quot;&amp;amp;&amp;quot;);

for (var i = 0; i &amp;lt; hashes.length; i++) {

hash = hashes[i].split(&amp;quot;=&amp;quot;);

vars.push(hash[0]);

vars[hash[0]] = hash[1];

}

return vars;

}
&lt;/pre&gt;
&lt;p&gt;Now you are ready to replace the empty src attribute of the image element with the location of the zodiac image in question:
&lt;/p&gt;
&lt;pre&gt;
function setZodiacImage() {

var hash = getUrlVars();

var image = &amp;quot;&amp;quot;;

switch (hash[’id’]) {

case ’0’:

image = &amp;quot;img/aries.png&amp;quot;;

break;

case ’1’:

image = &amp;quot;img/taurus.png&amp;quot;;

break;

// Rest of the cases omitted for brevity.

}

document.getElementById(&amp;quot;image&amp;quot;).src = image;

}
&lt;/pre&gt;
&lt;p&gt;The setZodiacImage() function above can be called after the image element has been declared. One possible place is right after the content div:
&lt;/p&gt;
&lt;pre&gt;
&amp;lt;div id=&amp;quot;content&amp;quot;&amp;gt;

&amp;lt;img id=&amp;quot;image&amp;quot; src=&amp;quot;img/&amp;quot; alt=&amp;quot;&amp;quot; border=&amp;quot;0&amp;quot; align=&amp;quot;left&amp;quot; hspace=&amp;quot;10&amp;quot;/&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;span class=&amp;quot;graytitle&amp;quot;&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;

&amp;lt;ul class=&amp;quot;pageitem&amp;quot;&amp;gt;

&amp;lt;li class=&amp;quot;textbox&amp;quot;&amp;gt;&amp;lt;p&amp;gt;Which horoscope would you like to see?&amp;lt;/p&amp;gt;&amp;lt;/li&amp;gt;

&amp;lt;li class=&amp;quot;menu&amp;quot;&amp;gt;&amp;lt;a href=&amp;quot;zodiac_result.html?h=d&amp;amp;id=&amp;quot;&amp;gt;&amp;lt;img alt=&amp;quot;changelog&amp;quot; src=&amp;quot;img/dayicon.png&amp;quot; /&amp;gt;&amp;lt;span class=&amp;quot;name&amp;quot;&amp;gt;daily horoscope&amp;lt;/span&amp;gt;&amp;lt;span class=&amp;quot;arrow&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;/a&amp;gt;&amp;lt;/li&amp;gt;

&amp;lt;li class=&amp;quot;menu&amp;quot;&amp;gt;&amp;lt;a href=&amp;quot;zodiac_result.html?h=w&amp;amp;id=&amp;quot;&amp;gt;&amp;lt;img alt=&amp;quot;changelog&amp;quot; src=&amp;quot;img/weekicon.png&amp;quot; /&amp;gt;&amp;lt;span class=&amp;quot;name&amp;quot;&amp;gt;weekly horoscope&amp;lt;/span&amp;gt;&amp;lt;span class=&amp;quot;arrow&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;/a&amp;gt;&amp;lt;/li&amp;gt;

&amp;lt;li class=&amp;quot;menu&amp;quot;&amp;gt;&amp;lt;a href=&amp;quot;zodiac_result.html?h=m&amp;amp;id=&amp;quot;&amp;gt;&amp;lt;img alt=&amp;quot;changelog&amp;quot; src=&amp;quot;img/monthicon.png&amp;quot; /&amp;gt;&amp;lt;span class=&amp;quot;name&amp;quot;&amp;gt;monthly horoscope&amp;lt;/span&amp;gt;&amp;lt;span class=&amp;quot;arrow&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;/a&amp;gt;&amp;lt;/li&amp;gt;

&amp;lt;/ul&amp;gt;

&amp;lt;/div&amp;gt;

&amp;lt;!-- google_afm --&amp;gt;

&amp;lt;script language=&amp;quot;javascript&amp;quot;&amp;gt;;

setZodiacImage();

&amp;lt;/script&amp;gt;
&lt;/pre&gt;
&lt;p&gt;Clicking on the ’menu’ list item elements in zodiac.html should also provide zodiac_result.html with correct IDs. Currently ID parameters are empty &lt;b&gt;(&lt;font color=&quot;#0000FF&quot;&gt;’href=&quot;zodiac_result.html?h=d&amp;amp;id=&quot;’&lt;/font&gt;). &lt;font color=&quot;#0000FF&quot;&gt;'&lt;/b&gt;&lt;i&gt;First, however, give each menu anchor an ID so that the anchors&amp;nbsp;can be referred to'&lt;/i&gt; &lt;/font&gt;from the JavaScript code. Call them ’day’, ’week’, and ’month’:
&lt;/p&gt;
&lt;pre&gt;
&amp;lt;li class=&amp;quot;menu&amp;quot;&amp;gt;&amp;lt;a id=&amp;quot;day&amp;quot; href=&amp;quot;zodiac_result.html?h=d&amp;amp;id=&amp;quot;&amp;gt;&amp;lt;img alt=&amp;quot;changelog&amp;quot; src=&amp;quot;img/dayicon.png&amp;quot; /&amp;gt;&amp;lt;span class=&amp;quot;name&amp;quot;&amp;gt;daily horoscope&amp;lt;/span&amp;gt;&amp;lt;span class=&amp;quot;arrow&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;/a&amp;gt;&amp;lt;/li&amp;gt;

&amp;lt;li class=&amp;quot;menu&amp;quot;&amp;gt;&amp;lt;a id=&amp;quot;week&amp;quot; href=&amp;quot;zodiac_result.html?h=w&amp;amp;id=&amp;quot;&amp;gt;&amp;lt;img alt=&amp;quot;changelog&amp;quot; src=&amp;quot;img/weekicon.png&amp;quot; /&amp;gt;&amp;lt;span class=&amp;quot;name&amp;quot;&amp;gt;weekly horoscope&amp;lt;/span&amp;gt;&amp;lt;span class=&amp;quot;arrow&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;/a&amp;gt;&amp;lt;/li&amp;gt;

&amp;lt;li class=&amp;quot;menu&amp;quot;&amp;gt;&amp;lt;a id=&amp;quot;month&amp;quot; href=&amp;quot;zodiac_result.html?h=m&amp;amp;id=&amp;quot;&amp;gt;&amp;lt;img alt=&amp;quot;changelog&amp;quot; src=&amp;quot;img/monthicon.png&amp;quot; /&amp;gt;&amp;lt;span class=&amp;quot;name&amp;quot;&amp;gt;monthly horoscope&amp;lt;/span&amp;gt;&amp;lt;span class=&amp;quot;arrow&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;/a&amp;gt;&amp;lt;/li&amp;gt;
&lt;/pre&gt;
&lt;p&gt;Now write a function that appends the right ID to the href attributes of every anchor element:
&lt;/p&gt;
&lt;pre&gt;
function setZodiacId() {

var vars = getUrlVars();

document.getElementById(&amp;quot;day&amp;quot;).href = document.getElementById(&amp;quot;day&amp;quot;).href + vars[’id’];

document.getElementById(&amp;quot;week&amp;quot;).href = document.getElementById(&amp;quot;week&amp;quot;).href + vars[’id’];

document.getElementById(&amp;quot;month&amp;quot;).href = document.getElementById(&amp;quot;month&amp;quot;).href + vars[’id’];

}
&lt;/pre&gt;
&lt;p&gt;Here, again, the getUrlVars() function (declared previously) parses the parameters from the URL and returns them in an array.
&lt;/p&gt;&lt;p&gt;Call this function right after you have called the setZodiacImage() function:
&lt;/p&gt;
&lt;pre&gt;
&amp;lt;script language=&amp;quot;javascript&amp;quot;&amp;gt;;

setZodiacImage();

setZodiacId();

&amp;lt;/script&amp;gt;

* zodiac_result.html:
&lt;/pre&gt;
&lt;p&gt;This HTML page shows the requested horoscope. It is the only thing that needs to be picked up from the internet. Since you do not have the original PHP code, you will get the content from the original website using Ajax, and  place the content between &amp;lt;div id=&quot;content&quot;&amp;gt;&amp;lt;/div&amp;gt; tags.
&lt;/p&gt;&lt;p&gt;The JavaScript function getHoroscope() makes a request to the horoscope website, and, after receiving data, calls another function, named gotResult():
&lt;/p&gt;
&lt;pre&gt;
function getHoroscope() {

var vars = getUrlVars();

if (window.XMLHttpRequest) {

xhr_object = new XMLHttpRequest();

} else {

alert(&amp;quot;Ajax not supported.&amp;quot;);

return;

}

var url = &amp;quot;http://horoscope.internetdesigns.eu/horoscope.php?h=&amp;quot;+vars[’h’]+&amp;quot;&amp;amp;id=&amp;quot;+vars[’id’];

xhr_object.open(&amp;quot;GET&amp;quot;, url, true);

xhr_object.onreadystatechange = gotResult;

xhr_object.send(null);

}

function gotResult() {

if (xhr_object.readyState == 4) {

if (xhr_object.status == 200) {

displayHoroscopeResult();

}

else {

alert(&amp;quot;Bad HTTP status&amp;quot;);

}

}

}
&lt;/pre&gt;
&lt;p&gt;Finally, displayHoroscopeResult() is called, and it parses the web page and writes the selected data into zodiac_result.html:
&lt;/p&gt;
&lt;pre&gt;
function displayHoroscopeResult() {

var content = xhr_object.responseText.toLowerCase();

var div_start = 0, div_stop = 0;

var text;

div_start = content.indexOf(&amp;quot;&amp;lt;div id=\&amp;quot;content\&amp;quot;&amp;quot;);

div_start = content.indexOf(&amp;quot;&amp;gt;&amp;quot;, div_start);

div_stop = content.indexOf(&amp;quot;&amp;lt;/div&amp;quot;, div_start);

text = content.slice(div_start+1, div_stop-1);

document.getElementById(&amp;quot;content&amp;quot;).innerHTML = text;

}
&lt;/pre&gt;
&lt;a name=&quot;Create_Options_menu&quot; id=&quot;Create_Options_menu&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;Create Options menu&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;Remember that iPhone is a touch-only device, whereas Nokia devices based on Symbian platform range from full QWERTY keyboard and conventional ITU-T mobile phone keys to touchscreen only. And these devices can, of course, have any or all input options in the same device.
&lt;/p&gt;&lt;p&gt;When using WRT’s widget.menu object, the WRT engine is aware of the device’s input methods, and shows the menu in the correct format. Therefore, using menu-controlled WRT is usually the way to proceed. In this case, the user probably wants to have a way to go back easily from zodiac_result.html to zodiac.html to select another scale of dates.
&lt;/p&gt;&lt;p&gt;You will want to add a menu entry in your WRT to be able to go back:
&lt;/p&gt;&lt;p&gt;- From zodiac.html to horoscope.html;
&lt;/p&gt;&lt;p&gt;- From zodiac_result.html to zodiac.html.
&lt;/p&gt;&lt;p&gt;You’ll also want to be able to go back to the main HTML page from the zodiac.html and zodiac_result.html pages.
&lt;/p&gt;&lt;p&gt;Add the menu entries using the widget menu object, which is specific to WRT technology. Creating menu entries is straightforward:
&lt;/p&gt;&lt;p&gt;- Create a menu item;
&lt;/p&gt;&lt;p&gt;- Link a callback to this menu item;
&lt;/p&gt;&lt;p&gt;- Append the menu item to the menu;
&lt;/p&gt;&lt;p&gt;- Handle menu item selection in the callback.
&lt;/p&gt;&lt;p&gt;For instance:
&lt;/p&gt;
&lt;pre&gt;
var CMD_BACK = 1;

backMenuItem = new MenuItem(&amp;quot;Back&amp;quot;, CMD_BACK);

backMenuItem.onSelect = onMenuItemSelected;

window.menu.append(backMenuItem);
&lt;/pre&gt;
&lt;p&gt;CMD_BACK is a global variable that owns a number (here: 1). Each number is used to identify the menu item in the callback, which should follow this prototype:
&lt;/p&gt;
&lt;pre&gt;
function nameOfCallBack(&amp;lt;parameter&amp;gt;)
&lt;/pre&gt;
&lt;p&gt;In your case:
&lt;/p&gt;
&lt;pre&gt;
function onMenuItemSelected(command) {

switch (command) {

case CMD_BACK:

// Branch depending on where you are

if (location.href.indexOf(&amp;quot;zodiac.html&amp;quot;)&amp;nbsp;!= -1) {

// If you are on the zodiac.html page, go back to the main page

location = &amp;quot;horoscope.html&amp;quot;;

} else if (location.href.indexOf(&amp;quot;zodiac_result.html&amp;quot;)&amp;nbsp;!= -1) {

// If you are on the zodiac_result.html page, go back to the

// zodiac.html page. Take care that the zodiac ID is preserved.

var vars = getUrlVars();

var id = vars[’id’];

location = &amp;quot;zodiac.html?id=&amp;quot; + id;

}

break;

default:

break;

}

}
&lt;/pre&gt;
&lt;p&gt;Have a look at the addMenus() function in the horoscope.js file. It is called by init(), which is called by the onload JavaScript event.
&lt;/p&gt;&lt;p&gt;NOTE: It is also possible to implement the Back command on the right softkey. This provides a typical way of switching between different views and also prevents accidental closing of the application. For further details, see a related Forum Nokia code snippet: &lt;a href=&quot;http://wiki.forum.nokia.com/index.php/CS001402_-_Controlling_the_softkey_in_WRT&quot; class=&quot;external free&quot; title=&quot;http://wiki.forum.nokia.com/index.php/CS001402_-_Controlling_the_softkey_in_WRT&quot; rel=&quot;nofollow&quot;&gt;http://wiki.forum.nokia.com/index.php/CS001402_-_Controlling_the_softkey_in_WRT&lt;/a&gt;.
&lt;/p&gt;
&lt;a name=&quot;Conclusions&quot; id=&quot;Conclusions&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;Conclusions&lt;/span&gt;&lt;/h1&gt;
&lt;a name=&quot;First_conclusion&quot; id=&quot;First_conclusion&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;First conclusion&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;Porting the web app to WRT is easy. Moreover, you don’t need any specific knowledge or technique to do it. In other words, an experienced iPhone web app developer won’t have any trouble switching to WRT. The only issue is if the web app uses CSS 3.0 or iPhone-specific JavaScript events (see Chapter 4, Replacement technologies &lt;a href=&quot;/index.php/Porting_iPhone_web_app_to_WRT_on_Nokia_devices&quot; title=&quot;Porting iPhone web app to WRT on Nokia devices&quot;&gt;Porting iPhone web app to WRT on Nokia devices&lt;/a&gt;.
&lt;/p&gt;
&lt;a name=&quot;Second_conclusion&quot; id=&quot;Second_conclusion&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;Second conclusion&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;Creating menus on WRT is quite simple. Though this was a small example of what you can do with WRT JavaScript APIs, all other APIs are quite easy to use, too. Again, switching from iPhone web app development to WRT should not be hard — knowing JavaScript enables you to be ready to develop for WRT; you simply need the API documentation provided in the Forum Nokia &lt;a href=&quot;http://library.forum.nokia.com/index.jsp?topic=/Web_Developers_Library/GUID-57DAF2D2-28DF-45F4-B901-05F4B2CFF109.html&quot; class=&quot;external text&quot; title=&quot;http://library.forum.nokia.com/index.jsp?topic=/Web_Developers_Library/GUID-57DAF2D2-28DF-45F4-B901-05F4B2CFF109.html&quot; rel=&quot;nofollow&quot;&gt;Web Developer's Library&lt;/a&gt;.
&lt;/p&gt;
&lt;a name=&quot;iPhone_web_app.2FWRT_widget_co-development_tips&quot; id=&quot;iPhone_web_app.2FWRT_widget_co-development_tips&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;iPhone web app/WRT widget co-development tips&lt;/span&gt;&lt;/h1&gt;
&lt;p&gt;You’ve seen how to port an iPhone web app to a WRT widget. This works well as a one-shot activity, but is tedious to maintain if the original web app is updated. Thus, when creating a new web app/widget it is worthwhile to avoid using any WRT- or iPhone-specific components, or to make sure that both platforms are supported.
&lt;/p&gt;
&lt;a name=&quot;A_small_WRT_widget_acts_as_a_launcher&quot; id=&quot;A_small_WRT_widget_acts_as_a_launcher&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;A small WRT widget acts as a launcher&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;If you want to keep both platforms supported, here’s one solution. Provide a small launcher WRT widget, which will load the iPhone- and Nokia device -enabled remote web app.
&lt;/p&gt;&lt;p&gt;The launcher widget will:
&lt;/p&gt;&lt;p&gt;- Set up the menu entries (back item, etc.);
&lt;/p&gt;&lt;p&gt;- Load the remote web page from the internet.
&lt;/p&gt;&lt;p&gt;You will only need the horoscope.html page in your widget, with the following content:
&lt;/p&gt;
&lt;pre&gt;
&amp;lt;!DOCTYPE html PUBLIC &amp;quot;-//W3C//DTD XHTML 1.0 Strict//EN&amp;quot; &amp;quot;http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd&amp;quot;&amp;gt;

&amp;lt;html xmlns=&amp;quot;http://www.w3.org/1999/xhtml&amp;quot;&amp;gt;

&amp;lt;head&amp;gt;

&amp;lt;title&amp;gt;Horoscope&amp;lt;/title&amp;gt;

&amp;lt;meta http-equiv=&amp;quot;Content-Type&amp;quot; content=&amp;quot;text/html; charset=UTF-8&amp;quot; /&amp;gt;

&amp;lt;/head&amp;gt;

&amp;lt;body&amp;gt;

&amp;lt;/body&amp;gt;

&amp;lt;script language=&amp;quot;JavaScript&amp;quot;&amp;gt;

var CMD_BACK = 1;

function onSelectedItem(command) {

switch (command) {

case CMD_BACK:

history.back();

break;

}

}

if (window.widget) {

var timerid = setInterval(function() {

if (history.length&amp;nbsp;!= 0) {

var backMenuItem = new MenuItem(&amp;quot;Back&amp;quot;, CMD_BACK);

backMenuItem.onSelect = onSelectedItem;

window.menu.append(backMenuItem);

clearInterval(timerid);

}

}, 1500);

widget.setNavigationEnabled(true);

window.menu.showSoftkeys();

}

this.location.href=&amp;quot;http://horoscope.internetdesigns.eu/&amp;quot;;

&amp;lt;/script&amp;gt;

&amp;lt;/html&amp;gt;
&lt;/pre&gt;
&lt;p&gt;&lt;br /&gt;
In this case, the only maintenance needed in the WRT widget involves the menu: adding/removing/modifying items. The work will be centralised on &lt;a href=&quot;http://horoscope.internetdesigns.eu/&quot; class=&quot;external free&quot; title=&quot;http://horoscope.internetdesigns.eu/&quot; rel=&quot;nofollow&quot;&gt;http://horoscope.internetdesigns.eu/&lt;/a&gt;, the original web app.
&lt;/p&gt;&lt;p&gt;&lt;a href=&quot;/index.php/File:Wrt_white2.jpg&quot; class=&quot;image&quot; title=&quot;File:Wrt_white2.jpg&quot;&gt;&lt;img alt=&quot;File:Wrt_white2.jpg&quot; src=&quot;http://www.forum.nokia.com/piazza/wiki/images/2/2d/Wrt_white2.jpg&quot; width=&quot;402&quot; height=&quot;325&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;&lt;p&gt;Device includes the simple WRT files and the updateable code resides on the server side. Code updates have an effect on both WRT and iPhone pages.
&lt;/p&gt;
&lt;a name=&quot;Optimising_the_UI&quot; id=&quot;Optimising_the_UI&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;Optimising the UI&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;Taking both iPhone and Nokia devices based on Symbian platform into account is a pretty straightforward matter with this web application. The only required modification is to adapt the table on the first page (horoscope.html) to the screen size of the device, which you already did in Section 2.6, ’Make the applications scalable to different screen sizes’. That is all that is needed, because JavaScript works on both platforms. Now, maintaining both the web app and the WRT widget will only require maintaining the code on &lt;a href=&quot;http://horoscope.internetdesigns.eu/&quot; class=&quot;external free&quot; title=&quot;http://horoscope.internetdesigns.eu/&quot; rel=&quot;nofollow&quot;&gt;http://horoscope.internetdesigns.eu/&lt;/a&gt;.
&lt;/p&gt;&lt;p&gt;When porting the application, we did not fully optimise the user interface for Nokia devices (for example for S60 5th Edition devices). Optimisation is naturally recommended to achieve the best look and feel on target devices. This porting case was intended to demonstrate basic porting steps; fine-tuning of the application to fully meet the Nokia UI guidelines and user experience recommendations will be covered in upcoming articles.
&lt;/p&gt;
&lt;a name=&quot;Using_device-specific_JavaScript_APIs_in_WRT&quot; id=&quot;Using_device-specific_JavaScript_APIs_in_WRT&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;Using device-specific JavaScript APIs in WRT&lt;/span&gt;&lt;/h1&gt;
&lt;p&gt;If the web app uses specific third-party JavaScript APIs that let the developer access device-specific (in this case, iPhone-specific) features, porting to WRT may not be as simple as demonstrated here. One of these APIs is PhoneGAP. This API provides functions for accessing location, contact and accelerometer data, and making use of the device’s vibration and sound functionality. Unfortunately, even though PhoneGap is supposed to be a cross-platform API, it will not run on Nokia devices based on Symbian platform. However, if you have used such a third-party API, it is still possible to make your code compatible with Nokia devices by using Platform Services. Platform Services will allow WRT widgets to do the following:
&lt;/p&gt;
&lt;ul&gt;&lt;li&gt; Access and launch applications on a device (AppManager Service API)
&lt;/li&gt;&lt;/ul&gt;
&lt;ul&gt;&lt;li&gt; Access and manage calendar information (Calendar Service API)
&lt;/li&gt;&lt;/ul&gt;
&lt;ul&gt;&lt;li&gt; Access and manage information about contacts (Contacts Service API)
&lt;/li&gt;&lt;/ul&gt;
&lt;ul&gt;&lt;li&gt; Access and manage information about landmarks (Landmarks Service API)
&lt;/li&gt;&lt;/ul&gt;
&lt;ul&gt;&lt;li&gt; Access device logging events (Logging Service API)
&lt;/li&gt;&lt;/ul&gt;
&lt;ul&gt;&lt;li&gt; Access device location information and perform location-based calculations (Location Service API)
&lt;/li&gt;&lt;/ul&gt;
&lt;ul&gt;&lt;li&gt; Access information about media files stored on a device (Media Management Service API)
&lt;/li&gt;&lt;/ul&gt;
&lt;ul&gt;&lt;li&gt; Send, retrieve, and manage messages such as SMS and MMS (Messaging Service API)
&lt;/li&gt;&lt;/ul&gt;
&lt;ul&gt;&lt;li&gt; Access data from the physical sensors of a device (Sensor Service API)
&lt;/li&gt;&lt;/ul&gt;
&lt;ul&gt;&lt;li&gt; Access and modify system information on a device (SystemInfo Service API of WRT 1.1)
&lt;/li&gt;&lt;/ul&gt;
&lt;ul&gt;&lt;li&gt; Access system information and control certain device features (SystemInfo Service API of WRT 1.0)
&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;Platform Services are supported from S60 5th Edition onwards and are available as updates to some S60 3rd Edition devices as well.
&lt;/p&gt;&lt;p&gt;Developers can use device detection mechanisms familiar from the mobile web to figure out if the device the application is running in supports extra functionalities. More information can be found at: &lt;a href=&quot;http://wiki.forum.nokia.com/index.php/Mobilising_your_Web_Service#Detecting_the_client_browser&quot; class=&quot;external free&quot; title=&quot;http://wiki.forum.nokia.com/index.php/Mobilising_your_Web_Service#Detecting_the_client_browser&quot; rel=&quot;nofollow&quot;&gt;http://wiki.forum.nokia.com/index.php/Mobilising_your_Web_Service#Detecting_the_client_browser&lt;/a&gt;.
&lt;/p&gt;
&lt;a name=&quot;Final_conclusion&quot; id=&quot;Final_conclusion&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;Final conclusion&lt;/span&gt;&lt;/h1&gt;
&lt;p&gt;It is fairly straightforward to port an iPhone web app that uses basic HTML, CSS, and JavaScript to WRT. Developers will need to rework the web app a bit more to provide similar functionality in a WRT widget &lt;i&gt;only&lt;/i&gt; if device-specific APIs were originally used. Fortunately, the technologies supported in the platforms are very similar — behind the scenes it is still HTML/CSS/JavaScript. This means that iPhone developers will not face an unknown world when switching to WRT widgets. On top of that, the potential user base for their applications will expand tremendously.
&lt;/p&gt;&lt;p&gt;To test the ported application on a device, download the unzip the Horoscope.zip file and install the widget (horoscope.wgz) to your device.
&lt;/p&gt;&lt;p&gt;&lt;a href=&quot;http://www.forum.nokia.com/piazza/wiki/images/e/e2/Horoscope.zip&quot; class=&quot;internal&quot; title=&quot;Horoscope.zip&quot;&gt;Media:Horoscope.zip&lt;/a&gt;
&lt;/p&gt;
&lt;hr /&gt;
&lt;p&gt;Copyright © 2009 Nokia Corporation. All rights reserved.
Nokia and Forum Nokia are trademarks or registered trademarks of Nokia Corporation. Java and all Java-based marks are trademarks or registered trademarks of Sun Microsystems, Inc. Other product and company names mentioned may be trademarks or trade names of their respective owners.
&lt;/p&gt;</description>
			<pubDate>Thu, 19 Nov 2009 20:02:07 GMT</pubDate>			<dc:creator>Jimgilmour1</dc:creator>			<comments>http://wiki.forum.nokia.com/index.php/Talk:Porting_iPhone_web_app_to_WRT_-_a_porting_example</comments>		</item>
		<item>
			<title>Porting iPhone web app to WRT on Nokia devices</title>
			<link>http://wiki.forum.nokia.com/index.php/Porting_iPhone_web_app_to_WRT_on_Nokia_devices</link>
			<description>&lt;table id=&quot;toc&quot; class=&quot;toc&quot; summary=&quot;Contents&quot;&gt;&lt;tr&gt;&lt;td&gt;&lt;div id=&quot;toctitle&quot;&gt;&lt;h2&gt;Contents&lt;/h2&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li class=&quot;toclevel-1&quot;&gt;&lt;a href=&quot;#Introduction&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;1&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Introduction&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-1&quot;&gt;&lt;a href=&quot;#General_considerations&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;2&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;General considerations&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-1&quot;&gt;&lt;a href=&quot;#Compatible_technologies&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;3&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Compatible technologies&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-1&quot;&gt;&lt;a href=&quot;#Replacement_technologies&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;4&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Replacement technologies&lt;/span&gt;&lt;/a&gt;
&lt;ul&gt;
&lt;li class=&quot;toclevel-2&quot;&gt;&lt;a href=&quot;#Client-side_storage_with_HTML_5_features&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;4.1&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Client-side storage with HTML 5 features&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-2&quot;&gt;&lt;a href=&quot;#Canvas_vector_drawing&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;4.2&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Canvas vector drawing&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-2&quot;&gt;&lt;a href=&quot;#Viewport_metadata&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;4.3&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Viewport metadata&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-2&quot;&gt;&lt;a href=&quot;#Icon_for_home_page&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;4.4&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Icon for home page&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-2&quot;&gt;&lt;a href=&quot;#Touch_events&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;4.5&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Touch events&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li class=&quot;toclevel-1&quot;&gt;&lt;a href=&quot;#Technologies_not_supported_by_Nokia_devices_based_on_Symbian_platform_and_WRT&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;5&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Technologies not supported by Nokia devices based on Symbian platform and WRT&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-1&quot;&gt;&lt;a href=&quot;#Additional_technologies_supported_in_WRT&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;6&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Additional technologies supported in WRT&lt;/span&gt;&lt;/a&gt;
&lt;ul&gt;
&lt;li class=&quot;toclevel-2&quot;&gt;&lt;a href=&quot;#Widget_as_a_stand-alone_application&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;6.1&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Widget as a stand-alone application&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-2&quot;&gt;&lt;a href=&quot;#Additional_features&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;6.2&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Additional features&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li class=&quot;toclevel-1&quot;&gt;&lt;a href=&quot;#iPhone_to_WRT_tips_and_hints&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;7&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;iPhone to WRT tips and hints&lt;/span&gt;&lt;/a&gt;
&lt;ul&gt;
&lt;li class=&quot;toclevel-2&quot;&gt;&lt;a href=&quot;#External_links&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;7.1&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;External links&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-2&quot;&gt;&lt;a href=&quot;#Client-side_storage_with_HTML_5_features_2&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;7.2&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Client-side storage with HTML 5 features&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li class=&quot;toclevel-1&quot;&gt;&lt;a href=&quot;#IDE_issues&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;8&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;IDE issues&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-1&quot;&gt;&lt;a href=&quot;#Web_browsing_on_Nokia_devices_based_on_Symbian_Platform&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;9&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Web browsing on Nokia devices based on Symbian Platform&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;script type=&quot;text/javascript&quot;&gt; if (window.showTocToggle) { var tocShowText = &quot;show&quot;; var tocHideText = &quot;hide&quot;; showTocToggle(); } &lt;/script&gt;
&lt;p&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;a name=&quot;Introduction&quot; id=&quot;Introduction&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;Introduction&lt;/span&gt;&lt;/h1&gt;
&lt;hr /&gt;
&lt;p&gt;This article provides information that iPhone web app developers need to know when switching to Web Runtime (WRT) development on Nokia devices based on Symbian platform. In this article, WRT refers to WRT on the following Nokia devices based on Symbian platform: S60 5th Edition devices, S60 3rd Edition, Feature Pack 2 devices, and selected S60 3rd Edition, Feature Pack 1 devices. 
&lt;/p&gt;&lt;p&gt;Porting to WRT is a great way to add volume to the user base and expand markets, with minimal investment. It is beneficial to target as many vendors as possible, and WRT offers an economical way to do it. Lots of iPhone web apps in the market work on Nokia devices based on Symbian platform, with only minor adjustments and optimizations to the screen (adjustments may need to be made to resources on the UI front end; nothing may need to change on the back end). The simplest and fastest way to make them work is to create a WRT widget that includes a link to the web page and add an icon for the widget to the application shell. This is possible because basic web technologies (HTML; Cascading Style Sheets, or CSS; and JavaScript™) work for both iPhone and Nokia devices based on Symbian platform.
&lt;/p&gt;&lt;p&gt;When starting the porting work, it’s a good idea to consider exploiting all the possibilities WRT offers, such as Platform Services. Access to location, phone book, camera functions, and so on adds a great integration experience. Obviously, a static web page from the server side cannot achieve this. Using Platform Services is optional, of course, but the rewards are substantial.
&lt;/p&gt;&lt;p&gt;WRT offers other benefits, too, including real multitasking and multiprocesses. Widgets can run simultaneously, there is no need to exit the widget when going to external web sites, and other applications can be launched at the same time. With the introduction of home-screen widgets in S60 5th Edition (for example, the Nokia N97 device), a background process provides live updates to enable better experiences. WRT takes web technology on mobile devices to a whole new level, making it a truly application-like experience. WRT widget delivery is also straightforward; there's no need to sign the widget and e.g. &lt;a href=&quot;http://www.forum.nokia.com/Ovi&quot; class=&quot;external text&quot; title=&quot;http://www.forum.nokia.com/Ovi&quot; rel=&quot;nofollow&quot;&gt;Ovi Store&lt;/a&gt; offers an easy way to distribute and monetize the widgets to Nokia users all over the world. 
&lt;/p&gt;&lt;p&gt;This article assumes the reader has a good basic knowledge of web technologies (HTML, CSS, JavaScript, Ajax, XML, etc.). The real porting example (porting a horoscope web app from iPhone to WRT) is described in details in the article &lt;a href=&quot;/index.php/Porting_iPhone_web_app_to_WRT_-_a_porting_example&quot; title=&quot;Porting iPhone web app to WRT - a porting example&quot;&gt;Porting iPhone web app to WRT - a porting example&lt;/a&gt;.
&lt;/p&gt;
&lt;a name=&quot;General_considerations&quot; id=&quot;General_considerations&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;General considerations&lt;/span&gt;&lt;/h1&gt;
&lt;p&gt;The iPhone (and iPod Touch) browser is Mobile Safari, based on the open source WebKit browser. S60 5th Edition devices (such as the Nokia 5800 XpressMusic or Nokia N97 device) use the same base (WebKit) for both the mobile browser and the widget engine (WRT), which provides a similar experience for the part of standard HTML and CSS on both platforms.
&lt;/p&gt;&lt;p&gt;The iPhone SDK does not provide a comprehensive solution for building stand-alone applications using only HTML/CSS /JavaScript. Small applications such as widgets are usually based on native code. While the iPhone browser allows some interaction with device resources (for example, using HTML off-line data functionality), the JavaScript APIs exposed by WRT are in many ways more comprehensive and offer the possibility of developing fully fledged applications with JavaScript. This is perhaps the biggest difference between iPhone and Nokia devices based on S60 5th Edition, where web-based widgets (or WRT) provide extensive JavaScript APIs that allow developers to reach the same powerful functions as with native code.
&lt;/p&gt;&lt;p&gt;WRT is comparable to other widget development environments such as Google Gadgets and desktop Apple Dashboard widgets, with added extras such as device interaction (GPS, Calendar, Contacts, Sensor data, Messaging, etc.) and Flash from Adobe.
&lt;/p&gt;
&lt;a name=&quot;Compatible_technologies&quot; id=&quot;Compatible_technologies&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;Compatible technologies&lt;/span&gt;&lt;/h1&gt;
&lt;p&gt;Both platforms implement various web-standardized technologies. Therefore, most of these technologies are compatible with both platforms. Here, globally, is what developers can keep in S60 5th Edition:
&lt;/p&gt;
&lt;ul&gt;&lt;li&gt; HTML 4.01, XHTML 1.0/1.1 and XHTML Mobile Profile (MP)
&lt;/li&gt;&lt;/ul&gt;
&lt;ul&gt;&lt;li&gt; CSS 2.1
&lt;/li&gt;&lt;/ul&gt;
&lt;ul&gt;&lt;li&gt; JavaScript 1.5
&lt;/li&gt;&lt;/ul&gt;
&lt;ul&gt;&lt;li&gt; XMLHttpRequest object for Ajax
&lt;/li&gt;&lt;/ul&gt;
&lt;ul&gt;&lt;li&gt; URL schemes for short message service (SMS), mail sending, phone call, Maps and YouTube.
&lt;/li&gt;&lt;/ul&gt;
&lt;a name=&quot;Replacement_technologies&quot; id=&quot;Replacement_technologies&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;Replacement technologies&lt;/span&gt;&lt;/h1&gt;
&lt;p&gt;Some iPhone-specific technologies have to be replaced on S60 5th Edition, either because they are Apple specific or because iPhone is sporting a slightly newer version of the WebKit core, with support for, for example, HTML5 off-line functionality. Here are the technologies and their replacements on S60 5th Edition.
&lt;/p&gt;
&lt;a name=&quot;Client-side_storage_with_HTML_5_features&quot; id=&quot;Client-side_storage_with_HTML_5_features&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;Client-side storage with HTML 5 features&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;On WRT, it is preferable to use the WRT JavaScript API or cookies to do such a task. See
&lt;/p&gt;&lt;p&gt;&lt;a href=&quot;http://wiki.forum.nokia.com/index.php/Storing_settings_in_WRT&quot; class=&quot;external free&quot; title=&quot;http://wiki.forum.nokia.com/index.php/Storing_settings_in_WRT&quot; rel=&quot;nofollow&quot;&gt;http://wiki.forum.nokia.com/index.php/Storing_settings_in_WRT&lt;/a&gt;.
&lt;/p&gt;&lt;p&gt;On iPhone, use:
&lt;/p&gt;&lt;p&gt;&lt;a href=&quot;http://webkit.org/blog/126/webkit-does-html5-client-side-database-storage/&quot; class=&quot;external free&quot; title=&quot;http://webkit.org/blog/126/webkit-does-html5-client-side-database-storage/&quot; rel=&quot;nofollow&quot;&gt;http://webkit.org/blog/126/webkit-does-html5-client-side-database-storage/&lt;/a&gt;.
&lt;/p&gt;
&lt;a name=&quot;Canvas_vector_drawing&quot; id=&quot;Canvas_vector_drawing&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;Canvas vector drawing&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;This is currently not supported on Nokia devices based on Symbian platform. As a replacement, consider using Flash Lite from Adobe. The iPhone JavaScript contained in your canvas tags can be exported easily into ActionScript 2.0 in Flash. Another solution is to create the drawing using the SVG Tiny standard.
&lt;/p&gt;
&lt;a name=&quot;Viewport_metadata&quot; id=&quot;Viewport_metadata&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;Viewport metadata&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;iPhone web apps support the viewport metadata to give information about the zoom and content area that you want to use in your website. The viewport is the area that determines specifics about laying out the content (for example, where text wraps on the web page). The Web Browser for Nokia devices based on Symbian platform automatically adjusts the content to the screen, so there is no need to use this feature. If you create a WRT widget  you can have a full-screen web application similar to the full-screen mode in an iPhone web app.
&lt;/p&gt;
&lt;a name=&quot;Icon_for_home_page&quot; id=&quot;Icon_for_home_page&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;Icon for home page&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;The home screen icon for iPhone is a meta-tag that won’t make any difference in the website or WRT widget. You can leave, or not, the following tag if you are using it in your iPhone application:
&lt;/p&gt;
&lt;pre&gt;&amp;lt;link rel=&amp;quot;apple-touch-icon&amp;quot; href=&amp;quot;/path_to_icon.png&amp;quot;/&amp;gt;&lt;/pre&gt;
&lt;p&gt;If you want to use the same icon in your WRT widget, rename the icon to icon.png and copy it into the root folder of the widget. You can replace or add the following line to use the same icon as the shortcut icon used in the Web Browser’s Bookmarks. This will not have any effect on WRT widgets and is only valid when creating a mobile web page.
&lt;/p&gt;
&lt;pre&gt;&amp;lt;link rel=&amp;quot;shortcut icon&amp;quot; href=&amp;quot;/path_to_icon.png&amp;quot;&amp;gt;&lt;/pre&gt;
&lt;p&gt;Both metatags can live in the same HTML page. iPhone will use the first one and Nokia devices based on Symbian platform will use the second. The PNG file must be 57 x 57 pixels to be compatible for iPhone. Nokia devices can use that as well, or you can create a 16 x 16 ICO file and reduce the size of the image.
&lt;/p&gt;
&lt;a name=&quot;Touch_events&quot; id=&quot;Touch_events&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;Touch events&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;S60 on Symbian platform OS is not meant to run on multitouch-based mobile devices. Therefore, all iPhone-specific events that begin with ’ontouch*’ and ’ongesture*’ have to be dropped. As a replacement, use the standard events (onclick, onmousedown, etc.). Make sure that the events behave as expected after the change has been made.
&lt;/p&gt;
&lt;a name=&quot;Technologies_not_supported_by_Nokia_devices_based_on_Symbian_platform_and_WRT&quot; id=&quot;Technologies_not_supported_by_Nokia_devices_based_on_Symbian_platform_and_WRT&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;Technologies not supported by Nokia devices based on Symbian platform and WRT&lt;/span&gt;&lt;/h1&gt;
&lt;ul&gt;&lt;li&gt; CSS 3.0 features
&lt;/li&gt;&lt;/ul&gt;
&lt;ul&gt;&lt;li&gt; Dedicated WebKit CSS visual effects
&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;The following CSS iPhone properties will not work in all versions of the Web Browser on Nokia devices. If you leave them, however, they should not affect the rendering:
&lt;/p&gt;
&lt;ul&gt;&lt;li&gt; -webkit-border-image
&lt;/li&gt;&lt;/ul&gt;
&lt;ul&gt;&lt;li&gt; -webkit-border-radius
&lt;/li&gt;&lt;/ul&gt;
&lt;ul&gt;&lt;li&gt; -webkit-text-size-adjust
&lt;/li&gt;&lt;/ul&gt;
&lt;ul&gt;&lt;li&gt; -webkit-tap-highlight-color
&lt;/li&gt;&lt;/ul&gt;
&lt;ul&gt;&lt;li&gt; CSS transforms (scaling, rotating, skewing, and translating objects using the &lt;i&gt;-webkit-transform&lt;/i&gt; property)
&lt;/li&gt;&lt;/ul&gt;
&lt;ul&gt;&lt;li&gt; Touch events (see Section 4, ’Replacement technologies’)
&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;The following JavaScript events will not work in the browser or WRT widget:
&lt;/p&gt;
&lt;ul&gt;&lt;li&gt; ontouchstart
&lt;/li&gt;&lt;/ul&gt;
&lt;ul&gt;&lt;li&gt; ontouchend
&lt;/li&gt;&lt;/ul&gt;
&lt;ul&gt;&lt;li&gt; ontouchmove
&lt;/li&gt;&lt;/ul&gt;
&lt;ul&gt;&lt;li&gt; ontouchend
&lt;/li&gt;&lt;/ul&gt;
&lt;ul&gt;&lt;li&gt; ongesturestart
&lt;/li&gt;&lt;/ul&gt;
&lt;ul&gt;&lt;li&gt; ongestureend
&lt;/li&gt;&lt;/ul&gt;
&lt;ul&gt;&lt;li&gt; ongesturechange
&lt;/li&gt;&lt;/ul&gt;
&lt;a name=&quot;Additional_technologies_supported_in_WRT&quot; id=&quot;Additional_technologies_supported_in_WRT&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;Additional technologies supported in WRT&lt;/span&gt;&lt;/h1&gt;
&lt;a name=&quot;Widget_as_a_stand-alone_application&quot; id=&quot;Widget_as_a_stand-alone_application&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;Widget as a stand-alone application&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;iPhone web apps are usually meant to be deployed from a web server, so they can be accessed through the internet connection on iPhone. This is perhaps the biggest difference from WRT: WRT widgets can be embedded into the device itself and run as stand-alone applications (while of course being able to access resources on the web, as well).
&lt;/p&gt;&lt;p&gt;On iPhone, there is a trick to make a web app appear like a stand-alone application, with an icon in the application shell. The idea is to create a small native code snippet that uses the UIWebView class to run the web-based code of the widget. On WRT, you are only writing web-based code and not a single line of native code.
&lt;/p&gt;
&lt;a name=&quot;Additional_features&quot; id=&quot;Additional_features&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;Additional features&lt;/span&gt;&lt;/h2&gt;
&lt;ul&gt;&lt;li&gt; Flash support
&lt;/li&gt;&lt;/ul&gt;
&lt;ul&gt;&lt;li&gt; iFrame support
&lt;/li&gt;&lt;/ul&gt;
&lt;ul&gt;&lt;li&gt; Localized name and icon for Applications menu
&lt;/li&gt;&lt;/ul&gt;
&lt;ul&gt;&lt;li&gt; UI string localization support
&lt;/li&gt;&lt;/ul&gt;
&lt;ul&gt;&lt;li&gt; Navigation features for hiding or showing the cursor, allowing tab navigation, and creating transitions between divs.
&lt;/li&gt;&lt;/ul&gt;
&lt;ul&gt;&lt;li&gt; Home-screen support (in compatible devices such as the Nokia N97 device)
&lt;/li&gt;&lt;/ul&gt;
&lt;ul&gt;&lt;li&gt; Platform services
&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;WRT provides a set of APIs that gives you the ability to access most of the device’s underlying features. These JavaScript APIs allow you to create high-featured applications without typing any native code, which is the true strength of WRT widgets.
&lt;/p&gt;&lt;p&gt;For more information, see:
&lt;/p&gt;&lt;p&gt;&lt;a href=&quot;http://library.forum.nokia.com/index.jsp?topic=/Web_Developers_Library/GUID-65AAF569-D347-462B-B59A-9D7CA184AB9C.html&quot; class=&quot;external free&quot; title=&quot;http://library.forum.nokia.com/index.jsp?topic=/Web_Developers_Library/GUID-65AAF569-D347-462B-B59A-9D7CA184AB9C.html&quot; rel=&quot;nofollow&quot;&gt;http://library.forum.nokia.com/index.jsp?topic=/Web_Developers_Library/GUID-65AAF569-D347-462B-B59A-9D7CA184AB9C.html&lt;/a&gt;
&lt;/p&gt;&lt;p&gt;&lt;a href=&quot;/index.php/File:Iphone_white.png&quot; class=&quot;image&quot; title=&quot;File:Iphone_white.png&quot;&gt;&lt;img alt=&quot;File:Iphone_white.png&quot; src=&quot;http://www.forum.nokia.com/piazza/wiki/images/f/fb/Iphone_white.png&quot; width=&quot;379&quot; height=&quot;309&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;/index.php/File:Wrt_white2.jpg&quot; class=&quot;image&quot; title=&quot;File:Wrt_white2.jpg&quot;&gt;&lt;img alt=&quot;File:Wrt_white2.jpg&quot; src=&quot;http://www.forum.nokia.com/piazza/wiki/images/2/2d/Wrt_white2.jpg&quot; width=&quot;402&quot; height=&quot;325&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;&lt;p&gt;iPhone doesn’t save any files on the device side. WRT widget uses only the server side PHP code and since other files reside on the device, the application can use the device capabilities.
&lt;/p&gt;
&lt;ul&gt;&lt;li&gt;Widget object
&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;For more information, see:
&lt;/p&gt;&lt;p&gt;&lt;a href=&quot;http://library.forum.nokia.com/index.jsp?topic=/Web_Developers_Library/GUID-7C69DDA4-16F1-4A8F-BDB2-4CB0015B4E81.html&quot; class=&quot;external free&quot; title=&quot;http://library.forum.nokia.com/index.jsp?topic=/Web_Developers_Library/GUID-7C69DDA4-16F1-4A8F-BDB2-4CB0015B4E81.html&quot; rel=&quot;nofollow&quot;&gt;http://library.forum.nokia.com/index.jsp?topic=/Web_Developers_Library/GUID-7C69DDA4-16F1-4A8F-BDB2-4CB0015B4E81.html&lt;/a&gt;
&lt;/p&gt;
&lt;a name=&quot;iPhone_to_WRT_tips_and_hints&quot; id=&quot;iPhone_to_WRT_tips_and_hints&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;iPhone to WRT tips and hints&lt;/span&gt;&lt;/h1&gt;
&lt;a name=&quot;External_links&quot; id=&quot;External_links&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;External links&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;For external links (to another website, YouTube video, or Google Maps application), a web app for iPhone uses the A tag in HTML. In WRT widgets it is recommended to open a new browser instance to let the user access external content outside of your widget. This is achieved with the widget.openURL() method, which leaves your widget on the background while the user browses the external content.
&lt;/p&gt;&lt;p&gt;You can change every link:
&lt;/p&gt;
&lt;pre&gt;&amp;lt;a href=&amp;quot;http://www.cnn.com&amp;quot;&amp;gt;Go To CNN&amp;lt;/a&amp;gt;&lt;/pre&gt;
&lt;p&gt;with this code:
&lt;/p&gt;
&lt;pre&gt;&amp;lt;a href=&amp;quot;JavaScript:widget.openURL('http://www.cnn.com')&amp;quot;&amp;gt;Go To CNN&amp;lt;/a&amp;gt;&lt;/pre&gt;
&lt;p&gt;Or, if you want to be unobtrusive, you can leave the original link and cancel it if it is a WRT engine:
&lt;/p&gt;
&lt;pre&gt;
&amp;lt;a href=&amp;quot;http://www.cnn.com&amp;quot; onclick=&amp;quot;if (widget!=undefined) {widget.openURL(this.href); return false}&amp;quot;&amp;gt;Go To CNN&amp;lt;/a&amp;gt;&lt;/pre&gt;
&lt;a name=&quot;Client-side_storage_with_HTML_5_features_2&quot; id=&quot;Client-side_storage_with_HTML_5_features_2&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;Client-side storage with HTML 5 features&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;In an iPhone web app you can use HTML 5 features to generate SQL-like databases on the client. With WRT widgets you can use the setPreferenceForKey method of the widget object to store information on the device for future use from the widget.
&lt;/p&gt;
&lt;pre&gt;
// To store a variable

widget.setPreferenceForKey(’value’, ’name’);

// To retrieve a variable

var data = widget.preferenceForKey(’name’);

&lt;/pre&gt;
&lt;p&gt;The value is a string, so if in your iPhone web app you were using tables with records you can recreate the same scheme using an array of objects in JavaScript and then convert them to a JSON-like string. The string can be converted again to an array of objects using the eval() method. If you are using Prototype or jQuery, the library can help you convert the array to a JSON string. Here is an example:
&lt;/p&gt;&lt;p&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;pre&gt;
//Class Friend definition

var Friend = function(n, i, e) {

this.name = n;

this.icon = i;

this.email = e;

}

function quote(string) {

       return &amp;quot;'&amp;quot; + string.replace(&amp;quot;'&amp;quot;, &amp;quot;\'&amp;quot;) + &amp;quot;'&amp;quot;;
   }


// Function to convert a Friend to JSON-friendly

function friendToJSON(friend) {

return &amp;quot;{ name: &amp;quot; + quote(friend.name) + &amp;quot;, icon: &amp;quot; +

quote(friend.icon) + &amp;quot;, email: &amp;quot; +

quote(email) +

&amp;quot;}&amp;quot;;

}

// Function to convert an array to JSON-friendly

function arrayToJSON(array) {

var json = &amp;quot;[&amp;quot;;

for (var i=0; i&amp;lt;array.length; i++) {

json += array[i].toJSON() + (i==array.length-1)&amp;nbsp;? &amp;quot;&amp;quot;&amp;nbsp;: &amp;quot;,&amp;quot;;

}

json += &amp;quot;]&amp;quot;;

return json;

}

// Save friends ’table’ to the storage

function saveFriends() {

widget.setPreferenceForKey(arrayToJSON(friends), ’friends’);

}

// Load friends from the storage or create the storage for the first time

function loadFriends() {

if (widget.preferenceForKey(’friends’)!=null) {

// The storage already has a collection

friends = eval(&amp;quot;(&amp;quot; + widget.preferenceForKey(’friends’) + &amp;quot;)&amp;quot;);

} else {

// Initialization for the first time

friends = [

new Friend(’John’, ’john.gif’, ’john@developer.com’),

new Friend(’Mary’, ’mary.gif’, ’mary@developer.com’)

];

}

}

// Similar to a ’table’ of friends

var friends;

&lt;/pre&gt;
&lt;a name=&quot;IDE_issues&quot; id=&quot;IDE_issues&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;IDE issues&lt;/span&gt;&lt;/h1&gt;
&lt;p&gt;If you created your iPhone web app using Aptana and the iPhone plug-in, it will be very easy to port it as a WRT widget using the Aptana plug-in for WRT, available at &lt;a href=&quot;http://aptana.com/nokia&quot; class=&quot;external free&quot; title=&quot;http://aptana.com/nokia&quot; rel=&quot;nofollow&quot;&gt;http://aptana.com/nokia&lt;/a&gt;. The Aptana IDE is actually the best IDE to use for such porting tasks since it supports both platforms.
&lt;/p&gt;&lt;p&gt;If you created your iPhone web app using Dashcode for Mac, you can easily import the project in Aptana. Dashcode uses its own JavaScript component library optimized for the iPhone browser.
&lt;/p&gt;
&lt;a name=&quot;Web_browsing_on_Nokia_devices_based_on_Symbian_Platform&quot; id=&quot;Web_browsing_on_Nokia_devices_based_on_Symbian_Platform&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;Web browsing on Nokia devices based on Symbian Platform&lt;/span&gt;&lt;/h1&gt;
&lt;p&gt;In addition to offering WRT widgets, Nokia devices based on Symbian platform provide a rich mobile web browsing experience through a WebKit-based browser. Optimizing an iPhone-specific web page to S60 5th Edition, for example, is straightforward because both platforms support standard web technologies such as HTML, CSS, and JavaScript.
&lt;/p&gt;&lt;p&gt;However, there are some differences between devices, so when designing web pages, the supported browser and device features should be taken into account and serve the optimized content to target devices. This can be done easily by checking the UAProfile or user-agent header information that is unique to each device model. When the functionality is built in the server side, all that is needed is to optimize the web page to be target platform/device specific, by changing the supported resolution and UI elements. To make mobile website or application customisation faster and easier, Forum Nokia offers &lt;a href=&quot;http://www.forum.nokia.com/Technology_Topics/Web_Technologies/Browsing/Web_Templates/&quot; class=&quot;external text&quot; title=&quot;http://www.forum.nokia.com/Technology_Topics/Web_Technologies/Browsing/Web_Templates/&quot; rel=&quot;nofollow&quot;&gt;Nokia Mobile Web Templates&lt;/a&gt;, a series of custom, tested mobile web styles and components targeted at mobile web developers and designers. 
&lt;/p&gt;
&lt;hr /&gt;
&lt;p&gt;Copyright © 2009 Nokia Corporation. All rights reserved.
Nokia and Forum Nokia are trademarks or registered trademarks of Nokia Corporation. Java and all Java-based marks are trademarks or registered trademarks of Sun Microsystems, Inc. Other product and company names mentioned may be trademarks or trade names of their respective owners.
&lt;/p&gt;&lt;p&gt;[[Category:]]
&lt;/p&gt;</description>
			<pubDate>Fri, 20 Nov 2009 11:25:44 GMT</pubDate>			<dc:creator>Tasala</dc:creator>			<comments>http://wiki.forum.nokia.com/index.php/Talk:Porting_iPhone_web_app_to_WRT_on_Nokia_devices</comments>		</item>
		<item>
			<title>GuaranaUI-Documentation</title>
			<link>http://wiki.forum.nokia.com/index.php/GuaranaUI-Documentation</link>
			<description>&lt;a name=&quot;Components_Documentation&quot; id=&quot;Components_Documentation&quot;&gt;&lt;/a&gt;&lt;h3&gt; &lt;span class=&quot;mw-headline&quot;&gt;Components Documentation&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;center&gt;
&lt;table width=&quot;900px&quot;&gt;
&lt;tr&gt;
&lt;td&gt; &lt;center&gt;&lt;a href=&quot;/index.php/File:Guarana_accordion_icon.jpg&quot; class=&quot;image&quot; title=&quot;File:Guarana_accordion_icon.jpg&quot;&gt;&lt;img alt=&quot;File:Guarana_accordion_icon.jpg&quot; src=&quot;http://www.forum.nokia.com/piazza/wiki/images/7/7b/Guarana_accordion_icon.jpg&quot; width=&quot;100&quot; height=&quot;100&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a href=&quot;/index.php/Accordion&quot; title=&quot;Accordion&quot;&gt;Accordion&lt;/a&gt;&lt;/center&gt;&lt;br /&gt;&lt;/td&gt;
&lt;td&gt; &lt;center&gt; &lt;a href=&quot;/index.php/File:Guarana_busy_icon.jpg&quot; class=&quot;image&quot; title=&quot;File:Guarana_busy_icon.jpg&quot;&gt;&lt;img alt=&quot;File:Guarana_busy_icon.jpg&quot; src=&quot;http://www.forum.nokia.com/piazza/wiki/images/4/48/Guarana_busy_icon.jpg&quot; width=&quot;100&quot; height=&quot;100&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a href=&quot;/index.php/Busy_Indicator&quot; title=&quot;Busy Indicator&quot;&gt;Busy Indicator&lt;/a&gt;&lt;/center&gt;&lt;br /&gt;&lt;/td&gt;
&lt;td&gt; &lt;center&gt;&lt;a href=&quot;/index.php/File:Guarana_button_icon.jpg&quot; class=&quot;image&quot; title=&quot;File:Guarana_button_icon.jpg&quot;&gt;&lt;img alt=&quot;File:Guarana_button_icon.jpg&quot; src=&quot;http://www.forum.nokia.com/piazza/wiki/images/1/13/Guarana_button_icon.jpg&quot; width=&quot;100&quot; height=&quot;100&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a href=&quot;/index.php/Button&quot; title=&quot;Button&quot;&gt;Button&lt;/a&gt;&lt;/center&gt;&lt;br /&gt;&lt;/td&gt;
&lt;td&gt; &lt;center&gt;&lt;a href=&quot;/index.php/File:Guarana_carousel_icon.jpg&quot; class=&quot;image&quot; title=&quot;File:Guarana_carousel_icon.jpg&quot;&gt;&lt;img alt=&quot;File:Guarana_carousel_icon.jpg&quot; src=&quot;http://www.forum.nokia.com/piazza/wiki/images/1/18/Guarana_carousel_icon.jpg&quot; width=&quot;100&quot; height=&quot;100&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a href=&quot;/index.php/Carousel&quot; title=&quot;Carousel&quot;&gt;Carousel&lt;/a&gt;&lt;/center&gt;&lt;br /&gt;&lt;/td&gt;
&lt;td&gt; &lt;center&gt;&lt;a href=&quot;/index.php/File:Guarana_checkbox_icon.jpg&quot; class=&quot;image&quot; title=&quot;File:Guarana_checkbox_icon.jpg&quot;&gt;&lt;img alt=&quot;File:Guarana_checkbox_icon.jpg&quot; src=&quot;http://www.forum.nokia.com/piazza/wiki/images/4/4f/Guarana_checkbox_icon.jpg&quot; width=&quot;100&quot; height=&quot;100&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a href=&quot;/index.php/Checkbox&quot; title=&quot;Checkbox&quot;&gt;Checkbox&lt;/a&gt;&lt;/center&gt;&lt;br /&gt;&lt;/td&gt;
&lt;td&gt; &lt;center&gt;&lt;a href=&quot;/index.php/File:Guarana_customlist_icon.jpg&quot; class=&quot;image&quot; title=&quot;File:Guarana_customlist_icon.jpg&quot;&gt;&lt;img alt=&quot;File:Guarana_customlist_icon.jpg&quot; src=&quot;http://www.forum.nokia.com/piazza/wiki/images/1/13/Guarana_customlist_icon.jpg&quot; width=&quot;100&quot; height=&quot;100&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a href=&quot;/index.php/Customisable_List&quot; title=&quot;Customisable List&quot;&gt;Customisable List&lt;/a&gt;&lt;/center&gt;&lt;br /&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt; &lt;center&gt; &lt;a href=&quot;/index.php/File:Guarana_datepicker_icon.jpg&quot; class=&quot;image&quot; title=&quot;File:Guarana_datepicker_icon.jpg&quot;&gt;&lt;img alt=&quot;File:Guarana_datepicker_icon.jpg&quot; src=&quot;http://www.forum.nokia.com/piazza/wiki/images/b/b0/Guarana_datepicker_icon.jpg&quot; width=&quot;100&quot; height=&quot;100&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a href=&quot;/index.php/Date&quot; title=&quot;Date&quot;&gt;Date&lt;/a&gt;&lt;/center&gt;&lt;br /&gt;&lt;/td&gt;
&lt;td&gt; &lt;center&gt; &lt;a href=&quot;/index.php/File:Guarana_dropdown_icon.jpg&quot; class=&quot;image&quot; title=&quot;File:Guarana_dropdown_icon.jpg&quot;&gt;&lt;img alt=&quot;File:Guarana_dropdown_icon.jpg&quot; src=&quot;http://www.forum.nokia.com/piazza/wiki/images/f/fe/Guarana_dropdown_icon.jpg&quot; width=&quot;100&quot; height=&quot;100&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a href=&quot;/index.php/Dropdown&quot; title=&quot;Dropdown&quot;&gt;Dropdown&lt;/a&gt;&lt;/center&gt;&lt;br /&gt;&lt;/td&gt;
&lt;td&gt; &lt;center&gt; &lt;a href=&quot;/index.php/File:Guarana_iconicmenu_icon.jpg&quot; class=&quot;image&quot; title=&quot;File:Guarana_iconicmenu_icon.jpg&quot;&gt;&lt;img alt=&quot;File:Guarana_iconicmenu_icon.jpg&quot; src=&quot;http://www.forum.nokia.com/piazza/wiki/images/4/4c/Guarana_iconicmenu_icon.jpg&quot; width=&quot;100&quot; height=&quot;100&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a href=&quot;/index.php/Iconic_Menu&quot; title=&quot;Iconic Menu&quot;&gt;Iconic Menu&lt;/a&gt;&lt;/center&gt;&lt;br /&gt;&lt;/td&gt;
&lt;td&gt; &lt;center&gt; &lt;a href=&quot;/index.php/File:Guarana_imagedescrip_icon.jpg&quot; class=&quot;image&quot; title=&quot;File:Guarana_imagedescrip_icon.jpg&quot;&gt;&lt;img alt=&quot;File:Guarana_imagedescrip_icon.jpg&quot; src=&quot;http://www.forum.nokia.com/piazza/wiki/images/d/d0/Guarana_imagedescrip_icon.jpg&quot; width=&quot;100&quot; height=&quot;100&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a href=&quot;/index.php/Image_Description&quot; title=&quot;Image Description&quot;&gt;Image Description&lt;/a&gt;&lt;/center&gt;&lt;br /&gt;&lt;/td&gt;
&lt;td&gt; &lt;center&gt; &lt;a href=&quot;/index.php/File:Guarana_lightbox_icon.jpg&quot; class=&quot;image&quot; title=&quot;File:Guarana_lightbox_icon.jpg&quot;&gt;&lt;img alt=&quot;File:Guarana_lightbox_icon.jpg&quot; src=&quot;http://www.forum.nokia.com/piazza/wiki/images/d/d3/Guarana_lightbox_icon.jpg&quot; width=&quot;100&quot; height=&quot;100&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a href=&quot;/index.php/LightBox&quot; title=&quot;LightBox&quot;&gt;LightBox&lt;/a&gt;&lt;/center&gt;&lt;br /&gt;&lt;/td&gt;
&lt;td&gt; &lt;center&gt; &lt;a href=&quot;/index.php/File:Guarana_miniview_icon.jpg&quot; class=&quot;image&quot; title=&quot;File:Guarana_miniview_icon.jpg&quot;&gt;&lt;img alt=&quot;File:Guarana_miniview_icon.jpg&quot; src=&quot;http://www.forum.nokia.com/piazza/wiki/images/2/26/Guarana_miniview_icon.jpg&quot; width=&quot;100&quot; height=&quot;100&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a href=&quot;/index.php/Miniview&quot; title=&quot;Miniview&quot;&gt;Miniview&lt;/a&gt;&lt;/center&gt;&lt;br /&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt; &lt;center&gt; &lt;a href=&quot;/index.php/File:Guarana_optionsmenu_icon.jpg&quot; class=&quot;image&quot; title=&quot;File:Guarana_optionsmenu_icon.jpg&quot;&gt;&lt;img alt=&quot;File:Guarana_optionsmenu_icon.jpg&quot; src=&quot;http://www.forum.nokia.com/piazza/wiki/images/7/7a/Guarana_optionsmenu_icon.jpg&quot; width=&quot;100&quot; height=&quot;100&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a href=&quot;/index.php/Options_Menu&quot; title=&quot;Options Menu&quot;&gt;Options Menu&lt;/a&gt;&lt;/center&gt;&lt;br /&gt;&lt;/td&gt;
&lt;td&gt; &lt;center&gt; &lt;a href=&quot;/index.php/File:Guarana_progressbar_icon.jpg&quot; class=&quot;image&quot; title=&quot;File:Guarana_progressbar_icon.jpg&quot;&gt;&lt;img alt=&quot;File:Guarana_progressbar_icon.jpg&quot; src=&quot;http://www.forum.nokia.com/piazza/wiki/images/c/c8/Guarana_progressbar_icon.jpg&quot; width=&quot;100&quot; height=&quot;100&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a href=&quot;/index.php/Progress_Bar&quot; title=&quot;Progress Bar&quot;&gt;Progress Bar&lt;/a&gt;&lt;/center&gt;&lt;br /&gt;&lt;/td&gt;
&lt;td&gt; &lt;center&gt; &lt;a href=&quot;/index.php/File:Guarana_radiobutton_icon.jpg&quot; class=&quot;image&quot; title=&quot;File:Guarana_radiobutton_icon.jpg&quot;&gt;&lt;img alt=&quot;File:Guarana_radiobutton_icon.jpg&quot; src=&quot;http://www.forum.nokia.com/piazza/wiki/images/5/5b/Guarana_radiobutton_icon.jpg&quot; width=&quot;100&quot; height=&quot;100&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a href=&quot;/index.php/Radio_Button&quot; title=&quot;Radio Button&quot;&gt;Radio Button&lt;/a&gt;&lt;/center&gt;&lt;br /&gt;&lt;/td&gt;
&lt;td&gt; &lt;center&gt; &lt;a href=&quot;/index.php/File:Guarana_rating_icon.jpg&quot; class=&quot;image&quot; title=&quot;File:Guarana_rating_icon.jpg&quot;&gt;&lt;img alt=&quot;File:Guarana_rating_icon.jpg&quot; src=&quot;http://www.forum.nokia.com/piazza/wiki/images/e/e0/Guarana_rating_icon.jpg&quot; width=&quot;100&quot; height=&quot;100&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a href=&quot;/index.php/Rating&quot; title=&quot;Rating&quot;&gt;Rating&lt;/a&gt;&lt;/center&gt;&lt;br /&gt;&lt;/td&gt;
&lt;td&gt; &lt;center&gt; &lt;a href=&quot;/index.php/File:Guarana_scroll_icon.jpg&quot; class=&quot;image&quot; title=&quot;File:Guarana_scroll_icon.jpg&quot;&gt;&lt;img alt=&quot;File:Guarana_scroll_icon.jpg&quot; src=&quot;http://www.forum.nokia.com/piazza/wiki/images/f/f9/Guarana_scroll_icon.jpg&quot; width=&quot;100&quot; height=&quot;100&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a href=&quot;/index.php/Scroll&quot; title=&quot;Scroll&quot;&gt;Scroll&lt;/a&gt;&lt;/center&gt;&lt;br /&gt;&lt;/td&gt;
&lt;td&gt; &lt;center&gt; &lt;a href=&quot;/index.php/File:Guarana_sortable_icon.jpg&quot; class=&quot;image&quot; title=&quot;File:Guarana_sortable_icon.jpg&quot;&gt;&lt;img alt=&quot;File:Guarana_sortable_icon.jpg&quot; src=&quot;http://www.forum.nokia.com/piazza/wiki/images/c/cc/Guarana_sortable_icon.jpg&quot; width=&quot;100&quot; height=&quot;100&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a href=&quot;/index.php/Sortable_Grid&quot; title=&quot;Sortable Grid&quot;&gt;Sortable Grid&lt;/a&gt;&lt;/center&gt;&lt;br /&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt; &lt;center&gt; &lt;a href=&quot;/index.php/File:Guarana_tabs_icon.jpg&quot; class=&quot;image&quot; title=&quot;File:Guarana_tabs_icon.jpg&quot;&gt;&lt;img alt=&quot;File:Guarana_tabs_icon.jpg&quot; src=&quot;http://www.forum.nokia.com/piazza/wiki/images/5/53/Guarana_tabs_icon.jpg&quot; width=&quot;100&quot; height=&quot;100&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a href=&quot;/index.php/Tabs_Bar&quot; title=&quot;Tabs Bar&quot;&gt;Tabs Bar&lt;/a&gt;&lt;/center&gt;&lt;br /&gt;&lt;/td&gt;
&lt;td&gt; &lt;center&gt; &lt;a href=&quot;/index.php/File:Guarana_textlabel_icon.jpg&quot; class=&quot;image&quot; title=&quot;File:Guarana_textlabel_icon.jpg&quot;&gt;&lt;img alt=&quot;File:Guarana_textlabel_icon.jpg&quot; src=&quot;http://www.forum.nokia.com/piazza/wiki/images/1/18/Guarana_textlabel_icon.jpg&quot; width=&quot;100&quot; height=&quot;100&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a href=&quot;/index.php/Text_Label&quot; title=&quot;Text Label&quot;&gt;Text Label&lt;/a&gt;&lt;/center&gt;&lt;br /&gt;&lt;/td&gt;
&lt;td&gt; &lt;center&gt; &lt;a href=&quot;/index.php/File:Guarana_textlink_icon.jpg&quot; class=&quot;image&quot; title=&quot;File:Guarana_textlink_icon.jpg&quot;&gt;&lt;img alt=&quot;File:Guarana_textlink_icon.jpg&quot; src=&quot;http://www.forum.nokia.com/piazza/wiki/images/f/f8/Guarana_textlink_icon.jpg&quot; width=&quot;100&quot; height=&quot;100&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a href=&quot;/index.php/Text_Link&quot; title=&quot;Text Link&quot;&gt;Text Link&lt;/a&gt;&lt;/center&gt;&lt;br /&gt;&lt;/td&gt;
&lt;td&gt; &lt;center&gt;&lt;a href=&quot;/index.php/File:Guarana_tooltip_icon.jpg&quot; class=&quot;image&quot; title=&quot;File:Guarana_tooltip_icon.jpg&quot;&gt;&lt;img alt=&quot;File:Guarana_tooltip_icon.jpg&quot; src=&quot;http://www.forum.nokia.com/piazza/wiki/images/8/8c/Guarana_tooltip_icon.jpg&quot; width=&quot;100&quot; height=&quot;100&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a href=&quot;/index.php/Tooltip&quot; title=&quot;Tooltip&quot;&gt;Tooltip&lt;/a&gt;&lt;/center&gt;&lt;br /&gt;&lt;/td&gt;
&lt;td&gt; &lt;center&gt; &lt;a href=&quot;/index.php/File:Guarana_transbox_icon.jpg&quot; class=&quot;image&quot; title=&quot;File:Guarana_transbox_icon.jpg&quot;&gt;&lt;img alt=&quot;File:Guarana_transbox_icon.jpg&quot; src=&quot;http://www.forum.nokia.com/piazza/wiki/images/5/55/Guarana_transbox_icon.jpg&quot; width=&quot;100&quot; height=&quot;100&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a href=&quot;/index.php/Transition&quot; title=&quot;Transition&quot;&gt;Transition&lt;/a&gt;&lt;/center&gt;&lt;br /&gt;&lt;/td&gt;
&lt;td&gt; &lt;center&gt; &lt;a href=&quot;/index.php/File:Guarana_translist_icon.jpg&quot; class=&quot;image&quot; title=&quot;File:Guarana_translist_icon.jpg&quot;&gt;&lt;img alt=&quot;File:Guarana_translist_icon.jpg&quot; src=&quot;http://www.forum.nokia.com/piazza/wiki/images/5/58/Guarana_translist_icon.jpg&quot; width=&quot;100&quot; height=&quot;100&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a href=&quot;/index.php/Transition_List&quot; title=&quot;Transition List&quot;&gt;Transition List&lt;/a&gt;&lt;/center&gt;&lt;br /&gt;&lt;/td&gt;
&lt;/tr&gt;

&lt;/table&gt;
&lt;/center&gt;
&lt;a name=&quot;Extra_Components_Documentation&quot; id=&quot;Extra_Components_Documentation&quot;&gt;&lt;/a&gt;&lt;h3&gt; &lt;span class=&quot;mw-headline&quot;&gt;Extra Components Documentation&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;1. &lt;a href=&quot;/index.php/Widget&quot; title=&quot;Widget&quot;&gt;Widget&lt;/a&gt;
&lt;/p&gt;&lt;p&gt;2. &lt;a href=&quot;/index.php/Option_Box&quot; title=&quot;Option Box&quot;&gt;Option Box&lt;/a&gt;
&lt;/p&gt;&lt;p&gt;3. &lt;a href=&quot;/index.php/Nokia_Loader&quot; title=&quot;Nokia Loader&quot;&gt;Nokia Loader&lt;/a&gt;
&lt;/p&gt;</description>
			<pubDate>Thu, 19 Nov 2009 15:10:25 GMT</pubDate>			<dc:creator>Allanbezerra</dc:creator>			<comments>http://wiki.forum.nokia.com/index.php/Talk:GuaranaUI-Documentation</comments>		</item>
		<item>
			<title>Bondi Widget porting example - devicestatus API</title>
			<link>http://wiki.forum.nokia.com/index.php/Bondi_Widget_porting_example_-_devicestatus_API</link>
			<description>&lt;p&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;table id=&quot;toc&quot; class=&quot;toc&quot; summary=&quot;Contents&quot;&gt;&lt;tr&gt;&lt;td&gt;&lt;div id=&quot;toctitle&quot;&gt;&lt;h2&gt;Contents&lt;/h2&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li class=&quot;toclevel-1&quot;&gt;&lt;a href=&quot;#Preface&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;1&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Preface&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-1&quot;&gt;&lt;a href=&quot;#1._Download_the_.wgt_package&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;2&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;1. Download the .wgt package&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-1&quot;&gt;&lt;a href=&quot;#2._Rename_and_unzip_the_Test_widget_archive&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;3&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;2. Rename and unzip the Test widget archive&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-1&quot;&gt;&lt;a href=&quot;#3._Create_info.plist_manifest_file&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;4&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;3. Create info.plist manifest file&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-1&quot;&gt;&lt;a href=&quot;#4._Add_Javascript_wrapper_library&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;5&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;4. Add Javascript wrapper library&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-1&quot;&gt;&lt;a href=&quot;#5._Packaging&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;6&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;5. Packaging&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-1&quot;&gt;&lt;a href=&quot;#6._Deploy&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;7&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;6. Deploy&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;script type=&quot;text/javascript&quot;&gt; if (window.showTocToggle) { var tocShowText = &quot;show&quot;; var tocHideText = &quot;hide&quot;; showTocToggle(); } &lt;/script&gt;
&lt;a name=&quot;Preface&quot; id=&quot;Preface&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt; Preface &lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;This is an example of porting a Bondi Widget to Nokia WRT using the guide found &lt;a href=&quot;/index.php/How_to_port_Bondi_Widgets_to_Nokia_WRT&quot; title=&quot;How to port Bondi Widgets to Nokia WRT&quot;&gt;here&lt;/a&gt;. The example widget uses Bondi API specific device status functions. It gets charging status of battery, indicating whether the phone's battery is being charged or not.
&lt;/p&gt;
&lt;a name=&quot;1._Download_the_.wgt_package&quot; id=&quot;1._Download_the_.wgt_package&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt; 1. Download the .wgt package &lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;The Charge! widget package can be found by following this &lt;a href=&quot;http://bondi.omtp.org/widget-gallery/Lists/Widgets/Attachments/29/Charge.wgt&quot; class=&quot;external text&quot; title=&quot;http://bondi.omtp.org/widget-gallery/Lists/Widgets/Attachments/29/Charge.wgt&quot; rel=&quot;nofollow&quot;&gt;link&lt;/a&gt;. This porting example was written using the Charge! widget version 1.0. The link may require login credentials for the Bondi website. 
&lt;/p&gt;
&lt;a name=&quot;2._Rename_and_unzip_the_Test_widget_archive&quot; id=&quot;2._Rename_and_unzip_the_Test_widget_archive&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt; 2. Rename and unzip the Test widget archive &lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;The archive needs to be unzipped to make modifications to its contents. First rename the file extension from *.wgt to *.zip. Then extract the zip archive.
&lt;/p&gt;
&lt;a name=&quot;3._Create_info.plist_manifest_file&quot; id=&quot;3._Create_info.plist_manifest_file&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt; 3. Create info.plist manifest file &lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;When installing a .wgz file the system looks for a manifest file called info.plist. The Bondi Widget equivalent is called config.xml.
&lt;/p&gt;&lt;p&gt;Here's how to use the Bondi Widget config.xml data to create the WRT manifest file:
&lt;/p&gt;
&lt;ol&gt;&lt;li&gt;Download and unzip this &lt;a href=&quot;http://www.forum.nokia.com/piazza/wiki/images/b/b0/Info.plist.zip&quot; class=&quot;internal&quot; title=&quot;Info.plist.zip&quot;&gt; info.plist&lt;/a&gt; template file and save it in the widget's root directory.
&lt;/li&gt;&lt;li&gt;Open the widget's config.xml file and find the &lt;tt&gt;&amp;lt;name&amp;gt;&lt;/tt&gt; element. Copy the text found within the element and paste it into the &lt;tt&gt;&amp;lt;string&amp;gt;&lt;/tt&gt; element under &lt;tt&gt;&amp;lt;key&amp;gt;DisplayName&amp;lt;/key&amp;gt;&lt;/tt&gt; element of the &lt;tt&gt;info.plist&lt;/tt&gt; file.&lt;pre class=&quot;text&quot; style=&quot;font-family:monospace;&quot;&gt;&amp;lt;key&amp;gt;DisplayName&amp;lt;/key&amp;gt;    &lt;br /&gt;&amp;lt;string&amp;gt;Charge!&amp;lt;/string&amp;gt;&lt;/pre&gt;
&lt;/li&gt;&lt;li&gt;The identifier of a Bondi widget can be found in the &lt;tt&gt;id&lt;/tt&gt; attribute of the &lt;tt&gt;&amp;lt;widget&amp;gt;&lt;/tt&gt; element in &lt;tt&gt;config.xml&lt;/tt&gt;. If the value is a URL, use the conventional WRT identifier form, which is the URL in reverse. Add the identifier to &lt;tt&gt;&amp;lt;string&amp;gt;&lt;/tt&gt; element under &lt;tt&gt;&amp;lt;key&amp;gt;Identifier&amp;lt;/key&amp;gt;&lt;/tt&gt; element of the &lt;tt&gt;info.plist&lt;/tt&gt; file.&lt;pre class=&quot;text&quot; style=&quot;font-family:monospace;&quot;&gt;&amp;lt;key&amp;gt;Identifier&amp;lt;/key&amp;gt;       &lt;br /&gt;&amp;lt;string&amp;gt;fi.metropolia.users.miasa.widgets.charging&amp;lt;/string&amp;gt;&lt;/pre&gt;
&lt;/li&gt;&lt;li&gt;The HTML-file can be found in the &lt;tt&gt;src&lt;/tt&gt; attribute of &lt;tt&gt;&amp;lt;content&amp;gt;&lt;/tt&gt; element.&lt;pre class=&quot;text&quot; style=&quot;font-family:monospace;&quot;&gt;&amp;lt;key&amp;gt;MainHTML&amp;lt;/key&amp;gt;&lt;br /&gt;&amp;lt;string&amp;gt;index.html&amp;lt;/string&amp;gt;&lt;/pre&gt;
&lt;/li&gt;&lt;li&gt;This widget does not require network access so it can be set to false.&lt;pre class=&quot;text&quot; style=&quot;font-family:monospace;&quot;&gt;&amp;lt;key&amp;gt;AllowNetworkAccess&amp;lt;/key&amp;gt;   &lt;br /&gt;&amp;lt;false /&amp;gt;&lt;/pre&gt;
&lt;/li&gt;&lt;li&gt;Save the file.
&lt;/li&gt;&lt;/ol&gt;
&lt;a name=&quot;4._Add_Javascript_wrapper_library&quot; id=&quot;4._Add_Javascript_wrapper_library&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt; 4. Add Javascript wrapper library &lt;/span&gt;&lt;/h2&gt;
&lt;ol&gt;&lt;li&gt;Download bondi.js (to be uploaded later) and save it to the widget's root directory.
&lt;/li&gt;&lt;li&gt;Add the following line inside &lt;tt&gt;&amp;lt;head&amp;gt;&lt;/tt&gt; element in main HTML file:
&lt;/li&gt;&lt;/ol&gt;
&lt;pre class=&quot;text&quot; style=&quot;font-family:monospace;&quot;&gt;&amp;lt;script type=&amp;quot;text/javascript&amp;quot; src=&amp;quot;bondi.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;&lt;/pre&gt;
&lt;a name=&quot;5._Packaging&quot; id=&quot;5._Packaging&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt; 5. Packaging &lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;Re-zip the containing Charge! widget &lt;b&gt;folder&lt;/b&gt; and change the file extension from *.zip to *.wgz.
&lt;/p&gt;
&lt;a name=&quot;6._Deploy&quot; id=&quot;6._Deploy&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt; 6. Deploy &lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;Upload the widget to your mobile device and install.
&lt;/p&gt;&lt;p&gt;An example of the ported widget will be uploaded later. Remember to change the extension to *.wgz before installing.
&lt;/p&gt;</description>
			<pubDate>Wed, 18 Nov 2009 17:12:18 GMT</pubDate>			<dc:creator>Jimgilmour1</dc:creator>			<comments>http://wiki.forum.nokia.com/index.php/Talk:Bondi_Widget_porting_example_-_devicestatus_API</comments>		</item>
		<item>
			<title>Bondi Widget porting example - geolocation API</title>
			<link>http://wiki.forum.nokia.com/index.php/Bondi_Widget_porting_example_-_geolocation_API</link>
			<description>&lt;p&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;table id=&quot;toc&quot; class=&quot;toc&quot; summary=&quot;Contents&quot;&gt;&lt;tr&gt;&lt;td&gt;&lt;div id=&quot;toctitle&quot;&gt;&lt;h2&gt;Contents&lt;/h2&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li class=&quot;toclevel-1&quot;&gt;&lt;a href=&quot;#Preface&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;1&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Preface&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-1&quot;&gt;&lt;a href=&quot;#1._Download_the_.wgt_package&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;2&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;1. Download the .wgt package&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-1&quot;&gt;&lt;a href=&quot;#2._Rename_and_unzip_the_Test_widget_archive&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;3&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;2. Rename and unzip the Test widget archive&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-1&quot;&gt;&lt;a href=&quot;#3._Create_info.plist_manifest_file&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;4&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;3. Create info.plist manifest file&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-1&quot;&gt;&lt;a href=&quot;#4._Add_Javascript_wrapper_libraries&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;5&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;4. Add Javascript wrapper libraries&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-1&quot;&gt;&lt;a href=&quot;#5._Packaging&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;6&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;5. Packaging&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-1&quot;&gt;&lt;a href=&quot;#6._Deploy&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;7&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;6. Deploy&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;script type=&quot;text/javascript&quot;&gt; if (window.showTocToggle) { var tocShowText = &quot;show&quot;; var tocHideText = &quot;hide&quot;; showTocToggle(); } &lt;/script&gt;
&lt;a name=&quot;Preface&quot; id=&quot;Preface&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt; Preface &lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;This is an example of porting a Bondi Widget to Nokia WRT using the guide found &lt;a href=&quot;/index.php/How_to_port_Bondi_Widgets_to_Nokia_WRT&quot; title=&quot;How to port Bondi Widgets to Nokia WRT&quot;&gt;here&lt;/a&gt;. The example widget uses Bondi API specific geo-location and file-system functions. It gets the location via GPS, saves the location to file-system and displays a map based on the given latitude and longitude.
&lt;/p&gt;&lt;p&gt;NOTE: The Javascript wrapper library currently supports only geo-location functions, file-system functions are not supported.
&lt;/p&gt;
&lt;a name=&quot;1._Download_the_.wgt_package&quot; id=&quot;1._Download_the_.wgt_package&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt; 1. Download the .wgt package &lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;The Here I am! widget package can be found by following this &lt;a href=&quot;http://bondi.omtp.org/widget-gallery/Lists/Widgets/Attachments/7/geo.wgt&quot; class=&quot;external text&quot; title=&quot;http://bondi.omtp.org/widget-gallery/Lists/Widgets/Attachments/7/geo.wgt&quot; rel=&quot;nofollow&quot;&gt;link&lt;/a&gt;. This porting example was written using the Here I am! widget version 1.0. The link may require login credentials for the Bondi website.
&lt;/p&gt;
&lt;a name=&quot;2._Rename_and_unzip_the_Test_widget_archive&quot; id=&quot;2._Rename_and_unzip_the_Test_widget_archive&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt; 2. Rename and unzip the Test widget archive &lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;The archive needs to be unzipped to make modifications to its contents. First rename the file extension from *.wgt to *.zip. Then extract the zip archive.
&lt;/p&gt;
&lt;a name=&quot;3._Create_info.plist_manifest_file&quot; id=&quot;3._Create_info.plist_manifest_file&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt; 3. Create info.plist manifest file &lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;When installing a .wgz file the system looks for a manifest file called info.plist. The Bondi Widget equivalent is called config.xml.
&lt;/p&gt;&lt;p&gt;Here's how to use the Bondi Widget config.xml data to create the WRT manifest file:
&lt;/p&gt;
&lt;ol&gt;&lt;li&gt;Download and unzip this &lt;a href=&quot;http://www.forum.nokia.com/piazza/wiki/images/b/b0/Info.plist.zip&quot; class=&quot;internal&quot; title=&quot;Info.plist.zip&quot;&gt; info.plist&lt;/a&gt; template file and save it in the widget's root directory.
&lt;/li&gt;&lt;li&gt;Open the widget's config.xml file and find the &lt;tt&gt;&amp;lt;name&amp;gt;&lt;/tt&gt; element. Copy the text found within the element and paste it into the &lt;tt&gt;&amp;lt;string&amp;gt;&lt;/tt&gt; element under &lt;tt&gt;&amp;lt;key&amp;gt;DisplayName&amp;lt;/key&amp;gt;&lt;/tt&gt; element of the &lt;tt&gt;info.plist&lt;/tt&gt; file.&lt;pre class=&quot;text&quot; style=&quot;font-family:monospace;&quot;&gt;&amp;lt;key&amp;gt;DisplayName&amp;lt;/key&amp;gt;    &lt;br /&gt;&amp;lt;string&amp;gt;Here I am!&amp;lt;/string&amp;gt;&lt;/pre&gt;
&lt;/li&gt;&lt;li&gt;The identifier of a Bondi widget can be found in the &lt;tt&gt;id&lt;/tt&gt; attribute of the &lt;tt&gt;&amp;lt;widget&amp;gt;&lt;/tt&gt; element in &lt;tt&gt;config.xml&lt;/tt&gt;. If the value is a URL, use the conventional WRT identifier form, which is the URL in reverse. Add the identifier to &lt;tt&gt;&amp;lt;string&amp;gt;&lt;/tt&gt; element under &lt;tt&gt;&amp;lt;key&amp;gt;Identifier&amp;lt;/key&amp;gt;&lt;/tt&gt; element of the &lt;tt&gt;info.plist&lt;/tt&gt; file.&lt;pre class=&quot;text&quot; style=&quot;font-family:monospace;&quot;&gt;&amp;lt;key&amp;gt;Identifier&amp;lt;/key&amp;gt;       &lt;br /&gt;&amp;lt;string&amp;gt;net.webvm.bondi.geo&amp;lt;/string&amp;gt;&lt;/pre&gt;
&lt;/li&gt;&lt;li&gt;The HTML-file can be found in the &lt;tt&gt;src&lt;/tt&gt; attribute of &lt;tt&gt;&amp;lt;content&amp;gt;&lt;/tt&gt; element.&lt;pre class=&quot;text&quot; style=&quot;font-family:monospace;&quot;&gt;&amp;lt;key&amp;gt;MainHTML&amp;lt;/key&amp;gt;&lt;br /&gt;&amp;lt;string&amp;gt;geo.html&amp;lt;/string&amp;gt;&lt;/pre&gt;
&lt;/li&gt;&lt;li&gt;This widget requires network access so it should be set to true.&lt;pre class=&quot;text&quot; style=&quot;font-family:monospace;&quot;&gt;&amp;lt;key&amp;gt;AllowNetworkAccess&amp;lt;/key&amp;gt;   &lt;br /&gt;&amp;lt;true /&amp;gt;&lt;/pre&gt;
&lt;/li&gt;&lt;li&gt;Rename the icon from &lt;tt&gt;aplix.png&lt;/tt&gt; to &lt;tt&gt;icon.png&lt;/tt&gt;.
&lt;/li&gt;&lt;li&gt;Save the file.
&lt;/li&gt;&lt;/ol&gt;
&lt;a name=&quot;4._Add_Javascript_wrapper_libraries&quot; id=&quot;4._Add_Javascript_wrapper_libraries&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt; 4. Add Javascript wrapper libraries &lt;/span&gt;&lt;/h2&gt;
&lt;ol&gt;&lt;li&gt;Download bondi.js and platformservices.js (to be uploaded later) and save them to the widget's root directory.
&lt;/li&gt;&lt;li&gt;Add the following lines inside &lt;tt&gt;&amp;lt;head&amp;gt;&lt;/tt&gt; element in main HTML file:
&lt;/li&gt;&lt;/ol&gt;
&lt;pre class=&quot;text&quot; style=&quot;font-family:monospace;&quot;&gt;&amp;lt;script type=&amp;quot;text/javascript&amp;quot; src=&amp;quot;bondi.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;&lt;br /&gt;&amp;lt;script type=&amp;quot;text/javascript&amp;quot; src=&amp;quot;platformservices.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;&lt;/pre&gt;
&lt;a name=&quot;5._Packaging&quot; id=&quot;5._Packaging&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt; 5. Packaging &lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;Re-zip the containing Here I am! widget &lt;b&gt;folder&lt;/b&gt; and change the file extension from *.zip to *.wgz.
&lt;/p&gt;
&lt;a name=&quot;6._Deploy&quot; id=&quot;6._Deploy&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt; 6. Deploy &lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;Upload the widget to your mobile device and install.
&lt;/p&gt;&lt;p&gt;An example of the ported widget will be uploaded later. Remember to change the extension to .wgz before installing.
&lt;/p&gt;</description>
			<pubDate>Wed, 18 Nov 2009 17:14:15 GMT</pubDate>			<dc:creator>Jimgilmour1</dc:creator>			<comments>http://wiki.forum.nokia.com/index.php/Talk:Bondi_Widget_porting_example_-_geolocation_API</comments>		</item>
		<item>
			<title>Guarana UI: a jQuery-Based UI Library for Nokia WRT</title>
			<link>http://wiki.forum.nokia.com/index.php/Guarana_UI:_a_jQuery-Based_UI_Library_for_Nokia_WRT</link>
			<description>&lt;p&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;center&gt;
&lt;table width=&quot;800px&quot;&gt;
&lt;tr&gt;
&lt;td width=&quot;20%&quot;&gt;&lt;center&gt;&lt;a href=&quot;/index.php/File:Guarana_intro.jpg&quot; class=&quot;image&quot; title=&quot;File:Guarana_intro.jpg&quot;&gt;&lt;img alt=&quot;File:Guarana_intro.jpg&quot; src=&quot;http://www.forum.nokia.com/piazza/wiki/images/3/34/Guarana_intro.jpg&quot; width=&quot;81&quot; height=&quot;153&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;&lt;/center&gt;&lt;/td&gt;
&lt;td&gt;
&lt;a name=&quot;1._Introduction&quot; id=&quot;1._Introduction&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;1. Introduction&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;This is the documentation of the Guarana UI - a jQuery-Based UI Library for Nokia WRT. Nokia WRT is a development and delivery platform that allows the creation of applications (widgets) based on standard web technologies, such as HTML, CSS, JavaScript, and AJAX. WRT Framework&amp;nbsp;intends to offer&amp;nbsp;developers a set of common components to create and deploy widgets in a friendly way. If you would like to know how to start&amp;nbsp;developing&amp;nbsp;with Nokia WRT, please visit &lt;a href=&quot;http://www.forum.nokia.com/Technology_Topics/Web_Technologies/Web_Runtime/QuickStart.xhtml&quot; class=&quot;external text&quot; title=&quot;http://www.forum.nokia.com/Technology_Topics/Web_Technologies/Web_Runtime/QuickStart.xhtml&quot; rel=&quot;nofollow&quot;&gt;Web Runtime QuickStart&lt;/a&gt; available in the Forum Nokia website.&lt;/p&gt;
&lt;p&gt;The &lt;a href=&quot;http://www.forum.nokia.com/piazza/wiki/images/f/fa/Guarana_WRT_UI_Library_v1_0.zip&quot; class=&quot;external text&quot; title=&quot;http://www.forum.nokia.com/piazza/wiki/images/f/fa/Guarana_WRT_UI_Library_v1_0.zip&quot; rel=&quot;nofollow&quot;&gt;Guarana UI Library&lt;/a&gt; is a jQuery-based set of customisable UI elements, application frameworks, and templates that can be used for the creation of user interfaces in Nokia's Web Runtime platform.&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;/table&gt;
&lt;table width=&quot;800px&quot;&gt;
&lt;tr&gt;
&lt;td width=&quot;20%&quot;&gt;&lt;center&gt;&lt;a href=&quot;/index.php/File:Guarana_over.jpg&quot; class=&quot;image&quot; title=&quot;File:Guarana_over.jpg&quot;&gt;&lt;img alt=&quot;File:Guarana_over.jpg&quot; src=&quot;http://www.forum.nokia.com/piazza/wiki/images/c/c8/Guarana_over.jpg&quot; width=&quot;74&quot; height=&quot;105&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;&lt;/center&gt;&lt;/td&gt;
&lt;td width=&quot;30%&quot; valign=&quot;top&quot;&gt;
&lt;a name=&quot;2._Overview_of_Guarana_UI&quot; id=&quot;2._Overview_of_Guarana_UI&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;2. Overview of Guarana UI&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;The WRT Framework is&amp;nbsp;closely integrated with the &lt;a href=&quot;http://www.jquery.com&quot; class=&quot;external text&quot; title=&quot;http://www.jquery.com&quot; rel=&quot;nofollow&quot;&gt;jQuery&lt;/a&gt; library. The library uses the best practices of other libraries such as &lt;a href=&quot;http://www.jqueryui.com&quot; class=&quot;external text&quot; title=&quot;http://www.jqueryui.com&quot; rel=&quot;nofollow&quot;&gt;jQueryUI&lt;/a&gt; and &lt;a href=&quot;http://www.jqueryui.com/themeroller/&quot; class=&quot;external text&quot; title=&quot;http://www.jqueryui.com/themeroller/&quot; rel=&quot;nofollow&quot;&gt;ThemeRoller&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt; Click &lt;a href=&quot;/index.php/GuaranaUI-Overview&quot; title=&quot;GuaranaUI-Overview&quot;&gt;here&lt;/a&gt; for more details.&lt;/p&gt;
&lt;/td&gt;
&lt;td width=&quot;20%&quot;&gt;&lt;center&gt;&lt;a href=&quot;/index.php/File:Guarana_down.jpg&quot; class=&quot;image&quot; title=&quot;File:Guarana_down.jpg&quot;&gt;&lt;img alt=&quot;File:Guarana_down.jpg&quot; src=&quot;http://www.forum.nokia.com/piazza/wiki/images/4/43/Guarana_down.jpg&quot; width=&quot;66&quot; height=&quot;96&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;&lt;/center&gt;&lt;/td&gt;
&lt;td width=&quot;30%&quot; valign=&quot;top&quot;&gt;
&lt;a name=&quot;3._Download_Guarana_UI&quot; id=&quot;3._Download_Guarana_UI&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;3. Download Guarana UI&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;The point to starting widget development using Guarana UI.&lt;/p&gt;
&lt;p&gt;Click &lt;a href=&quot;http://www.forum.nokia.com/piazza/wiki/images/d/df/Guarana_WRT_UI_Library_v1_0_Builded_Package.zip&quot; class=&quot;external text&quot; title=&quot;http://www.forum.nokia.com/piazza/wiki/images/d/df/Guarana_WRT_UI_Library_v1_0_Builded_Package.zip&quot; rel=&quot;nofollow&quot;&gt;here&lt;/a&gt; to download Builded Package (recommended).&lt;/p&gt;
&lt;p&gt;Click &lt;a href=&quot;http://www.forum.nokia.com/piazza/wiki/images/f/fa/Guarana_WRT_UI_Library_v1_0.zip&quot; class=&quot;external text&quot; title=&quot;http://www.forum.nokia.com/piazza/wiki/images/f/fa/Guarana_WRT_UI_Library_v1_0.zip&quot; rel=&quot;nofollow&quot;&gt;here&lt;/a&gt; to download Full Package.&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;

&lt;tr&gt;

&lt;td width=&quot;20%&quot;&gt;&lt;center&gt;&lt;a href=&quot;/index.php/File:Guarana_first.jpg&quot; class=&quot;image&quot; title=&quot;File:Guarana_first.jpg&quot;&gt;&lt;img alt=&quot;File:Guarana_first.jpg&quot; src=&quot;http://www.forum.nokia.com/piazza/wiki/images/7/7f/Guarana_first.jpg&quot; width=&quot;77&quot; height=&quot;88&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;&lt;/center&gt;&lt;/td&gt;
&lt;td width=&quot;30%&quot; valign=&quot;top&quot;&gt;
&lt;a name=&quot;4._My_first_widget_using_Guarana_UI&quot; id=&quot;4._My_first_widget_using_Guarana_UI&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;4. My first widget using Guarana UI&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;The point to understand how to use these components in your WRT widget.&lt;/p&gt;
&lt;p&gt;Click &lt;a href=&quot;/index.php/GuaranaUI-QuickStart&quot; title=&quot;GuaranaUI-QuickStart&quot;&gt;here&lt;/a&gt; for more details.&lt;/p&gt;
&lt;/td&gt;

&lt;td width=&quot;20%&quot;&gt;&lt;center&gt;&lt;a href=&quot;/index.php/File:Guarana_docs.jpg&quot; class=&quot;image&quot; title=&quot;File:Guarana_docs.jpg&quot;&gt;&lt;img alt=&quot;File:Guarana_docs.jpg&quot; src=&quot;http://www.forum.nokia.com/piazza/wiki/images/b/b1/Guarana_docs.jpg&quot; width=&quot;76&quot; height=&quot;98&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;&lt;/center&gt;&lt;/td&gt;
&lt;td width=&quot;30%&quot; valign=&quot;top&quot;&gt;
&lt;a name=&quot;5._Components_Documentation&quot; id=&quot;5._Components_Documentation&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;5. Components Documentation&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;This wikipage&amp;nbsp;includes the&amp;nbsp;Components documentation for all developed components.&lt;/p&gt; 
&lt;p&gt;Click &lt;a href=&quot;/index.php/GuaranaUI-Documentation&quot; title=&quot;GuaranaUI-Documentation&quot;&gt; here&lt;/a&gt; for more details.&lt;/p&gt;
&lt;/td&gt;

&lt;/tr&gt;


&lt;/table&gt;
&lt;/center&gt;
</description>
			<pubDate>Thu, 19 Nov 2009 15:52:21 GMT</pubDate>			<dc:creator>Allanbezerra</dc:creator>			<comments>http://wiki.forum.nokia.com/index.php/Talk:Guarana_UI:_a_jQuery-Based_UI_Library_for_Nokia_WRT</comments>		</item>
		<item>
			<title>Creating Debian packages for Maemo 4 Qt applications and showing in the application menu</title>
			<link>http://wiki.forum.nokia.com/index.php/Creating_Debian_packages_for_Maemo_4_Qt_applications_and_showing_in_the_application_menu</link>
			<description>&lt;p&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;table id=&quot;toc&quot; class=&quot;toc&quot; summary=&quot;Contents&quot;&gt;&lt;tr&gt;&lt;td&gt;&lt;div id=&quot;toctitle&quot;&gt;&lt;h2&gt;Contents&lt;/h2&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li class=&quot;toclevel-1&quot;&gt;&lt;a href=&quot;#Introduction&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;1&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Introduction&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-1&quot;&gt;&lt;a href=&quot;#.Deb_Packages_In_Brief&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;2&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;.Deb Packages In Brief&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-1&quot;&gt;&lt;a href=&quot;#Prerequisites&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;3&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Prerequisites&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-1&quot;&gt;&lt;a href=&quot;#Creating_the_Application&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;4&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Creating the Application&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-1&quot;&gt;&lt;a href=&quot;#Copying_the_Application_to_Scratchbox&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;5&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Copying the Application to Scratchbox&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-1&quot;&gt;&lt;a href=&quot;#Compiling_the_Application_at_Scratchbox&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;6&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Compiling the Application at Scratchbox&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-1&quot;&gt;&lt;a href=&quot;#Creating_the_Tree_of_Debian_Package&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;7&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Creating the Tree of Debian Package&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-1&quot;&gt;&lt;a href=&quot;#Creating_the_file_thats_put_the_Application_on_Maemo_Menu&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;8&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Creating the file thats put the Application on Maemo Menu&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-1&quot;&gt;&lt;a href=&quot;#Copying_the_Application_Compiled__to_Deb_Tree&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;9&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Copying the Application Compiled  to Deb Tree&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-1&quot;&gt;&lt;a href=&quot;#Creating_the_Deb_Package&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;10&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Creating the Deb Package&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-1&quot;&gt;&lt;a href=&quot;#Sending_the_.Deb_Package_to_Maemo_Device&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;11&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Sending the .Deb Package to Maemo Device&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-1&quot;&gt;&lt;a href=&quot;#Installing_the_Deb_Package_at_Maemo_Device&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;12&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Installing the Deb Package at Maemo Device&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-1&quot;&gt;&lt;a href=&quot;#Snapshoot_of_HelloWorld_Application&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;13&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Snapshoot of HelloWorld Application&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;script type=&quot;text/javascript&quot;&gt; if (window.showTocToggle) { var tocShowText = &quot;show&quot;; var tocHideText = &quot;hide&quot;; showTocToggle(); } &lt;/script&gt;
&lt;a name=&quot;Introduction&quot; id=&quot;Introduction&quot;&gt;&lt;/a&gt;&lt;h3&gt; &lt;span class=&quot;mw-headline&quot;&gt;Introduction&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;In this article, I will present how to build a &lt;b&gt;.deb&lt;/b&gt; package . This is a usual implementation, but the difference is the &lt;b&gt;&lt;a href=&quot;/index.php/Category:Qt_for_Maemo&quot; title=&quot;Category:Qt for Maemo&quot;&gt;Qt for Maemo&lt;/a&gt;&lt;/b&gt; application. The other problem that this article will address is how  to put the Qt application at  &lt;b&gt;Menu of Maemo Device&lt;/b&gt;. The proposed strategy does not use dh_make to create the basic debian package structure, as described in &lt;a href=&quot;/index.php/Qt_for_Maemo_Developers_Guide&quot; title=&quot;Qt for Maemo Developers Guide&quot;&gt;Qt for Maemo Developers Guide&lt;/a&gt;.
&lt;/p&gt;&lt;p&gt;&lt;a href=&quot;/index.php/File:Postdeb1.png&quot; class=&quot;image&quot; title=&quot;Postdeb1.png&quot;&gt;&lt;img alt=&quot;&quot; src=&quot;http://www.forum.nokia.com/piazza/wiki/images/thumb/f/f9/Postdeb1.png/500px-Postdeb1.png&quot; width=&quot;500&quot; height=&quot;300&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;
&lt;a name=&quot;.Deb_Packages_In_Brief&quot; id=&quot;.Deb_Packages_In_Brief&quot;&gt;&lt;/a&gt;&lt;h3&gt; &lt;span class=&quot;mw-headline&quot;&gt;.Deb Packages In Brief&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;b&gt;Deb&lt;/b&gt; is the extension of the Debian software package format and the most often used name for such binary packages. Like the &lt;b&gt;Deb&lt;/b&gt; part of the term Debian. &lt;b&gt;Debian&lt;/b&gt; packages are used in distributions based on &lt;b&gt;Debian&lt;/b&gt;, such as &lt;b&gt;Ubuntu&lt;/b&gt; and others.
&lt;/p&gt;
&lt;a name=&quot;Prerequisites&quot; id=&quot;Prerequisites&quot;&gt;&lt;/a&gt;&lt;h3&gt; &lt;span class=&quot;mw-headline&quot;&gt; Prerequisites &lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;You need to have &lt;b&gt;libqt4-dev&lt;/b&gt; ,&lt;b&gt;ScratchBox&lt;/b&gt; and &lt;b&gt;Maemo SDK&lt;/b&gt;  installed on your Computer and &lt;b&gt;libqt4-dev&lt;/b&gt; installed on your &lt;b&gt;Scratchbox ARM&lt;/b&gt; target and your &lt;b&gt;Maemo Device&lt;/b&gt; . For more information on &lt;b&gt;ScratchBox&lt;/b&gt; Installation click &lt;a href=&quot;http://www.scratchbox.org/&quot; class=&quot;external text&quot; title=&quot;http://www.scratchbox.org/&quot; rel=&quot;nofollow&quot;&gt;here&lt;/a&gt; and for &lt;b&gt;Qt&lt;/b&gt; on &lt;b&gt;Maemo&lt;/b&gt; click &lt;a href=&quot;http://qt4.garage.maemo.org/diablo.html&quot; class=&quot;external text&quot; title=&quot;http://qt4.garage.maemo.org/diablo.html&quot; rel=&quot;nofollow&quot;&gt;here&lt;/a&gt;.
&lt;/p&gt;
&lt;a name=&quot;Creating_the_Application&quot; id=&quot;Creating_the_Application&quot;&gt;&lt;/a&gt;&lt;h3&gt; &lt;span class=&quot;mw-headline&quot;&gt;Creating the Application&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;a href=&quot;/index.php/File:Postdeb0.png&quot; class=&quot;image&quot; title=&quot;Postdeb0.png&quot;&gt;&lt;img alt=&quot;&quot; src=&quot;http://www.forum.nokia.com/piazza/wiki/images/thumb/2/2a/Postdeb0.png/423px-Postdeb0.png&quot; width=&quot;423&quot; height=&quot;300&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;&lt;p&gt;You need to create a simple &lt;b&gt;Qt HelloWorld&lt;/b&gt;  Project on computer. I created a project with two labels how is showed below. Remember of to set the size of QWidget to 720 of Width and 420 of Height because the resolution of Maemo Device.
&lt;/p&gt;
&lt;a name=&quot;Copying_the_Application_to_Scratchbox&quot; id=&quot;Copying_the_Application_to_Scratchbox&quot;&gt;&lt;/a&gt;&lt;h3&gt; &lt;span class=&quot;mw-headline&quot;&gt;Copying the Application to Scratchbox&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;First , copy the sources files of application to a folder at &lt;b&gt;Scratchbox&lt;/b&gt;. In general the address is &lt;b&gt;/scratchbox/users/username/home/username/&lt;/b&gt;. I do this:
&lt;/p&gt;
&lt;pre&gt;flavio@flavio-desktop:~/workspace$ cp -r  HelloWorld/ /scratchbox/users/flavio/home/flavio/
&lt;/pre&gt;
&lt;a name=&quot;Compiling_the_Application_at_Scratchbox&quot; id=&quot;Compiling_the_Application_at_Scratchbox&quot;&gt;&lt;/a&gt;&lt;h3&gt; &lt;span class=&quot;mw-headline&quot;&gt;Compiling the Application at Scratchbox&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;At Start, you need &lt;b&gt;login&lt;/b&gt; at &lt;b&gt;Scratchbox&lt;/b&gt;:
&lt;/p&gt;
&lt;pre&gt;~$ /scratchbox/login
&lt;/pre&gt;
&lt;p&gt;If necessary select the &lt;b&gt;ARM&lt;/b&gt; target using &lt;b&gt;sb-conf se DIABLO_ARMEL&lt;/b&gt; . To compile do this&amp;nbsp;:
&lt;/p&gt;
&lt;pre&gt;[sbox-DIABLO_ARMEL: ~] &amp;gt; cd HelloWorld
[sbox-DIABLO_ARMEL: ~/HelloWorld] &amp;gt; qmake
[sbox-DIABLO_ARMEL: ~/HelloWorld] &amp;gt; make
&lt;/pre&gt;
&lt;a name=&quot;Creating_the_Tree_of_Debian_Package&quot; id=&quot;Creating_the_Tree_of_Debian_Package&quot;&gt;&lt;/a&gt;&lt;h3&gt; &lt;span class=&quot;mw-headline&quot;&gt;Creating the Tree of Debian Package&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;After that , you need to create the following folders:
&lt;/p&gt;
&lt;pre&gt;[sbox-DIABLO_ARMEL: ~/HelloWorld] cd ..
[sbox-DIABLO_ARMEL: ~] &amp;gt; mkdir HelloWorldApplication
[sbox-DIABLO_ARMEL: ~] &amp;gt; mkdir HelloWorldApplication/DEBIAN
&lt;/pre&gt;
&lt;p&gt;You'll need to create a control file for your package using a simple text edit. In this post I use the &lt;b&gt;Vi&lt;/b&gt;.
&lt;/p&gt;
&lt;pre&gt;[sbox-DIABLO_ARMEL: ~] &amp;gt; vi  HelloWorldApplication/DEBIAN/control
&lt;/pre&gt;
&lt;p&gt;In this step we'll look at what each field in the control file means and what kind of information you need to provide.
The syntax for the control fields is very simple: the name of the field, followed by a colon, and then the body or value of the field.
&lt;/p&gt;
&lt;pre&gt;Package: HelloWorld
Priority: optional
Version: 1.0
Architecture: all
Maintainer: Flavio Fabricio &amp;lt;flaviofabricio@gmail.com&amp;gt;
Depends: libqt4-dev
Description: This is a HelloWorld Application
&lt;/pre&gt;
&lt;p&gt;Returns to &lt;b&gt;HelloWorld&lt;/b&gt; Application directory and create the folders below:
&lt;/p&gt;
&lt;pre&gt;[sbox-DIABLO_ARMEL: ~] &amp;gt; cd  HelloWorldApplication/
[sbox-DIABLO_ARMEL: ~/HelloWorldApplication] &amp;gt; mkdir usr
&lt;/pre&gt;
&lt;p&gt;Creating the /usr subdirectories:
&lt;/p&gt;
&lt;pre&gt;[sbox-DIABLO_ARMEL: ~/HelloWorldApplication] &amp;gt; cd usr/
[sbox-DIABLO_ARMEL: ~/HelloWorldApplication/usr] &amp;gt; mkdir bin
[sbox-DIABLO_ARMEL: ~/HelloWorldApplication/usr] &amp;gt; mkdir lib
[sbox-DIABLO_ARMEL: ~/HelloWorldApplication/usr] &amp;gt; mkdir share
&lt;/pre&gt;
&lt;p&gt;Creating the /share subdirectories:
&lt;/p&gt;
&lt;pre&gt;[sbox-DIABLO_ARMEL: ~/HelloWorldApplication/usr] &amp;gt; cd share/
[sbox-DIABLO_ARMEL: ~/HelloWorldApplication/usr/share] &amp;gt; mkdir applications
[sbox-DIABLO_ARMEL: ~/HelloWorldApplication/usr/share] &amp;gt; mkdir pixmaps
&lt;/pre&gt;
&lt;p&gt;Creating the &lt;b&gt;hildon&lt;/b&gt; subdirectory that is the folder where is the &lt;b&gt;.desktop&lt;/b&gt; files&amp;nbsp;:
&lt;/p&gt;
&lt;pre&gt;[sbox-DIABLO_ARMEL: ~/HelloWorldApplication/usr/share] &amp;gt; cd applications
[sbox-DIABLO_ARMEL: ~/HelloWorldApplication/usr/share/applications] &amp;gt; mkdir hildon
&lt;/pre&gt;
&lt;a name=&quot;Creating_the_file_thats_put_the_Application_on_Maemo_Menu&quot; id=&quot;Creating_the_file_thats_put_the_Application_on_Maemo_Menu&quot;&gt;&lt;/a&gt;&lt;h3&gt; &lt;span class=&quot;mw-headline&quot;&gt;Creating the file thats put the Application on Maemo Menu&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;You'll need to create too, a .desktop file that the &lt;b&gt;Maemo&lt;/b&gt; uses to put application at Menu. 
&lt;/p&gt;
&lt;pre&gt;[sbox-DIABLO_ARMEL: cd /HelloWorldApplication/usr/share/applications/hildon
[sbox-DIABLO_ARMEL: ~/HelloWorldApplication/usr/share/applications/hildon]&amp;gt;vi helloworld.desktop
&lt;/pre&gt;
&lt;p&gt;Here we'll to add the address of executable file , image icon file , etc...
&lt;/p&gt;
&lt;pre&gt;[Desktop Entry]
Categories=Qt;
Encoding=UTF-8
Version=0.1
Type=Application
Name=HelloWorld
Exec=/usr/bin/HelloWorld
Icon=helloworld
&lt;/pre&gt;
&lt;a name=&quot;Copying_the_Application_Compiled__to_Deb_Tree&quot; id=&quot;Copying_the_Application_Compiled__to_Deb_Tree&quot;&gt;&lt;/a&gt;&lt;h3&gt; &lt;span class=&quot;mw-headline&quot;&gt;Copying the Application Compiled  to Deb Tree&lt;/span&gt;&lt;/h3&gt;
&lt;pre&gt;[sbox-DIABLO_ARMEL: ~] &amp;gt; cd HelloWorld
[sbox-DIABLO_ARMEL: ~/HelloWorld] &amp;gt; ls
HelloWorld     helloworld.cpp  main.cpp       helloworld.png  
HelloWorld.pro helloworld.h    helloworld.ui  ui_helloworld.h 
&lt;/pre&gt;
&lt;p&gt;In this step, you will to copy the executable file to /usr/bin folder. This executable is called by helloworld.desktop at line &lt;b&gt;Exec=/usr/bin/HelloWorld&lt;/b&gt; on the file described above.
&lt;/p&gt;
&lt;pre&gt;[sbox-DIABLO_ARMEL: ~/HelloWorld] &amp;gt; cp helloworld ../HelloWorldApplication/usr/bin/
&lt;/pre&gt;
&lt;p&gt;Now, you will to copy the sources files to /usr/lib folder.This is recommended , but not required. 
&lt;/p&gt;
&lt;pre&gt;[sbox-DIABLOE_ARMEL: ~/HelloWorld] &amp;gt; cp HelloWorld.pro ../HelloWorldApplication/usr/lib/
[sbox-DIABLO_ARMEL: ~/HelloWorld] &amp;gt; cp helloworld.cpp ../HelloWorldApplication/usr/lib/
[sbox-DIABLO_ARMEL: ~/HelloWorld] &amp;gt; cp helloworld.h ../HelloWorldApplication/usr/lib/
[sbox-DIABLO_ARMEL: ~/HelloWorld] &amp;gt; cp helloworld.ui ../HelloWorldApplication/usr/lib/
[sbox-DIABLO_ARMEL: ~/HelloWorld] &amp;gt; cp main.cpp ../HelloWorldApplication/usr/lib/
&lt;/pre&gt;
&lt;p&gt;You will need a picture to use like Icon. You can search some image at the &lt;a href=&quot;http://images.google.com/&quot; class=&quot;external text&quot; title=&quot;http://images.google.com/&quot; rel=&quot;nofollow&quot;&gt;Google Images&lt;/a&gt;.In this case I renamed the picture to &lt;b&gt;helloworld.png&lt;/b&gt;.This image is called by &lt;b&gt;helloworld.desktop&lt;/b&gt; at line &lt;b&gt;Icon=helloworld&lt;/b&gt; on the file described above and save to &lt;b&gt;/usr/share/pixmaps/&lt;/b&gt; folder. 
&lt;/p&gt;
&lt;pre&gt;[sbox-DIABLO_ARMEL: ~/HelloWorld] &amp;gt; cp helloworld.png ../HelloWorldApplication/usr/share/pixmaps/
&lt;/pre&gt;
&lt;a name=&quot;Creating_the_Deb_Package&quot; id=&quot;Creating_the_Deb_Package&quot;&gt;&lt;/a&gt;&lt;h3&gt; &lt;span class=&quot;mw-headline&quot;&gt;Creating the Deb Package&lt;/span&gt;&lt;/h3&gt;
&lt;pre&gt;[sbox-DIABLO_ARMEL: ~/HelloWorld] &amp;gt; cd ..
[sbox-DIABLO_ARMEL: ~] &amp;gt; dpkg-deb -b HelloWorldApplication
&lt;/pre&gt;
&lt;a name=&quot;Sending_the_.Deb_Package_to_Maemo_Device&quot; id=&quot;Sending_the_.Deb_Package_to_Maemo_Device&quot;&gt;&lt;/a&gt;&lt;h3&gt; &lt;span class=&quot;mw-headline&quot;&gt;Sending the .Deb Package to Maemo Device&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;I used the &lt;b&gt;Scp&lt;/b&gt; command with the &lt;b&gt;IP&lt;/b&gt; address of device. The &lt;b&gt;IP&lt;/b&gt; address of device is searched at &lt;b&gt;Settings-&amp;gt;Connection Manager&lt;/b&gt; , after that , click at Connection Manager at &lt;b&gt;left-Up-Corner-&amp;gt;internet connection-&amp;gt;IP address&lt;/b&gt;.
&lt;/p&gt;
&lt;pre&gt;[sbox-DIABLO_ARMEL: ~/HelloWorld] &amp;gt; scp HelloWorldApplication.deb root@10.0.0.13:/home/
&lt;/pre&gt;
&lt;a name=&quot;Installing_the_Deb_Package_at_Maemo_Device&quot; id=&quot;Installing_the_Deb_Package_at_Maemo_Device&quot;&gt;&lt;/a&gt;&lt;h3&gt; &lt;span class=&quot;mw-headline&quot;&gt;Installing the Deb Package at Maemo Device&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;Open a new terminal and do this:
&lt;/p&gt;
&lt;pre&gt;ssh root@10.0.0.13
&lt;/pre&gt;
&lt;p&gt;enter with the &lt;b&gt;password&lt;/b&gt; of &lt;b&gt;Maemo&lt;/b&gt; Device
&lt;/p&gt;
&lt;pre&gt;root@10.0.0.13's password:
Nokia-N810-43-7:~# cd ..
Nokia-N810-43-7:/# cd /home/
Nokia-N810-43-7:/home# dpkg -i HelloWorldApplication.deb
&lt;/pre&gt;
&lt;p&gt;Now, the application is installed at &lt;b&gt;Maemo&lt;/b&gt; Device. 
&lt;/p&gt;
&lt;a name=&quot;Snapshoot_of_HelloWorld_Application&quot; id=&quot;Snapshoot_of_HelloWorld_Application&quot;&gt;&lt;/a&gt;&lt;h3&gt; &lt;span class=&quot;mw-headline&quot;&gt;Snapshoot of HelloWorld Application&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;a href=&quot;/index.php/File:Postdeb2.png&quot; class=&quot;image&quot; title=&quot;Postdeb2.png&quot;&gt;&lt;img alt=&quot;&quot; src=&quot;http://www.forum.nokia.com/piazza/wiki/images/thumb/1/18/Postdeb2.png/500px-Postdeb2.png&quot; width=&quot;500&quot; height=&quot;300&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;&lt;p&gt;This post is also available too &lt;a href=&quot;http://efforts.embedded.ufcg.edu.br/qt/&quot; class=&quot;external text&quot; title=&quot;http://efforts.embedded.ufcg.edu.br/qt/&quot; rel=&quot;nofollow&quot;&gt;QtEfforts &lt;/a&gt; of the &lt;a href=&quot;http://efforts.embedded.ufcg.edu.br&quot; class=&quot;external text&quot; title=&quot;http://efforts.embedded.ufcg.edu.br&quot; rel=&quot;nofollow&quot;&gt;Efforts Projects&lt;/a&gt; in the &lt;a href=&quot;http://embedded.ufcg.edu.br/indexen.html&quot; class=&quot;external text&quot; title=&quot;http://embedded.ufcg.edu.br/indexen.html&quot; rel=&quot;nofollow&quot;&gt;Embedded Systems and Pervasive Computing Laboratory&lt;/a&gt;.
&lt;/p&gt;</description>
			<pubDate>Tue, 17 Nov 2009 10:55:49 GMT</pubDate>			<dc:creator>Jimgilmour1</dc:creator>			<comments>http://wiki.forum.nokia.com/index.php/Talk:Creating_Debian_packages_for_Maemo_4_Qt_applications_and_showing_in_the_application_menu</comments>		</item>
		<item>
			<title>Java Memory Management</title>
			<link>http://wiki.forum.nokia.com/index.php/Java_Memory_Management</link>
			<description>&lt;div align=&quot;right&quot;&gt;&lt;b&gt;Reviewer Approved&lt;/b&gt; &amp;nbsp;&amp;nbsp; &lt;a href=&quot;/index.php/File:Thumbs_up_icon_sm.jpg&quot; class=&quot;image&quot; title=&quot;Thumbs up icon sm.jpg&quot;&gt;&lt;img alt=&quot;&quot; src=&quot;http://www.forum.nokia.com/piazza/wiki/images/thumb/3/34/Thumbs_up_icon_sm.jpg/31px-Thumbs_up_icon_sm.jpg&quot; width=&quot;31&quot; height=&quot;30&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;p&gt;&lt;br /&gt;
Memory management can be one of the great joys of developing with a garbage-collected language like Java.  Being able to create objects temporarily, without having to worry about making sure they are destroyed later, makes object orientation much more usable.  Using libraries without having to worry about who is responsible for allocating and deallocating memory means less time rummaging through documentation, and less time tracking down memory leaks.
&lt;/p&gt;&lt;p&gt;In the world of Java ME, however, we're often working in very tight spaces, sometimes as low as 200k, so memory management is still something we have to think about.  And it can still be something we have to &lt;i&gt;do&lt;/i&gt;.
&lt;/p&gt;&lt;p&gt;Which means, you'll need to know how memory is being managed...
&lt;/p&gt;
&lt;table id=&quot;toc&quot; class=&quot;toc&quot; summary=&quot;Contents&quot;&gt;&lt;tr&gt;&lt;td&gt;&lt;div id=&quot;toctitle&quot;&gt;&lt;h2&gt;Contents&lt;/h2&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li class=&quot;toclevel-1&quot;&gt;&lt;a href=&quot;#The_Heap.28s.29&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;1&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;The Heap(s)&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-1&quot;&gt;&lt;a href=&quot;#Garbage_Collection&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;2&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Garbage Collection&lt;/span&gt;&lt;/a&gt;
&lt;ul&gt;
&lt;li class=&quot;toclevel-2&quot;&gt;&lt;a href=&quot;#What_The_Garbage_Collector_Doesn.27t_Do&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;2.1&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;What The Garbage Collector Doesn't Do&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-2&quot;&gt;&lt;a href=&quot;#.22But.2C_I_Don.27t_Create_Any_Garbage.22&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;2.2&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;&quot;But, I Don't Create Any Garbage&quot;&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li class=&quot;toclevel-1&quot;&gt;&lt;a href=&quot;#Classes&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;3&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Classes&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-1&quot;&gt;&lt;a href=&quot;#Objects&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;4&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Objects&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-1&quot;&gt;&lt;a href=&quot;#Further_Reading&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;5&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Further Reading&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;script type=&quot;text/javascript&quot;&gt; if (window.showTocToggle) { var tocShowText = &quot;show&quot;; var tocHideText = &quot;hide&quot;; showTocToggle(); } &lt;/script&gt;
&lt;a name=&quot;The_Heap.28s.29&quot; id=&quot;The_Heap.28s.29&quot;&gt;&lt;/a&gt;&lt;h3&gt; &lt;span class=&quot;mw-headline&quot;&gt;The Heap(s)&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;The heap is the space used for all runtime data.  This can include classes and objects, as well as &lt;i&gt;stack frames&lt;/i&gt;.  Stack frames are used by methods to store parameters and local variables, as well as temporary values during expression evaluation.  They are created when a method is entered, and destroyed when it exits.
&lt;/p&gt;&lt;p&gt;Heaps come in all shapes and sizes, which can make life confusing for those new to mobile Java.
&lt;/p&gt;&lt;p&gt;Every implementation has at least one heap.  This is the main place where classes are loaded and objects are allocated.  It might be a fixed size (like Series 40), or it might grow as required (Series 60).  The Runtime class has methods for finding the size of this heap and how much is free (unallocated).
&lt;/p&gt;&lt;p&gt;Some implementations will use additional heaps.  These will usually be specialised in some way.  Examples include:
&lt;/p&gt;
&lt;ul&gt;&lt;li&gt; Native object heap: sometimes, Java objects are used to access &quot;native objects&quot; - objects that are created and managed by the operating system or user interface.  In some cases, these objects will exist outside of the Java heap, with a small object inside the Java heap that interfaces between the two environments.  Images and 3D objects can fall into this category.
&lt;/li&gt;&lt;/ul&gt;
&lt;ul&gt;&lt;li&gt; Image heap: images heaps are used only for images.  They are sometimes more closely coupled to the video hardware to improve graphical performance.
&lt;/li&gt;&lt;/ul&gt;
&lt;ul&gt;&lt;li&gt; Large object heap: this kind of heap is used for &quot;large objects&quot; - which could include images or large arrays.
&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;&lt;br /&gt;
Heaps like these may be shared between applications.  There may be no way to find out how large these heaps are, or how much is available.  Heaps shared between applications can be a common cause of OutOfMemoryErrors that occur only the first time the application is executed after download, usually because the browser is still consuming memory.
&lt;/p&gt;&lt;p&gt;Since some kinds of object may have to be stored in a specific heap, running out of space in any one heap can result in an OutOfMemoryError.
&lt;/p&gt;
&lt;a name=&quot;Garbage_Collection&quot; id=&quot;Garbage_Collection&quot;&gt;&lt;/a&gt;&lt;h3&gt; &lt;span class=&quot;mw-headline&quot;&gt;Garbage Collection&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;The garbage collector (GC)gets rid of objects (from all heaps) that you don't need anymore.  Eventually.  It doesn't get rid of them immediately that they become unreachable.
&lt;/p&gt;&lt;p&gt;What you can guarantee, is that the GC will have done it's best to find memory &lt;i&gt;before&lt;/i&gt; an OutOfMemoryError is thrown.  Usually, the GC runs when there is not enough memory to create a new object.  If you watch the memory monitor of an emulator, you'll usually see the free memory drop steadily towards zero, then bounce back up as the GC does its work.
&lt;/p&gt;&lt;p&gt;It will never release an object that you can possibly use.  If any variable anywhere in the system refers to an object, then the object isn't garbage.
&lt;/p&gt;&lt;p&gt;There doesn't always need to be a variable to keep an object.  An object isn't garbage if it's referenced from a stack frame.  For example:
&lt;/p&gt;
&lt;pre class=&quot;java&quot; style=&quot;font-family:monospace;&quot;&gt;&lt;a href=&quot;http://www.google.com/search?hl=en&amp;amp;q=allinurl%3Astring+java.sun.com&amp;amp;btnI=I%27m%20Feeling%20Lucky&quot;&gt;&lt;span style=&quot;color: #003399;&quot;&gt;String&lt;/span&gt;&lt;/a&gt; s2 &lt;span style=&quot;color: #339933;&quot;&gt;=&lt;/span&gt; s1.&lt;span style=&quot;color: #006633;&quot;&gt;trim&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;.&lt;span style=&quot;color: #006633;&quot;&gt;toLowerCase&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;/pre&gt;
&lt;p&gt;The call to trim() creates a new String object.  A reference to this String is placed on the stack so that the toLowerCase() method can be invoked on this new object.  toLowerCase() creates another object, a reference to which is saved in the variable &quot;s2&quot;.  Once toLowerCase() returns, the object created by trim() is no longer needed.  Its reference is lost, and the object becomes garbage.
&lt;/p&gt;&lt;p&gt;Some objects are referenced by system objects.
&lt;/p&gt;
&lt;ul&gt;&lt;li&gt; Threads are referenced by the Java Virtual Machine, as long as they're running.  So, threads can't become garbage until they die.
&lt;/li&gt;&lt;/ul&gt;
&lt;ul&gt;&lt;li&gt; Each MIDlet is associated with an instance of Display.  That object never becomes garbage (until the application terminates).  Any objects reachable through the Display won't become garbage either.  The Display holds a reference to a Displayable object - whatever you passed to Display.setCurrent().  That Displayable might also reference object, such as Images used on a Form or List.
&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;&lt;br /&gt;
You can, you're probably aware, invoke the garbage collector manually, by calling System.gc().  In general, this is a bad plan.  When the GC runs automatically, it might (on some implementations) run a quick cycle, freeing up enough memory for the program to continue.  But the rules say that when you run it manually, it must make every attempt to collect &lt;i&gt;all&lt;/i&gt; the garbage.  This can be much slower on devices with large heaps.  Series 60 devices are particular prone to this.
&lt;/p&gt;&lt;p&gt;On most devices, the garbage collector will defragment the available space in the heap.  This ensures that you can create objects as big as possible.  However, some older devices don't.  This can result in the free space being split into many small pieces.  The largest object you can create is restricted to the largest single piece, so you can run out of memory even if you have enough memory &lt;i&gt;in total&lt;/i&gt;.  On devices like this, running the GC manually after creating a lot of garbage can reduce fragmentation.  It's also useful (on the same devices) in-between loading images.
&lt;/p&gt;&lt;p&gt;Manual GC's are best performed when the user will expect some kind of delay - like, when you have a &quot;loading&quot; or &quot;please wait&quot; screen displayed.
&lt;/p&gt;
&lt;a name=&quot;What_The_Garbage_Collector_Doesn.27t_Do&quot; id=&quot;What_The_Garbage_Collector_Doesn.27t_Do&quot;&gt;&lt;/a&gt;&lt;h4&gt; &lt;span class=&quot;mw-headline&quot;&gt;What The Garbage Collector Doesn't Do&lt;/span&gt;&lt;/h4&gt;
&lt;p&gt;It doesn't kill threads.  Threads die when their run() method terminates, either by hitting the closing brace, reaching a return statement, or throwing an exception.
&lt;/p&gt;&lt;p&gt;It doesn't close files, network connections, record stores, media players, or anything else.  These objects &lt;b&gt;must&lt;/b&gt; be closed by calling the appropriate methods, or scarce system resources might not get released.
&lt;/p&gt;
&lt;a name=&quot;.22But.2C_I_Don.27t_Create_Any_Garbage.22&quot; id=&quot;.22But.2C_I_Don.27t_Create_Any_Garbage.22&quot;&gt;&lt;/a&gt;&lt;h4&gt; &lt;span class=&quot;mw-headline&quot;&gt;&quot;But, I Don't Create Any Garbage&quot;&lt;/span&gt;&lt;/h4&gt;
&lt;p&gt;It's pretty much impossible to execute Java code and not create any garbage.  Even if you don't create objects, library code will do.  Graphics objects will be created every time the screen is re-painted, for example.
&lt;/p&gt;&lt;p&gt;Since trying to avoid garbage is futile, you are generally better to create new objects when you need them, and not to try to re-use existing objects.  Objects that have already been used might retain unwanted data, or be left in a different state than a fresh object, resulting in peculiar bugs.
&lt;/p&gt;
&lt;a name=&quot;Classes&quot; id=&quot;Classes&quot;&gt;&lt;/a&gt;&lt;h3&gt; &lt;span class=&quot;mw-headline&quot;&gt;Classes&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;The code you run gets loaded into the heap.  Classes are loaded as needed, not necessarily all at the start.  Classes are never unloaded (until the VM terminates), because they never become garbage.  (In Java ME CLDC, that is.  Classes &lt;i&gt;can&lt;/i&gt; become garbage in versions of Java that support multiple class-loaders, like J2SE or ME CDC.)
&lt;/p&gt;&lt;p&gt;In most cases, this doesn't include system classes.  System classes are usually pre-loaded in the phone's firmware.
&lt;/p&gt;
&lt;a name=&quot;Objects&quot; id=&quot;Objects&quot;&gt;&lt;/a&gt;&lt;h3&gt; &lt;span class=&quot;mw-headline&quot;&gt;Objects&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;Arrays are objects too, so all the same rules apply to them.
&lt;/p&gt;&lt;p&gt;Since the Java Virtual Machine specification doesn't describe how objects should be represented in memory, it's impossible to say how much memory things &lt;i&gt;actually&lt;/i&gt; take.  But, based on experience, here's some pretty close figures.
&lt;/p&gt;&lt;p&gt;On all the VM's I've tried, all objects take 16 bytes, no matter what.  This is the overhead that the VM needs to manage the object.  Add to that whatever is required for their fields, and round that up to a multiple of four (memory is almost always allocated in four-byte chunks).
&lt;/p&gt;&lt;p&gt;Object references, floats and ints need four bytes each.  Bytes need (you guessed) one byte each.  So do booleans.  Shorts and chars need two.  Longs and doubles need eight.
&lt;/p&gt;&lt;p&gt;A couple of examples will help to put this in some perspective, and maybe explain why you can seem to run out of memory a long time before you expect to.
&lt;/p&gt;&lt;p&gt;Consider this.
&lt;/p&gt;
&lt;pre class=&quot;java&quot; style=&quot;font-family:monospace;&quot;&gt;&lt;span style=&quot;color: #000066; font-weight: bold;&quot;&gt;byte&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#93;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#93;&lt;/span&gt; array &lt;span style=&quot;color: #339933;&quot;&gt;=&lt;/span&gt; &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;new&lt;/span&gt; &lt;span style=&quot;color: #000066; font-weight: bold;&quot;&gt;byte&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#91;&lt;/span&gt;3&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#93;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#91;&lt;/span&gt;3&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#93;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;/pre&gt;
&lt;p&gt;An array big enough to hold nine bytes.  How much heap will that need?
Well, a two-dimensional array 
is actually an array of arrays (an array of objects, since arrays are objects).  So, the following code is equivalent.
&lt;/p&gt;
&lt;pre class=&quot;java&quot; style=&quot;font-family:monospace;&quot;&gt;&lt;span style=&quot;color: #000066; font-weight: bold;&quot;&gt;byte&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#93;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#93;&lt;/span&gt; array &lt;span style=&quot;color: #339933;&quot;&gt;=&lt;/span&gt; &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;new&lt;/span&gt; &lt;span style=&quot;color: #000066; font-weight: bold;&quot;&gt;byte&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#91;&lt;/span&gt;3&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#93;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#93;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;array&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#91;&lt;/span&gt;0&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#93;&lt;/span&gt; &lt;span style=&quot;color: #339933;&quot;&gt;=&lt;/span&gt; &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;new&lt;/span&gt; &lt;span style=&quot;color: #000066; font-weight: bold;&quot;&gt;byte&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#91;&lt;/span&gt;3&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#93;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;array&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#91;&lt;/span&gt;1&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#93;&lt;/span&gt; &lt;span style=&quot;color: #339933;&quot;&gt;=&lt;/span&gt; &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;new&lt;/span&gt; &lt;span style=&quot;color: #000066; font-weight: bold;&quot;&gt;byte&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#91;&lt;/span&gt;3&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#93;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;array&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#91;&lt;/span&gt;2&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#93;&lt;/span&gt; &lt;span style=&quot;color: #339933;&quot;&gt;=&lt;/span&gt; &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;new&lt;/span&gt; &lt;span style=&quot;color: #000066; font-weight: bold;&quot;&gt;byte&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#91;&lt;/span&gt;3&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#93;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;/pre&gt;
&lt;p&gt;The first array we create is an object, so needs 16 bytes of memory.  On top of that, it contains three object references of four bytes each.  I make that 28 bytes.
&lt;/p&gt;&lt;p&gt;Then we create another three objects.  These also need 16 bytes, plus enough space for the three bytes each one contains.  That's going to mean &lt;i&gt;four&lt;/i&gt; bytes, since it has to be a multiple of four.  Three objects of 20 bytes each, so 60 bytes.
&lt;/p&gt;&lt;p&gt;That's 88 bytes in total.  Small objects can be very, very expensive.
&lt;/p&gt;&lt;p&gt;Strings are also deceptively expensive.
&lt;/p&gt;&lt;p&gt;Each String is an object (16 bytes of overhead), containing an int (four bytes, to store the length of the String) and a reference to a char[] (four bytes).  The char[] is also an object (16 bytes), needing two bytes for each character, rounded up to a multiple of four.  That's 40 bytes, plus two per character, plus zero or two bytes of padding.  The String &quot;Hi!&quot;, for example, takes 48 bytes.
&lt;/p&gt;&lt;p&gt;Another String example: let's say you have a dictionary of 15,000 words, averaging seven characters per word.  That's 105,000 characters.  The easy trap to fall into is that this will need 105,000 bytes.
&lt;/p&gt;&lt;p&gt;A seven-character String takes 56 bytes.  15,000 * 56 comes to 840,000 bytes.
&lt;/p&gt;&lt;p&gt;You'll also need somewhere to store the references to these objects.  A String[] of 15,000 elements will need a little over 60,000 bytes, taking the total to over 900,000 bytes.  If you want to reference your Strings through something more exotic, like a Hashtable, the total is going to be over 1Mb.
&lt;/p&gt;
&lt;a name=&quot;Further_Reading&quot; id=&quot;Further_Reading&quot;&gt;&lt;/a&gt;&lt;h3&gt; &lt;span class=&quot;mw-headline&quot;&gt;Further Reading&lt;/span&gt;&lt;/h3&gt;
&lt;ul&gt;&lt;li&gt; &lt;a href=&quot;/index.php/Memory_Usage_Images&quot; title=&quot;Memory Usage Images&quot;&gt;Memory Usage Images&lt;/a&gt;: describes how memory is used for storing images.
&lt;/li&gt;&lt;/ul&gt;
&lt;ul&gt;&lt;li&gt; &lt;a href=&quot;/index.php/How_to_use_an_optional_API_in_Java_ME&quot; title=&quot;How to use an optional API in Java ME&quot;&gt;How to use an optional API in Java ME&lt;/a&gt;: describes the class loading process, and how to control which classes are loaded and when.
&lt;/li&gt;&lt;/ul&gt;
</description>
			<pubDate>Tue, 17 Nov 2009 12:46:35 GMT</pubDate>			<dc:creator>Tiger79</dc:creator>			<comments>http://wiki.forum.nokia.com/index.php/Talk:Java_Memory_Management</comments>		</item>
		<item>
			<title>How to get preferences of active profile using CRepository</title>
			<link>http://wiki.forum.nokia.com/index.php/How_to_get_preferences_of_active_profile_using_CRepository</link>
			<description>&lt;div align=&quot;right&quot;&gt;&lt;b&gt;Reviewer Approved&lt;/b&gt; &amp;nbsp;&amp;nbsp; &lt;a href=&quot;/index.php/File:Thumbs_up_icon_sm.jpg&quot; class=&quot;image&quot; title=&quot;Thumbs up icon sm.jpg&quot;&gt;&lt;img alt=&quot;&quot; src=&quot;http://www.forum.nokia.com/piazza/wiki/images/thumb/3/34/Thumbs_up_icon_sm.jpg/31px-Thumbs_up_icon_sm.jpg&quot; width=&quot;31&quot; height=&quot;30&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;table style=&quot;width:100%; border-top:1px solid lightgray; border-right:2px solid gray; border-bottom:2px solid gray; border-left:1px solid lightgray;&quot; cellpadding=&quot;3&quot; cellspacing=&quot;0&quot;&gt;
&lt;tr&gt;
&lt;th bgcolor=&quot;#efefef&quot;&gt; Note!
&lt;/th&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;dl&gt;&lt;dd&gt;This API is not part of the public SDK. It can be found in the &lt;a href=&quot;/index.php/SDK_API_Plug-in&quot; title=&quot;SDK API Plug-in&quot;&gt;SDK API Plug-in&lt;/a&gt;. 
&lt;/dd&gt;&lt;/dl&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;p&gt;&lt;br /&gt;
The following code snippet explains how to read settings of currently active profile using &lt;b&gt;CRepository&lt;/b&gt;. 
Create() and Set() methods are not documented in SDK.
&lt;/p&gt;&lt;p&gt;There are potentially 2^32 repositories, each identified by a UID. Within each repository up to 2^32 settings can be stored. Settings within a repository are identified by a 32-bit key and may be of the types integer, real or descriptor. 
&lt;/p&gt;&lt;p&gt;Get() method of CRepository class will be used to read active profile settings. UID of profile repository is &lt;b&gt;KCRUidProfileEngine&lt;/b&gt;.
&lt;/p&gt;
&lt;a name=&quot;Code&quot; id=&quot;Code&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt; Code &lt;/span&gt;&lt;/h2&gt;
&lt;pre class=&quot;cpp&quot; style=&quot;font-family:monospace;&quot;&gt;Includes&lt;span style=&quot;color: #008080;&quot;&gt;:&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #666666;&quot;&gt;// for CRepository&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #339900;&quot;&gt;#include &amp;lt;centralrepository.h&amp;gt; &lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #666666;&quot;&gt;// for active profile settings&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #339900;&quot;&gt;#include &amp;lt;ProfileEngineSDKCRKeys.h&amp;gt;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;Libraries&lt;span style=&quot;color: #008080;&quot;&gt;:&lt;/span&gt; &lt;br /&gt;centralrepository.&lt;span style=&quot;color: #007788;&quot;&gt;lib&lt;/span&gt;&lt;/pre&gt;
&lt;pre class=&quot;cpp&quot; style=&quot;font-family:monospace;&quot;&gt;&lt;span style=&quot;color: #0000ff;&quot;&gt;void&lt;/span&gt; GetSettingsOfActiveProfileL&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;	 CRepository &lt;span style=&quot;color: #000040;&quot;&gt;*&lt;/span&gt;repository &lt;span style=&quot;color: #000080;&quot;&gt;=&lt;/span&gt; CRepository&lt;span style=&quot;color: #008080;&quot;&gt;::&lt;/span&gt;&lt;span style=&quot;color: #007788;&quot;&gt;NewLC&lt;/span&gt;&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#40;&lt;/span&gt; KCRUidProfileEngine &lt;span style=&quot;color: #008000;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #008080;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;	 TInt value&lt;span style=&quot;color: #008080;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;	 &lt;span style=&quot;color: #666666;&quot;&gt;// Get the ID of the active profile:&lt;/span&gt;&lt;br /&gt;	 User&lt;span style=&quot;color: #008080;&quot;&gt;::&lt;/span&gt;&lt;span style=&quot;color: #007788;&quot;&gt;LeaveIfError&lt;/span&gt;&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#40;&lt;/span&gt; repository&lt;span style=&quot;color: #000040;&quot;&gt;-&lt;/span&gt;&lt;span style=&quot;color: #000080;&quot;&gt;&amp;gt;&lt;/span&gt;Get&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#40;&lt;/span&gt; KProEngActiveProfile, value &lt;span style=&quot;color: #008000;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #008000;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #008080;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;	 &lt;span style=&quot;color: #666666;&quot;&gt;// Get the keypad tone volume of active profile&lt;/span&gt;&lt;br /&gt;	 User&lt;span style=&quot;color: #008080;&quot;&gt;::&lt;/span&gt;&lt;span style=&quot;color: #007788;&quot;&gt;LeaveIfError&lt;/span&gt;&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#40;&lt;/span&gt; repository&lt;span style=&quot;color: #000040;&quot;&gt;-&lt;/span&gt;&lt;span style=&quot;color: #000080;&quot;&gt;&amp;gt;&lt;/span&gt;Get&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#40;&lt;/span&gt; KProEngActiveKeypadVolume, value &lt;span style=&quot;color: #008000;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #008000;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #008080;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;	 &lt;span style=&quot;color: #666666;&quot;&gt;// Get the ringtone of the cactive profile&lt;/span&gt;&lt;br /&gt;	 User&lt;span style=&quot;color: #008080;&quot;&gt;::&lt;/span&gt;&lt;span style=&quot;color: #007788;&quot;&gt;LeaveIfError&lt;/span&gt;&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#40;&lt;/span&gt; repository&lt;span style=&quot;color: #000040;&quot;&gt;-&lt;/span&gt;&lt;span style=&quot;color: #000080;&quot;&gt;&amp;gt;&lt;/span&gt;Get&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#40;&lt;/span&gt; KProEngActiveRingingType, value &lt;span style=&quot;color: #008000;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #008000;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #008080;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;	 &lt;span style=&quot;color: #666666;&quot;&gt;// Get the ringing volume of the active profile&lt;/span&gt;&lt;br /&gt;	 User&lt;span style=&quot;color: #008080;&quot;&gt;::&lt;/span&gt;&lt;span style=&quot;color: #007788;&quot;&gt;LeaveIfError&lt;/span&gt;&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#40;&lt;/span&gt; repository&lt;span style=&quot;color: #000040;&quot;&gt;-&lt;/span&gt;&lt;span style=&quot;color: #000080;&quot;&gt;&amp;gt;&lt;/span&gt;Get&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#40;&lt;/span&gt; KProEngActiveRingingVolume, value &lt;span style=&quot;color: #008000;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #008000;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #008080;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;	 &lt;span style=&quot;color: #666666;&quot;&gt;// Get the warning tone setting of the active profile&lt;/span&gt;&lt;br /&gt;	 User&lt;span style=&quot;color: #008080;&quot;&gt;::&lt;/span&gt;&lt;span style=&quot;color: #007788;&quot;&gt;LeaveIfError&lt;/span&gt;&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#40;&lt;/span&gt; repository&lt;span style=&quot;color: #000040;&quot;&gt;-&lt;/span&gt;&lt;span style=&quot;color: #000080;&quot;&gt;&amp;gt;&lt;/span&gt;Get&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#40;&lt;/span&gt; KProEngActiveWarningTones, value &lt;span style=&quot;color: #008000;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #008000;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #008080;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;	 &lt;span style=&quot;color: #666666;&quot;&gt;// Get the message alert setting of the active profile:&lt;/span&gt;&lt;br /&gt;	 User&lt;span style=&quot;color: #008080;&quot;&gt;::&lt;/span&gt;&lt;span style=&quot;color: #007788;&quot;&gt;LeaveIfError&lt;/span&gt;&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#40;&lt;/span&gt; repository&lt;span style=&quot;color: #000040;&quot;&gt;-&lt;/span&gt;&lt;span style=&quot;color: #000080;&quot;&gt;&amp;gt;&lt;/span&gt;Get&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#40;&lt;/span&gt; KProEngActiveMessageAlert, value &lt;span style=&quot;color: #008000;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #008000;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #008080;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;	 CleanupStack&lt;span style=&quot;color: #008080;&quot;&gt;::&lt;/span&gt;&lt;span style=&quot;color: #007788;&quot;&gt;PopAndDestroy&lt;/span&gt;&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#40;&lt;/span&gt; repository &lt;span style=&quot;color: #008000;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #008080;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;/pre&gt;
</description>
			<pubDate>Tue, 17 Nov 2009 11:02:08 GMT</pubDate>			<dc:creator>Jimgilmour1</dc:creator>			<comments>http://wiki.forum.nokia.com/index.php/Talk:How_to_get_preferences_of_active_profile_using_CRepository</comments>		</item>
		<item>
			<title>How to make your widget to stretch to full screen</title>
			<link>http://wiki.forum.nokia.com/index.php/How_to_make_your_widget_to_stretch_to_full_screen</link>
			<description>&lt;p&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;a name=&quot;How_to_make_your_widget_to_stretch_to_full_screen&quot; id=&quot;How_to_make_your_widget_to_stretch_to_full_screen&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;How to make your widget to stretch to full screen&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;Initially &lt;tt&gt;body&lt;/tt&gt;-element has some predefined margin and padding values. To make your widget to cover full screen you will need to reset those by setting &lt;tt&gt;margin:0 &lt;/tt&gt;  and &lt;tt&gt; padding:0&lt;/tt&gt; in CSS.  If you don’t override default values and set body width:100% you will experience some horizontal movement.
&lt;/p&gt;
&lt;pre class=&quot;html4strict&quot; style=&quot;font-family:monospace;&quot;&gt;body{&lt;br /&gt; width:100%;&lt;br /&gt; height: 100%;&lt;br /&gt; background-color:#f3f3d1;&lt;br /&gt;&amp;nbsp;&lt;br /&gt; /*set this to get rid of the small horizontal movement*/&lt;br /&gt; margin: 0;&lt;br /&gt; padding: 0;&lt;br /&gt;}&lt;/pre&gt;
&lt;p&gt;The next step is to make a wrapper div that contains all your content. You will have to use absolute postioning and place the div to start from the left upper corner by setting &lt;tt&gt;left:0; &lt;/tt&gt; and  &lt;tt&gt;top:0;&lt;/tt&gt; in css:
&lt;/p&gt;
&lt;pre class=&quot;html4strict&quot; style=&quot;font-family:monospace;&quot;&gt;/*absolute posioning is neede to cover full screen*/&lt;br /&gt;#fsWrapper{&lt;br /&gt; width: 100%;&lt;br /&gt; overflow: hidden;&lt;br /&gt; position: absolute;&lt;br /&gt; left: 0;&lt;br /&gt; top: 0;&lt;br /&gt; margin: 0;&lt;br /&gt; padding: 0;&lt;br /&gt;}&lt;/pre&gt;
&lt;a name=&quot;Example_Widget&quot; id=&quot;Example_Widget&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt; Example Widget &lt;/span&gt;&lt;/h2&gt;
&lt;pre class=&quot;html4strict&quot; style=&quot;font-family:monospace;&quot;&gt;&lt;span style=&quot;color: #00bbdd;&quot;&gt;&amp;lt;!DOCTYPE html PUBLIC &amp;quot;-//W3C//DTD XHTML 1.0 Transitional//EN&amp;quot;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #00bbdd;&quot;&gt;&amp;quot;http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd&amp;quot;&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;lt;&lt;a href=&quot;http://december.com/html/4/element/html.html&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;html&lt;/span&gt;&lt;/a&gt; xmlns&lt;span style=&quot;color: #66cc66;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;http://www.w3.org/1999/xhtml&amp;quot;&lt;/span&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt; &lt;span style=&quot;color: #009900;&quot;&gt;&amp;lt;&lt;a href=&quot;http://december.com/html/4/element/head.html&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;head&lt;/span&gt;&lt;/a&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;    &lt;span style=&quot;color: #009900;&quot;&gt;&amp;lt;&lt;a href=&quot;http://december.com/html/4/element/title.html&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;title&lt;/span&gt;&lt;/a&gt;&amp;gt;&lt;/span&gt;FS sample&lt;span style=&quot;color: #009900;&quot;&gt;&amp;lt;&lt;span style=&quot;color: #66cc66;&quot;&gt;/&lt;/span&gt;&lt;a href=&quot;http://december.com/html/4/element/title.html&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;title&lt;/span&gt;&lt;/a&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;    &lt;span style=&quot;color: #009900;&quot;&gt;&amp;lt;&lt;a href=&quot;http://december.com/html/4/element/meta.html&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;meta&lt;/span&gt;&lt;/a&gt; &lt;span style=&quot;color: #000066;&quot;&gt;http-equiv&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;Content-Type&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #000066;&quot;&gt;content&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;text/html; charset=UTF-8&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;/&lt;/span&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;    &lt;span style=&quot;color: #009900;&quot;&gt;&amp;lt;&lt;a href=&quot;http://december.com/html/4/element/link.html&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;link&lt;/span&gt;&lt;/a&gt; &lt;span style=&quot;color: #000066;&quot;&gt;rel&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;stylesheet&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #000066;&quot;&gt;href&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;style.css&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #000066;&quot;&gt;type&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;text/css&amp;quot;&lt;/span&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;    &lt;span style=&quot;color: #009900;&quot;&gt;&amp;lt;&lt;a href=&quot;http://december.com/html/4/element/style.html&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;style&lt;/span&gt;&lt;/a&gt;&amp;gt;&lt;/span&gt;			&lt;br /&gt;	body{&lt;br /&gt;           width:100%;&lt;br /&gt;	   height: 100%;&lt;br /&gt;	   background-color:#f3f3d1;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;	   /*set this to get rid of the small horizontal movement*/&lt;br /&gt;	   margin: 0;&lt;br /&gt;	   padding: 0;&lt;br /&gt;	}&lt;br /&gt;&amp;nbsp;&lt;br /&gt;	/*absolute positioning is needed to cover full screen*/&lt;br /&gt;	#fsWrapper{&lt;br /&gt;	   width: 100%;&lt;br /&gt; 	   overflow: hidden;&lt;br /&gt; 	   position: absolute;&lt;br /&gt;	   left: 0;&lt;br /&gt;	   top: 0;&lt;br /&gt;	   margin: 0;&lt;br /&gt;	   padding: 0;&lt;br /&gt;	}			&lt;br /&gt;     &lt;span style=&quot;color: #009900;&quot;&gt;&amp;lt;&lt;span style=&quot;color: #66cc66;&quot;&gt;/&lt;/span&gt;&lt;a href=&quot;http://december.com/html/4/element/style.html&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;style&lt;/span&gt;&lt;/a&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;  &lt;span style=&quot;color: #009900;&quot;&gt;&amp;lt;&lt;span style=&quot;color: #66cc66;&quot;&gt;/&lt;/span&gt;&lt;a href=&quot;http://december.com/html/4/element/head.html&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;head&lt;/span&gt;&lt;/a&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;  &lt;span style=&quot;color: #009900;&quot;&gt;&amp;lt;&lt;a href=&quot;http://december.com/html/4/element/body.html&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;body&lt;/span&gt;&lt;/a&gt;&amp;gt;&lt;/span&gt;			&lt;br /&gt;      &lt;span style=&quot;color: #009900;&quot;&gt;&amp;lt;&lt;a href=&quot;http://december.com/html/4/element/div.html&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;div&lt;/span&gt;&lt;/a&gt; &lt;span style=&quot;color: #000066;&quot;&gt;id&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;fsWrapper&amp;quot;&lt;/span&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;           &lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;&amp;lt;!-- your widget content --&amp;gt;&lt;/span&gt;	&lt;br /&gt;      &lt;span style=&quot;color: #009900;&quot;&gt;&amp;lt;&lt;span style=&quot;color: #66cc66;&quot;&gt;/&lt;/span&gt;&lt;a href=&quot;http://december.com/html/4/element/div.html&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;div&lt;/span&gt;&lt;/a&gt;&amp;gt;&lt;/span&gt;		 &lt;br /&gt;  &lt;span style=&quot;color: #009900;&quot;&gt;&amp;lt;&lt;span style=&quot;color: #66cc66;&quot;&gt;/&lt;/span&gt;&lt;a href=&quot;http://december.com/html/4/element/body.html&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;body&lt;/span&gt;&lt;/a&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;lt;&lt;span style=&quot;color: #66cc66;&quot;&gt;/&lt;/span&gt;&lt;a href=&quot;http://december.com/html/4/element/html.html&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;html&lt;/span&gt;&lt;/a&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;
</description>
			<pubDate>Wed, 18 Nov 2009 01:54:34 GMT</pubDate>			<dc:creator>Thiagobrunoms</dc:creator>			<comments>http://wiki.forum.nokia.com/index.php/Talk:How_to_make_your_widget_to_stretch_to_full_screen</comments>		</item>
		<item>
			<title>Zoom and Rotate Gestures in FlashLite for touch-enabled devices</title>
			<link>http://wiki.forum.nokia.com/index.php/Zoom_and_Rotate_Gestures_in_FlashLite_for_touch-enabled_devices</link>
			<description>&lt;p&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;table id=&quot;toc&quot; class=&quot;toc&quot; summary=&quot;Contents&quot;&gt;&lt;tr&gt;&lt;td&gt;&lt;div id=&quot;toctitle&quot;&gt;&lt;h2&gt;Contents&lt;/h2&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li class=&quot;toclevel-1&quot;&gt;&lt;a href=&quot;#Introduction&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;1&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Introduction&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-1&quot;&gt;&lt;a href=&quot;#Core_concept&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;2&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Core concept&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-1&quot;&gt;&lt;a href=&quot;#Source_Code&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;3&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Source Code&lt;/span&gt;&lt;/a&gt;
&lt;ul&gt;
&lt;li class=&quot;toclevel-2&quot;&gt;&lt;a href=&quot;#Create_Zoom_Movie&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;3.1&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Create Zoom Movie&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-2&quot;&gt;&lt;a href=&quot;#Define_the_reference_circle&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;3.2&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Define the reference circle&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-2&quot;&gt;&lt;a href=&quot;#Define_the_Spanning_Constraints&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;3.3&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Define the Spanning Constraints&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-2&quot;&gt;&lt;a href=&quot;#Define_the_Movieclip_Dragger&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;3.4&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Define the Movieclip Dragger&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-2&quot;&gt;&lt;a href=&quot;#Zoom_Logic_Implementation&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;3.5&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Zoom Logic Implementation&lt;/span&gt;&lt;/a&gt;
&lt;ul&gt;
&lt;li class=&quot;toclevel-3&quot;&gt;&lt;a href=&quot;#Check_if_the_user_is_dragging_through_the_reference_circle&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;3.5.1&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Check if the user is dragging through the reference circle&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-3&quot;&gt;&lt;a href=&quot;#Check_if_it_is_Zoom-out_or_Zoom-in_gesture&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;3.5.2&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Check if it is Zoom-out or Zoom-in gesture&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-3&quot;&gt;&lt;a href=&quot;#Calculate_the_zoom_factor_and_resize_the_image_accordingly&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;3.5.3&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Calculate the zoom factor and resize the image accordingly&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li class=&quot;toclevel-2&quot;&gt;&lt;a href=&quot;#Rotate_and_Spanning_Gesture&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;3.6&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Rotate and Spanning Gesture&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li class=&quot;toclevel-1&quot;&gt;&lt;a href=&quot;#Download_source_code&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;4&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Download source code&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;script type=&quot;text/javascript&quot;&gt; if (window.showTocToggle) { var tocShowText = &quot;show&quot;; var tocHideText = &quot;hide&quot;; showTocToggle(); } &lt;/script&gt;
&lt;a name=&quot;Introduction&quot; id=&quot;Introduction&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;Introduction&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;Flash Lite technology is supported across all Nokia platforms and is widely integrated with our mobile WebKit browser. The S60 5th Edition platform comes up with the exciting touch UI concept. S60 5th Edition with touch UI offers a promising future for the mobile developers. It has opened new doors to developers not only to survive but also to dominate market with touch UI-enabled applications.
&lt;/p&gt;&lt;p&gt;Till now, we have been using the basic touch gestures in Flash Lite for nokia devices. The basic gestures are vertical and horizontal gestures.
&lt;/p&gt;&lt;p&gt;The following article will explain how to implement the interesting zoom, rotate and panning gestures on touch enabled devices like Nokia 5800 XpressMusic using Flash Lite.
&lt;/p&gt;
&lt;a name=&quot;Core_concept&quot; id=&quot;Core_concept&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;Core concept&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;The traditional zoom gestures are normally implemented for mutli-touch screens. Multi-touch (e.g. Microsoft Surface) consists of a touch screen (screen, table, wall, etc.) or touchpad, as well as software that recognizes multiple simultaneous touch points, as opposed to the standard touch-screen (e.g. ATM), which recognizes only one touch point. In case of those multi-touch screens, the zoom gesture is assumed if we drag the fingers in opposite directions. If the fingers are dragged toward each other, it is considered as Zoom out gesture and in case the fingers are dragged away from each other, it is considered as Zoom in gesture.
&lt;/p&gt;&lt;p&gt;To define the counter zoom gesture in case of single touch screen, we need to assume a fixed reference point. The fixed reference point can be the center of the image. In case the user drags the finger away from the fixed reference point, it will be considered as Zoom In gesture and in case the user drags the finger towards the fixed reference point, it will be considered as Zoom Out gesture. Depending upon the gesture, the image will be resized at the center and aligned accordingly.
&lt;/p&gt;&lt;p&gt;In order to check if the gesture is towards/away from the reference point, we need to check, if the line formed by the start and end points coincides with the reference point. As the probability of the line crossing a single point is less, we will assume a fixed reference area that is, circle.  We will check if the line formed by the start and end point intersects the reference circle. In case the line intersects the circle, it will be considered as Zoom gesture and rotate gesture otherwise.
&lt;/p&gt;
&lt;a name=&quot;Source_Code&quot; id=&quot;Source_Code&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;Source Code&lt;/span&gt;&lt;/h2&gt;
&lt;a name=&quot;Create_Zoom_Movie&quot; id=&quot;Create_Zoom_Movie&quot;&gt;&lt;/a&gt;&lt;h3&gt; &lt;span class=&quot;mw-headline&quot;&gt;Create Zoom Movie&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;Create a base movieclip for holding the image. Add the graphics of the image inside the movieclip. This is the movieclip which is able to detect and react to zoom and rotate gesture.
&lt;/p&gt;&lt;p&gt;Make sure that the registration point of the above movieclip is center. 
&lt;/p&gt;&lt;p&gt;Add the following code on the above created movieclip and name it as ‘mcImage’.
&lt;/p&gt;
&lt;pre class=&quot;actionscript&quot; style=&quot;font-family:monospace;&quot;&gt;&lt;span style=&quot;color: #0066CC;&quot;&gt;onClipEvent&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;mouseDown&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;	&lt;span style=&quot;color: #b1b100;&quot;&gt;if&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #0066CC;&quot;&gt;_parent&lt;/span&gt;.&lt;span style=&quot;color: #006600;&quot;&gt;bZoomRotateMode&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;br /&gt;	&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;		&lt;span style=&quot;color: #b1b100;&quot;&gt;if&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #0066CC;&quot;&gt;this&lt;/span&gt;.&lt;span style=&quot;color: #006600;&quot;&gt;bRollingOver&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;br /&gt;		&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;			&lt;span style=&quot;color: #0066CC;&quot;&gt;this&lt;/span&gt;.&lt;span style=&quot;color: #006600;&quot;&gt;bDragging&lt;/span&gt; = &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;true&lt;/span&gt;;&lt;br /&gt;			&lt;span style=&quot;color: #0066CC;&quot;&gt;this&lt;/span&gt;.&lt;span style=&quot;color: #006600;&quot;&gt;nStartX&lt;/span&gt; = &lt;span style=&quot;color: #0066CC;&quot;&gt;_parent&lt;/span&gt;.&lt;span style=&quot;color: #0066CC;&quot;&gt;_xmouse&lt;/span&gt;;&lt;br /&gt;			&lt;span style=&quot;color: #0066CC;&quot;&gt;this&lt;/span&gt;.&lt;span style=&quot;color: #006600;&quot;&gt;nStartY&lt;/span&gt; = &lt;span style=&quot;color: #0066CC;&quot;&gt;_parent&lt;/span&gt;.&lt;span style=&quot;color: #0066CC;&quot;&gt;_ymouse&lt;/span&gt;;&lt;br /&gt;			nAngleOnMousePress = &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;180 &lt;span style=&quot;color: #66cc66;&quot;&gt;*&lt;/span&gt; &lt;span style=&quot;color: #0066CC;&quot;&gt;Math&lt;/span&gt;.&lt;span style=&quot;color: #0066CC;&quot;&gt;atan2&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #0066CC;&quot;&gt;_root&lt;/span&gt;.&lt;span style=&quot;color: #0066CC;&quot;&gt;_ymouse&lt;/span&gt; - &lt;span style=&quot;color: #0066CC;&quot;&gt;this&lt;/span&gt;.&lt;span style=&quot;color: #0066CC;&quot;&gt;_y&lt;/span&gt;, &lt;span style=&quot;color: #0066CC;&quot;&gt;_root&lt;/span&gt;.&lt;span style=&quot;color: #0066CC;&quot;&gt;_xmouse&lt;/span&gt; - &lt;span style=&quot;color: #0066CC;&quot;&gt;this&lt;/span&gt;.&lt;span style=&quot;color: #0066CC;&quot;&gt;_x&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;/&lt;/span&gt; &lt;span style=&quot;color: #0066CC;&quot;&gt;Math&lt;/span&gt;.&lt;span style=&quot;color: #0066CC;&quot;&gt;PI&lt;/span&gt; + &lt;span style=&quot;color: #cc66cc;&quot;&gt;90&lt;/span&gt;;&lt;br /&gt;		&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;	&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #0066CC;&quot;&gt;onClipEvent&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;mouseMove&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;	&lt;span style=&quot;color: #b1b100;&quot;&gt;if&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #0066CC;&quot;&gt;_parent&lt;/span&gt;.&lt;span style=&quot;color: #006600;&quot;&gt;bZoomRotateMode&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;br /&gt;	&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;		&lt;span style=&quot;color: #b1b100;&quot;&gt;if&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #0066CC;&quot;&gt;this&lt;/span&gt;.&lt;span style=&quot;color: #006600;&quot;&gt;bRollingOver&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;amp;&amp;amp;&lt;/span&gt; &lt;span style=&quot;color: #0066CC;&quot;&gt;this&lt;/span&gt;.&lt;span style=&quot;color: #006600;&quot;&gt;bDragging&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;br /&gt;		&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;			&lt;span style=&quot;color: #0066CC;&quot;&gt;_parent&lt;/span&gt;.&lt;span style=&quot;color: #006600;&quot;&gt;fnCheckIfToZoom&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #0066CC;&quot;&gt;this&lt;/span&gt;.&lt;span style=&quot;color: #006600;&quot;&gt;nStartX&lt;/span&gt;,&lt;span style=&quot;color: #0066CC;&quot;&gt;this&lt;/span&gt;.&lt;span style=&quot;color: #006600;&quot;&gt;nStartY&lt;/span&gt;,&lt;span style=&quot;color: #0066CC;&quot;&gt;_parent&lt;/span&gt;.&lt;span style=&quot;color: #0066CC;&quot;&gt;_xmouse&lt;/span&gt;,&lt;span style=&quot;color: #0066CC;&quot;&gt;_parent&lt;/span&gt;.&lt;span style=&quot;color: #0066CC;&quot;&gt;_ymouse&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;;&lt;br /&gt;		&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;	&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #0066CC;&quot;&gt;onClipEvent&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;mouseUp&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;	&lt;span style=&quot;color: #b1b100;&quot;&gt;if&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #0066CC;&quot;&gt;_parent&lt;/span&gt;.&lt;span style=&quot;color: #006600;&quot;&gt;bZoomRotateMode&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;br /&gt;	&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;		&lt;span style=&quot;color: #b1b100;&quot;&gt;if&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #0066CC;&quot;&gt;this&lt;/span&gt;.&lt;span style=&quot;color: #006600;&quot;&gt;bRollingOver&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;br /&gt;		&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;			&lt;span style=&quot;color: #0066CC;&quot;&gt;this&lt;/span&gt;.&lt;span style=&quot;color: #006600;&quot;&gt;bDragging&lt;/span&gt; = &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;false&lt;/span&gt;;&lt;br /&gt;			nInitialWidth = mcLoadedImage.&lt;span style=&quot;color: #0066CC;&quot;&gt;_width&lt;/span&gt;;&lt;br /&gt;			nInitialHeight = mcLoadedImage.&lt;span style=&quot;color: #0066CC;&quot;&gt;_height&lt;/span&gt;;&lt;br /&gt;			nInitialWidth = mcLoadedImage.&lt;span style=&quot;color: #0066CC;&quot;&gt;_width&lt;/span&gt;;&lt;br /&gt;			nInitialHeight = mcLoadedImage.&lt;span style=&quot;color: #0066CC;&quot;&gt;_height&lt;/span&gt;;&lt;br /&gt;			nInitialAngle = &lt;span style=&quot;color: #0066CC;&quot;&gt;this&lt;/span&gt;.&lt;span style=&quot;color: #0066CC;&quot;&gt;_rotation&lt;/span&gt;;&lt;br /&gt;		&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;	&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #0066CC;&quot;&gt;onClipEvent&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #0066CC;&quot;&gt;load&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;	nInitialOnloadX = &lt;span style=&quot;color: #0066CC;&quot;&gt;this&lt;/span&gt;.&lt;span style=&quot;color: #0066CC;&quot;&gt;_x&lt;/span&gt;;&lt;br /&gt;	nInitialOnloadY = &lt;span style=&quot;color: #0066CC;&quot;&gt;this&lt;/span&gt;.&lt;span style=&quot;color: #0066CC;&quot;&gt;_y&lt;/span&gt;;&lt;br /&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;/pre&gt;
&lt;a name=&quot;Define_the_reference_circle&quot; id=&quot;Define_the_reference_circle&quot;&gt;&lt;/a&gt;&lt;h3&gt; &lt;span class=&quot;mw-headline&quot;&gt;Define the reference circle&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;As per the logic explained above, we need to define the area for the reference circle. In case the user intersects with this circle, it will be considered as zoom gesture. Cerate a reference circle of suitable width and height inside the above image movieclip and name it as ‘mcRestrict’.
&lt;/p&gt;&lt;p&gt;Add the following code on the first layer inside the zoom movieclip for storing the initial with and height of the image.
&lt;/p&gt;
&lt;pre class=&quot;actionscript&quot; style=&quot;font-family:monospace;&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;var&lt;/span&gt; nInitialWidth:&lt;span style=&quot;color: #0066CC;&quot;&gt;Number&lt;/span&gt; = mcLoadedImage.&lt;span style=&quot;color: #0066CC;&quot;&gt;_width&lt;/span&gt;;&lt;br /&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;var&lt;/span&gt; nInitialHeight:&lt;span style=&quot;color: #0066CC;&quot;&gt;Number&lt;/span&gt; = mcLoadedImage.&lt;span style=&quot;color: #0066CC;&quot;&gt;_height&lt;/span&gt;;&lt;br /&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;var&lt;/span&gt; nInitialWidthForXY:&lt;span style=&quot;color: #0066CC;&quot;&gt;Number&lt;/span&gt; = mcLoadedImage.&lt;span style=&quot;color: #0066CC;&quot;&gt;_width&lt;/span&gt;;&lt;br /&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;var&lt;/span&gt; nInitialHeightForXY:&lt;span style=&quot;color: #0066CC;&quot;&gt;Number&lt;/span&gt; = mcLoadedImage.&lt;span style=&quot;color: #0066CC;&quot;&gt;_height&lt;/span&gt;;&lt;br /&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;var&lt;/span&gt; nAspectRatio:&lt;span style=&quot;color: #0066CC;&quot;&gt;Number&lt;/span&gt; = nInitialWidth &lt;span style=&quot;color: #66cc66;&quot;&gt;/&lt;/span&gt; nInitialHeight;&lt;br /&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;var&lt;/span&gt; nInitialAngle:&lt;span style=&quot;color: #0066CC;&quot;&gt;Number&lt;/span&gt; = &lt;span style=&quot;color: #0066CC;&quot;&gt;this&lt;/span&gt;.&lt;span style=&quot;color: #0066CC;&quot;&gt;_rotation&lt;/span&gt;;&lt;/pre&gt;
&lt;a name=&quot;Define_the_Spanning_Constraints&quot; id=&quot;Define_the_Spanning_Constraints&quot;&gt;&lt;/a&gt;&lt;h3&gt; &lt;span class=&quot;mw-headline&quot;&gt;Define the Spanning Constraints&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;As the main image is zoomed, it will increase in width and height and will not accommodate in the actual mobile space, we need to provide the spanning for the image. To define the spanning constraints create a movieclip. When the image will start spanning, it will always span within this movieclip boundary. Name the movieclip as ‘mcSpanningRestrictions’. This movieclip will be on the same timeline as that of zoom image ‘mcImage’.
&lt;/p&gt;
&lt;a name=&quot;Define_the_Movieclip_Dragger&quot; id=&quot;Define_the_Movieclip_Dragger&quot;&gt;&lt;/a&gt;&lt;h3&gt; &lt;span class=&quot;mw-headline&quot;&gt;Define the Movieclip Dragger&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;Inside the main image movieclip and above the reference circle layer create a button of same width and height as that of the image and name it as ‘mcLoadedImage’. This button will be used to add the rollOver and rollOut listener for the image and also to define the image dragging in case of spanning.
&lt;/p&gt;&lt;p&gt;Add the following code on the button.
&lt;/p&gt;
&lt;pre class=&quot;actionscript&quot; style=&quot;font-family:monospace;&quot;&gt;&lt;span style=&quot;color: #0066CC;&quot;&gt;on&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;rollOver&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;	&lt;span style=&quot;color: #0066CC;&quot;&gt;this&lt;/span&gt;.&lt;span style=&quot;color: #006600;&quot;&gt;bRollingOver&lt;/span&gt; = &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;true&lt;/span&gt;;&lt;br /&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #0066CC;&quot;&gt;on&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;rollOut&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;	&lt;span style=&quot;color: #0066CC;&quot;&gt;this&lt;/span&gt;.&lt;span style=&quot;color: #006600;&quot;&gt;bRollingOver&lt;/span&gt; = &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;false&lt;/span&gt;;&lt;br /&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #0066CC;&quot;&gt;on&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;press&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;	&lt;span style=&quot;color: #b1b100;&quot;&gt;if&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #0066CC;&quot;&gt;_parent&lt;/span&gt;.&lt;span style=&quot;color: #006600;&quot;&gt;bZoomRotateMode&lt;/span&gt; == &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;false&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;br /&gt;	&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;		&lt;span style=&quot;color: #b1b100;&quot;&gt;if&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #0066CC;&quot;&gt;this&lt;/span&gt;.&lt;span style=&quot;color: #0066CC;&quot;&gt;_width&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;gt;&lt;/span&gt; &lt;span style=&quot;color: #0066CC;&quot;&gt;_parent&lt;/span&gt;.&lt;span style=&quot;color: #006600;&quot;&gt;mcSpanningRestrictions&lt;/span&gt;.&lt;span style=&quot;color: #0066CC;&quot;&gt;_width&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;||&lt;/span&gt; &lt;span style=&quot;color: #0066CC;&quot;&gt;this&lt;/span&gt;.&lt;span style=&quot;color: #0066CC;&quot;&gt;_height&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;gt;&lt;/span&gt; &lt;span style=&quot;color: #0066CC;&quot;&gt;_parent&lt;/span&gt;.&lt;span style=&quot;color: #006600;&quot;&gt;mcSpanningRestrictions&lt;/span&gt;.&lt;span style=&quot;color: #0066CC;&quot;&gt;_height&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;br /&gt;		&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;			&lt;span style=&quot;color: #0066CC;&quot;&gt;this&lt;/span&gt;.&lt;span style=&quot;color: #0066CC;&quot;&gt;startDrag&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;false&lt;/span&gt;,&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #0066CC;&quot;&gt;_parent&lt;/span&gt;.&lt;span style=&quot;color: #006600;&quot;&gt;mcSpanningRestrictions&lt;/span&gt;.&lt;span style=&quot;color: #0066CC;&quot;&gt;_x&lt;/span&gt; - &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #0066CC;&quot;&gt;_parent&lt;/span&gt;.&lt;span style=&quot;color: #006600;&quot;&gt;mcSpanningRestrictions&lt;/span&gt;.&lt;span style=&quot;color: #0066CC;&quot;&gt;_width&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;/&lt;/span&gt; 2 - &lt;span style=&quot;color: #0066CC;&quot;&gt;this&lt;/span&gt;.&lt;span style=&quot;color: #0066CC;&quot;&gt;_width&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;/&lt;/span&gt; 2&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;,&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #0066CC;&quot;&gt;_parent&lt;/span&gt;.&lt;span style=&quot;color: #006600;&quot;&gt;mcSpanningRestrictions&lt;/span&gt;.&lt;span style=&quot;color: #0066CC;&quot;&gt;_y&lt;/span&gt; - &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #0066CC;&quot;&gt;_parent&lt;/span&gt;.&lt;span style=&quot;color: #006600;&quot;&gt;mcSpanningRestrictions&lt;/span&gt;.&lt;span style=&quot;color: #0066CC;&quot;&gt;_height&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;/&lt;/span&gt; 2 - &lt;span style=&quot;color: #0066CC;&quot;&gt;this&lt;/span&gt;.&lt;span style=&quot;color: #0066CC;&quot;&gt;_height&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;/&lt;/span&gt; 2&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;,&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #0066CC;&quot;&gt;_parent&lt;/span&gt;.&lt;span style=&quot;color: #006600;&quot;&gt;mcSpanningRestrictions&lt;/span&gt;.&lt;span style=&quot;color: #0066CC;&quot;&gt;_x&lt;/span&gt; + &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #0066CC;&quot;&gt;_parent&lt;/span&gt;.&lt;span style=&quot;color: #006600;&quot;&gt;mcSpanningRestrictions&lt;/span&gt;.&lt;span style=&quot;color: #0066CC;&quot;&gt;_width&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;/&lt;/span&gt; 2 - &lt;span style=&quot;color: #0066CC;&quot;&gt;this&lt;/span&gt;.&lt;span style=&quot;color: #0066CC;&quot;&gt;_width&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;/&lt;/span&gt; 2&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;,&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #0066CC;&quot;&gt;_parent&lt;/span&gt;.&lt;span style=&quot;color: #006600;&quot;&gt;mcSpanningRestrictions&lt;/span&gt;.&lt;span style=&quot;color: #0066CC;&quot;&gt;_y&lt;/span&gt; + &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #0066CC;&quot;&gt;_parent&lt;/span&gt;.&lt;span style=&quot;color: #006600;&quot;&gt;mcSpanningRestrictions&lt;/span&gt;.&lt;span style=&quot;color: #0066CC;&quot;&gt;_height&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;/&lt;/span&gt; 2 - &lt;span style=&quot;color: #0066CC;&quot;&gt;this&lt;/span&gt;.&lt;span style=&quot;color: #0066CC;&quot;&gt;_height&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;/&lt;/span&gt; 2&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;;&lt;br /&gt;		&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;	&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #0066CC;&quot;&gt;on&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;release, releaseOutside&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;	&lt;span style=&quot;color: #0066CC;&quot;&gt;this&lt;/span&gt;.&lt;span style=&quot;color: #0066CC;&quot;&gt;stopDrag&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;;&lt;br /&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;/pre&gt;
&lt;p&gt;The above code starts the image dragging in case the current mode is ‘Spanning’. The dragging is confined with-in the boundary of the above ‘mcSpanningRestrictions’ movieclip.
&lt;/p&gt;
&lt;a name=&quot;Zoom_Logic_Implementation&quot; id=&quot;Zoom_Logic_Implementation&quot;&gt;&lt;/a&gt;&lt;h3&gt; &lt;span class=&quot;mw-headline&quot;&gt;Zoom Logic Implementation&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;The main image movieclip has a Mouse-move listener. This listener checks the current mode, if the current mode is that of Zoom, it calls the main timeline function ‘fnCheckIfToZoom’. This is the core function which checks if the gesture is zoom gesture and the amount by which the image should be zoomed. The function is called with the following parameters passed:
&lt;/p&gt;
&lt;ul&gt;&lt;li&gt; X-Mouse location when the user press mouse on the image to zoom
&lt;/li&gt;&lt;li&gt; Y-Mouse location when the user press mouse on the image to zoom
&lt;/li&gt;&lt;li&gt; Current X-Mouse location
&lt;/li&gt;&lt;li&gt; Current Y-Mouse location
&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;&lt;br /&gt;
Create the 'Funtions' layer on the main timeline and add the following code to the layer.
&lt;/p&gt;
&lt;pre class=&quot;actionscript&quot; style=&quot;font-family:monospace;&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;var&lt;/span&gt; bZoomRotateMode:&lt;span style=&quot;color: #0066CC;&quot;&gt;Boolean&lt;/span&gt; = &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;true&lt;/span&gt;;&lt;br /&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;var&lt;/span&gt; nMinimumWidth:&lt;span style=&quot;color: #0066CC;&quot;&gt;Number&lt;/span&gt; = &lt;span style=&quot;color: #cc66cc;&quot;&gt;75&lt;/span&gt;;&lt;br /&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;var&lt;/span&gt; nMaximumWidth:&lt;span style=&quot;color: #0066CC;&quot;&gt;Number&lt;/span&gt; = &lt;span style=&quot;color: #cc66cc;&quot;&gt;450&lt;/span&gt;;&lt;br /&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;function&lt;/span&gt; fnFindShortestDistance &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;point_x:&lt;span style=&quot;color: #0066CC;&quot;&gt;Number&lt;/span&gt;, point_y:&lt;span style=&quot;color: #0066CC;&quot;&gt;Number&lt;/span&gt;, line_x1:&lt;span style=&quot;color: #0066CC;&quot;&gt;Number&lt;/span&gt;, line_y1:&lt;span style=&quot;color: #0066CC;&quot;&gt;Number&lt;/span&gt;, line_x2:&lt;span style=&quot;color: #0066CC;&quot;&gt;Number&lt;/span&gt;, line_y2:&lt;span style=&quot;color: #0066CC;&quot;&gt;Number&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;:&lt;span style=&quot;color: #0066CC;&quot;&gt;Number&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;	&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;var&lt;/span&gt; A:&lt;span style=&quot;color: #0066CC;&quot;&gt;Number&lt;/span&gt; = point_x - line_x1;&lt;br /&gt;	&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;var&lt;/span&gt; B:&lt;span style=&quot;color: #0066CC;&quot;&gt;Number&lt;/span&gt; = point_y - line_y1;&lt;br /&gt;	&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;var&lt;/span&gt; C:&lt;span style=&quot;color: #0066CC;&quot;&gt;Number&lt;/span&gt; = line_x2 - line_x1;&lt;br /&gt;	&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;var&lt;/span&gt; D:&lt;span style=&quot;color: #0066CC;&quot;&gt;Number&lt;/span&gt; = line_y2 - line_y1;&lt;br /&gt;	&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;var&lt;/span&gt; nDiastance = &lt;span style=&quot;color: #0066CC;&quot;&gt;Math&lt;/span&gt;.&lt;span style=&quot;color: #0066CC;&quot;&gt;abs&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;A &lt;span style=&quot;color: #66cc66;&quot;&gt;*&lt;/span&gt; D&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt; - &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;C &lt;span style=&quot;color: #66cc66;&quot;&gt;*&lt;/span&gt; B&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;/&lt;/span&gt; &lt;span style=&quot;color: #0066CC;&quot;&gt;Math&lt;/span&gt;.&lt;span style=&quot;color: #0066CC;&quot;&gt;sqrt&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;C &lt;span style=&quot;color: #66cc66;&quot;&gt;*&lt;/span&gt; C&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt; + &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;D &lt;span style=&quot;color: #66cc66;&quot;&gt;*&lt;/span&gt; D&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;;&lt;br /&gt;	&lt;span style=&quot;color: #b1b100;&quot;&gt;return&lt;/span&gt; nDiastance;&lt;br /&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;function&lt;/span&gt; fnFindDistanceInPoints &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;oPoint_1, oPoint_2&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;:&lt;span style=&quot;color: #0066CC;&quot;&gt;Number&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;	&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;var&lt;/span&gt; nLineLength:&lt;span style=&quot;color: #0066CC;&quot;&gt;Number&lt;/span&gt; = &lt;span style=&quot;color: #0066CC;&quot;&gt;Math&lt;/span&gt;.&lt;span style=&quot;color: #0066CC;&quot;&gt;sqrt&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #0066CC;&quot;&gt;Math&lt;/span&gt;.&lt;span style=&quot;color: #0066CC;&quot;&gt;pow&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;oPoint_1.&lt;span style=&quot;color: #006600;&quot;&gt;x&lt;/span&gt; - oPoint_2.&lt;span style=&quot;color: #006600;&quot;&gt;x&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;, 2&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt; + &lt;span style=&quot;color: #0066CC;&quot;&gt;Math&lt;/span&gt;.&lt;span style=&quot;color: #0066CC;&quot;&gt;pow&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;oPoint_1.&lt;span style=&quot;color: #006600;&quot;&gt;y&lt;/span&gt; - oPoint_2.&lt;span style=&quot;color: #006600;&quot;&gt;y&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;, 2&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;;&lt;br /&gt;	&lt;span style=&quot;color: #b1b100;&quot;&gt;return&lt;/span&gt; nLineLength;&lt;br /&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;function&lt;/span&gt; fnCheckIfToZoom &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;nStartX, nStartY, nEndX, nEndY&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;	&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;var&lt;/span&gt; nSlopeOfLine:&lt;span style=&quot;color: #0066CC;&quot;&gt;Number&lt;/span&gt; = &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;nEndY - nStartY&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;/&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;nEndX - nStartX&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;;&lt;br /&gt;	&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;var&lt;/span&gt; nPreviousY:&lt;span style=&quot;color: #0066CC;&quot;&gt;Number&lt;/span&gt; = &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;nSlopeOfLine&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;*&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;nStartX - 800 - nEndX&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt; + nEndY;&lt;br /&gt;	&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;var&lt;/span&gt; nNextY:&lt;span style=&quot;color: #0066CC;&quot;&gt;Number&lt;/span&gt; = &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;nSlopeOfLine&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;*&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;nEndX + 800 - nEndX&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt; + nEndY;&lt;br /&gt;	&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;var&lt;/span&gt; myPoint:&lt;span style=&quot;color: #0066CC;&quot;&gt;Object&lt;/span&gt; = &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt;x:mcImage.&lt;span style=&quot;color: #006600;&quot;&gt;mcRestrict&lt;/span&gt;.&lt;span style=&quot;color: #0066CC;&quot;&gt;_x&lt;/span&gt;, y:mcImage.&lt;span style=&quot;color: #006600;&quot;&gt;mcRestrict&lt;/span&gt;.&lt;span style=&quot;color: #0066CC;&quot;&gt;_y&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt;;&lt;br /&gt;	mcImage.&lt;span style=&quot;color: #0066CC;&quot;&gt;localToGlobal&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;myPoint&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;;&lt;br /&gt;	&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;var&lt;/span&gt; nCirCentX:&lt;span style=&quot;color: #0066CC;&quot;&gt;Number&lt;/span&gt; = myPoint.&lt;span style=&quot;color: #006600;&quot;&gt;x&lt;/span&gt;;&lt;br /&gt;	&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;var&lt;/span&gt; nCirCentY:&lt;span style=&quot;color: #0066CC;&quot;&gt;Number&lt;/span&gt; = myPoint.&lt;span style=&quot;color: #006600;&quot;&gt;y&lt;/span&gt;;&lt;br /&gt;	&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;var&lt;/span&gt; nShortestDistance:&lt;span style=&quot;color: #0066CC;&quot;&gt;Number&lt;/span&gt; = fnFindShortestDistance &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;nCirCentX, nCirCentY, nStartX, nStartY, nEndX, nEndY&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;;&lt;br /&gt;	&lt;span style=&quot;color: #b1b100;&quot;&gt;if&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;nShortestDistance &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;lt;&lt;/span&gt;= &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;mcImage.&lt;span style=&quot;color: #006600;&quot;&gt;mcRestrict&lt;/span&gt;.&lt;span style=&quot;color: #0066CC;&quot;&gt;_width&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;/&lt;/span&gt; 2&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;br /&gt;	&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;		&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;var&lt;/span&gt; oPoint_1:&lt;span style=&quot;color: #0066CC;&quot;&gt;Object&lt;/span&gt; = &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;new&lt;/span&gt; &lt;span style=&quot;color: #0066CC;&quot;&gt;Object&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;;&lt;br /&gt;		&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;var&lt;/span&gt; oPoint_2:&lt;span style=&quot;color: #0066CC;&quot;&gt;Object&lt;/span&gt; = &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;new&lt;/span&gt; &lt;span style=&quot;color: #0066CC;&quot;&gt;Object&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;;&lt;br /&gt;		oPoint_1.&lt;span style=&quot;color: #006600;&quot;&gt;x&lt;/span&gt; = nStartX;&lt;br /&gt;		oPoint_1.&lt;span style=&quot;color: #006600;&quot;&gt;y&lt;/span&gt; = nStartY;&lt;br /&gt;		oPoint_2.&lt;span style=&quot;color: #006600;&quot;&gt;x&lt;/span&gt; = nEndX;&lt;br /&gt;		oPoint_2.&lt;span style=&quot;color: #006600;&quot;&gt;y&lt;/span&gt; = nEndY;&lt;br /&gt;		&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;var&lt;/span&gt; nDisplacement:&lt;span style=&quot;color: #0066CC;&quot;&gt;Number&lt;/span&gt; = fnFindDistanceInPoints &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;oPoint_1, oPoint_2&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;;&lt;br /&gt;		&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;var&lt;/span&gt; sZoomDirection:&lt;span style=&quot;color: #0066CC;&quot;&gt;String&lt;/span&gt; = fnCheckQuadrant &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;nStartX, nStartY, nEndX, nEndY&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;;&lt;br /&gt;		&lt;span style=&quot;color: #b1b100;&quot;&gt;if&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;sZoomDirection == &lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;ZoomIn&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;br /&gt;		&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;			mcImage.&lt;span style=&quot;color: #006600;&quot;&gt;mcLoadedImage&lt;/span&gt;.&lt;span style=&quot;color: #0066CC;&quot;&gt;_width&lt;/span&gt; = mcImage.&lt;span style=&quot;color: #006600;&quot;&gt;nInitialWidth&lt;/span&gt; + nDisplacement;&lt;br /&gt;			&lt;span style=&quot;color: #b1b100;&quot;&gt;if&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;mcImage.&lt;span style=&quot;color: #006600;&quot;&gt;mcLoadedImage&lt;/span&gt;.&lt;span style=&quot;color: #0066CC;&quot;&gt;_width&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;gt;&lt;/span&gt; nMaximumWidth&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;br /&gt;			&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;				mcImage.&lt;span style=&quot;color: #006600;&quot;&gt;mcLoadedImage&lt;/span&gt;.&lt;span style=&quot;color: #0066CC;&quot;&gt;_width&lt;/span&gt; = nMaximumWidth;&lt;br /&gt;			&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;		&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;		&lt;span style=&quot;color: #b1b100;&quot;&gt;else&lt;/span&gt; &lt;span style=&quot;color: #b1b100;&quot;&gt;if&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;sZoomDirection == &lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;ZoomOut&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;br /&gt;		&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;			mcImage.&lt;span style=&quot;color: #006600;&quot;&gt;mcLoadedImage&lt;/span&gt;.&lt;span style=&quot;color: #0066CC;&quot;&gt;_width&lt;/span&gt; = mcImage.&lt;span style=&quot;color: #006600;&quot;&gt;nInitialWidth&lt;/span&gt; - nDisplacement;&lt;br /&gt;			&lt;span style=&quot;color: #b1b100;&quot;&gt;if&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;mcImage.&lt;span style=&quot;color: #006600;&quot;&gt;mcLoadedImage&lt;/span&gt;.&lt;span style=&quot;color: #0066CC;&quot;&gt;_width&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;lt;&lt;/span&gt; nMinimumWidth&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;br /&gt;			&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;				mcImage.&lt;span style=&quot;color: #006600;&quot;&gt;mcLoadedImage&lt;/span&gt;.&lt;span style=&quot;color: #0066CC;&quot;&gt;_width&lt;/span&gt; = nMinimumWidth;&lt;br /&gt;			&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;		&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;		mcImage.&lt;span style=&quot;color: #006600;&quot;&gt;mcLoadedImage&lt;/span&gt;.&lt;span style=&quot;color: #0066CC;&quot;&gt;_height&lt;/span&gt; = mcImage.&lt;span style=&quot;color: #006600;&quot;&gt;mcLoadedImage&lt;/span&gt;.&lt;span style=&quot;color: #0066CC;&quot;&gt;_width&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;/&lt;/span&gt; mcImage.&lt;span style=&quot;color: #006600;&quot;&gt;nAspectRatio&lt;/span&gt;;&lt;br /&gt;	&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;	&lt;span style=&quot;color: #b1b100;&quot;&gt;else&lt;/span&gt;&lt;br /&gt;	&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;		fnCheckIfToRotate &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;nEndX,nEndY&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;;&lt;br /&gt;	&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;	fnCheckIfToRotate &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;nEndX,nEndY&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;;&lt;br /&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;function&lt;/span&gt; fnCheckQuadrant &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;nStartX:&lt;span style=&quot;color: #0066CC;&quot;&gt;Number&lt;/span&gt;, nStartY:&lt;span style=&quot;color: #0066CC;&quot;&gt;Number&lt;/span&gt;, nEndX:&lt;span style=&quot;color: #0066CC;&quot;&gt;Number&lt;/span&gt;, nEndY:&lt;span style=&quot;color: #0066CC;&quot;&gt;Number&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;:&lt;span style=&quot;color: #0066CC;&quot;&gt;String&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;	&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;var&lt;/span&gt; oGlobalCoordinatesOfRestrict:&lt;span style=&quot;color: #0066CC;&quot;&gt;Object&lt;/span&gt; = &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt;x:mcImage.&lt;span style=&quot;color: #006600;&quot;&gt;mcRestrict&lt;/span&gt;.&lt;span style=&quot;color: #0066CC;&quot;&gt;_x&lt;/span&gt;, y:mcImage.&lt;span style=&quot;color: #006600;&quot;&gt;mcRestrict&lt;/span&gt;.&lt;span style=&quot;color: #0066CC;&quot;&gt;_y&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt;;&lt;br /&gt;	mcImage.&lt;span style=&quot;color: #0066CC;&quot;&gt;localToGlobal&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;oGlobalCoordinatesOfRestrict&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;;&lt;br /&gt;	&lt;span style=&quot;color: #b1b100;&quot;&gt;if&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;nStartX &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;gt;&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;oGlobalCoordinatesOfRestrict.&lt;span style=&quot;color: #006600;&quot;&gt;x&lt;/span&gt; - mcImage.&lt;span style=&quot;color: #006600;&quot;&gt;mcRestrict&lt;/span&gt;.&lt;span style=&quot;color: #0066CC;&quot;&gt;_width&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;/&lt;/span&gt; 2&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;amp;&amp;amp;&lt;/span&gt; nStartX &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;lt;&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;oGlobalCoordinatesOfRestrict.&lt;span style=&quot;color: #006600;&quot;&gt;x&lt;/span&gt; + mcImage.&lt;span style=&quot;color: #006600;&quot;&gt;mcRestrict&lt;/span&gt;.&lt;span style=&quot;color: #0066CC;&quot;&gt;_width&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;/&lt;/span&gt; 2&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;amp;&amp;amp;&lt;/span&gt; nStartY &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;lt;&lt;/span&gt; oGlobalCoordinatesOfRestrict.&lt;span style=&quot;color: #006600;&quot;&gt;y&lt;/span&gt; - mcImage.&lt;span style=&quot;color: #006600;&quot;&gt;mcRestrict&lt;/span&gt;.&lt;span style=&quot;color: #0066CC;&quot;&gt;_height&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;/&lt;/span&gt; &lt;span style=&quot;color: #cc66cc;&quot;&gt;2&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;br /&gt;	&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;		&lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;//This is Qudrant 1&lt;/span&gt;&lt;br /&gt;		&lt;span style=&quot;color: #b1b100;&quot;&gt;if&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;nEndY &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;lt;&lt;/span&gt; nStartY&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;br /&gt;		&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;			&lt;span style=&quot;color: #b1b100;&quot;&gt;return&lt;/span&gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;ZoomIn&amp;quot;&lt;/span&gt;;&lt;br /&gt;		&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;		&lt;span style=&quot;color: #b1b100;&quot;&gt;else&lt;/span&gt;&lt;br /&gt;		&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;			&lt;span style=&quot;color: #b1b100;&quot;&gt;return&lt;/span&gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;ZoomOut&amp;quot;&lt;/span&gt;;&lt;br /&gt;		&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;	&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;	&lt;span style=&quot;color: #b1b100;&quot;&gt;else&lt;/span&gt; &lt;span style=&quot;color: #b1b100;&quot;&gt;if&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;nStartX &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;gt;&lt;/span&gt;= &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;oGlobalCoordinatesOfRestrict.&lt;span style=&quot;color: #006600;&quot;&gt;x&lt;/span&gt; + mcImage.&lt;span style=&quot;color: #006600;&quot;&gt;mcRestrict&lt;/span&gt;.&lt;span style=&quot;color: #0066CC;&quot;&gt;_width&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;/&lt;/span&gt; 2&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;amp;&amp;amp;&lt;/span&gt; nStartY &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;lt;&lt;/span&gt;= &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;oGlobalCoordinatesOfRestrict.&lt;span style=&quot;color: #006600;&quot;&gt;y&lt;/span&gt; - mcImage.&lt;span style=&quot;color: #006600;&quot;&gt;mcRestrict&lt;/span&gt;.&lt;span style=&quot;color: #0066CC;&quot;&gt;_height&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;/&lt;/span&gt; &lt;span style=&quot;color: #cc66cc;&quot;&gt;2&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;br /&gt;	&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;		&lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;//This is Qudrant 2&lt;/span&gt;&lt;br /&gt;		&lt;span style=&quot;color: #b1b100;&quot;&gt;if&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;nEndY &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;lt;&lt;/span&gt; nStartY&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;br /&gt;		&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;			&lt;span style=&quot;color: #b1b100;&quot;&gt;return&lt;/span&gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;ZoomIn&amp;quot;&lt;/span&gt;;&lt;br /&gt;		&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;		&lt;span style=&quot;color: #b1b100;&quot;&gt;else&lt;/span&gt;&lt;br /&gt;		&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;			&lt;span style=&quot;color: #b1b100;&quot;&gt;return&lt;/span&gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;ZoomOut&amp;quot;&lt;/span&gt;;&lt;br /&gt;		&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;	&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;	&lt;span style=&quot;color: #b1b100;&quot;&gt;else&lt;/span&gt; &lt;span style=&quot;color: #b1b100;&quot;&gt;if&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;nStartX &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;gt;&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;oGlobalCoordinatesOfRestrict.&lt;span style=&quot;color: #006600;&quot;&gt;x&lt;/span&gt; + mcImage.&lt;span style=&quot;color: #006600;&quot;&gt;mcRestrict&lt;/span&gt;.&lt;span style=&quot;color: #0066CC;&quot;&gt;_width&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;/&lt;/span&gt; 2&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;amp;&amp;amp;&lt;/span&gt; nStartY &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;gt;&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;oGlobalCoordinatesOfRestrict.&lt;span style=&quot;color: #006600;&quot;&gt;y&lt;/span&gt; - mcImage.&lt;span style=&quot;color: #006600;&quot;&gt;mcRestrict&lt;/span&gt;.&lt;span style=&quot;color: #0066CC;&quot;&gt;_height&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;/&lt;/span&gt; 2&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;amp;&amp;amp;&lt;/span&gt; nStartY &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;lt;&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;oGlobalCoordinatesOfRestrict.&lt;span style=&quot;color: #006600;&quot;&gt;y&lt;/span&gt; + mcImage.&lt;span style=&quot;color: #006600;&quot;&gt;mcRestrict&lt;/span&gt;.&lt;span style=&quot;color: #0066CC;&quot;&gt;_height&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;/&lt;/span&gt; &lt;span style=&quot;color: #cc66cc;&quot;&gt;2&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;br /&gt;	&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;		&lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;//This is Qudrant 3&lt;/span&gt;&lt;br /&gt;		&lt;span style=&quot;color: #b1b100;&quot;&gt;if&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;nEndX &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;gt;&lt;/span&gt; nStartX&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;br /&gt;		&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;			&lt;span style=&quot;color: #b1b100;&quot;&gt;return&lt;/span&gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;ZoomIn&amp;quot;&lt;/span&gt;;&lt;br /&gt;		&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;		&lt;span style=&quot;color: #b1b100;&quot;&gt;else&lt;/span&gt;&lt;br /&gt;		&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;			&lt;span style=&quot;color: #b1b100;&quot;&gt;return&lt;/span&gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;ZoomOut&amp;quot;&lt;/span&gt;;&lt;br /&gt;		&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;	&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;	&lt;span style=&quot;color: #b1b100;&quot;&gt;else&lt;/span&gt; &lt;span style=&quot;color: #b1b100;&quot;&gt;if&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;nStartX &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;gt;&lt;/span&gt;= &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;oGlobalCoordinatesOfRestrict.&lt;span style=&quot;color: #006600;&quot;&gt;x&lt;/span&gt; + mcImage.&lt;span style=&quot;color: #006600;&quot;&gt;mcRestrict&lt;/span&gt;.&lt;span style=&quot;color: #0066CC;&quot;&gt;_width&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;/&lt;/span&gt; 2&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;amp;&amp;amp;&lt;/span&gt; nStartY &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;gt;&lt;/span&gt;= &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;oGlobalCoordinatesOfRestrict.&lt;span style=&quot;color: #006600;&quot;&gt;y&lt;/span&gt; + mcImage.&lt;span style=&quot;color: #006600;&quot;&gt;mcRestrict&lt;/span&gt;.&lt;span style=&quot;color: #0066CC;&quot;&gt;_height&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;/&lt;/span&gt; &lt;span style=&quot;color: #cc66cc;&quot;&gt;2&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;br /&gt;	&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;		&lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;//This is Qudrant 4&lt;/span&gt;&lt;br /&gt;		&lt;span style=&quot;color: #b1b100;&quot;&gt;if&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;nEndX &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;gt;&lt;/span&gt; nStartX&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;br /&gt;		&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;			&lt;span style=&quot;color: #b1b100;&quot;&gt;return&lt;/span&gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;ZoomIn&amp;quot;&lt;/span&gt;;&lt;br /&gt;		&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;		&lt;span style=&quot;color: #b1b100;&quot;&gt;else&lt;/span&gt;&lt;br /&gt;		&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;			&lt;span style=&quot;color: #b1b100;&quot;&gt;return&lt;/span&gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;ZoomOut&amp;quot;&lt;/span&gt;;&lt;br /&gt;		&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;	&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;	&lt;span style=&quot;color: #b1b100;&quot;&gt;else&lt;/span&gt; &lt;span style=&quot;color: #b1b100;&quot;&gt;if&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;nStartX &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;gt;&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;oGlobalCoordinatesOfRestrict.&lt;span style=&quot;color: #006600;&quot;&gt;x&lt;/span&gt; - mcImage.&lt;span style=&quot;color: #006600;&quot;&gt;mcRestrict&lt;/span&gt;.&lt;span style=&quot;color: #0066CC;&quot;&gt;_width&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;/&lt;/span&gt; 2&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;amp;&amp;amp;&lt;/span&gt; nStartX &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;lt;&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;oGlobalCoordinatesOfRestrict.&lt;span style=&quot;color: #006600;&quot;&gt;x&lt;/span&gt; + mcImage.&lt;span style=&quot;color: #006600;&quot;&gt;mcRestrict&lt;/span&gt;.&lt;span style=&quot;color: #0066CC;&quot;&gt;_width&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;/&lt;/span&gt; 2&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;amp;&amp;amp;&lt;/span&gt; nStartY &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;gt;&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;oGlobalCoordinatesOfRestrict.&lt;span style=&quot;color: #006600;&quot;&gt;y&lt;/span&gt; + mcImage.&lt;span style=&quot;color: #006600;&quot;&gt;mcRestrict&lt;/span&gt;.&lt;span style=&quot;color: #0066CC;&quot;&gt;_height&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;/&lt;/span&gt; &lt;span style=&quot;color: #cc66cc;&quot;&gt;2&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;br /&gt;	&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;		&lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;//This is Qudrant 5&lt;/span&gt;&lt;br /&gt;		&lt;span style=&quot;color: #b1b100;&quot;&gt;if&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;nEndY &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;gt;&lt;/span&gt; nStartY&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;br /&gt;		&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;			&lt;span style=&quot;color: #b1b100;&quot;&gt;return&lt;/span&gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;ZoomIn&amp;quot;&lt;/span&gt;;&lt;br /&gt;		&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;		&lt;span style=&quot;color: #b1b100;&quot;&gt;else&lt;/span&gt;&lt;br /&gt;		&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;			&lt;span style=&quot;color: #b1b100;&quot;&gt;return&lt;/span&gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;ZoomOut&amp;quot;&lt;/span&gt;;&lt;br /&gt;		&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;	&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;	&lt;span style=&quot;color: #b1b100;&quot;&gt;else&lt;/span&gt; &lt;span style=&quot;color: #b1b100;&quot;&gt;if&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;nStartX &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;lt;&lt;/span&gt;= &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;oGlobalCoordinatesOfRestrict.&lt;span style=&quot;color: #006600;&quot;&gt;x&lt;/span&gt; - mcImage.&lt;span style=&quot;color: #006600;&quot;&gt;mcRestrict&lt;/span&gt;.&lt;span style=&quot;color: #0066CC;&quot;&gt;_width&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;/&lt;/span&gt; 2&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;amp;&amp;amp;&lt;/span&gt; nStartY &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;gt;&lt;/span&gt;= &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;oGlobalCoordinatesOfRestrict.&lt;span style=&quot;color: #006600;&quot;&gt;y&lt;/span&gt; + mcImage.&lt;span style=&quot;color: #006600;&quot;&gt;mcRestrict&lt;/span&gt;.&lt;span style=&quot;color: #0066CC;&quot;&gt;_height&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;/&lt;/span&gt; &lt;span style=&quot;color: #cc66cc;&quot;&gt;2&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;br /&gt;	&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;		&lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;//This is Qudrant 6&lt;/span&gt;&lt;br /&gt;		&lt;span style=&quot;color: #b1b100;&quot;&gt;if&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;nEndY &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;gt;&lt;/span&gt; nStartY&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;br /&gt;		&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;			&lt;span style=&quot;color: #b1b100;&quot;&gt;return&lt;/span&gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;ZoomIn&amp;quot;&lt;/span&gt;;&lt;br /&gt;		&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;		&lt;span style=&quot;color: #b1b100;&quot;&gt;else&lt;/span&gt;&lt;br /&gt;		&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;			&lt;span style=&quot;color: #b1b100;&quot;&gt;return&lt;/span&gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;ZoomOut&amp;quot;&lt;/span&gt;;&lt;br /&gt;		&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;	&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;	&lt;span style=&quot;color: #b1b100;&quot;&gt;else&lt;/span&gt; &lt;span style=&quot;color: #b1b100;&quot;&gt;if&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;nStartX &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;lt;&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;oGlobalCoordinatesOfRestrict.&lt;span style=&quot;color: #006600;&quot;&gt;x&lt;/span&gt; - mcImage.&lt;span style=&quot;color: #006600;&quot;&gt;mcRestrict&lt;/span&gt;.&lt;span style=&quot;color: #0066CC;&quot;&gt;_width&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;/&lt;/span&gt; 2&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;amp;&amp;amp;&lt;/span&gt; nStartY &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;gt;&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;oGlobalCoordinatesOfRestrict.&lt;span style=&quot;color: #006600;&quot;&gt;y&lt;/span&gt; - mcImage.&lt;span style=&quot;color: #006600;&quot;&gt;mcRestrict&lt;/span&gt;.&lt;span style=&quot;color: #0066CC;&quot;&gt;_height&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;/&lt;/span&gt; 2&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;amp;&amp;amp;&lt;/span&gt; nStartY &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;lt;&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;oGlobalCoordinatesOfRestrict.&lt;span style=&quot;color: #006600;&quot;&gt;y&lt;/span&gt; + mcImage.&lt;span style=&quot;color: #006600;&quot;&gt;mcRestrict&lt;/span&gt;.&lt;span style=&quot;color: #0066CC;&quot;&gt;_height&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;/&lt;/span&gt; &lt;span style=&quot;color: #cc66cc;&quot;&gt;2&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;br /&gt;	&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;		&lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;//This is Qudrant 7&lt;/span&gt;&lt;br /&gt;		&lt;span style=&quot;color: #b1b100;&quot;&gt;if&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;nEndX &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;lt;&lt;/span&gt; nStartX&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;br /&gt;		&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;			&lt;span style=&quot;color: #b1b100;&quot;&gt;return&lt;/span&gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;ZoomIn&amp;quot;&lt;/span&gt;;&lt;br /&gt;		&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;		&lt;span style=&quot;color: #b1b100;&quot;&gt;else&lt;/span&gt;&lt;br /&gt;		&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;			&lt;span style=&quot;color: #b1b100;&quot;&gt;return&lt;/span&gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;ZoomOut&amp;quot;&lt;/span&gt;;&lt;br /&gt;		&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;	&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;	&lt;span style=&quot;color: #b1b100;&quot;&gt;else&lt;/span&gt; &lt;span style=&quot;color: #b1b100;&quot;&gt;if&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;nStartX &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;lt;&lt;/span&gt;= &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;oGlobalCoordinatesOfRestrict.&lt;span style=&quot;color: #006600;&quot;&gt;x&lt;/span&gt; - mcImage.&lt;span style=&quot;color: #006600;&quot;&gt;mcRestrict&lt;/span&gt;.&lt;span style=&quot;color: #0066CC;&quot;&gt;_width&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;/&lt;/span&gt; 2&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;amp;&amp;amp;&lt;/span&gt; nStartY &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;lt;&lt;/span&gt;= &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;oGlobalCoordinatesOfRestrict.&lt;span style=&quot;color: #006600;&quot;&gt;y&lt;/span&gt; - mcImage.&lt;span style=&quot;color: #006600;&quot;&gt;mcRestrict&lt;/span&gt;.&lt;span style=&quot;color: #0066CC;&quot;&gt;_height&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;/&lt;/span&gt; &lt;span style=&quot;color: #cc66cc;&quot;&gt;2&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;br /&gt;	&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;		&lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;//This is Qudrant 8&lt;/span&gt;&lt;br /&gt;		&lt;span style=&quot;color: #b1b100;&quot;&gt;if&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;nEndX &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;lt;&lt;/span&gt; nStartX&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;br /&gt;		&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;			&lt;span style=&quot;color: #b1b100;&quot;&gt;return&lt;/span&gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;ZoomIn&amp;quot;&lt;/span&gt;;&lt;br /&gt;		&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;		&lt;span style=&quot;color: #b1b100;&quot;&gt;else&lt;/span&gt;&lt;br /&gt;		&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;			&lt;span style=&quot;color: #b1b100;&quot;&gt;return&lt;/span&gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;ZoomOut&amp;quot;&lt;/span&gt;;&lt;br /&gt;		&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;	&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;	&lt;span style=&quot;color: #b1b100;&quot;&gt;else&lt;/span&gt;&lt;br /&gt;	&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;		&lt;span style=&quot;color: #b1b100;&quot;&gt;return&lt;/span&gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;ZoomIn&amp;quot;&lt;/span&gt;;&lt;br /&gt;	&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;function&lt;/span&gt; fnCheckIfToRotate &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;nXMouse:&lt;span style=&quot;color: #0066CC;&quot;&gt;Number&lt;/span&gt;, nYMouse:&lt;span style=&quot;color: #0066CC;&quot;&gt;Number&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;	&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;var&lt;/span&gt; nBaseAngle:&lt;span style=&quot;color: #0066CC;&quot;&gt;Number&lt;/span&gt; = &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;180 &lt;span style=&quot;color: #66cc66;&quot;&gt;*&lt;/span&gt; &lt;span style=&quot;color: #0066CC;&quot;&gt;Math&lt;/span&gt;.&lt;span style=&quot;color: #0066CC;&quot;&gt;atan2&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;nYMouse - mcImage.&lt;span style=&quot;color: #0066CC;&quot;&gt;_y&lt;/span&gt;, nXMouse - mcImage.&lt;span style=&quot;color: #0066CC;&quot;&gt;_x&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;/&lt;/span&gt; &lt;span style=&quot;color: #0066CC;&quot;&gt;Math&lt;/span&gt;.&lt;span style=&quot;color: #0066CC;&quot;&gt;PI&lt;/span&gt; + &lt;span style=&quot;color: #cc66cc;&quot;&gt;90&lt;/span&gt;;&lt;br /&gt;	&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;var&lt;/span&gt; nRotationChange:&lt;span style=&quot;color: #0066CC;&quot;&gt;Number&lt;/span&gt; = nBaseAngle - mcImage.&lt;span style=&quot;color: #006600;&quot;&gt;nAngleOnMousePress&lt;/span&gt;;&lt;br /&gt;	mcImage.&lt;span style=&quot;color: #0066CC;&quot;&gt;_rotation&lt;/span&gt; = mcImage.&lt;span style=&quot;color: #006600;&quot;&gt;nInitialAngle&lt;/span&gt; + nRotationChange;&lt;br /&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;function&lt;/span&gt; fnToggleZoomSpan &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;	bZoomRotateMode = &lt;span style=&quot;color: #66cc66;&quot;&gt;!&lt;/span&gt;bZoomRotateMode;&lt;br /&gt;	&lt;span style=&quot;color: #b1b100;&quot;&gt;if&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;bZoomRotateMode&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;br /&gt;	&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;		mcZoomSpan.&lt;span style=&quot;color: #0066CC;&quot;&gt;gotoAndStop&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;1&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;;&lt;br /&gt;	&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;	&lt;span style=&quot;color: #b1b100;&quot;&gt;else&lt;/span&gt;&lt;br /&gt;	&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;		mcZoomSpan.&lt;span style=&quot;color: #0066CC;&quot;&gt;gotoAndStop&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;2&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;;&lt;br /&gt;	&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;	mcImage.&lt;span style=&quot;color: #0066CC;&quot;&gt;_x&lt;/span&gt; = mcImage.&lt;span style=&quot;color: #006600;&quot;&gt;nInitialOnloadX&lt;/span&gt;;&lt;br /&gt;	mcImage.&lt;span style=&quot;color: #0066CC;&quot;&gt;_y&lt;/span&gt; = mcImage.&lt;span style=&quot;color: #006600;&quot;&gt;nInitialOnloadY&lt;/span&gt;;&lt;br /&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;/pre&gt;
&lt;p&gt;The function performs the following important tasks for identifying the zooming:
&lt;/p&gt;
&lt;ul&gt;&lt;li&gt; Check if the user is dragging through the reference circle.
&lt;/li&gt;&lt;li&gt; Check if it is Zoom-out or Zoom-in gesture.
&lt;/li&gt;&lt;li&gt; Calculate the zoom factor and resize the image accordingly.
&lt;/li&gt;&lt;/ul&gt;
&lt;a name=&quot;Check_if_the_user_is_dragging_through_the_reference_circle&quot; id=&quot;Check_if_the_user_is_dragging_through_the_reference_circle&quot;&gt;&lt;/a&gt;&lt;h4&gt; &lt;span class=&quot;mw-headline&quot;&gt;Check if the user is dragging through the reference circle&lt;/span&gt;&lt;/h4&gt;
&lt;p&gt;We need to figure out if the user is dragging the imgae so that the line formed goes through the circle or not. If the line drawn by the user intersects the reference circle, it means it is Zoom gesture.
&lt;/p&gt;&lt;p&gt;We will calculate the shortest distance between the line and the center of the reference circle, if the shortest distance happens to be less than the radius of the reference circle, it means that the line is intersecting the circle and not otherwise. 
&lt;/p&gt;&lt;p&gt;As the user may drag a line of short length which does not intersect the circle but there is probability of it intersecting the circle if extended, we will extend the line in both directions before calculating the shortest distance. 
&lt;/p&gt;&lt;p&gt;We will calculate the slop of the line and extend the line in both directions about 800 pixels away.
&lt;/p&gt;
&lt;a name=&quot;Check_if_it_is_Zoom-out_or_Zoom-in_gesture&quot; id=&quot;Check_if_it_is_Zoom-out_or_Zoom-in_gesture&quot;&gt;&lt;/a&gt;&lt;h4&gt; &lt;span class=&quot;mw-headline&quot;&gt;Check if it is Zoom-out or Zoom-in gesture&lt;/span&gt;&lt;/h4&gt;
&lt;p&gt;Once we conclude it is Zoom gesture, we need to identify if it is Zoom-out/Zoom-in gesture. The following function takes the starting X and Y coordinates and Ending X and Y coordinates and returns the Zoom direction.
&lt;/p&gt;
&lt;pre class=&quot;actionscript&quot; style=&quot;font-family:monospace;&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;function&lt;/span&gt; fnCheckQuadrant &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;nStartX:&lt;span style=&quot;color: #0066CC;&quot;&gt;Number&lt;/span&gt;, nStartY:&lt;span style=&quot;color: #0066CC;&quot;&gt;Number&lt;/span&gt;, nEndX:&lt;span style=&quot;color: #0066CC;&quot;&gt;Number&lt;/span&gt;, nEndY:&lt;span style=&quot;color: #0066CC;&quot;&gt;Number&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;:&lt;span style=&quot;color: #0066CC;&quot;&gt;String&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;	&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;var&lt;/span&gt; oGlobalCoordinatesOfRestrict:&lt;span style=&quot;color: #0066CC;&quot;&gt;Object&lt;/span&gt; = &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt;x:mcImage.&lt;span style=&quot;color: #006600;&quot;&gt;mcRestrict&lt;/span&gt;.&lt;span style=&quot;color: #0066CC;&quot;&gt;_x&lt;/span&gt;, y:mcImage.&lt;span style=&quot;color: #006600;&quot;&gt;mcRestrict&lt;/span&gt;.&lt;span style=&quot;color: #0066CC;&quot;&gt;_y&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt;;&lt;br /&gt;	mcImage.&lt;span style=&quot;color: #0066CC;&quot;&gt;localToGlobal&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;oGlobalCoordinatesOfRestrict&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;;&lt;br /&gt;	&lt;span style=&quot;color: #b1b100;&quot;&gt;if&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;nStartX &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;gt;&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;oGlobalCoordinatesOfRestrict.&lt;span style=&quot;color: #006600;&quot;&gt;x&lt;/span&gt; - mcImage.&lt;span style=&quot;color: #006600;&quot;&gt;mcRestrict&lt;/span&gt;.&lt;span style=&quot;color: #0066CC;&quot;&gt;_width&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;/&lt;/span&gt; 2&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;amp;&amp;amp;&lt;/span&gt; nStartX &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;lt;&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;oGlobalCoordinatesOfRestrict.&lt;span style=&quot;color: #006600;&quot;&gt;x&lt;/span&gt; + mcImage.&lt;span style=&quot;color: #006600;&quot;&gt;mcRestrict&lt;/span&gt;.&lt;span style=&quot;color: #0066CC;&quot;&gt;_width&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;/&lt;/span&gt; 2&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;amp;&amp;amp;&lt;/span&gt; nStartY &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;lt;&lt;/span&gt; oGlobalCoordinatesOfRestrict.&lt;span style=&quot;color: #006600;&quot;&gt;y&lt;/span&gt; - mcImage.&lt;span style=&quot;color: #006600;&quot;&gt;mcRestrict&lt;/span&gt;.&lt;span style=&quot;color: #0066CC;&quot;&gt;_height&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;/&lt;/span&gt; &lt;span style=&quot;color: #cc66cc;&quot;&gt;2&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;br /&gt;	&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;		&lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;//This is Qudrant 1&lt;/span&gt;&lt;br /&gt;		&lt;span style=&quot;color: #b1b100;&quot;&gt;if&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;nEndY &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;lt;&lt;/span&gt; nStartY&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;br /&gt;		&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;			&lt;span style=&quot;color: #b1b100;&quot;&gt;return&lt;/span&gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;ZoomIn&amp;quot;&lt;/span&gt;;&lt;br /&gt;		&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;		&lt;span style=&quot;color: #b1b100;&quot;&gt;else&lt;/span&gt;&lt;br /&gt;		&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;			&lt;span style=&quot;color: #b1b100;&quot;&gt;return&lt;/span&gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;ZoomOut&amp;quot;&lt;/span&gt;;&lt;br /&gt;		&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;	&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;	&lt;span style=&quot;color: #b1b100;&quot;&gt;else&lt;/span&gt; &lt;span style=&quot;color: #b1b100;&quot;&gt;if&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;nStartX &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;gt;&lt;/span&gt;= &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;oGlobalCoordinatesOfRestrict.&lt;span style=&quot;color: #006600;&quot;&gt;x&lt;/span&gt; + mcImage.&lt;span style=&quot;color: #006600;&quot;&gt;mcRestrict&lt;/span&gt;.&lt;span style=&quot;color: #0066CC;&quot;&gt;_width&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;/&lt;/span&gt; 2&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;amp;&amp;amp;&lt;/span&gt; nStartY &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;lt;&lt;/span&gt;= &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;oGlobalCoordinatesOfRestrict.&lt;span style=&quot;color: #006600;&quot;&gt;y&lt;/span&gt; - mcImage.&lt;span style=&quot;color: #006600;&quot;&gt;mcRestrict&lt;/span&gt;.&lt;span style=&quot;color: #0066CC;&quot;&gt;_height&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;/&lt;/span&gt; &lt;span style=&quot;color: #cc66cc;&quot;&gt;2&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;br /&gt;	&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;		&lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;//This is Qudrant 2&lt;/span&gt;&lt;br /&gt;		&lt;span style=&quot;color: #b1b100;&quot;&gt;if&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;nEndY &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;lt;&lt;/span&gt; nStartY&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;br /&gt;		&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;			&lt;span style=&quot;color: #b1b100;&quot;&gt;return&lt;/span&gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;ZoomIn&amp;quot;&lt;/span&gt;;&lt;br /&gt;		&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;		&lt;span style=&quot;color: #b1b100;&quot;&gt;else&lt;/span&gt;&lt;br /&gt;		&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;			&lt;span style=&quot;color: #b1b100;&quot;&gt;return&lt;/span&gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;ZoomOut&amp;quot;&lt;/span&gt;;&lt;br /&gt;		&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;	&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;	&lt;span style=&quot;color: #b1b100;&quot;&gt;else&lt;/span&gt; &lt;span style=&quot;color: #b1b100;&quot;&gt;if&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;nStartX &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;gt;&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;oGlobalCoordinatesOfRestrict.&lt;span style=&quot;color: #006600;&quot;&gt;x&lt;/span&gt; + mcImage.&lt;span style=&quot;color: #006600;&quot;&gt;mcRestrict&lt;/span&gt;.&lt;span style=&quot;color: #0066CC;&quot;&gt;_width&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;/&lt;/span&gt; 2&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;amp;&amp;amp;&lt;/span&gt; nStartY &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;gt;&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;oGlobalCoordinatesOfRestrict.&lt;span style=&quot;color: #006600;&quot;&gt;y&lt;/span&gt; - mcImage.&lt;span style=&quot;color: #006600;&quot;&gt;mcRestrict&lt;/span&gt;.&lt;span style=&quot;color: #0066CC;&quot;&gt;_height&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;/&lt;/span&gt; 2&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;amp;&amp;amp;&lt;/span&gt; nStartY &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;lt;&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;oGlobalCoordinatesOfRestrict.&lt;span style=&quot;color: #006600;&quot;&gt;y&lt;/span&gt; + mcImage.&lt;span style=&quot;color: #006600;&quot;&gt;mcRestrict&lt;/span&gt;.&lt;span style=&quot;color: #0066CC;&quot;&gt;_height&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;/&lt;/span&gt; &lt;span style=&quot;color: #cc66cc;&quot;&gt;2&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;br /&gt;	&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;		&lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;//This is Qudrant 3&lt;/span&gt;&lt;br /&gt;		&lt;span style=&quot;color: #b1b100;&quot;&gt;if&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;nEndX &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;gt;&lt;/span&gt; nStartX&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;br /&gt;		&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;			&lt;span style=&quot;color: #b1b100;&quot;&gt;return&lt;/span&gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;ZoomIn&amp;quot;&lt;/span&gt;;&lt;br /&gt;		&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;		&lt;span style=&quot;color: #b1b100;&quot;&gt;else&lt;/span&gt;&lt;br /&gt;		&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;			&lt;span style=&quot;color: #b1b100;&quot;&gt;return&lt;/span&gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;ZoomOut&amp;quot;&lt;/span&gt;;&lt;br /&gt;		&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;	&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;	&lt;span style=&quot;color: #b1b100;&quot;&gt;else&lt;/span&gt; &lt;span style=&quot;color: #b1b100;&quot;&gt;if&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;nStartX &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;gt;&lt;/span&gt;= &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;oGlobalCoordinatesOfRestrict.&lt;span style=&quot;color: #006600;&quot;&gt;x&lt;/span&gt; + mcImage.&lt;span style=&quot;color: #006600;&quot;&gt;mcRestrict&lt;/span&gt;.&lt;span style=&quot;color: #0066CC;&quot;&gt;_width&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;/&lt;/span&gt; 2&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;amp;&amp;amp;&lt;/span&gt; nStartY &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;gt;&lt;/span&gt;= &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;oGlobalCoordinatesOfRestrict.&lt;span style=&quot;color: #006600;&quot;&gt;y&lt;/span&gt; + mcImage.&lt;span style=&quot;color: #006600;&quot;&gt;mcRestrict&lt;/span&gt;.&lt;span style=&quot;color: #0066CC;&quot;&gt;_height&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;/&lt;/span&gt; &lt;span style=&quot;color: #cc66cc;&quot;&gt;2&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;br /&gt;	&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;		&lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;//This is Qudrant 4&lt;/span&gt;&lt;br /&gt;		&lt;span style=&quot;color: #b1b100;&quot;&gt;if&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;nEndX &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;gt;&lt;/span&gt; nStartX&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;br /&gt;		&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;			&lt;span style=&quot;color: #b1b100;&quot;&gt;return&lt;/span&gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;ZoomIn&amp;quot;&lt;/span&gt;;&lt;br /&gt;		&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;		&lt;span style=&quot;color: #b1b100;&quot;&gt;else&lt;/span&gt;&lt;br /&gt;		&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;			&lt;span style=&quot;color: #b1b100;&quot;&gt;return&lt;/span&gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;ZoomOut&amp;quot;&lt;/span&gt;;&lt;br /&gt;		&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;	&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;	&lt;span style=&quot;color: #b1b100;&quot;&gt;else&lt;/span&gt; &lt;span style=&quot;color: #b1b100;&quot;&gt;if&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;nStartX &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;gt;&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;oGlobalCoordinatesOfRestrict.&lt;span style=&quot;color: #006600;&quot;&gt;x&lt;/span&gt; - mcImage.&lt;span style=&quot;color: #006600;&quot;&gt;mcRestrict&lt;/span&gt;.&lt;span style=&quot;color: #0066CC;&quot;&gt;_width&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;/&lt;/span&gt; 2&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;amp;&amp;amp;&lt;/span&gt; nStartX &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;lt;&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;oGlobalCoordinatesOfRestrict.&lt;span style=&quot;color: #006600;&quot;&gt;x&lt;/span&gt; + mcImage.&lt;span style=&quot;color: #006600;&quot;&gt;mcRestrict&lt;/span&gt;.&lt;span style=&quot;color: #0066CC;&quot;&gt;_width&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;/&lt;/span&gt; 2&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;amp;&amp;amp;&lt;/span&gt; nStartY &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;gt;&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;oGlobalCoordinatesOfRestrict.&lt;span style=&quot;color: #006600;&quot;&gt;y&lt;/span&gt; + mcImage.&lt;span style=&quot;color: #006600;&quot;&gt;mcRestrict&lt;/span&gt;.&lt;span style=&quot;color: #0066CC;&quot;&gt;_height&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;/&lt;/span&gt; &lt;span style=&quot;color: #cc66cc;&quot;&gt;2&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;br /&gt;	&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;		&lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;//This is Qudrant 5&lt;/span&gt;&lt;br /&gt;		&lt;span style=&quot;color: #b1b100;&quot;&gt;if&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;nEndY &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;gt;&lt;/span&gt; nStartY&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;br /&gt;		&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;			&lt;span style=&quot;color: #b1b100;&quot;&gt;return&lt;/span&gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;ZoomIn&amp;quot;&lt;/span&gt;;&lt;br /&gt;		&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;		&lt;span style=&quot;color: #b1b100;&quot;&gt;else&lt;/span&gt;&lt;br /&gt;		&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;			&lt;span style=&quot;color: #b1b100;&quot;&gt;return&lt;/span&gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;ZoomOut&amp;quot;&lt;/span&gt;;&lt;br /&gt;		&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;	&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;	&lt;span style=&quot;color: #b1b100;&quot;&gt;else&lt;/span&gt; &lt;span style=&quot;color: #b1b100;&quot;&gt;if&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;nStartX &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;lt;&lt;/span&gt;= &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;oGlobalCoordinatesOfRestrict.&lt;span style=&quot;color: #006600;&quot;&gt;x&lt;/span&gt; - mcImage.&lt;span style=&quot;color: #006600;&quot;&gt;mcRestrict&lt;/span&gt;.&lt;span style=&quot;color: #0066CC;&quot;&gt;_width&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;/&lt;/span&gt; 2&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;amp;&amp;amp;&lt;/span&gt; nStartY &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;gt;&lt;/span&gt;= &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;oGlobalCoordinatesOfRestrict.&lt;span style=&quot;color: #006600;&quot;&gt;y&lt;/span&gt; + mcImage.&lt;span style=&quot;color: #006600;&quot;&gt;mcRestrict&lt;/span&gt;.&lt;span style=&quot;color: #0066CC;&quot;&gt;_height&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;/&lt;/span&gt; &lt;span style=&quot;color: #cc66cc;&quot;&gt;2&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;br /&gt;	&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;		&lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;//This is Qudrant 6&lt;/span&gt;&lt;br /&gt;		&lt;span style=&quot;color: #b1b100;&quot;&gt;if&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;nEndY &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;gt;&lt;/span&gt; nStartY&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;br /&gt;		&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;			&lt;span style=&quot;color: #b1b100;&quot;&gt;return&lt;/span&gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;ZoomIn&amp;quot;&lt;/span&gt;;&lt;br /&gt;		&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;		&lt;span style=&quot;color: #b1b100;&quot;&gt;else&lt;/span&gt;&lt;br /&gt;		&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;			&lt;span style=&quot;color: #b1b100;&quot;&gt;return&lt;/span&gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;ZoomOut&amp;quot;&lt;/span&gt;;&lt;br /&gt;		&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;	&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;	&lt;span style=&quot;color: #b1b100;&quot;&gt;else&lt;/span&gt; &lt;span style=&quot;color: #b1b100;&quot;&gt;if&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;nStartX &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;lt;&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;oGlobalCoordinatesOfRestrict.&lt;span style=&quot;color: #006600;&quot;&gt;x&lt;/span&gt; - mcImage.&lt;span style=&quot;color: #006600;&quot;&gt;mcRestrict&lt;/span&gt;.&lt;span style=&quot;color: #0066CC;&quot;&gt;_width&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;/&lt;/span&gt; 2&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;amp;&amp;amp;&lt;/span&gt; nStartY &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;gt;&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;oGlobalCoordinatesOfRestrict.&lt;span style=&quot;color: #006600;&quot;&gt;y&lt;/span&gt; - mcImage.&lt;span style=&quot;color: #006600;&quot;&gt;mcRestrict&lt;/span&gt;.&lt;span style=&quot;color: #0066CC;&quot;&gt;_height&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;/&lt;/span&gt; 2&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;amp;&amp;amp;&lt;/span&gt; nStartY &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;lt;&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;oGlobalCoordinatesOfRestrict.&lt;span style=&quot;color: #006600;&quot;&gt;y&lt;/span&gt; + mcImage.&lt;span style=&quot;color: #006600;&quot;&gt;mcRestrict&lt;/span&gt;.&lt;span style=&quot;color: #0066CC;&quot;&gt;_height&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;/&lt;/span&gt; &lt;span style=&quot;color: #cc66cc;&quot;&gt;2&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;br /&gt;	&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;		&lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;//This is Qudrant 7&lt;/span&gt;&lt;br /&gt;		&lt;span style=&quot;color: #b1b100;&quot;&gt;if&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;nEndX &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;lt;&lt;/span&gt; nStartX&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;br /&gt;		&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;			&lt;span style=&quot;color: #b1b100;&quot;&gt;return&lt;/span&gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;ZoomIn&amp;quot;&lt;/span&gt;;&lt;br /&gt;		&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;		&lt;span style=&quot;color: #b1b100;&quot;&gt;else&lt;/span&gt;&lt;br /&gt;		&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;			&lt;span style=&quot;color: #b1b100;&quot;&gt;return&lt;/span&gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;ZoomOut&amp;quot;&lt;/span&gt;;&lt;br /&gt;		&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;	&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;	&lt;span style=&quot;color: #b1b100;&quot;&gt;else&lt;/span&gt; &lt;span style=&quot;color: #b1b100;&quot;&gt;if&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;nStartX &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;lt;&lt;/span&gt;= &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;oGlobalCoordinatesOfRestrict.&lt;span style=&quot;color: #006600;&quot;&gt;x&lt;/span&gt; - mcImage.&lt;span style=&quot;color: #006600;&quot;&gt;mcRestrict&lt;/span&gt;.&lt;span style=&quot;color: #0066CC;&quot;&gt;_width&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;/&lt;/span&gt; 2&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;amp;&amp;amp;&lt;/span&gt; nStartY &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;lt;&lt;/span&gt;= &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;oGlobalCoordinatesOfRestrict.&lt;span style=&quot;color: #006600;&quot;&gt;y&lt;/span&gt; - mcImage.&lt;span style=&quot;color: #006600;&quot;&gt;mcRestrict&lt;/span&gt;.&lt;span style=&quot;color: #0066CC;&quot;&gt;_height&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;/&lt;/span&gt; &lt;span style=&quot;color: #cc66cc;&quot;&gt;2&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;br /&gt;	&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;		&lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;//This is Qudrant 8&lt;/span&gt;&lt;br /&gt;		&lt;span style=&quot;color: #b1b100;&quot;&gt;if&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;nEndX &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;lt;&lt;/span&gt; nStartX&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;br /&gt;		&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;			&lt;span style=&quot;color: #b1b100;&quot;&gt;return&lt;/span&gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;ZoomIn&amp;quot;&lt;/span&gt;;&lt;br /&gt;		&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;		&lt;span style=&quot;color: #b1b100;&quot;&gt;else&lt;/span&gt;&lt;br /&gt;		&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;			&lt;span style=&quot;color: #b1b100;&quot;&gt;return&lt;/span&gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;ZoomOut&amp;quot;&lt;/span&gt;;&lt;br /&gt;		&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;	&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;	&lt;span style=&quot;color: #b1b100;&quot;&gt;else&lt;/span&gt;&lt;br /&gt;	&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;		&lt;span style=&quot;color: #b1b100;&quot;&gt;return&lt;/span&gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;ZoomIn&amp;quot;&lt;/span&gt;;&lt;br /&gt;	&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;/pre&gt;
&lt;p&gt;We divide the stage in 8 quadrants as shown below and will check in which quadrant the user is zooming. Depending upon the quadrant, we will decide if this is Zoom-out gesture or Zoom-in gesture.
&lt;/p&gt;&lt;p&gt;&lt;a href=&quot;/index.php/File:ZoomRotateGesture_Quadrant.jpg&quot; class=&quot;image&quot; title=&quot;Image:ZoomRotateGesture_Quadrant.jpg&quot;&gt;&lt;img alt=&quot;Image:ZoomRotateGesture_Quadrant.jpg&quot; src=&quot;http://www.forum.nokia.com/piazza/wiki/images/2/27/ZoomRotateGesture_Quadrant.jpg&quot; width=&quot;400&quot; height=&quot;550&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;
&lt;a name=&quot;Calculate_the_zoom_factor_and_resize_the_image_accordingly&quot; id=&quot;Calculate_the_zoom_factor_and_resize_the_image_accordingly&quot;&gt;&lt;/a&gt;&lt;h4&gt; &lt;span class=&quot;mw-headline&quot;&gt;Calculate the zoom factor and resize the image accordingly&lt;/span&gt;&lt;/h4&gt;
&lt;p&gt;Calculate the distance between the start and end points. This will be nothing but the length of the line formed by these two points.
If the gesture is 'Zoom Out', decrease the width of the image by this length and if the gesture is 'Zoom In', increase the width of the image by this length. Now increase the height of the image with respect to the original aspect ratio.
&lt;/p&gt;
&lt;a name=&quot;Rotate_and_Spanning_Gesture&quot; id=&quot;Rotate_and_Spanning_Gesture&quot;&gt;&lt;/a&gt;&lt;h3&gt; &lt;span class=&quot;mw-headline&quot;&gt;Rotate and Spanning Gesture&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;Calculating the angle of the rotation is fairly simple and we will apply the change in angle to the image rotation. The following function takes the _xmouse and _ymouse as the parameter and calculates the angle formed at the center of the image. The final angle will be original angle in addition to the change in angle.
&lt;/p&gt;
&lt;pre class=&quot;actionscript&quot; style=&quot;font-family:monospace;&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;function&lt;/span&gt; fnCheckIfToRotate &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;nXMouse:&lt;span style=&quot;color: #0066CC;&quot;&gt;Number&lt;/span&gt;, nYMouse:&lt;span style=&quot;color: #0066CC;&quot;&gt;Number&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;	&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;var&lt;/span&gt; nBaseAngle:&lt;span style=&quot;color: #0066CC;&quot;&gt;Number&lt;/span&gt; = &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;180 &lt;span style=&quot;color: #66cc66;&quot;&gt;*&lt;/span&gt; &lt;span style=&quot;color: #0066CC;&quot;&gt;Math&lt;/span&gt;.&lt;span style=&quot;color: #0066CC;&quot;&gt;atan2&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;nYMouse - mcImage.&lt;span style=&quot;color: #0066CC;&quot;&gt;_y&lt;/span&gt;, nXMouse - mcImage.&lt;span style=&quot;color: #0066CC;&quot;&gt;_x&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;/&lt;/span&gt; &lt;span style=&quot;color: #0066CC;&quot;&gt;Math&lt;/span&gt;.&lt;span style=&quot;color: #0066CC;&quot;&gt;PI&lt;/span&gt; + &lt;span style=&quot;color: #cc66cc;&quot;&gt;90&lt;/span&gt;;&lt;br /&gt;	&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;var&lt;/span&gt; nRotationChange:&lt;span style=&quot;color: #0066CC;&quot;&gt;Number&lt;/span&gt; = nBaseAngle - mcImage.&lt;span style=&quot;color: #006600;&quot;&gt;nAngleOnMousePress&lt;/span&gt;;&lt;br /&gt;	mcImage.&lt;span style=&quot;color: #0066CC;&quot;&gt;_rotation&lt;/span&gt; = mcImage.&lt;span style=&quot;color: #006600;&quot;&gt;nInitialAngle&lt;/span&gt; + nRotationChange;&lt;br /&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;/pre&gt;
&lt;p&gt;The spanning code is added on the button(mcLoadedImage) inside the Image movieclip(mcImage). This will start the dragging of the Image movieclip subject to the dragging constraint movieclip on the main timeline.
&lt;/p&gt;
&lt;pre class=&quot;actionscript&quot; style=&quot;font-family:monospace;&quot;&gt;&lt;span style=&quot;color: #0066CC;&quot;&gt;on&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;press&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;	&lt;span style=&quot;color: #b1b100;&quot;&gt;if&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #0066CC;&quot;&gt;_parent&lt;/span&gt;.&lt;span style=&quot;color: #006600;&quot;&gt;bZoomRotateMode&lt;/span&gt; == &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;false&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;br /&gt;	&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;		&lt;span style=&quot;color: #b1b100;&quot;&gt;if&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #0066CC;&quot;&gt;this&lt;/span&gt;.&lt;span style=&quot;color: #0066CC;&quot;&gt;_width&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;gt;&lt;/span&gt; &lt;span style=&quot;color: #0066CC;&quot;&gt;_parent&lt;/span&gt;.&lt;span style=&quot;color: #006600;&quot;&gt;mcSpanningRestrictions&lt;/span&gt;.&lt;span style=&quot;color: #0066CC;&quot;&gt;_width&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;||&lt;/span&gt; &lt;span style=&quot;color: #0066CC;&quot;&gt;this&lt;/span&gt;.&lt;span style=&quot;color: #0066CC;&quot;&gt;_height&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;gt;&lt;/span&gt; &lt;span style=&quot;color: #0066CC;&quot;&gt;_parent&lt;/span&gt;.&lt;span style=&quot;color: #006600;&quot;&gt;mcSpanningRestrictions&lt;/span&gt;.&lt;span style=&quot;color: #0066CC;&quot;&gt;_height&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;br /&gt;		&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;			&lt;span style=&quot;color: #0066CC;&quot;&gt;this&lt;/span&gt;.&lt;span style=&quot;color: #0066CC;&quot;&gt;startDrag&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;false&lt;/span&gt;,&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #0066CC;&quot;&gt;_parent&lt;/span&gt;.&lt;span style=&quot;color: #006600;&quot;&gt;mcSpanningRestrictions&lt;/span&gt;.&lt;span style=&quot;color: #0066CC;&quot;&gt;_x&lt;/span&gt; - &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #0066CC;&quot;&gt;_parent&lt;/span&gt;.&lt;span style=&quot;color: #006600;&quot;&gt;mcSpanningRestrictions&lt;/span&gt;.&lt;span style=&quot;color: #0066CC;&quot;&gt;_width&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;/&lt;/span&gt; 2 - &lt;span style=&quot;color: #0066CC;&quot;&gt;this&lt;/span&gt;.&lt;span style=&quot;color: #0066CC;&quot;&gt;_width&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;/&lt;/span&gt; 2&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;,&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #0066CC;&quot;&gt;_parent&lt;/span&gt;.&lt;span style=&quot;color: #006600;&quot;&gt;mcSpanningRestrictions&lt;/span&gt;.&lt;span style=&quot;color: #0066CC;&quot;&gt;_y&lt;/span&gt; - &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #0066CC;&quot;&gt;_parent&lt;/span&gt;.&lt;span style=&quot;color: #006600;&quot;&gt;mcSpanningRestrictions&lt;/span&gt;.&lt;span style=&quot;color: #0066CC;&quot;&gt;_height&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;/&lt;/span&gt; 2 - &lt;span style=&quot;color: #0066CC;&quot;&gt;this&lt;/span&gt;.&lt;span style=&quot;color: #0066CC;&quot;&gt;_height&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;/&lt;/span&gt; 2&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;,&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #0066CC;&quot;&gt;_parent&lt;/span&gt;.&lt;span style=&quot;color: #006600;&quot;&gt;mcSpanningRestrictions&lt;/span&gt;.&lt;span style=&quot;color: #0066CC;&quot;&gt;_x&lt;/span&gt; + &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #0066CC;&quot;&gt;_parent&lt;/span&gt;.&lt;span style=&quot;color: #006600;&quot;&gt;mcSpanningRestrictions&lt;/span&gt;.&lt;span style=&quot;color: #0066CC;&quot;&gt;_width&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;/&lt;/span&gt; 2 - &lt;span style=&quot;color: #0066CC;&quot;&gt;this&lt;/span&gt;.&lt;span style=&quot;color: #0066CC;&quot;&gt;_width&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;/&lt;/span&gt; 2&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;,&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #0066CC;&quot;&gt;_parent&lt;/span&gt;.&lt;span style=&quot;color: #006600;&quot;&gt;mcSpanningRestrictions&lt;/span&gt;.&lt;span style=&quot;color: #0066CC;&quot;&gt;_y&lt;/span&gt; + &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #0066CC;&quot;&gt;_parent&lt;/span&gt;.&lt;span style=&quot;color: #006600;&quot;&gt;mcSpanningRestrictions&lt;/span&gt;.&lt;span style=&quot;color: #0066CC;&quot;&gt;_height&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;/&lt;/span&gt; 2 - &lt;span style=&quot;color: #0066CC;&quot;&gt;this&lt;/span&gt;.&lt;span style=&quot;color: #0066CC;&quot;&gt;_height&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;/&lt;/span&gt; 2&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;;&lt;br /&gt;		&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;	&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #0066CC;&quot;&gt;on&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;release, releaseOutside&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;	&lt;span style=&quot;color: #0066CC;&quot;&gt;this&lt;/span&gt;.&lt;span style=&quot;color: #0066CC;&quot;&gt;stopDrag&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;;&lt;br /&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;/pre&gt;
&lt;a name=&quot;Download_source_code&quot; id=&quot;Download_source_code&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;Download source code&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;The following source code is tested on Nokia 5800 XpressMusic device.
&lt;/p&gt;&lt;p&gt;The source code is available at &lt;a href=&quot;http://www.forum.nokia.com/piazza/wiki/images/1/1b/ZoomRotateGestureLite.zip&quot; class=&quot;external text&quot; title=&quot;http://www.forum.nokia.com/piazza/wiki/images/1/1b/ZoomRotateGestureLite.zip&quot; rel=&quot;nofollow&quot;&gt;Zoom and Rotate Gestures in FlashLite&lt;/a&gt;.
&lt;/p&gt;</description>
			<pubDate>Fri, 13 Nov 2009 05:42:07 GMT</pubDate>			<dc:creator>Sangramp@cybage.com</dc:creator>			<comments>http://wiki.forum.nokia.com/index.php/Talk:Zoom_and_Rotate_Gestures_in_FlashLite_for_touch-enabled_devices</comments>		</item>
		<item>
			<title>Campus party mexico</title>
			<link>http://wiki.forum.nokia.com/index.php/Campus_party_mexico</link>
			<description>&lt;table id=&quot;toc&quot; class=&quot;toc&quot; summary=&quot;Contents&quot;&gt;&lt;tr&gt;&lt;td&gt;&lt;div id=&quot;toctitle&quot;&gt;&lt;h2&gt;Contents&lt;/h2&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li class=&quot;toclevel-1&quot;&gt;&lt;a href=&quot;#Conferencias_y_taller_de_Forum_Nokia_en_Campus_Party_M.C3.A9xico&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;1&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Conferencias y taller de Forum Nokia en Campus Party México&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-1&quot;&gt;&lt;a href=&quot;#Instalando_las_herramientas_para_el_taller_y_concurso&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;2&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Instalando las herramientas para el taller y concurso&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-1&quot;&gt;&lt;a href=&quot;#.2ATaller&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;3&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;*Taller&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-1&quot;&gt;&lt;a href=&quot;#Competencia&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;4&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Competencia&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;script type=&quot;text/javascript&quot;&gt; if (window.showTocToggle) { var tocShowText = &quot;show&quot;; var tocHideText = &quot;hide&quot;; showTocToggle(); } &lt;/script&gt;
&lt;a name=&quot;Conferencias_y_taller_de_Forum_Nokia_en_Campus_Party_M.C3.A9xico&quot; id=&quot;Conferencias_y_taller_de_Forum_Nokia_en_Campus_Party_M.C3.A9xico&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt; &lt;b&gt;Conferencias y taller de Forum Nokia en Campus Party México&lt;/b&gt; &lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;English translation below
&lt;/p&gt;&lt;p&gt;Participa en las conferencias y talleres de Forum Nokia en Campus Party México.  Conoce la forma más fácil de hacer aplicaciones móviles para distribuir en el Ovi Store y gana muchos premios.  Participa en nuestro concurso de Widgets y &lt;b&gt;podrás ganar un espectacular N97, 5530 o un 6790&lt;/b&gt;.  Las instrucciones se darán en el taller.
&lt;/p&gt;&lt;p&gt;&lt;br /&gt;
&lt;b&gt; CONFERENCIA Web 2.0, creando el WOW en el teléfono celular&lt;/b&gt;
&lt;/p&gt;&lt;p&gt;Fecha:  vie, 13 de noviembre, 17:00 – 18:00
&lt;/p&gt;&lt;p&gt;Lugar:  Auditorio de Desarrolladores 
&lt;/p&gt;&lt;p&gt;&lt;b&gt;Descripción:&lt;/b&gt;  En esta charla, el experto en tecnología Rubén Rincón nos hablará sobre el cambio de paradigma en desarrollo de aplicaciones móviles y sobre cómo cualquier persona que pueda crear una página HTML puede hacer una aplicación 100% funcional en un teléfono celular.
&lt;/p&gt;&lt;p&gt;&lt;br /&gt;
&lt;b&gt;TALLER Haciendo aplicaciones móviles con Javascript y HTML&lt;/b&gt; 
&lt;/p&gt;&lt;p&gt;Fecha:  sáb, 14 de noviembre, 09:00 – 10:00
&lt;/p&gt;&lt;p&gt;Lugar:  Auditorio Desarrolladores 
&lt;/p&gt;&lt;p&gt;&lt;b&gt;Descripción:&lt;/b&gt;  En este taller, expertos en tecnología de Nokia mostrarán cómo hacer aplicaciones que corran en dispositivos móviles con tecnologías Web2.0. Además se mostrará cómo hacer uso de recursos del teléfono como el acelerómetro y el GPS. Las instrucciones para descargar las herramientas de trabajo aparecen en la parte de abajo, en el apartado &quot;Instalando las herramientas para el taller y concurso&quot; 
Al finalizar el taller, se darán las instrucciones del concurso de Widgets que deben ser entregados el último día del evento (Lunes 16 Nov). Los 3 mejores Widgets recibirán como premio teléfonos Nokia.
&lt;/p&gt;&lt;p&gt;&lt;br /&gt;
&lt;/p&gt;&lt;p&gt;&lt;b&gt; CONFERENCIA Qt, revolucionando las plataformas móviles&lt;/b&gt;
&lt;/p&gt;&lt;p&gt;Fecha:  dom, 15 de noviembre, 14:00 – 15:00
&lt;/p&gt;&lt;p&gt;Lugar:  Auditorio Desarrolladores
&lt;/p&gt;&lt;p&gt;&lt;b&gt;Descripción:&lt;/b&gt;  En esta charla, el experto en tecnología Daniel Rocha nos hablará sobre Qt, un framework de desarrollo open source que está revolucionando la forma de hacer aplicaciones para dispositivos móviles por su facilidad en cuanto al proceso de desarrollo y la capacidad de hacer aplicaciones fuertemente integradas al dispositivo móvil.
&lt;/p&gt;&lt;p&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;a name=&quot;Instalando_las_herramientas_para_el_taller_y_concurso&quot; id=&quot;Instalando_las_herramientas_para_el_taller_y_concurso&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt; &lt;b&gt;Instalando las herramientas para el taller y concurso&lt;/b&gt; &lt;/span&gt;&lt;/h2&gt;
&lt;ul&gt;&lt;li&gt; Paso 1:  Descargar Aptana Studio
&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;&lt;a href=&quot;http://www.aptana.org/&quot; class=&quot;external text&quot; title=&quot;http://www.aptana.org/&quot; rel=&quot;nofollow&quot;&gt;Aptana Studio&lt;/a&gt;
&lt;/p&gt;
&lt;ul&gt;&lt;li&gt; Paso 2:  Descarga el plugin de Aptana para WRT
&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;&lt;a href=&quot;http://www.forum.nokia.com/info/sw.nokia.com/id/00d62bd8-4214-4c86-b608-5f11b94dad54/Nokia_WRT_Plug_in_for_Aptana_Studio.html&quot; class=&quot;external text&quot; title=&quot;http://www.forum.nokia.com/info/sw.nokia.com/id/00d62bd8-4214-4c86-b608-5f11b94dad54/Nokia_WRT_Plug_in_for_Aptana_Studio.html&quot; rel=&quot;nofollow&quot;&gt;Plugin de aptana para WRT&lt;/a&gt;
&lt;/p&gt;
&lt;ul&gt;&lt;li&gt; Paso 3:  Descarga el paquete de Platform Services 2.0
&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;&lt;a href=&quot;http://www.forum.nokia.com/info/sw.nokia.com/id/cccea743-f4e5-418f-ad9f-0a7a7f50868f/Nokia_Platform_Services_2_0.html&quot; class=&quot;external text&quot; title=&quot;http://www.forum.nokia.com/info/sw.nokia.com/id/cccea743-f4e5-418f-ad9f-0a7a7f50868f/Nokia_Platform_Services_2_0.html&quot; rel=&quot;nofollow&quot;&gt;Platform Services 2.0&lt;/a&gt;
&lt;/p&gt;&lt;p&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;a name=&quot;.2ATaller&quot; id=&quot;.2ATaller&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt; &lt;b&gt;*Taller&lt;/b&gt; &lt;/span&gt;&lt;/h2&gt;
&lt;ul&gt;&lt;li&gt; Primero es necesario descargar el software como aparece en el anterior apartado.
&lt;/li&gt;&lt;/ul&gt;
&lt;ul&gt;&lt;li&gt; Puedes descargar aquí el taller
&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;&lt;a href=&quot;/index.php/File:Taller_campus_party.zip&quot; title=&quot;File:Taller campus party.zip&quot;&gt;File:Taller campus party.zip&lt;/a&gt;
&lt;/p&gt;
&lt;ul&gt;&lt;li&gt; Se debe importar el proyecto
&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;File-&amp;gt;Import-&amp;gt;Existing Projects into workspace    
Y seleccionar la carpeta en donde está el archivo .project   = Taller Widgets Nov 09\Proyecto Aptana\WidgetContactos
&lt;/p&gt;
&lt;ul&gt;&lt;li&gt; Una vez cargado el proyecto, se puede ir punto por punto del taller:  son 9 puntos para ir paso a paso
&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;Los puntos 1-2 están en el archivo HTML,
Los puntos 3-8 están en el archivo .js,
El punto 9 está en el archivo .css.
&lt;/p&gt;&lt;p&gt;Algunos puntos son sólo demostrativos.  Cuando aparecen letras de la forma a. b. c.  Significa que los asistentes deben hacer algo para continuar
&lt;/p&gt;&lt;p&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;a name=&quot;Competencia&quot; id=&quot;Competencia&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt; Competencia &lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;Debes realizar un Widget que utilice &lt;b&gt;platforms services&lt;/b&gt;, puede conectarse a internet o ser únicamente una aplicación del teléfono.
Puedes utilizar ejemplos de la página de Forum Nokia como referencia y puedes basarte en el taller.
Debes enviar la aplicación a &lt;b&gt;ruben.rincon@nokia.com  ó daniel.rocha@nokia.com&lt;/b&gt;  hasta el lunes 16 a las 9:00 AM.
La premiación se hará en el auditorio de desarrolladores a las 12:00M  el día Lunes.
Nos pueden contactar en caso de cualquier pregunta.
&lt;/p&gt;&lt;p&gt;Buena Suerte
&lt;/p&gt;&lt;p&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;hr /&gt;
&lt;p&gt;&lt;br /&gt;
English Translation using &lt;a href=&quot;http://translate.google.co.uk&quot; class=&quot;external text&quot; title=&quot;http://translate.google.co.uk&quot; rel=&quot;nofollow&quot;&gt;Google Translation&lt;/a&gt; to  English
&lt;/p&gt;
&lt;pre&gt; Conferences and workshops from Forum Nokia in Mexico Campus Party
&lt;/pre&gt;
&lt;p&gt;Participate in conferences and workshops at Campus Party Forum Nokia Mexico. Know the easiest way to distribute mobile applications for the Ovi Store and win many awards. Enter our contest Widgets and you could win a spectacular N97, 5530 or 6790. The instructions are given in the workshop.
&lt;/p&gt;&lt;p&gt;&lt;br /&gt;
Web 2.0 Conference, creating the WOW in cell phone
&lt;/p&gt;&lt;p&gt;Date: Fri, 13 November, 17:00 to 18:00
&lt;/p&gt;&lt;p&gt;Venue: Auditorium Developers
&lt;/p&gt;&lt;p&gt;Description: In this talk, Ruben Rincon technology expert will talk about the paradigm shift in mobile application development and how anyone can create an HTML page can make your application 100% functional in a cell phone.
&lt;/p&gt;&lt;p&gt;&lt;br /&gt;
WORKSHOP Making mobile applications with JavaScript and HTML
&lt;/p&gt;&lt;p&gt;Date: Sat, 14 November, 09:00 - 10:00
&lt;/p&gt;&lt;p&gt;Venue: Auditorium Developers
&lt;/p&gt;&lt;p&gt;Description: In this workshop, Nokia's technology experts will demonstrate how to build applications that run on mobile devices with Web 2.0 technologies. Furthermore we show how to use your phone's resources as the accelerometer and GPS. Instructions for downloading tools work appear in the bottom, under &quot;Installing the tools for the workshop and contest&quot; the end of the workshop, will be instructed Widgets contest to be delivered on the last day of the event (Monday, 16 Nov). The 3 best will be awarded Widgets Nokia phones.
&lt;/p&gt;&lt;p&gt;&lt;br /&gt;
CONFERENCE Qt revolutionizing mobile platforms
&lt;/p&gt;&lt;p&gt;Date: Sun, 15 November, 14:00 to 15:00
&lt;/p&gt;&lt;p&gt;Venue: Auditorium Developers
&lt;/p&gt;&lt;p&gt;Description: In this talk, technology expert Daniel Rocha will speak on Qt, an open source development framework that is revolutionizing the way to make applications for mobile devices for ease about the process of development and the ability to make applications highly integrated into the mobile device.
&lt;/p&gt;&lt;p&gt;&lt;br /&gt;
[edit] Installing the tools for the workshop and contest
&lt;/p&gt;
&lt;pre&gt;    Step 1: Download Aptana Studio
&lt;/pre&gt;
&lt;p&gt;Aptana Studio
&lt;/p&gt;
&lt;pre&gt;    Step 2: Download the plugin for Aptana WRT
&lt;/pre&gt;
&lt;p&gt;Aptana Plugin for WRT
&lt;/p&gt;
&lt;pre&gt;    Step 3: Download the package 2.0 Platform Services
&lt;/pre&gt;
&lt;p&gt;Platform Services 2.0
&lt;/p&gt;&lt;p&gt;&lt;br /&gt;
Good luck
&lt;/p&gt;</description>
			<pubDate>Sun, 15 Nov 2009 08:47:46 GMT</pubDate>			<dc:creator>Kiran10182</dc:creator>			<comments>http://wiki.forum.nokia.com/index.php/Talk:Campus_party_mexico</comments>		</item>
		<item>
			<title>How to use USB cable connection in Java ME</title>
			<link>http://wiki.forum.nokia.com/index.php/How_to_use_USB_cable_connection_in_Java_ME</link>
			<description>&lt;table id=&quot;toc&quot; class=&quot;toc&quot; summary=&quot;Contents&quot;&gt;&lt;tr&gt;&lt;td&gt;&lt;div id=&quot;toctitle&quot;&gt;&lt;h2&gt;Contents&lt;/h2&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li class=&quot;toclevel-1&quot;&gt;&lt;a href=&quot;#Overview&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;1&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Overview&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-1&quot;&gt;&lt;a href=&quot;#How_to_create_CommConnection&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;2&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;How to create CommConnection&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-1&quot;&gt;&lt;a href=&quot;#Instructions&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;3&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Instructions&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-1&quot;&gt;&lt;a href=&quot;#USBTest_MIDlet&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;4&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;USBTest MIDlet&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-1&quot;&gt;&lt;a href=&quot;#Source_code:_openUSBConnection.28.29_method_in_USBTest.java&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;5&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Source code: openUSBConnection() method in USBTest.java&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-1&quot;&gt;&lt;a href=&quot;#Source_code:_listenUSB.28.29_method_in_USBTest.java&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;6&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Source code: listenUSB() method in USBTest.java&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-1&quot;&gt;&lt;a href=&quot;#Example_application&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;7&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Example application&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-1&quot;&gt;&lt;a href=&quot;#See_also&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;8&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;See also&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;script type=&quot;text/javascript&quot;&gt; if (window.showTocToggle) { var tocShowText = &quot;show&quot;; var tocHideText = &quot;hide&quot;; showTocToggle(); } &lt;/script&gt;
&lt;a name=&quot;Overview&quot; id=&quot;Overview&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;Overview&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;This article updates the existing Forum Nokia document &lt;a href=&quot;http://www.forum.nokia.com/info/sw.nokia.com/id/2a2ec089-6f2e-47cb-a150-d11a94eb80ad/MIDP_Using_Cable_Connection_In_Nokia_Devices_v1_0.zip.html&quot; class=&quot;external text&quot; title=&quot;http://www.forum.nokia.com/info/sw.nokia.com/id/2a2ec089-6f2e-47cb-a150-d11a94eb80ad/MIDP_Using_Cable_Connection_In_Nokia_Devices_v1_0.zip.html&quot; rel=&quot;nofollow&quot;&gt;MIDP: Using Cable Connection In Nokia Devices&lt;/a&gt;. The document explains how to use CommConnection over cable in Nokia devices. There are differences in devices and their port numbers, and also on PC side. In practice using USB connection between PC and mobile device might need some testing. 
&lt;/p&gt;&lt;p&gt;&lt;br /&gt; 
&lt;/p&gt;
&lt;a name=&quot;How_to_create_CommConnection&quot; id=&quot;How_to_create_CommConnection&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;How to create CommConnection&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;After creation of the Forum Nokia document there have been changes in connecting phone to PC. In older models CommConnection was created for example like this:
&lt;/p&gt;
&lt;pre class=&quot;java&quot; style=&quot;font-family:monospace;&quot;&gt;&lt;span style=&quot;color: #666666; font-style: italic;&quot;&gt;//Opens a connection on port &amp;quot;com0&amp;quot;.&lt;/span&gt;&lt;br /&gt;CommConnection comm &lt;span style=&quot;color: #339933;&quot;&gt;=&lt;/span&gt; &lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;CommConnection&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;Connector.&lt;span style=&quot;color: #006633;&quot;&gt;open&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #0000ff;&quot;&gt;&amp;quot;comm:com0&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;/pre&gt;
&lt;p&gt;In the newer devices the connection is opened for example like this:
&lt;/p&gt;
&lt;pre class=&quot;java&quot; style=&quot;font-family:monospace;&quot;&gt;&lt;span style=&quot;color: #666666; font-style: italic;&quot;&gt;//Opens a connection on port &amp;quot;USB2&amp;quot;. Defines USB interface&lt;/span&gt;&lt;br /&gt;CommConnection comm &lt;span style=&quot;color: #339933;&quot;&gt;=&lt;/span&gt; &lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;CommConnection&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;Connector.&lt;span style=&quot;color: #006633;&quot;&gt;open&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #0000ff;&quot;&gt;&amp;quot;comm:USB2&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;/pre&gt;
&lt;p&gt;The example MIDlet has been tested in Nokia N97 device, which is S60 5th Edition device. There might be differences in the port names in different devices. Ports can be queried from the system with:
&lt;/p&gt;
&lt;pre class=&quot;java&quot; style=&quot;font-family:monospace;&quot;&gt;&lt;a href=&quot;http://www.google.com/search?hl=en&amp;amp;q=allinurl%3Astring+java.sun.com&amp;amp;btnI=I%27m%20Feeling%20Lucky&quot;&gt;&lt;span style=&quot;color: #003399;&quot;&gt;String&lt;/span&gt;&lt;/a&gt; ports &lt;span style=&quot;color: #339933;&quot;&gt;=&lt;/span&gt; &lt;a href=&quot;http://www.google.com/search?hl=en&amp;amp;q=allinurl%3Asystem+java.sun.com&amp;amp;btnI=I%27m%20Feeling%20Lucky&quot;&gt;&lt;span style=&quot;color: #003399;&quot;&gt;System&lt;/span&gt;&lt;/a&gt;.&lt;span style=&quot;color: #006633;&quot;&gt;getProperty&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #0000ff;&quot;&gt;&amp;quot;microedition.commports&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;/pre&gt;
&lt;p&gt;In case of N97 the system property returns a long list of COM, IR, USB and BT ports. There are two USB ports: USB1 and USB2. If USB1 is used in Connector.open() method, IOException is thrown with message &quot;Access denied&quot;. The connection can be successfully opened when USB2 is used. Note also that if some port is in other use (other applications in the device, system usage), it cannot be accessed through CommConnection although it is listed by the system property. 
&lt;/p&gt;&lt;p&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;a name=&quot;Instructions&quot; id=&quot;Instructions&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;Instructions&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;Here are some practical instructions for creating CommConnection between Nokia N97 and PC:
&lt;/p&gt;
&lt;ul&gt;&lt;li&gt; For simple testing HyperTerminal (included with most of the Windows versions) or similar programs can be used
&lt;/li&gt;&lt;li&gt; Connect your phone by using the USB cable (model CA-101 in case of N97) with the PC
&lt;ul&gt;&lt;li&gt; Select &quot;PC Suite&quot; as USB mode
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;/ul&gt;
&lt;ul&gt;&lt;li&gt; Start the HyperTerminal application and create a new connection
&lt;ul&gt;&lt;li&gt; Change &quot;Connect using:&quot; field to have correct COM port (in this case COM5 was used)
&lt;/li&gt;&lt;li&gt; The correct port can be found from Windows Control Panel -&amp;gt; System -&amp;gt; Device Manager -&amp;gt; Ports (COM &amp;amp; LPT)
&lt;/li&gt;&lt;li&gt; There is no need to change the port settings, accept them -&amp;gt; connection is made between the PC and the phone
&lt;/li&gt;&lt;li&gt; It might be a good idea to set &quot;Echo typed characters locally&quot; on in HyperTerminal from here: File -&amp;gt; Properties -&amp;gt; Settings -&amp;gt; &quot;Ascii Setup...&quot; 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;&lt;br /&gt;
&lt;a href=&quot;/index.php/File:USBTest.png&quot; class=&quot;image&quot; title=&quot;Connection creation in HyperTerminal&quot;&gt;&lt;img alt=&quot;Connection creation in HyperTerminal&quot; src=&quot;http://www.forum.nokia.com/piazza/wiki/images/4/45/USBTest.png&quot; width=&quot;332&quot; height=&quot;292&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;
&lt;a href=&quot;/index.php/File:USBTest_2.png&quot; class=&quot;image&quot; title=&quot;Selecting the correct COM port in HyperTerminal&quot;&gt;&lt;img alt=&quot;Selecting the correct COM port in HyperTerminal&quot; src=&quot;http://www.forum.nokia.com/piazza/wiki/images/f/f5/USBTest_2.png&quot; width=&quot;296&quot; height=&quot;293&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;
&lt;ul&gt;&lt;li&gt; Install the USBTest MIDlet to your phone and launch it
&lt;ul&gt;&lt;li&gt; When MIDlet is started, it automatically opens the connection to PC
&lt;/li&gt;&lt;li&gt; You should see &quot;Hello from USBTest MIDlet! Anybody there at USB?&quot; message on the HyperTerminal screen
&lt;/li&gt;&lt;li&gt; Select &quot;Start&quot; command for starting the USB port listening
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;/ul&gt;
&lt;ul&gt;&lt;li&gt; Now write something in HyperTerminal window and press enter
&lt;ul&gt;&lt;li&gt; The message should be shown on the phone's screen
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;&lt;br /&gt;
&lt;a href=&quot;/index.php/File:USBTest_5.png&quot; class=&quot;image&quot; title=&quot;Message from the phone has arrived and response has been sent&quot;&gt;&lt;img alt=&quot;Message from the phone has arrived and response has been sent&quot; src=&quot;http://www.forum.nokia.com/piazza/wiki/images/d/d4/USBTest_5.png&quot; width=&quot;737&quot; height=&quot;267&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;
&lt;a name=&quot;USBTest_MIDlet&quot; id=&quot;USBTest_MIDlet&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;USBTest MIDlet&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;The USBTest MIDlet demonstrates, how a MIDlet can send and receive data between a phone and a PC by using USB cable and standard MIDP CommConnection. The whole NetBeans project with the MIDlet jad and jar files and the source code are available below. Two most important methods are also shown below. The openUSBConnection() method opens the CommConnection to the PC and listenUSB() method takes care of listening the data traffic.
&lt;/p&gt;&lt;p&gt;The image below shows the MIDlet screen in Nokia N97 device after it has received a message from the connected PC.
&lt;/p&gt;&lt;p&gt;&lt;br /&gt;
&lt;a href=&quot;/index.php/File:USBTest_6.png&quot; class=&quot;image&quot; title=&quot;USBTest MIDlet running in Nokia N97&quot;&gt;&lt;img alt=&quot;USBTest MIDlet running in Nokia N97&quot; src=&quot;http://www.forum.nokia.com/piazza/wiki/images/5/5e/USBTest_6.png&quot; width=&quot;368&quot; height=&quot;667&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;
&lt;a name=&quot;Source_code:_openUSBConnection.28.29_method_in_USBTest.java&quot; id=&quot;Source_code:_openUSBConnection.28.29_method_in_USBTest.java&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;Source code: openUSBConnection() method in USBTest.java&lt;/span&gt;&lt;/h2&gt;
&lt;pre class=&quot;java&quot; style=&quot;font-family:monospace;&quot;&gt;&lt;span style=&quot;color: #008000; font-style: italic; font-weight: bold;&quot;&gt;/**&lt;br /&gt; * This method checks by using the system property &amp;quot;microedition.commports&amp;quot;, that&lt;br /&gt; * there is a USB port in the device. If found, CommConnection is opened to &lt;br /&gt; * remote device (PC) by using the USB port. A message is sent to the remote &lt;br /&gt; * device for indicating the successful connection.&lt;br /&gt; */&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;public&lt;/span&gt; &lt;span style=&quot;color: #000066; font-weight: bold;&quot;&gt;void&lt;/span&gt; openUSBConnection&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #009900;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;	&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;try&lt;/span&gt; &lt;span style=&quot;color: #009900;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;		&lt;a href=&quot;http://www.google.com/search?hl=en&amp;amp;q=allinurl%3Astring+java.sun.com&amp;amp;btnI=I%27m%20Feeling%20Lucky&quot;&gt;&lt;span style=&quot;color: #003399;&quot;&gt;String&lt;/span&gt;&lt;/a&gt; ports &lt;span style=&quot;color: #339933;&quot;&gt;=&lt;/span&gt; &lt;a href=&quot;http://www.google.com/search?hl=en&amp;amp;q=allinurl%3Asystem+java.sun.com&amp;amp;btnI=I%27m%20Feeling%20Lucky&quot;&gt;&lt;span style=&quot;color: #003399;&quot;&gt;System&lt;/span&gt;&lt;/a&gt;.&lt;span style=&quot;color: #006633;&quot;&gt;getProperty&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #0000ff;&quot;&gt;&amp;quot;microedition.commports&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;		Tracer.&lt;span style=&quot;color: #006633;&quot;&gt;outln&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #0000ff;&quot;&gt;&amp;quot;got ports=&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;+&lt;/span&gt;ports, textbox&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;		&lt;span style=&quot;color: #000066; font-weight: bold;&quot;&gt;int&lt;/span&gt; index &lt;span style=&quot;color: #339933;&quot;&gt;=&lt;/span&gt; ports.&lt;span style=&quot;color: #006633;&quot;&gt;indexOf&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #0000ff;&quot;&gt;&amp;quot;USB&amp;quot;&lt;/span&gt;, 0&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;		&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;if&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;index &lt;span style=&quot;color: #339933;&quot;&gt;==&lt;/span&gt; &lt;span style=&quot;color: #339933;&quot;&gt;-&lt;/span&gt;1&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #009900;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;			&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;throw&lt;/span&gt; &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;new&lt;/span&gt; &lt;a href=&quot;http://www.google.com/search?hl=en&amp;amp;q=allinurl%3Aruntimeexception+java.sun.com&amp;amp;btnI=I%27m%20Feeling%20Lucky&quot;&gt;&lt;span style=&quot;color: #003399;&quot;&gt;RuntimeException&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #0000ff;&quot;&gt;&amp;quot;No USB port found in the device&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;		&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;		comm &lt;span style=&quot;color: #339933;&quot;&gt;=&lt;/span&gt; &lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;CommConnection&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;Connector.&lt;span style=&quot;color: #006633;&quot;&gt;open&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #0000ff;&quot;&gt;&amp;quot;comm:USB2&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;		&lt;span style=&quot;color: #000066; font-weight: bold;&quot;&gt;int&lt;/span&gt; orgBaudRate &lt;span style=&quot;color: #339933;&quot;&gt;=&lt;/span&gt; comm.&lt;span style=&quot;color: #006633;&quot;&gt;getBaudRate&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;		os &lt;span style=&quot;color: #339933;&quot;&gt;=&lt;/span&gt; comm.&lt;span style=&quot;color: #006633;&quot;&gt;openOutputStream&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;		&lt;a href=&quot;http://www.google.com/search?hl=en&amp;amp;q=allinurl%3Astring+java.sun.com&amp;amp;btnI=I%27m%20Feeling%20Lucky&quot;&gt;&lt;span style=&quot;color: #003399;&quot;&gt;String&lt;/span&gt;&lt;/a&gt; text &lt;span style=&quot;color: #339933;&quot;&gt;=&lt;/span&gt; &lt;span style=&quot;color: #0000ff;&quot;&gt;&amp;quot;Hello from USBTest MIDlet! Anybody there at USB?&lt;span style=&quot;color: #000099; font-weight: bold;&quot;&gt;\r&lt;/span&gt;&lt;span style=&quot;color: #000099; font-weight: bold;&quot;&gt;\n&lt;/span&gt;&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;		os.&lt;span style=&quot;color: #006633;&quot;&gt;write&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;text.&lt;span style=&quot;color: #006633;&quot;&gt;getBytes&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;		os.&lt;span style=&quot;color: #006633;&quot;&gt;flush&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;		is &lt;span style=&quot;color: #339933;&quot;&gt;=&lt;/span&gt; comm.&lt;span style=&quot;color: #006633;&quot;&gt;openInputStream&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;	&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#125;&lt;/span&gt; &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;catch&lt;/span&gt; &lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;a href=&quot;http://www.google.com/search?hl=en&amp;amp;q=allinurl%3Aioexception+java.sun.com&amp;amp;btnI=I%27m%20Feeling%20Lucky&quot;&gt;&lt;span style=&quot;color: #003399;&quot;&gt;IOException&lt;/span&gt;&lt;/a&gt; e&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #009900;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;		Tracer.&lt;span style=&quot;color: #006633;&quot;&gt;outln&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #0000ff;&quot;&gt;&amp;quot;IOException: &amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #339933;&quot;&gt;+&lt;/span&gt; e.&lt;span style=&quot;color: #006633;&quot;&gt;getMessage&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;, textbox&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;		&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;return&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;	&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;/pre&gt;
&lt;a name=&quot;Source_code:_listenUSB.28.29_method_in_USBTest.java&quot; id=&quot;Source_code:_listenUSB.28.29_method_in_USBTest.java&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;Source code: listenUSB() method in USBTest.java&lt;/span&gt;&lt;/h2&gt;
&lt;pre class=&quot;java&quot; style=&quot;font-family:monospace;&quot;&gt;&lt;span style=&quot;color: #008000; font-style: italic; font-weight: bold;&quot;&gt;/**&lt;br /&gt; * This method listens to CommConnection traffic. When a message (a line of&lt;br /&gt; * text with enter pressed in the end) is received, it is shown in the TextBox.&lt;br /&gt; * If the message is &amp;quot;EXIT + enter key&amp;quot;, the streams and the connection are &lt;br /&gt; * closed.&lt;br /&gt; */&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;public&lt;/span&gt; &lt;span style=&quot;color: #000066; font-weight: bold;&quot;&gt;void&lt;/span&gt; listenUSB&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #009900;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;	Tracer.&lt;span style=&quot;color: #006633;&quot;&gt;outln&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #0000ff;&quot;&gt;&amp;quot;Listening USB port...&amp;quot;&lt;/span&gt;, textbox&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;	&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;try&lt;/span&gt; &lt;span style=&quot;color: #009900;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;		&lt;span style=&quot;color: #000066; font-weight: bold;&quot;&gt;byte&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#93;&lt;/span&gt; buffer &lt;span style=&quot;color: #339933;&quot;&gt;=&lt;/span&gt; &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;new&lt;/span&gt; &lt;span style=&quot;color: #000066; font-weight: bold;&quot;&gt;byte&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#91;&lt;/span&gt;500&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#93;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;		&lt;a href=&quot;http://www.google.com/search?hl=en&amp;amp;q=allinurl%3Astringbuffer+java.sun.com&amp;amp;btnI=I%27m%20Feeling%20Lucky&quot;&gt;&lt;span style=&quot;color: #003399;&quot;&gt;StringBuffer&lt;/span&gt;&lt;/a&gt; message &lt;span style=&quot;color: #339933;&quot;&gt;=&lt;/span&gt; &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;new&lt;/span&gt; &lt;a href=&quot;http://www.google.com/search?hl=en&amp;amp;q=allinurl%3Astringbuffer+java.sun.com&amp;amp;btnI=I%27m%20Feeling%20Lucky&quot;&gt;&lt;span style=&quot;color: #003399;&quot;&gt;StringBuffer&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;		&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;for&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #000066; font-weight: bold;&quot;&gt;int&lt;/span&gt; i &lt;span style=&quot;color: #339933;&quot;&gt;=&lt;/span&gt; &lt;span style=&quot;color: #cc66cc;&quot;&gt;0&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt; i &lt;span style=&quot;color: #339933;&quot;&gt;&amp;lt;&lt;/span&gt; &lt;span style=&quot;color: #cc66cc;&quot;&gt;500&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #009900;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;			&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;try&lt;/span&gt; &lt;span style=&quot;color: #009900;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;				&lt;a href=&quot;http://www.google.com/search?hl=en&amp;amp;q=allinurl%3Athread+java.sun.com&amp;amp;btnI=I%27m%20Feeling%20Lucky&quot;&gt;&lt;span style=&quot;color: #003399;&quot;&gt;Thread&lt;/span&gt;&lt;/a&gt;.&lt;span style=&quot;color: #006633;&quot;&gt;sleep&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;10&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;			&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;			&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;catch&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;a href=&quot;http://www.google.com/search?hl=en&amp;amp;q=allinurl%3Ainterruptedexception+java.sun.com&amp;amp;btnI=I%27m%20Feeling%20Lucky&quot;&gt;&lt;span style=&quot;color: #003399;&quot;&gt;InterruptedException&lt;/span&gt;&lt;/a&gt; ie&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #009900;&quot;&gt;&amp;#123;&lt;/span&gt; &lt;span style=&quot;color: #009900;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;			&lt;span style=&quot;color: #000066; font-weight: bold;&quot;&gt;int&lt;/span&gt; available &lt;span style=&quot;color: #339933;&quot;&gt;=&lt;/span&gt; is.&lt;span style=&quot;color: #006633;&quot;&gt;available&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;			&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;if&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;available &lt;span style=&quot;color: #339933;&quot;&gt;==&lt;/span&gt; 0&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #009900;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;				&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;continue&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;			&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;			&lt;a href=&quot;http://www.google.com/search?hl=en&amp;amp;q=allinurl%3Astring+java.sun.com&amp;amp;btnI=I%27m%20Feeling%20Lucky&quot;&gt;&lt;span style=&quot;color: #003399;&quot;&gt;String&lt;/span&gt;&lt;/a&gt; outText &lt;span style=&quot;color: #339933;&quot;&gt;=&lt;/span&gt; &lt;span style=&quot;color: #0000ff;&quot;&gt;&amp;quot;&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;			&lt;span style=&quot;color: #000066; font-weight: bold;&quot;&gt;int&lt;/span&gt; count &lt;span style=&quot;color: #339933;&quot;&gt;=&lt;/span&gt; is.&lt;span style=&quot;color: #006633;&quot;&gt;read&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;buffer, i, available&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;			&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;if&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;count &lt;span style=&quot;color: #339933;&quot;&gt;&amp;gt;&lt;/span&gt; 0&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #009900;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;				outText &lt;span style=&quot;color: #339933;&quot;&gt;=&lt;/span&gt; &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;new&lt;/span&gt; &lt;a href=&quot;http://www.google.com/search?hl=en&amp;amp;q=allinurl%3Astring+java.sun.com&amp;amp;btnI=I%27m%20Feeling%20Lucky&quot;&gt;&lt;span style=&quot;color: #003399;&quot;&gt;String&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;buffer, i, count&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;				i &lt;span style=&quot;color: #339933;&quot;&gt;=&lt;/span&gt; i &lt;span style=&quot;color: #339933;&quot;&gt;+&lt;/span&gt; count&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;				message.&lt;span style=&quot;color: #006633;&quot;&gt;append&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;outText&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;				&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;if&lt;/span&gt; &lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;outText.&lt;span style=&quot;color: #006633;&quot;&gt;endsWith&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #0000ff;&quot;&gt;&amp;quot;&lt;span style=&quot;color: #000099; font-weight: bold;&quot;&gt;\n&lt;/span&gt;&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #009900;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;					&lt;a href=&quot;http://www.google.com/search?hl=en&amp;amp;q=allinurl%3Astring+java.sun.com&amp;amp;btnI=I%27m%20Feeling%20Lucky&quot;&gt;&lt;span style=&quot;color: #003399;&quot;&gt;String&lt;/span&gt;&lt;/a&gt; messageString &lt;span style=&quot;color: #339933;&quot;&gt;=&lt;/span&gt; message.&lt;span style=&quot;color: #006633;&quot;&gt;toString&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;					Tracer.&lt;span style=&quot;color: #006633;&quot;&gt;outln&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #0000ff;&quot;&gt;&amp;quot;Message: &amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #339933;&quot;&gt;+&lt;/span&gt; messageString, textbox&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;					message.&lt;span style=&quot;color: #006633;&quot;&gt;delete&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;0, message.&lt;span style=&quot;color: #006633;&quot;&gt;length&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;				&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;			&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;			&lt;a href=&quot;http://www.google.com/search?hl=en&amp;amp;q=allinurl%3Astring+java.sun.com&amp;amp;btnI=I%27m%20Feeling%20Lucky&quot;&gt;&lt;span style=&quot;color: #003399;&quot;&gt;String&lt;/span&gt;&lt;/a&gt; total &lt;span style=&quot;color: #339933;&quot;&gt;=&lt;/span&gt; &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;new&lt;/span&gt; &lt;a href=&quot;http://www.google.com/search?hl=en&amp;amp;q=allinurl%3Astring+java.sun.com&amp;amp;btnI=I%27m%20Feeling%20Lucky&quot;&gt;&lt;span style=&quot;color: #003399;&quot;&gt;String&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;buffer,0,i&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;			&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;if&lt;/span&gt; &lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;i &lt;span style=&quot;color: #339933;&quot;&gt;&amp;gt;&lt;/span&gt; &lt;span style=&quot;color: #cc66cc;&quot;&gt;3&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #339933;&quot;&gt;&amp;amp;&amp;amp;&lt;/span&gt; &lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;-&lt;/span&gt;&lt;span style=&quot;color: #cc66cc;&quot;&gt;1&lt;/span&gt; &lt;span style=&quot;color: #339933;&quot;&gt;!=&lt;/span&gt; total.&lt;span style=&quot;color: #006633;&quot;&gt;indexOf&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #0000ff;&quot;&gt;&amp;quot;EXIT&lt;span style=&quot;color: #000099; font-weight: bold;&quot;&gt;\r&lt;/span&gt;&lt;span style=&quot;color: #000099; font-weight: bold;&quot;&gt;\n&lt;/span&gt;&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #009900;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;				Tracer.&lt;span style=&quot;color: #006633;&quot;&gt;outln&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #0000ff;&quot;&gt;&amp;quot;Closing...&amp;quot;&lt;/span&gt;, textbox&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;				&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;break&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;			&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;		&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;		os.&lt;span style=&quot;color: #006633;&quot;&gt;close&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;		is.&lt;span style=&quot;color: #006633;&quot;&gt;close&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;		comm.&lt;span style=&quot;color: #006633;&quot;&gt;close&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;	&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;	&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;catch&lt;/span&gt; &lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;a href=&quot;http://www.google.com/search?hl=en&amp;amp;q=allinurl%3Aioexception+java.sun.com&amp;amp;btnI=I%27m%20Feeling%20Lucky&quot;&gt;&lt;span style=&quot;color: #003399;&quot;&gt;IOException&lt;/span&gt;&lt;/a&gt; ioe&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #009900;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;		Tracer.&lt;span style=&quot;color: #006633;&quot;&gt;outln&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #0000ff;&quot;&gt;&amp;quot;IOException: &amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #339933;&quot;&gt;+&lt;/span&gt; ioe.&lt;span style=&quot;color: #006633;&quot;&gt;getMessage&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;, textbox&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;	&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;	Tracer.&lt;span style=&quot;color: #006633;&quot;&gt;outln&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #0000ff;&quot;&gt;&amp;quot;SUCCEEDED.&amp;quot;&lt;/span&gt;, textbox&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;/pre&gt;
&lt;a name=&quot;Example_application&quot; id=&quot;Example_application&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;Example application&lt;/span&gt;&lt;/h2&gt;
&lt;ul&gt;&lt;li&gt; &lt;a href=&quot;http://www.forum.nokia.com/piazza/wiki/images/3/3b/USBTest.zip&quot; class=&quot;internal&quot; title=&quot;USBTest.zip&quot;&gt;USBTest.zip&lt;/a&gt; containing USBTest.jad and USBTest.jar
&lt;/li&gt;&lt;/ul&gt;
&lt;a name=&quot;See_also&quot; id=&quot;See_also&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;See also&lt;/span&gt;&lt;/h2&gt;
&lt;ul&gt;&lt;li&gt; &lt;a href=&quot;http://www.forum.nokia.com/info/sw.nokia.com/id/2a2ec089-6f2e-47cb-a150-d11a94eb80ad/MIDP_Using_Cable_Connection_In_Nokia_Devices_v1_0.zip.html&quot; class=&quot;external text&quot; title=&quot;http://www.forum.nokia.com/info/sw.nokia.com/id/2a2ec089-6f2e-47cb-a150-d11a94eb80ad/MIDP_Using_Cable_Connection_In_Nokia_Devices_v1_0.zip.html&quot; rel=&quot;nofollow&quot;&gt;MIDP: Using Cable Connection In Nokia Devices (With Example)&lt;/a&gt;
&lt;/li&gt;&lt;li&gt; &lt;a href=&quot;http://wiki.forum.nokia.com/index.php/KIJ000663_-_Using_CommConnection_with_COM_ports_from_MIDlets_on_S60_devices&quot; class=&quot;external text&quot; title=&quot;http://wiki.forum.nokia.com/index.php/KIJ000663_-_Using_CommConnection_with_COM_ports_from_MIDlets_on_S60_devices&quot; rel=&quot;nofollow&quot;&gt;KIJ000663 - Using CommConnection with COM ports from MIDlets on S60 devices&lt;/a&gt;
&lt;/li&gt;&lt;/ul&gt;
</description>
			<pubDate>Thu, 12 Nov 2009 12:14:09 GMT</pubDate>			<dc:creator>Thiagobrunoms</dc:creator>			<comments>http://wiki.forum.nokia.com/index.php/Talk:How_to_use_USB_cable_connection_in_Java_ME</comments>		</item>
		<item>
			<title>Bondi Widget porting example - standard Javascript</title>
			<link>http://wiki.forum.nokia.com/index.php/Bondi_Widget_porting_example_-_standard_Javascript</link>
			<description>&lt;p&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;table id=&quot;toc&quot; class=&quot;toc&quot; summary=&quot;Contents&quot;&gt;&lt;tr&gt;&lt;td&gt;&lt;div id=&quot;toctitle&quot;&gt;&lt;h2&gt;Contents&lt;/h2&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li class=&quot;toclevel-1&quot;&gt;&lt;a href=&quot;#Preface&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;1&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Preface&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-1&quot;&gt;&lt;a href=&quot;#1._Download_the_.wgt_package&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;2&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;1. Download the .wgt package&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-1&quot;&gt;&lt;a href=&quot;#2._Rename_and_unzip_the_Test_widget_archive&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;3&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;2. Rename and unzip the Test widget archive&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-1&quot;&gt;&lt;a href=&quot;#3._Create_info.plist_manifest_file&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;4&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;3. Create info.plist manifest file&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-1&quot;&gt;&lt;a href=&quot;#4._Packaging&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;5&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;4. Packaging&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-1&quot;&gt;&lt;a href=&quot;#5._Deploy&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;6&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;5. Deploy&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;script type=&quot;text/javascript&quot;&gt; if (window.showTocToggle) { var tocShowText = &quot;show&quot;; var tocHideText = &quot;hide&quot;; showTocToggle(); } &lt;/script&gt;
&lt;a name=&quot;Preface&quot; id=&quot;Preface&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt; Preface &lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;This is an example of porting a Bondi Widget to Nokia WRT using the guide found &lt;a href=&quot;/index.php/How_to_port_Bondi_Widgets_to_Nokia_WRT&quot; title=&quot;How to port Bondi Widgets to Nokia WRT&quot;&gt;here&lt;/a&gt;.  The example widget does not use Bondi API functions, only standard Javascript. The widget demonstrates different methods of passing variables to another HTML-page.
&lt;/p&gt;
&lt;a name=&quot;1._Download_the_.wgt_package&quot; id=&quot;1._Download_the_.wgt_package&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt; 1. Download the .wgt package &lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;The Test widget wgt package can be found by following this &lt;a href=&quot;http://bondi.webvm.net/test.wgt&quot; class=&quot;external text&quot; title=&quot;http://bondi.webvm.net/test.wgt&quot; rel=&quot;nofollow&quot;&gt;link&lt;/a&gt;. This porting example was written using the Test widget version 1.1.
&lt;/p&gt;
&lt;a name=&quot;2._Rename_and_unzip_the_Test_widget_archive&quot; id=&quot;2._Rename_and_unzip_the_Test_widget_archive&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt; 2. Rename and unzip the Test widget archive &lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;The archive needs to be unzipped to make modifications to its contents. First rename the file extension from *.wgt to *.zip. Then extract the zip archive.
&lt;/p&gt;
&lt;a name=&quot;3._Create_info.plist_manifest_file&quot; id=&quot;3._Create_info.plist_manifest_file&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt; 3. Create info.plist manifest file &lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;When installing a .wgz file the system looks for a manifest file called info.plist. The Bondi Widget equivalent is called config.xml.
&lt;/p&gt;&lt;p&gt;Here's how to use the Bondi Widget config.xml data to create the WRT manifest file:
&lt;/p&gt;
&lt;ol&gt;&lt;li&gt;Download and unzip this &lt;a href=&quot;http://www.forum.nokia.com/piazza/wiki/images/b/b0/Info.plist.zip&quot; class=&quot;internal&quot; title=&quot;Info.plist.zip&quot;&gt; info.plist&lt;/a&gt; template file and save it in the widget's root directory.
&lt;/li&gt;&lt;li&gt;Open the widget's config.xml file and find the &lt;tt&gt;&amp;lt;name&amp;gt;&lt;/tt&gt; element. Copy the text found within the element and paste it into the &lt;tt&gt;&amp;lt;string&amp;gt;&lt;/tt&gt; element under &lt;tt&gt;&amp;lt;key&amp;gt;DisplayName&amp;lt;/key&amp;gt;&lt;/tt&gt; element of the &lt;tt&gt;info.plist&lt;/tt&gt; file.&lt;pre class=&quot;text&quot; style=&quot;font-family:monospace;&quot;&gt;&amp;lt;key&amp;gt;DisplayName&amp;lt;/key&amp;gt;    &lt;br /&gt;&amp;lt;string&amp;gt;Test widget&amp;lt;/string&amp;gt;&lt;/pre&gt;
&lt;/li&gt;&lt;li&gt;The identifier of a Bondi widget can be found in the &lt;tt&gt;id&lt;/tt&gt; attribute of the &lt;tt&gt;&amp;lt;widget&amp;gt;&lt;/tt&gt; element in &lt;tt&gt;config.xml&lt;/tt&gt;. If the value is a URL, use the conventional WRT identifier form, which is the URL in reverse. Add the identifier to &lt;tt&gt;&amp;lt;string&amp;gt;&lt;/tt&gt; element under &lt;tt&gt;&amp;lt;key&amp;gt;Identifier&amp;lt;/key&amp;gt;&lt;/tt&gt; element of the &lt;tt&gt;info.plist&lt;/tt&gt; file.&lt;pre class=&quot;text&quot; style=&quot;font-family:monospace;&quot;&gt;&amp;lt;key&amp;gt;Identifier&amp;lt;/key&amp;gt;       &lt;br /&gt;&amp;lt;string&amp;gt;net.webvm.bondi.test&amp;lt;/string&amp;gt;&lt;/pre&gt;
&lt;/li&gt;&lt;li&gt;The HTML-file has not been specified in this Bondi widget. In this case, it searches for index.html by default.&lt;pre class=&quot;text&quot; style=&quot;font-family:monospace;&quot;&gt;&amp;lt;key&amp;gt;MainHTML&amp;lt;/key&amp;gt;&lt;br /&gt;&amp;lt;string&amp;gt;index.html&amp;lt;/string&amp;gt;&lt;/pre&gt;
&lt;/li&gt;&lt;li&gt;This widget does not require network access so it can be set to false.&lt;pre class=&quot;text&quot; style=&quot;font-family:monospace;&quot;&gt;&amp;lt;key&amp;gt;AllowNetworkAccess&amp;lt;/key&amp;gt;   &lt;br /&gt;&amp;lt;false /&amp;gt;&lt;/pre&gt;
&lt;/li&gt;&lt;li&gt;Save the file.
&lt;/li&gt;&lt;/ol&gt;
&lt;a name=&quot;4._Packaging&quot; id=&quot;4._Packaging&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt; 4. Packaging &lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;Re-zip the containing Test widget &lt;b&gt;folder&lt;/b&gt; and change the file extension from *.zip to *.wgz.
&lt;/p&gt;
&lt;a name=&quot;5._Deploy&quot; id=&quot;5._Deploy&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt; 5. Deploy &lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;Upload the widget to your mobile device and install.
&lt;a href=&quot;http://www.forum.nokia.com/piazza/wiki/images/7/7f/PortedNonApiBondiWidget.zip&quot; class=&quot;internal&quot; title=&quot;PortedNonApiBondiWidget.zip&quot;&gt; Here&lt;/a&gt; is an example of the ported widget. Remember to change the extension to .wgz before installing.
&lt;/p&gt;</description>
			<pubDate>Wed, 11 Nov 2009 12:55:31 GMT</pubDate>			<dc:creator>Miasa</dc:creator>			<comments>http://wiki.forum.nokia.com/index.php/Talk:Bondi_Widget_porting_example_-_standard_Javascript</comments>		</item>
		<item>
			<title>Constructing simply UI classes with Javascript</title>
			<link>http://wiki.forum.nokia.com/index.php/Constructing_simply_UI_classes_with_Javascript</link>
			<description>&lt;p&gt;Constructing simply UI classes with Javascript
&lt;/p&gt;&lt;p&gt;This page is describing how you could make custom UI components with JavaScript and add them into your WRT widget. The example UI is really simple, it is using normal javascript UI components, and includes only static label, button and text box. The original example was written in Dojo and was explained in &lt;a href=&quot;http://oreilly.com/catalog/9780596516482&quot; class=&quot;external text&quot; title=&quot;http://oreilly.com/catalog/9780596516482&quot; rel=&quot;nofollow&quot;&gt;Dojo: the definitive guide&lt;/a&gt; book. The Dojo example shown here is modified version of the original, and all other examples are then based on this modified version.
&lt;/p&gt;
&lt;table id=&quot;toc&quot; class=&quot;toc&quot; summary=&quot;Contents&quot;&gt;&lt;tr&gt;&lt;td&gt;&lt;div id=&quot;toctitle&quot;&gt;&lt;h2&gt;Contents&lt;/h2&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li class=&quot;toclevel-1&quot;&gt;&lt;a href=&quot;#Standard_JavaScript_implementation&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;1&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Standard JavaScript implementation&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-1&quot;&gt;&lt;a href=&quot;#Dojo_implementation&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;2&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Dojo implementation&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-1&quot;&gt;&lt;a href=&quot;#JQuery_implementation&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;3&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;JQuery implementation&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-1&quot;&gt;&lt;a href=&quot;#YUI_Version_3_implementation&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;4&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;YUI Version 3 implementation&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-1&quot;&gt;&lt;a href=&quot;#Mootools_implementation&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;5&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Mootools implementation&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;script type=&quot;text/javascript&quot;&gt; if (window.showTocToggle) { var tocShowText = &quot;show&quot;; var tocHideText = &quot;hide&quot;; showTocToggle(); } &lt;/script&gt;
&lt;a name=&quot;Standard_JavaScript_implementation&quot; id=&quot;Standard_JavaScript_implementation&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt; Standard JavaScript implementation &lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;Javascript does not really have classes in a normal object oriented way, anyway, you can construct sort-of classes by using the prototype method as shown in following source code:
&lt;/p&gt;
&lt;pre class=&quot;cpp&quot; style=&quot;font-family:monospace;&quot;&gt;Genie &lt;span style=&quot;color: #000080;&quot;&gt;=&lt;/span&gt; function&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#40;&lt;/span&gt;divId&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;		&lt;span style=&quot;color: #0000dd;&quot;&gt;this&lt;/span&gt;.&lt;span style=&quot;color: #007788;&quot;&gt;initialize&lt;/span&gt;&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#40;&lt;/span&gt;divId&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #008080;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;	&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;span style=&quot;color: #008080;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;	Genie.&lt;span style=&quot;color: #007788;&quot;&gt;prototype&lt;/span&gt;.&lt;span style=&quot;color: #007788;&quot;&gt;divId&lt;/span&gt; &lt;span style=&quot;color: #000080;&quot;&gt;=&lt;/span&gt; &lt;span style=&quot;color: #FF0000;&quot;&gt;&amp;quot;genie&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #008080;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;	Genie.&lt;span style=&quot;color: #007788;&quot;&gt;prototype&lt;/span&gt;._predictions &lt;span style=&quot;color: #000080;&quot;&gt;=&lt;/span&gt; &lt;span style=&quot;color: #008000;&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span style=&quot;color: #FF0000;&quot;&gt;&amp;quot;As I see it, yet&amp;quot;&lt;/span&gt;, &lt;span style=&quot;color: #FF0000;&quot;&gt;&amp;quot;Ask again later&amp;quot;&lt;/span&gt;, &lt;span style=&quot;color: #FF0000;&quot;&gt;&amp;quot;Better not tell you now&amp;quot;&lt;/span&gt;, &lt;span style=&quot;color: #FF0000;&quot;&gt;&amp;quot;Cannot predict now&amp;quot;&lt;/span&gt;, &lt;span style=&quot;color: #FF0000;&quot;&gt;&amp;quot;Concentrate and ask again&amp;quot;&lt;/span&gt;, &lt;span style=&quot;color: #FF0000;&quot;&gt;&amp;quot;Don't count on it&amp;quot;&lt;/span&gt;, &lt;span style=&quot;color: #FF0000;&quot;&gt;&amp;quot;It is certain&amp;quot;&lt;/span&gt;, &lt;span style=&quot;color: #FF0000;&quot;&gt;&amp;quot;It is decidedly so&amp;quot;&lt;/span&gt;, &lt;span style=&quot;color: #FF0000;&quot;&gt;&amp;quot;Most likely&amp;quot;&lt;/span&gt;, &lt;span style=&quot;color: #FF0000;&quot;&gt;&amp;quot;My reply is no&amp;quot;&lt;/span&gt;, &lt;span style=&quot;color: #FF0000;&quot;&gt;&amp;quot;My sources say no&amp;quot;&lt;/span&gt;, &lt;span style=&quot;color: #FF0000;&quot;&gt;&amp;quot;Outlook good&amp;quot;&lt;/span&gt;, &lt;span style=&quot;color: #FF0000;&quot;&gt;&amp;quot;Outlook not so good&amp;quot;&lt;/span&gt;, &lt;span style=&quot;color: #FF0000;&quot;&gt;&amp;quot;Reply hazy, try again&amp;quot;&lt;/span&gt;, &lt;span style=&quot;color: #FF0000;&quot;&gt;&amp;quot;Signs point to yes&amp;quot;&lt;/span&gt;, &lt;span style=&quot;color: #FF0000;&quot;&gt;&amp;quot;Very doubtful&amp;quot;&lt;/span&gt;, &lt;span style=&quot;color: #FF0000;&quot;&gt;&amp;quot;Without a doubt&amp;quot;&lt;/span&gt;, &lt;span style=&quot;color: #FF0000;&quot;&gt;&amp;quot;Yes&amp;quot;&lt;/span&gt;, &lt;span style=&quot;color: #FF0000;&quot;&gt;&amp;quot;Yes - definitely&amp;quot;&lt;/span&gt;, &lt;span style=&quot;color: #FF0000;&quot;&gt;&amp;quot;You may rely on it&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#93;&lt;/span&gt;&lt;span style=&quot;color: #008080;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;	Genie.&lt;span style=&quot;color: #007788;&quot;&gt;prototype&lt;/span&gt;._getPrediction &lt;span style=&quot;color: #000080;&quot;&gt;=&lt;/span&gt; function&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;		var idx &lt;span style=&quot;color: #000080;&quot;&gt;=&lt;/span&gt; Math.&lt;span style=&quot;color: #007788;&quot;&gt;round&lt;/span&gt;&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#40;&lt;/span&gt;Math.&lt;span style=&quot;color: #007788;&quot;&gt;random&lt;/span&gt;&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #000040;&quot;&gt;*&lt;/span&gt; 19&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;br /&gt;		&lt;span style=&quot;color: #0000ff;&quot;&gt;return&lt;/span&gt; Genie.&lt;span style=&quot;color: #007788;&quot;&gt;prototype&lt;/span&gt;._predictions&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#91;&lt;/span&gt;idx&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#93;&lt;/span&gt;&lt;span style=&quot;color: #008080;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;	&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;span style=&quot;color: #008080;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;	Genie.&lt;span style=&quot;color: #007788;&quot;&gt;prototype&lt;/span&gt;.&lt;span style=&quot;color: #007788;&quot;&gt;initialize&lt;/span&gt; &lt;span style=&quot;color: #000080;&quot;&gt;=&lt;/span&gt; function&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#40;&lt;/span&gt;divId&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;		&lt;span style=&quot;color: #0000ff;&quot;&gt;if&lt;/span&gt;&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#40;&lt;/span&gt;divId &lt;span style=&quot;color: #000040;&quot;&gt;&amp;amp;&amp;amp;&lt;/span&gt; divId.&lt;span style=&quot;color: #007788;&quot;&gt;length&lt;/span&gt;&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;br /&gt;			&lt;span style=&quot;color: #0000dd;&quot;&gt;this&lt;/span&gt;.&lt;span style=&quot;color: #007788;&quot;&gt;divId&lt;/span&gt; &lt;span style=&quot;color: #000080;&quot;&gt;=&lt;/span&gt; divId&lt;span style=&quot;color: #008080;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;		var label &lt;span style=&quot;color: #000080;&quot;&gt;=&lt;/span&gt; document.&lt;span style=&quot;color: #007788;&quot;&gt;createElement&lt;/span&gt;&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #FF0000;&quot;&gt;&amp;quot;p&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #008080;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;		label.&lt;span style=&quot;color: #007788;&quot;&gt;innerHTML&lt;/span&gt; &lt;span style=&quot;color: #000080;&quot;&gt;=&lt;/span&gt; &lt;span style=&quot;color: #FF0000;&quot;&gt;&amp;quot;Ask a question. The genie knows the answer...&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #008080;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;		var question &lt;span style=&quot;color: #000080;&quot;&gt;=&lt;/span&gt; document.&lt;span style=&quot;color: #007788;&quot;&gt;createElement&lt;/span&gt;&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #FF0000;&quot;&gt;&amp;quot;input&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #008080;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;			question.&lt;span style=&quot;color: #007788;&quot;&gt;size&lt;/span&gt; &lt;span style=&quot;color: #000080;&quot;&gt;=&lt;/span&gt; &lt;span style=&quot;color: #0000dd;&quot;&gt;50&lt;/span&gt;&lt;span style=&quot;color: #008080;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;		var button &lt;span style=&quot;color: #000080;&quot;&gt;=&lt;/span&gt; document.&lt;span style=&quot;color: #007788;&quot;&gt;createElement&lt;/span&gt;&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #FF0000;&quot;&gt;&amp;quot;button&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #008080;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;		button.&lt;span style=&quot;color: #007788;&quot;&gt;innerHTML&lt;/span&gt; &lt;span style=&quot;color: #000080;&quot;&gt;=&lt;/span&gt; &lt;span style=&quot;color: #FF0000;&quot;&gt;&amp;quot;Ask!&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #008080;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;		button.&lt;span style=&quot;color: #007788;&quot;&gt;onclick&lt;/span&gt; &lt;span style=&quot;color: #000080;&quot;&gt;=&lt;/span&gt; function&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;			alert&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#40;&lt;/span&gt;Genie.&lt;span style=&quot;color: #007788;&quot;&gt;prototype&lt;/span&gt;._getPrediction&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #008080;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;			question.&lt;span style=&quot;color: #007788;&quot;&gt;value&lt;/span&gt; &lt;span style=&quot;color: #000080;&quot;&gt;=&lt;/span&gt; &lt;span style=&quot;color: #FF0000;&quot;&gt;&amp;quot;&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #008080;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;		&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;		var container &lt;span style=&quot;color: #000080;&quot;&gt;=&lt;/span&gt; document.&lt;span style=&quot;color: #007788;&quot;&gt;getElementById&lt;/span&gt;&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #0000dd;&quot;&gt;this&lt;/span&gt;.&lt;span style=&quot;color: #007788;&quot;&gt;divId&lt;/span&gt;&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #008080;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;		container.&lt;span style=&quot;color: #007788;&quot;&gt;appendChild&lt;/span&gt;&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#40;&lt;/span&gt;label&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #008080;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;		container.&lt;span style=&quot;color: #007788;&quot;&gt;appendChild&lt;/span&gt;&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#40;&lt;/span&gt;question&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #008080;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;		container.&lt;span style=&quot;color: #007788;&quot;&gt;appendChild&lt;/span&gt;&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#40;&lt;/span&gt;button&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #008080;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;	&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;span style=&quot;color: #008080;&quot;&gt;;&lt;/span&gt;&lt;/pre&gt;
&lt;p&gt;Then to get the UI component to display in the HTML page, you can use following code:
&lt;/p&gt;
&lt;pre class=&quot;text&quot; style=&quot;font-family:monospace;&quot;&gt;&amp;lt;html&amp;gt;&lt;br /&gt;&amp;lt;head&amp;gt;&lt;br /&gt;	&amp;lt;title&amp;gt;Fun With the Genie!&amp;lt;/title&amp;gt;&lt;br /&gt;	&amp;lt;script type=&amp;quot;text/javascript&amp;quot; src=&amp;quot;js/Genie.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;&lt;br /&gt;	&amp;lt;script type=&amp;quot;text/javascript&amp;quot;&amp;gt;&lt;br /&gt;		var myGenie = null;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;	  	function myinit(){&lt;br /&gt;			myGenie = new Genie('genie');&lt;br /&gt;		}&lt;br /&gt;	&amp;lt;/script&amp;gt;	&lt;br /&gt;&amp;lt;/head&amp;gt;&lt;br /&gt;&amp;lt;body onload=&amp;quot;myinit();&amp;quot;&amp;gt;&lt;br /&gt;	&amp;lt;div id=&amp;quot;genie&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;&amp;lt;/body&amp;gt;&lt;br /&gt;&amp;lt;/html&amp;gt;&lt;/pre&gt;
&lt;p&gt;If the Genie “class” would be extended with additional methods, you could use the stored myGenie variable for accessing them later on program. The &lt;a href=&quot;http://wiki.forum.nokia.com/index.php/File:Generic_class.zip&quot; class=&quot;external text&quot; title=&quot;http://wiki.forum.nokia.com/index.php/File:Generic_class.zip&quot; rel=&quot;nofollow&quot;&gt;Generic_class.zip&lt;/a&gt; shows the full WRT example for the implementation.
&lt;/p&gt;
&lt;a name=&quot;Dojo_implementation&quot; id=&quot;Dojo_implementation&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt; Dojo implementation &lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;Dojo in sense does not really have classes, but you can use the extend method to construct things that work bit like classes. Dojo has its own way on handling extensions, with the extension implementation, a dojo.provide() line needs to be included to tell the Dojo about the extensions provided by the js file as shown in the following example code:
&lt;/p&gt;
&lt;pre class=&quot;javascript&quot; style=&quot;font-family:monospace;&quot;&gt;dojo.&lt;span style=&quot;color: #660066;&quot;&gt;provide&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #3366CC;&quot;&gt;&amp;quot;dtdg.Genie&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;	&lt;span style=&quot;color: #006600; font-style: italic;&quot;&gt;//define the object&lt;/span&gt;&lt;br /&gt;	dtdg.&lt;span style=&quot;color: #660066;&quot;&gt;Genie&lt;/span&gt; &lt;span style=&quot;color: #339933;&quot;&gt;=&lt;/span&gt; &lt;span style=&quot;color: #003366; font-weight: bold;&quot;&gt;function&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;divId&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #009900;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;		&lt;span style=&quot;color: #000066; font-weight: bold;&quot;&gt;this&lt;/span&gt;.&lt;span style=&quot;color: #660066;&quot;&gt;initialize&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;divId&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;	&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;	&lt;span style=&quot;color: #006600; font-style: italic;&quot;&gt;//and now extend it&lt;/span&gt;&lt;br /&gt;	dojo.&lt;span style=&quot;color: #660066;&quot;&gt;extend&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;dtdg.&lt;span style=&quot;color: #660066;&quot;&gt;Genie&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt; &lt;span style=&quot;color: #009900;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;		divId&lt;span style=&quot;color: #339933;&quot;&gt;:&lt;/span&gt; &lt;span style=&quot;color: #3366CC;&quot;&gt;&amp;quot;genie&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt;&lt;br /&gt;		_predictions &lt;span style=&quot;color: #339933;&quot;&gt;:&lt;/span&gt; &lt;span style=&quot;color: #009900;&quot;&gt;&amp;#91;&lt;/span&gt;&lt;br /&gt;			&lt;span style=&quot;color: #3366CC;&quot;&gt;&amp;quot;As I see it, yet&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt;&lt;br /&gt;			&lt;span style=&quot;color: #3366CC;&quot;&gt;&amp;quot;Ask again later&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt;&lt;br /&gt;			&lt;span style=&quot;color: #3366CC;&quot;&gt;&amp;quot;Better not tell you now&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt;&lt;br /&gt;			&lt;span style=&quot;color: #3366CC;&quot;&gt;&amp;quot;Cannot predict now&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt;&lt;br /&gt;			&lt;span style=&quot;color: #3366CC;&quot;&gt;&amp;quot;Concentrate and ask again&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt;&lt;br /&gt;			&lt;span style=&quot;color: #3366CC;&quot;&gt;&amp;quot;Don't count on it&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt;&lt;br /&gt;			&lt;span style=&quot;color: #3366CC;&quot;&gt;&amp;quot;It is certain&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt;&lt;br /&gt;			&lt;span style=&quot;color: #3366CC;&quot;&gt;&amp;quot;It is decidedly so&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt;&lt;br /&gt;			&lt;span style=&quot;color: #3366CC;&quot;&gt;&amp;quot;Most likely&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt;&lt;br /&gt;			&lt;span style=&quot;color: #3366CC;&quot;&gt;&amp;quot;My reply is no&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt;&lt;br /&gt;			&lt;span style=&quot;color: #3366CC;&quot;&gt;&amp;quot;My sources say no&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt;&lt;br /&gt;			&lt;span style=&quot;color: #3366CC;&quot;&gt;&amp;quot;Outlook good&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt;&lt;br /&gt;			&lt;span style=&quot;color: #3366CC;&quot;&gt;&amp;quot;Outlook not so good&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt;&lt;br /&gt;			&lt;span style=&quot;color: #3366CC;&quot;&gt;&amp;quot;Reply hazy, try again&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt;&lt;br /&gt;			&lt;span style=&quot;color: #3366CC;&quot;&gt;&amp;quot;Signs point to yes&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt;&lt;br /&gt;			&lt;span style=&quot;color: #3366CC;&quot;&gt;&amp;quot;Very doubtful&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt;&lt;br /&gt;			&lt;span style=&quot;color: #3366CC;&quot;&gt;&amp;quot;Without a doubt&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt;&lt;br /&gt;			&lt;span style=&quot;color: #3366CC;&quot;&gt;&amp;quot;Yes&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt;&lt;br /&gt;			&lt;span style=&quot;color: #3366CC;&quot;&gt;&amp;quot;Yes - definitely&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt;&lt;br /&gt;			&lt;span style=&quot;color: #3366CC;&quot;&gt;&amp;quot;You may rely on it&amp;quot;&lt;/span&gt;&lt;br /&gt;		&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#93;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;		_getPrediction &lt;span style=&quot;color: #339933;&quot;&gt;:&lt;/span&gt; &lt;span style=&quot;color: #003366; font-weight: bold;&quot;&gt;function&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt; &lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #009900;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;			&lt;span style=&quot;color: #003366; font-weight: bold;&quot;&gt;var&lt;/span&gt; idx &lt;span style=&quot;color: #339933;&quot;&gt;=&lt;/span&gt; Math.&lt;span style=&quot;color: #660066;&quot;&gt;round&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;Math.&lt;span style=&quot;color: #660066;&quot;&gt;random&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt; &lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;*&lt;/span&gt;19&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;br /&gt;			&lt;span style=&quot;color: #000066; font-weight: bold;&quot;&gt;return&lt;/span&gt; &lt;span style=&quot;color: #000066; font-weight: bold;&quot;&gt;this&lt;/span&gt;._predictions&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#91;&lt;/span&gt;idx&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#93;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;		&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;		initialize &lt;span style=&quot;color: #339933;&quot;&gt;:&lt;/span&gt; &lt;span style=&quot;color: #003366; font-weight: bold;&quot;&gt;function&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;divId&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #009900;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;			&lt;span style=&quot;color: #000066; font-weight: bold;&quot;&gt;if&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;divId &lt;span style=&quot;color: #339933;&quot;&gt;&amp;amp;&amp;amp;&lt;/span&gt; divId.&lt;span style=&quot;color: #660066;&quot;&gt;length&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;br /&gt;				&lt;span style=&quot;color: #000066; font-weight: bold;&quot;&gt;this&lt;/span&gt;.&lt;span style=&quot;color: #660066;&quot;&gt;divId&lt;/span&gt; &lt;span style=&quot;color: #339933;&quot;&gt;=&lt;/span&gt; divId&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;			&lt;span style=&quot;color: #003366; font-weight: bold;&quot;&gt;var&lt;/span&gt; label &lt;span style=&quot;color: #339933;&quot;&gt;=&lt;/span&gt; document.&lt;span style=&quot;color: #660066;&quot;&gt;createElement&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #3366CC;&quot;&gt;&amp;quot;p&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;			label.&lt;span style=&quot;color: #660066;&quot;&gt;innerHTML&lt;/span&gt; &lt;span style=&quot;color: #339933;&quot;&gt;=&lt;/span&gt; &lt;span style=&quot;color: #3366CC;&quot;&gt;&amp;quot;Ask a question. The genie knows the answer...&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;			&lt;span style=&quot;color: #003366; font-weight: bold;&quot;&gt;var&lt;/span&gt; question &lt;span style=&quot;color: #339933;&quot;&gt;=&lt;/span&gt; document.&lt;span style=&quot;color: #660066;&quot;&gt;createElement&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #3366CC;&quot;&gt;&amp;quot;input&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;			question.&lt;span style=&quot;color: #660066;&quot;&gt;size&lt;/span&gt; &lt;span style=&quot;color: #339933;&quot;&gt;=&lt;/span&gt; &lt;span style=&quot;color: #CC0000;&quot;&gt;50&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;			&lt;span style=&quot;color: #003366; font-weight: bold;&quot;&gt;var&lt;/span&gt; button &lt;span style=&quot;color: #339933;&quot;&gt;=&lt;/span&gt; document.&lt;span style=&quot;color: #660066;&quot;&gt;createElement&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #3366CC;&quot;&gt;&amp;quot;button&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;			button.&lt;span style=&quot;color: #660066;&quot;&gt;innerHTML&lt;/span&gt; &lt;span style=&quot;color: #339933;&quot;&gt;=&lt;/span&gt; &lt;span style=&quot;color: #3366CC;&quot;&gt;&amp;quot;Ask!&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;			button.&lt;span style=&quot;color: #660066;&quot;&gt;onclick&lt;/span&gt; &lt;span style=&quot;color: #339933;&quot;&gt;=&lt;/span&gt; &lt;span style=&quot;color: #003366; font-weight: bold;&quot;&gt;function&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt; &lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #009900;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;				&lt;span style=&quot;color: #000066;&quot;&gt;alert&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;dtdg.&lt;span style=&quot;color: #660066;&quot;&gt;Genie&lt;/span&gt;.&lt;span style=&quot;color: #660066;&quot;&gt;prototype&lt;/span&gt;._getPrediction&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt; &lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;				question.&lt;span style=&quot;color: #660066;&quot;&gt;value&lt;/span&gt; &lt;span style=&quot;color: #339933;&quot;&gt;=&lt;/span&gt; &lt;span style=&quot;color: #3366CC;&quot;&gt;&amp;quot;&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;			&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;			&lt;span style=&quot;color: #003366; font-weight: bold;&quot;&gt;var&lt;/span&gt; container &lt;span style=&quot;color: #339933;&quot;&gt;=&lt;/span&gt; document.&lt;span style=&quot;color: #660066;&quot;&gt;getElementById&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #000066; font-weight: bold;&quot;&gt;this&lt;/span&gt;.&lt;span style=&quot;color: #660066;&quot;&gt;divId&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;			container.&lt;span style=&quot;color: #660066;&quot;&gt;appendChild&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;label&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;			container.&lt;span style=&quot;color: #660066;&quot;&gt;appendChild&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;question&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;			container.&lt;span style=&quot;color: #660066;&quot;&gt;appendChild&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;button&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;		&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;	&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;/pre&gt;
&lt;p&gt;And then with HTML, Dojo extensions are not included as js files, instead dojo.require() is used to tell the Dojo to look for the extension and to load the required js file(s).  Otherwise the HTML is rather much the same as with the generic example:
&lt;/p&gt;
&lt;pre class=&quot;html4strict&quot; style=&quot;font-family:monospace;&quot;&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;lt;&lt;a href=&quot;http://december.com/html/4/element/html.html&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;html&lt;/span&gt;&lt;/a&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;lt;&lt;a href=&quot;http://december.com/html/4/element/head.html&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;head&lt;/span&gt;&lt;/a&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;	&lt;span style=&quot;color: #009900;&quot;&gt;&amp;lt;&lt;a href=&quot;http://december.com/html/4/element/title.html&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;title&lt;/span&gt;&lt;/a&gt;&amp;gt;&lt;/span&gt;Fun With the Genie!&lt;span style=&quot;color: #009900;&quot;&gt;&amp;lt;&lt;span style=&quot;color: #66cc66;&quot;&gt;/&lt;/span&gt;&lt;a href=&quot;http://december.com/html/4/element/title.html&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;title&lt;/span&gt;&lt;/a&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;	&lt;span style=&quot;color: #009900;&quot;&gt;&amp;lt;&lt;a href=&quot;http://december.com/html/4/element/script.html&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;script&lt;/span&gt;&lt;/a&gt;	&lt;span style=&quot;color: #000066;&quot;&gt;type&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;text/javascript&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #000066;&quot;&gt;src&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;dojo/dojo.js&amp;quot;&lt;/span&gt;&amp;gt;&lt;/span&gt; &lt;span style=&quot;color: #009900;&quot;&gt;&amp;lt;&lt;span style=&quot;color: #66cc66;&quot;&gt;/&lt;/span&gt;&lt;a href=&quot;http://december.com/html/4/element/script.html&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;script&lt;/span&gt;&lt;/a&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;	&lt;span style=&quot;color: #009900;&quot;&gt;&amp;lt;&lt;a href=&quot;http://december.com/html/4/element/script.html&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;script&lt;/span&gt;&lt;/a&gt; &lt;span style=&quot;color: #000066;&quot;&gt;type&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;text/javascript&amp;quot;&lt;/span&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;		dojo.require(&amp;quot;dtdg.Genie&amp;quot;);&lt;br /&gt;&amp;nbsp;&lt;br /&gt;		var myGenie = null;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;	  	function myinit(){&lt;br /&gt;			myGenie = new dtdg.Genie('genie');&lt;br /&gt;		}&lt;br /&gt;&amp;nbsp;&lt;br /&gt;		dojo.addOnLoad(myinit);&lt;br /&gt;	&lt;span style=&quot;color: #009900;&quot;&gt;&amp;lt;&lt;span style=&quot;color: #66cc66;&quot;&gt;/&lt;/span&gt;&lt;a href=&quot;http://december.com/html/4/element/script.html&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;script&lt;/span&gt;&lt;/a&gt;&amp;gt;&lt;/span&gt;	&lt;br /&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;lt;&lt;span style=&quot;color: #66cc66;&quot;&gt;/&lt;/span&gt;&lt;a href=&quot;http://december.com/html/4/element/head.html&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;head&lt;/span&gt;&lt;/a&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;lt;&lt;a href=&quot;http://december.com/html/4/element/body.html&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;body&lt;/span&gt;&lt;/a&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;	&lt;span style=&quot;color: #009900;&quot;&gt;&amp;lt;&lt;a href=&quot;http://december.com/html/4/element/div.html&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;div&lt;/span&gt;&lt;/a&gt; &lt;span style=&quot;color: #000066;&quot;&gt;id&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;genie&amp;quot;&lt;/span&gt;&amp;gt;&amp;lt;&lt;span style=&quot;color: #66cc66;&quot;&gt;/&lt;/span&gt;&lt;a href=&quot;http://december.com/html/4/element/div.html&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;div&lt;/span&gt;&lt;/a&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;lt;&lt;span style=&quot;color: #66cc66;&quot;&gt;/&lt;/span&gt;&lt;a href=&quot;http://december.com/html/4/element/body.html&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;body&lt;/span&gt;&lt;/a&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;lt;&lt;span style=&quot;color: #66cc66;&quot;&gt;/&lt;/span&gt;&lt;a href=&quot;http://december.com/html/4/element/html.html&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;html&lt;/span&gt;&lt;/a&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;
&lt;p&gt;The &lt;a href=&quot;http://wiki.forum.nokia.com/index.php/File:Dojo_class.zip&quot; class=&quot;external text&quot; title=&quot;http://wiki.forum.nokia.com/index.php/File:Dojo_class.zip&quot; rel=&quot;nofollow&quot;&gt;Dojo_class.zip&lt;/a&gt; shows the full WRT example for the implementation.
&lt;/p&gt;
&lt;a name=&quot;JQuery_implementation&quot; id=&quot;JQuery_implementation&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt; JQuery implementation &lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;JQuery implementation is nearly identical with the Dojo implementation, with JQuery, there also are no real defined classes, instead the class objects can again be made with the extend method provided by JQuery as shown in the following example:
&lt;/p&gt;
&lt;pre class=&quot;javascript&quot; style=&quot;font-family:monospace;&quot;&gt;Genie &lt;span style=&quot;color: #339933;&quot;&gt;=&lt;/span&gt; &lt;span style=&quot;color: #003366; font-weight: bold;&quot;&gt;function&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;divId&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #009900;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;	  	&lt;span style=&quot;color: #000066; font-weight: bold;&quot;&gt;this&lt;/span&gt;.&lt;span style=&quot;color: #660066;&quot;&gt;initialize&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;divId&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;	&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;	$.&lt;span style=&quot;color: #660066;&quot;&gt;extend&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;Genie.&lt;span style=&quot;color: #660066;&quot;&gt;prototype&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt; &lt;span style=&quot;color: #009900;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;	   	&lt;span style=&quot;color: #006600; font-style: italic;&quot;&gt;// object variables&lt;/span&gt;&lt;br /&gt;	   	divId&lt;span style=&quot;color: #339933;&quot;&gt;:&lt;/span&gt; &lt;span style=&quot;color: #3366CC;&quot;&gt;'genie'&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;		_predictions&lt;span style=&quot;color: #339933;&quot;&gt;:&lt;/span&gt; &lt;span style=&quot;color: #009900;&quot;&gt;&amp;#91;&lt;/span&gt;&lt;br /&gt;			&lt;span style=&quot;color: #3366CC;&quot;&gt;&amp;quot;As I see it, yet&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt;&lt;br /&gt;			&lt;span style=&quot;color: #3366CC;&quot;&gt;&amp;quot;Ask again later&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt;&lt;br /&gt;			&lt;span style=&quot;color: #3366CC;&quot;&gt;&amp;quot;Better not tell you now&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt;&lt;br /&gt;			&lt;span style=&quot;color: #3366CC;&quot;&gt;&amp;quot;Cannot predict now&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt;&lt;br /&gt;			&lt;span style=&quot;color: #3366CC;&quot;&gt;&amp;quot;Concentrate and ask again&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt;&lt;br /&gt;			&lt;span style=&quot;color: #3366CC;&quot;&gt;&amp;quot;Don't count on it&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt;&lt;br /&gt;			&lt;span style=&quot;color: #3366CC;&quot;&gt;&amp;quot;It is certain&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt;&lt;br /&gt;			&lt;span style=&quot;color: #3366CC;&quot;&gt;&amp;quot;It is decidedly so&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt;&lt;br /&gt;			&lt;span style=&quot;color: #3366CC;&quot;&gt;&amp;quot;Most likely&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt;&lt;br /&gt;			&lt;span style=&quot;color: #3366CC;&quot;&gt;&amp;quot;My reply is no&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt;&lt;br /&gt;			&lt;span style=&quot;color: #3366CC;&quot;&gt;&amp;quot;My sources say no&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt;&lt;br /&gt;			&lt;span style=&quot;color: #3366CC;&quot;&gt;&amp;quot;Outlook good&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt;&lt;br /&gt;			&lt;span style=&quot;color: #3366CC;&quot;&gt;&amp;quot;Outlook not so good&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt;&lt;br /&gt;			&lt;span style=&quot;color: #3366CC;&quot;&gt;&amp;quot;Reply hazy, try again&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt;&lt;br /&gt;			&lt;span style=&quot;color: #3366CC;&quot;&gt;&amp;quot;Signs point to yes&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt;&lt;br /&gt;			&lt;span style=&quot;color: #3366CC;&quot;&gt;&amp;quot;Very doubtful&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt;&lt;br /&gt;			&lt;span style=&quot;color: #3366CC;&quot;&gt;&amp;quot;Without a doubt&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt;&lt;br /&gt;			&lt;span style=&quot;color: #3366CC;&quot;&gt;&amp;quot;Yes&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt;&lt;br /&gt;			&lt;span style=&quot;color: #3366CC;&quot;&gt;&amp;quot;Yes - definitely&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt;&lt;br /&gt;			&lt;span style=&quot;color: #3366CC;&quot;&gt;&amp;quot;You may rely on it&amp;quot;&lt;/span&gt;&lt;br /&gt;		&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#93;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;		_getPrediction&lt;span style=&quot;color: #339933;&quot;&gt;:&lt;/span&gt; &lt;span style=&quot;color: #003366; font-weight: bold;&quot;&gt;function&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt; &lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #009900;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;			&lt;span style=&quot;color: #003366; font-weight: bold;&quot;&gt;var&lt;/span&gt; idx &lt;span style=&quot;color: #339933;&quot;&gt;=&lt;/span&gt; Math.&lt;span style=&quot;color: #660066;&quot;&gt;round&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;Math.&lt;span style=&quot;color: #660066;&quot;&gt;random&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt; &lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;*&lt;/span&gt;19&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;br /&gt;			&lt;span style=&quot;color: #000066; font-weight: bold;&quot;&gt;return&lt;/span&gt; &lt;span style=&quot;color: #000066; font-weight: bold;&quot;&gt;this&lt;/span&gt;._predictions&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#91;&lt;/span&gt;idx&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#93;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;		&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt;&lt;br /&gt;	   	initialize&lt;span style=&quot;color: #339933;&quot;&gt;:&lt;/span&gt; &lt;span style=&quot;color: #003366; font-weight: bold;&quot;&gt;function&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;divId&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #009900;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;			&lt;span style=&quot;color: #000066; font-weight: bold;&quot;&gt;if&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;divId &lt;span style=&quot;color: #339933;&quot;&gt;&amp;amp;&amp;amp;&lt;/span&gt; divId.&lt;span style=&quot;color: #660066;&quot;&gt;length&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;br /&gt;				&lt;span style=&quot;color: #000066; font-weight: bold;&quot;&gt;this&lt;/span&gt;.&lt;span style=&quot;color: #660066;&quot;&gt;divId&lt;/span&gt; &lt;span style=&quot;color: #339933;&quot;&gt;=&lt;/span&gt; divId&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;			&lt;span style=&quot;color: #003366; font-weight: bold;&quot;&gt;var&lt;/span&gt; label &lt;span style=&quot;color: #339933;&quot;&gt;=&lt;/span&gt; document.&lt;span style=&quot;color: #660066;&quot;&gt;createElement&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #3366CC;&quot;&gt;&amp;quot;p&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;			label.&lt;span style=&quot;color: #660066;&quot;&gt;innerHTML&lt;/span&gt; &lt;span style=&quot;color: #339933;&quot;&gt;=&lt;/span&gt; &lt;span style=&quot;color: #3366CC;&quot;&gt;&amp;quot;Ask a question. The genie knows the answer...&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;			&lt;span style=&quot;color: #003366; font-weight: bold;&quot;&gt;var&lt;/span&gt; question &lt;span style=&quot;color: #339933;&quot;&gt;=&lt;/span&gt; document.&lt;span style=&quot;color: #660066;&quot;&gt;createElement&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #3366CC;&quot;&gt;&amp;quot;input&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;			question.&lt;span style=&quot;color: #660066;&quot;&gt;size&lt;/span&gt; &lt;span style=&quot;color: #339933;&quot;&gt;=&lt;/span&gt; &lt;span style=&quot;color: #CC0000;&quot;&gt;50&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;			&lt;span style=&quot;color: #003366; font-weight: bold;&quot;&gt;var&lt;/span&gt; button &lt;span style=&quot;color: #339933;&quot;&gt;=&lt;/span&gt; document.&lt;span style=&quot;color: #660066;&quot;&gt;createElement&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #3366CC;&quot;&gt;&amp;quot;button&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;			button.&lt;span style=&quot;color: #660066;&quot;&gt;innerHTML&lt;/span&gt; &lt;span style=&quot;color: #339933;&quot;&gt;=&lt;/span&gt; &lt;span style=&quot;color: #3366CC;&quot;&gt;&amp;quot;Ask!&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;			button.&lt;span style=&quot;color: #660066;&quot;&gt;onclick&lt;/span&gt; &lt;span style=&quot;color: #339933;&quot;&gt;=&lt;/span&gt; &lt;span style=&quot;color: #003366; font-weight: bold;&quot;&gt;function&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt; &lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #009900;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;				&lt;span style=&quot;color: #000066;&quot;&gt;alert&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;Genie.&lt;span style=&quot;color: #660066;&quot;&gt;prototype&lt;/span&gt;._getPrediction&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt; &lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;				question.&lt;span style=&quot;color: #660066;&quot;&gt;value&lt;/span&gt; &lt;span style=&quot;color: #339933;&quot;&gt;=&lt;/span&gt; &lt;span style=&quot;color: #3366CC;&quot;&gt;&amp;quot;&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;			&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;			&lt;span style=&quot;color: #003366; font-weight: bold;&quot;&gt;var&lt;/span&gt; container &lt;span style=&quot;color: #339933;&quot;&gt;=&lt;/span&gt; document.&lt;span style=&quot;color: #660066;&quot;&gt;getElementById&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #000066; font-weight: bold;&quot;&gt;this&lt;/span&gt;.&lt;span style=&quot;color: #660066;&quot;&gt;divId&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;		&lt;br /&gt;			container.&lt;span style=&quot;color: #660066;&quot;&gt;appendChild&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;label&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;			container.&lt;span style=&quot;color: #660066;&quot;&gt;appendChild&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;question&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;			container.&lt;span style=&quot;color: #660066;&quot;&gt;appendChild&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;button&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;	   	&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;/pre&gt;
&lt;p&gt;As JQuery does not implement any additional extension management, the js file is included in the html as usual, and the HTML otherwise is nearly identical to the Dojo example:
&lt;/p&gt;
&lt;pre class=&quot;html4strict&quot; style=&quot;font-family:monospace;&quot;&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;lt;&lt;a href=&quot;http://december.com/html/4/element/html.html&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;html&lt;/span&gt;&lt;/a&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;lt;&lt;a href=&quot;http://december.com/html/4/element/head.html&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;head&lt;/span&gt;&lt;/a&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;	&lt;span style=&quot;color: #009900;&quot;&gt;&amp;lt;&lt;a href=&quot;http://december.com/html/4/element/title.html&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;title&lt;/span&gt;&lt;/a&gt;&amp;gt;&lt;/span&gt;Fun With the Genie!&lt;span style=&quot;color: #009900;&quot;&gt;&amp;lt;&lt;span style=&quot;color: #66cc66;&quot;&gt;/&lt;/span&gt;&lt;a href=&quot;http://december.com/html/4/element/title.html&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;title&lt;/span&gt;&lt;/a&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;	&lt;span style=&quot;color: #009900;&quot;&gt;&amp;lt;&lt;a href=&quot;http://december.com/html/4/element/script.html&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;script&lt;/span&gt;&lt;/a&gt;	&lt;span style=&quot;color: #000066;&quot;&gt;type&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;text/javascript&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #000066;&quot;&gt;src&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;js/jquery-1.3.2.js&amp;quot;&lt;/span&gt;&amp;gt;&lt;/span&gt; &lt;span style=&quot;color: #009900;&quot;&gt;&amp;lt;&lt;span style=&quot;color: #66cc66;&quot;&gt;/&lt;/span&gt;&lt;a href=&quot;http://december.com/html/4/element/script.html&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;script&lt;/span&gt;&lt;/a&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;	&lt;span style=&quot;color: #009900;&quot;&gt;&amp;lt;&lt;a href=&quot;http://december.com/html/4/element/script.html&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;script&lt;/span&gt;&lt;/a&gt;	&lt;span style=&quot;color: #000066;&quot;&gt;type&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;text/javascript&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #000066;&quot;&gt;src&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;js/jquery.genie.js&amp;quot;&lt;/span&gt;&amp;gt;&lt;/span&gt; &lt;span style=&quot;color: #009900;&quot;&gt;&amp;lt;&lt;span style=&quot;color: #66cc66;&quot;&gt;/&lt;/span&gt;&lt;a href=&quot;http://december.com/html/4/element/script.html&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;script&lt;/span&gt;&lt;/a&gt;&amp;gt;&lt;/span&gt;	&lt;br /&gt;	&lt;span style=&quot;color: #009900;&quot;&gt;&amp;lt;&lt;a href=&quot;http://december.com/html/4/element/script.html&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;script&lt;/span&gt;&lt;/a&gt; &lt;span style=&quot;color: #000066;&quot;&gt;type&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;text/javascript&amp;quot;&lt;/span&gt;&amp;gt;&lt;/span&gt;	&lt;br /&gt;		var myGenie = null;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;	  	function myinit(){&lt;br /&gt;			myGenie = new Genie('genie');&lt;br /&gt;		}&lt;br /&gt;&amp;nbsp;&lt;br /&gt;		$(document).ready(myinit);		&lt;br /&gt;	&lt;span style=&quot;color: #009900;&quot;&gt;&amp;lt;&lt;span style=&quot;color: #66cc66;&quot;&gt;/&lt;/span&gt;&lt;a href=&quot;http://december.com/html/4/element/script.html&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;script&lt;/span&gt;&lt;/a&gt;&amp;gt;&lt;/span&gt;	&lt;br /&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;lt;&lt;span style=&quot;color: #66cc66;&quot;&gt;/&lt;/span&gt;&lt;a href=&quot;http://december.com/html/4/element/head.html&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;head&lt;/span&gt;&lt;/a&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;lt;&lt;a href=&quot;http://december.com/html/4/element/body.html&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;body&lt;/span&gt;&lt;/a&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;	&lt;span style=&quot;color: #009900;&quot;&gt;&amp;lt;&lt;a href=&quot;http://december.com/html/4/element/div.html&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;div&lt;/span&gt;&lt;/a&gt; &lt;span style=&quot;color: #000066;&quot;&gt;id&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;genie&amp;quot;&lt;/span&gt;&amp;gt;&amp;lt;&lt;span style=&quot;color: #66cc66;&quot;&gt;/&lt;/span&gt;&lt;a href=&quot;http://december.com/html/4/element/div.html&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;div&lt;/span&gt;&lt;/a&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;lt;&lt;span style=&quot;color: #66cc66;&quot;&gt;/&lt;/span&gt;&lt;a href=&quot;http://december.com/html/4/element/body.html&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;body&lt;/span&gt;&lt;/a&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;lt;&lt;span style=&quot;color: #66cc66;&quot;&gt;/&lt;/span&gt;&lt;a href=&quot;http://december.com/html/4/element/html.html&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;html&lt;/span&gt;&lt;/a&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;
&lt;p&gt;The &lt;a href=&quot;http://wiki.forum.nokia.com/index.php/File:JQuery_class.zip&quot; class=&quot;external text&quot; title=&quot;http://wiki.forum.nokia.com/index.php/File:JQuery_class.zip&quot; rel=&quot;nofollow&quot;&gt;JQuery_class.zip&lt;/a&gt; shows the full WRT example for the implementation.
&lt;/p&gt;
&lt;a name=&quot;YUI_Version_3_implementation&quot; id=&quot;YUI_Version_3_implementation&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt; YUI Version 3 implementation &lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;Similarly as with Dojo &amp;amp; JQuery, YUI also does not really define any base that could be used for forming classes, thus the YUI version 3 implementation is rather similar to the Dojo and JQuery. Note that for some reason Y.extend() appears to work only when combining classes, and as with this example we are adding methods and variable to a “class”, the Y.mix() is used instead of the Y.extend(). Also note that since the interface to YUI APIs is only given as a argument for the callback, and not as a global object, the whole code is wrapped in a one function, and the YUI interface is given to it as a second argument:
&lt;/p&gt;
&lt;pre class=&quot;javascript&quot; style=&quot;font-family:monospace;&quot;&gt;Genie &lt;span style=&quot;color: #339933;&quot;&gt;=&lt;/span&gt; &lt;span style=&quot;color: #003366; font-weight: bold;&quot;&gt;function&lt;/span&gt; &lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;divId&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt; Y&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;		_Genie &lt;span style=&quot;color: #339933;&quot;&gt;=&lt;/span&gt; &lt;span style=&quot;color: #003366; font-weight: bold;&quot;&gt;function&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;		Y.&lt;span style=&quot;color: #660066;&quot;&gt;mix&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;_Genie&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt; &lt;span style=&quot;color: #009900;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;			divId&lt;span style=&quot;color: #339933;&quot;&gt;:&lt;/span&gt; &lt;span style=&quot;color: #3366CC;&quot;&gt;&amp;quot;genie&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt;&lt;br /&gt;			_predictions&lt;span style=&quot;color: #339933;&quot;&gt;:&lt;/span&gt; &lt;span style=&quot;color: #009900;&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span style=&quot;color: #3366CC;&quot;&gt;&amp;quot;As I see it, yet&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt; &lt;span style=&quot;color: #3366CC;&quot;&gt;&amp;quot;Ask again later&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt; &lt;span style=&quot;color: #3366CC;&quot;&gt;&amp;quot;Better not tell you now&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt; &lt;span style=&quot;color: #3366CC;&quot;&gt;&amp;quot;Cannot predict now&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt; &lt;span style=&quot;color: #3366CC;&quot;&gt;&amp;quot;Concentrate and ask again&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt; &lt;span style=&quot;color: #3366CC;&quot;&gt;&amp;quot;Don't count on it&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt; &lt;span style=&quot;color: #3366CC;&quot;&gt;&amp;quot;It is certain&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt; &lt;span style=&quot;color: #3366CC;&quot;&gt;&amp;quot;It is decidedly so&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt; &lt;span style=&quot;color: #3366CC;&quot;&gt;&amp;quot;Most likely&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt; &lt;span style=&quot;color: #3366CC;&quot;&gt;&amp;quot;My reply is no&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt; &lt;span style=&quot;color: #3366CC;&quot;&gt;&amp;quot;My sources say no&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt; &lt;span style=&quot;color: #3366CC;&quot;&gt;&amp;quot;Outlook good&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt; &lt;span style=&quot;color: #3366CC;&quot;&gt;&amp;quot;Outlook not so good&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt; &lt;span style=&quot;color: #3366CC;&quot;&gt;&amp;quot;Reply hazy, try again&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt; &lt;span style=&quot;color: #3366CC;&quot;&gt;&amp;quot;Signs point to yes&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt; &lt;span style=&quot;color: #3366CC;&quot;&gt;&amp;quot;Very doubtful&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt; &lt;span style=&quot;color: #3366CC;&quot;&gt;&amp;quot;Without a doubt&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt; &lt;span style=&quot;color: #3366CC;&quot;&gt;&amp;quot;Yes&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt; &lt;span style=&quot;color: #3366CC;&quot;&gt;&amp;quot;Yes - definitely&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt; &lt;span style=&quot;color: #3366CC;&quot;&gt;&amp;quot;You may rely on it&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#93;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;			_getPrediction&lt;span style=&quot;color: #339933;&quot;&gt;:&lt;/span&gt; &lt;span style=&quot;color: #003366; font-weight: bold;&quot;&gt;function&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;				&lt;span style=&quot;color: #003366; font-weight: bold;&quot;&gt;var&lt;/span&gt; idx &lt;span style=&quot;color: #339933;&quot;&gt;=&lt;/span&gt; Math.&lt;span style=&quot;color: #660066;&quot;&gt;round&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;Math.&lt;span style=&quot;color: #660066;&quot;&gt;random&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #339933;&quot;&gt;*&lt;/span&gt; 19&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;br /&gt;				&lt;span style=&quot;color: #000066; font-weight: bold;&quot;&gt;return&lt;/span&gt; &lt;span style=&quot;color: #000066; font-weight: bold;&quot;&gt;this&lt;/span&gt;._predictions&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#91;&lt;/span&gt;idx&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#93;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;			&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;			initialize&lt;span style=&quot;color: #339933;&quot;&gt;:&lt;/span&gt; &lt;span style=&quot;color: #003366; font-weight: bold;&quot;&gt;function&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;divId&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;				&lt;span style=&quot;color: #000066; font-weight: bold;&quot;&gt;if&lt;/span&gt; &lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;divId &lt;span style=&quot;color: #339933;&quot;&gt;&amp;amp;&amp;amp;&lt;/span&gt; divId.&lt;span style=&quot;color: #660066;&quot;&gt;length&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;br /&gt;					&lt;span style=&quot;color: #000066; font-weight: bold;&quot;&gt;this&lt;/span&gt;.&lt;span style=&quot;color: #660066;&quot;&gt;divId&lt;/span&gt; &lt;span style=&quot;color: #339933;&quot;&gt;=&lt;/span&gt; divId&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;				&lt;span style=&quot;color: #003366; font-weight: bold;&quot;&gt;var&lt;/span&gt; label &lt;span style=&quot;color: #339933;&quot;&gt;=&lt;/span&gt; document.&lt;span style=&quot;color: #660066;&quot;&gt;createElement&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #3366CC;&quot;&gt;&amp;quot;p&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;				label.&lt;span style=&quot;color: #660066;&quot;&gt;innerHTML&lt;/span&gt; &lt;span style=&quot;color: #339933;&quot;&gt;=&lt;/span&gt; &lt;span style=&quot;color: #3366CC;&quot;&gt;&amp;quot;Ask a question. The genie knows the answer...&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;				&lt;span style=&quot;color: #003366; font-weight: bold;&quot;&gt;var&lt;/span&gt; question &lt;span style=&quot;color: #339933;&quot;&gt;=&lt;/span&gt; document.&lt;span style=&quot;color: #660066;&quot;&gt;createElement&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #3366CC;&quot;&gt;&amp;quot;input&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;				question.&lt;span style=&quot;color: #660066;&quot;&gt;size&lt;/span&gt; &lt;span style=&quot;color: #339933;&quot;&gt;=&lt;/span&gt; &lt;span style=&quot;color: #CC0000;&quot;&gt;50&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;				&lt;span style=&quot;color: #003366; font-weight: bold;&quot;&gt;var&lt;/span&gt; button &lt;span style=&quot;color: #339933;&quot;&gt;=&lt;/span&gt; document.&lt;span style=&quot;color: #660066;&quot;&gt;createElement&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #3366CC;&quot;&gt;&amp;quot;button&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;				button.&lt;span style=&quot;color: #660066;&quot;&gt;innerHTML&lt;/span&gt; &lt;span style=&quot;color: #339933;&quot;&gt;=&lt;/span&gt; &lt;span style=&quot;color: #3366CC;&quot;&gt;&amp;quot;Ask!&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;				button.&lt;span style=&quot;color: #660066;&quot;&gt;onclick&lt;/span&gt; &lt;span style=&quot;color: #339933;&quot;&gt;=&lt;/span&gt; &lt;span style=&quot;color: #003366; font-weight: bold;&quot;&gt;function&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;					&lt;span style=&quot;color: #000066;&quot;&gt;alert&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;_Genie._getPrediction&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;					question.&lt;span style=&quot;color: #660066;&quot;&gt;value&lt;/span&gt; &lt;span style=&quot;color: #339933;&quot;&gt;=&lt;/span&gt; &lt;span style=&quot;color: #3366CC;&quot;&gt;&amp;quot;&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;				&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;				&lt;span style=&quot;color: #003366; font-weight: bold;&quot;&gt;var&lt;/span&gt; container &lt;span style=&quot;color: #339933;&quot;&gt;=&lt;/span&gt; document.&lt;span style=&quot;color: #660066;&quot;&gt;getElementById&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #000066; font-weight: bold;&quot;&gt;this&lt;/span&gt;.&lt;span style=&quot;color: #660066;&quot;&gt;divId&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;				container.&lt;span style=&quot;color: #660066;&quot;&gt;appendChild&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;label&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;				container.&lt;span style=&quot;color: #660066;&quot;&gt;appendChild&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;question&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;				container.&lt;span style=&quot;color: #660066;&quot;&gt;appendChild&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;button&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;			&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;		&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;		&lt;br /&gt;&amp;nbsp;&lt;br /&gt;		_Genie.&lt;span style=&quot;color: #660066;&quot;&gt;initialize&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;divId&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;		&lt;span style=&quot;color: #000066; font-weight: bold;&quot;&gt;return&lt;/span&gt; _Genie&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;	&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;/pre&gt;
&lt;p&gt;The HTML then again looks nearly identical to the previous examples, only real difference is that the init function now also gets the YUI API interface as an argument:
&lt;/p&gt;
&lt;pre class=&quot;html4strict&quot; style=&quot;font-family:monospace;&quot;&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;lt;&lt;a href=&quot;http://december.com/html/4/element/html.html&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;html&lt;/span&gt;&lt;/a&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;lt;&lt;a href=&quot;http://december.com/html/4/element/head.html&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;head&lt;/span&gt;&lt;/a&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;	&lt;span style=&quot;color: #009900;&quot;&gt;&amp;lt;&lt;a href=&quot;http://december.com/html/4/element/title.html&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;title&lt;/span&gt;&lt;/a&gt;&amp;gt;&lt;/span&gt;Fun With the Genie!&lt;span style=&quot;color: #009900;&quot;&gt;&amp;lt;&lt;span style=&quot;color: #66cc66;&quot;&gt;/&lt;/span&gt;&lt;a href=&quot;http://december.com/html/4/element/title.html&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;title&lt;/span&gt;&lt;/a&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;	&lt;span style=&quot;color: #009900;&quot;&gt;&amp;lt;&lt;a href=&quot;http://december.com/html/4/element/script.html&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;script&lt;/span&gt;&lt;/a&gt; &lt;span style=&quot;color: #000066;&quot;&gt;type&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;text/javascript&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #000066;&quot;&gt;src&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;js/yui-min.js&amp;quot;&lt;/span&gt;&amp;gt;&amp;lt;&lt;span style=&quot;color: #66cc66;&quot;&gt;/&lt;/span&gt;&lt;a href=&quot;http://december.com/html/4/element/script.html&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;script&lt;/span&gt;&lt;/a&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;	&lt;span style=&quot;color: #009900;&quot;&gt;&amp;lt;&lt;a href=&quot;http://december.com/html/4/element/script.html&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;script&lt;/span&gt;&lt;/a&gt; &lt;span style=&quot;color: #000066;&quot;&gt;type&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;text/javascript&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #000066;&quot;&gt;src&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;js/Genie.js&amp;quot;&lt;/span&gt;&amp;gt;&amp;lt;&lt;span style=&quot;color: #66cc66;&quot;&gt;/&lt;/span&gt;&lt;a href=&quot;http://december.com/html/4/element/script.html&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;script&lt;/span&gt;&lt;/a&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;	&lt;span style=&quot;color: #009900;&quot;&gt;&amp;lt;&lt;a href=&quot;http://december.com/html/4/element/script.html&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;script&lt;/span&gt;&lt;/a&gt; &lt;span style=&quot;color: #000066;&quot;&gt;type&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;text/javascript&amp;quot;&lt;/span&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;		var myGenie = null;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;		function myinit(Y){&lt;br /&gt;			myGenie = new Genie('genie',Y);	&lt;br /&gt;		}&lt;br /&gt;&amp;nbsp;&lt;br /&gt;	 	YUI().use('node', myinit);	&lt;br /&gt;	&lt;span style=&quot;color: #009900;&quot;&gt;&amp;lt;&lt;span style=&quot;color: #66cc66;&quot;&gt;/&lt;/span&gt;&lt;a href=&quot;http://december.com/html/4/element/script.html&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;script&lt;/span&gt;&lt;/a&gt;&amp;gt;&lt;/span&gt;	&lt;br /&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;lt;&lt;span style=&quot;color: #66cc66;&quot;&gt;/&lt;/span&gt;&lt;a href=&quot;http://december.com/html/4/element/head.html&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;head&lt;/span&gt;&lt;/a&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;lt;&lt;a href=&quot;http://december.com/html/4/element/body.html&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;body&lt;/span&gt;&lt;/a&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;	&lt;span style=&quot;color: #009900;&quot;&gt;&amp;lt;&lt;a href=&quot;http://december.com/html/4/element/div.html&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;div&lt;/span&gt;&lt;/a&gt; &lt;span style=&quot;color: #000066;&quot;&gt;id&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;genie&amp;quot;&lt;/span&gt;&amp;gt;&amp;lt;&lt;span style=&quot;color: #66cc66;&quot;&gt;/&lt;/span&gt;&lt;a href=&quot;http://december.com/html/4/element/div.html&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;div&lt;/span&gt;&lt;/a&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;lt;&lt;span style=&quot;color: #66cc66;&quot;&gt;/&lt;/span&gt;&lt;a href=&quot;http://december.com/html/4/element/body.html&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;body&lt;/span&gt;&lt;/a&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;lt;&lt;span style=&quot;color: #66cc66;&quot;&gt;/&lt;/span&gt;&lt;a href=&quot;http://december.com/html/4/element/html.html&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;html&lt;/span&gt;&lt;/a&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;
&lt;p&gt;The &lt;a href=&quot;http://wiki.forum.nokia.com/index.php/File:YUI3_class.zip&quot; class=&quot;external text&quot; title=&quot;http://wiki.forum.nokia.com/index.php/File:YUI3_class.zip&quot; rel=&quot;nofollow&quot;&gt;YUI3_class.zip&lt;/a&gt; shows the full WRT example for the implementation.
&lt;/p&gt;
&lt;a name=&quot;Mootools_implementation&quot; id=&quot;Mootools_implementation&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt; Mootools implementation &lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;Mootools is the only one of these five different methods that actually defines a Class with inheritance. Anyway, the implementation is basically nearly identical to other ones, just the wrapping is different. With Motools I also decided to inherit the Options with Implements, to get the div id handling done in native way.
&lt;/p&gt;
&lt;pre class=&quot;javascript&quot; style=&quot;font-family:monospace;&quot;&gt;&lt;span style=&quot;color: #003366; font-weight: bold;&quot;&gt;var&lt;/span&gt; Genie &lt;span style=&quot;color: #339933;&quot;&gt;=&lt;/span&gt; &lt;span style=&quot;color: #003366; font-weight: bold;&quot;&gt;new&lt;/span&gt; &lt;span style=&quot;color: #003366; font-weight: bold;&quot;&gt;Class&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;	Implements&lt;span style=&quot;color: #339933;&quot;&gt;:&lt;/span&gt; Options&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt;&lt;br /&gt;	options&lt;span style=&quot;color: #339933;&quot;&gt;:&lt;/span&gt; &lt;span style=&quot;color: #009900;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;		divId&lt;span style=&quot;color: #339933;&quot;&gt;:&lt;/span&gt; &lt;span style=&quot;color: #3366CC;&quot;&gt;'genie'&lt;/span&gt;&lt;br /&gt;	&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;	_predictions&lt;span style=&quot;color: #339933;&quot;&gt;:&lt;/span&gt; &lt;span style=&quot;color: #009900;&quot;&gt;&amp;#91;&lt;/span&gt;&lt;br /&gt;			&lt;span style=&quot;color: #3366CC;&quot;&gt;&amp;quot;As I see it, yet&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt;&lt;br /&gt;			&lt;span style=&quot;color: #3366CC;&quot;&gt;&amp;quot;Ask again later&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt;&lt;br /&gt;			&lt;span style=&quot;color: #3366CC;&quot;&gt;&amp;quot;Better not tell you now&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt;&lt;br /&gt;			&lt;span style=&quot;color: #3366CC;&quot;&gt;&amp;quot;Cannot predict now&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt;&lt;br /&gt;			&lt;span style=&quot;color: #3366CC;&quot;&gt;&amp;quot;Concentrate and ask again&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt;&lt;br /&gt;			&lt;span style=&quot;color: #3366CC;&quot;&gt;&amp;quot;Don't count on it&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt;&lt;br /&gt;			&lt;span style=&quot;color: #3366CC;&quot;&gt;&amp;quot;It is certain&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt;&lt;br /&gt;			&lt;span style=&quot;color: #3366CC;&quot;&gt;&amp;quot;It is decidedly so&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt;&lt;br /&gt;			&lt;span style=&quot;color: #3366CC;&quot;&gt;&amp;quot;Most likely&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt;&lt;br /&gt;			&lt;span style=&quot;color: #3366CC;&quot;&gt;&amp;quot;My reply is no&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt;&lt;br /&gt;			&lt;span style=&quot;color: #3366CC;&quot;&gt;&amp;quot;My sources say no&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt;&lt;br /&gt;			&lt;span style=&quot;color: #3366CC;&quot;&gt;&amp;quot;Outlook good&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt;&lt;br /&gt;			&lt;span style=&quot;color: #3366CC;&quot;&gt;&amp;quot;Outlook not so good&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt;&lt;br /&gt;			&lt;span style=&quot;color: #3366CC;&quot;&gt;&amp;quot;Reply hazy, try again&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt;&lt;br /&gt;			&lt;span style=&quot;color: #3366CC;&quot;&gt;&amp;quot;Signs point to yes&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt;&lt;br /&gt;			&lt;span style=&quot;color: #3366CC;&quot;&gt;&amp;quot;Very doubtful&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt;&lt;br /&gt;			&lt;span style=&quot;color: #3366CC;&quot;&gt;&amp;quot;Without a doubt&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt;&lt;br /&gt;			&lt;span style=&quot;color: #3366CC;&quot;&gt;&amp;quot;Yes&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt;&lt;br /&gt;			&lt;span style=&quot;color: #3366CC;&quot;&gt;&amp;quot;Yes - definitely&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt;&lt;br /&gt;			&lt;span style=&quot;color: #3366CC;&quot;&gt;&amp;quot;You may rely on it&amp;quot;&lt;/span&gt;&lt;br /&gt;	&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#93;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;	_getPrediction&lt;span style=&quot;color: #339933;&quot;&gt;:&lt;/span&gt; &lt;span style=&quot;color: #003366; font-weight: bold;&quot;&gt;function&lt;/span&gt; &lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #009900;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;		&lt;span style=&quot;color: #003366; font-weight: bold;&quot;&gt;var&lt;/span&gt; idx &lt;span style=&quot;color: #339933;&quot;&gt;=&lt;/span&gt; Math.&lt;span style=&quot;color: #660066;&quot;&gt;round&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;Math.&lt;span style=&quot;color: #660066;&quot;&gt;random&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt; &lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;*&lt;/span&gt;19&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;br /&gt;		&lt;span style=&quot;color: #000066; font-weight: bold;&quot;&gt;return&lt;/span&gt; &lt;span style=&quot;color: #000066; font-weight: bold;&quot;&gt;this&lt;/span&gt;._predictions&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#91;&lt;/span&gt;idx&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#93;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;	&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;	initialize&lt;span style=&quot;color: #339933;&quot;&gt;:&lt;/span&gt; &lt;span style=&quot;color: #003366; font-weight: bold;&quot;&gt;function&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;options&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;		&lt;span style=&quot;color: #000066; font-weight: bold;&quot;&gt;this&lt;/span&gt;.&lt;span style=&quot;color: #660066;&quot;&gt;setOptions&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;options&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;		&lt;span style=&quot;color: #003366; font-weight: bold;&quot;&gt;var&lt;/span&gt; label &lt;span style=&quot;color: #339933;&quot;&gt;=&lt;/span&gt; document.&lt;span style=&quot;color: #660066;&quot;&gt;createElement&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #3366CC;&quot;&gt;&amp;quot;p&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;		label.&lt;span style=&quot;color: #660066;&quot;&gt;innerHTML&lt;/span&gt; &lt;span style=&quot;color: #339933;&quot;&gt;=&lt;/span&gt; &lt;span style=&quot;color: #3366CC;&quot;&gt;&amp;quot;Ask a question. The genie knows the answer...&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;		&lt;span style=&quot;color: #003366; font-weight: bold;&quot;&gt;var&lt;/span&gt; question &lt;span style=&quot;color: #339933;&quot;&gt;=&lt;/span&gt; document.&lt;span style=&quot;color: #660066;&quot;&gt;createElement&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #3366CC;&quot;&gt;&amp;quot;input&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;		question.&lt;span style=&quot;color: #660066;&quot;&gt;size&lt;/span&gt; &lt;span style=&quot;color: #339933;&quot;&gt;=&lt;/span&gt; &lt;span style=&quot;color: #CC0000;&quot;&gt;50&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;		&lt;span style=&quot;color: #003366; font-weight: bold;&quot;&gt;var&lt;/span&gt; button &lt;span style=&quot;color: #339933;&quot;&gt;=&lt;/span&gt; document.&lt;span style=&quot;color: #660066;&quot;&gt;createElement&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #3366CC;&quot;&gt;&amp;quot;button&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;		button.&lt;span style=&quot;color: #660066;&quot;&gt;innerHTML&lt;/span&gt; &lt;span style=&quot;color: #339933;&quot;&gt;=&lt;/span&gt; &lt;span style=&quot;color: #3366CC;&quot;&gt;&amp;quot;Ask!&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;		button.&lt;span style=&quot;color: #660066;&quot;&gt;onclick&lt;/span&gt; &lt;span style=&quot;color: #339933;&quot;&gt;=&lt;/span&gt; &lt;span style=&quot;color: #003366; font-weight: bold;&quot;&gt;function&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt; &lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #009900;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;			&lt;span style=&quot;color: #000066;&quot;&gt;alert&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;Genie.&lt;span style=&quot;color: #660066;&quot;&gt;prototype&lt;/span&gt;._getPrediction&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt; &lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;			question.&lt;span style=&quot;color: #660066;&quot;&gt;value&lt;/span&gt; &lt;span style=&quot;color: #339933;&quot;&gt;=&lt;/span&gt; &lt;span style=&quot;color: #3366CC;&quot;&gt;&amp;quot;&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;		&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;		&lt;span style=&quot;color: #003366; font-weight: bold;&quot;&gt;var&lt;/span&gt; container &lt;span style=&quot;color: #339933;&quot;&gt;=&lt;/span&gt; document.&lt;span style=&quot;color: #660066;&quot;&gt;getElementById&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #000066; font-weight: bold;&quot;&gt;this&lt;/span&gt;.&lt;span style=&quot;color: #660066;&quot;&gt;options&lt;/span&gt;.&lt;span style=&quot;color: #660066;&quot;&gt;divId&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;		container.&lt;span style=&quot;color: #660066;&quot;&gt;appendChild&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;label&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;		container.&lt;span style=&quot;color: #660066;&quot;&gt;appendChild&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;question&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;		container.&lt;span style=&quot;color: #660066;&quot;&gt;appendChild&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;button&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;  &lt;span style=&quot;color: #009900;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;/pre&gt;
&lt;p&gt;The HTML is again nearly identical, the only real difference to previous examples is the argument format passed for the Genie:
&lt;/p&gt;
&lt;pre class=&quot;html4strict&quot; style=&quot;font-family:monospace;&quot;&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;lt;&lt;a href=&quot;http://december.com/html/4/element/html.html&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;html&lt;/span&gt;&lt;/a&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;lt;&lt;a href=&quot;http://december.com/html/4/element/head.html&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;head&lt;/span&gt;&lt;/a&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;	&lt;span style=&quot;color: #009900;&quot;&gt;&amp;lt;&lt;a href=&quot;http://december.com/html/4/element/title.html&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;title&lt;/span&gt;&lt;/a&gt;&amp;gt;&lt;/span&gt;Fun With the Genie!&lt;span style=&quot;color: #009900;&quot;&gt;&amp;lt;&lt;span style=&quot;color: #66cc66;&quot;&gt;/&lt;/span&gt;&lt;a href=&quot;http://december.com/html/4/element/title.html&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;title&lt;/span&gt;&lt;/a&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;	&lt;span style=&quot;color: #009900;&quot;&gt;&amp;lt;&lt;a href=&quot;http://december.com/html/4/element/script.html&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;script&lt;/span&gt;&lt;/a&gt; &lt;span style=&quot;color: #000066;&quot;&gt;type&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;text/javascript&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #000066;&quot;&gt;src&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;js/mootools-1.2.4-core.js&amp;quot;&lt;/span&gt;&amp;gt;&amp;lt;&lt;span style=&quot;color: #66cc66;&quot;&gt;/&lt;/span&gt;&lt;a href=&quot;http://december.com/html/4/element/script.html&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;script&lt;/span&gt;&lt;/a&gt;&amp;gt;&lt;/span&gt;	&lt;br /&gt;	&lt;span style=&quot;color: #009900;&quot;&gt;&amp;lt;&lt;a href=&quot;http://december.com/html/4/element/script.html&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;script&lt;/span&gt;&lt;/a&gt; &lt;span style=&quot;color: #000066;&quot;&gt;type&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;text/javascript&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #000066;&quot;&gt;src&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;js/Genie.js&amp;quot;&lt;/span&gt;&amp;gt;&amp;lt;&lt;span style=&quot;color: #66cc66;&quot;&gt;/&lt;/span&gt;&lt;a href=&quot;http://december.com/html/4/element/script.html&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;script&lt;/span&gt;&lt;/a&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;	&lt;span style=&quot;color: #009900;&quot;&gt;&amp;lt;&lt;a href=&quot;http://december.com/html/4/element/script.html&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;script&lt;/span&gt;&lt;/a&gt; &lt;span style=&quot;color: #000066;&quot;&gt;type&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;text/javascript&amp;quot;&lt;/span&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;		var myGenie = null;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;	  	function myinit(){&lt;br /&gt;			myGenie = new Genie({div: 'genie'});&lt;br /&gt;		}&lt;br /&gt;&amp;nbsp;&lt;br /&gt;	 	window.addEvent('domready',myinit);	 	&lt;br /&gt;	&lt;span style=&quot;color: #009900;&quot;&gt;&amp;lt;&lt;span style=&quot;color: #66cc66;&quot;&gt;/&lt;/span&gt;&lt;a href=&quot;http://december.com/html/4/element/script.html&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;script&lt;/span&gt;&lt;/a&gt;&amp;gt;&lt;/span&gt;	&lt;br /&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;lt;&lt;span style=&quot;color: #66cc66;&quot;&gt;/&lt;/span&gt;&lt;a href=&quot;http://december.com/html/4/element/head.html&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;head&lt;/span&gt;&lt;/a&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;lt;&lt;a href=&quot;http://december.com/html/4/element/body.html&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;body&lt;/span&gt;&lt;/a&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;	&lt;span style=&quot;color: #009900;&quot;&gt;&amp;lt;&lt;a href=&quot;http://december.com/html/4/element/div.html&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;div&lt;/span&gt;&lt;/a&gt; &lt;span style=&quot;color: #000066;&quot;&gt;id&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;genie&amp;quot;&lt;/span&gt;&amp;gt;&amp;lt;&lt;span style=&quot;color: #66cc66;&quot;&gt;/&lt;/span&gt;&lt;a href=&quot;http://december.com/html/4/element/div.html&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;div&lt;/span&gt;&lt;/a&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;lt;&lt;span style=&quot;color: #66cc66;&quot;&gt;/&lt;/span&gt;&lt;a href=&quot;http://december.com/html/4/element/body.html&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;body&lt;/span&gt;&lt;/a&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;lt;&lt;span style=&quot;color: #66cc66;&quot;&gt;/&lt;/span&gt;&lt;a href=&quot;http://december.com/html/4/element/html.html&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;html&lt;/span&gt;&lt;/a&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;
&lt;p&gt;The &lt;a href=&quot;http://wiki.forum.nokia.com/index.php/File:Mootools_class.zip&quot; class=&quot;external text&quot; title=&quot;http://wiki.forum.nokia.com/index.php/File:Mootools_class.zip&quot; rel=&quot;nofollow&quot;&gt;Mootools_class.zip&lt;/a&gt; shows the full WRT example for the implementation.
&lt;/p&gt;</description>
			<pubDate>Thu, 12 Nov 2009 09:47:58 GMT</pubDate>			<dc:creator>Sah2ed</dc:creator>			<comments>http://wiki.forum.nokia.com/index.php/Talk:Constructing_simply_UI_classes_with_Javascript</comments>		</item>
		<item>
			<title>Button</title>
			<link>http://wiki.forum.nokia.com/index.php/Button</link>
			<description>&lt;a name=&quot;Inheritance&quot; id=&quot;Inheritance&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;Inheritance&lt;/span&gt;&lt;/h1&gt;
&lt;pre class=&quot;text&quot; style=&quot;font-family:monospace;&quot;&gt;Nokia.Widget&lt;br /&gt;    | - Nokia.Button&lt;/pre&gt;
&lt;a name=&quot;1_-_Description&quot; id=&quot;1_-_Description&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;1 - Description&lt;/span&gt;&lt;/h1&gt;
&lt;p&gt;The traditional Button component. 
&lt;/p&gt;
&lt;a name=&quot;2_-_Visual_Design&quot; id=&quot;2_-_Visual_Design&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;2 - Visual Design&lt;/span&gt;&lt;/h1&gt;
&lt;p&gt;&lt;a href=&quot;/index.php/File:Button02.png&quot; class=&quot;image&quot; title=&quot;File:Button02.png&quot;&gt;&lt;img alt=&quot;File:Button02.png&quot; src=&quot;http://www.forum.nokia.com/piazza/wiki/images/b/b2/Button02.png&quot; width=&quot;99&quot; height=&quot;39&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;
&lt;a href=&quot;/index.php/File:Button01.png&quot; class=&quot;image&quot; title=&quot;File:Button01.png&quot;&gt;&lt;img alt=&quot;File:Button01.png&quot; src=&quot;http://www.forum.nokia.com/piazza/wiki/images/5/54/Button01.png&quot; width=&quot;99&quot; height=&quot;39&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;
&lt;a href=&quot;/index.php/File:Button03.png&quot; class=&quot;image&quot; title=&quot;File:Button03.png&quot;&gt;&lt;img alt=&quot;File:Button03.png&quot; src=&quot;http://www.forum.nokia.com/piazza/wiki/images/2/25/Button03.png&quot; width=&quot;99&quot; height=&quot;39&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;
&lt;a href=&quot;/index.php/File:Button04.png&quot; class=&quot;image&quot; title=&quot;File:Button04.png&quot;&gt;&lt;img alt=&quot;File:Button04.png&quot; src=&quot;http://www.forum.nokia.com/piazza/wiki/images/d/d2/Button04.png&quot; width=&quot;99&quot; height=&quot;39&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;
&lt;a name=&quot;3_-_Component_Dependencies&quot; id=&quot;3_-_Component_Dependencies&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;3 - Component Dependencies&lt;/span&gt;&lt;/h1&gt;
&lt;a name=&quot;3.1_CSS&quot; id=&quot;3.1_CSS&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;3.1 CSS&lt;/span&gt;&lt;/h2&gt;
&lt;pre&gt;
&amp;lt;!-- Themeroller CSS --&amp;gt;
&amp;lt;link rel=&amp;quot;stylesheet&amp;quot; href=&amp;quot;themes/themeroller/&amp;lt;theme&amp;gt;/Themeroller.css&amp;quot; type=&amp;quot;text/css&amp;quot; media=&amp;quot;screen&amp;quot;&amp;gt;
&amp;lt;!-- Specific Theme/Resolution CSS --&amp;gt;
&amp;lt;link rel=&amp;quot;stylesheet&amp;quot; href=&amp;quot;/themes/nokia/ext-theme/&amp;lt;theme&amp;gt;/&amp;lt;resolution&amp;gt;/custom.css&amp;quot; type=&amp;quot;text/css&amp;quot; media=&amp;quot;screen&amp;quot;&amp;gt;
&lt;/pre&gt; 
&lt;a name=&quot;3.2_Javascript&quot; id=&quot;3.2_Javascript&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;3.2 Javascript&lt;/span&gt;&lt;/h2&gt;
&lt;pre&gt;
&amp;lt;!-- jQuery file --&amp;gt;
&amp;lt;script src=&amp;quot;/lib/jquery/jQuery.js&amp;quot; type=&amp;quot;text/javascript&amp;quot; charset=&amp;quot;utf-8&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;!-- Guarana file --&amp;gt;
&amp;lt;script src=&amp;quot;/lib/Guarana.js&amp;quot; type=&amp;quot;text/javascript&amp;quot; charset=&amp;quot;utf-8&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&lt;/pre&gt; 
&lt;a name=&quot;4_-_Functional_Specifications.2FRequirements&quot; id=&quot;4_-_Functional_Specifications.2FRequirements&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;4 - Functional Specifications/Requirements&lt;/span&gt;&lt;/h1&gt;
&lt;a name=&quot;4.1_-_Options:&quot; id=&quot;4.1_-_Options:&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;4.1 - Options:&lt;/span&gt;&lt;/h2&gt;
&lt;ul&gt;&lt;li&gt;  element: 'selector' 
&lt;ul&gt;&lt;li&gt; jQuery selector or the DOM reference to become the container of the component. 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;label: string 
&lt;ul&gt;&lt;li&gt;Label content to be included in the component. 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;disable: boolean 
&lt;ul&gt;&lt;li&gt;Defines whether the component is disabled. 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;keeppressed: boolean 
&lt;ul&gt;&lt;li&gt;Defines whether the component is in keeppressed mode.  
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;pressed: boolean 
&lt;ul&gt;&lt;li&gt;Defines whether the component is pressed.  
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;roundedCorners: boolean 
&lt;ul&gt;&lt;li&gt;Defines whether the component has rounded corners.  
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;width: int 
&lt;ul&gt;&lt;li&gt;Defines the component width. 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;height: int 
&lt;ul&gt;&lt;li&gt;Defines the component height. 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;click: function 
&lt;ul&gt;&lt;li&gt;Defines the called function to click callback. 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;disable: function 
&lt;ul&gt;&lt;li&gt;Defines the called function to disable callback. 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;enable: function 
&lt;ul&gt;&lt;li&gt;Defines the called function to enable callback. 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;press: function 
&lt;ul&gt;&lt;li&gt;Defines the called function to press callback. 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;unpress: function 
&lt;ul&gt;&lt;li&gt;Defines the called function to unpress callback. 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;a name=&quot;4.2_-_Events_-_Callbacks&quot; id=&quot;4.2_-_Events_-_Callbacks&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;4.2 - Events - Callbacks&lt;/span&gt;&lt;/h2&gt;
&lt;ul&gt;&lt;li&gt;create: function() 
&lt;ul&gt;&lt;li&gt;Scope: [this.element] 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;click: function(event) 
&lt;ul&gt;&lt;li&gt;Scope: [this.element] 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;disable: function(event) 
&lt;ul&gt;&lt;li&gt;Scope: [this.element] 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;enable: function(event) 
&lt;ul&gt;&lt;li&gt;Scope: [this.element] 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;press: function(event) 
&lt;ul&gt;&lt;li&gt;Scope: [this.element] 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;unpress: function(event) 
&lt;ul&gt;&lt;li&gt;Scope: [this.element] 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;a name=&quot;4.3_-_Methods&quot; id=&quot;4.3_-_Methods&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;4.3 - Methods&lt;/span&gt;&lt;/h2&gt;
&lt;ul&gt;&lt;li&gt;enable: function() 
&lt;ul&gt;&lt;li&gt;Enables the button component. 
&lt;/li&gt;&lt;li&gt;return [void] 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;disable: function() 
&lt;ul&gt;&lt;li&gt;Disables the button component. 
&lt;/li&gt;&lt;li&gt;return [void] 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;press: function() 
&lt;ul&gt;&lt;li&gt;Performs the button component press. 
&lt;/li&gt;&lt;li&gt;return [void]  
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;unpress: function() 
&lt;ul&gt;&lt;li&gt;Performs the button component unpress. 
&lt;/li&gt;&lt;li&gt;return [void] 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;setLabel: function() 
&lt;ul&gt;&lt;li&gt;Sets a specific label for the button component. 
&lt;/li&gt;&lt;li&gt;return [void] 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;getLabel: function() 
&lt;ul&gt;&lt;li&gt;Returns the component label 
&lt;/li&gt;&lt;li&gt;return [string] 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;setClick: function() 
&lt;ul&gt;&lt;li&gt;Reassign the click function. 
&lt;/li&gt;&lt;li&gt;return [void]
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;/ul&gt;
&lt;a name=&quot;4.4_-_Default_options&quot; id=&quot;4.4_-_Default_options&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;4.4 - Default options&lt;/span&gt;&lt;/h2&gt;
&lt;ul&gt;&lt;li&gt;element: &quot;, 
&lt;/li&gt;&lt;li&gt;label: ' ', 
&lt;/li&gt;&lt;li&gt;disabled: false, 
&lt;/li&gt;&lt;li&gt;keeppressed: false, 
&lt;/li&gt;&lt;li&gt;pressed: false, 
&lt;/li&gt;&lt;li&gt;roundedCorners: true, 
&lt;/li&gt;&lt;li&gt;width: 'auto', 
&lt;/li&gt;&lt;li&gt;height: 'auto' 
&lt;/li&gt;&lt;li&gt;click: function() {}, 
&lt;/li&gt;&lt;li&gt;disable: function() {}, 
&lt;/li&gt;&lt;li&gt;enable: function() {}, 
&lt;/li&gt;&lt;li&gt;press: function() {}, 
&lt;/li&gt;&lt;li&gt;unpress: function() {}
&lt;/li&gt;&lt;/ul&gt;
&lt;a name=&quot;5_-_Component_Demo&quot; id=&quot;5_-_Component_Demo&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;5 - Component Demo&lt;/span&gt;&lt;/h1&gt;
&lt;a name=&quot;5.1_HTML&quot; id=&quot;5.1_HTML&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;5.1 HTML&lt;/span&gt;&lt;/h2&gt;
&lt;pre&gt;
&amp;lt;span id=&amp;quot;button01&amp;quot; class=&amp;quot;btn&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;
&lt;/pre&gt;
&lt;a name=&quot;5.2_Javascript&quot; id=&quot;5.2_Javascript&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;5.2 Javascript&lt;/span&gt;&lt;/h2&gt;
&lt;pre&gt;
var btn1 = new Nokia.Button({
     element: '#button01',
     disabled: false,
     keeppressed: false,
     label: 'Button 01',
     create: function() {
          //alert('Button: Created');
     },
     click: function() {
          //alert('Button: Click');
     }
});
&lt;/pre&gt;
&lt;a name=&quot;6_-_Nokia_WRT_Browser_Compatibility&quot; id=&quot;6_-_Nokia_WRT_Browser_Compatibility&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;6 - Nokia WRT Browser Compatibility&lt;/span&gt;&lt;/h1&gt;
&lt;table class=&quot;pbNotSortable&quot; cellspacing=&quot;1&quot; cellpadding=&quot;1&quot; width=&quot;300&quot; align=&quot;left&quot; style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 0px; border-top: rgb(211,211,211) 1px dotted; padding-left: 0px; font-size: 13px; padding-bottom: 0px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 0px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; border-collapse: collapse&quot;&gt;
            &lt;tr style=&quot;border-top-width: 0px; padding-right: 0px; padding-left: 0px; border-left-width: 0px; font-size: 13px; border-bottom-width: 0px; padding-bottom: 0px; margin: 0px; vertical-align: baseline; padding-top: 0px; font-family: inherit; border-right-width: 0px&quot;&gt;
            &lt;td class=&quot;sorttable_sorted_reverse&quot; style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 4px; border-top: rgb(211,211,211) 1px dotted; padding-left: 4px; font-weight: 400; font-size: 13px; padding-bottom: 2px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 2px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; background-color: rgb(255,255,255); text-align: left&quot;&gt;&lt;span id=&quot;sorttable_sortrevind&quot; style=&quot;border-top-width: 0px; padding-right: 0px; padding-left: 0px; border-left-width: 0px; font-size: 13px; float: left; border-bottom-width: 0px; padding-bottom: 0px; margin: 0px; vertical-align: baseline; padding-top: 0px; font-family: inherit; border-right-width: 0px&quot;&gt;▴&amp;nbsp;&lt;/span&gt;&amp;nbsp;&lt;/td&gt;
            &lt;td style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 4px; border-top: rgb(211,211,211) 1px dotted; padding-left: 4px; font-weight: 400; font-size: 13px; padding-bottom: 2px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 2px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; background-color: rgb(255,255,255); text-align: left&quot;&gt;&lt;strong&gt;S60 3.1&lt;/strong&gt;&lt;/td&gt;
            &lt;td style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 4px; border-top: rgb(211,211,211) 1px dotted; padding-left: 4px; font-weight: 400; font-size: 13px; padding-bottom: 2px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 2px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; background-color: rgb(255,255,255); text-align: left&quot;&gt;&lt;strong&gt;S60 3.2&lt;/strong&gt;&lt;/td&gt;
            &lt;td style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 4px; border-top: rgb(211,211,211) 1px dotted; padding-left: 4px; font-weight: 400; font-size: 13px; padding-bottom: 2px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 2px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; background-color: rgb(255,255,255); text-align: left&quot;&gt;&lt;strong&gt;S60 5.0&lt;/strong&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style=&quot;border-top-width: 0px; padding-right: 0px; padding-left: 0px; border-left-width: 0px; font-size: 13px; border-bottom-width: 0px; padding-bottom: 0px; margin: 0px; vertical-align: baseline; padding-top: 0px; font-family: inherit; border-right-width: 0px&quot;&gt;
            &lt;td style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 4px; border-top: rgb(211,211,211) 1px dotted; padding-left: 4px; font-weight: 400; font-size: 13px; padding-bottom: 2px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 2px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; background-color: rgb(255,255,255); text-align: left&quot;&gt;Button&lt;/td&gt;
            &lt;td bgcolor=&quot;#000000&quot; style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 4px; border-top: rgb(211,211,211) 1px dotted; padding-left: 4px; font-weight: 400; font-size: 13px; padding-bottom: 2px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 2px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; background-color: rgb(255,255,255); text-align: left&quot;&gt;&lt;span style=&quot;border-top-width: 0px; padding-right: 0px; padding-left: 0px; border-left-width: 0px; font-size: 13px; border-bottom-width: 0px; padding-bottom: 0px; margin: 0px; vertical-align: baseline; color: rgb(51,153,102); padding-top: 0px; font-family: inherit; border-right-width: 0px&quot;&gt;NO&amp;nbsp;&lt;/span&gt;&lt;/td&gt;
            &lt;td bgcolor=&quot;#000000&quot; style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 4px; border-top: rgb(211,211,211) 1px dotted; padding-left: 4px; font-weight: 400; font-size: 13px; padding-bottom: 2px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 2px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; background-color: rgb(255,255,255); text-align: left&quot;&gt;&lt;span style=&quot;border-top-width: 0px; padding-right: 0px; padding-left: 0px; border-left-width: 0px; font-size: 13px; border-bottom-width: 0px; padding-bottom: 0px; margin: 0px; vertical-align: baseline; color: rgb(51,153,102); padding-top: 0px; font-family: inherit; border-right-width: 0px&quot;&gt;YES&amp;nbsp;&lt;/span&gt;&lt;/td&gt;
            &lt;td bgcolor=&quot;#000000&quot; style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 4px; border-top: rgb(211,211,211) 1px dotted; padding-left: 4px; font-weight: 400; font-size: 13px; padding-bottom: 2px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 2px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; background-color: rgb(255,255,255); text-align: left&quot;&gt;&lt;span style=&quot;border-top-width: 0px; padding-right: 0px; padding-left: 0px; border-left-width: 0px; font-size: 13px; border-bottom-width: 0px; padding-bottom: 0px; margin: 0px; vertical-align: baseline; color: rgb(51,153,102); padding-top: 0px; font-family: inherit; border-right-width: 0px&quot;&gt;YES&amp;nbsp;&lt;/span&gt;&lt;/td&gt;
        &lt;/tr&gt;
&lt;/table&gt;
</description>
			<pubDate>Wed, 18 Nov 2009 14:44:05 GMT</pubDate>			<dc:creator>Hkaliste</dc:creator>			<comments>http://wiki.forum.nokia.com/index.php/Talk:Button</comments>		</item>
		<item>
			<title>UI Manager Overview</title>
			<link>http://wiki.forum.nokia.com/index.php/UI_Manager_Overview</link>
			<description>&lt;p&gt;In this page we described how the developer can use the WRT Framework UI Manager.
&lt;/p&gt;&lt;p&gt;&lt;br /&gt; 
&lt;/p&gt;&lt;p&gt;We will have a class Nokia.View, below a draft for this:
&lt;/p&gt;
&lt;pre&gt;
Nokia.View = new Class({
initialize: function(options) {
        var instance = this;
        instance.options = jQuery.extend({ container: this._createContainter() }, options);
        this.setContainer(instance.options.container);
        this.init(); // call the init() for lifecycle
    },
    _createContainter: function() {
        return Nokia.dom.parseHTML('&amp;lt;div class=&amp;quot;nokia-view-container&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;');
    },
    setContainer: function(container) {
        this._container = jQuery(container);
    },
    getContainer: function() {
        return this._container;
    },
    render: function(target) {
        this._renderUI(target || document.body);
        this.renderUI();
        this.bindUI();
        this.syncUI();
    },
    show: function() {
        this.getContainer().show();
        // this calls the show callback
    },
    hide: function() {
        this.getContainer().hide();
        // this calls the hide callback
    },
    _renderUI: function(target) {
        Nokia.dom.append(target, this.getContainer());
    },
    destroy: function() {    
   // this makes the elements distribution and unbinds
    }
});
&lt;/pre&gt;
&lt;p&gt;Take a look on method render. This method will make the content inclusion on the DOM, adding elements and modifying the existed one. This also adds listeners for events. Morever, the manages th Lifecycle in widgets, to have logic and DOM integration in a separated way.
&lt;/p&gt;&lt;p&gt;&lt;br /&gt; 
&lt;/p&gt;&lt;p&gt;&lt;br /&gt; 
&lt;/p&gt;&lt;p&gt;In the Class Nokia.ViewControl we will have the View manipulations:
&lt;/p&gt;
&lt;pre&gt;
Nokia.ViewControl = new Class({
     initialize: function() {
     // this call .show() for the first view (index 0)
     },
    next: function() {
        // this call .show() for the next view in stack
    },
    prev: function() {
        // this call .show() for the previous view in stack
    },
    show: function(index) {
        // this call .show() for the view in index
    },
    hide: function(index) {
        // this call .hide() for the view in index
    },
    getCurrentView: function() {
        // returns the current view
    },
    getCurrentIndex: function() {
        // returns the current view index
    },
    add: function(view) {
        // this adds a view in stack
    },
    remove: function(view or index) {
        // this removes a view in stack
    },
    size: function() {
        // this returns the view stack size
    }
});
&lt;/pre&gt;
&lt;p&gt;&lt;br /&gt;
Here, how this will be used in a Widget: 
&lt;/p&gt;
&lt;pre&gt;
/*
 * Developer Implementation
 * - First View    
 */

var FirstPageView = Nokia.View.extend({
    /*
    * Lifecycle
    */
    init: function() {
        console.log(&amp;quot;Init for my View&amp;quot;);
    },
    renderUI: function() {
        this._cabecalho = Nokia.dom.parseHTML('&amp;lt;div class=&amp;quot;nokia-view-cabecalho&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;');
        Nokia.dom.append(this.getContainer(), this._cabecalho);
    },
    bindUI: function() {
        this._cabecalho.click(function() {
            console.log('clicked on cabecalho');
        });
    },
    syncUI: function() {
        this._cabecalho.css('background', 'blue');
    }
});

/*
 * Developer Implementation
 * - Second View    
 */

var SecondPageView = Nokia.View.extend({
    /*
    * Lifecycle
    */
    renderUI: function() {
        this._meioDaPaginaBlah = Nokia.dom.parseHTML('&amp;lt;div class=&amp;quot;nokia-view-meio&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;');
        this._linkBack = Nokia.dom.parseHTML('&amp;lt;a href=&amp;quot;&amp;quot;&amp;gt;Voltar&amp;lt;/a&amp;gt;');
        Nokia.dom.append(this._meioDaPaginaBlah, this._linkBack);
        Nokia.dom.append(this.getContainer(), this._meioDaPaginaBlah);
    },
    bindUI: function() {
        this._meioDaPaginaBlah.click(function() {
            console.log('clicou no meio da pagina');
        });
        this._linkBack.click(function() {
            // ViewControlGlobal GLOBAL chamando o back()
            console.log( &amp;quot;Current index: &amp;quot;, ViewControlGlobal.getCurrentIndex() );
            ViewControlGlobal.prev();
        });
    },
    getEntradasAjax: function(callback) {
        // AJAX
    },
    show: function() {
        this.getEntradasAjax(function(entradas) {
            // Show entries
        });
    }
}); 

var viewControll = new Nokia.ViewControl();

viewControl.add(
     new FirstPageView()
);

viewControl.add(
    new SecondPageView({
        container: '#containerPreCriado',
        //callbacks
        show: function() {
            // call  show
        },
        hide: function() {
            // call hide
        }
    });
); 
&lt;/pre&gt;
</description>
			<pubDate>Wed, 18 Nov 2009 07:22:55 GMT</pubDate>			<dc:creator>Forum Nokia KB</dc:creator>			<comments>http://wiki.forum.nokia.com/index.php/Talk:UI_Manager_Overview</comments>		</item>
		<item>
			<title>GuaranaUI-Overview</title>
			<link>http://wiki.forum.nokia.com/index.php/GuaranaUI-Overview</link>
			<description>&lt;p&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;a name=&quot;The_Guarana_UI_Overview&quot; id=&quot;The_Guarana_UI_Overview&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;The Guarana UI Overview&lt;/span&gt;&lt;/h1&gt;
&lt;p&gt;In this section we make general overview about WRT Framework. We describe the Library Structure, the Build System and the Javascript and CSS architecture. 
&lt;/p&gt;&lt;p&gt;&lt;a href=&quot;/index.php/File:Js4WRT-Features-Overview.png&quot; class=&quot;image&quot; title=&quot;File:Js4WRT-Features-Overview.png&quot;&gt;&lt;img alt=&quot;File:Js4WRT-Features-Overview.png&quot; src=&quot;http://www.forum.nokia.com/piazza/wiki/images/7/79/Js4WRT-Features-Overview.png&quot; width=&quot;470&quot; height=&quot;334&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;
&lt;a name=&quot;The_Framework_Structure&quot; id=&quot;The_Framework_Structure&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;The Framework Structure&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;&lt;a href=&quot;/index.php/File:Js4WRT-Folder-Structure.png&quot; class=&quot;image&quot; title=&quot;File:Js4WRT-Folder-Structure.png&quot;&gt;&lt;img alt=&quot;File:Js4WRT-Folder-Structure.png&quot; src=&quot;http://www.forum.nokia.com/piazza/wiki/images/e/e2/Js4WRT-Folder-Structure.png&quot; width=&quot;136&quot; height=&quot;138&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;
&lt;a name=&quot;Build_.28build_folder.29&quot; id=&quot;Build_.28build_folder.29&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;Build (build folder)&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;This folder is the Guarana Build System. We will talk more about it in the next section.
&lt;/p&gt;
&lt;a name=&quot;Components_Demos_.28demos_folder.29&quot; id=&quot;Components_Demos_.28demos_folder.29&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;Components Demos (demos folder)&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;This folder include demos for the UI components. We have a demo for each Guarana component.  
&lt;/p&gt;
&lt;a name=&quot;JQuery_files_.28lib_folder.29&quot; id=&quot;JQuery_files_.28lib_folder.29&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;JQuery files (lib folder)&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;This folder includes &lt;a href=&quot;http://www.jquery.com&quot; class=&quot;external text&quot; title=&quot;http://www.jquery.com&quot; rel=&quot;nofollow&quot;&gt;JQuery&lt;/a&gt; Files used by Guarana. The JQuery version used is 1.2.6. This version is the most compatible version thats works stable in S60 devices.
&lt;/p&gt;
&lt;a name=&quot;Core_files_.28src_folder.29&quot; id=&quot;Core_files_.28src_folder.29&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;Core files (src folder)&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;This folder includes all javascript core files. Here we have library core files and components implementation files. Additionally we have a sub-folder called i18n that has information about components internationalization. In the current version, the only that have internationalization is Date component. 
&lt;/p&gt;
&lt;a name=&quot;Themes_.28themes_folder.29&quot; id=&quot;Themes_.28themes_folder.29&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;Themes (themes folder)&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;This folders includes all CSS files used by WRT Framework. The two sub-folders presented are described bellow:
&lt;/p&gt;&lt;p&gt;a) themeroller: This is the jQuery UI CSS Framework used by Framework. More information about Themeroller is available &lt;a href=&quot;http://www.jqueryui.com/themeroller/&quot; class=&quot;external text&quot; title=&quot;http://www.jqueryui.com/themeroller/&quot; rel=&quot;nofollow&quot;&gt;here&lt;/a&gt;.
&lt;/p&gt;&lt;p&gt;b) nokia: This is the nokia base. Here we have component CSS base for Guarana UI. The default base CSS is designed for 360x640 resolution with Nokia Green Theme. Everything different from this, i.e. 240x320 resolutions or other theme, need to be implemented as an nokia base extension.
&lt;/p&gt;&lt;p&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;a name=&quot;The_Guarana_Build_System&quot; id=&quot;The_Guarana_Build_System&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;The Guarana Build System&lt;/span&gt;&lt;/h1&gt;
&lt;p&gt;The library has an automated build system that makes packaging process easy and fast. This optimized the production version concatenating and minifying all CSS and javascript files in a single one file. After this we have a minimized and simplified version for the Framework. To build Guarana, use the following commands. An important point is that the &lt;a href=&quot;http://ant.apache.org/&quot; class=&quot;external text&quot; title=&quot;http://ant.apache.org/&quot; rel=&quot;nofollow&quot;&gt;Apache Ant Tool&lt;/a&gt; must be configured:
&lt;/p&gt;
&lt;pre class=&quot;text&quot; style=&quot;font-family:monospace;&quot;&gt;$ cd build&lt;br /&gt;&amp;nbsp;&lt;br /&gt;$ ant&lt;/pre&gt; 
&lt;p&gt;The build output is a folder Guarana in the build foldere, the structure is detailed:
&lt;/p&gt;
&lt;a name=&quot;demos.2F&quot; id=&quot;demos.2F&quot;&gt;&lt;/a&gt;&lt;h3&gt; &lt;span class=&quot;mw-headline&quot;&gt; &lt;b&gt;demos&lt;/b&gt;/&lt;/span&gt;&lt;/h3&gt;
&lt;ul&gt;&lt;li&gt; This includes a demo for each component available in the Framework. 
&lt;/li&gt;&lt;/ul&gt;
&lt;a name=&quot;lib.2F&quot; id=&quot;lib.2F&quot;&gt;&lt;/a&gt;&lt;h3&gt; &lt;span class=&quot;mw-headline&quot;&gt;&lt;b&gt;lib&lt;/b&gt;/&lt;/span&gt;&lt;/h3&gt;
&lt;ul&gt;&lt;li&gt; This file includes all javascript componentes implementation and &lt;a href=&quot;http://www.jquery.com&quot; class=&quot;external text&quot; title=&quot;http://www.jquery.com&quot; rel=&quot;nofollow&quot;&gt;jQuery&lt;/a&gt;.
&lt;/li&gt;&lt;/ul&gt;
&lt;a name=&quot;themes.2Fthemeroller.2F&quot; id=&quot;themes.2Fthemeroller.2F&quot;&gt;&lt;/a&gt;&lt;h3&gt; &lt;span class=&quot;mw-headline&quot;&gt; &lt;b&gt;themes/themeroller&lt;/b&gt;/&lt;/span&gt;&lt;/h3&gt;
&lt;ul&gt;&lt;li&gt; The Themeroller CSS Theme, according the theme setted in the build.
&lt;/li&gt;&lt;/ul&gt;
&lt;a name=&quot;themes.2Fnokia.2Fbase.2F&quot; id=&quot;themes.2Fnokia.2Fbase.2F&quot;&gt;&lt;/a&gt;&lt;h3&gt; &lt;span class=&quot;mw-headline&quot;&gt; &lt;b&gt;themes/nokia/base&lt;/b&gt;/&lt;/span&gt;&lt;/h3&gt;
&lt;ul&gt;&lt;li&gt; The Nokia base CSS File. The default base CSS is designed for 360x640 resolution with Nokia Green Theme. Everything different from this, i.e. 240x320 resolutions or other theme need to be implemented as an nokia base extension. We will talk more about it in next item.
&lt;/li&gt;&lt;/ul&gt;
&lt;a name=&quot;themes.2FNokia.2F.3Ctheme.3E.2F.3Cresolution.3E&quot; id=&quot;themes.2FNokia.2F.3Ctheme.3E.2F.3Cresolution.3E&quot;&gt;&lt;/a&gt;&lt;h3&gt; &lt;span class=&quot;mw-headline&quot;&gt;&lt;b&gt;themes/Nokia/&amp;lt;theme&amp;gt;/&amp;lt;resolution&amp;gt;&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;ul&gt;&lt;li&gt; &lt;b&gt;custom.css&lt;/b&gt;: Here we have a extension for a specific theme and resolution. For example if you are building a library version for Red theme and 240x320 resolution, we we have the CSS adjustiments for this theme and resolution here. 
&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;Our build system allows generate a wgz demo package for each component available. This is a good way to see the components demo working on devices. To generate this use the following comand:
&lt;/p&gt;
&lt;pre class=&quot;text&quot; style=&quot;font-family:monospace;&quot;&gt;$ cd build&lt;br /&gt;&amp;nbsp;&lt;br /&gt;$ ant -Dplist.component=&amp;lt;component_name&amp;gt;&lt;/pre&gt; 
&lt;p&gt;For example, to generate demo for rating component, you must type:
&lt;/p&gt;
&lt;pre class=&quot;text&quot; style=&quot;font-family:monospace;&quot;&gt;$ ant -Dplist.component=rating // For rating component&lt;/pre&gt;
&lt;p&gt;This will generate a wgz package in build/Guarana.wgz with &lt;b&gt;demos/rating/sample_rating.html&lt;/b&gt; as MainHTML. 
&lt;/p&gt;&lt;p&gt;Additionally, the default configuration for the framework is 360x640 resolution using Nokia Green Theme. Developer can build library versions for others resolutions and themes available. To generate this use the following command:
&lt;/p&gt;
&lt;pre class=&quot;text&quot; style=&quot;font-family:monospace;&quot;&gt;$ cd build&lt;br /&gt;&amp;nbsp;&lt;br /&gt;$ ant -Dresolution=&amp;lt;resolution&amp;gt; -Dtheme=&amp;lt;theme&amp;gt;&lt;/pre&gt;
&lt;p&gt;&lt;br /&gt;
The resolution available in this version is 360x640, used by N97 and 5800 for example, and 240x320, very common resolution for non-touch devices. The themes supported at this time is the default green theme and red, this one only available for 360x640. We will have more themes supported in next release.
&lt;/p&gt;&lt;p&gt;For example, to generate the red theme version for N97 device (360x640), you must type:
&lt;/p&gt;
&lt;pre class=&quot;text&quot; style=&quot;font-family:monospace;&quot;&gt;$ cd build&lt;br /&gt;&amp;nbsp;&lt;br /&gt;$ ant -Dresolution=360x640 -Dtheme=red&lt;/pre&gt; 
&lt;p&gt;Additionally, developer can build a customized version including only a set of components. For example, to generate a custom version including only accordion and button components, you must type:
&lt;/p&gt;
&lt;pre class=&quot;text&quot; style=&quot;font-family:monospace;&quot;&gt;$ cd build&lt;br /&gt;&amp;nbsp;&lt;br /&gt;$ ant -Dcomponents=accordion_button&lt;/pre&gt; 
&lt;p&gt;IMPORTANTE! After the build process, please copy &lt;b&gt;lib&lt;/b&gt; and &lt;b&gt;themes&lt;/b&gt; folders to your widget.
&lt;/p&gt;&lt;p&gt;In the following sections we will talk more about WRT Framework Internals.
&lt;/p&gt;
&lt;a name=&quot;WRT_Framework_-_Compatibility_Matrix_with_Nokia_S60_Versions&quot; id=&quot;WRT_Framework_-_Compatibility_Matrix_with_Nokia_S60_Versions&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;WRT Framework - Compatibility Matrix with Nokia S60 Versions&lt;/span&gt;&lt;/h1&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt; 
&lt;p&gt;&lt;a href=&quot;/index.php/File:Js4WRT-Comp-Matrix.png&quot; class=&quot;image&quot; title=&quot;File:Js4WRT-Comp-Matrix.png&quot;&gt;&lt;img alt=&quot;File:Js4WRT-Comp-Matrix.png&quot; src=&quot;http://www.forum.nokia.com/piazza/wiki/images/7/73/Js4WRT-Comp-Matrix.png&quot; width=&quot;472&quot; height=&quot;528&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;a name=&quot;JAVASCRIPT&quot; id=&quot;JAVASCRIPT&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;JAVASCRIPT&lt;/span&gt;&lt;/h1&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt; 
&lt;p&gt;&lt;a href=&quot;/index.php/File:Js4WRT-Internal-javascript.png&quot; class=&quot;image&quot; title=&quot;File:Js4WRT-Internal-javascript.png&quot;&gt;&lt;img alt=&quot;File:Js4WRT-Internal-javascript.png&quot; src=&quot;http://www.forum.nokia.com/piazza/wiki/images/6/6f/Js4WRT-Internal-javascript.png&quot; width=&quot;776&quot; height=&quot;362&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;a name=&quot;CSS&quot; id=&quot;CSS&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;CSS&lt;/span&gt;&lt;/h1&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt; 
&lt;p&gt;&lt;a href=&quot;/index.php/File:Js4WRT-Internal-CSS.png&quot; class=&quot;image&quot; title=&quot;File:Js4WRT-Internal-CSS.png&quot;&gt;&lt;img alt=&quot;File:Js4WRT-Internal-CSS.png&quot; src=&quot;http://www.forum.nokia.com/piazza/wiki/images/8/8a/Js4WRT-Internal-CSS.png&quot; width=&quot;738&quot; height=&quot;254&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
</description>
			<pubDate>Thu, 19 Nov 2009 15:09:27 GMT</pubDate>			<dc:creator>Allanbezerra</dc:creator>			<comments>http://wiki.forum.nokia.com/index.php/Talk:GuaranaUI-Overview</comments>		</item>
		<item>
			<title>GuaranaUI-QuickStart</title>
			<link>http://wiki.forum.nokia.com/index.php/GuaranaUI-QuickStart</link>
			<description>&lt;a name=&quot;The_WRT_Framework_Quick_Start&quot; id=&quot;The_WRT_Framework_Quick_Start&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;The WRT Framework Quick Start&lt;/span&gt;&lt;/h1&gt;
&lt;p&gt;In this section we describe how you can use Guarana UI in our widget. The started point can be checking out the demos. In the demo folder we have an example of each component. The examples are very simples and shows dependencies, component html and how can you create a component. In the next section we will describe in details necessary steps.
&lt;/p&gt;
&lt;a name=&quot;Five_Steps_To_Use_WRT_Framework&quot; id=&quot;Five_Steps_To_Use_WRT_Framework&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;Five Steps To Use WRT Framework&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;To start the development using the Guarana UI, basically you need to follow the 5 steps bellow:
&lt;/p&gt;
&lt;a name=&quot;0._Build_and_Copy_Guarana_Files_to_your_Widget&quot; id=&quot;0._Build_and_Copy_Guarana_Files_to_your_Widget&quot;&gt;&lt;/a&gt;&lt;h3&gt; &lt;span class=&quot;mw-headline&quot;&gt;0. Build and Copy Guarana Files to your Widget&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;The first thing to use the WRT Framework in your Widget is to build. Please, take a look in the &lt;a href=&quot;/index.php/GuaranaUI-Overview&quot; title=&quot;GuaranaUI-Overview&quot;&gt;GuaranaUI Overview&lt;/a&gt; Section for more information about the Framework Structure and Build System. An option it get the Builded Version. After it, &lt;b&gt;copy the necessary files to your widget&lt;/b&gt;:
&lt;/p&gt;
&lt;ul&gt;&lt;li&gt; lib folder: jQuery Library and Guarana javascript files
&lt;/li&gt;&lt;/ul&gt;
&lt;ul&gt;&lt;li&gt; theme folder: Themeroller and Guarana CSS files
&lt;/li&gt;&lt;/ul&gt;
&lt;a name=&quot;1.__Include_CSS_Dependencies&quot; id=&quot;1.__Include_CSS_Dependencies&quot;&gt;&lt;/a&gt;&lt;h3&gt; &lt;span class=&quot;mw-headline&quot;&gt;1.  Include CSS Dependencies&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;You need to include CSS dependencies for the components. Every component has two common CSS dependencies files: /&lt;b&gt;themes/themeroller/&amp;lt;theme&amp;gt;/Themeroller.css&lt;/b&gt; and /&lt;b&gt;/themes/nokia/ext-theme/&amp;lt;theme&amp;gt;/&amp;lt;resolution&amp;gt;/custom.css&lt;/b&gt;. The first one is the main Themeroller Theme and the Second one is the specific theme-resolution CSS. The order that the CSS files need to be included is:
&lt;/p&gt;
&lt;pre class=&quot;text&quot; style=&quot;font-family:monospace;&quot;&gt;&amp;lt;!-- Themeroller CSS --&amp;gt;&lt;br /&gt;&amp;lt;link rel=&amp;quot;stylesheet&amp;quot; href=&amp;quot;themes/themeroller/&amp;lt;theme&amp;gt;/Themeroller.css&amp;quot; type=&amp;quot;text/css&amp;quot; media=&amp;quot;screen&amp;quot;&amp;gt;&lt;br /&gt;&amp;lt;!-- Specific Theme/Resolution CSS --&amp;gt;&lt;br /&gt;&amp;lt;link rel=&amp;quot;stylesheet&amp;quot; href=&amp;quot;/themes/nokia/ext-theme/&amp;lt;theme&amp;gt;/&amp;lt;resolution&amp;gt;/custom.css&amp;quot; type=&amp;quot;text/css&amp;quot; media=&amp;quot;screen&amp;quot;&amp;gt;&lt;/pre&gt;
&lt;p&gt;This theme path depends with theme you are using. The default theme is the Green theme applied for 360x640 resolution. If you would like to use diferent theme/resolution you need to define it during the build process. For example, if you like to use the red theme in 240x360 screen, the /&lt;b&gt;themes/nokia/ext-theme/red/240x360/custom.css&lt;/b&gt; need to be included. This file includes all adjustment necessary to use the WRT Framework in this situation.
&lt;/p&gt;&lt;p&gt;You can also visit the &lt;a href=&quot;/index.php/Framework-Overview&quot; title=&quot;Framework-Overview&quot; class=&quot;mw-redirect&quot;&gt;Framework Overview&lt;/a&gt; Section in order to check the WRT Framework CSS architecture. If you do not know what CSS is, please visit &lt;a href=&quot;http://www.w3schools.com/css/&quot; class=&quot;external text&quot; title=&quot;http://www.w3schools.com/css/&quot; rel=&quot;nofollow&quot;&gt;W3C Website&lt;/a&gt;.
&lt;/p&gt;
&lt;a name=&quot;2._Include_Javascript_Dependencies&quot; id=&quot;2._Include_Javascript_Dependencies&quot;&gt;&lt;/a&gt;&lt;h3&gt; &lt;span class=&quot;mw-headline&quot;&gt;2. Include Javascript Dependencies&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;You need to include Javascript dependencies for the components. Every component has two common javascript dependencies files: &lt;b&gt;jQuery.js&lt;/b&gt; and &lt;b&gt;Guarana.js&lt;/b&gt;. The first one is the &lt;a href=&quot;http://www.jquery.com&quot; class=&quot;external text&quot; title=&quot;http://www.jquery.com&quot; rel=&quot;nofollow&quot;&gt;jQuery&lt;/a&gt; library and the Second one is the core file from Guarana UI. These files can be found in the lib folder and need to be included in your widget:
&lt;/p&gt;
&lt;pre class=&quot;text&quot; style=&quot;font-family:monospace;&quot;&gt;&amp;lt;!-- jQuery file --&amp;gt;&lt;br /&gt;&amp;lt;script src=&amp;quot;/lib/jquery/jQuery.js&amp;quot; type=&amp;quot;text/javascript&amp;quot; charset=&amp;quot;utf-8&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;&lt;br /&gt;&amp;lt;!-- Guarana file --&amp;gt;&lt;br /&gt;&amp;lt;script src=&amp;quot;/lib/Guarana.js&amp;quot; type=&amp;quot;text/javascript&amp;quot; charset=&amp;quot;utf-8&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;&lt;/pre&gt; 
&lt;p&gt;You can also visit the &lt;a href=&quot;/index.php/GuaranaUI-Overview&quot; title=&quot;GuaranaUI-Overview&quot;&gt;GuaranaUI Overview&lt;/a&gt; Section in order to check the Javascript Architecture.
&lt;/p&gt;
&lt;a name=&quot;3._Include_the_Component_minimal_HTML&quot; id=&quot;3._Include_the_Component_minimal_HTML&quot;&gt;&lt;/a&gt;&lt;h3&gt; &lt;span class=&quot;mw-headline&quot;&gt;3. Include the Component minimal HTML&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;br /&gt;
You need also to include the minimal HTML for the component. This in only to anchor the UI component in the HTML. You can find the necessary html in the component documentation page. For example for the Rating, as showed in &lt;a href=&quot;/index.php/Rating&quot; title=&quot;Rating&quot;&gt;component documentation page&lt;/a&gt;, the needed html is:
&lt;/p&gt;
&lt;pre class=&quot;text&quot; style=&quot;font-family:monospace;&quot;&gt;&amp;lt;div id=&amp;quot;rating01&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;/pre&gt; 
&lt;p&gt;In this html we have only a div with the id that we will use to refer the component. All other things like component behavior and style will be provided by Guarana UI. In next subtopic we will talk more about create the component over this static information (html).
&lt;/p&gt;
&lt;a name=&quot;4._Create_the_Component_in_your_Javascript_Code&quot; id=&quot;4._Create_the_Component_in_your_Javascript_Code&quot;&gt;&lt;/a&gt;&lt;h3&gt; &lt;span class=&quot;mw-headline&quot;&gt;4. Create the Component in your Javascript Code&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;After include all dependencies, CSS and Javascript, and put the minimal html for the component it is time to create the component. The Guarana UI is strongly object oriented and you can easily create a UI element calling the component constructor:
&lt;/p&gt;
&lt;pre class=&quot;text&quot; style=&quot;font-family:monospace;&quot;&gt;MyComponent = new Nokia.Component({ // Component must be replaced by component name&lt;br /&gt;          // Component Constructor Options&lt;br /&gt;          // Components Callbacks&lt;br /&gt;     });&lt;/pre&gt;  
&lt;p&gt;When you are creating a component two importants points need to be observed: 
&lt;/p&gt;
&lt;ul&gt;&lt;li&gt;&lt;b&gt;Options&lt;/b&gt;: The component constructor has options that the developer can use. Theses options indicates component peculiarities. For example, the only mandatory options is the &lt;b&gt;element&lt;/b&gt;, which defines the DOM element where the component will be created. The default values are used when the options are omitted in the component constructor.  
&lt;/li&gt;&lt;/ul&gt;
&lt;ul&gt;&lt;li&gt;&lt;b&gt;Callbacks&lt;/b&gt;: The second point to be detailed is callback functions. Every important interaction event in the components is mapped in a callback function. This is a very important feature to execute actions after interactions.  
&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;Please, take a look in the specific component documentation page to check the list of options available, the defaults values and the callbacks available for each component. In the next topic we will show a complete example of the rating component uses.
&lt;/p&gt;&lt;p&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;a name=&quot;A_Complete_Example_of_Rating_Component_Uses&quot; id=&quot;A_Complete_Example_of_Rating_Component_Uses&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;A Complete Example of Rating Component Uses&lt;/span&gt;&lt;/h1&gt;
&lt;p&gt;The 5 Steps to use WRT Framework Rating Component in your widget:
&lt;/p&gt;&lt;p&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;a name=&quot;0.__Build_and_Copy_WRT_Framework_Files_to_your_Widget&quot; id=&quot;0.__Build_and_Copy_WRT_Framework_Files_to_your_Widget&quot;&gt;&lt;/a&gt;&lt;h3&gt; &lt;span class=&quot;mw-headline&quot;&gt;0.  Build and Copy WRT Framework Files to your Widget&lt;/span&gt;&lt;/h3&gt;
&lt;pre class=&quot;text&quot; style=&quot;font-family:monospace;&quot;&gt;$ cd build &lt;br /&gt;// Building Guarana for Default Theme using 360x640 resolution&lt;br /&gt;$ ant (Apache Ant Tool must be configured)&lt;br /&gt;// Guarana folder will be created in build folder&lt;br /&gt;// After it, copy lib and theme folder to your widget&lt;/pre&gt;
&lt;a name=&quot;1.__Include_CSS_Dependencies_2&quot; id=&quot;1.__Include_CSS_Dependencies_2&quot;&gt;&lt;/a&gt;&lt;h3&gt; &lt;span class=&quot;mw-headline&quot;&gt;1.  Include CSS Dependencies&lt;/span&gt;&lt;/h3&gt;
&lt;pre class=&quot;text&quot; style=&quot;font-family:monospace;&quot;&gt;&amp;lt;!-- Themeroller CSS --&amp;gt;&lt;br /&gt;&amp;lt;link rel=&amp;quot;stylesheet&amp;quot; href=&amp;quot;themes/themeroller/default-theme/Themeroller.css&amp;quot; type=&amp;quot;text/css&amp;quot; media=&amp;quot;screen&amp;quot;&amp;gt;&lt;br /&gt;&amp;lt;!-- Specific Theme/Resolution CSS --&amp;gt;&lt;br /&gt;&amp;lt;link rel=&amp;quot;stylesheet&amp;quot; href=&amp;quot;themes/nokia/ext-theme/default/360x640/custom.css&amp;quot; type=&amp;quot;text/css&amp;quot; media=&amp;quot;screen&amp;quot;&amp;gt;&lt;/pre&gt;
&lt;a name=&quot;2._Include_Javascript_Dependencies_2&quot; id=&quot;2._Include_Javascript_Dependencies_2&quot;&gt;&lt;/a&gt;&lt;h3&gt; &lt;span class=&quot;mw-headline&quot;&gt;2. Include Javascript Dependencies&lt;/span&gt;&lt;/h3&gt;
&lt;pre class=&quot;text&quot; style=&quot;font-family:monospace;&quot;&gt;&amp;lt;script src=&amp;quot;/lib/jQuery.js&amp;quot; type=&amp;quot;text/javascript&amp;quot; charset=&amp;quot;utf-8&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;&lt;br /&gt;&amp;lt;script src=&amp;quot;/lib/Guarana.js&amp;quot; type=&amp;quot;text/javascript&amp;quot; charset=&amp;quot;utf-8&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;&lt;/pre&gt;
&lt;a name=&quot;3._Include_the_Component_minimal_HTML_2&quot; id=&quot;3._Include_the_Component_minimal_HTML_2&quot;&gt;&lt;/a&gt;&lt;h3&gt; &lt;span class=&quot;mw-headline&quot;&gt;3. Include the Component minimal HTML&lt;/span&gt;&lt;/h3&gt;
&lt;pre class=&quot;text&quot; style=&quot;font-family:monospace;&quot;&gt;&amp;lt;div id=&amp;quot;rating01&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;/pre&gt;
&lt;a name=&quot;4._Create_the_Component_in_your_Javascript_Code_2&quot; id=&quot;4._Create_the_Component_in_your_Javascript_Code_2&quot;&gt;&lt;/a&gt;&lt;h3&gt; &lt;span class=&quot;mw-headline&quot;&gt;4. Create the Component in your Javascript Code&lt;/span&gt;&lt;/h3&gt;
&lt;pre class=&quot;text&quot; style=&quot;font-family:monospace;&quot;&gt;/*&lt;br /&gt;* Set library base path&lt;br /&gt;*/&lt;br /&gt;&amp;nbsp;&lt;br /&gt;NOKIA_PATH_JAVASCRIPT = 'js/lib/';&lt;br /&gt;&amp;nbsp;&lt;br /&gt;NOKIA_PATH_STYLE_ROOT = 'css/themes/nokia/base/';&lt;br /&gt;&amp;nbsp;&lt;br /&gt;Nokia.use('rating', function(){&lt;br /&gt;    var rating1 = new Nokia.Rating({&lt;br /&gt;        element: '#rating01',&lt;br /&gt;        value: 2,&lt;br /&gt;        create: function() {&lt;br /&gt;            alert('rating created');&lt;br /&gt;        },&lt;br /&gt;        change: function(event, value) {&lt;br /&gt;            alert('rating change');&lt;br /&gt;        }&lt;br /&gt;    } );&lt;/pre&gt; 
&lt;a name=&quot;5._Full_Example&quot; id=&quot;5._Full_Example&quot;&gt;&lt;/a&gt;&lt;h3&gt; &lt;span class=&quot;mw-headline&quot;&gt;5. Full Example&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;Click &lt;a href=&quot;http://www.forum.nokia.com/piazza/wiki/images/8/86/GuaranaUI-Rating-Full-Example.zip&quot; class=&quot;external text&quot; title=&quot;http://www.forum.nokia.com/piazza/wiki/images/8/86/GuaranaUI-Rating-Full-Example.zip&quot; rel=&quot;nofollow&quot;&gt;here&lt;/a&gt; to download this full demo.
&lt;/p&gt;&lt;p&gt;&lt;a href=&quot;/index.php/File:GuaranaUI-Full-Example-Rating.png&quot; class=&quot;image&quot; title=&quot;File:GuaranaUI-Full-Example-Rating.png&quot;&gt;&lt;img alt=&quot;File:GuaranaUI-Full-Example-Rating.png&quot; src=&quot;http://www.forum.nokia.com/piazza/wiki/images/3/37/GuaranaUI-Full-Example-Rating.png&quot; width=&quot;825&quot; height=&quot;538&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;
&lt;a name=&quot;6._Packaging_and_Deploy&quot; id=&quot;6._Packaging_and_Deploy&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;6. Packaging and Deploy&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;You can find packaging and deploy information available in the &lt;a href=&quot;http://www.forum.nokia.com/Technology_Topics/Web_Technologies/Web_Runtime/QuickStart.xhtml#s60&quot; class=&quot;external text&quot; title=&quot;http://www.forum.nokia.com/Technology_Topics/Web_Technologies/Web_Runtime/QuickStart.xhtml#s60&quot; rel=&quot;nofollow&quot;&gt;Forum Nokia Website&lt;/a&gt;.
&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
</description>
			<pubDate>Thu, 19 Nov 2009 18:41:51 GMT</pubDate>			<dc:creator>Allanbezerra</dc:creator>			<comments>http://wiki.forum.nokia.com/index.php/Talk:GuaranaUI-QuickStart</comments>		</item>
		<item>
			<title>Before you start (mobile web page development)</title>
			<link>http://wiki.forum.nokia.com/index.php/Before_you_start_(mobile_web_page_development)</link>
			<description>&lt;p&gt;To develop static web pages for a mobile device, you need the following items:
&lt;/p&gt;
&lt;ul&gt;&lt;li&gt; Computer workstation - a PC with a Microsoft Windows operating system, Linux or an Apple Macintosh is required.
&lt;/li&gt;&lt;li&gt; Text editor.
&lt;/li&gt;&lt;li&gt; Nokia Mobile Web Templates for High-end devices, which can be downloaded from&lt;a href=&quot;http://www.forum.nokia.com/Technology_Topics/Web_Technologies/Browsing/Web_Templates/Templates_for_High-End_Devices&quot; class=&quot;external text&quot; title=&quot;http://www.forum.nokia.com/Technology_Topics/Web_Technologies/Browsing/Web_Templates/Templates_for_High-End_Devices&quot; rel=&quot;nofollow&quot;&gt;Forum Nokia&lt;/a&gt;.
&lt;/li&gt;&lt;li&gt; A mobile device to test the application. 
&lt;/li&gt;&lt;li&gt; To test the mobile web page, and for more advanced development, you can install an IDE such as Aptana Studio Professional 1.5 with a Nokia WRT Plug-in. 
&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;To install Aptana Studio, go to &lt;a href=&quot;http://aptana.com/studio/download&quot; class=&quot;external text&quot; title=&quot;http://aptana.com/studio/download&quot; rel=&quot;nofollow&quot;&gt;Aptana Download&lt;/a&gt; and select a suitable installation type (stand-alone with full installer preferred) and operating system. Click Download Now and run the installer after downloading.
&lt;/p&gt;&lt;p&gt;After Aptana has been installed, install the WRT plug-in. In Aptana Studio Professional 1.5 this is done in the following way: 
&lt;/p&gt;
&lt;ul&gt;&lt;li&gt; From the Help-menu select Install New Software.
&lt;/li&gt;&lt;li&gt; Click Add and then type in, for example, &quot;Nokia WRT Plugin&quot; as the name and &amp;quot;http://tools.ext.nokia.com/wrt/prod/aptana/v2.1/&amp;quot; as the location for the installed software. Click OK.
&lt;/li&gt;&lt;li&gt; From the list that appears, select the Nokia WRT Plugin, click Next and click Finish.
&lt;/li&gt;&lt;li&gt; The plug-in has been installed, and new options will appear when you select File &amp;gt; New &amp;gt; Project. 
&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;WRT project creates needed index.html, css and js files. It also creates a *.plist file that is not needed for the mobile web page (only for WRT widget). Otherwise default WRT project is a good starting point when creating the first mobile web page, and that is why WRT plug-in is recommended to be installed.
&lt;/p&gt;&lt;p&gt;You can create mobile web pages easily with other IDEs, too. For example, &lt;a href=&quot;http://www.adobe.com/products/dreamweaver/&quot; class=&quot;external text&quot; title=&quot;http://www.adobe.com/products/dreamweaver/&quot; rel=&quot;nofollow&quot;&gt;Adobe Dreamweaver&lt;/a&gt; has also &lt;a href=&quot;http://www.forum.nokia.com/info/sw.nokia.com/id/090b75b2-61cd-47da-b13f-2b2337bad99b/Nokia_WRT_Extension_for_Dreamweaver.html&quot; class=&quot;external text&quot; title=&quot;http://www.forum.nokia.com/info/sw.nokia.com/id/090b75b2-61cd-47da-b13f-2b2337bad99b/Nokia_WRT_Extension_for_Dreamweaver.html&quot; rel=&quot;nofollow&quot;&gt;Nokia WRT Extension&lt;/a&gt;. Dreamweaver WRT project creates needed files similarly as Aptana.
&lt;/p&gt;&lt;p&gt;To create your first mobile web page, see &lt;a href=&quot;/index.php/Create_your_first_mobile_web_page&quot; title=&quot;Create your first mobile web page&quot;&gt;Create your first mobile web page&lt;/a&gt;.
See also &lt;a href=&quot;/index.php/Before_you_start_(WRT_widget_development)&quot; title=&quot;Before you start (WRT widget development)&quot;&gt;Before you start (WRT widget development)&lt;/a&gt;
&lt;/p&gt;</description>
			<pubDate>Wed, 11 Nov 2009 08:37:17 GMT</pubDate>			<dc:creator>Jimgilmour1</dc:creator>			<comments>http://wiki.forum.nokia.com/index.php/Talk:Before_you_start_(mobile_web_page_development)</comments>		</item>
		<item>
			<title>Create your first mobile web page</title>
			<link>http://wiki.forum.nokia.com/index.php/Create_your_first_mobile_web_page</link>
			<description>&lt;p&gt;You can learn the main phases of mobile web page creation by following this example, which shows how to create and deploy a very simple static mobile web page. Before starting, make sure your development environment complies with the requirements listed in the section &lt;a href=&quot;/index.php/Before_you_start_(mobile_web_page_development)&quot; title=&quot;Before you start (mobile web page development)&quot;&gt;Before you start (mobile web page development)&lt;/a&gt;. Here you will learn how to create a mobile page without any specific tools, like an IDE. 
&lt;/p&gt;&lt;p&gt;In this example you will create a new mobile web page, HelloMobileWeb. It can be viewed properly in all Nokia devices that have high-end browser support. The result page can also be viewed quickly with a normal desktop browser. 
&lt;/p&gt;
&lt;table id=&quot;toc&quot; class=&quot;toc&quot; summary=&quot;Contents&quot;&gt;&lt;tr&gt;&lt;td&gt;&lt;div id=&quot;toctitle&quot;&gt;&lt;h2&gt;Contents&lt;/h2&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li class=&quot;toclevel-1&quot;&gt;&lt;a href=&quot;#Creating_HelloMobileWeb&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;1&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Creating HelloMobileWeb&lt;/span&gt;&lt;/a&gt;
&lt;ul&gt;
&lt;li class=&quot;toclevel-2&quot;&gt;&lt;a href=&quot;#Creating_a_main_HTML_file&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;1.1&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Creating a main HTML file&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-2&quot;&gt;&lt;a href=&quot;#Creating_a_simple_JavaScript.E2.84.A2_file_to_add_basic_functionality&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;1.2&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Creating a simple JavaScript™ file to add basic functionality&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-2&quot;&gt;&lt;a href=&quot;#Using_Cascading_Style_Sheet_.28CSS.29_files_to_control_style_and_layout&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;1.3&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Using Cascading Style Sheet (CSS) files to control style and layout&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li class=&quot;toclevel-1&quot;&gt;&lt;a href=&quot;#Testing_the_mobile_page&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;2&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Testing the mobile page&lt;/span&gt;&lt;/a&gt;
&lt;ul&gt;
&lt;li class=&quot;toclevel-2&quot;&gt;&lt;a href=&quot;#Running_the_mobile_page_on_a_PC_or_mobile_browser&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;2.1&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Running the mobile page on a PC or mobile browser&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-2&quot;&gt;&lt;a href=&quot;#Running_the_mobile_page_on_an_SDK_emulator&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;2.2&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Running the mobile page on an SDK emulator&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;script type=&quot;text/javascript&quot;&gt; if (window.showTocToggle) { var tocShowText = &quot;show&quot;; var tocHideText = &quot;hide&quot;; showTocToggle(); } &lt;/script&gt;
&lt;a name=&quot;Creating_HelloMobileWeb&quot; id=&quot;Creating_HelloMobileWeb&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt; Creating HelloMobileWeb &lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;This example application generates a very basic view with some text and a simple form with text input, switch-toggler, and a button. When the button is clicked and toggle   is enabled, the text of the input field is shown under the form as a new paragraph. The example uses the Nokia Mobile Web Templates for High-End Devices to create some  formatted styles and components.
&lt;/p&gt;&lt;p&gt;The example screenshot is in a 240 x 320 resolution display, but the application scales for different display sizes and orientations as well.
&lt;/p&gt;&lt;p&gt;&lt;a href=&quot;/index.php/File:HelloMob_1.jpg&quot; class=&quot;image&quot; title=&quot;File:HelloMob_1.jpg&quot;&gt;&lt;img alt=&quot;File:HelloMob_1.jpg&quot; src=&quot;http://www.forum.nokia.com/piazza/wiki/images/6/6b/HelloMob_1.jpg&quot; width=&quot;342&quot; height=&quot;536&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;
&lt;a name=&quot;Creating_a_main_HTML_file&quot; id=&quot;Creating_a_main_HTML_file&quot;&gt;&lt;/a&gt;&lt;h3&gt; &lt;span class=&quot;mw-headline&quot;&gt;Creating a main HTML file&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;Create a new file named index.html. This is the mandatory file of any mobile web page, but this example also uses other files to create dynamic and styled content (see below). The name of the HTML file can be anything, for example index.html. Copy and paste the following code to the index.html file and save it.
&lt;/p&gt;
&lt;pre class=&quot;xml&quot; style=&quot;font-family:monospace;&quot;&gt;&lt;span style=&quot;color: #00bbdd;&quot;&gt;&amp;lt;!DOCTYPE html PUBLIC &amp;quot;-//W3C//DTD XHTML 1.0 Transitional//EN&amp;quot;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #00bbdd;&quot;&gt;&amp;quot;http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd&amp;quot;&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;lt;html&lt;/span&gt; &lt;span style=&quot;color: #000066;&quot;&gt;xmlns&lt;/span&gt;=&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;http://www.w3.org/1999/xhtml&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;   &lt;span style=&quot;color: #009900;&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;lt;head&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;     &lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;&amp;lt;!-- Define the title of the page --&amp;gt;&lt;/span&gt;&lt;br /&gt;     &lt;span style=&quot;color: #009900;&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;lt;title&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;Hello Mobile Web!&lt;span style=&quot;color: #009900;&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;lt;/title&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;     &lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;&amp;lt;!-- Define the page content type --&amp;gt;&lt;/span&gt;&lt;br /&gt;     &lt;span style=&quot;color: #009900;&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;lt;meta&lt;/span&gt; &lt;span style=&quot;color: #000066;&quot;&gt;http-equiv&lt;/span&gt;=&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;Content-Type&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #000066;&quot;&gt;content&lt;/span&gt;=&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;text/html; charset=UTF-8&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;/&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;     &lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;&amp;lt;!-- Introduce the JavaScript-file the page uses (optional) --&amp;gt;&lt;/span&gt;&lt;br /&gt;     &lt;span style=&quot;color: #009900;&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;lt;script&lt;/span&gt; &lt;span style=&quot;color: #000066;&quot;&gt;language&lt;/span&gt;=&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;javascript&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #000066;&quot;&gt;type&lt;/span&gt;=&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;text/javascript&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #000066;&quot;&gt;src&lt;/span&gt;=&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;basic.js&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;lt;/script&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;		&lt;br /&gt;     &lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;&amp;lt;!-- Introduce the JavaScript- and CSS files the Nokia templates use --&amp;gt;&lt;/span&gt;&lt;br /&gt;     &lt;span style=&quot;color: #009900;&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;lt;script&lt;/span&gt; &lt;span style=&quot;color: #000066;&quot;&gt;language&lt;/span&gt;=&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;javascript&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #000066;&quot;&gt;type&lt;/span&gt;=&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;text/javascript&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #000066;&quot;&gt;src&lt;/span&gt;=&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;resources/scripts/templates.js&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;lt;/script&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;			&lt;br /&gt;     &lt;span style=&quot;color: #009900;&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;lt;link&lt;/span&gt; &lt;span style=&quot;color: #000066;&quot;&gt;type&lt;/span&gt;=&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;text/css&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #000066;&quot;&gt;rel&lt;/span&gt;=&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;stylesheet&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #000066;&quot;&gt;href&lt;/span&gt;=&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;resources/styles/reset.css&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;     &lt;span style=&quot;color: #009900;&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;lt;link&lt;/span&gt; &lt;span style=&quot;color: #000066;&quot;&gt;type&lt;/span&gt;=&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;text/css&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #000066;&quot;&gt;rel&lt;/span&gt;=&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;stylesheet&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #000066;&quot;&gt;href&lt;/span&gt;=&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;resources/styles/baseStyles.css&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;			&lt;br /&gt;     &lt;span style=&quot;color: #009900;&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;lt;/head&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;lt;body&lt;/span&gt; &lt;span style=&quot;color: #000066;&quot;&gt;onload&lt;/span&gt;=&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;init()&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;  &lt;span style=&quot;color: #009900;&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;lt;div&lt;/span&gt; &lt;span style=&quot;color: #000066;&quot;&gt;id&lt;/span&gt;=&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;wrap&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;  &lt;span style=&quot;color: #009900;&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;lt;div&lt;/span&gt; &lt;span style=&quot;color: #000066;&quot;&gt;id&lt;/span&gt;=&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;content&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;  &lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;&amp;lt;!-- Define a heading-text for the page --&amp;gt;&lt;/span&gt;&lt;br /&gt;  &lt;span style=&quot;color: #009900;&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;lt;h1&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;Hello Mobile Web!&lt;span style=&quot;color: #009900;&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;lt;/h1&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;  &lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;&amp;lt;!-- Create a simple form, which uses JavaScript to handle inputted text --&amp;gt;&lt;/span&gt;&lt;br /&gt;  &lt;span style=&quot;color: #009900;&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;lt;form&lt;/span&gt; &lt;span style=&quot;color: #000066;&quot;&gt;action&lt;/span&gt;=&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;#&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #000066;&quot;&gt;onsubmit&lt;/span&gt;=&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;send(this.textinput1.value); return false&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;  &lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;&amp;lt;!-- Create HTML label --&amp;gt;&lt;/span&gt;&lt;br /&gt;  &lt;span style=&quot;color: #009900;&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;lt;label&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;Enter your name:&lt;span style=&quot;color: #009900;&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;lt;/label&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;  &lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;&amp;lt;!-- Create the form input field --&amp;gt;&lt;/span&gt;&lt;br /&gt;  &lt;span style=&quot;color: #009900;&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;lt;input&lt;/span&gt; &lt;span style=&quot;color: #000066;&quot;&gt;name&lt;/span&gt;=&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;textinput1&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #000066;&quot;&gt;type&lt;/span&gt;=text &lt;span style=&quot;color: #000066;&quot;&gt;value&lt;/span&gt;=&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;/&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;  &lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;&amp;lt;!-- Create a toggle component using Nokia templates --&amp;gt;&lt;/span&gt;&lt;br /&gt;  &lt;span style=&quot;color: #009900;&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;lt;ul&lt;/span&gt; &lt;span style=&quot;color: #000066;&quot;&gt;class&lt;/span&gt;=&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;toggle&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;  &lt;span style=&quot;color: #009900;&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;lt;li&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;  &lt;span style=&quot;color: #009900;&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;lt;label&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;Enable button?&lt;span style=&quot;color: #009900;&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;lt;/label&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;  &lt;span style=&quot;color: #009900;&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;lt;input&lt;/span&gt; &lt;span style=&quot;color: #000066;&quot;&gt;id&lt;/span&gt;=&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;toggler1&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #000066;&quot;&gt;type&lt;/span&gt;=&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;checkbox&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #000066;&quot;&gt;name&lt;/span&gt;=&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;preference&amp;quot;&lt;/span&gt;  &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;/&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;  &lt;span style=&quot;color: #009900;&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;lt;/li&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;  &lt;span style=&quot;color: #009900;&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;lt;/ul&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;					&lt;br /&gt;  &lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;&amp;lt;!-- Define the form button --&amp;gt;&lt;/span&gt;			&lt;br /&gt;  &lt;span style=&quot;color: #009900;&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;lt;button&lt;/span&gt; &lt;span style=&quot;color: #000066;&quot;&gt;id&lt;/span&gt;=&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;submit&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #000066;&quot;&gt;class&lt;/span&gt;=&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;button-submit&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #000066;&quot;&gt;value&lt;/span&gt;=&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;submit&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #000066;&quot;&gt;disabled&lt;/span&gt;=&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;disabled&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;  &lt;span style=&quot;color: #009900;&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;lt;span&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;Say Hello!&lt;span style=&quot;color: #009900;&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;lt;/span&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;  &lt;span style=&quot;color: #009900;&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;lt;/button&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;  &lt;span style=&quot;color: #009900;&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;lt;/form&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;				&lt;br /&gt;  &lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;&amp;lt;!-- Define a paragraph for result text --&amp;gt;&lt;/span&gt;&lt;br /&gt;  &lt;span style=&quot;color: #009900;&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;lt;p&lt;/span&gt; &lt;span style=&quot;color: #000066;&quot;&gt;id&lt;/span&gt;=&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;result&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;lt;/p&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;  &lt;span style=&quot;color: #009900;&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;lt;/div&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;  &lt;span style=&quot;color: #009900;&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;lt;/div&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;lt;/body&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;lt;/html&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/pre&gt;
&lt;a name=&quot;Creating_a_simple_JavaScript.E2.84.A2_file_to_add_basic_functionality&quot; id=&quot;Creating_a_simple_JavaScript.E2.84.A2_file_to_add_basic_functionality&quot;&gt;&lt;/a&gt;&lt;h3&gt; &lt;span class=&quot;mw-headline&quot;&gt;Creating a simple JavaScript™ file to add basic functionality &lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;Create a new file named basic.js to the same folder as index.html, which will hold some JavaScript™ functionality for the mobile web page. This is not a mandatory file for a web page, but this example has a few lines of functionality for the page. Copy and paste the following code to the basic.js file and save it.
&lt;/p&gt;
&lt;pre class=&quot;xml&quot; style=&quot;font-family:monospace;&quot;&gt;/**&lt;br /&gt; * Initialize the JavaScript components on the web page.&lt;br /&gt; */&lt;br /&gt;function init()&lt;br /&gt;{&lt;br /&gt;	// Create a new toggle-component and define a callback method for clicking the switch&lt;br /&gt;	var myToggle = new ToggleSwitch(['toggler1'], function(state) {&lt;br /&gt;		// Enable form submit when toggled &amp;quot;ON&amp;quot;&lt;br /&gt;		var element = document.getElementById('submit');&lt;br /&gt;		if(!element.getAttribute('disabled')) &lt;br /&gt;		{&lt;br /&gt;			element.setAttribute('disabled', 'disabled');&lt;br /&gt;		}&lt;br /&gt;		else&lt;br /&gt;		{&lt;br /&gt;			element.removeAttribute('disabled');&lt;br /&gt;		}&lt;br /&gt;	});	&lt;br /&gt;}&lt;br /&gt;&amp;nbsp;&lt;br /&gt;/**&lt;br /&gt; * Method to handle input data. Parameter data is appended as new paragraph &lt;br /&gt; * below the form.&lt;br /&gt; * @param {Object} data The inputted text.&lt;br /&gt; */&lt;br /&gt;function send(data)&lt;br /&gt;{&lt;br /&gt;	// Create a new paragraph for result&lt;br /&gt;	var theNewParagraph = document.createElement('p');&lt;br /&gt;	// Create text node for result&lt;br /&gt;	var theText1 = document.createTextNode('Hello ' + data + '!');&lt;br /&gt;	// Append the result text for result paragraph&lt;br /&gt;	theNewParagraph.appendChild(theText1);&lt;br /&gt;	// Show the result paragraph on the page&lt;br /&gt;	document.getElementById(&amp;quot;result&amp;quot;).appendChild(theNewParagraph);	&lt;br /&gt;}&lt;/pre&gt;
&lt;a name=&quot;Using_Cascading_Style_Sheet_.28CSS.29_files_to_control_style_and_layout&quot; id=&quot;Using_Cascading_Style_Sheet_.28CSS.29_files_to_control_style_and_layout&quot;&gt;&lt;/a&gt;&lt;h3&gt; &lt;span class=&quot;mw-headline&quot;&gt;Using Cascading Style Sheet (CSS) files to control style and layout&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;You can create a new file named basic.css, for example, which holds any style and layout control for your HTML elements. The file should be introduced in the index.html file inside the &amp;lt;head&amp;gt;-element, as described below. However, in this example you will use Cascading Style Sheet (CSS) definitions from the Nokia Mobile Web Templates for High-End Devices. Below is the declaration of two CSS files from the templates. See &lt;a href=&quot;/index.php/Before_you_start_(mobile_web_page_development)&quot; title=&quot;Before you start (mobile web page development)&quot;&gt;Before you start (mobile web page development)&lt;/a&gt; to find out where your can download the templates. After downloading, simply copy the resources folder to the same folder containing the above-mentioned files you have created.
&lt;/p&gt;
&lt;pre class=&quot;xml&quot; style=&quot;font-family:monospace;&quot;&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;lt;head&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;	...&lt;br /&gt;	&lt;span style=&quot;color: #009900;&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;lt;link&lt;/span&gt; &lt;span style=&quot;color: #000066;&quot;&gt;type&lt;/span&gt;=&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;text/css&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #000066;&quot;&gt;rel&lt;/span&gt;=&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;stylesheet&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #000066;&quot;&gt;href&lt;/span&gt;=&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;resources/styles/reset.css&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;	&lt;span style=&quot;color: #009900;&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;lt;link&lt;/span&gt; &lt;span style=&quot;color: #000066;&quot;&gt;type&lt;/span&gt;=&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;text/css&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #000066;&quot;&gt;rel&lt;/span&gt;=&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;stylesheet&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #000066;&quot;&gt;href&lt;/span&gt;=&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;resources/styles/baseStyles.css&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;			&lt;br /&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;lt;/head&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/pre&gt;
&lt;a name=&quot;Testing_the_mobile_page&quot; id=&quot;Testing_the_mobile_page&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt; Testing the mobile page&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;Now you have created a simple static web page. You can view it using a PC or mobile web browser or an SDK emulator.
&lt;/p&gt;
&lt;a name=&quot;Running_the_mobile_page_on_a_PC_or_mobile_browser&quot; id=&quot;Running_the_mobile_page_on_a_PC_or_mobile_browser&quot;&gt;&lt;/a&gt;&lt;h3&gt; &lt;span class=&quot;mw-headline&quot;&gt; Running the mobile page on a PC or mobile browser&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;To test the mobile web page in a PC browser, simply open the index.html. You can also deploy (or, in this case, copy) index.html, basic.js, and the resources folder to a web server, where the page can be accessed using a PC or mobile browser. Here are &lt;a href=&quot;http://www.free-webhosts.com/free-webhosting-article.php&quot; class=&quot;external text&quot; title=&quot;http://www.free-webhosts.com/free-webhosting-article.php&quot; rel=&quot;nofollow&quot;&gt;free web hosting tips&lt;/a&gt; to deploy your web page for device testing.
&lt;/p&gt;&lt;p&gt;To run a mobile page locally on your device without using a web server, you need to transfer index.html, basic.js, and the resources folder to your mobile device’s c/Data/Others/ folder and open index.html from there. &lt;a href=&quot;http://europe.nokia.com/get-support-and-software/download-software/nokia-pc-suite&quot; class=&quot;external text&quot; title=&quot;http://europe.nokia.com/get-support-and-software/download-software/nokia-pc-suite&quot; rel=&quot;nofollow&quot;&gt;Nokia PC Suite&lt;/a&gt; can be used to transfer the files. 
&lt;/p&gt;
&lt;a name=&quot;Running_the_mobile_page_on_an_SDK_emulator&quot; id=&quot;Running_the_mobile_page_on_an_SDK_emulator&quot;&gt;&lt;/a&gt;&lt;h3&gt; &lt;span class=&quot;mw-headline&quot;&gt;Running the mobile page on an SDK emulator&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;To test the mobile page on an SDK emulator, you need to copy index.html, basic.js, and the resources folder to your SDK directory, for example to C:\S60\devices\S60_5th_Edition_SDK_v1.0\epoc32\winscw\c\Data\Others\. After this, you can open your SDK and use its web browser to open the page. Input the following URL to the browser: file://c/Data/Others/index.html.
&lt;/p&gt;</description>
			<pubDate>Wed, 11 Nov 2009 08:47:23 GMT</pubDate>			<dc:creator>Jimgilmour1</dc:creator>			<comments>http://wiki.forum.nokia.com/index.php/Talk:Create_your_first_mobile_web_page</comments>		</item>
		<item>
			<title>TSS001484 - How to List Delivery Reports</title>
			<link>http://wiki.forum.nokia.com/index.php/TSS001484_-_How_to_List_Delivery_Reports</link>
			<description>&lt;p&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;div align=&quot;right&quot;&gt;&lt;a href=&quot;/index.php/File:KBTS_Header.gif&quot; class=&quot;image&quot; title=&quot;image:KBTS_Header.gif&quot;&gt;&lt;img alt=&quot;image:KBTS_Header.gif&quot; src=&quot;http://www.forum.nokia.com/piazza/wiki/images/3/31/KBTS_Header.gif&quot; width=&quot;770&quot; height=&quot;76&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;&lt;a href=&quot;/index.php/KnowledgeBase&quot; title=&quot;KnowledgeBase&quot;&gt; Knowledge Base Home &lt;/a&gt;&lt;/div&gt;
&lt;p&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;table style=&quot;background:#eceff2&quot; width=&quot;660px&quot; border=&quot;1&quot; cellpadding=&quot;5&quot; cellspacing=&quot;0&quot;&gt;

&lt;tr&gt;
&lt;td&gt;&lt;b&gt;ID&lt;/b&gt; &lt;/td&gt;&lt;td&gt;TSS001484
&lt;/td&gt;&lt;td&gt;&lt;b&gt;Creation date&lt;/b&gt; &lt;/td&gt;&lt;td&gt; November 10, 2009
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;b&gt;Platform&lt;/b&gt; &lt;/td&gt;&lt;td&gt; S60 3rd Edition&lt;br /&gt;S60 3rd Edition FP1&lt;br /&gt;S60 3rd Edition FP2&lt;br /&gt;S60 5th Edition
&lt;/td&gt;&lt;td&gt;&lt;b&gt;Devices&lt;/b&gt; &lt;/td&gt;&lt;td&gt; Tested on Nokia E66, Nokia N96
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;b&gt;Category&lt;/b&gt; &lt;/td&gt;&lt;td&gt; Symbian C++
&lt;/td&gt;&lt;td&gt;&lt;b&gt;Subcategory&lt;/b&gt; &lt;/td&gt;&lt;td&gt; Messaging
&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;
&lt;p&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;table style=&quot;background:#eceff2&quot; width=&quot;660px&quot; border=&quot;1&quot; cellpadding=&quot;5&quot; cellspacing=&quot;0&quot;&gt;

&lt;tr&gt;
&lt;td&gt;&lt;b&gt;Keywords (APIs, classes, methods, functions)&lt;/b&gt;: CLogFilter, CLogFilterList, CLogViewEvent,
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;a name=&quot;Overview&quot; id=&quot;Overview&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;Overview&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;This article describes how to list delivery reports for short messages.
&lt;/p&gt;
&lt;a name=&quot;Description&quot; id=&quot;Description&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt; Description &lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;Delivery reports can be listed by filtering logs as follows:
&lt;/p&gt;
&lt;ul&gt;&lt;li&gt; Event type: &lt;i&gt;SMS&lt;/i&gt;
&lt;/li&gt;&lt;li&gt; Direction: &lt;i&gt;Out&lt;/i&gt;
&lt;/li&gt;&lt;li&gt; Status: &lt;i&gt;Pending&lt;/i&gt;, &lt;i&gt;Delivered&lt;/i&gt; or &lt;i&gt;Failed&lt;/i&gt;
&lt;/li&gt;&lt;/ul&gt;
&lt;a name=&quot;Solution&quot; id=&quot;Solution&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;Solution&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;Derive a class from &lt;tt&gt;CActive&lt;/tt&gt; and use classes provided by the log engine to filter out log events corresponding to SMS delivery reports.
&lt;/p&gt;&lt;p&gt;&lt;b&gt;Header file&lt;/b&gt;
&lt;/p&gt;
&lt;pre class=&quot;cpp&quot; style=&quot;font-family:monospace;&quot;&gt;&lt;span style=&quot;color: #339900;&quot;&gt;#include &amp;lt;e32base.h&amp;gt;&lt;/span&gt;&lt;br /&gt;  &lt;span style=&quot;color: #339900;&quot;&gt;#include &amp;lt;f32file.h&amp;gt;    // RFs&lt;/span&gt;&lt;br /&gt;  &lt;span style=&quot;color: #339900;&quot;&gt;#include &amp;lt;logcli.h&amp;gt;     // CLogClient&lt;/span&gt;&lt;br /&gt;  &lt;span style=&quot;color: #339900;&quot;&gt;#include &amp;lt;logview.h&amp;gt;    // CLogViewEvent  &lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;  &lt;span style=&quot;color: #0000ff;&quot;&gt;class&lt;/span&gt; CDeliveryReportEngine &lt;span style=&quot;color: #008080;&quot;&gt;:&lt;/span&gt; &lt;span style=&quot;color: #0000ff;&quot;&gt;public&lt;/span&gt; CActive&lt;br /&gt;    &lt;span style=&quot;color: #008000;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;  &lt;span style=&quot;color: #0000ff;&quot;&gt;public&lt;/span&gt;&lt;span style=&quot;color: #008080;&quot;&gt;:&lt;/span&gt;&lt;br /&gt;    &lt;span style=&quot;color: #666666;&quot;&gt;// NewL constructor&lt;/span&gt;&lt;br /&gt;    &lt;span style=&quot;color: #0000ff;&quot;&gt;static&lt;/span&gt; CDeliveryReportEngine&lt;span style=&quot;color: #000040;&quot;&gt;*&lt;/span&gt; NewL&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #008080;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;    &lt;span style=&quot;color: #666666;&quot;&gt;// destructor&lt;/span&gt;&lt;br /&gt;    ~CDeliveryReportEngine&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #008080;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;  &lt;span style=&quot;color: #0000ff;&quot;&gt;public&lt;/span&gt;&lt;span style=&quot;color: #008080;&quot;&gt;:&lt;/span&gt;&lt;br /&gt;    &lt;span style=&quot;color: #0000ff;&quot;&gt;void&lt;/span&gt; ReadDeliveryReportsL&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #008080;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;  &lt;span style=&quot;color: #0000ff;&quot;&gt;protected&lt;/span&gt;&lt;span style=&quot;color: #008080;&quot;&gt;:&lt;/span&gt;  &lt;span style=&quot;color: #666666;&quot;&gt;// from CActive&lt;/span&gt;&lt;br /&gt;    &lt;span style=&quot;color: #0000ff;&quot;&gt;void&lt;/span&gt; RunL&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #008080;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;    &lt;span style=&quot;color: #0000ff;&quot;&gt;void&lt;/span&gt; DoCancel&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #008080;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;  &lt;span style=&quot;color: #0000ff;&quot;&gt;private&lt;/span&gt;&lt;span style=&quot;color: #008080;&quot;&gt;:&lt;/span&gt;  &lt;br /&gt;    &lt;span style=&quot;color: #666666;&quot;&gt;// Private constructors&lt;/span&gt;&lt;br /&gt;    CDeliveryReportEngine&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #008080;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;    &lt;span style=&quot;color: #0000ff;&quot;&gt;void&lt;/span&gt; ConstructL&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #008080;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;    &lt;span style=&quot;color: #0000ff;&quot;&gt;void&lt;/span&gt; AppendFilterL&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#40;&lt;/span&gt; &lt;span style=&quot;color: #0000ff;&quot;&gt;const&lt;/span&gt; TDesC &lt;span style=&quot;color: #000040;&quot;&gt;&amp;amp;&lt;/span&gt;aDirection,&lt;br /&gt;                        &lt;span style=&quot;color: #0000ff;&quot;&gt;const&lt;/span&gt; TDesC &lt;span style=&quot;color: #000040;&quot;&gt;&amp;amp;&lt;/span&gt;aStatus,&lt;br /&gt;                        TLogFlags aFlags,&lt;br /&gt;                        TUint32 aNullFields,&lt;br /&gt;                        TUid aType &lt;span style=&quot;color: #008000;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #008080;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;  &lt;span style=&quot;color: #0000ff;&quot;&gt;private&lt;/span&gt;&lt;span style=&quot;color: #008080;&quot;&gt;:&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;    &lt;span style=&quot;color: #666666;&quot;&gt;// Data&lt;/span&gt;&lt;br /&gt;    CLogClient&lt;span style=&quot;color: #000040;&quot;&gt;*&lt;/span&gt;       iLogClient&lt;span style=&quot;color: #008080;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;    CLogViewEvent&lt;span style=&quot;color: #000040;&quot;&gt;*&lt;/span&gt;    iLogViewEvent&lt;span style=&quot;color: #008080;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;    CLogFilterList&lt;span style=&quot;color: #000040;&quot;&gt;*&lt;/span&gt;   iFilterList&lt;span style=&quot;color: #008080;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;    RFs               iFs&lt;span style=&quot;color: #008080;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;    &lt;span style=&quot;color: #008000;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;span style=&quot;color: #008080;&quot;&gt;;&lt;/span&gt;&lt;/pre&gt;
&lt;p&gt;&lt;br /&gt;
&lt;b&gt;Filtering the logs for Delivery Reports&lt;/b&gt;
&lt;/p&gt;&lt;p&gt;The &lt;tt&gt;CLogViewEvent&lt;/tt&gt; and &lt;tt&gt;CLogFilterList&lt;/tt&gt; classes provide methods for reading log entries one by one from the database and filtering them based on event type, direction, and status. The delivery status is represented by a string. Standard strings are available in the log wrapper resource file and can be accessed through predefined resource IDs.
&lt;/p&gt;
&lt;pre class=&quot;cpp&quot; style=&quot;font-family:monospace;&quot;&gt;CDeliveryReportEngine&lt;span style=&quot;color: #008080;&quot;&gt;::&lt;/span&gt;&lt;span style=&quot;color: #007788;&quot;&gt;CDeliveryReportEngine&lt;/span&gt;&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;br /&gt;  &lt;span style=&quot;color: #008080;&quot;&gt;:&lt;/span&gt; CActive&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#40;&lt;/span&gt; CActive&lt;span style=&quot;color: #008080;&quot;&gt;::&lt;/span&gt;&lt;span style=&quot;color: #007788;&quot;&gt;EPriorityStandard&lt;/span&gt; &lt;span style=&quot;color: #008000;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;br /&gt;    &lt;span style=&quot;color: #008000;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;    CActiveScheduler&lt;span style=&quot;color: #008080;&quot;&gt;::&lt;/span&gt;&lt;span style=&quot;color: #007788;&quot;&gt;Add&lt;/span&gt;&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#40;&lt;/span&gt; &lt;span style=&quot;color: #0000dd;&quot;&gt;this&lt;/span&gt; &lt;span style=&quot;color: #008000;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #008080;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;    &lt;span style=&quot;color: #008000;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;  CDeliveryReportEngine&lt;span style=&quot;color: #000040;&quot;&gt;*&lt;/span&gt; CDeliveryReportEngine&lt;span style=&quot;color: #008080;&quot;&gt;::&lt;/span&gt;&lt;span style=&quot;color: #007788;&quot;&gt;NewL&lt;/span&gt;&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;br /&gt;    &lt;span style=&quot;color: #008000;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;    CDeliveryReportEngine&lt;span style=&quot;color: #000040;&quot;&gt;*&lt;/span&gt; self &lt;span style=&quot;color: #000080;&quot;&gt;=&lt;/span&gt; &lt;span style=&quot;color: #0000dd;&quot;&gt;new&lt;/span&gt; &lt;span style=&quot;color: #008000;&quot;&gt;&amp;#40;&lt;/span&gt;ELeave&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#41;&lt;/span&gt; CDeliveryReportEngine&lt;span style=&quot;color: #008080;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;    CleanupStack&lt;span style=&quot;color: #008080;&quot;&gt;::&lt;/span&gt;&lt;span style=&quot;color: #007788;&quot;&gt;PushL&lt;/span&gt;&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#40;&lt;/span&gt; self &lt;span style=&quot;color: #008000;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #008080;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;    self&lt;span style=&quot;color: #000040;&quot;&gt;-&lt;/span&gt;&lt;span style=&quot;color: #000080;&quot;&gt;&amp;gt;&lt;/span&gt;ConstructL&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #008080;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;    CleanupStack&lt;span style=&quot;color: #008080;&quot;&gt;::&lt;/span&gt;&lt;span style=&quot;color: #007788;&quot;&gt;Pop&lt;/span&gt;&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #008080;&quot;&gt;;&lt;/span&gt; &lt;span style=&quot;color: #666666;&quot;&gt;// self&lt;/span&gt;&lt;br /&gt;    &lt;span style=&quot;color: #0000ff;&quot;&gt;return&lt;/span&gt; self&lt;span style=&quot;color: #008080;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;    &lt;span style=&quot;color: #008000;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;  &lt;span style=&quot;color: #0000ff;&quot;&gt;void&lt;/span&gt; CDeliveryReportEngine&lt;span style=&quot;color: #008080;&quot;&gt;::&lt;/span&gt;&lt;span style=&quot;color: #007788;&quot;&gt;ConstructL&lt;/span&gt;&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;br /&gt;    &lt;span style=&quot;color: #008000;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;    User&lt;span style=&quot;color: #008080;&quot;&gt;::&lt;/span&gt;&lt;span style=&quot;color: #007788;&quot;&gt;LeaveIfError&lt;/span&gt;&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#40;&lt;/span&gt; iFs.&lt;span style=&quot;color: #007788;&quot;&gt;Connect&lt;/span&gt;&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #008000;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #008080;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;    iLogClient &lt;span style=&quot;color: #000080;&quot;&gt;=&lt;/span&gt; CLogClient&lt;span style=&quot;color: #008080;&quot;&gt;::&lt;/span&gt;&lt;span style=&quot;color: #007788;&quot;&gt;NewL&lt;/span&gt;&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#40;&lt;/span&gt; iFs &lt;span style=&quot;color: #008000;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #008080;&quot;&gt;;&lt;/span&gt;  &lt;br /&gt;    &lt;span style=&quot;color: #008000;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;  CDeliveryReportEngine&lt;span style=&quot;color: #008080;&quot;&gt;::&lt;/span&gt;~CDeliveryReportEngine&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;br /&gt;    &lt;span style=&quot;color: #008000;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;    Cancel&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #008080;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;    &lt;span style=&quot;color: #0000ff;&quot;&gt;if&lt;/span&gt;&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#40;&lt;/span&gt; iFilterList &lt;span style=&quot;color: #008000;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;br /&gt;      &lt;span style=&quot;color: #008000;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;      &lt;span style=&quot;color: #666666;&quot;&gt;// Deletes all filters in the list&lt;/span&gt;&lt;br /&gt;      iFilterList&lt;span style=&quot;color: #000040;&quot;&gt;-&lt;/span&gt;&lt;span style=&quot;color: #000080;&quot;&gt;&amp;gt;&lt;/span&gt;ResetAndDestroy&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #008080;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;      &lt;span style=&quot;color: #008000;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;    &lt;span style=&quot;color: #0000dd;&quot;&gt;delete&lt;/span&gt; iFilterList&lt;span style=&quot;color: #008080;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;    &lt;span style=&quot;color: #0000dd;&quot;&gt;delete&lt;/span&gt; iLogViewEvent&lt;span style=&quot;color: #008080;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;    &lt;span style=&quot;color: #0000dd;&quot;&gt;delete&lt;/span&gt; iLogClient&lt;span style=&quot;color: #008080;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;    iFs.&lt;span style=&quot;color: #007788;&quot;&gt;Close&lt;/span&gt;&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #008080;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;    &lt;span style=&quot;color: #008000;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;  &lt;span style=&quot;color: #0000ff;&quot;&gt;void&lt;/span&gt; CDeliveryReportEngine&lt;span style=&quot;color: #008080;&quot;&gt;::&lt;/span&gt;&lt;span style=&quot;color: #007788;&quot;&gt;ReadDeliveryReportsL&lt;/span&gt;&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;br /&gt;    &lt;span style=&quot;color: #008000;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;    Cancel&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #008080;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;    &lt;span style=&quot;color: #0000ff;&quot;&gt;if&lt;/span&gt;&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#40;&lt;/span&gt; &lt;span style=&quot;color: #000040;&quot;&gt;!&lt;/span&gt;iLogViewEvent &lt;span style=&quot;color: #008000;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;br /&gt;      &lt;span style=&quot;color: #008000;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;      iLogViewEvent &lt;span style=&quot;color: #000080;&quot;&gt;=&lt;/span&gt; CLogViewEvent&lt;span style=&quot;color: #008080;&quot;&gt;::&lt;/span&gt;&lt;span style=&quot;color: #007788;&quot;&gt;NewL&lt;/span&gt;&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#40;&lt;/span&gt; &lt;span style=&quot;color: #000040;&quot;&gt;*&lt;/span&gt;iLogClient &lt;span style=&quot;color: #008000;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #008080;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;      &lt;span style=&quot;color: #008000;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;    &lt;span style=&quot;color: #0000ff;&quot;&gt;if&lt;/span&gt;&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#40;&lt;/span&gt; &lt;span style=&quot;color: #000040;&quot;&gt;!&lt;/span&gt;iFilterList &lt;span style=&quot;color: #008000;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;br /&gt;      &lt;span style=&quot;color: #008000;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;      TLogString logString&lt;span style=&quot;color: #008080;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;      &lt;span style=&quot;color: #666666;&quot;&gt;// Create a set of event view filters  &lt;/span&gt;&lt;br /&gt;      iFilterList &lt;span style=&quot;color: #000080;&quot;&gt;=&lt;/span&gt; &lt;span style=&quot;color: #0000dd;&quot;&gt;new&lt;/span&gt; &lt;span style=&quot;color: #008000;&quot;&gt;&amp;#40;&lt;/span&gt; ELeave &lt;span style=&quot;color: #008000;&quot;&gt;&amp;#41;&lt;/span&gt; CLogFilterList&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #008080;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;      &lt;span style=&quot;color: #666666;&quot;&gt;// Append filter for Direction: OUT&lt;/span&gt;&lt;br /&gt;      iLogClient&lt;span style=&quot;color: #000040;&quot;&gt;-&lt;/span&gt;&lt;span style=&quot;color: #000080;&quot;&gt;&amp;gt;&lt;/span&gt;GetString&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#40;&lt;/span&gt; logString, R_LOG_DIR_OUT &lt;span style=&quot;color: #008000;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #008080;&quot;&gt;;&lt;/span&gt;  &lt;br /&gt;      AppendFilterL&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#40;&lt;/span&gt; logString, KNullDesC, KLogEventRead, ELogFlagsField, TUid&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #008000;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #008080;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;      &lt;span style=&quot;color: #666666;&quot;&gt;// Append filter for event type: SMS&lt;/span&gt;&lt;br /&gt;      AppendFilterL&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#40;&lt;/span&gt; KNullDesC, KNullDesC, 0, 0, KLogShortMessageEventTypeUid &lt;span style=&quot;color: #008000;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #008080;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;      &lt;span style=&quot;color: #666666;&quot;&gt;// Append filter for Status: Pending&lt;/span&gt;&lt;br /&gt;      iLogClient&lt;span style=&quot;color: #000040;&quot;&gt;-&lt;/span&gt;&lt;span style=&quot;color: #000080;&quot;&gt;&amp;gt;&lt;/span&gt;GetString&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#40;&lt;/span&gt; logString, R_LOG_DEL_PENDING &lt;span style=&quot;color: #008000;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #008080;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;      AppendFilterL&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#40;&lt;/span&gt; KNullDesC, logString, 0, 0, TUid&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #008000;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #008080;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;      &lt;span style=&quot;color: #666666;&quot;&gt;// Append filter for Status: Delivered&lt;/span&gt;&lt;br /&gt;      iLogClient&lt;span style=&quot;color: #000040;&quot;&gt;-&lt;/span&gt;&lt;span style=&quot;color: #000080;&quot;&gt;&amp;gt;&lt;/span&gt;GetString&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#40;&lt;/span&gt; logString, R_LOG_DEL_DONE &lt;span style=&quot;color: #008000;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #008080;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;      AppendFilterL&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#40;&lt;/span&gt; KNullDesC, logString, 0, 0, TUid&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #008000;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #008080;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;      &lt;span style=&quot;color: #666666;&quot;&gt;// Append filter for Status: Failed&lt;/span&gt;&lt;br /&gt;      iLogClient&lt;span style=&quot;color: #000040;&quot;&gt;-&lt;/span&gt;&lt;span style=&quot;color: #000080;&quot;&gt;&amp;gt;&lt;/span&gt;GetString&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#40;&lt;/span&gt; logString, R_LOG_DEL_FAILED &lt;span style=&quot;color: #008000;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #008080;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;      AppendFilterL&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#40;&lt;/span&gt; KNullDesC, logString, 0, 0, TUid&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #008000;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #008080;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;      &lt;span style=&quot;color: #008000;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;    &lt;span style=&quot;color: #0000ff;&quot;&gt;if&lt;/span&gt; &lt;span style=&quot;color: #008000;&quot;&gt;&amp;#40;&lt;/span&gt; iLogViewEvent&lt;span style=&quot;color: #000040;&quot;&gt;-&lt;/span&gt;&lt;span style=&quot;color: #000080;&quot;&gt;&amp;gt;&lt;/span&gt;SetFilterL&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#40;&lt;/span&gt; &lt;span style=&quot;color: #000040;&quot;&gt;*&lt;/span&gt;iFilterList, iStatus &lt;span style=&quot;color: #008000;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #008000;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;br /&gt;      &lt;span style=&quot;color: #008000;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;      SetActive&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #008080;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;      &lt;span style=&quot;color: #008000;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;    &lt;span style=&quot;color: #0000ff;&quot;&gt;else&lt;/span&gt;&lt;br /&gt;      &lt;span style=&quot;color: #008000;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;      &lt;span style=&quot;color: #666666;&quot;&gt;// No events in the view&lt;/span&gt;&lt;br /&gt;      &lt;span style=&quot;color: #008000;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;    &lt;span style=&quot;color: #008000;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;  &lt;span style=&quot;color: #0000ff;&quot;&gt;void&lt;/span&gt; CDeliveryReportEngine&lt;span style=&quot;color: #008080;&quot;&gt;::&lt;/span&gt;&lt;span style=&quot;color: #007788;&quot;&gt;AppendFilterL&lt;/span&gt;&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#40;&lt;/span&gt; &lt;span style=&quot;color: #0000ff;&quot;&gt;const&lt;/span&gt; TDesC &lt;span style=&quot;color: #000040;&quot;&gt;&amp;amp;&lt;/span&gt;aDirection,&lt;br /&gt;                                             &lt;span style=&quot;color: #0000ff;&quot;&gt;const&lt;/span&gt; TDesC &lt;span style=&quot;color: #000040;&quot;&gt;&amp;amp;&lt;/span&gt;aStatus,&lt;br /&gt;                                             TLogFlags aFlags,&lt;br /&gt;                                             TUint32 aNullFields,&lt;br /&gt;                                             TUid aType &lt;span style=&quot;color: #008000;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;br /&gt;    &lt;span style=&quot;color: #008000;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;    CLogFilter&lt;span style=&quot;color: #000040;&quot;&gt;*&lt;/span&gt; logFilter &lt;span style=&quot;color: #000080;&quot;&gt;=&lt;/span&gt; CLogFilter&lt;span style=&quot;color: #008080;&quot;&gt;::&lt;/span&gt;&lt;span style=&quot;color: #007788;&quot;&gt;NewL&lt;/span&gt;&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #008080;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;    CleanupStack&lt;span style=&quot;color: #008080;&quot;&gt;::&lt;/span&gt;&lt;span style=&quot;color: #007788;&quot;&gt;PushL&lt;/span&gt;&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#40;&lt;/span&gt; logFilter &lt;span style=&quot;color: #008000;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #008080;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;    logFilter&lt;span style=&quot;color: #000040;&quot;&gt;-&lt;/span&gt;&lt;span style=&quot;color: #000080;&quot;&gt;&amp;gt;&lt;/span&gt;SetDirection&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#40;&lt;/span&gt; aDirection &lt;span style=&quot;color: #008000;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #008080;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;    logFilter&lt;span style=&quot;color: #000040;&quot;&gt;-&lt;/span&gt;&lt;span style=&quot;color: #000080;&quot;&gt;&amp;gt;&lt;/span&gt;SetStatus&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#40;&lt;/span&gt; aStatus &lt;span style=&quot;color: #008000;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #008080;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;    logFilter&lt;span style=&quot;color: #000040;&quot;&gt;-&lt;/span&gt;&lt;span style=&quot;color: #000080;&quot;&gt;&amp;gt;&lt;/span&gt;SetFlags&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#40;&lt;/span&gt; aFlags &lt;span style=&quot;color: #008000;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #008080;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;    logFilter&lt;span style=&quot;color: #000040;&quot;&gt;-&lt;/span&gt;&lt;span style=&quot;color: #000080;&quot;&gt;&amp;gt;&lt;/span&gt;SetNullFields&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#40;&lt;/span&gt; aNullFields &lt;span style=&quot;color: #008000;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #008080;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;    logFilter&lt;span style=&quot;color: #000040;&quot;&gt;-&lt;/span&gt;&lt;span style=&quot;color: #000080;&quot;&gt;&amp;gt;&lt;/span&gt;SetEventType&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#40;&lt;/span&gt; aType &lt;span style=&quot;color: #008000;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #008080;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;    iFilterList&lt;span style=&quot;color: #000040;&quot;&gt;-&lt;/span&gt;&lt;span style=&quot;color: #000080;&quot;&gt;&amp;gt;&lt;/span&gt;AppendL&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#40;&lt;/span&gt; logFilter &lt;span style=&quot;color: #008000;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #008080;&quot;&gt;;&lt;/span&gt;  &lt;br /&gt;    CleanupStack&lt;span style=&quot;color: #008080;&quot;&gt;::&lt;/span&gt;&lt;span style=&quot;color: #007788;&quot;&gt;Pop&lt;/span&gt;&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#40;&lt;/span&gt; logFilter &lt;span style=&quot;color: #008000;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #008080;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;    &lt;span style=&quot;color: #008000;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;/pre&gt;
&lt;p&gt;After reading each filtered log entry, the &lt;tt&gt;RunL()&lt;/tt&gt; function of the active object will be called. &lt;tt&gt;CLogViewEvent::Event()&lt;/tt&gt; will return the current log event that matches the set filters.
&lt;/p&gt;
&lt;pre class=&quot;cpp&quot; style=&quot;font-family:monospace;&quot;&gt;&lt;span style=&quot;color: #0000ff;&quot;&gt;void&lt;/span&gt; CDeliveryReportEngine&lt;span style=&quot;color: #008080;&quot;&gt;::&lt;/span&gt;&lt;span style=&quot;color: #007788;&quot;&gt;RunL&lt;/span&gt;&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;br /&gt;    &lt;span style=&quot;color: #008000;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;    &lt;span style=&quot;color: #0000ff;&quot;&gt;if&lt;/span&gt;&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#40;&lt;/span&gt; iStatus &lt;span style=&quot;color: #000080;&quot;&gt;==&lt;/span&gt; KErrNone &lt;span style=&quot;color: #000040;&quot;&gt;&amp;amp;&amp;amp;&lt;/span&gt; iLogViewEvent &lt;span style=&quot;color: #008000;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;br /&gt;      &lt;span style=&quot;color: #008000;&quot;&gt;&amp;#123;&lt;/span&gt;    &lt;br /&gt;      &lt;span style=&quot;color: #666666;&quot;&gt;// Use the following functions to access delivery report details:&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;      &lt;span style=&quot;color: #666666;&quot;&gt;// iLogViewEvent-&amp;gt;Event().Description();&lt;/span&gt;&lt;br /&gt;      &lt;span style=&quot;color: #666666;&quot;&gt;// iLogViewEvent-&amp;gt;Event().Status();&lt;/span&gt;&lt;br /&gt;      &lt;span style=&quot;color: #666666;&quot;&gt;// iLogViewEvent-&amp;gt;Event().Number();&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;      &lt;span style=&quot;color: #666666;&quot;&gt;// Try retrieving the next event&lt;/span&gt;&lt;br /&gt;      &lt;span style=&quot;color: #0000ff;&quot;&gt;if&lt;/span&gt; &lt;span style=&quot;color: #008000;&quot;&gt;&amp;#40;&lt;/span&gt; iLogViewEvent&lt;span style=&quot;color: #000040;&quot;&gt;-&lt;/span&gt;&lt;span style=&quot;color: #000080;&quot;&gt;&amp;gt;&lt;/span&gt;NextL&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#40;&lt;/span&gt; iStatus &lt;span style=&quot;color: #008000;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #008000;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;br /&gt;        &lt;span style=&quot;color: #008000;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;        SetActive&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #008080;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;        &lt;span style=&quot;color: #008000;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;      &lt;span style=&quot;color: #0000ff;&quot;&gt;else&lt;/span&gt;&lt;br /&gt;        &lt;span style=&quot;color: #008000;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;        &lt;span style=&quot;color: #666666;&quot;&gt;// No more events&lt;/span&gt;&lt;br /&gt;        &lt;span style=&quot;color: #008000;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;      &lt;span style=&quot;color: #008000;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;    &lt;span style=&quot;color: #008000;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;  &lt;span style=&quot;color: #0000ff;&quot;&gt;void&lt;/span&gt; CDeliveryReportEngine&lt;span style=&quot;color: #008080;&quot;&gt;::&lt;/span&gt;&lt;span style=&quot;color: #007788;&quot;&gt;DoCancel&lt;/span&gt;&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #008000;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;br /&gt;    &lt;span style=&quot;color: #008000;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;    &lt;span style=&quot;color: #0000dd;&quot;&gt;delete&lt;/span&gt; iLogViewEvent&lt;span style=&quot;color: #008080;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;    iLogViewEvent &lt;span style=&quot;color: #000080;&quot;&gt;=&lt;/span&gt; &lt;span style=&quot;color: #0000dd;&quot;&gt;0&lt;/span&gt;&lt;span style=&quot;color: #008080;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;    &lt;span style=&quot;color: #008000;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;/pre&gt;
&lt;p&gt;&lt;br /&gt;
&lt;b&gt;Required capabilities&lt;/b&gt;&lt;br /&gt;
ReadUserData
&lt;/p&gt;
&lt;a name=&quot;Related_article&quot; id=&quot;Related_article&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt; Related article &lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;&lt;a href=&quot;http://www.forum.nokia.com/info/sw.nokia.com/id/8a2c473f-ca0c-4fc4-bcba-d7365959ef4f/S60_Platform_Log_Example.html&quot; class=&quot;external text&quot; title=&quot;http://www.forum.nokia.com/info/sw.nokia.com/id/8a2c473f-ca0c-4fc4-bcba-d7365959ef4f/S60_Platform_Log_Example.html&quot; rel=&quot;nofollow&quot;&gt;S60 Platform Log example&lt;/a&gt;
&lt;/p&gt;</description>
			<pubDate>Tue, 10 Nov 2009 06:44:31 GMT</pubDate>			<dc:creator>Forum Nokia KB</dc:creator>			<comments>http://wiki.forum.nokia.com/index.php/Talk:TSS001484_-_How_to_List_Delivery_Reports</comments>		</item>
		<item>
			<title>Before you start (WRT widget development)</title>
			<link>http://wiki.forum.nokia.com/index.php/Before_you_start_(WRT_widget_development)</link>
			<description>&lt;p&gt;To develop an S60 Web Runtime (WRT) widget for a mobile device, you need the following items:
&lt;/p&gt;
&lt;ul&gt;&lt;li&gt; Computer workstation — a PC with a Microsoft Windows operating system, Linux, or an Apple Macintosh;
&lt;/li&gt;&lt;li&gt; Text editor;
&lt;/li&gt;&lt;li&gt; Zip utility software capable of creating .zip files.
&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;In addition to the requirements listed above, it is recommended that you use the following tools to test the functionality of the WRT widget:
&lt;/p&gt;
&lt;ul&gt;&lt;li&gt; S60 3rd Edition, Feature Pack 2 SDK, or S60 5th Edition SDK. You can install the SDK from &lt;a href=&quot;http://www.forum.nokia.com/info/sw.nokia.com/id/ec866fab-4b76-49f6-b5a5-af0631419e9c/S60_All_in_One_SDKs.html&quot; class=&quot;external text&quot; title=&quot;http://www.forum.nokia.com/info/sw.nokia.com/id/ec866fab-4b76-49f6-b5a5-af0631419e9c/S60_All_in_One_SDKs.html&quot; rel=&quot;nofollow&quot;&gt;here&lt;/a&gt;. 
&lt;/li&gt;&lt;/ul&gt;
&lt;ul&gt;&lt;li&gt; A mobile device to test the application. See &lt;b&gt;Running the widget on a mobile device&lt;/b&gt; on how to transfer content to a mobile device.
&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;To make more advanced WRT widgets, you can install an IDE such as Aptana Studio Professional 1.5 with a Nokia WRT Plug-in.
&lt;/p&gt;&lt;p&gt;To install Aptana Studio, go &lt;a href=&quot;http://aptana.com/studio/download&quot; class=&quot;external text&quot; title=&quot;http://aptana.com/studio/download&quot; rel=&quot;nofollow&quot;&gt;here&lt;/a&gt; and select a suitable installation type (stand-alone with full installer preferred) and operating system. Click Download Now and run the installer after downloading.
&lt;/p&gt;&lt;p&gt;After Aptana has been installed, install the WRT plug-in. In Aptana Studio Professional 1.5 this is done in the following way: 
&lt;/p&gt;
&lt;ul&gt;&lt;li&gt; From the Help menu, select Install New Software.
&lt;/li&gt;&lt;li&gt; Click Add and then type in, for example, ‘Nokia WRT Plugin’ as the name and http://tools.ext.nokia.com/wrt/prod/aptana/v2.1/ as the location for the installed software. Click OK.
&lt;/li&gt;&lt;li&gt; From the list that appears select the Nokia WRT Plug-in, click Next, and click Finish.
&lt;/li&gt;&lt;li&gt; The plug-in has been installed, and new options will appear when you select File &amp;gt; New &amp;gt; Project.
&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;&lt;br /&gt;
To create your first WRT widget, see &lt;a href=&quot;/index.php/Create_your_first_WRT_widget&quot; title=&quot;Create your first WRT widget&quot;&gt;Create your first WRT widget&lt;/a&gt;.
&lt;/p&gt;</description>
			<pubDate>Wed, 11 Nov 2009 08:36:16 GMT</pubDate>			<dc:creator>Jimgilmour1</dc:creator>			<comments>http://wiki.forum.nokia.com/index.php/Talk:Before_you_start_(WRT_widget_development)</comments>		</item>
		<item>
			<title>Create your first WRT widget</title>
			<link>http://wiki.forum.nokia.com/index.php/Create_your_first_WRT_widget</link>
			<description>&lt;div align=&quot;right&quot;&gt;&lt;a href=&quot;/index.php/Featured_Articles&quot; title=&quot;Featured Articles&quot;&gt;Featured Article&lt;/a&gt; &amp;nbsp;&amp;nbsp; &lt;a href=&quot;/index.php/File:Approved-article.gif&quot; class=&quot;image&quot; title=&quot;image:Approved-article.gif&quot;&gt;&lt;img alt=&quot;image:Approved-article.gif&quot; src=&quot;http://www.forum.nokia.com/piazza/wiki/images/4/4e/Approved-article.gif&quot; width=&quot;20&quot; height=&quot;20&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;p&gt;This article describes the main phases of Web Runtime (WRT) widget creation by showing  how to create and deploy a very simple WRT widget. Before you begin, make sure your development environment complies with the requirements listed in the section &lt;a href=&quot;/index.php/Before_you_start_(WRT_widget_development)&quot; title=&quot;Before you start (WRT widget development)&quot;&gt;Before you start (WRT widget development)&lt;/a&gt;. 
&lt;/p&gt;&lt;p&gt;Here you will learn how to create a widget without any specific tools, like an integrated development environment (IDE). In this example, you will learn to create a new WRT widget, HelloWRT. The results page can be viewed quickly with a normal desktop browser. For proper viewing of the results, the package can be copied to a WRT-supported S60 3rd Edition, Feature Pack 2 device (for example, a Nokia E72 or Nokia N96 device) or an S60 5th Edition device (for example, a Nokia 5800 XpressMusic or Nokia N97 device), or it can be viewed in an SDK emulator.
&lt;/p&gt;
&lt;table id=&quot;toc&quot; class=&quot;toc&quot; summary=&quot;Contents&quot;&gt;&lt;tr&gt;&lt;td&gt;&lt;div id=&quot;toctitle&quot;&gt;&lt;h2&gt;Contents&lt;/h2&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li class=&quot;toclevel-1&quot;&gt;&lt;a href=&quot;#Creating_HelloWRT&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;1&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Creating HelloWRT&lt;/span&gt;&lt;/a&gt;
&lt;ul&gt;
&lt;li class=&quot;toclevel-2&quot;&gt;&lt;a href=&quot;#Creating_a_main_HTML_file&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;1.1&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Creating a main HTML file&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-2&quot;&gt;&lt;a href=&quot;#Creating_an_info.plist_file&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;1.2&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Creating an info.plist file&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-2&quot;&gt;&lt;a href=&quot;#Creating_a_simple_JavaScript_file_to_add_basic_functionality&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;1.3&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Creating a simple JavaScript file to add basic functionality&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-2&quot;&gt;&lt;a href=&quot;#Optional_step:_Creating_a_Cascading_Style_Sheet_.28CSS.29_file_to_control_style_and_layout&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;1.4&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Optional step: Creating a Cascading Style Sheet (CSS) file to control style and layout&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-2&quot;&gt;&lt;a href=&quot;#Optional_step:_Adding_an_application_icon&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;1.5&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Optional step: Adding an application icon&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li class=&quot;toclevel-1&quot;&gt;&lt;a href=&quot;#Creating_the_widget_package&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;2&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Creating the widget package&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-1&quot;&gt;&lt;a href=&quot;#Running_the_widget_on_a_PC_browser.2C_a_mobile_device.2C_an_emulator.2C_or_Forum_Nokia_RDA_service&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;3&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Running the widget on a PC browser, a mobile device, an emulator, or Forum Nokia RDA service&lt;/span&gt;&lt;/a&gt;
&lt;ul&gt;
&lt;li class=&quot;toclevel-2&quot;&gt;&lt;a href=&quot;#Testing_the_page_with_a_PC_browser&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;3.1&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Testing the page with a PC browser&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-2&quot;&gt;&lt;a href=&quot;#Running_the_widget_on_a_mobile_device&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;3.2&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Running the widget on a mobile device&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-2&quot;&gt;&lt;a href=&quot;#Running_the_widget_on_an_emulator&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;3.3&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Running the widget on an emulator&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-2&quot;&gt;&lt;a href=&quot;#Running_the_widget_on_the_Forum_Nokia_Remote_Device_Access_.28RDA.29_service&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;3.4&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Running the widget on the Forum Nokia Remote Device Access (RDA) service&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;script type=&quot;text/javascript&quot;&gt; if (window.showTocToggle) { var tocShowText = &quot;show&quot;; var tocHideText = &quot;hide&quot;; showTocToggle(); } &lt;/script&gt;
&lt;a name=&quot;Creating_HelloWRT&quot; id=&quot;Creating_HelloWRT&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;Creating HelloWRT&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;This example application generates a very basic view with some text and a simple form with text input and a button. No style sheets or complex JavaScript™ is used. When the button is clicked, the text of the input field is shown under the form as a new paragraph.
&lt;/p&gt;&lt;p&gt;The example screenshot is a 240 x 320 pixel resolution display, but the application will scale for different display sizes and orientations as well.
&lt;/p&gt;&lt;p&gt;&lt;a href=&quot;/index.php/File:HelloWRT_1.jpg&quot; class=&quot;image&quot; title=&quot;File:HelloWRT_1.jpg&quot;&gt;&lt;img alt=&quot;File:HelloWRT_1.jpg&quot; src=&quot;http://www.forum.nokia.com/piazza/wiki/images/2/2c/HelloWRT_1.jpg&quot; width=&quot;346&quot; height=&quot;552&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;
&lt;a name=&quot;Creating_a_main_HTML_file&quot; id=&quot;Creating_a_main_HTML_file&quot;&gt;&lt;/a&gt;&lt;h3&gt; &lt;span class=&quot;mw-headline&quot;&gt;Creating a main HTML file&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;Create a new file named index.html. This is the first of two mandatory files for a WRT widget. The name of the HTML file can be anything, for example index.html. Copy and paste the following code to the index.html file and save it.
&lt;/p&gt;
&lt;pre class=&quot;xml&quot; style=&quot;font-family:monospace;&quot;&gt;&lt;span style=&quot;color: #00bbdd;&quot;&gt;&amp;lt;!DOCTYPE html PUBLIC &amp;quot;-//W3C//DTD XHTML 1.0 Transitional//EN&amp;quot;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #00bbdd;&quot;&gt;&amp;quot;http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd&amp;quot;&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;lt;html&lt;/span&gt; &lt;span style=&quot;color: #000066;&quot;&gt;xmlns&lt;/span&gt;=&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;http://www.w3.org/1999/xhtml&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;  &lt;span style=&quot;color: #009900;&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;lt;head&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;    &lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;&amp;lt;!-- Define the title of the page --&amp;gt;&lt;/span&gt;&lt;br /&gt;    &lt;span style=&quot;color: #009900;&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;lt;title&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;Hello WRT!&lt;span style=&quot;color: #009900;&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;lt;/title&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;    &lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;&amp;lt;!-- Define the page content type --&amp;gt;&lt;/span&gt;&lt;br /&gt;    &lt;span style=&quot;color: #009900;&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;lt;meta&lt;/span&gt; &lt;span style=&quot;color: #000066;&quot;&gt;http-equiv&lt;/span&gt;=&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;Content-Type&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #000066;&quot;&gt;content&lt;/span&gt;=&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;text/html; charset=UTF-8&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;/&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;    &lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;&amp;lt;!-- Introduce the JavaScript-file the widget uses (optional) --&amp;gt;&lt;/span&gt;&lt;br /&gt;    &lt;span style=&quot;color: #009900;&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;lt;script&lt;/span&gt; &lt;span style=&quot;color: #000066;&quot;&gt;language&lt;/span&gt;=&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;javascript&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #000066;&quot;&gt;type&lt;/span&gt;=&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;text/javascript&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #000066;&quot;&gt;src&lt;/span&gt;=&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;basic.js&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;lt;/script&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;    &lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;&amp;lt;!-- Introduce the CSS-file the widget uses (optional) --&amp;gt;&lt;/span&gt;&lt;br /&gt;    &lt;span style=&quot;color: #009900;&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;lt;link&lt;/span&gt; &lt;span style=&quot;color: #000066;&quot;&gt;rel&lt;/span&gt;=&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;stylesheet&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #000066;&quot;&gt;href&lt;/span&gt;=&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;basic.css&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #000066;&quot;&gt;type&lt;/span&gt;=&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;text/css&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;  &lt;span style=&quot;color: #009900;&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;lt;/head&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;  &lt;span style=&quot;color: #009900;&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;lt;body&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;    &lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;&amp;lt;!-- Define a heading-text for the page --&amp;gt;&lt;/span&gt;&lt;br /&gt;    &lt;span style=&quot;color: #009900;&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;lt;h1&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;Hello WRT!&lt;span style=&quot;color: #009900;&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;lt;/h1&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;    &lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;&amp;lt;!-- Create a simple form, which uses JavaScript to handle inputted text --&amp;gt;&lt;/span&gt;&lt;br /&gt;    &lt;span style=&quot;color: #009900;&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;lt;form&lt;/span&gt; &lt;span style=&quot;color: #000066;&quot;&gt;action&lt;/span&gt;=&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;#&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #000066;&quot;&gt;onsubmit&lt;/span&gt;=&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;send(this.textinput1.value); return false&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;      &lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;&amp;lt;!-- Create HTML paragraph --&amp;gt;&lt;/span&gt;&lt;br /&gt;      &lt;span style=&quot;color: #009900;&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;lt;p&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;Enter your name:&lt;span style=&quot;color: #009900;&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;lt;/p&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;      &lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;&amp;lt;!-- Create the form input field --&amp;gt;&lt;/span&gt;&lt;br /&gt;      &lt;span style=&quot;color: #009900;&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;lt;input&lt;/span&gt; &lt;span style=&quot;color: #000066;&quot;&gt;name&lt;/span&gt;=&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;textinput1&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #000066;&quot;&gt;type&lt;/span&gt;=text &lt;span style=&quot;color: #000066;&quot;&gt;value&lt;/span&gt;=&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;/&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;      &lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;&amp;lt;!-- Define the form button --&amp;gt;&lt;/span&gt;&lt;br /&gt;      &lt;span style=&quot;color: #009900;&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;lt;input&lt;/span&gt; &lt;span style=&quot;color: #000066;&quot;&gt;type&lt;/span&gt;=&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;submit&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #000066;&quot;&gt;value&lt;/span&gt;=&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;Say Hello!&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;/&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;    &lt;span style=&quot;color: #009900;&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;lt;/form&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;    &lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;&amp;lt;!-- Define a paragraph for result text --&amp;gt;&lt;/span&gt;&lt;br /&gt;    &lt;span style=&quot;color: #009900;&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;lt;p&lt;/span&gt; &lt;span style=&quot;color: #000066;&quot;&gt;id&lt;/span&gt;=&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;result&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;lt;/p&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;  &lt;span style=&quot;color: #009900;&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;lt;/body&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;lt;/html&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/pre&gt;
&lt;a name=&quot;Creating_an_info.plist_file&quot; id=&quot;Creating_an_info.plist_file&quot;&gt;&lt;/a&gt;&lt;h3&gt; &lt;span class=&quot;mw-headline&quot;&gt;Creating an info.plist file&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;Create a new file named info.plist to the same folder as index.html. This is the second of the two mandatory files for a WRT widget. Notice that the HTML file name inside the &amp;lt;string&amp;gt; &amp;lt;/string&amp;gt; tags must match with the .html file created in step 1 (in this case index.html). Copy and paste the following lines of XML to the info.plist file and save it.
&lt;/p&gt;
&lt;pre class=&quot;xml&quot; style=&quot;font-family:monospace;&quot;&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;lt;?xml&lt;/span&gt; &lt;span style=&quot;color: #000066;&quot;&gt;version&lt;/span&gt;=&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;1.0&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #000066;&quot;&gt;encoding&lt;/span&gt;=&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;UTF-8&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;?&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #00bbdd;&quot;&gt;&amp;lt;!DOCTYPE plist PUBLIC &amp;quot;-//Nokia//DTD PLIST 1.0//EN&amp;quot; &amp;quot;http://www.nokia.com/DTDs/plist-1.0.dtd&amp;quot;&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;lt;plist&lt;/span&gt; &lt;span style=&quot;color: #000066;&quot;&gt;version&lt;/span&gt;=&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;1.0&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;lt;dict&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;  &lt;span style=&quot;color: #009900;&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;lt;key&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;DisplayName&lt;span style=&quot;color: #009900;&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;lt;/key&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;  &lt;span style=&quot;color: #009900;&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;lt;string&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;HelloWRT&lt;span style=&quot;color: #009900;&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;lt;/string&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;  &lt;span style=&quot;color: #009900;&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;lt;key&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;Identifier&lt;span style=&quot;color: #009900;&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;lt;/key&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;  &lt;span style=&quot;color: #009900;&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;lt;string&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;com.HelloWRT.basic.widget&lt;span style=&quot;color: #009900;&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;lt;/string&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;  &lt;span style=&quot;color: #009900;&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;lt;key&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;Version&lt;span style=&quot;color: #009900;&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;lt;/key&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;  &lt;span style=&quot;color: #009900;&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;lt;string&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;1.0&lt;span style=&quot;color: #009900;&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;lt;/string&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;  &lt;span style=&quot;color: #009900;&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;lt;key&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;MainHTML&lt;span style=&quot;color: #009900;&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;lt;/key&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;  &lt;span style=&quot;color: #009900;&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;lt;string&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;index.html&lt;span style=&quot;color: #009900;&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;lt;/string&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;  &lt;span style=&quot;color: #009900;&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;lt;key&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;MiniViewEnabled&lt;span style=&quot;color: #009900;&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;lt;/key&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;  &lt;span style=&quot;color: #009900;&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;lt;false&lt;/span&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;/&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;lt;/dict&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;lt;/plist&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/pre&gt;
&lt;a name=&quot;Creating_a_simple_JavaScript_file_to_add_basic_functionality&quot; id=&quot;Creating_a_simple_JavaScript_file_to_add_basic_functionality&quot;&gt;&lt;/a&gt;&lt;h3&gt; &lt;span class=&quot;mw-headline&quot;&gt;Creating a simple JavaScript file to add basic functionality&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;Create a new file named basic.js to the same folder as index.html, which will hold some JavaScript for the widget. This is not a mandatory file for a widget, but we have just a couple of lines of functionality for the widget there. Copy and paste the following code to the basic.js file and save it.
&lt;/p&gt;
&lt;pre class=&quot;xml&quot; style=&quot;font-family:monospace;&quot;&gt;/**&lt;br /&gt; * Method to handle input data. Parameter data is appended as new paragraph &lt;br /&gt; * below the widget's form.&lt;br /&gt; * @param {Object} data The inputted text.&lt;br /&gt; */&lt;br /&gt;function send(data)&lt;br /&gt;{&lt;br /&gt;  // Create a new paragraph for result&lt;br /&gt;  var theNewParagraph = document.createElement('p');&lt;br /&gt;  // Create text node for result&lt;br /&gt;  var theText1 = document.createTextNode('Hello ' + data + '!');&lt;br /&gt;  // Append the result text for result paragraph&lt;br /&gt;  theNewParagraph.appendChild(theText1);&lt;br /&gt;  // Show the result paragraph on the page&lt;br /&gt;  document.getElementById(&amp;quot;result&amp;quot;).appendChild(theNewParagraph);	&lt;br /&gt;}&lt;/pre&gt;
&lt;a name=&quot;Optional_step:_Creating_a_Cascading_Style_Sheet_.28CSS.29_file_to_control_style_and_layout&quot; id=&quot;Optional_step:_Creating_a_Cascading_Style_Sheet_.28CSS.29_file_to_control_style_and_layout&quot;&gt;&lt;/a&gt;&lt;h3&gt; &lt;span class=&quot;mw-headline&quot;&gt;Optional step: Creating a Cascading Style Sheet (CSS) file to control style and layout&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;Optionally you can create a new file named basic.css, which would hold any style and layout control for the HTML elements. The file should be introduced in the index.html with the following line in the &amp;lt;head&amp;gt;-element. Note that this is not mandatory for the widget and is not used in this example.
&lt;/p&gt;
&lt;pre class=&quot;xml&quot; style=&quot;font-family:monospace;&quot;&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;lt;link&lt;/span&gt; &lt;span style=&quot;color: #000066;&quot;&gt;rel&lt;/span&gt;=&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;stylesheet&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #000066;&quot;&gt;href&lt;/span&gt;=&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;basic.css&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #000066;&quot;&gt;type&lt;/span&gt;=&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;text/css&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/pre&gt;
&lt;p&gt;&lt;b&gt;Example code for basic.css&lt;/b&gt;
&lt;/p&gt;
&lt;pre class=&quot;xml&quot; style=&quot;font-family:monospace;&quot;&gt;body&lt;br /&gt;{&lt;br /&gt;background-color:navy;&lt;br /&gt;}&lt;/pre&gt;
&lt;a name=&quot;Optional_step:_Adding_an_application_icon&quot; id=&quot;Optional_step:_Adding_an_application_icon&quot;&gt;&lt;/a&gt;&lt;h3&gt; &lt;span class=&quot;mw-headline&quot;&gt;Optional step: Adding an application icon&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;Optionally you can add an icon for the widget. If no custom icon is added, then a default application icon is shown. If you wish to add a custom application icon, it needs to be in Portable Networking Graphics (PNG) file format and named as &lt;b&gt;icon.png&lt;/b&gt;. The recommended size for the icon is 88 x 88 pixels. The icon is automatically scaled, based on the device screen resolution. The custom icon needs to be in the same directory as the other widget files. 
&lt;/p&gt;&lt;p&gt;The default application icon can be seen here
&lt;/p&gt;&lt;p&gt;&lt;a href=&quot;/index.php/File:HelloWRT_emulator8.jpg&quot; class=&quot;image&quot; title=&quot;File:HelloWRT_emulator8.jpg&quot;&gt;&lt;img alt=&quot;File:HelloWRT_emulator8.jpg&quot; src=&quot;http://www.forum.nokia.com/piazza/wiki/images/b/b9/HelloWRT_emulator8.jpg&quot; width=&quot;465&quot; height=&quot;811&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;
&lt;a name=&quot;Creating_the_widget_package&quot; id=&quot;Creating_the_widget_package&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;Creating the widget package&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;Finally, create the widget package. Select the folder containing the files created above and create a ZIP file using a suitable utility, such as WinZip. Then change the extension of the resulting file to &lt;b&gt;.wgz&lt;/b&gt;.
&lt;/p&gt;&lt;p&gt;&lt;a href=&quot;/index.php/File:HelloWRT_package.jpg&quot; class=&quot;image&quot; title=&quot;File:HelloWRT_package.jpg&quot;&gt;&lt;img alt=&quot;File:HelloWRT_package.jpg&quot; src=&quot;http://www.forum.nokia.com/piazza/wiki/images/0/0f/HelloWRT_package.jpg&quot; width=&quot;187&quot; height=&quot;116&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;&lt;p&gt;&lt;a href=&quot;/index.php/File:HelloWRT_package2.jpg&quot; class=&quot;image&quot; title=&quot;File:HelloWRT_package2.jpg&quot;&gt;&lt;img alt=&quot;File:HelloWRT_package2.jpg&quot; src=&quot;http://www.forum.nokia.com/piazza/wiki/images/3/3b/HelloWRT_package2.jpg&quot; width=&quot;534&quot; height=&quot;88&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;
&lt;a name=&quot;Running_the_widget_on_a_PC_browser.2C_a_mobile_device.2C_an_emulator.2C_or_Forum_Nokia_RDA_service&quot; id=&quot;Running_the_widget_on_a_PC_browser.2C_a_mobile_device.2C_an_emulator.2C_or_Forum_Nokia_RDA_service&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt; Running the widget on a PC browser, a mobile device, an emulator, or Forum Nokia RDA service  &lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;When the widget is ready there are several options for testing:
&lt;/p&gt;&lt;p&gt;-	PC browser
-	S60 mobile device
-	Emulator
-	Forum Nokia Remote Device Access (RDA) service
&lt;/p&gt;&lt;p&gt;Note: Widgets do not need to be signed.
&lt;/p&gt;
&lt;a name=&quot;Testing_the_page_with_a_PC_browser&quot; id=&quot;Testing_the_page_with_a_PC_browser&quot;&gt;&lt;/a&gt;&lt;h3&gt; &lt;span class=&quot;mw-headline&quot;&gt; Testing the page with a PC browser &lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;To test the widget in a PC browser, simply open the index.html.
&lt;/p&gt;
&lt;a name=&quot;Running_the_widget_on_a_mobile_device&quot; id=&quot;Running_the_widget_on_a_mobile_device&quot;&gt;&lt;/a&gt;&lt;h3&gt; &lt;span class=&quot;mw-headline&quot;&gt;Running the widget on a mobile device &lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;When the *.wgz package has been created, you can transfer it to a device like any other installable application or content. To transfer the package to a device, use Nokia PC Suite and connect your mobile phone using, for example, Bluetooth or a USB cable connection. When PC Suite has connected your device, the easiest way to install the widget is to double-click the .wrt package, which initiates the install process. Another choice is to open the PC Suite application and drag-and-drop the .wgz package on top of the device image. PC Suite will inform you how the installation is progressing. You also need to accept the installation in the device. Note that the default icon does not necessarily show on the device before you have rebooted it. The widget can, however, be started without rebooting after the installation.
&lt;/p&gt;
&lt;a name=&quot;Running_the_widget_on_an_emulator&quot; id=&quot;Running_the_widget_on_an_emulator&quot;&gt;&lt;/a&gt;&lt;h3&gt; &lt;span class=&quot;mw-headline&quot;&gt; Running the widget on an emulator &lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;Another way to test the WRT widget is to use the emulator included in the S60 3rd Edition, Feature Pack 2 or S60 5th Edition SDK. The emulator allows you to install *.wgz files and run WRT widgets as you would on a device. 
&lt;/p&gt;&lt;p&gt;Running the widget on an emulator
Install the SDK &lt;a href=&quot;http://www.forum.nokia.com/info/sw.nokia.com/id/ec866fab-4b76-49f6-b5a5-af0631419e9c/S60_All_in_One_SDKs.html&quot; class=&quot;external text&quot; title=&quot;http://www.forum.nokia.com/info/sw.nokia.com/id/ec866fab-4b76-49f6-b5a5-af0631419e9c/S60_All_in_One_SDKs.html&quot; rel=&quot;nofollow&quot;&gt;here&lt;/a&gt;. Once the SDK has been installed, run the widget by selecting File &amp;gt; Open from the emulator.
&lt;/p&gt;&lt;p&gt;Select the HelloWRT.wgz file and choose Open. When the emulator asks if you wish to install the application, choose Yes.
&lt;/p&gt;&lt;p&gt;The emulator asks if you wish to install on C: Phone mem. or E: Memory Card. Click one of the options, or choose Select if the default is okay.
&lt;/p&gt;&lt;p&gt;The emulator installs the widget and states ‘Installation complete’ after installation.
&lt;/p&gt;&lt;p&gt;After the widget has been installed, go to the menu and select Applications.
&lt;/p&gt;&lt;p&gt;At the bottom of Applications, find the HelloWRT widget and select it.
&lt;/p&gt;
&lt;a name=&quot;Running_the_widget_on_the_Forum_Nokia_Remote_Device_Access_.28RDA.29_service&quot; id=&quot;Running_the_widget_on_the_Forum_Nokia_Remote_Device_Access_.28RDA.29_service&quot;&gt;&lt;/a&gt;&lt;h3&gt; &lt;span class=&quot;mw-headline&quot;&gt; Running the widget on the Forum Nokia Remote Device Access (RDA) service &lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;The Remote Device Access (RDA) service allows developers to test mobile applications and services remotely on various Nokia devices based on Symbian OS. It is available for all Forum Nokia members. See &lt;a href=&quot;http://www.forum.nokia.com/Technology_Topics/Application_Quality/Testing/Remote_Device_Access/Instructions_for_RDA_Usage.xhtml&quot; class=&quot;external text&quot; title=&quot;http://www.forum.nokia.com/Technology_Topics/Application_Quality/Testing/Remote_Device_Access/Instructions_for_RDA_Usage.xhtml&quot; rel=&quot;nofollow&quot;&gt;Forum Nokia RDA&lt;/a&gt;for instructions for RDA usage. Remember to delete your package file when you end the device reservation.
&lt;/p&gt;</description>
			<pubDate>Thu, 12 Nov 2009 19:39:42 GMT</pubDate>			<dc:creator>Kiran10182</dc:creator>			<comments>http://wiki.forum.nokia.com/index.php/Talk:Create_your_first_WRT_widget</comments>		</item>
		<item>
			<title>Customisable List</title>
			<link>http://wiki.forum.nokia.com/index.php/Customisable_List</link>
			<description>&lt;a name=&quot;Inheritance&quot; id=&quot;Inheritance&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;Inheritance&lt;/span&gt;&lt;/h1&gt;
&lt;pre class=&quot;text&quot; style=&quot;font-family:monospace;&quot;&gt;Nokia.Widget&lt;br /&gt;    | - Nokia.CustomizableList&lt;/pre&gt;
&lt;a name=&quot;1_-_Description&quot; id=&quot;1_-_Description&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;1 - Description&lt;/span&gt;&lt;/h1&gt;
&lt;p&gt;The Customisable List component combines list behaviour with the following components: Button, Text, Link, and Images. 
&lt;/p&gt;&lt;p&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;a name=&quot;2_-_Visual_Design&quot; id=&quot;2_-_Visual_Design&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;2 - Visual Design&lt;/span&gt;&lt;/h1&gt;
&lt;p&gt;&lt;a href=&quot;/index.php/File:Customizablelist01.png&quot; class=&quot;image&quot; title=&quot;File:Customizablelist01.png&quot;&gt;&lt;img alt=&quot;File:Customizablelist01.png&quot; src=&quot;http://www.forum.nokia.com/piazza/wiki/images/d/da/Customizablelist01.png&quot; width=&quot;230&quot; height=&quot;366&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;
&lt;a name=&quot;3_-_Component_Dependencies&quot; id=&quot;3_-_Component_Dependencies&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;3 - Component Dependencies&lt;/span&gt;&lt;/h1&gt;
&lt;a name=&quot;3.1_CSS&quot; id=&quot;3.1_CSS&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;3.1 CSS&lt;/span&gt;&lt;/h2&gt;
&lt;pre&gt;
&amp;lt;!-- Themeroller CSS --&amp;gt;
&amp;lt;link rel=&amp;quot;stylesheet&amp;quot; href=&amp;quot;themes/themeroller/&amp;lt;theme&amp;gt;/Themeroller.css&amp;quot; type=&amp;quot;text/css&amp;quot; media=&amp;quot;screen&amp;quot;&amp;gt;
&amp;lt;!-- Specific Theme/Resolution CSS --&amp;gt;
&amp;lt;link rel=&amp;quot;stylesheet&amp;quot; href=&amp;quot;/themes/nokia/ext-theme/&amp;lt;theme&amp;gt;/&amp;lt;resolution&amp;gt;/custom.css&amp;quot; type=&amp;quot;text/css&amp;quot; media=&amp;quot;screen&amp;quot;&amp;gt;
&lt;/pre&gt; 
&lt;p&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;a name=&quot;3.2_Javascript&quot; id=&quot;3.2_Javascript&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;3.2 Javascript&lt;/span&gt;&lt;/h2&gt;
&lt;pre&gt;
&amp;lt;!-- jQuery file --&amp;gt;
&amp;lt;script src=&amp;quot;/lib/jquery/jQuery.js&amp;quot; type=&amp;quot;text/javascript&amp;quot; charset=&amp;quot;utf-8&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;!-- Guarana file --&amp;gt;
&amp;lt;script src=&amp;quot;/lib/Guarana.js&amp;quot; type=&amp;quot;text/javascript&amp;quot; charset=&amp;quot;utf-8&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&lt;/pre&gt; 
&lt;p&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;a name=&quot;4_-_Functional_Specifications.2FRequirements&quot; id=&quot;4_-_Functional_Specifications.2FRequirements&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;4 - Functional Specifications/Requirements&lt;/span&gt;&lt;/h1&gt;
&lt;a name=&quot;4.1_-_Options&quot; id=&quot;4.1_-_Options&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;4.1 - Options&lt;/span&gt;&lt;/h2&gt;
&lt;ul&gt;&lt;li&gt;element: 'selector' 
&lt;ul&gt;&lt;li&gt;jQuery selector or the DOM reference to become the container of the component. 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;visible: boolean 
&lt;ul&gt;&lt;li&gt;Defines the visible state of the component. 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;a name=&quot;4.2_-_Events_-_Callbacks&quot; id=&quot;4.2_-_Events_-_Callbacks&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;4.2 - Events - Callbacks&lt;/span&gt;&lt;/h2&gt;
&lt;ul&gt;&lt;li&gt;create: function() 
&lt;ul&gt;&lt;li&gt;Scope: [this.element] 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;addItem function(null, item) 
&lt;ul&gt;&lt;li&gt;Scope: [this.element] 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;removeItem: function(null, index) 
&lt;ul&gt;&lt;li&gt;Scope: [this.element] 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;show: function(event, openercustomizableList) 
&lt;ul&gt;&lt;li&gt;Scope: [this.element] 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;hide: function(event) 
&lt;ul&gt;&lt;li&gt;Scope: [this.element] 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;a name=&quot;4.3_-_Methods&quot; id=&quot;4.3_-_Methods&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;4.3 - Methods&lt;/span&gt;&lt;/h2&gt;
&lt;ul&gt;&lt;li&gt;addItem: function(item) 
&lt;ul&gt;&lt;li&gt;Adds a new element to the component. 
&lt;/li&gt;&lt;li&gt;return [void] 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;removeItem: function(item) 
&lt;ul&gt;&lt;li&gt;Removes an element from the component. 
&lt;/li&gt;&lt;li&gt;return [void]  
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;show: function() 
&lt;ul&gt;&lt;li&gt;Shows the component. 
&lt;/li&gt;&lt;li&gt;return [void] 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;hide: function() 
&lt;ul&gt;&lt;li&gt;Hides the component. 
&lt;/li&gt;&lt;li&gt;return [void] 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;&lt;br /&gt; 
&lt;/p&gt;
&lt;a name=&quot;4.4-_Default_options&quot; id=&quot;4.4-_Default_options&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;4.4- Default options&lt;/span&gt;&lt;/h2&gt;
&lt;ul&gt;&lt;li&gt;visible: false
&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;a name=&quot;5_-_Component_Demo&quot; id=&quot;5_-_Component_Demo&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;5 - Component Demo&lt;/span&gt;&lt;/h1&gt;
&lt;a name=&quot;5.1_HTML&quot; id=&quot;5.1_HTML&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;5.1 HTML&lt;/span&gt;&lt;/h2&gt;
&lt;pre&gt;
&amp;lt;div id=&amp;quot;list&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;
                
&amp;lt;div id=&amp;quot;item1&amp;quot; class=&amp;quot;ui-helper-clearfix&amp;quot;&amp;gt;
     &amp;lt;img src=&amp;quot;images/carousel02.jpg&amp;quot; id=&amp;quot;textimage&amp;quot; /&amp;gt;
          &amp;lt;p id=&amp;quot;paragraph&amp;quot;&amp;gt;Lorem ipsum dolor sit amet.&amp;lt;/p&amp;gt;
          &amp;lt;br style=&amp;quot;clear:both;&amp;quot; /&amp;gt;
&amp;lt;/div&amp;gt;
&lt;/pre&gt;
&lt;p&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;a name=&quot;5.2_Javascript&quot; id=&quot;5.2_Javascript&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;5.2 Javascript&lt;/span&gt;&lt;/h2&gt;
&lt;pre&gt;
window.list = new Nokia.CustomizableList({
     element: '#list',
     visible: true,
     create: function() {
          //alert(&amp;quot;Customizable List: Create&amp;quot;);
     },
     show: function(openerTransitionList) {
          //alert(&amp;quot;Customizable List: Show&amp;quot;, openerTransitionList);
     },
     hide: function() {
          //alert(&amp;quot;Customizable List: Hide list1.&amp;quot;);
     },
     addItem: function(event, item) {
          //alert(&amp;quot;Customizable List: AddItem&amp;quot;, item);
     },
     removeItem: function(event, item) {
          //alert(&amp;quot;Customizable List: RemoveItem&amp;quot;, item);
     }
});

list.addItem('#item1');
&lt;/pre&gt; 
&lt;a name=&quot;6_-_Nokia_WRT_Browser_Compatibility&quot; id=&quot;6_-_Nokia_WRT_Browser_Compatibility&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;6 - Nokia WRT Browser Compatibility&lt;/span&gt;&lt;/h1&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;table class=&quot;pbNotSortable&quot; cellspacing=&quot;1&quot; cellpadding=&quot;1&quot; width=&quot;300&quot; align=&quot;left&quot; style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 0px; border-top: rgb(211,211,211) 1px dotted; padding-left: 0px; font-size: 13px; padding-bottom: 0px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 0px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; border-collapse: collapse&quot;&gt;
        &lt;tr style=&quot;border-top-width: 0px; padding-right: 0px; padding-left: 0px; border-left-width: 0px; font-size: 13px; border-bottom-width: 0px; padding-bottom: 0px; margin: 0px; vertical-align: baseline; padding-top: 0px; font-family: inherit; border-right-width: 0px&quot;&gt;
            &lt;td class=&quot;sorttable_sorted_reverse&quot; style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 4px; border-top: rgb(211,211,211) 1px dotted; padding-left: 4px; font-weight: 400; font-size: 13px; padding-bottom: 2px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 2px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; background-color: rgb(255,255,255); text-align: left&quot;&gt;&lt;span id=&quot;sorttable_sortrevind&quot; style=&quot;border-top-width: 0px; padding-right: 0px; padding-left: 0px; border-left-width: 0px; font-size: 13px; float: left; border-bottom-width: 0px; padding-bottom: 0px; margin: 0px; vertical-align: baseline; padding-top: 0px; font-family: inherit; border-right-width: 0px&quot;&gt;▴&amp;nbsp;&lt;/span&gt;&amp;nbsp;&lt;/td&gt;
            &lt;td style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 4px; border-top: rgb(211,211,211) 1px dotted; padding-left: 4px; font-weight: 400; font-size: 13px; padding-bottom: 2px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 2px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; background-color: rgb(255,255,255); text-align: left&quot;&gt;&lt;strong&gt;S60 3.1&lt;/strong&gt;&lt;/td&gt;
            &lt;td style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 4px; border-top: rgb(211,211,211) 1px dotted; padding-left: 4px; font-weight: 400; font-size: 13px; padding-bottom: 2px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 2px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; background-color: rgb(255,255,255); text-align: left&quot;&gt;&lt;strong&gt;S60 3.2&lt;/strong&gt;&lt;/td&gt;
            &lt;td style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 4px; border-top: rgb(211,211,211) 1px dotted; padding-left: 4px; font-weight: 400; font-size: 13px; padding-bottom: 2px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 2px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; background-color: rgb(255,255,255); text-align: left&quot;&gt;&lt;strong&gt;S60 5.0&lt;/strong&gt;&lt;/td&gt;
        &lt;/tr&gt;&lt;tr style=&quot;border-top-width: 0px; padding-right: 0px; padding-left: 0px; border-left-width: 0px; font-size: 13px; border-bottom-width: 0px; padding-bottom: 0px; margin: 0px; vertical-align: baseline; padding-top: 0px; font-family: inherit; border-right-width: 0px&quot;&gt;
            &lt;td style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 4px; border-top: rgb(211,211,211) 1px dotted; padding-left: 4px; font-weight: 400; font-size: 13px; padding-bottom: 2px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 2px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; background-color: rgb(255,255,255); text-align: left&quot;&gt;Customisable List&lt;/td&gt;
            &lt;td bgcolor=&quot;#000000&quot; style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 4px; border-top: rgb(211,211,211) 1px dotted; padding-left: 4px; font-weight: 400; font-size: 13px; padding-bottom: 2px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 2px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; background-color: rgb(255,255,255); text-align: left&quot;&gt;&lt;span style=&quot;border-top-width: 0px; padding-right: 0px; padding-left: 0px; border-left-width: 0px; font-size: 13px; border-bottom-width: 0px; padding-bottom: 0px; margin: 0px; vertical-align: baseline; color: rgb(51,153,102); padding-top: 0px; font-family: inherit; border-right-width: 0px&quot;&gt;No&lt;/span&gt;&lt;/td&gt;
            &lt;td bgcolor=&quot;#000000&quot; style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 4px; border-top: rgb(211,211,211) 1px dotted; padding-left: 4px; font-weight: 400; font-size: 13px; padding-bottom: 2px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 2px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; background-color: rgb(255,255,255); text-align: left&quot;&gt;&lt;span style=&quot;border-top-width: 0px; padding-right: 0px; padding-left: 0px; border-left-width: 0px; font-size: 13px; border-bottom-width: 0px; padding-bottom: 0px; margin: 0px; vertical-align: baseline; color: rgb(51,153,102); padding-top: 0px; font-family: inherit; border-right-width: 0px&quot;&gt;YES&amp;nbsp;&lt;/span&gt;&lt;/td&gt;
            &lt;td bgcolor=&quot;#000000&quot; style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 4px; border-top: rgb(211,211,211) 1px dotted; padding-left: 4px; font-weight: 400; font-size: 13px; padding-bottom: 2px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 2px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; background-color: rgb(255,255,255); text-align: left&quot;&gt;&lt;span style=&quot;border-top-width: 0px; padding-right: 0px; padding-left: 0px; border-left-width: 0px; font-size: 13px; border-bottom-width: 0px; padding-bottom: 0px; margin: 0px; vertical-align: baseline; color: rgb(51,153,102); padding-top: 0px; font-family: inherit; border-right-width: 0px&quot;&gt;YES&amp;nbsp;&lt;/span&gt;&lt;/td&gt;
&lt;/table&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
</description>
			<pubDate>Wed, 18 Nov 2009 14:51:00 GMT</pubDate>			<dc:creator>Hkaliste</dc:creator>			<comments>http://wiki.forum.nokia.com/index.php/Talk:Customisable_List</comments>		</item>
		<item>
			<title>Text Link</title>
			<link>http://wiki.forum.nokia.com/index.php/Text_Link</link>
			<description>&lt;a name=&quot;Inheritance&quot; id=&quot;Inheritance&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;Inheritance&lt;/span&gt;&lt;/h1&gt;
&lt;pre class=&quot;text&quot; style=&quot;font-family:monospace;&quot;&gt;Nokia.Widget&lt;br /&gt;    | - Nokia.TextLink&lt;/pre&gt;
&lt;a name=&quot;1_-_Description&quot; id=&quot;1_-_Description&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;1 - Description&lt;/span&gt;&lt;/h1&gt;
&lt;p&gt;A link to a specific destination.
&lt;/p&gt;&lt;p&gt;&lt;br /&gt; 
&lt;/p&gt;
&lt;a name=&quot;2_-_Visual_Design&quot; id=&quot;2_-_Visual_Design&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;2 - Visual Design&lt;/span&gt;&lt;/h1&gt;
&lt;p&gt;&lt;a href=&quot;/index.php/File:Textlink01.png&quot; class=&quot;image&quot; title=&quot;File:Textlink01.png&quot;&gt;&lt;img alt=&quot;File:Textlink01.png&quot; src=&quot;http://www.forum.nokia.com/piazza/wiki/images/4/41/Textlink01.png&quot; width=&quot;448&quot; height=&quot;38&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;
&lt;a name=&quot;3_-_Component_Dependencies&quot; id=&quot;3_-_Component_Dependencies&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;3 - Component Dependencies&lt;/span&gt;&lt;/h1&gt;
&lt;a name=&quot;3.1_CSS&quot; id=&quot;3.1_CSS&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;3.1 CSS&lt;/span&gt;&lt;/h2&gt;
&lt;pre&gt;
&amp;lt;!-- Themeroller CSS --&amp;gt;
&amp;lt;link rel=&amp;quot;stylesheet&amp;quot; href=&amp;quot;themes/themeroller/&amp;lt;theme&amp;gt;/Themeroller.css&amp;quot; type=&amp;quot;text/css&amp;quot; media=&amp;quot;screen&amp;quot;&amp;gt;
&amp;lt;!-- Specific Theme/Resolution CSS --&amp;gt;
&amp;lt;link rel=&amp;quot;stylesheet&amp;quot; href=&amp;quot;/themes/nokia/ext-theme/&amp;lt;theme&amp;gt;/&amp;lt;resolution&amp;gt;/custom.css&amp;quot; type=&amp;quot;text/css&amp;quot; media=&amp;quot;screen&amp;quot;&amp;gt;
&lt;/pre&gt; 
&lt;p&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;a name=&quot;3.2_Javascript&quot; id=&quot;3.2_Javascript&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;3.2 Javascript&lt;/span&gt;&lt;/h2&gt;
&lt;pre&gt;
&amp;lt;!-- jQuery file --&amp;gt;
&amp;lt;script src=&amp;quot;/lib/jquery/jQuery.js&amp;quot; type=&amp;quot;text/javascript&amp;quot; charset=&amp;quot;utf-8&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;!-- Guarana file --&amp;gt;
&amp;lt;script src=&amp;quot;/lib/Guarana.js&amp;quot; type=&amp;quot;text/javascript&amp;quot; charset=&amp;quot;utf-8&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&lt;/pre&gt; 
&lt;p&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;a name=&quot;4_-_Functional_Specifications.2FRequirements&quot; id=&quot;4_-_Functional_Specifications.2FRequirements&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;4 - Functional Specifications/Requirements&lt;/span&gt;&lt;/h1&gt;
&lt;a name=&quot;4.1_-_Options&quot; id=&quot;4.1_-_Options&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;4.1 - Options&lt;/span&gt;&lt;/h2&gt;
&lt;ul&gt;&lt;li&gt;element: 'selector' 
&lt;ul&gt;&lt;li&gt;jQuery selector or the DOM reference to become the container of the component. 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;label: string 
&lt;ul&gt;&lt;li&gt;Label content to be included in the component. 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;url: string 
&lt;ul&gt;&lt;li&gt;Defines the component URL address. 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;style: Object {} 
&lt;ul&gt;&lt;li&gt;Defines the component style. This option is a hash table with CSS properties. 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;a name=&quot;4.2_-_Events_-_Callbacks&quot; id=&quot;4.2_-_Events_-_Callbacks&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;4.2 - Events - Callbacks&lt;/span&gt;&lt;/h2&gt;
&lt;ul&gt;&lt;li&gt;click: function(event, url) 
&lt;ul&gt;&lt;li&gt;Scope: [this.element] 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;create: function() 
&lt;ul&gt;&lt;li&gt;Scope: [this.element] 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;a name=&quot;4.3_-_Methods&quot; id=&quot;4.3_-_Methods&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;4.3 - Methods&lt;/span&gt;&lt;/h2&gt;
&lt;ul&gt;&lt;li&gt;go: function(url) 
&lt;ul&gt;&lt;li&gt;Opens a specific URL address. 
&lt;/li&gt;&lt;li&gt;return [void] 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;/ul&gt;
&lt;a name=&quot;4.4_-_Default_options&quot; id=&quot;4.4_-_Default_options&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;4.4 - Default options&lt;/span&gt;&lt;/h2&gt;
&lt;ul&gt;&lt;li&gt;url: false 
&lt;/li&gt;&lt;li&gt;label: &lt;i&gt; &lt;/i&gt;
&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;a name=&quot;5_-_Component_Demo&quot; id=&quot;5_-_Component_Demo&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;5 - Component Demo&lt;/span&gt;&lt;/h1&gt;
&lt;a name=&quot;5.1_HTML&quot; id=&quot;5.1_HTML&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;5.1 HTML&lt;/span&gt;&lt;/h2&gt;
&lt;pre&gt;
&amp;lt;a href=&amp;quot;#&amp;quot; id=&amp;quot;link01&amp;quot;&amp;gt;the label will be placed here&amp;lt;/a&amp;gt;
&lt;/pre&gt; 
&lt;a name=&quot;5.2_Javascript&quot; id=&quot;5.2_Javascript&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;5.2 Javascript&lt;/span&gt;&lt;/h2&gt;
&lt;pre&gt;
var link1 = new Nokia.TextLink({
     element: '#link01'
     label: 'New Link',
     style: {
          color: 'red',
          fontSize: '15px
     },
     create: function() {
          //alert(&amp;quot;TextLink: Create&amp;quot;);
     },
     click: function() {
          //alert(&amp;quot;TextLink: Click&amp;quot;);                                           
     }
});
&lt;/pre&gt;
&lt;p&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;a name=&quot;6_-_Nokia_WRT_Browser_Compatibility&quot; id=&quot;6_-_Nokia_WRT_Browser_Compatibility&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;6 - Nokia WRT Browser Compatibility&lt;/span&gt;&lt;/h1&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;table class=&quot;pbNotSortable&quot; cellspacing=&quot;1&quot; cellpadding=&quot;1&quot; width=&quot;300&quot; align=&quot;left&quot; style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 0px; border-top: rgb(211,211,211) 1px dotted; padding-left: 0px; font-size: 13px; padding-bottom: 0px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 0px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; border-collapse: collapse&quot;&gt;
        &lt;tr style=&quot;border-top-width: 0px; padding-right: 0px; padding-left: 0px; border-left-width: 0px; font-size: 13px; border-bottom-width: 0px; padding-bottom: 0px; margin: 0px; vertical-align: baseline; padding-top: 0px; font-family: inherit; border-right-width: 0px&quot;&gt;
            &lt;td class=&quot;sorttable_sorted_reverse&quot; style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 4px; border-top: rgb(211,211,211) 1px dotted; padding-left: 4px; font-weight: 400; font-size: 13px; padding-bottom: 2px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 2px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; background-color: rgb(255,255,255); text-align: left&quot;&gt;&lt;span id=&quot;sorttable_sortrevind&quot; style=&quot;border-top-width: 0px; padding-right: 0px; padding-left: 0px; border-left-width: 0px; font-size: 13px; float: left; border-bottom-width: 0px; padding-bottom: 0px; margin: 0px; vertical-align: baseline; padding-top: 0px; font-family: inherit; border-right-width: 0px&quot;&gt;▴&amp;nbsp;&lt;/span&gt;&amp;nbsp;&lt;/td&gt;
            &lt;td style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 4px; border-top: rgb(211,211,211) 1px dotted; padding-left: 4px; font-weight: 400; font-size: 13px; padding-bottom: 2px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 2px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; background-color: rgb(255,255,255); text-align: left&quot;&gt;&lt;strong&gt;S60 3.1&lt;/strong&gt;&lt;/td&gt;
            &lt;td style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 4px; border-top: rgb(211,211,211) 1px dotted; padding-left: 4px; font-weight: 400; font-size: 13px; padding-bottom: 2px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 2px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; background-color: rgb(255,255,255); text-align: left&quot;&gt;&lt;strong&gt;S60 3.2&lt;/strong&gt;&lt;/td&gt;
            &lt;td style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 4px; border-top: rgb(211,211,211) 1px dotted; padding-left: 4px; font-weight: 400; font-size: 13px; padding-bottom: 2px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 2px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; background-color: rgb(255,255,255); text-align: left&quot;&gt;&lt;strong&gt;S60 5.0&lt;/strong&gt;&lt;/td&gt;
        &lt;/tr&gt;&lt;tr style=&quot;border-top-width: 0px; padding-right: 0px; padding-left: 0px; border-left-width: 0px; font-size: 13px; border-bottom-width: 0px; padding-bottom: 0px; margin: 0px; vertical-align: baseline; padding-top: 0px; font-family: inherit; border-right-width: 0px&quot;&gt;
            &lt;td style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 4px; border-top: rgb(211,211,211) 1px dotted; padding-left: 4px; font-weight: 400; font-size: 13px; padding-bottom: 2px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 2px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; background-color: rgb(255,255,255); text-align: left&quot;&gt;Text Link&lt;/td&gt;
            &lt;td bgcolor=&quot;#000000&quot; style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 4px; border-top: rgb(211,211,211) 1px dotted; padding-left: 4px; font-weight: 400; font-size: 13px; padding-bottom: 2px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 2px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; background-color: rgb(255,255,255); text-align: left&quot;&gt;&lt;span style=&quot;border-top-width: 0px; padding-right: 0px; padding-left: 0px; border-left-width: 0px; font-size: 13px; border-bottom-width: 0px; padding-bottom: 0px; margin: 0px; vertical-align: baseline; color: rgb(51,153,102); padding-top: 0px; font-family: inherit; border-right-width: 0px&quot;&gt;YES&amp;nbsp;&lt;/span&gt;&lt;/td&gt;
            &lt;td bgcolor=&quot;#000000&quot; style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 4px; border-top: rgb(211,211,211) 1px dotted; padding-left: 4px; font-weight: 400; font-size: 13px; padding-bottom: 2px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 2px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; background-color: rgb(255,255,255); text-align: left&quot;&gt;&lt;span style=&quot;border-top-width: 0px; padding-right: 0px; padding-left: 0px; border-left-width: 0px; font-size: 13px; border-bottom-width: 0px; padding-bottom: 0px; margin: 0px; vertical-align: baseline; color: rgb(51,153,102); padding-top: 0px; font-family: inherit; border-right-width: 0px&quot;&gt;YES&amp;nbsp;&lt;/span&gt;&lt;/td&gt;
            &lt;td bgcolor=&quot;#000000&quot; style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 4px; border-top: rgb(211,211,211) 1px dotted; padding-left: 4px; font-weight: 400; font-size: 13px; padding-bottom: 2px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 2px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; background-color: rgb(255,255,255); text-align: left&quot;&gt;&lt;span style=&quot;border-top-width: 0px; padding-right: 0px; padding-left: 0px; border-left-width: 0px; font-size: 13px; border-bottom-width: 0px; padding-bottom: 0px; margin: 0px; vertical-align: baseline; color: rgb(51,153,102); padding-top: 0px; font-family: inherit; border-right-width: 0px&quot;&gt;YES&amp;nbsp;&lt;/span&gt;&lt;/td&gt;
&lt;/table&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
</description>
			<pubDate>Wed, 18 Nov 2009 15:33:05 GMT</pubDate>			<dc:creator>Hkaliste</dc:creator>			<comments>http://wiki.forum.nokia.com/index.php/Talk:Text_Link</comments>		</item>
		<item>
			<title>Sortable Grid</title>
			<link>http://wiki.forum.nokia.com/index.php/Sortable_Grid</link>
			<description>&lt;a name=&quot;Inheritance&quot; id=&quot;Inheritance&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;Inheritance&lt;/span&gt;&lt;/h1&gt;
&lt;pre class=&quot;text&quot; style=&quot;font-family:monospace;&quot;&gt;Nokia.Widget&lt;br /&gt;    | - Nokia.Sortable&lt;/pre&gt;
&lt;a name=&quot;1_-_Description&quot; id=&quot;1_-_Description&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;1 - Description&lt;/span&gt;&lt;/h1&gt;
&lt;p&gt;This component is a content organiser that enables the user to sort the items it contains.
&lt;/p&gt;&lt;p&gt;&lt;br /&gt; 
&lt;/p&gt;
&lt;a name=&quot;2_-_Visual_Design&quot; id=&quot;2_-_Visual_Design&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;2 - Visual Design&lt;/span&gt;&lt;/h1&gt;
&lt;p&gt;&lt;a href=&quot;/index.php/File:Sortable-grid01.png&quot; class=&quot;image&quot; title=&quot;File:Sortable-grid01.png&quot;&gt;&lt;img alt=&quot;File:Sortable-grid01.png&quot; src=&quot;http://www.forum.nokia.com/piazza/wiki/images/f/f6/Sortable-grid01.png&quot; width=&quot;230&quot; height=&quot;344&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;
&lt;a name=&quot;3_-_Component_Dependencies&quot; id=&quot;3_-_Component_Dependencies&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;3 - Component Dependencies&lt;/span&gt;&lt;/h1&gt;
&lt;a name=&quot;3.1_CSS&quot; id=&quot;3.1_CSS&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;3.1 CSS&lt;/span&gt;&lt;/h2&gt;
&lt;pre&gt;
&amp;lt;!-- Themeroller CSS --&amp;gt;
&amp;lt;link rel=&amp;quot;stylesheet&amp;quot; href=&amp;quot;themes/themeroller/&amp;lt;theme&amp;gt;/Themeroller.css&amp;quot; type=&amp;quot;text/css&amp;quot; media=&amp;quot;screen&amp;quot;&amp;gt;
&amp;lt;!-- Specific Theme/Resolution CSS --&amp;gt;
&amp;lt;link rel=&amp;quot;stylesheet&amp;quot; href=&amp;quot;/themes/nokia/ext-theme/&amp;lt;theme&amp;gt;/&amp;lt;resolution&amp;gt;/custom.css&amp;quot; type=&amp;quot;text/css&amp;quot; media=&amp;quot;screen&amp;quot;&amp;gt;
&lt;/pre&gt; 
&lt;p&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;a name=&quot;3.2_Javascript&quot; id=&quot;3.2_Javascript&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;3.2 Javascript&lt;/span&gt;&lt;/h2&gt;
&lt;pre&gt;
&amp;lt;!-- jQuery file --&amp;gt;
&amp;lt;script src=&amp;quot;/lib/jquery/jQuery.js&amp;quot; type=&amp;quot;text/javascript&amp;quot; charset=&amp;quot;utf-8&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;!-- Guarana file --&amp;gt;
&amp;lt;script src=&amp;quot;/lib/Guarana.js&amp;quot; type=&amp;quot;text/javascript&amp;quot; charset=&amp;quot;utf-8&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&lt;/pre&gt; 
&lt;a name=&quot;4_-_Functional_Specifications.2FRequirements&quot; id=&quot;4_-_Functional_Specifications.2FRequirements&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;4 - Functional Specifications/Requirements&lt;/span&gt;&lt;/h1&gt;
&lt;a name=&quot;4.1_-_Options&quot; id=&quot;4.1_-_Options&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;4.1 - Options&lt;/span&gt;&lt;/h2&gt;
&lt;ul&gt;&lt;li&gt;element: 'selector' 
&lt;ul&gt;&lt;li&gt;jQuery selector or the DOM reference to become the container of the component. 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;items[]: string 
&lt;ul&gt;&lt;li&gt;Defines the list of sortable grid items. 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;selectedClass: Object 
&lt;ul&gt;&lt;li&gt;Defines the CSS class when the component is in selected mode. 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;resetInterval: int 
&lt;ul&gt;&lt;li&gt;Defines resetInterval, used in component animation. 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;a name=&quot;4.2_-_Events_-_Callbacks&quot; id=&quot;4.2_-_Events_-_Callbacks&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;4.2 - Events - Callbacks&lt;/span&gt;&lt;/h2&gt;
&lt;ul&gt;&lt;li&gt;create: function() 
&lt;ul&gt;&lt;li&gt;Scope: [this.element] 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;select: function(event, originalItem, targetItem) 
&lt;ul&gt;&lt;li&gt;Scope: [this.element] 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;change: function(event, originalItem, targetItem) 
&lt;ul&gt;&lt;li&gt;Scope: [this.element] 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;reset: function(event) 
&lt;ul&gt;&lt;li&gt;Scope: [this.element] 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;/ul&gt;
&lt;a name=&quot;4.3_-_Methods&quot; id=&quot;4.3_-_Methods&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;4.3 - Methods&lt;/span&gt;&lt;/h2&gt;
&lt;ul&gt;&lt;li&gt;select: function(item, event) 
&lt;ul&gt;&lt;li&gt;Selects a component item. 
&lt;/li&gt;&lt;li&gt;return [void] 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;getSelectedElements: function() 
&lt;ul&gt;&lt;li&gt;Returns the set of selected elements. 
&lt;/li&gt;&lt;li&gt;return [jQuery collection] 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;clear: function(item) 
&lt;ul&gt;&lt;li&gt;Clears component elements. 
&lt;/li&gt;&lt;li&gt;return [void] 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;changePosition: function(event) 
&lt;ul&gt;&lt;li&gt;Changes the position of selected elements. 
&lt;/li&gt;&lt;li&gt;return [void] 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;a name=&quot;4.4_-_Default_options&quot; id=&quot;4.4_-_Default_options&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;4.4 - Default options&lt;/span&gt;&lt;/h2&gt;
&lt;ul&gt;&lt;li&gt;items: '&amp;gt; div', 
&lt;/li&gt;&lt;li&gt;selectedClass: 'selected', 
&lt;/li&gt;&lt;li&gt;resetInterval: 300 
&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;&lt;br /&gt;
&lt;/p&gt;&lt;p&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;a name=&quot;5_-_Component_Demo&quot; id=&quot;5_-_Component_Demo&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;5 - Component Demo&lt;/span&gt;&lt;/h1&gt;
&lt;a name=&quot;5.1_HTML&quot; id=&quot;5.1_HTML&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;5.1 HTML&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;In this demo we will apply the sortable component for the html bellow, but sortable can be applied for any html.
&lt;/p&gt;&lt;p&gt;&lt;br /&gt; 
&lt;/p&gt;
&lt;pre&gt;
 &amp;lt;style type=&amp;quot;text/css&amp;quot; media=&amp;quot;screen&amp;quot;&amp;gt;
     #container1 {
          width: 340px;
          height: 640px;
          background: #efefef;
     }

     #container1 div {
          width: 105px;
          height: 105px;
          line-height: 50px;
          float: left;
     }

     #container1 div, #container2 div {
          text-align: center;
          font-size: 20px;
          margin: 3px;
     }
 &amp;lt;/style&amp;gt;
 

 

&amp;lt;div id=&amp;quot;container1&amp;quot;&amp;gt;
     &amp;lt;div class=&amp;quot;ui-widget-header ui-state-default&amp;quot;&amp;gt; 1 &amp;lt;/div&amp;gt;
     &amp;lt;div class=&amp;quot;ui-widget-header ui-state-default&amp;quot;&amp;gt; 2 &amp;lt;/div&amp;gt;
     &amp;lt;div class=&amp;quot;ui-widget-header ui-state-default&amp;quot;&amp;gt; 3 &amp;lt;/div&amp;gt;
     &amp;lt;div class=&amp;quot;ui-widget-header ui-state-default&amp;quot;&amp;gt; 4 &amp;lt;/div&amp;gt;
     &amp;lt;div class=&amp;quot;ui-widget-header ui-state-default&amp;quot;&amp;gt; 5 &amp;lt;/div&amp;gt;
     &amp;lt;div class=&amp;quot;ui-widget-header ui-state-default&amp;quot;&amp;gt; 6 &amp;lt;/div&amp;gt;
     &amp;lt;div class=&amp;quot;ui-widget-header ui-state-default&amp;quot;&amp;gt; 7 &amp;lt;/div&amp;gt;
     &amp;lt;div class=&amp;quot;ui-widget-header ui-state-default&amp;quot;&amp;gt; 8 &amp;lt;/div&amp;gt;
     &amp;lt;div class=&amp;quot;ui-widget-header ui-state-default&amp;quot;&amp;gt; 9 &amp;lt;/div&amp;gt;
&amp;lt;/div&amp;gt;
&lt;/pre&gt; 
&lt;a name=&quot;5.2_Javascript&quot; id=&quot;5.2_Javascript&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;5.2 Javascript&lt;/span&gt;&lt;/h2&gt;
&lt;pre&gt;
var sortable1 = new Nokia.Sortable({ 
     element: '#container1', 
     items: '&amp;gt; div', 
     selectedClass: 'ui-state-active', 
     create: function() { 
          //alert(&amp;quot;Sortable: Create&amp;quot;); 
     }, 
     select: function(event, originalItem, targetItem) { 
          //alert('Sortable: Select');
     }, 
     change: function(event, originalItem, targetItem) { 
          //alert('Sortable: Change'); 
     }, 
     reset: function(event) { 
          //alert('Sortable: Reset'); 
     } 
});
&lt;/pre&gt;
&lt;a name=&quot;6_-_Nokia_WRT_Browser_Compatibility&quot; id=&quot;6_-_Nokia_WRT_Browser_Compatibility&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;6 - Nokia WRT Browser Compatibility&lt;/span&gt;&lt;/h1&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;table cellspacing=&quot;1&quot; cellpadding=&quot;1&quot; align=&quot;left&quot; width=&quot;300&quot; style=&quot;border: 1px dotted rgb(211, 211, 211); margin: 0px; padding: 0px; font-size: 13px; vertical-align: baseline; font-family: inherit; border-collapse: collapse;&quot; class=&quot;pbNotSortable&quot;&gt;
&lt;tr style=&quot;border-width: 0px; margin: 0px; padding: 0px; font-size: 13px; vertical-align: baseline; font-family: inherit;&quot;&gt;
&lt;td style=&quot;border: 1px dotted rgb(211, 211, 211); margin: 0px; padding: 2px 4px; font-weight: 400; font-size: 13px; vertical-align: baseline; font-family: inherit; background-color: rgb(255, 255, 255); text-align: left;&quot; class=&quot;sorttable_sorted_reverse&quot;&gt;&lt;span style=&quot;border-width: 0px; margin: 0px; padding: 0px; font-size: 13px; float: left; vertical-align: baseline; font-family: inherit;&quot; id=&quot;sorttable_sortrevind&quot;&gt;▴&amp;nbsp;&lt;/span&gt;&amp;nbsp;&lt;/td&gt;
&lt;td style=&quot;border: 1px dotted rgb(211, 211, 211); margin: 0px; padding: 2px 4px; font-weight: 400; font-size: 13px; vertical-align: baseline; font-family: inherit; background-color: rgb(255, 255, 255); text-align: left;&quot;&gt;&lt;strong&gt;S60 3.1&lt;/strong&gt;&lt;/td&gt;
&lt;td style=&quot;border: 1px dotted rgb(211, 211, 211); margin: 0px; padding: 2px 4px; font-weight: 400; font-size: 13px; vertical-align: baseline; font-family: inherit; background-color: rgb(255, 255, 255); text-align: left;&quot;&gt;&lt;strong&gt;S60 3.2&lt;/strong&gt;&lt;/td&gt;
&lt;td style=&quot;border: 1px dotted rgb(211, 211, 211); margin: 0px; padding: 2px 4px; font-weight: 400; font-size: 13px; vertical-align: baseline; font-family: inherit; background-color: rgb(255, 255, 255); text-align: left;&quot;&gt;&lt;strong&gt;S60 5.0&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;&lt;tr style=&quot;border-width: 0px; margin: 0px; padding: 0px; font-size: 13px; vertical-align: baseline; font-family: inherit;&quot;&gt;
&lt;td style=&quot;border: 1px dotted rgb(211, 211, 211); margin: 0px; padding: 2px 4px; font-weight: 400; font-size: 13px; vertical-align: baseline; font-family: inherit; background-color: rgb(255, 255, 255); text-align: left;&quot;&gt;Sortable Grid&lt;/td&gt;
&lt;td bgcolor=&quot;#000000&quot; style=&quot;border: 1px dotted rgb(211, 211, 211); margin: 0px; padding: 2px 4px; font-weight: 400; font-size: 13px; vertical-align: baseline; font-family: inherit; background-color: rgb(255, 255, 255); text-align: left;&quot;&gt;&lt;span style=&quot;border-width: 0px; margin: 0px; padding: 0px; font-size: 13px; vertical-align: baseline; color: rgb(51, 153, 102); font-family: inherit;&quot;&gt;YES&lt;/span&gt;&lt;/td&gt;
&lt;td bgcolor=&quot;#000000&quot; style=&quot;border: 1px dotted rgb(211, 211, 211); margin: 0px; padding: 2px 4px; font-weight: 400; font-size: 13px; vertical-align: baseline; font-family: inherit; background-color: rgb(255, 255, 255); text-align: left;&quot;&gt;&lt;span style=&quot;border-width: 0px; margin: 0px; padding: 0px; font-size: 13px; vertical-align: baseline; color: rgb(51, 153, 102); font-family: inherit;&quot;&gt;YES&amp;nbsp;&lt;/span&gt;&lt;/td&gt;
&lt;td bgcolor=&quot;#000000&quot; style=&quot;border: 1px dotted rgb(211, 211, 211); margin: 0px; padding: 2px 4px; font-weight: 400; font-size: 13px; vertical-align: baseline; font-family: inherit; background-color: rgb(255, 255, 255); text-align: left;&quot;&gt;&lt;span style=&quot;border-width: 0px; margin: 0px; padding: 0px; font-size: 13px; vertical-align: baseline; color: rgb(51, 153, 102); font-family: inherit;&quot;&gt;YES&amp;nbsp;&lt;/span&gt;&lt;/td&gt;
&lt;/table&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
</description>
			<pubDate>Wed, 18 Nov 2009 15:25:30 GMT</pubDate>			<dc:creator>Hkaliste</dc:creator>			<comments>http://wiki.forum.nokia.com/index.php/Talk:Sortable_Grid</comments>		</item>
		<item>
			<title>Miniview</title>
			<link>http://wiki.forum.nokia.com/index.php/Miniview</link>
			<description>&lt;a name=&quot;Inheritance&quot; id=&quot;Inheritance&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;Inheritance&lt;/span&gt;&lt;/h1&gt;
&lt;pre class=&quot;text&quot; style=&quot;font-family:monospace;&quot;&gt;Nokia.Widget&lt;br /&gt;    |- Nokia.Miniview&lt;/pre&gt;
&lt;a name=&quot;1_-_Description&quot; id=&quot;1_-_Description&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;1 - Description&lt;/span&gt;&lt;/h1&gt;
&lt;p&gt;The widget miniview component can be used to show a widget's content on the home screen of a mobile device. It allows mobile device users to view dynamic data from several applications simultaneously, without having to launch the applications on full screen.
&lt;/p&gt;&lt;p&gt;&lt;br /&gt; 
&lt;/p&gt;
&lt;a name=&quot;2_-_Visual_Design&quot; id=&quot;2_-_Visual_Design&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;2 - Visual Design&lt;/span&gt;&lt;/h1&gt;
&lt;p&gt;&lt;a href=&quot;/index.php/File:Miniview01.png&quot; class=&quot;image&quot; title=&quot;File:Miniview01.png&quot;&gt;&lt;img alt=&quot;File:Miniview01.png&quot; src=&quot;http://www.forum.nokia.com/piazza/wiki/images/e/e9/Miniview01.png&quot; width=&quot;336&quot; height=&quot;197&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;
&lt;a name=&quot;3_-_Component_Dependencies&quot; id=&quot;3_-_Component_Dependencies&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;3 - Component Dependencies&lt;/span&gt;&lt;/h1&gt;
&lt;a name=&quot;3.1_CSS&quot; id=&quot;3.1_CSS&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;3.1 CSS&lt;/span&gt;&lt;/h2&gt;
&lt;pre&gt;
&amp;lt;!-- Themeroller CSS --&amp;gt;
&amp;lt;link rel=&amp;quot;stylesheet&amp;quot; href=&amp;quot;themes/themeroller/&amp;lt;theme&amp;gt;/Themeroller.css&amp;quot; type=&amp;quot;text/css&amp;quot; media=&amp;quot;screen&amp;quot;&amp;gt;
&amp;lt;!-- Specific Theme/Resolution CSS --&amp;gt;
&amp;lt;link rel=&amp;quot;stylesheet&amp;quot; href=&amp;quot;/themes/nokia/ext-theme/&amp;lt;theme&amp;gt;/&amp;lt;resolution&amp;gt;/custom.css&amp;quot; type=&amp;quot;text/css&amp;quot; media=&amp;quot;screen&amp;quot;&amp;gt;
&lt;/pre&gt; 
&lt;p&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;a name=&quot;3.2_Javascript&quot; id=&quot;3.2_Javascript&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;3.2 Javascript&lt;/span&gt;&lt;/h2&gt;
&lt;pre&gt;
&amp;lt;!-- jQuery file --&amp;gt;
&amp;lt;script src=&amp;quot;/lib/jquery/jQuery.js&amp;quot; type=&amp;quot;text/javascript&amp;quot; charset=&amp;quot;utf-8&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;!-- Guarana file --&amp;gt;
&amp;lt;script src=&amp;quot;/lib/Guarana.js&amp;quot; type=&amp;quot;text/javascript&amp;quot; charset=&amp;quot;utf-8&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&lt;/pre&gt; 
&lt;a name=&quot;4_-_Functional_Specifications.2FRequirements&quot; id=&quot;4_-_Functional_Specifications.2FRequirements&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;4 - Functional Specifications/Requirements&lt;/span&gt;&lt;/h1&gt;
&lt;a name=&quot;4.1_-_Options&quot; id=&quot;4.1_-_Options&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;4.1 - Options&lt;/span&gt;&lt;/h2&gt;
&lt;ul&gt;&lt;li&gt;element: 'selector' 
&lt;ul&gt;&lt;li&gt;jQuery selector or the DOM reference to become the container of the component. 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;content: string 
&lt;ul&gt;&lt;li&gt;Defines the component content. 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;image: String 
&lt;ul&gt;&lt;li&gt;Defines the image path used in the component 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;style: Object {} 
&lt;ul&gt;&lt;li&gt;Defines the component style. This option is a hash table with CSS properties. 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;/ul&gt;
&lt;a name=&quot;4.2_-_Events_-_Callbacks&quot; id=&quot;4.2_-_Events_-_Callbacks&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;4.2 - Events - Callbacks&lt;/span&gt;&lt;/h2&gt;
&lt;ul&gt;&lt;li&gt;create: function() 
&lt;/li&gt;&lt;li&gt;Scope: [this.element] 
&lt;/li&gt;&lt;li&gt;show: function() 
&lt;/li&gt;&lt;li&gt;Scope: [this.element] 
&lt;/li&gt;&lt;li&gt;hide: function() 
&lt;/li&gt;&lt;li&gt;Scope: [this.element] 
&lt;/li&gt;&lt;/ul&gt;
&lt;a name=&quot;4.3_-_Methods&quot; id=&quot;4.3_-_Methods&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;4.3 - Methods&lt;/span&gt;&lt;/h2&gt;
&lt;ul&gt;&lt;li&gt;setContent: function(value) 
&lt;ul&gt;&lt;li&gt;Sets the component content. 
&lt;/li&gt;&lt;li&gt;return [void] 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;getContent: function() 
&lt;ul&gt;&lt;li&gt;Gets the component content. 
&lt;/li&gt;&lt;li&gt;return [String] 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;show: function() 
&lt;ul&gt;&lt;li&gt;Shows the component. 
&lt;/li&gt;&lt;li&gt;return [void] 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;hide: function() 
&lt;ul&gt;&lt;li&gt;Hides the component. 
&lt;/li&gt;&lt;li&gt;return [Object] 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;/ul&gt;
&lt;a name=&quot;4.4_-_Default_options&quot; id=&quot;4.4_-_Default_options&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;4.4 - Default options&lt;/span&gt;&lt;/h2&gt;
&lt;ul&gt;&lt;li&gt;content: &quot;
&lt;/li&gt;&lt;/ul&gt;
&lt;a name=&quot;5_-_Component_Demo&quot; id=&quot;5_-_Component_Demo&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;5 - Component Demo&lt;/span&gt;&lt;/h1&gt;
&lt;a name=&quot;5.1_HTML&quot; id=&quot;5.1_HTML&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;5.1 HTML&lt;/span&gt;&lt;/h2&gt;
&lt;pre&gt;
&amp;lt;div id=&amp;quot;miniview1&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;
&lt;/pre&gt; 
&lt;a name=&quot;5.2_Javascript&quot; id=&quot;5.2_Javascript&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;5.2 Javascript&lt;/span&gt;&lt;/h2&gt;
&lt;pre&gt;
window.miniview1 = new Nokia.MiniView({
     element: '#miniview1',
     content: 'Lorem Ipsum Dolor Lorem Ipsum Dolor Lorem Ipsum Dolor Lorem Ipsum Dolor Lorem Ipsum Dolor',
     create: function() {
          //alert(&amp;quot;Miniview: Create&amp;quot;);
     },
     show: function() {
          //alert(&amp;quot;Miniview: Show&amp;quot;);
     },
     hide: function() {
          //alert(&amp;quot;Miniview: Hide&amp;quot;);
     }
});
&lt;/pre&gt; 
&lt;a name=&quot;6_-_Nokia_WRT_Browser_Compatibility&quot; id=&quot;6_-_Nokia_WRT_Browser_Compatibility&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;6 - Nokia WRT Browser Compatibility&lt;/span&gt;&lt;/h1&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;table class=&quot;pbNotSortable&quot; cellspacing=&quot;1&quot; cellpadding=&quot;1&quot; width=&quot;300&quot; align=&quot;left&quot; style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 0px; border-top: rgb(211,211,211) 1px dotted; padding-left: 0px; font-size: 13px; padding-bottom: 0px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 0px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; border-collapse: collapse&quot;&gt;
        &lt;tr style=&quot;border-top-width: 0px; padding-right: 0px; padding-left: 0px; border-left-width: 0px; font-size: 13px; border-bottom-width: 0px; padding-bottom: 0px; margin: 0px; vertical-align: baseline; padding-top: 0px; font-family: inherit; border-right-width: 0px&quot;&gt;
            &lt;td class=&quot;sorttable_sorted_reverse&quot; style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 4px; border-top: rgb(211,211,211) 1px dotted; padding-left: 4px; font-weight: 400; font-size: 13px; padding-bottom: 2px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 2px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; background-color: rgb(255,255,255); text-align: left&quot;&gt;&lt;span id=&quot;sorttable_sortrevind&quot; style=&quot;border-top-width: 0px; padding-right: 0px; padding-left: 0px; border-left-width: 0px; font-size: 13px; float: left; border-bottom-width: 0px; padding-bottom: 0px; margin: 0px; vertical-align: baseline; padding-top: 0px; font-family: inherit; border-right-width: 0px&quot;&gt;▴&amp;nbsp;&lt;/span&gt;&amp;nbsp;&lt;/td&gt;
            &lt;td style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 4px; border-top: rgb(211,211,211) 1px dotted; padding-left: 4px; font-weight: 400; font-size: 13px; padding-bottom: 2px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 2px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; background-color: rgb(255,255,255); text-align: left&quot;&gt;&lt;strong&gt;S60 3.1&lt;/strong&gt;&lt;/td&gt;
            &lt;td style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 4px; border-top: rgb(211,211,211) 1px dotted; padding-left: 4px; font-weight: 400; font-size: 13px; padding-bottom: 2px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 2px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; background-color: rgb(255,255,255); text-align: left&quot;&gt;&lt;strong&gt;S60 3.2&lt;/strong&gt;&lt;/td&gt;
            &lt;td style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 4px; border-top: rgb(211,211,211) 1px dotted; padding-left: 4px; font-weight: 400; font-size: 13px; padding-bottom: 2px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 2px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; background-color: rgb(255,255,255); text-align: left&quot;&gt;&lt;strong&gt;S60 5.0&lt;/strong&gt;&lt;/td&gt;
            &lt;/tr&gt;&lt;tr style=&quot;border-top-width: 0px; padding-right: 0px; padding-left: 0px; border-left-width: 0px; font-size: 13px; border-bottom-width: 0px; padding-bottom: 0px; margin: 0px; vertical-align: baseline; padding-top: 0px; font-family: inherit; border-right-width: 0px&quot;&gt;
            &lt;td style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 4px; border-top: rgb(211,211,211) 1px dotted; padding-left: 4px; font-weight: 400; font-size: 13px; padding-bottom: 2px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 2px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; background-color: rgb(255,255,255); text-align: left&quot;&gt;Miniview&lt;/td&gt;
            &lt;td bgcolor=&quot;#000000&quot; style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 4px; border-top: rgb(211,211,211) 1px dotted; padding-left: 4px; font-weight: 400; font-size: 13px; padding-bottom: 2px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 2px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; background-color: rgb(255,255,255); text-align: left&quot;&gt;&lt;span style=&quot;border-top-width: 0px; padding-right: 0px; padding-left: 0px; border-left-width: 0px; font-size: 13px; border-bottom-width: 0px; padding-bottom: 0px; margin: 0px; vertical-align: baseline; color: rgb(51,153,102); padding-top: 0px; font-family: inherit; border-right-width: 0px&quot;&gt;NO&amp;nbsp;&lt;/span&gt;&lt;/td&gt;
            &lt;td bgcolor=&quot;#000000&quot; style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 4px; border-top: rgb(211,211,211) 1px dotted; padding-left: 4px; font-weight: 400; font-size: 13px; padding-bottom: 2px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 2px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; background-color: rgb(255,255,255); text-align: left&quot;&gt;&lt;span style=&quot;border-top-width: 0px; padding-right: 0px; padding-left: 0px; border-left-width: 0px; font-size: 13px; border-bottom-width: 0px; padding-bottom: 0px; margin: 0px; vertical-align: baseline; color: rgb(51,153,102); padding-top: 0px; font-family: inherit; border-right-width: 0px&quot;&gt;NO&amp;nbsp;&lt;/span&gt;&lt;/td&gt;
            &lt;td bgcolor=&quot;#000000&quot; style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 4px; border-top: rgb(211,211,211) 1px dotted; padding-left: 4px; font-weight: 400; font-size: 13px; padding-bottom: 2px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 2px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; background-color: rgb(255,255,255); text-align: left&quot;&gt;&lt;span style=&quot;border-top-width: 0px; padding-right: 0px; padding-left: 0px; border-left-width: 0px; font-size: 13px; border-bottom-width: 0px; padding-bottom: 0px; margin: 0px; vertical-align: baseline; color: rgb(51,153,102); padding-top: 0px; font-family: inherit; border-right-width: 0px&quot;&gt;YES (N97)&lt;/span&gt;&lt;/td&gt;
        &lt;/tr&gt;
&lt;/table&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
</description>
			<pubDate>Wed, 18 Nov 2009 14:59:24 GMT</pubDate>			<dc:creator>Hkaliste</dc:creator>			<comments>http://wiki.forum.nokia.com/index.php/Talk:Miniview</comments>		</item>
		<item>
			<title>Iconic Menu</title>
			<link>http://wiki.forum.nokia.com/index.php/Iconic_Menu</link>
			<description>&lt;a name=&quot;Inheritance&quot; id=&quot;Inheritance&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;Inheritance&lt;/span&gt;&lt;/h1&gt;
&lt;pre class=&quot;text&quot; style=&quot;font-family:monospace;&quot;&gt;Nokia.Widget&lt;br /&gt;    |- Nokia.IconicMenu&lt;/pre&gt;
&lt;a name=&quot;1_-_Description&quot; id=&quot;1_-_Description&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;1 - Description&lt;/span&gt;&lt;/h1&gt;
&lt;p&gt;A menu with content organized in a grid, enabling the calling of native applications accessed by the WRT library. This content should be an image and/or a text. To access the content, the user must tap or click the icon.
&lt;/p&gt;&lt;p&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;a name=&quot;2_-_Visual_Design&quot; id=&quot;2_-_Visual_Design&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;2 - Visual Design&lt;/span&gt;&lt;/h1&gt;
&lt;p&gt;&lt;a href=&quot;/index.php/File:Iconsmenu01.png&quot; class=&quot;image&quot; title=&quot;File:Iconsmenu01.png&quot;&gt;&lt;img alt=&quot;File:Iconsmenu01.png&quot; src=&quot;http://www.forum.nokia.com/piazza/wiki/images/7/79/Iconsmenu01.png&quot; width=&quot;230&quot; height=&quot;409&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;
&lt;a name=&quot;3_-_Component_Dependencies&quot; id=&quot;3_-_Component_Dependencies&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;3 - Component Dependencies&lt;/span&gt;&lt;/h1&gt;
&lt;a name=&quot;3.1_CSS&quot; id=&quot;3.1_CSS&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;3.1 CSS&lt;/span&gt;&lt;/h2&gt;
&lt;pre&gt;
&amp;lt;!-- Themeroller CSS --&amp;gt;
&amp;lt;link rel=&amp;quot;stylesheet&amp;quot; href=&amp;quot;themes/themeroller/&amp;lt;theme&amp;gt;/Themeroller.css&amp;quot; type=&amp;quot;text/css&amp;quot; media=&amp;quot;screen&amp;quot;&amp;gt;
&amp;lt;!-- Specific Theme/Resolution CSS --&amp;gt;
&amp;lt;link rel=&amp;quot;stylesheet&amp;quot; href=&amp;quot;/themes/nokia/ext-theme/&amp;lt;theme&amp;gt;/&amp;lt;resolution&amp;gt;/custom.css&amp;quot; type=&amp;quot;text/css&amp;quot; media=&amp;quot;screen&amp;quot;&amp;gt;
&lt;/pre&gt;
&lt;a name=&quot;3.2_Javascript&quot; id=&quot;3.2_Javascript&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;3.2 Javascript&lt;/span&gt;&lt;/h2&gt;
&lt;pre&gt;
&amp;lt;!-- jQuery file --&amp;gt;
&amp;lt;script src=&amp;quot;/lib/jquery/jQuery.js&amp;quot; type=&amp;quot;text/javascript&amp;quot; charset=&amp;quot;utf-8&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;!-- Guarana file --&amp;gt;
&amp;lt;script src=&amp;quot;/lib/Guarana.js&amp;quot; type=&amp;quot;text/javascript&amp;quot; charset=&amp;quot;utf-8&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&lt;/pre&gt; 
&lt;a name=&quot;4_-_Functional_Specifications.2FRequirements&quot; id=&quot;4_-_Functional_Specifications.2FRequirements&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;4 - Functional Specifications/Requirements&lt;/span&gt;&lt;/h1&gt;
&lt;a name=&quot;4.1_-_Options&quot; id=&quot;4.1_-_Options&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;4.1 - Options&lt;/span&gt;&lt;/h2&gt;
&lt;ul&gt;&lt;li&gt;element: 'selector' 
&lt;ul&gt;&lt;li&gt;jQuery selector or the DOM reference to become the container of the component. 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;maximize: boolean 
&lt;ul&gt;&lt;li&gt;Defines whether the component is created as maximised. 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;a name=&quot;4.2_-_Events_-_Callbacks&quot; id=&quot;4.2_-_Events_-_Callbacks&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;4.2 - Events - Callbacks&lt;/span&gt;&lt;/h2&gt;
&lt;ul&gt;&lt;li&gt;create: function() 
&lt;ul&gt;&lt;li&gt;Scope: [this.element] 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;a name=&quot;4.3_-_Methods&quot; id=&quot;4.3_-_Methods&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;4.3 - Methods&lt;/span&gt;&lt;/h2&gt;
&lt;ul&gt;&lt;li&gt;select: function(item, event) 
&lt;ul&gt;&lt;li&gt;Selects a component item. 
&lt;/li&gt;&lt;li&gt;return [void] 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;/ul&gt;
&lt;a name=&quot;4.4-_Default_options&quot; id=&quot;4.4-_Default_options&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;4.4- Default options&lt;/span&gt;&lt;/h2&gt;
&lt;ul&gt;&lt;li&gt;maximize: true 
&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;a name=&quot;5_-_Component_Demo&quot; id=&quot;5_-_Component_Demo&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;5 - Component Demo&lt;/span&gt;&lt;/h1&gt;
&lt;a name=&quot;5.1_HTML&quot; id=&quot;5.1_HTML&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;5.1 HTML&lt;/span&gt;&lt;/h2&gt;
&lt;pre&gt;
&amp;lt;div id=&amp;quot;menu&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;
&lt;/pre&gt;
&lt;a name=&quot;5.2_Javascript&quot; id=&quot;5.2_Javascript&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;5.2 Javascript&lt;/span&gt;&lt;/h2&gt;
&lt;pre&gt;
var tabs = new Nokia.IconicMenu({
     element: '#menu',
     items: [
          {
               label: &amp;quot;favorites&amp;quot;,
               icon: 'images/icon1.png',
               select: function(item, event) {
                    alert('IconicMenu Clicked on: ' + item.label);
               }
          },
          {
               label: &amp;quot;e-mails&amp;quot;,
               icon: 'images/icon2.png',
               select: function(item, event) {
                    alert('IconicMenu Clicked on: ' + item.label);
               }
          },
          {
               label: &amp;quot;chat&amp;quot;,
               icon: 'images/icon3.png',
               select: function(item, event) {
                    alert('IconicMenu Clicked on: ' + item.label);
               }
          },
          {
               label: &amp;quot;trash&amp;quot;,
               icon: 'images/icon4.png',
               select: function(item, event) {
                    alert('IconicMenu Clicked on: ' + item.label);
               }
          },
          {
               label: &amp;quot;save&amp;quot;,
               icon: 'images/icon5.png',
               select: function(item, event) {
                    alert('IconicMenu Clicked on: ' + item.label);
               }
          },
          {
               label: &amp;quot;gallery&amp;quot;,
               icon: 'images/icon6.png',
               select: function(item, event) {
                    alert('IconicMenu Clicked on: ' + item.label);
               }
          },
     ]
});
&lt;/pre&gt;
&lt;a name=&quot;6_-_Nokia_WRT_Browser_Compatibility&quot; id=&quot;6_-_Nokia_WRT_Browser_Compatibility&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;6 - Nokia WRT Browser Compatibility&lt;/span&gt;&lt;/h1&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;table class=&quot;pbNotSortable&quot; cellspacing=&quot;1&quot; cellpadding=&quot;1&quot; width=&quot;300&quot; align=&quot;left&quot; style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 0px; border-top: rgb(211,211,211) 1px dotted; padding-left: 0px; font-size: 13px; padding-bottom: 0px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 0px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; border-collapse: collapse&quot;&gt;
        &lt;tr style=&quot;border-top-width: 0px; padding-right: 0px; padding-left: 0px; border-left-width: 0px; font-size: 13px; border-bottom-width: 0px; padding-bottom: 0px; margin: 0px; vertical-align: baseline; padding-top: 0px; font-family: inherit; border-right-width: 0px&quot;&gt;
            &lt;td class=&quot;sorttable_sorted_reverse&quot; style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 4px; border-top: rgb(211,211,211) 1px dotted; padding-left: 4px; font-weight: 400; font-size: 13px; padding-bottom: 2px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 2px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; background-color: rgb(255,255,255); text-align: left&quot;&gt;&lt;span id=&quot;sorttable_sortrevind&quot; style=&quot;border-top-width: 0px; padding-right: 0px; padding-left: 0px; border-left-width: 0px; font-size: 13px; float: left; border-bottom-width: 0px; padding-bottom: 0px; margin: 0px; vertical-align: baseline; padding-top: 0px; font-family: inherit; border-right-width: 0px&quot;&gt;▴&amp;nbsp;&lt;/span&gt;&amp;nbsp;&lt;/td&gt;
            &lt;td style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 4px; border-top: rgb(211,211,211) 1px dotted; padding-left: 4px; font-weight: 400; font-size: 13px; padding-bottom: 2px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 2px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; background-color: rgb(255,255,255); text-align: left&quot;&gt;&lt;strong&gt;S60 3.1&lt;/strong&gt;&lt;/td&gt;
            &lt;td style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 4px; border-top: rgb(211,211,211) 1px dotted; padding-left: 4px; font-weight: 400; font-size: 13px; padding-bottom: 2px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 2px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; background-color: rgb(255,255,255); text-align: left&quot;&gt;&lt;strong&gt;S60 3.2&lt;/strong&gt;&lt;/td&gt;
            &lt;td style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 4px; border-top: rgb(211,211,211) 1px dotted; padding-left: 4px; font-weight: 400; font-size: 13px; padding-bottom: 2px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 2px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; background-color: rgb(255,255,255); text-align: left&quot;&gt;&lt;strong&gt;S60 5.0&lt;/strong&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style=&quot;border-top-width: 0px; padding-right: 0px; padding-left: 0px; border-left-width: 0px; font-size: 13px; border-bottom-width: 0px; padding-bottom: 0px; margin: 0px; vertical-align: baseline; padding-top: 0px; font-family: inherit; border-right-width: 0px&quot;&gt;
            &lt;td style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 4px; border-top: rgb(211,211,211) 1px dotted; padding-left: 4px; font-weight: 400; font-size: 13px; padding-bottom: 2px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 2px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; background-color: rgb(255,255,255); text-align: left&quot;&gt;Iconic Menu&lt;/td&gt;
            &lt;td bgcolor=&quot;#000000&quot; style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 4px; border-top: rgb(211,211,211) 1px dotted; padding-left: 4px; font-weight: 400; font-size: 13px; padding-bottom: 2px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 2px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; background-color: rgb(255,255,255); text-align: left&quot;&gt;&lt;span style=&quot;border-top-width: 0px; padding-right: 0px; padding-left: 0px; border-left-width: 0px; font-size: 13px; border-bottom-width: 0px; padding-bottom: 0px; margin: 0px; vertical-align: baseline; color: rgb(51,153,102); padding-top: 0px; font-family: inherit; border-right-width: 0px&quot;&gt;NO&lt;/span&gt;&lt;/td&gt;
            &lt;td bgcolor=&quot;#000000&quot; style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 4px; border-top: rgb(211,211,211) 1px dotted; padding-left: 4px; font-weight: 400; font-size: 13px; padding-bottom: 2px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 2px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; background-color: rgb(255,255,255); text-align: left&quot;&gt;&lt;span style=&quot;border-top-width: 0px; padding-right: 0px; padding-left: 0px; border-left-width: 0px; font-size: 13px; border-bottom-width: 0px; padding-bottom: 0px; margin: 0px; vertical-align: baseline; color: rgb(51,153,102); padding-top: 0px; font-family: inherit; border-right-width: 0px&quot;&gt;YES&amp;nbsp;&lt;/span&gt;&lt;/td&gt;
            &lt;td bgcolor=&quot;#000000&quot; style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 4px; border-top: rgb(211,211,211) 1px dotted; padding-left: 4px; font-weight: 400; font-size: 13px; padding-bottom: 2px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 2px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; background-color: rgb(255,255,255); text-align: left&quot;&gt;&lt;span style=&quot;border-top-width: 0px; padding-right: 0px; padding-left: 0px; border-left-width: 0px; font-size: 13px; border-bottom-width: 0px; padding-bottom: 0px; margin: 0px; vertical-align: baseline; color: rgb(51,153,102); padding-top: 0px; font-family: inherit; border-right-width: 0px&quot;&gt;YES&amp;nbsp;&lt;/span&gt;&lt;/td&gt;
        &lt;/tr&gt;
&lt;/table&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
</description>
			<pubDate>Wed, 18 Nov 2009 14:55:09 GMT</pubDate>			<dc:creator>Hkaliste</dc:creator>			<comments>http://wiki.forum.nokia.com/index.php/Talk:Iconic_Menu</comments>		</item>
		<item>
			<title>Options Menu</title>
			<link>http://wiki.forum.nokia.com/index.php/Options_Menu</link>
			<description>&lt;a name=&quot;Inheritance&quot; id=&quot;Inheritance&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;Inheritance&lt;/span&gt;&lt;/h1&gt;
&lt;pre class=&quot;text&quot; style=&quot;font-family:monospace;&quot;&gt;Nokia.Widget&lt;br /&gt;    |- Nokia.OptionsMenu&lt;/pre&gt;
&lt;a name=&quot;1-_Description&quot; id=&quot;1-_Description&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;1- Description&lt;/span&gt;&lt;/h1&gt;
&lt;p&gt;The Options Menu component contains a row of single-line items. Each item presents the user with a list of action items.
&lt;/p&gt;&lt;p&gt;&lt;br /&gt; 
&lt;/p&gt;
&lt;a name=&quot;2_-_Visual_Design&quot; id=&quot;2_-_Visual_Design&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;2 - Visual Design&lt;/span&gt;&lt;/h1&gt;
&lt;p&gt;&lt;a href=&quot;/index.php/File:Optionsmenu01.png&quot; class=&quot;image&quot; title=&quot;File:Optionsmenu01.png&quot;&gt;&lt;img alt=&quot;File:Optionsmenu01.png&quot; src=&quot;http://www.forum.nokia.com/piazza/wiki/images/6/67/Optionsmenu01.png&quot; width=&quot;230&quot; height=&quot;261&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;
&lt;a name=&quot;3_-_Component_Dependencies&quot; id=&quot;3_-_Component_Dependencies&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;3 - Component Dependencies&lt;/span&gt;&lt;/h1&gt;
&lt;a name=&quot;3.1_CSS&quot; id=&quot;3.1_CSS&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;3.1 CSS&lt;/span&gt;&lt;/h2&gt;
&lt;pre&gt;
&amp;lt;!-- Themeroller CSS --&amp;gt;
&amp;lt;link rel=&amp;quot;stylesheet&amp;quot; href=&amp;quot;themes/themeroller/&amp;lt;theme&amp;gt;/Themeroller.css&amp;quot; type=&amp;quot;text/css&amp;quot; media=&amp;quot;screen&amp;quot;&amp;gt;
&amp;lt;!-- Specific Theme/Resolution CSS --&amp;gt;
&amp;lt;link rel=&amp;quot;stylesheet&amp;quot; href=&amp;quot;/themes/nokia/ext-theme/&amp;lt;theme&amp;gt;/&amp;lt;resolution&amp;gt;/custom.css&amp;quot; type=&amp;quot;text/css&amp;quot; media=&amp;quot;screen&amp;quot;&amp;gt;
&lt;/pre&gt; 
&lt;a name=&quot;3.2_Javascript&quot; id=&quot;3.2_Javascript&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;3.2 Javascript&lt;/span&gt;&lt;/h2&gt;
&lt;pre&gt;
&amp;lt;!-- jQuery file --&amp;gt;
&amp;lt;script src=&amp;quot;/lib/jquery/jQuery.js&amp;quot; type=&amp;quot;text/javascript&amp;quot; charset=&amp;quot;utf-8&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;!-- Guarana file --&amp;gt;
&amp;lt;script src=&amp;quot;/lib/Guarana.js&amp;quot; type=&amp;quot;text/javascript&amp;quot; charset=&amp;quot;utf-8&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&lt;/pre&gt; 
&lt;a name=&quot;4_-_Functional_Specifications.2FRequirements&quot; id=&quot;4_-_Functional_Specifications.2FRequirements&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;4 - Functional Specifications/Requirements&lt;/span&gt;&lt;/h1&gt;
&lt;a name=&quot;4.1_-_Options&quot; id=&quot;4.1_-_Options&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;4.1 - Options&lt;/span&gt;&lt;/h2&gt;
&lt;ul&gt;&lt;li&gt;element: 'selector' 
&lt;ul&gt;&lt;li&gt;jQuery selector or the DOM reference to become the container of the component. 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;transitions: boolean 
&lt;ul&gt;&lt;li&gt;Defines whether transitions are applied on the component. 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;label: string 
&lt;ul&gt;&lt;li&gt;Defines a label for a specific section of the component. 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;a name=&quot;4.2_-_Events_-_Callbacks&quot; id=&quot;4.2_-_Events_-_Callbacks&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;4.2 - Events - Callbacks&lt;/span&gt;&lt;/h2&gt;
&lt;ul&gt;&lt;li&gt;create: function() 
&lt;ul&gt;&lt;li&gt;Scope: [this.element] 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;a name=&quot;4.3_-_Methods&quot; id=&quot;4.3_-_Methods&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;4.3 - Methods&lt;/span&gt;&lt;/h2&gt;
&lt;ul&gt;&lt;li&gt;appendShadow: function() 
&lt;ul&gt;&lt;li&gt;Adds a shadow on the component. 
&lt;/li&gt;&lt;li&gt;return [void] 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;addSection: function(section) 
&lt;ul&gt;&lt;li&gt;Adds a new section on the component. 
&lt;/li&gt;&lt;li&gt;return [void] 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;addItem: function(item) 
&lt;ul&gt;&lt;li&gt;Adds a new item in a specific section. 
&lt;/li&gt;&lt;li&gt;return [int] 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;getItems: function()  
&lt;ul&gt;&lt;li&gt;Returns a set of items. 
&lt;/li&gt;&lt;li&gt;return [jQuery collection] 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;getLabel: function()  
&lt;ul&gt;&lt;li&gt;Gets the label for a specific section of the component. 
&lt;/li&gt;&lt;li&gt;return [String] 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;select: function(event) 
&lt;ul&gt;&lt;li&gt;Selects a component item. 
&lt;/li&gt;&lt;li&gt;return [void] 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;/ul&gt;
&lt;a name=&quot;4.4_-_Default_options&quot; id=&quot;4.4_-_Default_options&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;4.4 - Default options&lt;/span&gt;&lt;/h2&gt;
&lt;ul&gt;&lt;li&gt;transitions: false 
&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;a name=&quot;5_-_Component_Demo&quot; id=&quot;5_-_Component_Demo&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;5 - Component Demo&lt;/span&gt;&lt;/h1&gt;
&lt;a name=&quot;5.1_HTML&quot; id=&quot;5.1_HTML&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;5.1 HTML&lt;/span&gt;&lt;/h2&gt;
&lt;pre&gt;
&amp;lt;div id=&amp;quot;menu&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;  
&lt;/pre&gt;   
&lt;a name=&quot;5.2_Javascript&quot; id=&quot;5.2_Javascript&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;5.2 Javascript&lt;/span&gt;&lt;/h2&gt;
&lt;pre&gt;
var optionsmenu = new Nokia.OptionsMenu({
     element: '#menu',
     transitions: true
});

// Secction 1 Definition
var section1 = new Nokia.OptionsMenuSection({
     label: 'File'
});

var option1 = new Nokia.OptionsMenuItem({
     label: 'New',
     select: function() {
          alert('This creates a new file.');
     }
});

var option2 = new Nokia.OptionsMenuItem({
     label: 'Open',
     select: function() {
          alert('This opens a new file.');
     }
});

section1.addItem(option1);
section1.addItem(option2);

// Secction 2 Definition
var section2 = new Nokia.OptionsMenuSection({
     label: 'Edit'
});

var option5 = new Nokia.OptionsMenuItem({
     label: 'Undo',
     select: function() {
          alert('This undo last change');
     }
});
var option6 = new Nokia.OptionsMenuItem({
     label: 'Redo',
     select: function() {
          alert('This redo last change.');
     }
});

section2.addItem(option5);
section2.addItem(option6);

//Adding Section
optionsmenu.addSection(section1);
optionsmenu.addSection(section2);

//Creating Component
optionsmenu.create();
&lt;/pre&gt; 
&lt;a name=&quot;6_-_Nokia_WRT_Browser_Compatibility&quot; id=&quot;6_-_Nokia_WRT_Browser_Compatibility&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;6 - Nokia WRT Browser Compatibility&lt;/span&gt;&lt;/h1&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;table class=&quot;pbNotSortable&quot; cellspacing=&quot;1&quot; cellpadding=&quot;1&quot; width=&quot;300&quot; align=&quot;left&quot; style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 0px; border-top: rgb(211,211,211) 1px dotted; padding-left: 0px; font-size: 13px; padding-bottom: 0px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 0px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; border-collapse: collapse&quot;&gt;
        &lt;tr style=&quot;border-top-width: 0px; padding-right: 0px; padding-left: 0px; border-left-width: 0px; font-size: 13px; border-bottom-width: 0px; padding-bottom: 0px; margin: 0px; vertical-align: baseline; padding-top: 0px; font-family: inherit; border-right-width: 0px&quot;&gt;
            &lt;td class=&quot;sorttable_sorted_reverse&quot; style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 4px; border-top: rgb(211,211,211) 1px dotted; padding-left: 4px; font-weight: 400; font-size: 13px; padding-bottom: 2px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 2px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; background-color: rgb(255,255,255); text-align: left&quot;&gt;&lt;span id=&quot;sorttable_sortrevind&quot; style=&quot;border-top-width: 0px; padding-right: 0px; padding-left: 0px; border-left-width: 0px; font-size: 13px; float: left; border-bottom-width: 0px; padding-bottom: 0px; margin: 0px; vertical-align: baseline; padding-top: 0px; font-family: inherit; border-right-width: 0px&quot;&gt;▴&amp;nbsp;&lt;/span&gt;&amp;nbsp;&lt;/td&gt;
            &lt;td style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 4px; border-top: rgb(211,211,211) 1px dotted; padding-left: 4px; font-weight: 400; font-size: 13px; padding-bottom: 2px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 2px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; background-color: rgb(255,255,255); text-align: left&quot;&gt;&lt;strong&gt;S60 3.1&lt;/strong&gt;&lt;/td&gt;
            &lt;td style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 4px; border-top: rgb(211,211,211) 1px dotted; padding-left: 4px; font-weight: 400; font-size: 13px; padding-bottom: 2px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 2px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; background-color: rgb(255,255,255); text-align: left&quot;&gt;&lt;strong&gt;S60 3.2&lt;/strong&gt;&lt;/td&gt;
            &lt;td style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 4px; border-top: rgb(211,211,211) 1px dotted; padding-left: 4px; font-weight: 400; font-size: 13px; padding-bottom: 2px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 2px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; background-color: rgb(255,255,255); text-align: left&quot;&gt;&lt;strong&gt;S60 5.0&lt;/strong&gt;&lt;/td&gt;
            &lt;/tr&gt;&lt;tr style=&quot;border-top-width: 0px; padding-right: 0px; padding-left: 0px; border-left-width: 0px; font-size: 13px; border-bottom-width: 0px; padding-bottom: 0px; margin: 0px; vertical-align: baseline; padding-top: 0px; font-family: inherit; border-right-width: 0px&quot;&gt;
            &lt;td style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 4px; border-top: rgb(211,211,211) 1px dotted; padding-left: 4px; font-weight: 400; font-size: 13px; padding-bottom: 2px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 2px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; background-color: rgb(255,255,255); text-align: left&quot;&gt;Options Menu&lt;/td&gt;
            &lt;td bgcolor=&quot;#000000&quot; style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 4px; border-top: rgb(211,211,211) 1px dotted; padding-left: 4px; font-weight: 400; font-size: 13px; padding-bottom: 2px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 2px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; background-color: rgb(255,255,255); text-align: left&quot;&gt;&lt;span style=&quot;border-top-width: 0px; padding-right: 0px; padding-left: 0px; border-left-width: 0px; font-size: 13px; border-bottom-width: 0px; padding-bottom: 0px; margin: 0px; vertical-align: baseline; color: rgb(51,153,102); padding-top: 0px; font-family: inherit; border-right-width: 0px&quot;&gt;NO&amp;nbsp;&lt;/span&gt;&lt;/td&gt;
            &lt;td bgcolor=&quot;#000000&quot; style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 4px; border-top: rgb(211,211,211) 1px dotted; padding-left: 4px; font-weight: 400; font-size: 13px; padding-bottom: 2px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 2px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; background-color: rgb(255,255,255); text-align: left&quot;&gt;&lt;span style=&quot;border-top-width: 0px; padding-right: 0px; padding-left: 0px; border-left-width: 0px; font-size: 13px; border-bottom-width: 0px; padding-bottom: 0px; margin: 0px; vertical-align: baseline; color: rgb(51,153,102); padding-top: 0px; font-family: inherit; border-right-width: 0px&quot;&gt;YES&amp;nbsp;&lt;/span&gt;&lt;/td&gt;
            &lt;td bgcolor=&quot;#000000&quot; style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 4px; border-top: rgb(211,211,211) 1px dotted; padding-left: 4px; font-weight: 400; font-size: 13px; padding-bottom: 2px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 2px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; background-color: rgb(255,255,255); text-align: left&quot;&gt;&lt;span style=&quot;border-top-width: 0px; padding-right: 0px; padding-left: 0px; border-left-width: 0px; font-size: 13px; border-bottom-width: 0px; padding-bottom: 0px; margin: 0px; vertical-align: baseline; color: rgb(51,153,102); padding-top: 0px; font-family: inherit; border-right-width: 0px&quot;&gt;YES&amp;nbsp;&lt;/span&gt;&lt;/td&gt;
&lt;/table&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
</description>
			<pubDate>Wed, 18 Nov 2009 15:07:46 GMT</pubDate>			<dc:creator>Hkaliste</dc:creator>			<comments>http://wiki.forum.nokia.com/index.php/Talk:Options_Menu</comments>		</item>
		<item>
			<title>Dropdown</title>
			<link>http://wiki.forum.nokia.com/index.php/Dropdown</link>
			<description>&lt;a name=&quot;Inheritance&quot; id=&quot;Inheritance&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;Inheritance&lt;/span&gt;&lt;/h1&gt;
&lt;pre class=&quot;text&quot; style=&quot;font-family:monospace;&quot;&gt;Nokia.Widget&lt;br /&gt;    |- Nokia.DropDown&lt;/pre&gt;
&lt;a name=&quot;1_-_Description&quot; id=&quot;1_-_Description&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;1 - Description&lt;/span&gt;&lt;/h1&gt;
&lt;p&gt;The Drop Down component behaves similarly to the &lt;a href=&quot;/index.php/Options_Menu&quot; title=&quot;Options Menu&quot;&gt;Options Menu&lt;/a&gt; component.
&lt;/p&gt;
&lt;a name=&quot;2_-_Visual_Design&quot; id=&quot;2_-_Visual_Design&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;2 - Visual Design&lt;/span&gt;&lt;/h1&gt;
&lt;p&gt;&lt;a href=&quot;/index.php/File:Dropdown01.png&quot; class=&quot;image&quot; title=&quot;File:Dropdown01.png&quot;&gt;&lt;img alt=&quot;File:Dropdown01.png&quot; src=&quot;http://www.forum.nokia.com/piazza/wiki/images/b/b0/Dropdown01.png&quot; width=&quot;230&quot; height=&quot;315&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;
&lt;a name=&quot;3_-_Component_Dependencies&quot; id=&quot;3_-_Component_Dependencies&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;3 - Component Dependencies&lt;/span&gt;&lt;/h1&gt;
&lt;a name=&quot;3.1_CSS&quot; id=&quot;3.1_CSS&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;3.1 CSS&lt;/span&gt;&lt;/h2&gt;
&lt;pre&gt;
&amp;lt;!-- Themeroller CSS --&amp;gt;
&amp;lt;link rel=&amp;quot;stylesheet&amp;quot; href=&amp;quot;themes/themeroller/&amp;lt;theme&amp;gt;/Themeroller.css&amp;quot; type=&amp;quot;text/css&amp;quot; media=&amp;quot;screen&amp;quot;&amp;gt;
&amp;lt;!-- Specific Theme/Resolution CSS --&amp;gt;
&amp;lt;link rel=&amp;quot;stylesheet&amp;quot; href=&amp;quot;/themes/nokia/ext-theme/&amp;lt;theme&amp;gt;/&amp;lt;resolution&amp;gt;/custom.css&amp;quot; type=&amp;quot;text/css&amp;quot; media=&amp;quot;screen&amp;quot;&amp;gt;
&lt;/pre&gt;
&lt;a name=&quot;3.2_Javascript&quot; id=&quot;3.2_Javascript&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;3.2 Javascript&lt;/span&gt;&lt;/h2&gt;
&lt;pre&gt;
&amp;lt;!-- jQuery file --&amp;gt;
&amp;lt;script src=&amp;quot;/lib/jquery/jQuery.js&amp;quot; type=&amp;quot;text/javascript&amp;quot; charset=&amp;quot;utf-8&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;!-- Guarana file --&amp;gt;
&amp;lt;script src=&amp;quot;/lib/Guarana.js&amp;quot; type=&amp;quot;text/javascript&amp;quot; charset=&amp;quot;utf-8&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&lt;/pre&gt; 
&lt;a name=&quot;4_-_Functional_Specifications.2FRequirements&quot; id=&quot;4_-_Functional_Specifications.2FRequirements&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;4 - Functional Specifications/Requirements&lt;/span&gt;&lt;/h1&gt;
&lt;a name=&quot;4.1_-_Options&quot; id=&quot;4.1_-_Options&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;4.1 - Options&lt;/span&gt;&lt;/h2&gt;
&lt;ul&gt;&lt;li&gt;element: 'selector' 
&lt;ul&gt;&lt;li&gt;jQuery selector or the DOM reference to become the container of the component. 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;items[]: string 
&lt;ul&gt;&lt;li&gt;Defines the list of component items. 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;maximize: boolean 
&lt;ul&gt;&lt;li&gt;Defines whether the component is created as maximised.
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;/ul&gt;
&lt;a name=&quot;4.2_-_Events_-_Callbacks&quot; id=&quot;4.2_-_Events_-_Callbacks&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;4.2 - Events - Callbacks&lt;/span&gt;&lt;/h2&gt;
&lt;ul&gt;&lt;li&gt;create: function() 
&lt;ul&gt;&lt;li&gt;Scope: [this.element] 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;/ul&gt;
&lt;a name=&quot;4.3_-_Methods&quot; id=&quot;4.3_-_Methods&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;4.3 - Methods&lt;/span&gt;&lt;/h2&gt;
&lt;ul&gt;&lt;li&gt;showOptions: function() 
&lt;ul&gt;&lt;li&gt;Shows the component options. 
&lt;/li&gt;&lt;li&gt;return [void] 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;hideOptions: function() 
&lt;ul&gt;&lt;li&gt;Hides the component options. 
&lt;/li&gt;&lt;li&gt;return [void] 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;select: function(i, event) 
&lt;ul&gt;&lt;li&gt;Selects specific item i in the component. 
&lt;/li&gt;&lt;li&gt;return [void] 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;getSelected: function() 
&lt;ul&gt;&lt;li&gt;Returns the selected item in the component. 
&lt;/li&gt;&lt;li&gt;return [Object] 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;&lt;br /&gt; 
&lt;/p&gt;
&lt;a name=&quot;4.4_-_Default_options&quot; id=&quot;4.4_-_Default_options&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;4.4 - Default options&lt;/span&gt;&lt;/h2&gt;
&lt;ul&gt;&lt;li&gt;maximize: false 
&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;a name=&quot;5_-_Component_Demo&quot; id=&quot;5_-_Component_Demo&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;5 - Component Demo&lt;/span&gt;&lt;/h1&gt;
&lt;a name=&quot;5.1_HTML&quot; id=&quot;5.1_HTML&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;5.1 HTML&lt;/span&gt;&lt;/h2&gt;
&lt;pre&gt;
&amp;lt;div id=&amp;quot;dropdown&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;
&lt;/pre&gt;
&lt;a name=&quot;5.2_Javascript&quot; id=&quot;5.2_Javascript&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;5.2 Javascript&lt;/span&gt;&lt;/h2&gt;
&lt;pre&gt;
window.dropdown = new Nokia.DropDown({
     element: '#dropdown',
     items: [
          {
               label: &amp;quot;First option&amp;quot;,
               value: 'some value',
               select: function(item, event) {
                    alert('Drop Down Clicked on: ' + item.label);
               }
          },
          {
               label: &amp;quot;Second option&amp;quot;,
               value: 'some value',
               select: function(item, event) {
                    alert('Drop Down Clicked on: ' + item.label);
               }
          },
          {
               label: &amp;quot;Third option&amp;quot;,
               value: 'some value',
               select: function(item, event) {
                    alert('Drop Down Clicked on: ' + item.label);
               }
          },
     ]
});
&lt;/pre&gt;
&lt;a name=&quot;6_-_Nokia_WRT_Browser_Compatibility:&quot; id=&quot;6_-_Nokia_WRT_Browser_Compatibility:&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;6 - Nokia WRT Browser Compatibility:&lt;/span&gt;&lt;/h1&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;table class=&quot;pbNotSortable&quot; cellspacing=&quot;1&quot; cellpadding=&quot;1&quot; width=&quot;300&quot; align=&quot;left&quot; style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 0px; border-top: rgb(211,211,211) 1px dotted; padding-left: 0px; font-size: 13px; padding-bottom: 0px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 0px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; border-collapse: collapse&quot;&gt;
        &lt;tr style=&quot;border-top-width: 0px; padding-right: 0px; padding-left: 0px; border-left-width: 0px; font-size: 13px; border-bottom-width: 0px; padding-bottom: 0px; margin: 0px; vertical-align: baseline; padding-top: 0px; font-family: inherit; border-right-width: 0px&quot;&gt;
            &lt;td class=&quot;sorttable_sorted_reverse&quot; style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 4px; border-top: rgb(211,211,211) 1px dotted; padding-left: 4px; font-weight: 400; font-size: 13px; padding-bottom: 2px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 2px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; background-color: rgb(255,255,255); text-align: left&quot;&gt;&lt;span id=&quot;sorttable_sortrevind&quot; style=&quot;border-top-width: 0px; padding-right: 0px; padding-left: 0px; border-left-width: 0px; font-size: 13px; float: left; border-bottom-width: 0px; padding-bottom: 0px; margin: 0px; vertical-align: baseline; padding-top: 0px; font-family: inherit; border-right-width: 0px&quot;&gt;▴&amp;nbsp;&lt;/span&gt;&amp;nbsp;&lt;/td&gt;
            &lt;td style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 4px; border-top: rgb(211,211,211) 1px dotted; padding-left: 4px; font-weight: 400; font-size: 13px; padding-bottom: 2px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 2px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; background-color: rgb(255,255,255); text-align: left&quot;&gt;&lt;strong&gt;S60 3.1&lt;/strong&gt;&lt;/td&gt;
            &lt;td style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 4px; border-top: rgb(211,211,211) 1px dotted; padding-left: 4px; font-weight: 400; font-size: 13px; padding-bottom: 2px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 2px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; background-color: rgb(255,255,255); text-align: left&quot;&gt;&lt;strong&gt;S60 3.2&lt;/strong&gt;&lt;/td&gt;
            &lt;td style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 4px; border-top: rgb(211,211,211) 1px dotted; padding-left: 4px; font-weight: 400; font-size: 13px; padding-bottom: 2px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 2px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; background-color: rgb(255,255,255); text-align: left&quot;&gt;&lt;strong&gt;S60 5.0&lt;/strong&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style=&quot;border-top-width: 0px; padding-right: 0px; padding-left: 0px; border-left-width: 0px; font-size: 13px; border-bottom-width: 0px; padding-bottom: 0px; margin: 0px; vertical-align: baseline; padding-top: 0px; font-family: inherit; border-right-width: 0px&quot;&gt;
            &lt;td style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 4px; border-top: rgb(211,211,211) 1px dotted; padding-left: 4px; font-weight: 400; font-size: 13px; padding-bottom: 2px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 2px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; background-color: rgb(255,255,255); text-align: left&quot;&gt;DropDown&lt;/td&gt;
            &lt;td bgcolor=&quot;#000000&quot; style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 4px; border-top: rgb(211,211,211) 1px dotted; padding-left: 4px; font-weight: 400; font-size: 13px; padding-bottom: 2px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 2px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; background-color: rgb(255,255,255); text-align: left&quot;&gt;&lt;span style=&quot;border-top-width: 0px; padding-right: 0px; padding-left: 0px; border-left-width: 0px; font-size: 13px; border-bottom-width: 0px; padding-bottom: 0px; margin: 0px; vertical-align: baseline; color: rgb(51,153,102); padding-top: 0px; font-family: inherit; border-right-width: 0px&quot;&gt;NO&lt;/span&gt;&lt;/td&gt;
            &lt;td bgcolor=&quot;#000000&quot; style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 4px; border-top: rgb(211,211,211) 1px dotted; padding-left: 4px; font-weight: 400; font-size: 13px; padding-bottom: 2px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 2px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; background-color: rgb(255,255,255); text-align: left&quot;&gt;&lt;span style=&quot;border-top-width: 0px; padding-right: 0px; padding-left: 0px; border-left-width: 0px; font-size: 13px; border-bottom-width: 0px; padding-bottom: 0px; margin: 0px; vertical-align: baseline; color: rgb(51,153,102); padding-top: 0px; font-family: inherit; border-right-width: 0px&quot;&gt;YES&amp;nbsp;&lt;/span&gt;&lt;/td&gt;
            &lt;td bgcolor=&quot;#000000&quot; style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 4px; border-top: rgb(211,211,211) 1px dotted; padding-left: 4px; font-weight: 400; font-size: 13px; padding-bottom: 2px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 2px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; background-color: rgb(255,255,255); text-align: left&quot;&gt;&lt;span style=&quot;border-top-width: 0px; padding-right: 0px; padding-left: 0px; border-left-width: 0px; font-size: 13px; border-bottom-width: 0px; padding-bottom: 0px; margin: 0px; vertical-align: baseline; color: rgb(51,153,102); padding-top: 0px; font-family: inherit; border-right-width: 0px&quot;&gt;YES&amp;nbsp;&lt;/span&gt;&lt;/td&gt;
    &lt;/table&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
</description>
			<pubDate>Wed, 18 Nov 2009 15:04:45 GMT</pubDate>			<dc:creator>Hkaliste</dc:creator>			<comments>http://wiki.forum.nokia.com/index.php/Talk:Dropdown</comments>		</item>
		<item>
			<title>Rating</title>
			<link>http://wiki.forum.nokia.com/index.php/Rating</link>
			<description>&lt;p&gt;&lt;br /&gt;
&lt;/p&gt;&lt;p&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;a name=&quot;Inheritance&quot; id=&quot;Inheritance&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;Inheritance&lt;/span&gt;&lt;/h1&gt;
&lt;pre class=&quot;text&quot; style=&quot;font-family:monospace;&quot;&gt;Nokia.Widget&lt;br /&gt;    |- Nokia.Rating&lt;/pre&gt;
&lt;a name=&quot;1_-_Description&quot; id=&quot;1_-_Description&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;1 - Description&lt;/span&gt;&lt;/h1&gt;
&lt;p&gt;The Rating component provides a control that allows the user to edit the rating of a content element.
&lt;/p&gt;&lt;p&gt;&lt;br /&gt; 
&lt;/p&gt;
&lt;a name=&quot;2_-_Visual_Design&quot; id=&quot;2_-_Visual_Design&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;2 - Visual Design&lt;/span&gt;&lt;/h1&gt;
&lt;p&gt;&lt;a href=&quot;/index.php/File:Rating01.png&quot; class=&quot;image&quot; title=&quot;File:Rating01.png&quot;&gt;&lt;img alt=&quot;File:Rating01.png&quot; src=&quot;http://www.forum.nokia.com/piazza/wiki/images/2/20/Rating01.png&quot; width=&quot;230&quot; height=&quot;54&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;
&lt;a name=&quot;3_-_Component_Dependencies&quot; id=&quot;3_-_Component_Dependencies&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;3 - Component Dependencies&lt;/span&gt;&lt;/h1&gt;
&lt;a name=&quot;3.1_CSS&quot; id=&quot;3.1_CSS&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;3.1 CSS&lt;/span&gt;&lt;/h2&gt;
&lt;pre&gt;
&amp;lt;!-- Themeroller CSS --&amp;gt;
&amp;lt;link rel=&amp;quot;stylesheet&amp;quot; href=&amp;quot;themes/themeroller/&amp;lt;theme&amp;gt;/Themeroller.css&amp;quot; type=&amp;quot;text/css&amp;quot; media=&amp;quot;screen&amp;quot;&amp;gt;
&amp;lt;!-- Specific Theme/Resolution CSS --&amp;gt;
&amp;lt;link rel=&amp;quot;stylesheet&amp;quot; href=&amp;quot;/themes/nokia/ext-theme/&amp;lt;theme&amp;gt;/&amp;lt;resolution&amp;gt;/custom.css&amp;quot; type=&amp;quot;text/css&amp;quot; media=&amp;quot;screen&amp;quot;&amp;gt;
&lt;/pre&gt; 
&lt;a name=&quot;3.2_Javascript&quot; id=&quot;3.2_Javascript&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;3.2 Javascript&lt;/span&gt;&lt;/h2&gt;
&lt;pre&gt;
&amp;lt;!-- jQuery file --&amp;gt;
&amp;lt;script src=&amp;quot;/lib/jquery/jQuery.js&amp;quot; type=&amp;quot;text/javascript&amp;quot; charset=&amp;quot;utf-8&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;!-- Guarana file --&amp;gt;
&amp;lt;script src=&amp;quot;/lib/Guarana.js&amp;quot; type=&amp;quot;text/javascript&amp;quot; charset=&amp;quot;utf-8&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&lt;/pre&gt; 
&lt;a name=&quot;4_-_Functional_Specifications.2FRequirements&quot; id=&quot;4_-_Functional_Specifications.2FRequirements&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;4 - Functional Specifications/Requirements&lt;/span&gt;&lt;/h1&gt;
&lt;a name=&quot;4.1_-_Options&quot; id=&quot;4.1_-_Options&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;4.1 - Options&lt;/span&gt;&lt;/h2&gt;
&lt;ul&gt;&lt;li&gt;element: 'selector' 
&lt;ul&gt;&lt;li&gt;jQuery selector or the DOM reference to become the container of the component. 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;stars: int 
&lt;ul&gt;&lt;li&gt;Defines the total number of stars in the component. 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;value: int 
&lt;ul&gt;&lt;li&gt;This defines the number of stars that are selected in the component by default. This is a number between 0 and the value of the stars option. 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;a name=&quot;4.2_-_Events_-_Callbacks&quot; id=&quot;4.2_-_Events_-_Callbacks&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;4.2 - Events - Callbacks&lt;/span&gt;&lt;/h2&gt;
&lt;ul&gt;&lt;li&gt;create: function() 
&lt;ul&gt;&lt;li&gt;Scope: [this.element] 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;change: function(value) 
&lt;ul&gt;&lt;li&gt;Scope: [this.element] 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;a name=&quot;4.3_-_Methods&quot; id=&quot;4.3_-_Methods&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;4.3 - Methods&lt;/span&gt;&lt;/h2&gt;
&lt;ul&gt;&lt;li&gt;getValue: function() 
&lt;ul&gt;&lt;li&gt;Returns the component value. 
&lt;/li&gt;&lt;li&gt;return [int] 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;setValue: function(value) 
&lt;ul&gt;&lt;li&gt;Sets the component value. 
&lt;/li&gt;&lt;li&gt;return [void]
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;/ul&gt;
&lt;a name=&quot;4.4_-_Default_options&quot; id=&quot;4.4_-_Default_options&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;4.4 - Default options&lt;/span&gt;&lt;/h2&gt;
&lt;ul&gt;&lt;li&gt;stars: 5 
&lt;/li&gt;&lt;li&gt;value: 0 
&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;a name=&quot;5_-_Component_Demo&quot; id=&quot;5_-_Component_Demo&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;5 - Component Demo&lt;/span&gt;&lt;/h1&gt;
&lt;a name=&quot;5.1_HTML&quot; id=&quot;5.1_HTML&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;5.1 HTML&lt;/span&gt;&lt;/h2&gt;
&lt;pre&gt;
&amp;lt;div id=&amp;quot;rating01&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;
&lt;/pre&gt; 
&lt;a name=&quot;5.2_Javascript&quot; id=&quot;5.2_Javascript&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;5.2 Javascript&lt;/span&gt;&lt;/h2&gt;
&lt;pre&gt;
window.rating1 = new Nokia.Rating({
     element: '#rating01',
     value: 2,
     create: function() {
          //alert(&amp;quot;Rating: Create.&amp;quot;);
     },
     change: function(value) {
          //alert(&amp;quot;Rating: Change - &amp;quot; + value);
     }
});
&lt;/pre&gt;
&lt;a name=&quot;6_-_Nokia_WRT_Browser_Compatibility&quot; id=&quot;6_-_Nokia_WRT_Browser_Compatibility&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;6 - Nokia WRT Browser Compatibility&lt;/span&gt;&lt;/h1&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;table class=&quot;pbNotSortable&quot; cellspacing=&quot;1&quot; cellpadding=&quot;1&quot; width=&quot;300&quot; align=&quot;left&quot; style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 0px; border-top: rgb(211,211,211) 1px dotted; padding-left: 0px; font-size: 13px; padding-bottom: 0px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 0px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; border-collapse: collapse&quot;&gt;
        &lt;tr style=&quot;border-top-width: 0px; padding-right: 0px; padding-left: 0px; border-left-width: 0px; font-size: 13px; border-bottom-width: 0px; padding-bottom: 0px; margin: 0px; vertical-align: baseline; padding-top: 0px; font-family: inherit; border-right-width: 0px&quot;&gt;
            &lt;td class=&quot;sorttable_sorted_reverse&quot; style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 4px; border-top: rgb(211,211,211) 1px dotted; padding-left: 4px; font-weight: 400; font-size: 13px; padding-bottom: 2px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 2px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; background-color: rgb(255,255,255); text-align: left&quot;&gt;&lt;span id=&quot;sorttable_sortrevind&quot; style=&quot;border-top-width: 0px; padding-right: 0px; padding-left: 0px; border-left-width: 0px; font-size: 13px; float: left; border-bottom-width: 0px; padding-bottom: 0px; margin: 0px; vertical-align: baseline; padding-top: 0px; font-family: inherit; border-right-width: 0px&quot;&gt;▴&amp;nbsp;&lt;/span&gt;&amp;nbsp;&lt;/td&gt;
            &lt;td style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 4px; border-top: rgb(211,211,211) 1px dotted; padding-left: 4px; font-weight: 400; font-size: 13px; padding-bottom: 2px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 2px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; background-color: rgb(255,255,255); text-align: left&quot;&gt;&lt;strong&gt;S60 3.1&lt;/strong&gt;&lt;/td&gt;
            &lt;td style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 4px; border-top: rgb(211,211,211) 1px dotted; padding-left: 4px; font-weight: 400; font-size: 13px; padding-bottom: 2px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 2px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; background-color: rgb(255,255,255); text-align: left&quot;&gt;&lt;strong&gt;S60 3.2&lt;/strong&gt;&lt;/td&gt;
            &lt;td style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 4px; border-top: rgb(211,211,211) 1px dotted; padding-left: 4px; font-weight: 400; font-size: 13px; padding-bottom: 2px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 2px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; background-color: rgb(255,255,255); text-align: left&quot;&gt;&lt;strong&gt;S60 5.0&lt;/strong&gt;&lt;/td&gt;
        &lt;/tr&gt;&lt;tr style=&quot;border-top-width: 0px; padding-right: 0px; padding-left: 0px; border-left-width: 0px; font-size: 13px; border-bottom-width: 0px; padding-bottom: 0px; margin: 0px; vertical-align: baseline; padding-top: 0px; font-family: inherit; border-right-width: 0px&quot;&gt;
            &lt;td style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 4px; border-top: rgb(211,211,211) 1px dotted; padding-left: 4px; font-weight: 400; font-size: 13px; padding-bottom: 2px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 2px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; background-color: rgb(255,255,255); text-align: left&quot;&gt;Rating&lt;/td&gt;
            &lt;td bgcolor=&quot;#000000&quot; style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 4px; border-top: rgb(211,211,211) 1px dotted; padding-left: 4px; font-weight: 400; font-size: 13px; padding-bottom: 2px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 2px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; background-color: rgb(255,255,255); text-align: left&quot;&gt;&lt;span style=&quot;border-top-width: 0px; padding-right: 0px; padding-left: 0px; border-left-width: 0px; font-size: 13px; border-bottom-width: 0px; padding-bottom: 0px; margin: 0px; vertical-align: baseline; color: rgb(51,153,102); padding-top: 0px; font-family: inherit; border-right-width: 0px&quot;&gt;YES&amp;nbsp;&lt;/span&gt;&lt;/td&gt;
            &lt;td bgcolor=&quot;#000000&quot; style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 4px; border-top: rgb(211,211,211) 1px dotted; padding-left: 4px; font-weight: 400; font-size: 13px; padding-bottom: 2px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 2px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; background-color: rgb(255,255,255); text-align: left&quot;&gt;&lt;span style=&quot;border-top-width: 0px; padding-right: 0px; padding-left: 0px; border-left-width: 0px; font-size: 13px; border-bottom-width: 0px; padding-bottom: 0px; margin: 0px; vertical-align: baseline; color: rgb(51,153,102); padding-top: 0px; font-family: inherit; border-right-width: 0px&quot;&gt;YES&amp;nbsp;&lt;/span&gt;&lt;/td&gt;
            &lt;td bgcolor=&quot;#000000&quot; style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 4px; border-top: rgb(211,211,211) 1px dotted; padding-left: 4px; font-weight: 400; font-size: 13px; padding-bottom: 2px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 2px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; background-color: rgb(255,255,255); text-align: left&quot;&gt;&lt;span style=&quot;border-top-width: 0px; padding-right: 0px; padding-left: 0px; border-left-width: 0px; font-size: 13px; border-bottom-width: 0px; padding-bottom: 0px; margin: 0px; vertical-align: baseline; color: rgb(51,153,102); padding-top: 0px; font-family: inherit; border-right-width: 0px&quot;&gt;YES&amp;nbsp;&lt;/span&gt;&lt;/td&gt;
&lt;/table&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
</description>
			<pubDate>Thu, 19 Nov 2009 17:56:33 GMT</pubDate>			<dc:creator>Manikantan</dc:creator>			<comments>http://wiki.forum.nokia.com/index.php/Talk:Rating</comments>		</item>
		<item>
			<title>Image Description</title>
			<link>http://wiki.forum.nokia.com/index.php/Image_Description</link>
			<description>&lt;a name=&quot;Inheritance&quot; id=&quot;Inheritance&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;Inheritance&lt;/span&gt;&lt;/h1&gt;
&lt;pre class=&quot;text&quot; style=&quot;font-family:monospace;&quot;&gt;Nokia.Widget&lt;br /&gt;    |- Nokia.ImageDescription&lt;/pre&gt;
&lt;a name=&quot;1_-_Description&quot; id=&quot;1_-_Description&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;1 - Description&lt;/span&gt;&lt;/h1&gt;
&lt;p&gt;An image label combines a text label with an image. 
&lt;/p&gt;&lt;p&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;a name=&quot;2_-_Visual_Design&quot; id=&quot;2_-_Visual_Design&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;2 - Visual Design&lt;/span&gt;&lt;/h1&gt;
&lt;p&gt;&lt;a href=&quot;/index.php/File:Imagedescription02.png&quot; class=&quot;image&quot; title=&quot;File:Imagedescription02.png&quot;&gt;&lt;img alt=&quot;File:Imagedescription02.png&quot; src=&quot;http://www.forum.nokia.com/piazza/wiki/images/a/a8/Imagedescription02.png&quot; width=&quot;230&quot; height=&quot;236&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;
&lt;a name=&quot;3_-_Component_Dependencies&quot; id=&quot;3_-_Component_Dependencies&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;3 - Component Dependencies&lt;/span&gt;&lt;/h1&gt;
&lt;a name=&quot;3.1_CSS&quot; id=&quot;3.1_CSS&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;3.1 CSS&lt;/span&gt;&lt;/h2&gt;
&lt;pre&gt;
&amp;lt;!-- Themeroller CSS --&amp;gt;
&amp;lt;link rel=&amp;quot;stylesheet&amp;quot; href=&amp;quot;themes/themeroller/&amp;lt;theme&amp;gt;/Themeroller.css&amp;quot; type=&amp;quot;text/css&amp;quot; media=&amp;quot;screen&amp;quot;&amp;gt;
&amp;lt;!-- Specific Theme/Resolution CSS --&amp;gt;
&amp;lt;link rel=&amp;quot;stylesheet&amp;quot; href=&amp;quot;/themes/nokia/ext-theme/&amp;lt;theme&amp;gt;/&amp;lt;resolution&amp;gt;/custom.css&amp;quot; type=&amp;quot;text/css&amp;quot; media=&amp;quot;screen&amp;quot;&amp;gt;
&lt;/pre&gt; 
&lt;a name=&quot;3.2_Javascript&quot; id=&quot;3.2_Javascript&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;3.2 Javascript&lt;/span&gt;&lt;/h2&gt;
&lt;pre&gt;
&amp;lt;!-- jQuery file --&amp;gt;
&amp;lt;script src=&amp;quot;/lib/jquery/jQuery.js&amp;quot; type=&amp;quot;text/javascript&amp;quot; charset=&amp;quot;utf-8&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;!-- Guarana file --&amp;gt;
&amp;lt;script src=&amp;quot;/lib/Guarana.js&amp;quot; type=&amp;quot;text/javascript&amp;quot; charset=&amp;quot;utf-8&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&lt;/pre&gt; 
&lt;a name=&quot;4_-_Functional_Specifications.2FRequirements&quot; id=&quot;4_-_Functional_Specifications.2FRequirements&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;4 - Functional Specifications/Requirements&lt;/span&gt;&lt;/h1&gt;
&lt;a name=&quot;4.1_-_Options&quot; id=&quot;4.1_-_Options&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;4.1 - Options&lt;/span&gt;&lt;/h2&gt;
&lt;ul&gt;&lt;li&gt;element: 'selector' 
&lt;ul&gt;&lt;li&gt;jQuery selector or the DOM reference to become the container of the component. 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;Description: String 
&lt;ul&gt;&lt;li&gt;Defines the image description text. 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;lineHeight: int 
&lt;ul&gt;&lt;li&gt;Defines the line height property. 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;applyRoundedCorners: boolean 
&lt;ul&gt;&lt;li&gt;Defines whether the component has rounded corners. 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;backgroundClass: boolean 
&lt;ul&gt;&lt;li&gt;Defines the background CSS class for the component. 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;create: function 
&lt;ul&gt;&lt;li&gt;Defines the called function to create callback. 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;toggle: function 
&lt;ul&gt;&lt;li&gt;Defines the called function to togglecallback. 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;maxLines 
&lt;ul&gt;&lt;li&gt;Defines the number of lines displayed in compressed mode
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;a name=&quot;4.2_-_Events_-_Callbacks&quot; id=&quot;4.2_-_Events_-_Callbacks&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;4.2 - Events - Callbacks&lt;/span&gt;&lt;/h2&gt;
&lt;ul&gt;&lt;li&gt;create: function() 
&lt;ul&gt;&lt;li&gt;Scope: [this.element] 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;toggle: function(event) 
&lt;ul&gt;&lt;li&gt;Scope: [this.element] 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;a name=&quot;4.3_-_Methods&quot; id=&quot;4.3_-_Methods&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;4.3 - Methods&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;No public methods for this component. 
&lt;/p&gt;
&lt;a name=&quot;4.4_-_Default_options&quot; id=&quot;4.4_-_Default_options&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;4.4 - Default options&lt;/span&gt;&lt;/h2&gt;
&lt;ul&gt;&lt;li&gt;description: 'Image Description' 
&lt;/li&gt;&lt;li&gt;lineHeight: 18 
&lt;/li&gt;&lt;li&gt;applyRoundedCorners: true 
&lt;/li&gt;&lt;li&gt;backgroundClass: 'ui-state-default' 
&lt;/li&gt;&lt;li&gt;create: function() {} 
&lt;/li&gt;&lt;li&gt;toggle: function() {} 
&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;a name=&quot;5_-_Component_Demo&quot; id=&quot;5_-_Component_Demo&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;5 - Component Demo&lt;/span&gt;&lt;/h1&gt;
&lt;a name=&quot;5.1_HTML&quot; id=&quot;5.1_HTML&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;5.1 HTML&lt;/span&gt;&lt;/h2&gt;
&lt;pre&gt;
&amp;lt;img id=&amp;quot;image01&amp;quot; src=&amp;quot;images/image01.png&amp;quot; /&amp;gt;
&lt;/pre&gt; 
&lt;a name=&quot;5.2_Javascript&quot; id=&quot;5.2_Javascript&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;5.2 Javascript&lt;/span&gt;&lt;/h2&gt;
&lt;pre&gt;
window.image1 = new Nokia.ImageDescription({
     element: '#image01',
     description: jQuery('#description').html(),
     maxLines: 1,
     create: function() {
          //alert(&amp;quot;Image Description: Create&amp;quot;);
     }
     toggle: function() {
          //alert(&amp;quot;Image Description: Toggle&amp;quot;);
     }
});
&lt;/pre&gt;
&lt;a name=&quot;6_-_Nokia_WRT_Browser_Compatibility&quot; id=&quot;6_-_Nokia_WRT_Browser_Compatibility&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;6 - Nokia WRT Browser Compatibility&lt;/span&gt;&lt;/h1&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;table class=&quot;pbNotSortable&quot; cellspacing=&quot;1&quot; cellpadding=&quot;1&quot; width=&quot;300&quot; align=&quot;left&quot; style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 0px; border-top: rgb(211,211,211) 1px dotted; padding-left: 0px; font-size: 13px; padding-bottom: 0px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 0px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; border-collapse: collapse&quot;&gt;
        &lt;tr style=&quot;border-top-width: 0px; padding-right: 0px; padding-left: 0px; border-left-width: 0px; font-size: 13px; border-bottom-width: 0px; padding-bottom: 0px; margin: 0px; vertical-align: baseline; padding-top: 0px; font-family: inherit; border-right-width: 0px&quot;&gt;
            &lt;td class=&quot;sorttable_sorted_reverse&quot; style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 4px; border-top: rgb(211,211,211) 1px dotted; padding-left: 4px; font-weight: 400; font-size: 13px; padding-bottom: 2px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 2px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; background-color: rgb(255,255,255); text-align: left&quot;&gt;&lt;span id=&quot;sorttable_sortrevind&quot; style=&quot;border-top-width: 0px; padding-right: 0px; padding-left: 0px; border-left-width: 0px; font-size: 13px; float: left; border-bottom-width: 0px; padding-bottom: 0px; margin: 0px; vertical-align: baseline; padding-top: 0px; font-family: inherit; border-right-width: 0px&quot;&gt;▴&amp;nbsp;&lt;/span&gt;&amp;nbsp;&lt;/td&gt;
            &lt;td style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 4px; border-top: rgb(211,211,211) 1px dotted; padding-left: 4px; font-weight: 400; font-size: 13px; padding-bottom: 2px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 2px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; background-color: rgb(255,255,255); text-align: left&quot;&gt;&lt;strong&gt;S60 3.1&lt;/strong&gt;&lt;/td&gt;
            &lt;td style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 4px; border-top: rgb(211,211,211) 1px dotted; padding-left: 4px; font-weight: 400; font-size: 13px; padding-bottom: 2px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 2px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; background-color: rgb(255,255,255); text-align: left&quot;&gt;&lt;strong&gt;S60 3.2&lt;/strong&gt;&lt;/td&gt;
            &lt;td style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 4px; border-top: rgb(211,211,211) 1px dotted; padding-left: 4px; font-weight: 400; font-size: 13px; padding-bottom: 2px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 2px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; background-color: rgb(255,255,255); text-align: left&quot;&gt;&lt;strong&gt;S60 5.0&lt;/strong&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style=&quot;border-top-width: 0px; padding-right: 0px; padding-left: 0px; border-left-width: 0px; font-size: 13px; border-bottom-width: 0px; padding-bottom: 0px; margin: 0px; vertical-align: baseline; padding-top: 0px; font-family: inherit; border-right-width: 0px&quot;&gt;
            &lt;td style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 4px; border-top: rgb(211,211,211) 1px dotted; padding-left: 4px; font-weight: 400; font-size: 13px; padding-bottom: 2px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 2px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; background-color: rgb(255,255,255); text-align: left&quot;&gt;Image Description&lt;/td&gt;
            &lt;td bgcolor=&quot;#000000&quot; style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 4px; border-top: rgb(211,211,211) 1px dotted; padding-left: 4px; font-weight: 400; font-size: 13px; padding-bottom: 2px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 2px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; background-color: rgb(255,255,255); text-align: left&quot;&gt;&lt;span style=&quot;border-top-width: 0px; padding-right: 0px; padding-left: 0px; border-left-width: 0px; font-size: 13px; border-bottom-width: 0px; padding-bottom: 0px; margin: 0px; vertical-align: baseline; color: rgb(51,153,102); padding-top: 0px; font-family: inherit; border-right-width: 0px&quot;&gt;YES&amp;nbsp;&lt;/span&gt;&lt;/td&gt;
            &lt;td bgcolor=&quot;#000000&quot; style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 4px; border-top: rgb(211,211,211) 1px dotted; padding-left: 4px; font-weight: 400; font-size: 13px; padding-bottom: 2px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 2px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; background-color: rgb(255,255,255); text-align: left&quot;&gt;&lt;span style=&quot;border-top-width: 0px; padding-right: 0px; padding-left: 0px; border-left-width: 0px; font-size: 13px; border-bottom-width: 0px; padding-bottom: 0px; margin: 0px; vertical-align: baseline; color: rgb(51,153,102); padding-top: 0px; font-family: inherit; border-right-width: 0px&quot;&gt;YES&amp;nbsp;&lt;/span&gt;&lt;/td&gt;
            &lt;td bgcolor=&quot;#000000&quot; style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 4px; border-top: rgb(211,211,211) 1px dotted; padding-left: 4px; font-weight: 400; font-size: 13px; padding-bottom: 2px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 2px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; background-color: rgb(255,255,255); text-align: left&quot;&gt;&lt;span style=&quot;border-top-width: 0px; padding-right: 0px; padding-left: 0px; border-left-width: 0px; font-size: 13px; border-bottom-width: 0px; padding-bottom: 0px; margin: 0px; vertical-align: baseline; color: rgb(51,153,102); padding-top: 0px; font-family: inherit; border-right-width: 0px&quot;&gt;YES&amp;nbsp;&lt;/span&gt;&lt;/td&gt;
        &lt;/tr&gt;
&lt;/table&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
</description>
			<pubDate>Wed, 18 Nov 2009 14:57:55 GMT</pubDate>			<dc:creator>Hkaliste</dc:creator>			<comments>http://wiki.forum.nokia.com/index.php/Talk:Image_Description</comments>		</item>
		<item>
			<title>LightBox</title>
			<link>http://wiki.forum.nokia.com/index.php/LightBox</link>
			<description>&lt;a name=&quot;Inheritance&quot; id=&quot;Inheritance&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;Inheritance&lt;/span&gt;&lt;/h1&gt;
&lt;pre class=&quot;text&quot; style=&quot;font-family:monospace;&quot;&gt;Nokia.Widget&lt;br /&gt;    | - Nokia.LightBox&lt;/pre&gt;
&lt;a name=&quot;1_-_Description&quot; id=&quot;1_-_Description&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;1 - Description&lt;/span&gt;&lt;/h1&gt;
&lt;p&gt;The generic Note is a customisable panel popup. This component should be used as a confirmation note or an information note. The generic Note component must be considered as a container to HTML, more specifically text or image content with a size restriction.  
&lt;/p&gt;&lt;p&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;a name=&quot;2_-_Visual_Design&quot; id=&quot;2_-_Visual_Design&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;2 - Visual Design&lt;/span&gt;&lt;/h1&gt;
&lt;p&gt;&lt;a href=&quot;/index.php/File:Lightbox01.png&quot; class=&quot;image&quot; title=&quot;File:Lightbox01.png&quot;&gt;&lt;img alt=&quot;File:Lightbox01.png&quot; src=&quot;http://www.forum.nokia.com/piazza/wiki/images/4/46/Lightbox01.png&quot; width=&quot;344&quot; height=&quot;200&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;
&lt;a name=&quot;3_-_Component_Dependencies&quot; id=&quot;3_-_Component_Dependencies&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;3 - Component Dependencies&lt;/span&gt;&lt;/h1&gt;
&lt;a name=&quot;3.1_CSS&quot; id=&quot;3.1_CSS&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;3.1 CSS&lt;/span&gt;&lt;/h2&gt;
&lt;pre&gt;
&amp;lt;!-- Themeroller CSS --&amp;gt;
&amp;lt;link rel=&amp;quot;stylesheet&amp;quot; href=&amp;quot;themes/themeroller/&amp;lt;theme&amp;gt;/Themeroller.css&amp;quot; type=&amp;quot;text/css&amp;quot; media=&amp;quot;screen&amp;quot;&amp;gt;
&amp;lt;!-- Specific Theme/Resolution CSS --&amp;gt;
&amp;lt;link rel=&amp;quot;stylesheet&amp;quot; href=&amp;quot;/themes/nokia/ext-theme/&amp;lt;theme&amp;gt;/&amp;lt;resolution&amp;gt;/custom.css&amp;quot; type=&amp;quot;text/css&amp;quot; media=&amp;quot;screen&amp;quot;&amp;gt;
&lt;/pre&gt;  
&lt;a name=&quot;3.2_Javascript&quot; id=&quot;3.2_Javascript&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;3.2 Javascript&lt;/span&gt;&lt;/h2&gt;
&lt;pre&gt;
&amp;lt;!-- jQuery file --&amp;gt;
&amp;lt;script src=&amp;quot;/lib/jquery/jQuery.js&amp;quot; type=&amp;quot;text/javascript&amp;quot; charset=&amp;quot;utf-8&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;!-- Guarana file --&amp;gt;
&amp;lt;script src=&amp;quot;/lib/Guarana.js&amp;quot; type=&amp;quot;text/javascript&amp;quot; charset=&amp;quot;utf-8&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&lt;/pre&gt; 
&lt;a name=&quot;4_-_Functional_Specifications.2FRequirements&quot; id=&quot;4_-_Functional_Specifications.2FRequirements&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;4 - Functional Specifications/Requirements&lt;/span&gt;&lt;/h1&gt;
&lt;a name=&quot;4.1_-_Options&quot; id=&quot;4.1_-_Options&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;4.1 - Options&lt;/span&gt;&lt;/h2&gt;
&lt;ul&gt;&lt;li&gt;element: 'selector' 
&lt;ul&gt;&lt;li&gt;jQuery selector or the DOM reference to become the container of the component. 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;animation: boolean 
&lt;ul&gt;&lt;li&gt;Defines whether showing and hiding the component has animation effects. 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;autoOpen: boolean 
&lt;ul&gt;&lt;li&gt;Defines whether the component is displayed after creation. 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;height: int 
&lt;ul&gt;&lt;li&gt;Defines the component height. 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;width: int 
&lt;ul&gt;&lt;li&gt;Defines the component width. 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;buttonCose: boolean 
&lt;ul&gt;&lt;li&gt;Defines the component to be be created in info mode, with only a Close button in the top-right corner of the component. 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;applyRoundedCorners: boolean 
&lt;ul&gt;&lt;li&gt;Defines rounded corners in the lightbox container.
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;/ul&gt;
&lt;a name=&quot;4.2_-_Events_-_Callbacks&quot; id=&quot;4.2_-_Events_-_Callbacks&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;4.2 - Events - Callbacks&lt;/span&gt;&lt;/h2&gt;
&lt;ul&gt;&lt;li&gt;create: function() 
&lt;ul&gt;&lt;li&gt;Scope: [this.element] 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;destroy: function() 
&lt;ul&gt;&lt;li&gt;Scope: [this.element] 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;hide: function() 
&lt;ul&gt;&lt;li&gt;Scope: [this.element] 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;show: function() 
&lt;ul&gt;&lt;li&gt;Scope: [this.element] 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;a name=&quot;4.3_-_Methods&quot; id=&quot;4.3_-_Methods&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;4.3 - Methods&lt;/span&gt;&lt;/h2&gt;
&lt;ul&gt;&lt;li&gt;destroy: function()  
&lt;ul&gt;&lt;li&gt;Destroys the component. 
&lt;/li&gt;&lt;li&gt;return [void] 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;close: function()  
&lt;ul&gt;&lt;li&gt;Closes the component. 
&lt;/li&gt;&lt;li&gt;return [void] 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;open: function()  
&lt;ul&gt;&lt;li&gt;Opens the component. 
&lt;/li&gt;&lt;li&gt;return [void]  
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;a name=&quot;4.4_-_Default_options&quot; id=&quot;4.4_-_Default_options&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;4.4 - Default options&lt;/span&gt;&lt;/h2&gt;
&lt;ul&gt;&lt;li&gt;autoOpen: false 
&lt;/li&gt;&lt;li&gt;overflow: true 
&lt;/li&gt;&lt;li&gt;height: 28 
&lt;/li&gt;&lt;li&gt;width: 28 
&lt;/li&gt;&lt;li&gt;applyRoundedCorners: true 
&lt;/li&gt;&lt;/ul&gt;
&lt;a name=&quot;5_-_Component_Demo&quot; id=&quot;5_-_Component_Demo&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;5 - Component Demo&lt;/span&gt;&lt;/h1&gt;
&lt;a name=&quot;5.1_HTML&quot; id=&quot;5.1_HTML&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;5.1 HTML&lt;/span&gt;&lt;/h2&gt;
&lt;pre&gt;
&amp;lt;div id=&amp;quot;lightbox01&amp;quot; class=&amp;quot;ui-widget-header ui-state-default&amp;quot;&amp;gt;
     &amp;lt;h1&amp;gt;Lightbox Example&amp;lt;/h1&amp;gt;
     &amp;lt;p&amp;gt;Lorem &amp;lt;strong&amp;gt;ipsum dolor&amp;lt;/strong&amp;gt; sit amet. &amp;lt;/p&amp;gt;
&amp;lt;/div&amp;gt;
&lt;/pre&gt;
&lt;a name=&quot;5.2_Javascript&quot; id=&quot;5.2_Javascript&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;5.2 Javascript&lt;/span&gt;&lt;/h2&gt;
&lt;pre&gt;
window.dialog1 = new Nokia.LightBox({
     element: '#lightbox01',
     height: '80%',
     width: '80%',
     buttons: {
          &amp;quot;Yes&amp;quot;: function() {
               alert('yes');
          },
          &amp;quot;No&amp;quot;: function() {
               this.close();
          }
     },
     create: function() {
          //alert(&amp;quot;Lightbox 01: Create.&amp;quot;);
     },
     show: function() {
          //alert(&amp;quot;Lightbox 01: Show.&amp;quot;);
     }
});
&lt;/pre&gt;
&lt;a name=&quot;6_-_Nokia_WRT_Browser_Compatibility&quot; id=&quot;6_-_Nokia_WRT_Browser_Compatibility&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;6 - Nokia WRT Browser Compatibility&lt;/span&gt;&lt;/h1&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;table class=&quot;pbNotSortable&quot; cellspacing=&quot;1&quot; cellpadding=&quot;1&quot; width=&quot;300&quot; align=&quot;left&quot; style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 0px; border-top: rgb(211,211,211) 1px dotted; padding-left: 0px; font-size: 13px; padding-bottom: 0px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 0px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; border-collapse: collapse&quot;&gt;
        &lt;td class=&quot;sorttable_sorted_reverse&quot; style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 4px; border-top: rgb(211,211,211) 1px dotted; padding-left: 4px; font-weight: 400; font-size: 13px; padding-bottom: 2px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 2px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; background-color: rgb(255,255,255); text-align: left&quot;&gt;&lt;span id=&quot;sorttable_sortrevind&quot; style=&quot;border-top-width: 0px; padding-right: 0px; padding-left: 0px; border-left-width: 0px; font-size: 13px; float: left; border-bottom-width: 0px; padding-bottom: 0px; margin: 0px; vertical-align: baseline; padding-top: 0px; font-family: inherit; border-right-width: 0px&quot;&gt;▴&amp;nbsp;&lt;/span&gt;&amp;nbsp;&lt;/td&gt;
            &lt;td style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 4px; border-top: rgb(211,211,211) 1px dotted; padding-left: 4px; font-weight: 400; font-size: 13px; padding-bottom: 2px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 2px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; background-color: rgb(255,255,255); text-align: left&quot;&gt;&lt;strong&gt;S60 3.1&lt;/strong&gt;&lt;/td&gt;
            &lt;td style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 4px; border-top: rgb(211,211,211) 1px dotted; padding-left: 4px; font-weight: 400; font-size: 13px; padding-bottom: 2px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 2px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; background-color: rgb(255,255,255); text-align: left&quot;&gt;&lt;strong&gt;S60 3.2&lt;/strong&gt;&lt;/td&gt;
            &lt;td style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 4px; border-top: rgb(211,211,211) 1px dotted; padding-left: 4px; font-weight: 400; font-size: 13px; padding-bottom: 2px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 2px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; background-color: rgb(255,255,255); text-align: left&quot;&gt;&lt;strong&gt;S60 5.0&lt;/strong&gt;&lt;/td&gt;
            &lt;tr style=&quot;border-top-width: 0px; padding-right: 0px; padding-left: 0px; border-left-width: 0px; font-size: 13px; border-bottom-width: 0px; padding-bottom: 0px; margin: 0px; vertical-align: baseline; padding-top: 0px; font-family: inherit; border-right-width: 0px&quot;&gt;
            &lt;td style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 4px; border-top: rgb(211,211,211) 1px dotted; padding-left: 4px; font-weight: 400; font-size: 13px; padding-bottom: 2px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 2px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; background-color: rgb(255,255,255); text-align: left&quot;&gt;LightBox&lt;/td&gt;
            &lt;td bgcolor=&quot;#000000&quot; style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 4px; border-top: rgb(211,211,211) 1px dotted; padding-left: 4px; font-weight: 400; font-size: 13px; padding-bottom: 2px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 2px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; background-color: rgb(255,255,255); text-align: left&quot;&gt;&lt;span style=&quot;border-top-width: 0px; padding-right: 0px; padding-left: 0px; border-left-width: 0px; font-size: 13px; border-bottom-width: 0px; padding-bottom: 0px; margin: 0px; vertical-align: baseline; color: rgb(51,153,102); padding-top: 0px; font-family: inherit; border-right-width: 0px&quot;&gt;NO&lt;/span&gt;&lt;/td&gt;
            &lt;td bgcolor=&quot;#000000&quot; style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 4px; border-top: rgb(211,211,211) 1px dotted; padding-left: 4px; font-weight: 400; font-size: 13px; padding-bottom: 2px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 2px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; background-color: rgb(255,255,255); text-align: left&quot;&gt;&lt;span style=&quot;border-top-width: 0px; padding-right: 0px; padding-left: 0px; border-left-width: 0px; font-size: 13px; border-bottom-width: 0px; padding-bottom: 0px; margin: 0px; vertical-align: baseline; color: rgb(51,153,102); padding-top: 0px; font-family: inherit; border-right-width: 0px&quot;&gt;YES&amp;nbsp;&lt;/span&gt;&lt;/td&gt;
            &lt;td bgcolor=&quot;#000000&quot; style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 4px; border-top: rgb(211,211,211) 1px dotted; padding-left: 4px; font-weight: 400; font-size: 13px; padding-bottom: 2px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 2px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; background-color: rgb(255,255,255); text-align: left&quot;&gt;&lt;span style=&quot;border-top-width: 0px; padding-right: 0px; padding-left: 0px; border-left-width: 0px; font-size: 13px; border-bottom-width: 0px; padding-bottom: 0px; margin: 0px; vertical-align: baseline; color: rgb(51,153,102); padding-top: 0px; font-family: inherit; border-right-width: 0px&quot;&gt;YES&amp;nbsp;&lt;/span&gt;&lt;/td&gt;
        &lt;/tr&gt;
&lt;/table&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
</description>
			<pubDate>Wed, 18 Nov 2009 15:02:18 GMT</pubDate>			<dc:creator>Hkaliste</dc:creator>			<comments>http://wiki.forum.nokia.com/index.php/Talk:LightBox</comments>		</item>
		<item>
			<title>Radio Button</title>
			<link>http://wiki.forum.nokia.com/index.php/Radio_Button</link>
			<description>&lt;a name=&quot;Inheritance&quot; id=&quot;Inheritance&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;Inheritance&lt;/span&gt;&lt;/h1&gt;
&lt;pre class=&quot;text&quot; style=&quot;font-family:monospace;&quot;&gt;Nokia.Widget&lt;br /&gt;    |- Nokia.OptionBox&lt;br /&gt;        |- Nokia.RadioBox&lt;/pre&gt;
&lt;a name=&quot;1_-_Description&quot; id=&quot;1_-_Description&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;1 - Description&lt;/span&gt;&lt;/h1&gt;
&lt;p&gt;The Radio Button component enables the user to make a single selection within a group of vertically stacked, mutually exclusive radio buttoned text labels. 
&lt;/p&gt;&lt;p&gt;&lt;br /&gt; 
&lt;/p&gt;
&lt;a name=&quot;2_-_Visual_Design&quot; id=&quot;2_-_Visual_Design&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;2 - Visual Design&lt;/span&gt;&lt;/h1&gt;
&lt;p&gt;&lt;a href=&quot;/index.php/File:Radiobutton01.png&quot; class=&quot;image&quot; title=&quot;File:Radiobutton01.png&quot;&gt;&lt;img alt=&quot;File:Radiobutton01.png&quot; src=&quot;http://www.forum.nokia.com/piazza/wiki/images/9/9a/Radiobutton01.png&quot; width=&quot;141&quot; height=&quot;153&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;
&lt;a name=&quot;3_-_Component_Dependencies&quot; id=&quot;3_-_Component_Dependencies&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;3 - Component Dependencies&lt;/span&gt;&lt;/h1&gt;
&lt;a name=&quot;3.1_CSS&quot; id=&quot;3.1_CSS&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;3.1 CSS&lt;/span&gt;&lt;/h2&gt;
&lt;pre&gt;
&amp;lt;!-- Themeroller CSS --&amp;gt;
&amp;lt;link rel=&amp;quot;stylesheet&amp;quot; href=&amp;quot;themes/themeroller/&amp;lt;theme&amp;gt;/Themeroller.css&amp;quot; type=&amp;quot;text/css&amp;quot; media=&amp;quot;screen&amp;quot;&amp;gt;
&amp;lt;!-- Specific Theme/Resolution CSS --&amp;gt;
&amp;lt;link rel=&amp;quot;stylesheet&amp;quot; href=&amp;quot;/themes/nokia/ext-theme/&amp;lt;theme&amp;gt;/&amp;lt;resolution&amp;gt;/custom.css&amp;quot; type=&amp;quot;text/css&amp;quot; media=&amp;quot;screen&amp;quot;&amp;gt;
&lt;/pre&gt; 
&lt;a name=&quot;3.2_Javascript&quot; id=&quot;3.2_Javascript&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;3.2 Javascript&lt;/span&gt;&lt;/h2&gt;
&lt;pre&gt;
&amp;lt;!-- jQuery file --&amp;gt;
&amp;lt;script src=&amp;quot;/lib/jquery/jQuery.js&amp;quot; type=&amp;quot;text/javascript&amp;quot; charset=&amp;quot;utf-8&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;!-- Guarana file --&amp;gt;
&amp;lt;script src=&amp;quot;/lib/Guarana.js&amp;quot; type=&amp;quot;text/javascript&amp;quot; charset=&amp;quot;utf-8&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&lt;/pre&gt; 
&lt;a name=&quot;4_-_Functional_Specifications.2FRequirements&quot; id=&quot;4_-_Functional_Specifications.2FRequirements&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;4 - Functional Specifications/Requirements&lt;/span&gt;&lt;/h1&gt;
&lt;a name=&quot;4.1_-_Options&quot; id=&quot;4.1_-_Options&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;4.1 - Options&lt;/span&gt;&lt;/h2&gt;
&lt;ul&gt;&lt;li&gt;wrapper: String 
&lt;ul&gt;&lt;li&gt;Wrapper element for the component. 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;a name=&quot;4.2_-_Events_-_Callbacks&quot; id=&quot;4.2_-_Events_-_Callbacks&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;4.2 - Events - Callbacks&lt;/span&gt;&lt;/h2&gt;
&lt;ul&gt;&lt;li&gt;create: function() 
&lt;ul&gt;&lt;li&gt;Scope: [this.element] 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;check: function(event) 
&lt;ul&gt;&lt;li&gt;Scope: [this.element] 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;clearAll: function(event) 
&lt;ul&gt;&lt;li&gt;Scope: [this.element] 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;/ul&gt;
&lt;a name=&quot;4.3_-_Methods&quot; id=&quot;4.3_-_Methods&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;4.3 - Methods&lt;/span&gt;&lt;/h2&gt;
&lt;ul&gt;&lt;li&gt;check: function(event) 
&lt;ul&gt;&lt;li&gt;Performs a check in a specific item. 
&lt;/li&gt;&lt;li&gt;return [void] 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;clearAll: function() 
&lt;ul&gt;&lt;li&gt;Clears all items in the component. This method is used to set the component in its initial state. 
&lt;/li&gt;&lt;li&gt;return [void] 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;a name=&quot;4.4_-_Default_options&quot; id=&quot;4.4_-_Default_options&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;4.4 - Default options&lt;/span&gt;&lt;/h2&gt;
&lt;ul&gt;&lt;li&gt;wrapper: 'div' 
&lt;/li&gt;&lt;li&gt;disableLabelSelection: true 
&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;&lt;br /&gt;
&lt;/p&gt;&lt;p&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;a name=&quot;5_-_Component_Demo&quot; id=&quot;5_-_Component_Demo&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;5 - Component Demo&lt;/span&gt;&lt;/h1&gt;
&lt;a name=&quot;5.1_HTML&quot; id=&quot;5.1_HTML&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;5.1 HTML&lt;/span&gt;&lt;/h2&gt;
&lt;pre&gt;
&amp;lt;div id=&amp;quot;optiongroup&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;
&amp;lt;input type=&amp;quot;radio&amp;quot; name=&amp;quot;radio&amp;quot; value=&amp;quot;&amp;quot; id=&amp;quot;radio1&amp;quot; /&amp;gt;
&lt;/pre&gt; 
&lt;a name=&quot;5.2_Javascript&quot; id=&quot;5.2_Javascript&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;5.2 Javascript&lt;/span&gt;&lt;/h2&gt;
&lt;pre&gt;
var radio1 = new Nokia.RadioBox({
     element: '#radio1',
     label: 'testing radio 1',
     wrapper: 'div',
     create: function() {
          //alert('Radiobox: Create');
     },
     check: function(event) {
          //alert('Radiobox: Check', this, event);
     },
     uncheck: function(event) {
          //alert('Radiobox: Uncheck', this, event);
     },
     push: function(event) {
          //alert('Radiobox: Push', this, event);
     },
     clear: function(event) {
          //alert('Radiobox: Clear', this, event);
     }
});

var optionGroup = new Nokia.OptionGroup({
     element: '#optiongroup',
     title: 'Option Group 1'
});

optionGroup.addItem(radio1); 
&lt;/pre&gt; 
&lt;p&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;a name=&quot;6_-_Nokia_WRT_Browser_Compatibility&quot; id=&quot;6_-_Nokia_WRT_Browser_Compatibility&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;6 - Nokia WRT Browser Compatibility&lt;/span&gt;&lt;/h1&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;table class=&quot;pbNotSortable&quot; cellspacing=&quot;1&quot; cellpadding=&quot;1&quot; width=&quot;300&quot; align=&quot;left&quot; style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 0px; border-top: rgb(211,211,211) 1px dotted; padding-left: 0px; font-size: 13px; padding-bottom: 0px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 0px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; border-collapse: collapse&quot;&gt;
        &lt;tr style=&quot;border-top-width: 0px; padding-right: 0px; padding-left: 0px; border-left-width: 0px; font-size: 13px; border-bottom-width: 0px; padding-bottom: 0px; margin: 0px; vertical-align: baseline; padding-top: 0px; font-family: inherit; border-right-width: 0px&quot;&gt;
            &lt;td class=&quot;sorttable_sorted_reverse&quot; style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 4px; border-top: rgb(211,211,211) 1px dotted; padding-left: 4px; font-weight: 400; font-size: 13px; padding-bottom: 2px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 2px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; background-color: rgb(255,255,255); text-align: left&quot;&gt;&lt;span id=&quot;sorttable_sortrevind&quot; style=&quot;border-top-width: 0px; padding-right: 0px; padding-left: 0px; border-left-width: 0px; font-size: 13px; float: left; border-bottom-width: 0px; padding-bottom: 0px; margin: 0px; vertical-align: baseline; padding-top: 0px; font-family: inherit; border-right-width: 0px&quot;&gt;▴&amp;nbsp;&lt;/span&gt;&amp;nbsp;&lt;/td&gt;
            &lt;td style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 4px; border-top: rgb(211,211,211) 1px dotted; padding-left: 4px; font-weight: 400; font-size: 13px; padding-bottom: 2px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 2px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; background-color: rgb(255,255,255); text-align: left&quot;&gt;&lt;strong&gt;S60 3.1&lt;/strong&gt;&lt;/td&gt;
            &lt;td style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 4px; border-top: rgb(211,211,211) 1px dotted; padding-left: 4px; font-weight: 400; font-size: 13px; padding-bottom: 2px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 2px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; background-color: rgb(255,255,255); text-align: left&quot;&gt;&lt;strong&gt;S60 3.2&lt;/strong&gt;&lt;/td&gt;
            &lt;td style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 4px; border-top: rgb(211,211,211) 1px dotted; padding-left: 4px; font-weight: 400; font-size: 13px; padding-bottom: 2px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 2px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; background-color: rgb(255,255,255); text-align: left&quot;&gt;&lt;strong&gt;S60 5.0&lt;/strong&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style=&quot;border-top-width: 0px; padding-right: 0px; padding-left: 0px; border-left-width: 0px; font-size: 13px; border-bottom-width: 0px; padding-bottom: 0px; margin: 0px; vertical-align: baseline; padding-top: 0px; font-family: inherit; border-right-width: 0px&quot;&gt;
            &lt;td style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 4px; border-top: rgb(211,211,211) 1px dotted; padding-left: 4px; font-weight: 400; font-size: 13px; padding-bottom: 2px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 2px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; background-color: rgb(255,255,255); text-align: left&quot;&gt;Radio Button&lt;/td&gt;
            &lt;td bgcolor=&quot;#000000&quot; style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 4px; border-top: rgb(211,211,211) 1px dotted; padding-left: 4px; font-weight: 400; font-size: 13px; padding-bottom: 2px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 2px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; background-color: rgb(255,255,255); text-align: left&quot;&gt;&lt;span style=&quot;border-top-width: 0px; padding-right: 0px; padding-left: 0px; border-left-width: 0px; font-size: 13px; border-bottom-width: 0px; padding-bottom: 0px; margin: 0px; vertical-align: baseline; color: rgb(51,153,102); padding-top: 0px; font-family: inherit; border-right-width: 0px&quot;&gt;NO&amp;nbsp;&lt;/span&gt;&lt;/td&gt;
            &lt;td bgcolor=&quot;#000000&quot; style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 4px; border-top: rgb(211,211,211) 1px dotted; padding-left: 4px; font-weight: 400; font-size: 13px; padding-bottom: 2px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 2px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; background-color: rgb(255,255,255); text-align: left&quot;&gt;&lt;span style=&quot;border-top-width: 0px; padding-right: 0px; padding-left: 0px; border-left-width: 0px; font-size: 13px; border-bottom-width: 0px; padding-bottom: 0px; margin: 0px; vertical-align: baseline; color: rgb(51,153,102); padding-top: 0px; font-family: inherit; border-right-width: 0px&quot;&gt;YES&amp;nbsp;&lt;/span&gt;&lt;/td&gt;
            &lt;td bgcolor=&quot;#000000&quot; style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 4px; border-top: rgb(211,211,211) 1px dotted; padding-left: 4px; font-weight: 400; font-size: 13px; padding-bottom: 2px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 2px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; background-color: rgb(255,255,255); text-align: left&quot;&gt;&lt;span style=&quot;border-top-width: 0px; padding-right: 0px; padding-left: 0px; border-left-width: 0px; font-size: 13px; border-bottom-width: 0px; padding-bottom: 0px; margin: 0px; vertical-align: baseline; color: rgb(51,153,102); padding-top: 0px; font-family: inherit; border-right-width: 0px&quot;&gt;YES&amp;nbsp;&lt;/span&gt;&lt;/td&gt;
&lt;/table&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
</description>
			<pubDate>Wed, 18 Nov 2009 15:14:28 GMT</pubDate>			<dc:creator>Hkaliste</dc:creator>			<comments>http://wiki.forum.nokia.com/index.php/Talk:Radio_Button</comments>		</item>
		<item>
			<title>Busy Indicator</title>
			<link>http://wiki.forum.nokia.com/index.php/Busy_Indicator</link>
			<description>&lt;a name=&quot;Inheritance&quot; id=&quot;Inheritance&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;Inheritance&lt;/span&gt;&lt;/h1&gt;
&lt;pre class=&quot;text&quot; style=&quot;font-family:monospace;&quot;&gt;Nokia.Widget&lt;br /&gt;    |- Nokia.Busy&lt;/pre&gt;
&lt;a name=&quot;1_-_Description&quot; id=&quot;1_-_Description&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;1 - Description&lt;/span&gt;&lt;/h1&gt;
&lt;p&gt;An animation that&amp;nbsp;lets the user know&amp;nbsp;that the system is busy working on a user request. The Busy Indicator component&amp;nbsp;is used when an operation&amp;nbsp;is expected to&amp;nbsp;take more than 1 second, but the system is not able to predict exactly how long&amp;nbsp;it will take.
&lt;/p&gt;
&lt;a name=&quot;2_-_Visual_Design&quot; id=&quot;2_-_Visual_Design&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;2 - Visual Design&lt;/span&gt;&lt;/h1&gt;
&lt;p&gt;&lt;a href=&quot;/index.php/File:Busy01.png&quot; class=&quot;image&quot; title=&quot;File:Busy01.png&quot;&gt;&lt;img alt=&quot;File:Busy01.png&quot; src=&quot;http://www.forum.nokia.com/piazza/wiki/images/c/c1/Busy01.png&quot; width=&quot;176&quot; height=&quot;82&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;&lt;p&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;a name=&quot;3_-_Component_Dependencies&quot; id=&quot;3_-_Component_Dependencies&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;3 - Component Dependencies&lt;/span&gt;&lt;/h1&gt;
&lt;a name=&quot;3.1_CSS&quot; id=&quot;3.1_CSS&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;3.1 CSS&lt;/span&gt;&lt;/h2&gt;
&lt;pre&gt;
&amp;lt;!-- Themeroller CSS --&amp;gt;
&amp;lt;link rel=&amp;quot;stylesheet&amp;quot; href=&amp;quot;themes/themeroller/&amp;lt;theme&amp;gt;/Themeroller.css&amp;quot; type=&amp;quot;text/css&amp;quot; media=&amp;quot;screen&amp;quot;&amp;gt;
&amp;lt;!-- Specific Theme/Resolution CSS --&amp;gt;
&amp;lt;link rel=&amp;quot;stylesheet&amp;quot; href=&amp;quot;/themes/nokia/ext-theme/&amp;lt;theme&amp;gt;/&amp;lt;resolution&amp;gt;/custom.css&amp;quot; type=&amp;quot;text/css&amp;quot; media=&amp;quot;screen&amp;quot;&amp;gt;
&lt;/pre&gt; 
&lt;a name=&quot;3.2_Javascript&quot; id=&quot;3.2_Javascript&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;3.2 Javascript&lt;/span&gt;&lt;/h2&gt;
&lt;pre&gt;
&amp;lt;!-- jQuery file --&amp;gt;
&amp;lt;script src=&amp;quot;/lib/jquery/jQuery.js&amp;quot; type=&amp;quot;text/javascript&amp;quot; charset=&amp;quot;utf-8&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;!-- Guarana file --&amp;gt;
&amp;lt;script src=&amp;quot;/lib/Guarana.js&amp;quot; type=&amp;quot;text/javascript&amp;quot; charset=&amp;quot;utf-8&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&lt;/pre&gt; 
&lt;a name=&quot;4_-_Functional_Specifications.2FRequirements&quot; id=&quot;4_-_Functional_Specifications.2FRequirements&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;4 - Functional Specifications/Requirements&lt;/span&gt;&lt;/h1&gt;
&lt;a name=&quot;4.1_-_Options&quot; id=&quot;4.1_-_Options&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;4.1 - Options&lt;/span&gt;&lt;/h2&gt;
&lt;ul&gt;&lt;li&gt;element: 'selector' 
&lt;ul&gt;&lt;li&gt;jQuery selector or the DOM reference to become the container of the component. 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;autoOpen: boolean 
&lt;ul&gt;&lt;li&gt;Defines whether the component will be showed on creation or not. 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;image: string 
&lt;ul&gt;&lt;li&gt;The busy indication image path. 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;height: int 
&lt;ul&gt;&lt;li&gt;Defines the component height. 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;width: int 
&lt;ul&gt;&lt;li&gt;Defines the component width. 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;a name=&quot;4.2_-_Events_-_Callbacks&quot; id=&quot;4.2_-_Events_-_Callbacks&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;4.2 - Events - Callbacks&lt;/span&gt;&lt;/h2&gt;
&lt;ul&gt;&lt;li&gt;create: function() 
&lt;ul&gt;&lt;li&gt;Scope: [this.element] 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;destroy: function(event) 
&lt;ul&gt;&lt;li&gt;Scope: [this.element] 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;hide: function(event) 
&lt;ul&gt;&lt;li&gt;Scope: [this.element] 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;show: function(event) 
&lt;ul&gt;&lt;li&gt;Scope: [this.element] 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;a name=&quot;4.3_-_Methods&quot; id=&quot;4.3_-_Methods&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;4.3 - Methods&lt;/span&gt;&lt;/h2&gt;
&lt;ul&gt;&lt;li&gt; destroy: function() 
&lt;ul&gt;&lt;li&gt; Destroys the busy component. 
&lt;/li&gt;&lt;li&gt; return [int] 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt; hide: function(value) 
&lt;ul&gt;&lt;li&gt; Hides the busy component. 
&lt;/li&gt;&lt;li&gt; return [void] 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;/ul&gt;
&lt;ul&gt;&lt;li&gt; show: function() 
&lt;ul&gt;&lt;li&gt;Shows the busy component. 
&lt;/li&gt;&lt;li&gt;return [int] 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;a name=&quot;4.4-_Default_options&quot; id=&quot;4.4-_Default_options&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;4.4- Default options&lt;/span&gt;&lt;/h2&gt;
&lt;ul&gt;&lt;li&gt; autoOpen: true, 
&lt;/li&gt;&lt;li&gt; overflow: true, 
&lt;/li&gt;&lt;li&gt; height: 108, 
&lt;/li&gt;&lt;li&gt; width: 108, 
&lt;/li&gt;&lt;li&gt; loaderText: false 
&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;a name=&quot;5_-_Component_Demo&quot; id=&quot;5_-_Component_Demo&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;5 - Component Demo&lt;/span&gt;&lt;/h1&gt;
&lt;a name=&quot;5.1_HTML&quot; id=&quot;5.1_HTML&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;5.1 HTML&lt;/span&gt;&lt;/h2&gt;
&lt;pre&gt;
&amp;lt;div id=&amp;quot;busy01&amp;quot;&amp;gt; Div 01 &amp;lt;/div&amp;gt;
&lt;/pre&gt;
&lt;a name=&quot;5.2_Javascript&quot; id=&quot;5.2_Javascript&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;5.2 Javascript&lt;/span&gt;&lt;/h2&gt;
&lt;pre&gt;
window.busy1 = new Nokia.Busy({
     element: '#busy01',
     image: 'themes/nokia/images/busyindicator.gif',
     height: 107,
     width: 108,
     autoOpen: false,
     create: function() {
          //alert(&amp;quot;Busy: Create.&amp;quot;);
     },
     show: function() {
          //alert(&amp;quot;Busy: Show.&amp;quot;);
     }
});
&lt;/pre&gt;
&lt;a name=&quot;6_-_Nokia_WRT_Browser_Compatibility&quot; id=&quot;6_-_Nokia_WRT_Browser_Compatibility&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;6 - Nokia WRT Browser Compatibility&lt;/span&gt;&lt;/h1&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;table cellspacing=&quot;1&quot; cellpadding=&quot;1&quot; align=&quot;left&quot; width=&quot;300&quot; class=&quot;pbNotSortable&quot; style=&quot;border: 1px dotted rgb(211, 211, 211); margin: 0px; padding: 0px; font-size: 100%; vertical-align: baseline; font-family: inherit; border-collapse: collapse;&quot;&gt;
        &lt;tr style=&quot;border-width: 0px; margin: 0px; padding: 0px; font-size: 100%; vertical-align: baseline; font-family: inherit;&quot;&gt;
&lt;td class=&quot;sorttable_sorted_reverse&quot; style=&quot;border: 1px dotted rgb(211, 211, 211); margin: 0px; padding: 2px 4px; font-weight: 400; font-size: 100%; vertical-align: baseline; font-family: inherit; background-color: rgb(255, 255, 255); text-align: left;&quot;&gt;&lt;span id=&quot;sorttable_sortrevind&quot; style=&quot;border-width: 0px; margin: 0px; padding: 0px; font-size: 100%; float: left; vertical-align: baseline; font-family: inherit;&quot;&gt;▴&amp;nbsp;&lt;/span&gt;&amp;nbsp;&lt;/td&gt;
&lt;td style=&quot;border: 1px dotted rgb(211, 211, 211); margin: 0px; padding: 2px 4px; font-weight: 400; font-size: 100%; vertical-align: baseline; font-family: inherit; background-color: rgb(255, 255, 255); text-align: left;&quot;&gt;&lt;strong&gt;S60 3.1&lt;/strong&gt;&lt;/td&gt;
&lt;td style=&quot;border: 1px dotted rgb(211, 211, 211); margin: 0px; padding: 2px 4px; font-weight: 400; font-size: 100%; vertical-align: baseline; font-family: inherit; background-color: rgb(255, 255, 255); text-align: left;&quot;&gt;&lt;strong&gt;S60 3.2&lt;/strong&gt;&lt;/td&gt;
&lt;td style=&quot;border: 1px dotted rgb(211, 211, 211); margin: 0px; padding: 2px 4px; font-weight: 400; font-size: 100%; vertical-align: baseline; font-family: inherit; background-color: rgb(255, 255, 255); text-align: left;&quot;&gt;&lt;strong&gt;S60 5.0&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;border-width: 0px; margin: 0px; padding: 0px; font-size: 100%; vertical-align: baseline; font-family: inherit;&quot;&gt;
&lt;td style=&quot;border: 1px dotted rgb(211, 211, 211); margin: 0px; padding: 2px 4px; font-weight: 400; font-size: 100%; vertical-align: baseline; font-family: inherit; background-color: rgb(255, 255, 255); text-align: left;&quot;&gt;Accordion&lt;/td&gt;
&lt;td bgcolor=&quot;#000000&quot; style=&quot;border: 1px dotted rgb(211, 211, 211); margin: 0px; padding: 2px 4px; font-weight: 400; font-size: 100%; vertical-align: baseline; font-family: inherit; background-color: rgb(255, 255, 255); text-align: left;&quot;&gt;&lt;span style=&quot;border-width: 0px; margin: 0px; padding: 0px; font-size: 100%; vertical-align: baseline; color: rgb(51, 153, 102); font-family: inherit;&quot;&gt;YES&amp;nbsp;&lt;/span&gt;&lt;/td&gt;
&lt;td bgcolor=&quot;#000000&quot; style=&quot;border: 1px dotted rgb(211, 211, 211); margin: 0px; padding: 2px 4px; font-weight: 400; font-size: 100%; vertical-align: baseline; font-family: inherit; background-color: rgb(255, 255, 255); text-align: left;&quot;&gt;&lt;span style=&quot;border-width: 0px; margin: 0px; padding: 0px; font-size: 100%; vertical-align: baseline; color: rgb(51, 153, 102); font-family: inherit;&quot;&gt;YES&amp;nbsp;&lt;/span&gt;&lt;/td&gt;
&lt;td bgcolor=&quot;#000000&quot; style=&quot;border: 1px dotted rgb(211, 211, 211); margin: 0px; padding: 2px 4px; font-weight: 400; font-size: 100%; vertical-align: baseline; font-family: inherit; background-color: rgb(255, 255, 255); text-align: left;&quot;&gt;&lt;span style=&quot;border-width: 0px; margin: 0px; padding: 0px; font-size: 100%; vertical-align: baseline; color: rgb(51, 153, 102); font-family: inherit;&quot;&gt;YES&amp;nbsp;&lt;/span&gt;&lt;/td&gt;&lt;/table&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
</description>
			<pubDate>Wed, 18 Nov 2009 14:42:30 GMT</pubDate>			<dc:creator>Hkaliste</dc:creator>			<comments>http://wiki.forum.nokia.com/index.php/Talk:Busy_Indicator</comments>		</item>
		<item>
			<title>Date</title>
			<link>http://wiki.forum.nokia.com/index.php/Date</link>
			<description>&lt;a name=&quot;Inheritance&quot; id=&quot;Inheritance&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;Inheritance&lt;/span&gt;&lt;/h1&gt;
&lt;pre class=&quot;text&quot; style=&quot;font-family:monospace;&quot;&gt;Nokia.Widget&lt;br /&gt;    | - Nokia.Date&lt;/pre&gt;
&lt;a name=&quot;1_-_Description&quot; id=&quot;1_-_Description&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;1 - Description&lt;/span&gt;&lt;/h1&gt;
&lt;p&gt;The most popular use of this component is a form where one of the fields is a date. Such forms may ask for a birth date, friends' birthdays, or even a date for an appointment. The Date component will display three fields, day, month, and year. The developer can choose the order of the fields. The user will input the date in the fields.
&lt;/p&gt;&lt;p&gt;&lt;br /&gt; 
&lt;/p&gt;
&lt;a name=&quot;2_-_Visual_Design&quot; id=&quot;2_-_Visual_Design&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;2 - Visual Design&lt;/span&gt;&lt;/h1&gt;
&lt;p&gt;&lt;a href=&quot;/index.php/File:Datepicker01.png&quot; class=&quot;image&quot; title=&quot;File:Datepicker01.png&quot;&gt;&lt;img alt=&quot;File:Datepicker01.png&quot; src=&quot;http://www.forum.nokia.com/piazza/wiki/images/0/0d/Datepicker01.png&quot; width=&quot;193&quot; height=&quot;194&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;
&lt;a name=&quot;3_-_Component_Dependencies&quot; id=&quot;3_-_Component_Dependencies&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;3 - Component Dependencies&lt;/span&gt;&lt;/h1&gt;
&lt;a name=&quot;3.1_CSS&quot; id=&quot;3.1_CSS&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;3.1 CSS&lt;/span&gt;&lt;/h2&gt;
&lt;pre&gt;
&amp;lt;!-- Themeroller CSS --&amp;gt;
&amp;lt;link rel=&amp;quot;stylesheet&amp;quot; href=&amp;quot;themes/themeroller/&amp;lt;theme&amp;gt;/Themeroller.css&amp;quot; type=&amp;quot;text/css&amp;quot; media=&amp;quot;screen&amp;quot;&amp;gt;
&amp;lt;!-- Specific Theme/Resolution CSS --&amp;gt;
&amp;lt;link rel=&amp;quot;stylesheet&amp;quot; href=&amp;quot;/themes/nokia/ext-theme/&amp;lt;theme&amp;gt;/&amp;lt;resolution&amp;gt;/custom.css&amp;quot; type=&amp;quot;text/css&amp;quot; media=&amp;quot;screen&amp;quot;&amp;gt;
&lt;/pre&gt; 
&lt;p&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;a name=&quot;3.2_Javascript&quot; id=&quot;3.2_Javascript&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;3.2 Javascript&lt;/span&gt;&lt;/h2&gt;
&lt;pre&gt;
&amp;lt;!-- jQuery file --&amp;gt;
&amp;lt;script src=&amp;quot;/lib/jquery/jQuery.js&amp;quot; type=&amp;quot;text/javascript&amp;quot; charset=&amp;quot;utf-8&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;!-- Guarana file --&amp;gt;
&amp;lt;script src=&amp;quot;/lib/Guarana.js&amp;quot; type=&amp;quot;text/javascript&amp;quot; charset=&amp;quot;utf-8&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&lt;/pre&gt; 
&lt;a name=&quot;4_-_Functional_Specifications.2FRequirements&quot; id=&quot;4_-_Functional_Specifications.2FRequirements&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;4 - Functional Specifications/Requirements&lt;/span&gt;&lt;/h1&gt;
&lt;a name=&quot;4.1_-_Options&quot; id=&quot;4.1_-_Options&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;4.1 - Options&lt;/span&gt;&lt;/h2&gt;
&lt;ul&gt;&lt;li&gt;element: 'selector' 
&lt;ul&gt;&lt;li&gt;jQuery selector or the DOM reference to become the container of the component. 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;format: String 
&lt;ul&gt;&lt;li&gt;Defines the date format used by the component. 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;title: String 
&lt;ul&gt;&lt;li&gt;Defines the title used by the component. 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;yearRange: int 
&lt;ul&gt;&lt;li&gt;Defines the range of years used by the component. 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;i18n: String 
&lt;ul&gt;&lt;li&gt;Defines the internationalisation. 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;setDateDelay: int 
&lt;ul&gt;&lt;li&gt;Defines the time used in component interaction. 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;roundedCorners: boolean 
&lt;ul&gt;&lt;li&gt;Defines whether the component has rounded corners. 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;active: Class 
&lt;ul&gt;&lt;li&gt;Defines the CSS class used when active. 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;monthNames: Object[] 
&lt;ul&gt;&lt;li&gt;A list of month names. 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;monthNamesShort: Object[] 
&lt;ul&gt;&lt;li&gt;A list of month names in short mode. 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;dayNames: Object[] 
&lt;ul&gt;&lt;li&gt;A list of day names. 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;dayNamesShort: Object[] 
&lt;ul&gt;&lt;li&gt;A list of day names in short mode. 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;a name=&quot;4.2_-_Events_-_Callbacks&quot; id=&quot;4.2_-_Events_-_Callbacks&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;4.2 - Events - Callbacks&lt;/span&gt;&lt;/h2&gt;
&lt;ul&gt;&lt;li&gt;create: function() 
&lt;ul&gt;&lt;li&gt;Scope: [this.element] 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;setDay: function(day) 
&lt;ul&gt;&lt;li&gt;Scope: [this.element] 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;setMonth: function(month) 
&lt;ul&gt;&lt;li&gt;Scope: [this.element]  
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;setYear: function(year) 
&lt;ul&gt;&lt;li&gt;Scope: [this.element] 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;setDate: function(date) 
&lt;ul&gt;&lt;li&gt;Scope: [this.element] 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;/ul&gt;
&lt;a name=&quot;4.3_-_Methods&quot; id=&quot;4.3_-_Methods&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;4.3 - Methods&lt;/span&gt;&lt;/h2&gt;
&lt;ul&gt;&lt;li&gt;getDate: function() 
&lt;ul&gt;&lt;li&gt;Returns the component date. 
&lt;/li&gt;&lt;li&gt;return [jQuery collection] 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;formatDate: function(format, date) 
&lt;ul&gt;&lt;li&gt;Formats the date according to a specific format. 
&lt;/li&gt;&lt;li&gt;return [jQuery collection]  
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;setDay: function(day) 
&lt;ul&gt;&lt;li&gt;Sets the day property. 
&lt;/li&gt;&lt;li&gt;return [void] 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;setMonth: function(month) 
&lt;ul&gt;&lt;li&gt;Sets the month property. 
&lt;/li&gt;&lt;li&gt;return [void] 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;setYear: function(year) 
&lt;ul&gt;&lt;li&gt;Sets the year property. 
&lt;/li&gt;&lt;li&gt;return [int] 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;setDate: function(date) 
&lt;ul&gt;&lt;li&gt;Sets the date property. 
&lt;/li&gt;&lt;li&gt;return [void] 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;&lt;br /&gt; 
&lt;/p&gt;
&lt;a name=&quot;4.4-_Default_options&quot; id=&quot;4.4-_Default_options&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;4.4- Default options&lt;/span&gt;&lt;/h2&gt;
&lt;ul&gt;&lt;li&gt;element: 'body', 
&lt;/li&gt;&lt;li&gt;format: 'dd/mm/yy', 
&lt;/li&gt;&lt;li&gt;title: 'Pick a date', 
&lt;/li&gt;&lt;li&gt;yearRange: 10, 
&lt;/li&gt;&lt;li&gt;i18n: &lt;i&gt;, &lt;/i&gt;
&lt;/li&gt;&lt;li&gt;setDateDelay: 800, 
&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;a name=&quot;5_-_Component_Demo&quot; id=&quot;5_-_Component_Demo&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;5 - Component Demo&lt;/span&gt;&lt;/h1&gt;
&lt;a name=&quot;5.1_HTML&quot; id=&quot;5.1_HTML&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;5.1 HTML&lt;/span&gt;&lt;/h2&gt;
&lt;pre&gt;
&amp;lt;div id=&amp;quot;datepicker&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;
&lt;/pre&gt;
&lt;a name=&quot;5.2_Javascript&quot; id=&quot;5.2_Javascript&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;5.2 Javascript&lt;/span&gt;&lt;/h2&gt;
&lt;pre&gt;
var datepicker = new Nokia.DatePicker({
     i18n: 'pt-BR',
     element: '#datepicker',
     yearRange: 5,
     roundedCorners: true,
     create: function() {
          //alert('Datepicker: created', this);
     },
     setDay: function(day) {
          //alert('Datepicker: setDay', this, day);
     },
     setMonth: function(month) {
          //alert('Datepicker: setMonth', this, month);
     },
     setYear: function(year) {
          //alert('Datepicker: setYear', this, year);
     },
     setDate: function(date) {
          //alert('Datepicker: setDate', this, date);
     }
};
&lt;/pre&gt; 
&lt;a name=&quot;6_-_Nokia_WRT_Browser_Compatibility:&quot; id=&quot;6_-_Nokia_WRT_Browser_Compatibility:&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;6 - Nokia WRT Browser Compatibility:&lt;/span&gt;&lt;/h1&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;table class=&quot;pbNotSortable&quot; cellspacing=&quot;1&quot; cellpadding=&quot;1&quot; width=&quot;300&quot; align=&quot;left&quot; style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 0px; border-top: rgb(211,211,211) 1px dotted; padding-left: 0px; font-size: 13px; padding-bottom: 0px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 0px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; border-collapse: collapse&quot;&gt;
          &lt;tr style=&quot;border-top-width: 0px; padding-right: 0px; padding-left: 0px; border-left-width: 0px; font-size: 13px; border-bottom-width: 0px; padding-bottom: 0px; margin: 0px; vertical-align: baseline; padding-top: 0px; font-family: inherit; border-right-width: 0px&quot;&gt;
            &lt;td class=&quot;sorttable_sorted_reverse&quot; style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 4px; border-top: rgb(211,211,211) 1px dotted; padding-left: 4px; font-weight: 400; font-size: 13px; padding-bottom: 2px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 2px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; background-color: rgb(255,255,255); text-align: left&quot;&gt;&lt;span id=&quot;sorttable_sortrevind&quot; style=&quot;border-top-width: 0px; padding-right: 0px; padding-left: 0px; border-left-width: 0px; font-size: 13px; float: left; border-bottom-width: 0px; padding-bottom: 0px; margin: 0px; vertical-align: baseline; padding-top: 0px; font-family: inherit; border-right-width: 0px&quot;&gt;▴&amp;nbsp;&lt;/span&gt;&amp;nbsp;&lt;/td&gt;
            &lt;td style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 4px; border-top: rgb(211,211,211) 1px dotted; padding-left: 4px; font-weight: 400; font-size: 13px; padding-bottom: 2px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 2px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; background-color: rgb(255,255,255); text-align: left&quot;&gt;&lt;strong&gt;S60 3.1&lt;/strong&gt;&lt;/td&gt;
            &lt;td style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 4px; border-top: rgb(211,211,211) 1px dotted; padding-left: 4px; font-weight: 400; font-size: 13px; padding-bottom: 2px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 2px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; background-color: rgb(255,255,255); text-align: left&quot;&gt;&lt;strong&gt;S60 3.2&lt;/strong&gt;&lt;/td&gt;
            &lt;td style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 4px; border-top: rgb(211,211,211) 1px dotted; padding-left: 4px; font-weight: 400; font-size: 13px; padding-bottom: 2px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 2px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; background-color: rgb(255,255,255); text-align: left&quot;&gt;&lt;strong&gt;S60 5.0&lt;/strong&gt;&lt;/td&gt;
        &lt;/tr&gt;&lt;tr style=&quot;border-top-width: 0px; padding-right: 0px; padding-left: 0px; border-left-width: 0px; font-size: 13px; border-bottom-width: 0px; padding-bottom: 0px; margin: 0px; vertical-align: baseline; padding-top: 0px; font-family: inherit; border-right-width: 0px&quot;&gt;
            &lt;td style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 4px; border-top: rgb(211,211,211) 1px dotted; padding-left: 4px; font-weight: 400; font-size: 13px; padding-bottom: 2px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 2px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; background-color: rgb(255,255,255); text-align: left&quot;&gt;Date&lt;/td&gt;
            &lt;td bgcolor=&quot;#000000&quot; style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 4px; border-top: rgb(211,211,211) 1px dotted; padding-left: 4px; font-weight: 400; font-size: 13px; padding-bottom: 2px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 2px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; background-color: rgb(255,255,255); text-align: left&quot;&gt;&lt;span style=&quot;border-top-width: 0px; padding-right: 0px; padding-left: 0px; border-left-width: 0px; font-size: 13px; border-bottom-width: 0px; padding-bottom: 0px; margin: 0px; vertical-align: baseline; color: rgb(51,153,102); padding-top: 0px; font-family: inherit; border-right-width: 0px&quot;&gt;NO&amp;nbsp;&lt;/span&gt;&lt;/td&gt;
            &lt;td bgcolor=&quot;#000000&quot; style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 4px; border-top: rgb(211,211,211) 1px dotted; padding-left: 4px; font-weight: 400; font-size: 13px; padding-bottom: 2px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 2px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; background-color: rgb(255,255,255); text-align: left&quot;&gt;&lt;span style=&quot;border-top-width: 0px; padding-right: 0px; padding-left: 0px; border-left-width: 0px; font-size: 13px; border-bottom-width: 0px; padding-bottom: 0px; margin: 0px; vertical-align: baseline; color: rgb(51,153,102); padding-top: 0px; font-family: inherit; border-right-width: 0px&quot;&gt;YES&amp;nbsp;&lt;/span&gt;&lt;/td&gt;
            &lt;td bgcolor=&quot;#000000&quot; style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 4px; border-top: rgb(211,211,211) 1px dotted; padding-left: 4px; font-weight: 400; font-size: 13px; padding-bottom: 2px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 2px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; background-color: rgb(255,255,255); text-align: left&quot;&gt;&lt;span style=&quot;border-top-width: 0px; padding-right: 0px; padding-left: 0px; border-left-width: 0px; font-size: 13px; border-bottom-width: 0px; padding-bottom: 0px; margin: 0px; vertical-align: baseline; color: rgb(51,153,102); padding-top: 0px; font-family: inherit; border-right-width: 0px&quot;&gt;YES&amp;nbsp;&lt;/span&gt;&lt;/td&gt;
            &lt;/table&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
</description>
			<pubDate>Wed, 18 Nov 2009 14:52:07 GMT</pubDate>			<dc:creator>Hkaliste</dc:creator>			<comments>http://wiki.forum.nokia.com/index.php/Talk:Date</comments>		</item>
		<item>
			<title>Option Box</title>
			<link>http://wiki.forum.nokia.com/index.php/Option_Box</link>
			<description>&lt;a name=&quot;Inheritance&quot; id=&quot;Inheritance&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;Inheritance&lt;/span&gt;&lt;/h1&gt;
&lt;pre class=&quot;text&quot; style=&quot;font-family:monospace;&quot;&gt;Nokia.Widget&lt;br /&gt;    |- Nokia.OptionBox&lt;/pre&gt;
&lt;a name=&quot;1_-_Description&quot; id=&quot;1_-_Description&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;1 - Description&lt;/span&gt;&lt;/h1&gt;
&lt;p&gt;This is the basic class for &lt;a href=&quot;/index.php/Checkbox&quot; title=&quot;Checkbox&quot;&gt;Checkbox&lt;/a&gt; and &lt;a href=&quot;/index.php/Radio_Button&quot; title=&quot;Radio Button&quot;&gt;Radio Button&lt;/a&gt; Components.
&lt;/p&gt;
&lt;a name=&quot;2_-_Visual_Design&quot; id=&quot;2_-_Visual_Design&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;2 - Visual Design&lt;/span&gt;&lt;/h1&gt;
&lt;p&gt;Not Applicable for this component.
&lt;/p&gt;&lt;p&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;a name=&quot;3_-_Component_Dependencies&quot; id=&quot;3_-_Component_Dependencies&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;3 - Component Dependencies&lt;/span&gt;&lt;/h1&gt;
&lt;a name=&quot;3.1_CSS&quot; id=&quot;3.1_CSS&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;3.1 CSS&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;Not Applicable for this component.
&lt;/p&gt;&lt;p&gt;&lt;br /&gt; 
&lt;/p&gt;
&lt;a name=&quot;3.2_Javascript&quot; id=&quot;3.2_Javascript&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;3.2 Javascript&lt;/span&gt;&lt;/h2&gt;
&lt;pre&gt;
&amp;lt;!-- jQuery file --&amp;gt;
&amp;lt;script src=&amp;quot;/lib/jquery/jQuery.js&amp;quot; type=&amp;quot;text/javascript&amp;quot; charset=&amp;quot;utf-8&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;!-- Guarana file --&amp;gt;
&amp;lt;script src=&amp;quot;/lib/Guarana.js&amp;quot; type=&amp;quot;text/javascript&amp;quot; charset=&amp;quot;utf-8&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&lt;/pre&gt; 
&lt;p&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;a name=&quot;4_-_Functional_Specifications.2FRequirements&quot; id=&quot;4_-_Functional_Specifications.2FRequirements&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;4 - Functional Specifications/Requirements&lt;/span&gt;&lt;/h1&gt;
&lt;a name=&quot;4.1_-_Options&quot; id=&quot;4.1_-_Options&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;4.1 - Options&lt;/span&gt;&lt;/h2&gt;
&lt;ul&gt;&lt;li&gt;checked: boolean 
&lt;ul&gt;&lt;li&gt;Defines if the component will be created in checked state. 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;disableLabelSelection: boolean 
&lt;ul&gt;&lt;li&gt;Defines that the component label will be not selectable. 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;label: String 
&lt;ul&gt;&lt;li&gt;Defines the Label for the component. 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;wrapper: String 
&lt;ul&gt;&lt;li&gt;Wrapper element for the component. 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;a name=&quot;4.2_-_Events_-_Callbacks&quot; id=&quot;4.2_-_Events_-_Callbacks&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;4.2 - Events - Callbacks&lt;/span&gt;&lt;/h2&gt;
&lt;ul&gt;&lt;li&gt;check: function() 
&lt;ul&gt;&lt;li&gt;Scope: [this.element] 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;unckeck: function() 
&lt;ul&gt;&lt;li&gt;Scope: [this.element] 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;a name=&quot;4.3_-_Methods&quot; id=&quot;4.3_-_Methods&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;4.3 - Methods&lt;/span&gt;&lt;/h2&gt;
&lt;ul&gt;&lt;li&gt;isChecked: function() 
&lt;ul&gt;&lt;li&gt;Checks if component is in checked state. 
&lt;/li&gt;&lt;li&gt;return [void] 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;check: function(event) 
&lt;ul&gt;&lt;li&gt;Performs check. 
&lt;/li&gt;&lt;li&gt;return [void] 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;unckeck: function(event) 
&lt;ul&gt;&lt;li&gt;Performs uncheck. 
&lt;/li&gt;&lt;li&gt;return [void] 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;/ul&gt;
&lt;a name=&quot;4.4_-_Default_options&quot; id=&quot;4.4_-_Default_options&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;4.4 - Default options&lt;/span&gt;&lt;/h2&gt;
&lt;ul&gt;&lt;li&gt;wrapper: 'div', 
&lt;/li&gt;&lt;li&gt;disableLabelSelection: true, 
&lt;/li&gt;&lt;li&gt;checked: false 
&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;a name=&quot;5_-_Component_Demo&quot; id=&quot;5_-_Component_Demo&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;5 - Component Demo&lt;/span&gt;&lt;/h1&gt;
&lt;a name=&quot;5.1_HTML&quot; id=&quot;5.1_HTML&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;5.1 HTML&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;Not Applicable for this component.
&lt;/p&gt;&lt;p&gt;&lt;br /&gt; 
&lt;/p&gt;
&lt;a name=&quot;5.2_Javascript&quot; id=&quot;5.2_Javascript&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;5.2 Javascript&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;Not Applicable for this component. 
&lt;/p&gt;&lt;p&gt;&lt;br /&gt; 
&lt;/p&gt;
&lt;a name=&quot;6_-_Nokia_WRT_Browser_Compatibility&quot; id=&quot;6_-_Nokia_WRT_Browser_Compatibility&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;6 - Nokia WRT Browser Compatibility&lt;/span&gt;&lt;/h1&gt;
&lt;p&gt;Not Applicable for this component.
&lt;/p&gt;</description>
			<pubDate>Wed, 18 Nov 2009 15:46:08 GMT</pubDate>			<dc:creator>Hkaliste</dc:creator>			<comments>http://wiki.forum.nokia.com/index.php/Talk:Option_Box</comments>		</item>
		<item>
			<title>Scroll</title>
			<link>http://wiki.forum.nokia.com/index.php/Scroll</link>
			<description>&lt;p&gt;&lt;br /&gt;
&lt;/p&gt;&lt;p&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;a name=&quot;Inheritance&quot; id=&quot;Inheritance&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;Inheritance&lt;/span&gt;&lt;/h1&gt;
&lt;pre class=&quot;text&quot; style=&quot;font-family:monospace;&quot;&gt;Nokia.Widget&lt;br /&gt;    |- Nokia.Scroll&lt;/pre&gt;
&lt;a name=&quot;1_-_Description&quot; id=&quot;1_-_Description&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;1 - Description&lt;/span&gt;&lt;/h1&gt;
&lt;p&gt;The Scroll component is used as a visual feedback to indicate the existence of more content beyond the screen. 
&lt;/p&gt;&lt;p&gt;&lt;br /&gt; 
&lt;/p&gt;
&lt;a name=&quot;2_-_Visual_Design&quot; id=&quot;2_-_Visual_Design&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;2 - Visual Design&lt;/span&gt;&lt;/h1&gt;
&lt;p&gt;&lt;a href=&quot;/index.php/File:Scroll02.png&quot; class=&quot;image&quot; title=&quot;File:Scroll02.png&quot;&gt;&lt;img alt=&quot;File:Scroll02.png&quot; src=&quot;http://www.forum.nokia.com/piazza/wiki/images/2/25/Scroll02.png&quot; width=&quot;230&quot; height=&quot;438&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;/index.php/File:Scroll04.png&quot; class=&quot;image&quot; title=&quot;File:Scroll04.png&quot;&gt;&lt;img alt=&quot;File:Scroll04.png&quot; src=&quot;http://www.forum.nokia.com/piazza/wiki/images/8/85/Scroll04.png&quot; width=&quot;230&quot; height=&quot;438&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;a name=&quot;3_-_Component_Dependencies&quot; id=&quot;3_-_Component_Dependencies&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;3 - Component Dependencies&lt;/span&gt;&lt;/h1&gt;
&lt;a name=&quot;3.1_CSS&quot; id=&quot;3.1_CSS&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;3.1 CSS&lt;/span&gt;&lt;/h2&gt;
&lt;pre&gt;
&amp;lt;!-- Themeroller CSS --&amp;gt;
&amp;lt;link rel=&amp;quot;stylesheet&amp;quot; href=&amp;quot;themes/themeroller/&amp;lt;theme&amp;gt;/Themeroller.css&amp;quot; type=&amp;quot;text/css&amp;quot; media=&amp;quot;screen&amp;quot;&amp;gt;
&amp;lt;!-- Specific Theme/Resolution CSS --&amp;gt;
&amp;lt;link rel=&amp;quot;stylesheet&amp;quot; href=&amp;quot;/themes/nokia/ext-theme/&amp;lt;theme&amp;gt;/&amp;lt;resolution&amp;gt;/custom.css&amp;quot; type=&amp;quot;text/css&amp;quot; media=&amp;quot;screen&amp;quot;&amp;gt;
&lt;/pre&gt; 
&lt;a name=&quot;3.2_Javascript&quot; id=&quot;3.2_Javascript&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;3.2 Javascript&lt;/span&gt;&lt;/h2&gt;
&lt;pre&gt;
&amp;lt;!-- jQuery file --&amp;gt;
&amp;lt;script src=&amp;quot;/lib/jquery/jQuery.js&amp;quot; type=&amp;quot;text/javascript&amp;quot; charset=&amp;quot;utf-8&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;!-- Guarana file --&amp;gt;
&amp;lt;script src=&amp;quot;/lib/Guarana.js&amp;quot; type=&amp;quot;text/javascript&amp;quot; charset=&amp;quot;utf-8&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&lt;/pre&gt; 
&lt;p&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;a name=&quot;4_-_Functional_Specifications.2FRequirements&quot; id=&quot;4_-_Functional_Specifications.2FRequirements&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;4 - Functional Specifications/Requirements&lt;/span&gt;&lt;/h1&gt;
&lt;a name=&quot;4.1_-_Options:&quot; id=&quot;4.1_-_Options:&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;4.1 - Options:&lt;/span&gt;&lt;/h2&gt;
&lt;ul&gt;&lt;li&gt;scrollBar: boolean 
&lt;ul&gt;&lt;li&gt;Defines whether a traditional scrollbar is used by the component. 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;showArrows: boolean 
&lt;ul&gt;&lt;li&gt;Defines whether arrows are used by the component. 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;bottomImage: boolean 
&lt;ul&gt;&lt;li&gt;Defines whether the bottom image indication is used. 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;duration: boolean 
&lt;ul&gt;&lt;li&gt;Defines the duration of scroll activity. 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;increase 
&lt;ul&gt;&lt;li&gt;Defines the increase of scroll activity. This option is used in scroll speed calculation. 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;a name=&quot;4.2_-_Events_-_Callbacks&quot; id=&quot;4.2_-_Events_-_Callbacks&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;4.2 - Events - Callbacks&lt;/span&gt;&lt;/h2&gt;
&lt;ul&gt;&lt;li&gt;create: function() 
&lt;ul&gt;&lt;li&gt;Scope: [this.element] 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;scroll: function() 
&lt;ul&gt;&lt;li&gt;Scope: [this.element]  
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;a name=&quot;4.3_-_Methods:&quot; id=&quot;4.3_-_Methods:&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;4.3 - Methods:&lt;/span&gt;&lt;/h2&gt;
&lt;ul&gt;&lt;li&gt;scroll: function(direction, callback)  
&lt;ul&gt;&lt;li&gt;Apply scroll on a specific direction 
&lt;/li&gt;&lt;li&gt;Return nothing  
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;/ul&gt;
&lt;a name=&quot;4.4_-_Default_options&quot; id=&quot;4.4_-_Default_options&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;4.4 - Default options&lt;/span&gt;&lt;/h2&gt;
&lt;ul&gt;&lt;li&gt;increase: 100, 
&lt;/li&gt;&lt;li&gt;duration: 200, 
&lt;/li&gt;&lt;li&gt;scrollBar: true, 
&lt;/li&gt;&lt;li&gt;showArrows: false, 
&lt;/li&gt;&lt;li&gt;bottomImage: true 
&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;a name=&quot;5_-_Component_Demo&quot; id=&quot;5_-_Component_Demo&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;5 - Component Demo&lt;/span&gt;&lt;/h1&gt;
&lt;a name=&quot;5.1_HTML&quot; id=&quot;5.1_HTML&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;5.1 HTML&lt;/span&gt;&lt;/h2&gt;
&lt;pre&gt;
&amp;lt;empty&amp;gt; 
&lt;/pre&gt;
&lt;a name=&quot;5.2_Javascript&quot; id=&quot;5.2_Javascript&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;5.2 Javascript&lt;/span&gt;&lt;/h2&gt;
&lt;pre&gt;
var scroll = new Nokia.Scroll({
     scrollBar: true,
     showArrows: false,
     increase: 250,
     create: function() { 
          //alert('Scroll: Created'); 
     },
     scroll: function() {
          //alert('Scroll: Scroll'); 
     }
}); 
&lt;/pre&gt; 
&lt;p&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;a name=&quot;6_-_Nokia_WRT_Browser_Compatibility&quot; id=&quot;6_-_Nokia_WRT_Browser_Compatibility&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;6 - Nokia WRT Browser Compatibility&lt;/span&gt;&lt;/h1&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;table class=&quot;pbNotSortable&quot; cellspacing=&quot;1&quot; cellpadding=&quot;1&quot; width=&quot;300&quot; align=&quot;left&quot; style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 0px; border-top: rgb(211,211,211) 1px dotted; padding-left: 0px; font-size: 13px; padding-bottom: 0px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 0px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; border-collapse: collapse&quot;&gt;
        &lt;tr style=&quot;border-top-width: 0px; padding-right: 0px; padding-left: 0px; border-left-width: 0px; font-size: 13px; border-bottom-width: 0px; padding-bottom: 0px; margin: 0px; vertical-align: baseline; padding-top: 0px; font-family: inherit; border-right-width: 0px&quot;&gt;
            &lt;td class=&quot;sorttable_sorted_reverse&quot; style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 4px; border-top: rgb(211,211,211) 1px dotted; padding-left: 4px; font-weight: 400; font-size: 13px; padding-bottom: 2px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 2px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; background-color: rgb(255,255,255); text-align: left&quot;&gt;&lt;span id=&quot;sorttable_sortrevind&quot; style=&quot;border-top-width: 0px; padding-right: 0px; padding-left: 0px; border-left-width: 0px; font-size: 13px; float: left; border-bottom-width: 0px; padding-bottom: 0px; margin: 0px; vertical-align: baseline; padding-top: 0px; font-family: inherit; border-right-width: 0px&quot;&gt;▴&amp;nbsp;&lt;/span&gt;&amp;nbsp;&lt;/td&gt;
            &lt;td style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 4px; border-top: rgb(211,211,211) 1px dotted; padding-left: 4px; font-weight: 400; font-size: 13px; padding-bottom: 2px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 2px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; background-color: rgb(255,255,255); text-align: left&quot;&gt;&lt;strong&gt;S60 3.1&lt;/strong&gt;&lt;/td&gt;
            &lt;td style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 4px; border-top: rgb(211,211,211) 1px dotted; padding-left: 4px; font-weight: 400; font-size: 13px; padding-bottom: 2px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 2px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; background-color: rgb(255,255,255); text-align: left&quot;&gt;&lt;strong&gt;S60 3.2&lt;/strong&gt;&lt;/td&gt;
            &lt;td style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 4px; border-top: rgb(211,211,211) 1px dotted; padding-left: 4px; font-weight: 400; font-size: 13px; padding-bottom: 2px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 2px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; background-color: rgb(255,255,255); text-align: left&quot;&gt;&lt;strong&gt;S60 5.0&lt;/strong&gt;&lt;/td&gt;
        &lt;/tr&gt;&lt;tr style=&quot;border-top-width: 0px; padding-right: 0px; padding-left: 0px; border-left-width: 0px; font-size: 13px; border-bottom-width: 0px; padding-bottom: 0px; margin: 0px; vertical-align: baseline; padding-top: 0px; font-family: inherit; border-right-width: 0px&quot;&gt;
            &lt;td style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 4px; border-top: rgb(211,211,211) 1px dotted; padding-left: 4px; font-weight: 400; font-size: 13px; padding-bottom: 2px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 2px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; background-color: rgb(255,255,255); text-align: left&quot;&gt;Scroll&lt;/td&gt;
            &lt;td bgcolor=&quot;#000000&quot; style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 4px; border-top: rgb(211,211,211) 1px dotted; padding-left: 4px; font-weight: 400; font-size: 13px; padding-bottom: 2px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 2px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; background-color: rgb(255,255,255); text-align: left&quot;&gt;&lt;span style=&quot;border-top-width: 0px; padding-right: 0px; padding-left: 0px; border-left-width: 0px; font-size: 13px; border-bottom-width: 0px; padding-bottom: 0px; margin: 0px; vertical-align: baseline; color: rgb(51,153,102); padding-top: 0px; font-family: inherit; border-right-width: 0px&quot;&gt;YES&amp;nbsp;&lt;/span&gt;&lt;/td&gt;
            &lt;td bgcolor=&quot;#000000&quot; style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 4px; border-top: rgb(211,211,211) 1px dotted; padding-left: 4px; font-weight: 400; font-size: 13px; padding-bottom: 2px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 2px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; background-color: rgb(255,255,255); text-align: left&quot;&gt;&lt;span style=&quot;border-top-width: 0px; padding-right: 0px; padding-left: 0px; border-left-width: 0px; font-size: 13px; border-bottom-width: 0px; padding-bottom: 0px; margin: 0px; vertical-align: baseline; color: rgb(51,153,102); padding-top: 0px; font-family: inherit; border-right-width: 0px&quot;&gt;YES&amp;nbsp;&lt;/span&gt;&lt;/td&gt;
            &lt;td bgcolor=&quot;#000000&quot; style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 4px; border-top: rgb(211,211,211) 1px dotted; padding-left: 4px; font-weight: 400; font-size: 13px; padding-bottom: 2px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 2px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; background-color: rgb(255,255,255); text-align: left&quot;&gt;&lt;span style=&quot;border-top-width: 0px; padding-right: 0px; padding-left: 0px; border-left-width: 0px; font-size: 13px; border-bottom-width: 0px; padding-bottom: 0px; margin: 0px; vertical-align: baseline; color: rgb(51,153,102); padding-top: 0px; font-family: inherit; border-right-width: 0px&quot;&gt;YES&amp;nbsp;&lt;/span&gt;&lt;/td&gt;
&lt;/table&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
</description>
			<pubDate>Wed, 18 Nov 2009 17:57:36 GMT</pubDate>			<dc:creator>Vdharankar</dc:creator>			<comments>http://wiki.forum.nokia.com/index.php/Talk:Scroll</comments>		</item>
		<item>
			<title>Transition List</title>
			<link>http://wiki.forum.nokia.com/index.php/Transition_List</link>
			<description>&lt;a name=&quot;1_-_Description&quot; id=&quot;1_-_Description&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;1 - Description&lt;/span&gt;&lt;/h1&gt;
&lt;p&gt;Transition List can be used as an alternative to show the sub-items of a list. Keep the list navigation path in the title area as the following figure depicts. This list navigation path can be used to return to a previous list.  
&lt;/p&gt;&lt;p&gt;&lt;br /&gt; 
&lt;/p&gt;
&lt;a name=&quot;2_-_Visual_Design&quot; id=&quot;2_-_Visual_Design&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;2 - Visual Design&lt;/span&gt;&lt;/h1&gt;
&lt;p&gt;&lt;a href=&quot;/index.php/File:Crossfadetransitionlist01.png&quot; class=&quot;image&quot; title=&quot;File:Crossfadetransitionlist01.png&quot;&gt;&lt;img alt=&quot;File:Crossfadetransitionlist01.png&quot; src=&quot;http://www.forum.nokia.com/piazza/wiki/images/1/1d/Crossfadetransitionlist01.png&quot; width=&quot;230&quot; height=&quot;409&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;      &lt;a href=&quot;/index.php/File:Crossfadetransitionlist02.png&quot; class=&quot;image&quot; title=&quot;File:Crossfadetransitionlist02.png&quot;&gt;&lt;img alt=&quot;File:Crossfadetransitionlist02.png&quot; src=&quot;http://www.forum.nokia.com/piazza/wiki/images/3/34/Crossfadetransitionlist02.png&quot; width=&quot;230&quot; height=&quot;409&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; 
&lt;a href=&quot;/index.php/File:Crossfadetransitionlist03.png&quot; class=&quot;image&quot; title=&quot;File:Crossfadetransitionlist03.png&quot;&gt;&lt;img alt=&quot;File:Crossfadetransitionlist03.png&quot; src=&quot;http://www.forum.nokia.com/piazza/wiki/images/7/74/Crossfadetransitionlist03.png&quot; width=&quot;230&quot; height=&quot;409&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;
&lt;a name=&quot;3_-_Component_Dependencies&quot; id=&quot;3_-_Component_Dependencies&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;3 - Component Dependencies&lt;/span&gt;&lt;/h1&gt;
&lt;a name=&quot;3.1_CSS&quot; id=&quot;3.1_CSS&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;3.1 CSS&lt;/span&gt;&lt;/h2&gt;
&lt;pre&gt;
&amp;lt;!-- Themeroller CSS --&amp;gt;
&amp;lt;link rel=&amp;quot;stylesheet&amp;quot; href=&amp;quot;themes/themeroller/&amp;lt;theme&amp;gt;/Themeroller.css&amp;quot; type=&amp;quot;text/css&amp;quot; media=&amp;quot;screen&amp;quot;&amp;gt;
&amp;lt;!-- Specific Theme/Resolution CSS --&amp;gt;
&amp;lt;link rel=&amp;quot;stylesheet&amp;quot; href=&amp;quot;/themes/nokia/ext-theme/&amp;lt;theme&amp;gt;/&amp;lt;resolution&amp;gt;/custom.css&amp;quot; type=&amp;quot;text/css&amp;quot; media=&amp;quot;screen&amp;quot;&amp;gt;
&lt;/pre&gt; 
&lt;p&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;a name=&quot;3.2_Javascript&quot; id=&quot;3.2_Javascript&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;3.2 Javascript&lt;/span&gt;&lt;/h2&gt;
&lt;pre&gt;
&amp;lt;!-- jQuery file --&amp;gt;
&amp;lt;script src=&amp;quot;/lib/jquery/jQuery.js&amp;quot; type=&amp;quot;text/javascript&amp;quot; charset=&amp;quot;utf-8&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;!-- Guarana file --&amp;gt;
&amp;lt;script src=&amp;quot;/lib/Guarana.js&amp;quot; type=&amp;quot;text/javascript&amp;quot; charset=&amp;quot;utf-8&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&lt;/pre&gt; 
&lt;a name=&quot;4_-_Functional_Specifications.2FRequirements&quot; id=&quot;4_-_Functional_Specifications.2FRequirements&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;4 - Functional Specifications/Requirements&lt;/span&gt;&lt;/h1&gt;
&lt;a name=&quot;4.1_-_Options&quot; id=&quot;4.1_-_Options&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;4.1 - Options&lt;/span&gt;&lt;/h2&gt;
&lt;ul&gt;&lt;li&gt;element: 'selector' 
&lt;ul&gt;&lt;li&gt;jQuery selector or the DOM reference to become the container of the component. 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;title: string 
&lt;ul&gt;&lt;li&gt;Defines the component title. 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;visible: boolean 
&lt;ul&gt;&lt;li&gt;Defines the visible state for the component. 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;maximized: boolean 
&lt;ul&gt;&lt;li&gt;Defines that component will be created in maximized mode. 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;a name=&quot;4.2_-_Events_-_Callbacks&quot; id=&quot;4.2_-_Events_-_Callbacks&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;4.2 - Events - Callbacks&lt;/span&gt;&lt;/h2&gt;
&lt;ul&gt;&lt;li&gt;create: function() 
&lt;ul&gt;&lt;li&gt;Scope: [this.element] 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;show: function(openerTransitionList) 
&lt;ul&gt;&lt;li&gt;Scope: [this.element] 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;hide: function() 
&lt;ul&gt;&lt;li&gt;Scope: [this.element]  
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;addItem: function(event, item) 
&lt;ul&gt;&lt;li&gt;Scope: [this.element] 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;removeItem: function(event, item) 
&lt;ul&gt;&lt;li&gt;Scope: [this.element]  
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;/ul&gt;
&lt;a name=&quot;4.3_-_Methods&quot; id=&quot;4.3_-_Methods&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;4.3 - Methods&lt;/span&gt;&lt;/h2&gt;
&lt;ul&gt;&lt;li&gt;addItem: function(item) 
&lt;ul&gt;&lt;li&gt;Adds a new item in the component. 
&lt;/li&gt;&lt;li&gt;return [void] 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;removeItem: function(item) 
&lt;ul&gt;&lt;li&gt;Removes a specific item from the component. 
&lt;/li&gt;&lt;li&gt;return [void] 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;show: function(openerTransitionList) 
&lt;ul&gt;&lt;li&gt;Shows the component. 
&lt;/li&gt;&lt;li&gt;return [void] 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;hide: function() 
&lt;ul&gt;&lt;li&gt;Hides the component. 
&lt;/li&gt;&lt;li&gt;return [Object]  
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;a name=&quot;4.4_-_Default_options&quot; id=&quot;4.4_-_Default_options&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;4.4 - Default options&lt;/span&gt;&lt;/h2&gt;
&lt;ul&gt;&lt;li&gt;title: &quot;, 
&lt;/li&gt;&lt;li&gt;maximized: true, 
&lt;/li&gt;&lt;li&gt;visible: false
&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;a name=&quot;5_-_Component_Demo&quot; id=&quot;5_-_Component_Demo&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;5 - Component Demo&lt;/span&gt;&lt;/h1&gt;
&lt;a name=&quot;5.1_HTML&quot; id=&quot;5.1_HTML&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;5.1 HTML&lt;/span&gt;&lt;/h2&gt;
&lt;pre&gt;
&amp;lt;div id=&amp;quot;library&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;
&amp;lt;div id=&amp;quot;entertainment&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;
&amp;lt;div id=&amp;quot;health&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;
&lt;/pre&gt; 
&lt;p&gt;&lt;br /&gt; 
&lt;/p&gt;
&lt;a name=&quot;5.2_Javascript&quot; id=&quot;5.2_Javascript&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;5.2 Javascript&lt;/span&gt;&lt;/h2&gt;
&lt;pre&gt;
bookStore = new Nokia.TransitionList({
     element: '#library',
     title: 'Book Store',
     visible: true,
     create: function() {
          console.log(&amp;quot;create&amp;quot;);
     },
     show: function(openerTransitionList) {
          console.log(&amp;quot;show&amp;quot;, openerTransitionList);
      },
     hide: function() {
          console.log(&amp;quot;hide list1.&amp;quot;);
     },
     addItem: function(event, item) {
          console.log(&amp;quot;addItem&amp;quot;, item);
     },
     removeItem: function(event, item) {
          console.log(&amp;quot;removeItem&amp;quot;, item);
     }
 });

var entertainment = new Nokia.TransitionList({
     title: 'Entertainment',
     element: '#entertainment'
});
var health = new Nokia.TransitionList({
     title: 'Health',
     element: '#health'
});

bookStore.addItem(
     new Nokia.TransitionListItem({
          label: 'Entertainment',
          linkedList: window.entertainment,
          click: function() {}
     })
);
bookStore.addItem(
     new Nokia.TransitionListItem({
          label: 'Romance',
          linkedList: window.romance,
          click: function() {}
     })
);

window.entertainment.addItem(
     new Nokia.TransitionListItem({
          label: 'Book 1',
          icon: 'ui-icon-note',
          click: function() {
               alert('Book 1');
          }
      })
);
window.entertainment.addItem(
     new Nokia.TransitionListItem({
          label: 'Book 2',
          icon: 'ui-icon-note',
          click: function() {
               alert('Book 2');
          }
     })
);
window.entertainment.addItem(
     new Nokia.TransitionListItem({
          label: 'Back to list',
          icon: 'ui-icon-triangle-1-w',
          linkedList: window.bookStore,
          click: function() {}
     })
);

window.romance.addItem(
     new Nokia.TransitionListItem({
          label: 'Book 1',
          icon: 'ui-icon-note',
          click: function() {
               alert('Book 1');
          }
     })
);
window.romance.addItem(
     new Nokia.TransitionListItem({
          label: 'Book 2',
          icon: 'ui-icon-note',
          click: function() {
              alert('Book 2');
          }
     })
);
window.romance.addItem(
     new Nokia.TransitionListItem({
     label: 'Back to list',
     icon: 'ui-icon-triangle-1-w',
     linkedList: window.bookStore,
          click: function() {}
     })
);
&lt;/pre&gt; 
&lt;a name=&quot;6_-_Nokia_WRT_Browser_Compatibility&quot; id=&quot;6_-_Nokia_WRT_Browser_Compatibility&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;6 - Nokia WRT Browser Compatibility&lt;/span&gt;&lt;/h1&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;table class=&quot;pbNotSortable&quot; cellspacing=&quot;1&quot; cellpadding=&quot;1&quot; width=&quot;300&quot; align=&quot;left&quot; style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 0px; border-top: rgb(211,211,211) 1px dotted; padding-left: 0px; font-size: 13px; padding-bottom: 0px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 0px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; border-collapse: collapse&quot;&gt;
        &lt;tr style=&quot;border-top-width: 0px; padding-right: 0px; padding-left: 0px; border-left-width: 0px; font-size: 13px; border-bottom-width: 0px; padding-bottom: 0px; margin: 0px; vertical-align: baseline; padding-top: 0px; font-family: inherit; border-right-width: 0px&quot;&gt;
            &lt;td class=&quot;sorttable_sorted_reverse&quot; style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 4px; border-top: rgb(211,211,211) 1px dotted; padding-left: 4px; font-weight: 400; font-size: 13px; padding-bottom: 2px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 2px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; background-color: rgb(255,255,255); text-align: left&quot;&gt;&lt;span id=&quot;sorttable_sortrevind&quot; style=&quot;border-top-width: 0px; padding-right: 0px; padding-left: 0px; border-left-width: 0px; font-size: 13px; float: left; border-bottom-width: 0px; padding-bottom: 0px; margin: 0px; vertical-align: baseline; padding-top: 0px; font-family: inherit; border-right-width: 0px&quot;&gt;▴&amp;nbsp;&lt;/span&gt;&amp;nbsp;&lt;/td&gt;
            &lt;td style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 4px; border-top: rgb(211,211,211) 1px dotted; padding-left: 4px; font-weight: 400; font-size: 13px; padding-bottom: 2px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 2px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; background-color: rgb(255,255,255); text-align: left&quot;&gt;&lt;strong&gt;S60 3.1&lt;/strong&gt;&lt;/td&gt;
            &lt;td style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 4px; border-top: rgb(211,211,211) 1px dotted; padding-left: 4px; font-weight: 400; font-size: 13px; padding-bottom: 2px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 2px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; background-color: rgb(255,255,255); text-align: left&quot;&gt;&lt;strong&gt;S60 3.2&lt;/strong&gt;&lt;/td&gt;
            &lt;td style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 4px; border-top: rgb(211,211,211) 1px dotted; padding-left: 4px; font-weight: 400; font-size: 13px; padding-bottom: 2px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 2px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; background-color: rgb(255,255,255); text-align: left&quot;&gt;&lt;strong&gt;S60 5.0&lt;/strong&gt;&lt;/td&gt;
        &lt;/tr&gt;&lt;tr style=&quot;border-top-width: 0px; padding-right: 0px; padding-left: 0px; border-left-width: 0px; font-size: 13px; border-bottom-width: 0px; padding-bottom: 0px; margin: 0px; vertical-align: baseline; padding-top: 0px; font-family: inherit; border-right-width: 0px&quot;&gt;
            &lt;td style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 4px; border-top: rgb(211,211,211) 1px dotted; padding-left: 4px; font-weight: 400; font-size: 13px; padding-bottom: 2px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 2px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; background-color: rgb(255,255,255); text-align: left&quot;&gt;Transition List&lt;/td&gt;
            &lt;td bgcolor=&quot;#000000&quot; style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 4px; border-top: rgb(211,211,211) 1px dotted; padding-left: 4px; font-weight: 400; font-size: 13px; padding-bottom: 2px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 2px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; background-color: rgb(255,255,255); text-align: left&quot;&gt;&lt;span style=&quot;border-top-width: 0px; padding-right: 0px; padding-left: 0px; border-left-width: 0px; font-size: 13px; border-bottom-width: 0px; padding-bottom: 0px; margin: 0px; vertical-align: baseline; color: rgb(51,153,102); padding-top: 0px; font-family: inherit; border-right-width: 0px&quot;&gt;NO&amp;nbsp;&lt;/span&gt;&lt;/td&gt;
            &lt;td bgcolor=&quot;#000000&quot; style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 4px; border-top: rgb(211,211,211) 1px dotted; padding-left: 4px; font-weight: 400; font-size: 13px; padding-bottom: 2px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 2px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; background-color: rgb(255,255,255); text-align: left&quot;&gt;&lt;span style=&quot;border-top-width: 0px; padding-right: 0px; padding-left: 0px; border-left-width: 0px; font-size: 13px; border-bottom-width: 0px; padding-bottom: 0px; margin: 0px; vertical-align: baseline; color: rgb(51,153,102); padding-top: 0px; font-family: inherit; border-right-width: 0px&quot;&gt;YES&amp;nbsp;&lt;/span&gt;&lt;/td&gt;
            &lt;td bgcolor=&quot;#000000&quot; style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 4px; border-top: rgb(211,211,211) 1px dotted; padding-left: 4px; font-weight: 400; font-size: 13px; padding-bottom: 2px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 2px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; background-color: rgb(255,255,255); text-align: left&quot;&gt;&lt;span style=&quot;border-top-width: 0px; padding-right: 0px; padding-left: 0px; border-left-width: 0px; font-size: 13px; border-bottom-width: 0px; padding-bottom: 0px; margin: 0px; vertical-align: baseline; color: rgb(51,153,102); padding-top: 0px; font-family: inherit; border-right-width: 0px&quot;&gt;YES&amp;nbsp;&lt;/span&gt;&lt;/td&gt;
&lt;/table&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;
</description>
			<pubDate>Wed, 18 Nov 2009 15:42:15 GMT</pubDate>			<dc:creator>Hkaliste</dc:creator>			<comments>http://wiki.forum.nokia.com/index.php/Talk:Transition_List</comments>		</item>
		<item>
			<title>Transition</title>
			<link>http://wiki.forum.nokia.com/index.php/Transition</link>
			<description>&lt;a name=&quot;1_-_Description&quot; id=&quot;1_-_Description&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;1 - Description&lt;/span&gt;&lt;/h1&gt;
&lt;p&gt;Transition uses fade in and fade out effects to change the displayed subject.  
&lt;/p&gt;&lt;p&gt;&lt;br /&gt; 
&lt;/p&gt;
&lt;a name=&quot;2_-_Visual_Design&quot; id=&quot;2_-_Visual_Design&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;2 - Visual Design&lt;/span&gt;&lt;/h1&gt;
&lt;p&gt;&lt;a href=&quot;/index.php/File:Crossfadetransition01.png&quot; class=&quot;image&quot; title=&quot;File:Crossfadetransition01.png&quot;&gt;&lt;img alt=&quot;File:Crossfadetransition01.png&quot; src=&quot;http://www.forum.nokia.com/piazza/wiki/images/e/e2/Crossfadetransition01.png&quot; width=&quot;230&quot; height=&quot;409&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;&lt;a href=&quot;/index.php/File:Crossfadetransition02.png&quot; class=&quot;image&quot; title=&quot;File:Crossfadetransition02.png&quot;&gt;&lt;img alt=&quot;File:Crossfadetransition02.png&quot; src=&quot;http://www.forum.nokia.com/piazza/wiki/images/b/b1/Crossfadetransition02.png&quot; width=&quot;230&quot; height=&quot;409&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;&lt;a href=&quot;/index.php/File:Crossfadetransition03.png&quot; class=&quot;image&quot; title=&quot;File:Crossfadetransition03.png&quot;&gt;&lt;img alt=&quot;File:Crossfadetransition03.png&quot; src=&quot;http://www.forum.nokia.com/piazza/wiki/images/1/1b/Crossfadetransition03.png&quot; width=&quot;230&quot; height=&quot;409&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;
&lt;a name=&quot;3_-_Component_Dependencies&quot; id=&quot;3_-_Component_Dependencies&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;3 - Component Dependencies&lt;/span&gt;&lt;/h1&gt;
&lt;a name=&quot;3.1_CSS&quot; id=&quot;3.1_CSS&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;3.1 CSS&lt;/span&gt;&lt;/h2&gt;
&lt;pre&gt;
&amp;lt;!-- Themeroller CSS --&amp;gt;
&amp;lt;link rel=&amp;quot;stylesheet&amp;quot; href=&amp;quot;themes/themeroller/&amp;lt;theme&amp;gt;/Themeroller.css&amp;quot; type=&amp;quot;text/css&amp;quot; media=&amp;quot;screen&amp;quot;&amp;gt;
&amp;lt;!-- Specific Theme/Resolution CSS --&amp;gt;
&amp;lt;link rel=&amp;quot;stylesheet&amp;quot; href=&amp;quot;/themes/nokia/ext-theme/&amp;lt;theme&amp;gt;/&amp;lt;resolution&amp;gt;/custom.css&amp;quot; type=&amp;quot;text/css&amp;quot; media=&amp;quot;screen&amp;quot;&amp;gt;
&lt;/pre&gt; 
&lt;a name=&quot;3.2_Javascript&quot; id=&quot;3.2_Javascript&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;3.2 Javascript&lt;/span&gt;&lt;/h2&gt;
&lt;pre&gt;
&amp;lt;!-- jQuery file --&amp;gt;
&amp;lt;script src=&amp;quot;/lib/jquery/jQuery.js&amp;quot; type=&amp;quot;text/javascript&amp;quot; charset=&amp;quot;utf-8&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;!-- Guarana file --&amp;gt;
&amp;lt;script src=&amp;quot;/lib/Guarana.js&amp;quot; type=&amp;quot;text/javascript&amp;quot; charset=&amp;quot;utf-8&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&lt;/pre&gt; 
&lt;a name=&quot;4_-_Functional_Specifications.2FRequirements&quot; id=&quot;4_-_Functional_Specifications.2FRequirements&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;4 - Functional Specifications/Requirements&lt;/span&gt;&lt;/h1&gt;
&lt;a name=&quot;4.1_-_Options&quot; id=&quot;4.1_-_Options&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;4.1 - Options&lt;/span&gt;&lt;/h2&gt;
&lt;ul&gt;&lt;li&gt;nextLabel: String 
&lt;ul&gt;&lt;li&gt;Defines the label used in next element indication. 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;prevLabel: String 
&lt;ul&gt;&lt;li&gt;Defines the label used in previous element indication. 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;maximize: boolean 
&lt;ul&gt;&lt;li&gt;Defines whether the component is created as maximised. 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;Icons 
&lt;ul&gt;&lt;li&gt;Icons to use for &quot;more elements&quot;. We recommend using the icons native to the jQuery UI CSS Framework, manipulated by &lt;a href=&quot;http://www.themeroller.com&quot; class=&quot;external text&quot; title=&quot;http://www.themeroller.com&quot; rel=&quot;nofollow&quot;&gt;jQuery UI ThemeRoller.&lt;/a&gt; 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;content 
&lt;ul&gt;&lt;li&gt;TO DO 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;a name=&quot;4.2_-_Events_-_Callbacks&quot; id=&quot;4.2_-_Events_-_Callbacks&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;4.2 - Events - Callbacks&lt;/span&gt;&lt;/h2&gt;
&lt;ul&gt;&lt;li&gt;create: function() 
&lt;ul&gt;&lt;li&gt;Scope: [this.element] 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;show: function(openerTransitionBox) 
&lt;ul&gt;&lt;li&gt;Scope: [this.element] 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;hide: function() 
&lt;ul&gt;&lt;li&gt;Scope: [this.element] 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;/ul&gt;
&lt;a name=&quot;4.3_-_Methods&quot; id=&quot;4.3_-_Methods&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;4.3 - Methods&lt;/span&gt;&lt;/h2&gt;
&lt;ul&gt;&lt;li&gt;setNextTransitionBox: function(transitionBox) 
&lt;ul&gt;&lt;li&gt;Defines the next view for a specific element. 
&lt;/li&gt;&lt;li&gt;return [void] 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;setPrevTransitionBox: function(transitionBox)  
&lt;ul&gt;&lt;li&gt;Defines the previous view for a specific element. 
&lt;/li&gt;&lt;li&gt;return [void] 
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;/ul&gt;
&lt;a name=&quot;4.4_-_Default_options&quot; id=&quot;4.4_-_Default_options&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;4.4 - Default options&lt;/span&gt;&lt;/h2&gt;
&lt;ul&gt;&lt;li&gt;nextLabel: 'Next', 
&lt;/li&gt;&lt;li&gt;prevLabel: 'Prev', 
&lt;/li&gt;&lt;li&gt;maximized: true, 
&lt;/li&gt;&lt;li&gt;icons: { prev: 'ui-icon-circle-arrow-w', next: 'ui-icon-circle-arrow-e' }  
&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;a name=&quot;5_-_Component_Demo&quot; id=&quot;5_-_Component_Demo&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;5 - Component Demo&lt;/span&gt;&lt;/h1&gt;
&lt;a name=&quot;5.1_HTML&quot; id=&quot;5.1_HTML&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;5.1 HTML&lt;/span&gt;&lt;/h2&gt;
&lt;pre&gt;
&amp;lt;div id=&amp;quot;library&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;
&amp;lt;div id=&amp;quot;entertainment&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;
&amp;lt;div id=&amp;quot;health&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;
&lt;/pre&gt; 
&lt;p&gt;&lt;br /&gt; 
&lt;/p&gt;
&lt;a name=&quot;5.2_Javascript&quot; id=&quot;5.2_Javascript&quot;&gt;&lt;/a&gt;&lt;h2&gt; &lt;span class=&quot;mw-headline&quot;&gt;5.2 Javascript&lt;/span&gt;&lt;/h2&gt;
&lt;pre&gt;
var bookStore = new Nokia.TransitionBox({
     element: '#library',
     title: 'Book Store',
     visible: true,
     content: 'Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.',
     create: function() {
          console.log(&amp;quot;create&amp;quot;);
     },
     show: function(openerTransitionBox) {
          console.log(&amp;quot;show&amp;quot;, openerTransitionBox);
     },
     hide: function() {
          console.log(&amp;quot;hide list1.&amp;quot;);
     }
});

var entertainment = new Nokia.TransitionBox({
     title: 'Entertainment',
     element: '#entertainment',
     content: 'Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum. Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum. Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.'
});

var health = new Nokia.TransitionBox({
     title: 'Health',
     element: '#health',
     content: 'Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.'
});

bookStore.setPrevTransitionBox();
bookStore.setNextTransitionBox(window.entertainment);

entertainment.setPrevTransitionBox(window.bookStore);
entertainment.setNextTransitionBox(window.health);

health.setPrevTransitionBox(window.entertainment);
health.setNextTransitionBox();
&lt;/pre&gt; 
&lt;a name=&quot;6_-_Nokia_WRT_Browser_Compatibility&quot; id=&quot;6_-_Nokia_WRT_Browser_Compatibility&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt;6 - Nokia WRT Browser Compatibility&lt;/span&gt;&lt;/h1&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;table class=&quot;pbNotSortable&quot; cellspacing=&quot;1&quot; cellpadding=&quot;1&quot; width=&quot;300&quot; align=&quot;left&quot; style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 0px; border-top: rgb(211,211,211) 1px dotted; padding-left: 0px; font-size: 13px; padding-bottom: 0px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 0px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; border-collapse: collapse&quot;&gt;
        &lt;tr style=&quot;border-top-width: 0px; padding-right: 0px; padding-left: 0px; border-left-width: 0px; font-size: 13px; border-bottom-width: 0px; padding-bottom: 0px; margin: 0px; vertical-align: baseline; padding-top: 0px; font-family: inherit; border-right-width: 0px&quot;&gt;
            &lt;td class=&quot;sorttable_sorted_reverse&quot; style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 4px; border-top: rgb(211,211,211) 1px dotted; padding-left: 4px; font-weight: 400; font-size: 13px; padding-bottom: 2px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 2px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; background-color: rgb(255,255,255); text-align: left&quot;&gt;&lt;span id=&quot;sorttable_sortrevind&quot; style=&quot;border-top-width: 0px; padding-right: 0px; padding-left: 0px; border-left-width: 0px; font-size: 13px; float: left; border-bottom-width: 0px; padding-bottom: 0px; margin: 0px; vertical-align: baseline; padding-top: 0px; font-family: inherit; border-right-width: 0px&quot;&gt;▴&amp;nbsp;&lt;/span&gt;&amp;nbsp;&lt;/td&gt;
            &lt;td style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 4px; border-top: rgb(211,211,211) 1px dotted; padding-left: 4px; font-weight: 400; font-size: 13px; padding-bottom: 2px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 2px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; background-color: rgb(255,255,255); text-align: left&quot;&gt;&lt;strong&gt;S60 3.1&lt;/strong&gt;&lt;/td&gt;
            &lt;td style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 4px; border-top: rgb(211,211,211) 1px dotted; padding-left: 4px; font-weight: 400; font-size: 13px; padding-bottom: 2px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 2px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; background-color: rgb(255,255,255); text-align: left&quot;&gt;&lt;strong&gt;S60 3.2&lt;/strong&gt;&lt;/td&gt;
            &lt;td style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 4px; border-top: rgb(211,211,211) 1px dotted; padding-left: 4px; font-weight: 400; font-size: 13px; padding-bottom: 2px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 2px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; background-color: rgb(255,255,255); text-align: left&quot;&gt;&lt;strong&gt;S60 5.0&lt;/strong&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style=&quot;border-top-width: 0px; padding-right: 0px; padding-left: 0px; border-left-width: 0px; font-size: 13px; border-bottom-width: 0px; padding-bottom: 0px; margin: 0px; vertical-align: baseline; padding-top: 0px; font-family: inherit; border-right-width: 0px&quot;&gt;
            &lt;td style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 4px; border-top: rgb(211,211,211) 1px dotted; padding-left: 4px; font-weight: 400; font-size: 13px; padding-bottom: 2px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 2px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; background-color: rgb(255,255,255); text-align: left&quot;&gt;Transition&lt;/td&gt;
            &lt;td bgcolor=&quot;#000000&quot; style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 4px; border-top: rgb(211,211,211) 1px dotted; padding-left: 4px; font-weight: 400; font-size: 13px; padding-bottom: 2px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 2px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; background-color: rgb(255,255,255); text-align: left&quot;&gt;&lt;span style=&quot;border-top-width: 0px; padding-right: 0px; padding-left: 0px; border-left-width: 0px; font-size: 13px; border-bottom-width: 0px; padding-bottom: 0px; margin: 0px; vertical-align: baseline; color: rgb(51,153,102); padding-top: 0px; font-family: inherit; border-right-width: 0px&quot;&gt;NO&amp;nbsp;&lt;/span&gt;&lt;/td&gt;
            &lt;td bgcolor=&quot;#000000&quot; style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 4px; border-top: rgb(211,211,211) 1px dotted; padding-left: 4px; font-weight: 400; font-size: 13px; padding-bottom: 2px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 2px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; background-color: rgb(255,255,255); text-align: left&quot;&gt;&lt;span style=&quot;border-top-width: 0px; padding-right: 0px; padding-left: 0px; border-left-width: 0px; font-size: 13px; border-bottom-width: 0px; padding-bottom: 0px; margin: 0px; vertical-align: baseline; color: rgb(51,153,102); padding-top: 0px; font-family: inherit; border-right-width: 0px&quot;&gt;YES&amp;nbsp;&lt;/span&gt;&lt;/td&gt;
            &lt;td bgcolor=&quot;#000000&quot; style=&quot;border-right: rgb(211,211,211) 1px dotted; padding-right: 4px; border-top: rgb(211,211,211) 1px dotted; padding-left: 4px; font-weight: 400; font-size: 13px; padding-bottom: 2px; margin: 0px; vertical-align: baseline; border-left: rgb(211,211,211) 1px dotted; padding-top: 2px; border-bottom: rgb(211,211,211) 1px dotted; font-family: inherit; background-color: rgb(255,255,255); text-align: left&quot;&gt;&lt;span style=&quot;border-top-width: 0px; padding-right: 0px; padding-left: 0px; border-left-width: 0px; font-size: 13px; border-bottom-width: 0px; padding-bottom: 0px; margin: 0px; vertical-align: baseline; color: rgb(51,153,102); padding-top: 0px; font-family: inherit; border-right-width: 0px&quot;&gt;YES&amp;nbsp;&lt;/span&gt;&lt;/td&gt;
&lt;/table&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
</description>
			<pubDate>Wed, 18 Nov 2009 15:38:57 GMT</pubDate>			<dc:creator>Hkaliste</dc:creator>			<comments>http://wiki.forum.nokia.com/index.php/Talk:Transition</comments>		</item>
		<item>
			<title>How to draw controls on bitmap</title>
			<link>http://wiki.forum.nokia.com/index.php/How_to_draw_controls_on_bitmap</link>
			<description>&lt;p&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;table style=&quot;background:#eceff2&quot; width=&quot;660px&quot; border=&quot;1&quot; cellpadding=&quot;5&quot; cellspacing=&quot;0&quot;&gt;

&lt;tr&gt;
&lt;td&gt;&lt;b&gt;ID&lt;/b&gt; &lt;/td&gt;&lt;td&gt;
&lt;/td&gt;&lt;td&gt;&lt;b&gt;Creation date&lt;/b&gt; &lt;/td&gt;&lt;td&gt; November 8, 2009
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;b&gt;Platform&lt;/b&gt; &lt;/td&gt;&lt;td&gt; Symbian
&lt;/td&gt;&lt;td&gt;&lt;b&gt;Tested on devices&lt;/b&gt; &lt;/td&gt;&lt;td&gt; S60 Emulator
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;b&gt;Category&lt;/b&gt; &lt;/td&gt;&lt;td&gt; Symbian C++
&lt;/td&gt;&lt;td&gt;&lt;b&gt;Subcategory&lt;/b&gt; &lt;/td&gt;&lt;td&gt; S60 5th
&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;
&lt;p&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;table style=&quot;background:#eceff2&quot; width=&quot;660px&quot; border=&quot;1&quot; cellpadding=&quot;5&quot; cellspacing=&quot;0&quot;&gt;

&lt;tr&gt;
&lt;td&gt;&lt;b&gt;Keywords (APIs, classes, methods, functions)&lt;/b&gt;: CWindowToBitmapMappingGc CCoeControl CFbsBitmap SetCustomGc CWsScreenDevice CFbsBitmapDevice CFbsBitGc
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;a name=&quot;Overview&quot; id=&quot;Overview&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt; Overview &lt;/span&gt;&lt;/h1&gt;
&lt;p&gt;By default a control will draw itself on the screen by the system default Gc, but in some cases developers need it to draw itself on a bitmap, for example when implementing transition effect of view switching both views' screen shots are needed. The article shows how to force some controls (derived directly or indirectly from CCoeControl) to draw them self on a specified bitmap instead of screen.
&lt;/p&gt;
&lt;a name=&quot;Solution&quot; id=&quot;Solution&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt; Solution &lt;/span&gt;&lt;/h1&gt;
&lt;p&gt;The CCoeControl::SetGc() or CCoeControl::SetCustomGc() can be used to redirect the control's drawing to a custom Gc, but the functions accept a pointer to a window gc only, that means a bitmap gc can no be used directly. The CWindowToBitmapMappingGc introduced in Symbian OS v7.0 can be used to resolve the problem, because it can map all the operations on  a window gc to a bitmap gc.
&lt;/p&gt;
&lt;pre class=&quot;text&quot; style=&quot;font-family:monospace;&quot;&gt;// .mmp&lt;br /&gt;...&lt;br /&gt;// begin by chen&lt;br /&gt;LIBRARY            egul.lib // CWindowToBitmapMappingGc&lt;br /&gt;LIBRARY            bitgdi.lib // CFbsBitmapDevice&lt;br /&gt;LIBRARY            imageconversion.lib // CImageEncoder&lt;br /&gt;// end by chen&lt;br /&gt;...&lt;/pre&gt;
&lt;pre class=&quot;text&quot; style=&quot;font-family:monospace;&quot;&gt;// .cpp&lt;br /&gt;...&lt;br /&gt;// begin by chen&lt;br /&gt;#include &amp;lt;gulgcmap.h&amp;gt; // CWindowToBitmapMappingGc&lt;br /&gt;#include &amp;lt;ImageConversion.h&amp;gt; // CImageEncoder&lt;br /&gt;// end by chen&lt;br /&gt;...&lt;br /&gt;TBool CGoodbyeHellAppUi::HandleDummyDrawNowMenuItemSelectedL( TInt aCommand )&lt;br /&gt;    {&lt;br /&gt;    // TODO: implement selected event handler&lt;br /&gt;// begin by chen&lt;br /&gt;    RFs&amp;amp; fs = iCoeEnv-&amp;gt;FsSession();&lt;br /&gt;    CCoeControl* control = iGoodbyeHellContainer; // the control to be drawn&lt;br /&gt;    CWsScreenDevice* wsScreenDevice = iCoeEnv-&amp;gt;ScreenDevice(); &lt;br /&gt;    CFbsBitmap* bitmap = new(ELeave) CFbsBitmap; // the bitmap on which the control to be drawn&lt;br /&gt;    CleanupStack::PushL(bitmap);&lt;br /&gt;    TInt err = bitmap-&amp;gt;Create(control-&amp;gt;Size(), wsScreenDevice-&amp;gt;DisplayMode());&lt;br /&gt;    User::LeaveIfError(err);&lt;br /&gt;        CFbsBitmapDevice* bitDevice = CFbsBitmapDevice::NewL(bitmap);&lt;br /&gt;        CleanupStack::PushL(bitDevice);&lt;br /&gt;            CFbsBitGc* bitGc = NULL;&lt;br /&gt;            err = bitDevice-&amp;gt;CreateContext(bitGc);&lt;br /&gt;            User::LeaveIfError(err);&lt;br /&gt;            CleanupStack::PushL(bitGc);&lt;br /&gt;                CWindowToBitmapMappingGc* w2bGc = CWindowToBitmapMappingGc::NewL(*wsScreenDevice, *bitGc);&lt;br /&gt;                CleanupStack::PushL(w2bGc);&lt;br /&gt;                    control-&amp;gt;SetCustomGc(w2bGc); // set GC to the one we created&lt;br /&gt;                    control-&amp;gt;DrawNow(); // then draw the control (now on the bitmap we created)&lt;br /&gt;                    control-&amp;gt;SetCustomGc(NULL); // reset the GC &lt;br /&gt;&amp;nbsp;&lt;br /&gt;                    // in this example we'd like to save the bitmap to a .bmp file&lt;br /&gt;                    // so that we can easily check it out&lt;br /&gt;                    _LIT(KFileName, &amp;quot;c:\\data\\control.bmp&amp;quot;);&lt;br /&gt;                    _LIT8(KMIME, &amp;quot;image/bmp&amp;quot;);&lt;br /&gt;                    CImageEncoder* encoder = CImageEncoder::FileNewL(fs, KFileName, KMIME, CImageEncoder::EOptionAlwaysThread);&lt;br /&gt;                    CleanupStack::PushL(encoder);&lt;br /&gt;                        TRequestStatus status = KRequestPending;&lt;br /&gt;                        encoder-&amp;gt;Convert(&amp;amp;status, *bitmap);&lt;br /&gt;                        User::WaitForRequest(status);&lt;br /&gt;                        User::LeaveIfError(status.Int());&lt;br /&gt;                    CleanupStack::PopAndDestroy(encoder);&lt;br /&gt;&amp;nbsp;&lt;br /&gt;                CleanupStack::PopAndDestroy(w2bGc);&lt;br /&gt;            CleanupStack::PopAndDestroy(bitGc);&lt;br /&gt;        CleanupStack::PopAndDestroy(bitDevice);&lt;br /&gt;    CleanupStack::PopAndDestroy(bitmap);&lt;br /&gt;// end by chen&lt;br /&gt;    return ETrue;&lt;br /&gt;    }&lt;br /&gt;...&lt;/pre&gt;
&lt;p&gt;More details about how to draw controls on bitmap please refer to the full example.
&lt;/p&gt;
&lt;a name=&quot;Source_Code&quot; id=&quot;Source_Code&quot;&gt;&lt;/a&gt;&lt;h1&gt; &lt;span class=&quot;mw-headline&quot;&gt; Source Code &lt;/span&gt;&lt;/h1&gt;
&lt;p&gt;Full example: 
&lt;/p&gt;&lt;p&gt;&lt;a href=&quot;http://wiki.forum.nokia.com/index.php/File:GoodbyeHell(DrawControlsOnBitmap).zip&quot; class=&quot;external text&quot; title=&quot;http://wiki.forum.nokia.com/index.php/File:GoodbyeHell(DrawControlsOnBitmap).zip&quot; rel=&quot;nofollow&quot;&gt;GoodbyeHell(DrawControlsOnBitmap).zip&lt;/a&gt;
&lt;/p&gt;&lt;p&gt;Screenshot:
&lt;/p&gt;&lt;p&gt;&lt;a href=&quot;/index.php/File:DrawControlsOnBitmap.PNG&quot; class=&quot;image&quot; title=&quot;File:DrawControlsOnBitmap.PNG&quot;&gt;&lt;img alt=&quot;File:DrawControlsOnBitmap.PNG&quot; src=&quot;http://www.forum.nokia.com/piazza/wiki/images/b/bc/DrawControlsOnBitmap.PNG&quot; width=&quot;465&quot; height=&quot;804&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;&lt;p&gt;The bitmap (the wiki doesn't accept .bmp file so I had to convert it to a .png file):
&lt;/p&gt;&lt;p&gt;&lt;a href=&quot;/index.php/File:DrawControlsOnBitmap(control.bmp).PNG&quot; class=&quot;image&quot; title=&quot;File:DrawControlsOnBitmap(control.bmp).PNG&quot;&gt;&lt;img alt=&quot;File:DrawControlsOnBitmap(control.bmp).PNG&quot; src=&quot;http://www.forum.nokia.com/piazza/wiki/images/b/ba/DrawControlsOnBitmap%28control.bmp%29.PNG&quot; width=&quot;360&quot; height=&quot;487&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;</description>
			<pubDate>Sun, 08 Nov 2009 18:23:34 GMT</pubDate>			<dc:creator>Jimgilmour1</dc:creator>			<comments>http://wiki.forum.nokia.com/index.php/Talk:How_to_draw_controls_on_bitmap</comments>		</item>
	</channel>
</rss>