<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://maemo.octonezd.me/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=192.100.124.219</id>
	<title>Maemo Wiki Mirror - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://maemo.octonezd.me/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=192.100.124.219"/>
	<link rel="alternate" type="text/html" href="https://maemo.octonezd.me/index.php/Special:Contributions/192.100.124.219"/>
	<updated>2026-04-22T12:54:08Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.45.1</generator>
	<entry>
		<id>https://maemo.octonezd.me/index.php?title=Maemo_Summit_2009/Accommodation&amp;diff=20442</id>
		<title>Maemo Summit 2009/Accommodation</title>
		<link rel="alternate" type="text/html" href="https://maemo.octonezd.me/index.php?title=Maemo_Summit_2009/Accommodation&amp;diff=20442"/>
		<updated>2010-10-04T18:51:06Z</updated>

		<summary type="html">&lt;p&gt;192.100.124.219: Redirecting to MeeGo Conference accommodation since this URL was used in an email notification by mistake&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Looking for the MeeGo Conference 2010 Accommodation page?&lt;br /&gt;
&lt;br /&gt;
See http://wiki.meego.com/MeeGo_Conference_2010/Accommodation&lt;/div&gt;</summary>
		<author><name>192.100.124.219</name></author>
	</entry>
	<entry>
		<id>https://maemo.octonezd.me/index.php?title=PyMaemo/Components&amp;diff=33276</id>
		<title>PyMaemo/Components</title>
		<link rel="alternate" type="text/html" href="https://maemo.octonezd.me/index.php?title=PyMaemo/Components&amp;diff=33276"/>
		<updated>2010-08-18T10:12:58Z</updated>

		<summary type="html">&lt;p&gt;192.100.124.219: /* Bindings */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== Core ===&lt;br /&gt;
&lt;br /&gt;
These packages are the minimal necessary to run or develop Python applications for Maemo.&lt;br /&gt;
&lt;br /&gt;
;[http://www.python.org/ python2.5]&lt;br /&gt;
:Version 2.5 of the high-level, interactive object oriented language, includes an extensive class library with lots of goodies for network programming, system administration, sounds and graphics.&lt;br /&gt;
;python-central&lt;br /&gt;
:Provides support for building and installing python modules independent of the current installed Python version.&lt;br /&gt;
;python-defaults&lt;br /&gt;
:Provides meta packages with unversioned package names (e.g. python-dev, which installs python2.5-dev).&lt;br /&gt;
;python-runtime&lt;br /&gt;
:Meta package which installs the basic Python runtime environment.&lt;br /&gt;
;python-support&lt;br /&gt;
:Provides tools for byte-compilation of Python-only modules, and automatic rebuild on major Python upgrades.&lt;br /&gt;
&lt;br /&gt;
=== Bindings ===&lt;br /&gt;
&lt;br /&gt;
These packages provide bindings for various Maemo components.&lt;br /&gt;
&lt;br /&gt;
;[http://dbus.freedesktop.org/doc/dbus-python/ dbus-python]&lt;br /&gt;
:Python interface to D-Bus.&lt;br /&gt;
;[http://www.pygtk.org/reference.html gnome-python]&lt;br /&gt;
:Python interface to various GNOME libraries: GConf, GnomeVFS, bonobo, libgnome, libgnomeui and libgnomecanvas.&lt;br /&gt;
;[http://pygstdocs.berlios.de/ gst0.10-python]&lt;br /&gt;
:Python interface to GStreamer.&lt;br /&gt;
;[http://codespeak.net/lxml/index.html#documentation lxml]&lt;br /&gt;
:Python interface to libxml2 and libxslt.&lt;br /&gt;
;[http://org.csail.mit.edu/pybluez/docs.html pybluez]&lt;br /&gt;
:Python interface to the BlueZ bluetooth stack.&lt;br /&gt;
;[http://www.cairographics.org/pycairo/ pycairo]&lt;br /&gt;
:Python interface to the Cairo vector graphics library.&lt;br /&gt;
;[http://pycurl.sourceforge.net/ pycurl]&lt;br /&gt;
:Python interface to libcurl.&lt;br /&gt;
;[http://www.pygame.org/news.html pygame]&lt;br /&gt;
:A multimedia development kit for Python, based mostly on SDL.&lt;br /&gt;
;[http://www.pygtk.org/reference.html pygobject]&lt;br /&gt;
:Python interface to GObject.&lt;br /&gt;
;[http://www.pygtk.org/reference.html pygtk]&lt;br /&gt;
:Python interface to GTK+.&lt;br /&gt;
;[http://packages.python.org/pyOpenSSL/ pyopenssl]&lt;br /&gt;
:Python interface to OpenSSL.&lt;br /&gt;
;python-alarm&lt;br /&gt;
:Python interface to libalarm.&lt;br /&gt;
;[http://www.clutter-project.org/ python-clutter]&lt;br /&gt;
:Python interface to Clutter.&lt;br /&gt;
;python-conic&lt;br /&gt;
:Python interface to libconic.&lt;br /&gt;
;python-hildon&lt;br /&gt;
:Python interface to Hildon.&lt;br /&gt;
;[[PyMaemo/HildonDesktop|python-hildondesktop]]&lt;br /&gt;
:Python interface to the Hildon Desktop applets.&lt;br /&gt;
;[http://www.pythonware.com/products/pil/ python-imaging]&lt;br /&gt;
:The Python Imaging Library.&lt;br /&gt;
;[[PyMaemo/Using_Location_API|python-location]]&lt;br /&gt;
:Python interface to liblocation.&lt;br /&gt;
;python-mafw&lt;br /&gt;
:Python interface to MAFW.&lt;br /&gt;
;[http://www.galago-project.org/specs/notification/ python-notify]&lt;br /&gt;
:Python interface to libnotify.&lt;br /&gt;
;[http://people.csail.mit.edu/jrennie/python/numeric/ python-numeric]&lt;br /&gt;
:The Numeric Extensions to Python (deprecated).&lt;br /&gt;
;python-osso&lt;br /&gt;
:Python interface to libosso.&lt;br /&gt;
;[http://pyxml.sourceforge.net/ python-xml]&lt;br /&gt;
:Python interface to XML (deprecated; use python-lxml instead).&lt;br /&gt;
;[https://storm.canonical.com/ storm]&lt;br /&gt;
:Object-relational mapper (ORM) for Python.&lt;br /&gt;
;pyside-qt4&lt;br /&gt;
:PySide Python Qt bindings (metapackage depending on everything else)&lt;br /&gt;
;pyside-qt4-core&lt;br /&gt;
:PySide QtCore library&lt;br /&gt;
;pyside-qt4-gui&lt;br /&gt;
:PySide QtCore library&lt;br /&gt;
;pyside-qt4-help&lt;br /&gt;
:PySide QtHelp library&lt;br /&gt;
;pyside-qt4-maemo5&lt;br /&gt;
:PySide QtMaemo5 library&lt;br /&gt;
;pyside-qt4-multimedia&lt;br /&gt;
:PySide QtMultimedia library&lt;br /&gt;
;pyside-qt4-network&lt;br /&gt;
:PySide QtNetwork library&lt;br /&gt;
;pyside-qt4-phonon&lt;br /&gt;
:PySide Phonon library&lt;br /&gt;
;pyside-qt4-script&lt;br /&gt;
:PySide QtScript library&lt;br /&gt;
;pyside-qt4-sql&lt;br /&gt;
:PySide QtSql library&lt;br /&gt;
;pyside-qt4-svg&lt;br /&gt;
:PySide QtSvg library&lt;br /&gt;
;pyside-qt4-test&lt;br /&gt;
:PySide QtTest library&lt;br /&gt;
;pyside-qt4-uitools&lt;br /&gt;
:PySide UiTools&lt;br /&gt;
;pyside-qt4-webkit&lt;br /&gt;
:PySide QtWebKit library&lt;br /&gt;
;pyside-qt4-xml&lt;br /&gt;
:PySide QtXml library&lt;br /&gt;
;pyside-qt4-xmlpatterns&lt;br /&gt;
:PySide QtXmlPatterns library&lt;br /&gt;
;pyside-mobility&lt;br /&gt;
:PySide Mobility metapackage depending on every other package&lt;br /&gt;
;pyside-mobility-bearer&lt;br /&gt;
:PySide Mobility Bearer API bindings&lt;br /&gt;
;pyside-mobility-contacts&lt;br /&gt;
:PySide Mobility Contacts API bindings&lt;br /&gt;
;pyside-mobility-location&lt;br /&gt;
:PySide Mobility Location API bindings&lt;br /&gt;
;pyside-mobility-messaging&lt;br /&gt;
:PySide Mobility Messaging API bindings&lt;br /&gt;
;pyside-mobility-publishsubscribe&lt;br /&gt;
:PySide Mobility PublishSubscribe API bindings&lt;br /&gt;
;pyside-mobility-sensors&lt;br /&gt;
:PySide Mobility Sensors API bindings&lt;br /&gt;
;pyside-mobility-serviceframework&lt;br /&gt;
:PySide Mobility Service Framework API bindings&lt;br /&gt;
;pyside-mobility-systeminfo&lt;br /&gt;
:PySide Mobility System Info API bindings&lt;br /&gt;
;pyside-mobility-versit&lt;br /&gt;
:PySide Mobility Versit API bindings&lt;br /&gt;
&lt;br /&gt;
=== Applications ===&lt;br /&gt;
&lt;br /&gt;
We provide some Python applications as examples, and that we find useful for PyMaemo users.&lt;br /&gt;
&lt;br /&gt;
;[http://ipython.scipy.org/moin/ ipython]&lt;br /&gt;
:A enhanced interactive Python shell.&lt;br /&gt;
&lt;br /&gt;
=== Development ===&lt;br /&gt;
&lt;br /&gt;
These packages are necessary only if you are developing Python applications on Maemo.&lt;br /&gt;
&lt;br /&gt;
;[http://www.cython.org/ cython]&lt;br /&gt;
:Cython is a language that makes writing C extensions for the Python language as easy as Python itself.&lt;br /&gt;
;[http://www.cosc.canterbury.ac.nz/greg.ewing/python/Pyrex/ pyrex]&lt;br /&gt;
:Pyrex lets you write code that mixes Python and C data types any way you want, and compiles it into a C extension for Python.&lt;br /&gt;
;[http://pypi.python.org/pypi/setuptools#using-setuptools-and-easyinstall python-setuptools]&lt;br /&gt;
:Extensions to the python-distutils for large or complex distributions.&lt;br /&gt;
&lt;br /&gt;
=== Support packages ===&lt;br /&gt;
&lt;br /&gt;
These packages are provided as dependencies for other packages, and are not used directly by users/developers.&lt;br /&gt;
&lt;br /&gt;
;sdl-ttf2.0 (dependency for pygame)&lt;br /&gt;
:TTF library for SDL with FreeType 2 support.&lt;br /&gt;
&lt;br /&gt;
[[Category:Python]]&lt;/div&gt;</summary>
		<author><name>192.100.124.219</name></author>
	</entry>
	<entry>
		<id>https://maemo.octonezd.me/index.php?title=Hildon-Extras&amp;diff=12864</id>
		<title>Hildon-Extras</title>
		<link rel="alternate" type="text/html" href="https://maemo.octonezd.me/index.php?title=Hildon-Extras&amp;diff=12864"/>
		<updated>2010-08-16T11:14:43Z</updated>

		<summary type="html">&lt;p&gt;192.100.124.219: /* List of applications using Hildon-Extras */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Hildon-Extras is a set of community-contributed widgets (that&#039;s GTK+ widgets, not Desktop widgets) and dialogs that can be used by application developers to provide a usable, well-balanced interface. Some of these widgets provide functionality that the &amp;quot;stock&amp;quot; [[Hildon]] widgets don&#039;t provide, and some dialogs are touch-friendly versions of existing dialogs in GTK+ and/or Hildon.&lt;br /&gt;
&lt;br /&gt;
* http://hildon-extras.garage.maemo.org/&lt;br /&gt;
&lt;br /&gt;
==Current status==&lt;br /&gt;
&lt;br /&gt;
Hildon-Extras is very close to being released. The components are considered quite stable, but some small polishing is needed until release.&lt;br /&gt;
&lt;br /&gt;
===Translations===&lt;br /&gt;
&lt;br /&gt;
If you are interested in translating Hildon-Extras, please have a look at the Transifex project here: http://www.transifex.net/projects/p/hildon_extras/c/trunk/ There are only about 7 strings that shouldn&#039;t take you more than a minute to translate.&lt;br /&gt;
&lt;br /&gt;
===Qt integration===&lt;br /&gt;
&lt;br /&gt;
There is a class called &amp;lt;code&amp;gt;QtHeWrapper&amp;lt;/code&amp;gt;. in Hildon-Extras that is provided to developers of [[Qt-Maemo|Qt]]-based apps. It is a [[:wikipedia:Wrapper_library|wrapper]] that provides interoperability between Hildon-Extras and Qt code. It allows developers to call Hildon-Extras easily from Qt-based software.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;QtHeWrapper&amp;lt;/code&amp;gt; currenty supports all the dialogs in Hildon-Extras. It allows for easily displaying any of the dialogs.&lt;br /&gt;
&lt;br /&gt;
===List of applications using Hildon-Extras===&lt;br /&gt;
&lt;br /&gt;
* [http://maemo.org/downloads/product/Maemo5/conboy/ Conboy] (&amp;lt;code&amp;gt;HeCheckButton&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;HeFullscreenButton&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;HeAboutDialog&amp;lt;/code&amp;gt;)&lt;br /&gt;
* [http://thpinfo.com/2010/maepad/ MaePad] (&amp;lt;code&amp;gt;HeAboutDialog&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;HeFullscreenButton&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;HeSimpleColorDialog&amp;lt;/code&amp;gt;)&lt;br /&gt;
* [http://mrawviewer.garage.maemo.org MRAWViewer] (&amp;lt;code&amp;gt;HeFullscreenManager&amp;lt;/code&amp;gt; at the moment, planning to add &amp;lt;code&amp;gt;HeAboutDialog&amp;lt;/code&amp;gt; for the next release)&lt;br /&gt;
* [https://garage.maemo.org/projects/maemo-mapper/ Mapper] (&amp;lt;code&amp;gt;HeAboutDialog&amp;lt;/code&amp;gt;)&lt;br /&gt;
* [http://maemo.org/downloads/product/Maemo5/custom-operator-name-widget/ Custom Operator Name Widget] (&amp;lt;code&amp;gt;HeColorDialog&amp;lt;/code&amp;gt;)&lt;br /&gt;
* [http://maemo.org/downloads/product/Maemo5/gpodder/ gPodder] (&amp;lt;code&amp;gt;HeAboutDialog&amp;lt;/code&amp;gt;)&lt;br /&gt;
* [http://maemo.org/downloads/product/Maemo5/panucci/ Panucci] (&amp;lt;code&amp;gt;HeAboutDialog&amp;lt;/code&amp;gt;)&lt;br /&gt;
* [[Queen BeeCon Widget]] (&amp;lt;code&amp;gt;HeFont*&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;He*Color*&amp;lt;/code&amp;gt;)&lt;br /&gt;
* [https://garage.maemo.org/projects/sticky-notes/ Sticky Notes] (&amp;lt;code&amp;gt;HeSimpleColorDialog&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;HeColorDialog&amp;lt;/code&amp;gt;, and &amp;lt;code&amp;gt;HeAboutDialog&amp;lt;/code&amp;gt; through &amp;lt;code&amp;gt;QtHeWrapper&amp;lt;/code&amp;gt;)&lt;br /&gt;
* [https://extcalllog.garage.maemo.org/ Extended Call Log] (&amp;lt;code&amp;gt;HeAboutDialog&amp;lt;/code&amp;gt;)&lt;br /&gt;
* [https://webtexter.garage.maemo.org/ WebTexter] (&amp;lt;code&amp;gt;HeAboutDialog&amp;lt;/code&amp;gt;)&lt;br /&gt;
* [https://pidgin.garage.maemo.org/ Pidgin] (&amp;lt;code&amp;gt;HeMenuView&amp;lt;/code&amp;gt;)&lt;br /&gt;
* &#039;&#039;(add yours here)&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
==Widget Gallery==&lt;br /&gt;
&lt;br /&gt;
Here is a list of widgets currently in Hildon-Extras.&lt;br /&gt;
&lt;br /&gt;
===Dialogs===&lt;br /&gt;
&lt;br /&gt;
Hildon-Extras has a nice collection of dialog windows that are optimized to be both good-looking and finger-friendly.&lt;br /&gt;
&lt;br /&gt;
All of the dialogs support integration with Qt-based software via the &amp;lt;code&amp;gt;QtHeWrapper&amp;lt;/code&amp;gt; class (in the &amp;quot;qt-he-wrapper.h&amp;quot; header).&lt;br /&gt;
&lt;br /&gt;
====HeAboutDialog====&lt;br /&gt;
&lt;br /&gt;
[[Image:HeAboutDialog.png|thumb|About dialog in MaePad]]&lt;br /&gt;
&lt;br /&gt;
The &amp;lt;code&amp;gt;HeAboutDialog&amp;lt;/code&amp;gt; is a replacement for &amp;lt;code&amp;gt;GtkAboutDialog&amp;lt;/code&amp;gt; and provides a finger-friendly, good-looking about dialog with optional buttons for:&lt;br /&gt;
&lt;br /&gt;
* Project website&lt;br /&gt;
* Bug tracker (&amp;quot;Enter new bug&amp;quot;)&lt;br /&gt;
* Donations page&lt;br /&gt;
&lt;br /&gt;
There is a [[:wikipedia:Wrapper_function|wrapper]] that can be used by Qt-based applications for this dialog in &amp;lt;code&amp;gt;QtHeWrapper&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
If you are writing a Python application, you might be interested in the Python port of &amp;lt;code&amp;gt;HeAboutDialog&amp;lt;/code&amp;gt;: [http://repo.or.cz/w/gpodder.git/blob_plain/HEAD:/src/gpodder/gtkui/frmntl/about.py Download about.py]&lt;br /&gt;
&lt;br /&gt;
====HeSimpleColorDialog====&lt;br /&gt;
&lt;br /&gt;
[[Image:HeSimpleColorDialog.png|thumb|Simple color dialog]]&lt;br /&gt;
&lt;br /&gt;
This dialog provides a finger-friendly, limited list of colors (a Tango-ish color palette) for the user to choose from. Especially useful when the color selection does not have to be &amp;quot;that special shade of green&amp;quot; but rather &amp;quot;a nice green&amp;quot; (for example to colorize categories or items).&lt;br /&gt;
&lt;br /&gt;
There is also the possibility of an advanced mode for this dialog.&lt;br /&gt;
This presents an additional &amp;quot;Advanced&amp;quot; button above &amp;quot;Select&amp;quot;. When clicked, it presents the user with a regular &amp;lt;code&amp;gt;HeColorDialog&amp;lt;/code&amp;gt; to pick an exact colour.&lt;br /&gt;
&lt;br /&gt;
Example code and use cases:&lt;br /&gt;
&lt;br /&gt;
* MaePad uses it for coloring the text of checklist items and for the color in sketches ([http://repo.or.cz/w/maepad.git/blob/HEAD:/src/ui/callbacks.c src/ui/callbacks.c])&lt;br /&gt;
&lt;br /&gt;
====HeColorDialog====&lt;br /&gt;
&lt;br /&gt;
[[Image:HeColorDialog.png|thumb|Color dialog]]&lt;br /&gt;
&lt;br /&gt;
This dialog lets the user to select a color by selecting the intensity of the red, green, and blue channels. Also provides hex input/output of colours.&lt;br /&gt;
&lt;br /&gt;
It may come in handy when a developer wants his/her users to be able to pick an exact shade of an exact colour in a finger-friendly way.&lt;br /&gt;
&lt;br /&gt;
====HeFontDialog====&lt;br /&gt;
&lt;br /&gt;
[[Image:HeFontDialog.png|thumb|Font dialog]]&lt;br /&gt;
&lt;br /&gt;
Lets the user choose a font together with a font size. It also offers bold and italic styles.&lt;br /&gt;
&lt;br /&gt;
====HeMenuView====&lt;br /&gt;
&lt;br /&gt;
[[Image:he-menu-view-before-and-after.png|thumb|Menu view]]&lt;br /&gt;
&lt;br /&gt;
This widget allows you to display a GtkMenu as a series of columns in a dialog. In addition, you can hook into all your HildonWindow widgets and have those menus that are not HildonAppMenu widgets appear as HeMenuView dialogs.&lt;br /&gt;
&lt;br /&gt;
===Buttons===&lt;br /&gt;
&lt;br /&gt;
The buttons in Hildon-Extras provide commonly used behaviour and are looking nice.&lt;br /&gt;
&lt;br /&gt;
====HeCheckButton====&lt;br /&gt;
&lt;br /&gt;
[[Image:HeCheckButton.png|thumb|Check button]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;HeCheckButton&amp;lt;/code&amp;gt; is a check button with primary and secondary labels. The standard HildonCheckButton supports only one label.&lt;br /&gt;
&lt;br /&gt;
This button can be very handy for developers who would like to provide some description about the functionality of a check box.&lt;br /&gt;
&lt;br /&gt;
====HeFullscreenButton====&lt;br /&gt;
&lt;br /&gt;
[[Image:HeFullscreenButton.png|thumb|The HeFullScreenButton]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;HeFullscreenButton&amp;lt;/code&amp;gt; is a button that allows users to &#039;&#039;&#039;leave&#039;&#039;&#039; full screen mode. It becomes visible after the user touched the screen or pressed a key and it vanishes after 5 seconds of inactivity.&lt;br /&gt;
&lt;br /&gt;
It looks like the full screen button in the built-in applications of Maemo 5, so it is very good if a developer wants his/her application to blend in well with the rest of the platform.&lt;br /&gt;
&lt;br /&gt;
====HeColorButton====&lt;br /&gt;
&lt;br /&gt;
[[Image:HeColorButton.png|thumb|Color button]]&lt;br /&gt;
&lt;br /&gt;
On tapping the &amp;lt;code&amp;gt;HeColorButton&amp;lt;/code&amp;gt; opens the &amp;lt;code&amp;gt;HeColorDialog&amp;lt;/code&amp;gt; and lets the user select a color. This color is then displayed on the &amp;lt;code&amp;gt;HeColorButton&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
====HeFontButton====&lt;br /&gt;
&lt;br /&gt;
[[Image:HeFontButton.png|thumb|Font button]]&lt;br /&gt;
&lt;br /&gt;
On tapping the &amp;lt;code&amp;gt;HeFontButton&amp;lt;/code&amp;gt; displays a &amp;lt;code&amp;gt;HeFontDialog&amp;lt;/code&amp;gt; that lets the user select a font. The selected font is then displayed on the &amp;lt;code&amp;gt;HeFontButton&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
[[Category:Development]]&lt;br /&gt;
[[Category:Documentation]]&lt;br /&gt;
[[Category:Fremantle]]&lt;/div&gt;</summary>
		<author><name>192.100.124.219</name></author>
	</entry>
	<entry>
		<id>https://maemo.octonezd.me/index.php?title=Packaging_a_Qt_application&amp;diff=31523</id>
		<title>Packaging a Qt application</title>
		<link rel="alternate" type="text/html" href="https://maemo.octonezd.me/index.php?title=Packaging_a_Qt_application&amp;diff=31523"/>
		<updated>2010-06-18T14:12:45Z</updated>

		<summary type="html">&lt;p&gt;192.100.124.219: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Packaging a Qt application for Maemo=&lt;br /&gt;
&lt;br /&gt;
{{main|Packaging}}&lt;br /&gt;
&lt;br /&gt;
Packaging a Qt application for Maemo is very similar to packaging any other application, so this document only contains information on Qt-specific packaging issues.&lt;br /&gt;
&lt;br /&gt;
== Creating a Maemo package from a qmake project ==&lt;br /&gt;
&lt;br /&gt;
In order to create a new package for Maemo, from a qmake project, you will need to:&lt;br /&gt;
* Rename the source directory to &amp;lt;code&amp;gt;Package-Version&amp;lt;/code&amp;gt; (for example myapp-0.1 for an application ‘myapp’ with a version of ‘0.1’)&lt;br /&gt;
* Create a ‘src’ directory in &amp;lt;code&amp;gt;Package-Version/&amp;lt;/code&amp;gt;&lt;br /&gt;
* Copy all the files to the &amp;lt;code&amp;gt;src/&amp;lt;/code&amp;gt; directory&lt;br /&gt;
* Rename &amp;lt;code&amp;gt;src/appname.pro&amp;lt;/code&amp;gt; to &amp;lt;code&amp;gt;src/src.pro&amp;lt;/code&amp;gt;&lt;br /&gt;
Please make sure that the directory name is &amp;lt;package-version&amp;gt; format and in small case letters.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$mv myapp myapp-0.1&lt;br /&gt;
$cd myapp-0.1&lt;br /&gt;
$mkdir src&lt;br /&gt;
$cp * src&lt;br /&gt;
$mv src/appname.pro src/src.pro&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Append the following chunk to end of your &amp;lt;code&amp;gt;src/src.pro&amp;lt;/code&amp;gt;. The chunk adds an install section to your qmakefile  &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
unix {&lt;br /&gt;
  #VARIABLES&lt;br /&gt;
  isEmpty(PREFIX) {&lt;br /&gt;
    PREFIX = /usr/local&lt;br /&gt;
  }&lt;br /&gt;
  BINDIR = $$PREFIX/bin&lt;br /&gt;
  DATADIR =$$PREFIX/share&lt;br /&gt;
&lt;br /&gt;
  DEFINES += DATADIR=\\\&amp;quot;$$DATADIR\\\&amp;quot; PKGDATADIR=\\\&amp;quot;$$PKGDATADIR\\\&amp;quot;&lt;br /&gt;
&lt;br /&gt;
  #MAKE INSTALL&lt;br /&gt;
&lt;br /&gt;
  INSTALLS += target desktop service iconxpm icon26 icon48 icon64&lt;br /&gt;
&lt;br /&gt;
  target.path =$$BINDIR&lt;br /&gt;
&lt;br /&gt;
  desktop.path = $$DATADIR/applications/hildon&lt;br /&gt;
  desktop.files += $${TARGET}.desktop&lt;br /&gt;
&lt;br /&gt;
  service.path = $$DATADIR/dbus-1/services&lt;br /&gt;
  service.files += $${TARGET}.service&lt;br /&gt;
&lt;br /&gt;
  iconxpm.path = $$DATADIR/pixmap&lt;br /&gt;
  iconxpm.files += ../data/maemo/$${TARGET}.xpm&lt;br /&gt;
&lt;br /&gt;
  icon26.path = $$DATADIR/icons/hicolor/26x26/apps&lt;br /&gt;
  icon26.files += ../data/26x26/$${TARGET}.png&lt;br /&gt;
&lt;br /&gt;
  icon48.path = $$DATADIR/icons/hicolor/48x48/apps&lt;br /&gt;
  icon48.files += ../data/48x48/$${TARGET}.png&lt;br /&gt;
&lt;br /&gt;
  icon64.path = $$DATADIR/icons/hicolor/64x64/apps&lt;br /&gt;
  icon64.files += ../data/64x64/$${TARGET}.png&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*Create a &amp;lt;code&amp;gt;myapp-0.1/myapp.pro&amp;lt;/code&amp;gt; file like this:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
QMAKEVERSION = $$[QMAKE_VERSION]&lt;br /&gt;
ISQT4 = $$find(QMAKEVERSION, ^[2-9])&lt;br /&gt;
isEmpty( ISQT4 ) {&lt;br /&gt;
error(&amp;quot;Use the qmake include with Qt4.4 or greater, on Debian that is qmake-qt4&amp;quot;);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
TEMPLATE = subdirs&lt;br /&gt;
SUBDIRS  = src&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
*Run dh_make to debianize the source archive, it creates:&lt;br /&gt;
**An archive with the unchanged upstream source (orig.tar.gz)&lt;br /&gt;
**Some basic files in the debian directory&lt;br /&gt;
**Some example files (*.EX *.ex)&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
export DEBFULLNAME=&amp;quot;maintainer first name and last name&amp;quot;&lt;br /&gt;
dh_make --createorig --single -e maintainer@email.org -c gpl&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Editing the rules file ==&lt;br /&gt;
The rules file generated by &amp;lt;code&amp;gt;dh_make&amp;lt;/code&amp;gt;, found in &amp;lt;code&amp;gt;debian/rules&amp;lt;/code&amp;gt; will be modified in order to look like this one. We are using qmake, so there is no &amp;lt;code&amp;gt;configure&amp;lt;/code&amp;gt; script to run. If you copy and paste the following file, notice the empty space at the beginning of the lines these are TAB characters, they are not multiple space characters. If you copy and paste the following chunk, you most propably get space&#039;s instead of tabs if this is true then the file will not work.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#!/usr/bin/make -f&lt;br /&gt;
APPNAME := my_app_name&lt;br /&gt;
builddir:&lt;br /&gt;
        mkdir -p builddir&lt;br /&gt;
&lt;br /&gt;
builddir/Makefile: builddir&lt;br /&gt;
        cd builddir &amp;amp;&amp;amp; qmake-qt4 PREFIX=/usr ../$(APPNAME).pro&lt;br /&gt;
&lt;br /&gt;
build: build-stamp&lt;br /&gt;
&lt;br /&gt;
build-stamp: builddir/Makefile&lt;br /&gt;
        dh_testdir&lt;br /&gt;
        # Add here commands to compile the package.&lt;br /&gt;
        cd builddir &amp;amp;&amp;amp; $(MAKE)&lt;br /&gt;
        touch $@&lt;br /&gt;
&lt;br /&gt;
clean:&lt;br /&gt;
        dh_testdir&lt;br /&gt;
        dh_testroot&lt;br /&gt;
        rm -f build-stamp&lt;br /&gt;
        # Add here commands to clean up after the build process.&lt;br /&gt;
        rm -rf builddir&lt;br /&gt;
        dh_clean&lt;br /&gt;
install: build&lt;br /&gt;
        dh_testdir&lt;br /&gt;
        dh_testroot&lt;br /&gt;
        dh_clean -k&lt;br /&gt;
        dh_installdirs&lt;br /&gt;
&lt;br /&gt;
        # Add here commands to install the package into debian/your_appname&lt;br /&gt;
        cd builddir &amp;amp;&amp;amp; $(MAKE) INSTALL_ROOT=$(CURDIR)/debian/$(APPNAME) install&lt;br /&gt;
# Build architecture-independent files here.&lt;br /&gt;
binary-indep: build install&lt;br /&gt;
# We have nothing to do by default.&lt;br /&gt;
&lt;br /&gt;
# Build architecture-dependent files here.&lt;br /&gt;
binary-arch: build install&lt;br /&gt;
        dh_testdir&lt;br /&gt;
        dh_testroot&lt;br /&gt;
        dh_installdocs&lt;br /&gt;
        dh_installexamples&lt;br /&gt;
        dh_installman&lt;br /&gt;
        dh_link&lt;br /&gt;
        dh_strip --dbg-package=my-application-dbg&lt;br /&gt;
        dh_compress&lt;br /&gt;
        dh_fixperms&lt;br /&gt;
        dh_installdeb&lt;br /&gt;
        dh_shlibdeps&lt;br /&gt;
        dh_gencontrol&lt;br /&gt;
        dh_md5sums&lt;br /&gt;
        dh_builddeb&lt;br /&gt;
&lt;br /&gt;
binary: binary-indep binary-arch&lt;br /&gt;
.PHONY: build clean binary-indep binary-arch binary install configure&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Editing the control file ==&lt;br /&gt;
The control file generated by &amp;lt;code&amp;gt;dh_make&amp;lt;/code&amp;gt;, found in &amp;lt;code&amp;gt;debian/control&amp;lt;/code&amp;gt; will be modified substantially. Please refer to the general packaging guide for Maemo for details.&lt;br /&gt;
&lt;br /&gt;
For Qt applications you need to make sure to add &amp;lt;code&amp;gt;libqt4-dev&amp;lt;/code&amp;gt; as an additional entry in the field &amp;lt;code&amp;gt;Build-Depends&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
= Example =&lt;br /&gt;
You can download the [http://maemo.org/packages/view/qt-maemo-example/ source package of qt-maemo-example] from the [[extras-devel]] repository as follows, if you have source packages enabled in your &amp;lt;code&amp;gt;/etc/apt/sources.list&amp;lt;/code&amp;gt; file:&lt;br /&gt;
&lt;br /&gt;
 apt-get source qt-maemo-example&lt;br /&gt;
&lt;br /&gt;
This command will download the:&lt;br /&gt;
&lt;br /&gt;
* unmodified source (.orig.tar.gz)&lt;br /&gt;
* debian dsc file (.dsc)&lt;br /&gt;
* diff file (.diff)&lt;br /&gt;
&lt;br /&gt;
and will then automatically launch &amp;lt;code&amp;gt;dpkg -x file.dsc&amp;lt;/code&amp;gt; in order to decompress the orig.tar.gz and apply the changes.&lt;br /&gt;
&lt;br /&gt;
= Useful Links =&lt;br /&gt;
&lt;br /&gt;
* [[Qt-Maemo|Qt for Maemo]]&lt;br /&gt;
* [[Packaging|Packaging guide for Maemo]]&lt;br /&gt;
* [http://doc.qt.nokia.com/qt-maemo-4.6/maemo5-with-qt-introduction.html#deploying-your-applications Deploying your Maemo 5 Qt application] Qt documentation&lt;br /&gt;
&lt;br /&gt;
[[Category:Packaging]]&lt;br /&gt;
[[Category:Qt]]&lt;/div&gt;</summary>
		<author><name>192.100.124.219</name></author>
	</entry>
	<entry>
		<id>https://maemo.octonezd.me/index.php?title=MADDE/Packaging&amp;diff=14805</id>
		<title>MADDE/Packaging</title>
		<link rel="alternate" type="text/html" href="https://maemo.octonezd.me/index.php?title=MADDE/Packaging&amp;diff=14805"/>
		<updated>2010-06-18T13:55:09Z</updated>

		<summary type="html">&lt;p&gt;192.100.124.219: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{MADDE}}&lt;br /&gt;
&lt;br /&gt;
===Introduction===&lt;br /&gt;
This guide explains how to take a simple [[Qt-Maemo|Qt]] application and compile it so that it deploys to the [[Nokia N900|N900]] with an Icon. It is supposed to be step by step guide on how to take a (simple) Qt app and package and deploy it with an Icon using [[MADDE]].&lt;br /&gt;
&lt;br /&gt;
=== Prerequisites ===&lt;br /&gt;
&lt;br /&gt;
The project I have is simple, 1 window called mainwindow.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Note:&#039;&#039;&#039; As a convention I like to keep all my code together, so I have created any extra files in the &amp;quot;src&amp;quot; folder.&lt;br /&gt;
&lt;br /&gt;
=== Steps ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Create simple project through MADDE.&lt;br /&gt;
  mad pscreate -t qt_simple projectname&amp;lt;/li&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;li&amp;gt;Edit and test with Qt Creator (or whatever your favorite tool is).&amp;lt;/li&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;li&amp;gt;Once ready to deploy create a clean empty top level folder &amp;lt;code&amp;gt;&amp;lt;projectname&amp;gt;-0.x&amp;lt;/code&amp;gt; where &amp;lt;code&amp;gt;x&amp;lt;/code&amp;gt; is your revision number, for example &amp;lt;code&amp;gt;C:\Madde\0.5\home\shep\wwcalc-0.1&amp;lt;/code&amp;gt; in the OS &lt;br /&gt;
&#039;&#039;&#039;Note: the following 3 steps apply each time you go to build.&#039;&#039;&#039;&lt;br /&gt;
  &amp;lt;ol&amp;gt;&amp;lt;li&amp;gt;ensure there is no &amp;lt;code&amp;gt;debian&amp;lt;/code&amp;gt; folder at the same level as &amp;lt;code&amp;gt;src&amp;lt;/code&amp;gt;&amp;lt;/li&amp;gt;&lt;br /&gt;
  &amp;lt;li&amp;gt;ensure there is no folder structure called &amp;lt;code&amp;gt;&amp;lt;projectname&amp;gt;-0.x-orig&amp;lt;/code&amp;gt; left over from a failed compile&amp;lt;/li&amp;gt;&lt;br /&gt;
  &amp;lt;li&amp;gt;remove old compiles from the &amp;lt;code&amp;gt;Madde\home\user&amp;lt;/code&amp;gt;, for example &amp;lt;code&amp;gt;C:\Madde\0.5\home\Shep&amp;lt;/code&amp;gt; folder.&amp;lt;/li&amp;gt;&amp;lt;/ol&amp;gt;&amp;lt;/li&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;li&amp;gt;Copy the &amp;lt;code&amp;gt;src&amp;lt;/code&amp;gt; folder from the tested Qt project into the &amp;lt;code&amp;gt;&amp;lt;projectname-0.x&amp;lt;/code&amp;gt; folder&amp;lt;/li&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;li&amp;gt;Create (or obtain) an application Icon. This should be a 64x64 PNG. Call it &amp;lt;code&amp;gt;&amp;lt;projectname&amp;gt;.png&amp;lt;/code&amp;gt; and place it in the &amp;lt;code&amp;gt;src&amp;lt;/code&amp;gt; folder.&amp;lt;/li&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;li&amp;gt;Again inside the &amp;lt;code&amp;gt;src&amp;lt;/code&amp;gt; folder create a new file called &amp;lt;code&amp;gt;&amp;lt;projectname&amp;gt;.desktop&amp;lt;/code&amp;gt;&lt;br /&gt;
Code:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
[Desktop Entry]&lt;br /&gt;
Encoding=UTF-8&lt;br /&gt;
Version=0.x&lt;br /&gt;
Type=Application&lt;br /&gt;
Name=&amp;lt;Long Descriptive Project Name&amp;gt;&lt;br /&gt;
Exec=/usr/bin/&amp;lt;projectname&amp;gt;&lt;br /&gt;
Icon=&amp;lt;projectname&amp;gt;&lt;br /&gt;
X-HildonDesk-ShowInToolbar=true&lt;br /&gt;
X-Osso-Type=application/x-executable&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/li&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;li&amp;gt;Inside the &amp;lt;code&amp;gt;src&amp;lt;/code&amp;gt; folder added a file called &amp;lt;code&amp;gt;src.pro&amp;lt;/code&amp;gt;. Getting this right is the key to getting the Makefile correct and hence the install working. At the end of this file there is a section called &amp;lt;code&amp;gt;INSTALLS += ...&amp;lt;/code&amp;gt; for every file you want installed in a location you need an entry here. In the example here we install the target, icon and desktop files.&lt;br /&gt;
Code:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
TARGET = wwcalc&lt;br /&gt;
TEMPLATE = app&lt;br /&gt;
SOURCES += qtmain.cpp \&lt;br /&gt;
    mainwindow.cpp &lt;br /&gt;
HEADERS += mainwindow.h &lt;br /&gt;
FORMS += mainwindow.ui &lt;br /&gt;
&lt;br /&gt;
unix {&lt;br /&gt;
  PREFIX = /usr&lt;br /&gt;
  BINDIR = $$PREFIX/bin&lt;br /&gt;
  DATADIR =$$PREFIX/share&lt;br /&gt;
&lt;br /&gt;
  DEFINES += DATADIR=\&amp;quot;$$DATADIR\&amp;quot; PKGDATADIR=\&amp;quot;$$PKGDATADIR\&amp;quot;&lt;br /&gt;
&lt;br /&gt;
  #MAKE INSTALL&lt;br /&gt;
&lt;br /&gt;
  INSTALLS += target desktop icon64 &lt;br /&gt;
&lt;br /&gt;
  target.path =$$BINDIR&lt;br /&gt;
&lt;br /&gt;
  desktop.path = $$DATADIR/applications/hildon&lt;br /&gt;
  desktop.files += wwcalc.desktop&lt;br /&gt;
&lt;br /&gt;
  icon64.path = $$DATADIR/icons/hicolor/64x64/apps&lt;br /&gt;
  icon64.files += wwcalc.png&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/li&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;li&amp;gt;Up one level and inside the top level folder (that is,  &amp;lt;code&amp;gt;C:\Madde\0.5\home\&amp;lt;YOU!&amp;gt;\&amp;lt;projectname&amp;gt;-0.x&amp;lt;/code&amp;gt; ) create a file called &amp;lt;code&amp;gt;&amp;lt;projectname&amp;gt;.pro&amp;lt;/code&amp;gt; with the following exact contents.&lt;br /&gt;
Code:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
TEMPLATE = subdirs&lt;br /&gt;
SUBDIRS  = src&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/li&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;li&amp;gt;In Madde make sure the [[MADDE/Device runtime|runtime is up and connectible]] and then execute.&lt;br /&gt;
Code:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
mad dh_make --createorig --single -e foo.bar@gmail.com -c gpl&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&#039;&#039;Several people have commented that mad qmake is not required, but I find there are times that it is, ignore this next line if you wish&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
mad qmake&lt;br /&gt;
mad dpkg-buildpackage&lt;br /&gt;
mad remote -r org.maemo.&amp;lt;projectname&amp;gt; send ../&amp;lt;projectname&amp;gt;_0.x-1_armel.deb&lt;br /&gt;
mad remote -r org.maemo.&amp;lt;projectname&amp;gt; install &amp;lt;projectname&amp;gt;_0.x-1_armel.deb&amp;lt;/pre&amp;gt;&amp;lt;/li&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;li&amp;gt;Uninstalling - from an X_Terminal.&lt;br /&gt;
Code:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo gainroot&lt;br /&gt;
dpkg -r &amp;lt;projectname&amp;gt;&amp;lt;/pre&amp;gt;&amp;lt;/li&amp;gt;&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Additional information ==&lt;br /&gt;
&lt;br /&gt;
* [[Packaging a Qt application]]&lt;br /&gt;
* [[Packaging]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Development]]&lt;br /&gt;
[[Category:Qt]]&lt;/div&gt;</summary>
		<author><name>192.100.124.219</name></author>
	</entry>
	<entry>
		<id>https://maemo.octonezd.me/index.php?title=Documentation/Maemo_5_Final_SDK_Installation&amp;diff=7886</id>
		<title>Documentation/Maemo 5 Final SDK Installation</title>
		<link rel="alternate" type="text/html" href="https://maemo.octonezd.me/index.php?title=Documentation/Maemo_5_Final_SDK_Installation&amp;diff=7886"/>
		<updated>2010-05-27T11:50:36Z</updated>

		<summary type="html">&lt;p&gt;192.100.124.219: /* Fixed typo, and added few corrections */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Introduction=&lt;br /&gt;
&lt;br /&gt;
The following document describes the installation of the Maemo 5 Final SDK. Maemo SDK uses Scratchbox as the cross compilation environment into which Maemo specific development files are installed.&lt;br /&gt;
&lt;br /&gt;
Before we begin with the installation, have a look at the minimum system requirements. We officially support x86-32 Debian based distributions, mainly Debian and Ubuntu though it is possible to install the SDK on other flavours of Linux too.&lt;br /&gt;
&lt;br /&gt;
Once you are sure that your development machine fulfils these requirements, you can proceed with the following guidelines:&lt;br /&gt;
&lt;br /&gt;
Maemo 5 SDK comes with two command line installation scripts and GUI installer (beta) to ease the SDK installation.&lt;br /&gt;
*Scratchbox installer script which downloads and installs the required version of Scratchbox onto your host machine.&lt;br /&gt;
*Maemo SDK installer which sets up two targets (armel and x86) inside Scratchbox,  downloads the minimal rootstraps for both targets, and installs the open source development files based on the user selection during the installation process.&lt;br /&gt;
*GUI installer  which combines both Scratchbox and SDK installation.&lt;br /&gt;
&lt;br /&gt;
Maemo 5 SDK also provides the essential Nokia proprietary binary packages needed for Maemo development and additional Nokia applications in an authenticated repository. In order to have access to this repository, you will need to accept the End User License Agreement (EULA).    For the complete functionality and usability of the Maemo SDK, it is required to install Nokia proprietary binary packages in addition to the open source packages.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==What is not included in the Maemo SDK?==&lt;br /&gt;
Xephyr X11 server software is needed on your host machine before you can run any applications in the Maemo SDK. It is an X11 server that provides a device screen for the developer so that you can see all the Maemo application windows and visuals on your host machine. This software is not included in the SDK mainly because it is available on most linux distributions. &lt;br /&gt;
&lt;br /&gt;
If you choose to install Maemo SDK using the GUI installer on Debian based systems, it will provide an option to install Xephyr for you. &lt;br /&gt;
&lt;br /&gt;
If not, you can manually install Xephyr as follows:&lt;br /&gt;
&lt;br /&gt;
On Debian based linux systems, Xephyr can be installed outside Scratchbox environment using apt with root permission:&lt;br /&gt;
&lt;br /&gt;
 $ sudo apt-get install xserver-xephyr&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
On a Gentoo system you need to install xorg-server with the kdrive useflag. This builds the Xephyr binary.&lt;br /&gt;
&lt;br /&gt;
=Installing Maemo 5 SDK using GUI Installer=&lt;br /&gt;
&lt;br /&gt;
Maemo 5 SDK installation is now made easy with GUI installer. This&lt;br /&gt;
installer will install Scratchbox and Maemo 5 SDK on Debian based&lt;br /&gt;
systems. This installer will allow installation of nokia closed packages and&lt;br /&gt;
applications provided that EULA at [http://tablets-dev.nokia.com/eula/index.php this webpage] is accepted. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;GUI Installer has following features:&#039;&#039;&#039;&lt;br /&gt;
* Install/Upgrade Scratchbox&lt;br /&gt;
* Installation of Maemo 5 SDK&lt;br /&gt;
* Installation of nokia-binaries&lt;br /&gt;
* Installation of nokia-apps&lt;br /&gt;
* Installation of Xephyr, if missing&lt;br /&gt;
* Can create a launcher for Xephyr on Desktop&lt;br /&gt;
* Can create a shortcut to Scratchbox home folder on Desktop&lt;br /&gt;
* Can create Maemo 5 info page on Desktop that contains useful links for developers &lt;br /&gt;
* Uninstallation of scratchbox &amp;amp; targets (debian-based distros only)&lt;br /&gt;
&lt;br /&gt;
GUI installer offers standard and custom installation modes in a wizard. Standard installation will use default settings, while custom offers more choices. Please note that standard mode will overwrite any of the standard targets (FREMANTLE_X86, FREMANTLE_ARMEL) if present, but contents of Scratchbox home will be preserved. Please use the custom mode if you don&#039;t want to overwrite your targets.&lt;br /&gt;
&lt;br /&gt;
The GUI installer Qt application requires python bindings for Qt. GUI installer can install the required packages if not already installed.&lt;br /&gt;
&lt;br /&gt;
The installer will use http_proxy environment variable if available. If&lt;br /&gt;
your connection doesn&#039;t seem to work, you will be asked to manually&lt;br /&gt;
enter proxy settings.&lt;br /&gt;
&lt;br /&gt;
GUI installer has been tested on Ubuntu Karmic and Debian Lenny, both 32bit and 64bit versions. The GUI installer needs to download Maemo SDK so it requires a working Internet connection. On 64bit kernel, you need to disable VDSO for 32bit applications manually.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Starting installation with GUI installer:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
There is some missing options in this python script if you run from non-debian linux systems you got errors, because it will not automatically define the installation path of scratchbox, to correct this errors you must patch this script.&lt;br /&gt;
&lt;br /&gt;
Also you must uncheck Xephyr checkbox and install it manually.&lt;br /&gt;
&lt;br /&gt;
  129c129&lt;br /&gt;
  &amp;lt; SB_PATH = &amp;quot;/scratchbox&amp;quot;&lt;br /&gt;
  ---&lt;br /&gt;
  &amp;gt; SB_PATH = &amp;quot;/opt/scratchbox&amp;quot;&lt;br /&gt;
  2297a2298&lt;br /&gt;
  &amp;gt;       opt = opt + &amp;quot;-s /opt/scratchbox&amp;quot;&lt;br /&gt;
  2351a2353&lt;br /&gt;
  &amp;gt;       cmd = cmd +&amp;quot; -s /opt/scratchbox&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 wget http://repository.maemo.org/stable/5.0/maemo-sdk-install-wizard_5.0.py&lt;br /&gt;
 chmod a+x maemo-sdk-install-wizard_5.0.py&lt;br /&gt;
&lt;br /&gt;
 $ Installer requires root privileges&lt;br /&gt;
   Ubuntu&lt;br /&gt;
    sudo ./maemo-sdk-install-wizard_5.0.py&lt;br /&gt;
   Debian&lt;br /&gt;
    su -c ./maemo-sdk-install-wizard_5.0.py&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Limitations:&#039;&#039;&#039;&lt;br /&gt;
*As the installer will do package installation, you should quit all package managers before running it.&lt;br /&gt;
*Please note that detecting scratchbox is not perfect and it will detect only if it is installed in /scratchbox path.&lt;br /&gt;
*Please note that python-qt features used in this installer might not be available in older ubuntu and debian distros.&lt;br /&gt;
*Due to differences in versions of Python Qt bindings, certain parts of installation can work differently on different systems.&lt;br /&gt;
*Installer only shows required settings on 64-bit machines but does not add them automatically.&lt;br /&gt;
*Installer will always use DISPLAY :2, if you want to use a different value, you need to change it manually.&lt;br /&gt;
*GUI installer doesn&#039;t work on SUSE Linux. You can use command line installers instead.&lt;br /&gt;
&lt;br /&gt;
=Installing Maemo 5 SDK on x86-32 Debian based distribution=&lt;br /&gt;
&lt;br /&gt;
1. Download the scratchbox installer and the Maemo SDK installer scripts. These are the same scripts as are available through Forum Nokia: [http://www.forum.nokia.com/Tools_Docs_and_Code/Tools/Platforms/Maemo/ Maemo SDK at Forum Nokia].&lt;br /&gt;
&lt;br /&gt;
 $ wget http://repository.maemo.org/stable/5.0/maemo-scratchbox-install_5.0.sh http://repository.maemo.org/stable/5.0/maemo-sdk-install_5.0.sh &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
2. Set the permissions to execute the scripts.&lt;br /&gt;
&lt;br /&gt;
 $ chmod a+x ./maemo-scratchbox-install_5.0.sh  ./maemo-sdk-install_5.0.sh&lt;br /&gt;
&lt;br /&gt;
Users of Ubuntu 10.04 LTS will need to do the following to fix the installation, note that this may reduce system security! [http://talk.maemo.org/showpost.php?p=636394&amp;amp;postcount=8]&lt;br /&gt;
&lt;br /&gt;
 $ sudo su&lt;br /&gt;
 $ echo &amp;quot;vm.mmap_min_addr = 0&amp;quot; &amp;gt;&amp;gt; /etc/sysctl.conf&lt;br /&gt;
 $ sysctl -p&lt;br /&gt;
 $ exit #to go back to user&lt;br /&gt;
&lt;br /&gt;
3. Run the scratchbox installer with root permission specifying the username to be added to scratchbox users group and sbox group. The username should be an existing user name from the host linux system. This will download about 420 MB of material from the web, which is not resumeable if interrupted.&lt;br /&gt;
&lt;br /&gt;
 $ sudo ./maemo-scratchbox-install_5.0.sh -u $USER&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
4. The installation script adds the specified user to ‘sbox’ user group. For the group membership to be effective in the current terminal session, run the following command:&lt;br /&gt;
&lt;br /&gt;
Note: This command will change the existing group ID during the current login session to ‘sbox’. If you do not want this change, just logout and log back in again for the group membership to be effective.&lt;br /&gt;
&lt;br /&gt;
 $ newgrp sbox&lt;br /&gt;
&lt;br /&gt;
At this step, you should have a working Scratchbox environment ready.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
5. Proceed further to run the Maemo SDK installer script. This script is run as &#039;user&#039; outside the scratchbox environment. Set permission for &#039;user&#039;before runing script.&lt;br /&gt;
&lt;br /&gt;
  $ sudo chmod +x ./maemo-sdk-install_5.0.sh  &lt;br /&gt;
  $ ./maemo-sdk-install_5.0.sh&lt;br /&gt;
&lt;br /&gt;
If you have installed Scratchbox in a path alternative to /scratchbox, you will need to specify the path with ‘-s PATH’ option.  More information on available command line options can be found with --help option&lt;br /&gt;
Follow the instructions on the go.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
6. Once the script has successfully completed its execution, you can login into Scratchbox.&lt;br /&gt;
&lt;br /&gt;
 $ /scratchbox/login&lt;br /&gt;
&lt;br /&gt;
If you are not able to login, take a look at the [[#Limitations of Scratchbox|limitations of Scratchbox]].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
7. Proceed further to accept the EULA in order to obtain the Nokia proprietary binary packages. These Nokia binaries are essential for the complete functionality of the Maemo SDK.&lt;br /&gt;
&lt;br /&gt;
7.1. Accept the EULA on [http://tablets-dev.nokia.com/eula/index.php this webpage] &amp;lt;br&amp;gt;&lt;br /&gt;
7.2. Copy the sources.list entry given to you after the license acceptance to your Scratchbox x86 and armel target’s /etc/apt/sources.list file.  Execute the commands below on the _ARMEL and _X86 targets.&lt;br /&gt;
&lt;br /&gt;
 [sbox-FREMANTLE_X86: ~] &amp;gt; sb-conf select FREMANTLE_ARMEL&lt;br /&gt;
 [sbox-FREMANTLE_ARMEL: ~] &amp;gt; nano /etc/apt/sources.list  # add deb line &lt;br /&gt;
 [sbox-FREMANTLE_ARMEL: ~] &amp;gt; apt-get update&lt;br /&gt;
 [sbox-FREMANTLE_ARMEL: ~] &amp;gt; fakeroot apt-get install nokia-binaries nokia-apps&lt;br /&gt;
&lt;br /&gt;
 [sbox-FREMANTLE_ARMEL: ~] &amp;gt; sb-conf select FREMANTLE_X86&lt;br /&gt;
 [sbox-FREMANTLE_X86: ~] &amp;gt; nano /etc/apt/sources.list  # add deb line &lt;br /&gt;
 [sbox-FREMANTLE_X86: ~] &amp;gt; apt-get update&lt;br /&gt;
 [sbox-FREMANTLE_X86: ~] &amp;gt; fakeroot apt-get install nokia-binaries nokia-apps&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The above step installs all needed Nokia proprietary binary packages along with the open source binaries that have dependencies to Nokia proprietary binary packages.&lt;br /&gt;
With this, your Maemo 5 SDK environment is set up completely and ready for development.&lt;br /&gt;
&lt;br /&gt;
=Installing Maemo 5 SDK on openSUSE=&lt;br /&gt;
There are instructions at [http://en.opensuse.org/Maemo5 opensuse.org].&lt;br /&gt;
&lt;br /&gt;
=Installing Maemo 5 SDK on non-Linux operating systems=&lt;br /&gt;
&lt;br /&gt;
If you do not have a Linux environment (Windows or Mac OS X), you can install a [[Documentation/Maemo_5_Developer_Guide/Development_Environment/Maemo_SDK_Virtual_Images|Maemo SDK virtual machine image]]&lt;br /&gt;
from [http://tablets-dev.nokia.com/maemo-dev-env-downloads.php tablets-dev.nokia.com].&lt;br /&gt;
[http://www.vmware.com/products/player/ VMPlayer is required].&lt;br /&gt;
&lt;br /&gt;
=Starting/Shutting down the SDK UI=&lt;br /&gt;
&lt;br /&gt;
Before starting the UI framework, ensure that you have installed the following:&lt;br /&gt;
*Xephyr X11 server on the host machine outside the Scratchbox environment&lt;br /&gt;
*The SDK as described above&lt;br /&gt;
*The Nokia proprietary binary packages&lt;br /&gt;
&lt;br /&gt;
1. Now, run Xephyr outside the scratchbox environment:&lt;br /&gt;
&lt;br /&gt;
 $ Xephyr :2 -host-cursor -screen 800x480x16 -dpi 96 -ac -kb &amp;amp;&lt;br /&gt;
&lt;br /&gt;
Ubuntu 10.04 users using the package in the repositories will have to run the same command without the -host-cursor and -kb, however the terminal window will have to stay open.&lt;br /&gt;
&lt;br /&gt;
2. Login to Scratchbox X86 target&lt;br /&gt;
&lt;br /&gt;
 $ /scratchbox/login&lt;br /&gt;
 &lt;br /&gt;
 Welcome to Scratchbox, the cross-compilation toolkit!&lt;br /&gt;
 &lt;br /&gt;
 Use &#039;sb-menu&#039; to change your compilation target.&lt;br /&gt;
 &lt;br /&gt;
 See /scratchbox/doc/ for documentation.&lt;br /&gt;
 &lt;br /&gt;
 [sbox-FREMANTLE_X86: ~]&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
3. Set the DISPLAY variable to match the display setting given for the Xephyr server.&lt;br /&gt;
&lt;br /&gt;
 [sbox-FREMANTLE_X86: ~] &amp;gt;export DISPLAY=:2&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
4. Start the UI framework .&lt;br /&gt;
&lt;br /&gt;
 [sbox-FREMANTLE_X86: ~] &amp;gt;af-sb-init.sh start&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
5. You will now see the UI framework up and running on the Xephyr window.&lt;br /&gt;
&lt;br /&gt;
6. You can shut down the UI framework as follows:&lt;br /&gt;
&lt;br /&gt;
  [sbox-FREMANTLE_X86: ~] &amp;gt;af-sb-init.sh stop&lt;br /&gt;
&lt;br /&gt;
=Installation of x86-64 Debian based distributions=&lt;br /&gt;
Since Scratchbox only supports x86-32 bit Linux host systems, we need to force the installation of x86-32 Scratchbox packages on the x86-64 bit machines. Using the -F option with the Scratchbox installation script can do this.&lt;br /&gt;
&lt;br /&gt;
==Installation procedure==&lt;br /&gt;
&lt;br /&gt;
*Download the Scratchbox installer and the Maemo SDK installer scripts.&lt;br /&gt;
&lt;br /&gt;
 $ wget -c http://repository.maemo.org/stable/5.0/maemo-scratchbox-install_5.0.sh http://repository.maemo.org/stable/5.0/maemo-sdk-install_5.0.sh &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*Set permissions to execute the scripts.&lt;br /&gt;
&lt;br /&gt;
 $ chmod a+x ./maemo-scratchbox-install_5.0.sh  ./maemo-sdk-install_5.0.sh&lt;br /&gt;
&lt;br /&gt;
Users of Ubuntu 10.04 LTS will need to do the following to fix the installation, note that this may reduce system security! [http://talk.maemo.org/showpost.php?p=636394&amp;amp;postcount=8]&lt;br /&gt;
&lt;br /&gt;
 $ sudo su&lt;br /&gt;
 $ echo &amp;quot;vm.mmap_min_addr = 0&amp;quot; &amp;gt;&amp;gt; /etc/sysctl.conf&lt;br /&gt;
 $ sysctl -p&lt;br /&gt;
 $ exit #to go back to user&lt;br /&gt;
&lt;br /&gt;
*Run the Scratchbox installer script as &#039;root user&#039; with -F option, specifying the username to be added to Scratchbox users group sbox group as follows:&lt;br /&gt;
&lt;br /&gt;
 $ sudo ./maemo-scratchbox-install_5.0.sh -F -u $USER&lt;br /&gt;
&lt;br /&gt;
*If you are running squeeze or intrepid or later, read [[#Limitations_of_Scratchbox]] before continuing.&lt;br /&gt;
&lt;br /&gt;
Upon successful installation of Scratchbox, continue to run the Maemo 5 Final SDK Installer as instructed in the x86-32 installation.&lt;br /&gt;
&lt;br /&gt;
=Starting Scratchbox on non-Debian based systems=&lt;br /&gt;
If Scratchbox was installed from Debian packages, the /etc/init.d/scratchbox-core init script is installed and Scratchbox should start automatically when the system is rebooted. However, if you have installed Scratchbox from tarballs, then rebooting your machine will clear away all the mounts and binfmt_misc registrations that Scratchbox requires to work. To get your Scratchbox working again after reboot, you have to run the following command as root:&lt;br /&gt;
&lt;br /&gt;
 $ sudo /scratchbox/sbin/sbox_ctl start&lt;br /&gt;
&lt;br /&gt;
Alternatively you can add sbox_ctl as an init script to the /etc/init.d directory and create the appropriate links at your system&#039;s runlevel directories. This procedure works on some systems:&lt;br /&gt;
&lt;br /&gt;
 $ ln -s /scratchbox/sbin/sbox_ctl /etc/init.d/scratchbox-core&lt;br /&gt;
 $ /usr/sbin/update-rc.d scratchbox-core defaults&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Refer to your system&#039;s documentation for the correct instructions.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Upgrading from Maemo 5 Beta2 SDK=&lt;br /&gt;
&lt;br /&gt;
A smooth upgrade from beta2 to Final SDK is unfortunately not possible. Hence it is advised to freshly install the Final SDK. Before you do so, read through the instructions below.&lt;br /&gt;
&lt;br /&gt;
Some of the Nokia applications shipped with the final SDK use a hard coded path for user home directory which presents a problem since the default username on the device differs from the username on the developer’s machine. To make these applications work, it is required to create a home directory that matches the hard coded value.  This needs to be done outside scratchbox using root privileges. The -u  option in the Scratchbox installer has been updated to create the necessary symlinks.  Running the installer with -u option when the Scratchbox has been already installed will just add the user and create symlinks.  Running it for already existing user will check for the symlink and create it if needed.&lt;br /&gt;
&lt;br /&gt;
Run the command below to create the symlink for existing Scratchbox user:&lt;br /&gt;
&lt;br /&gt;
 $ sudo ./maemo-scratchbox-install_5.0.sh -u &amp;lt;EXISTING_USER&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Alternatively, you can create the symlinks manually as follows, if Scratchbox is installed in the default location:&lt;br /&gt;
&lt;br /&gt;
 $ sudo ln -s /scratchbox/users/&amp;lt;username&amp;gt;/home/&amp;lt;username&amp;gt; /scratchbox/users/&amp;lt;username&amp;gt;/home/user&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The Final SDK installer additionally creates a directory /opt under /target/&amp;lt;target_name&amp;gt;/.&lt;br /&gt;
&#039;&#039;&#039;Reason:&#039;&#039;&#039; In order to facilitate installing applications under /opt on the device, a symlink  /opt has been created pointing to /home/opt. The SDK inherits this feature. Under Scratchbox, /opt points to /target/links/opt which in turn points to /targets/&amp;lt;target_name&amp;gt;/opt. Installing the rootstraps makes this point to /home/opt, which is not what we want, since we need /opt to be target specific.  In order to resolve this situation, we have to manually check whether /targets/&amp;lt;target_name&amp;gt;/opt is a symlink and if it is, remove it and create a directory with the same name.&lt;br /&gt;
&lt;br /&gt;
=Upgrading from Maemo 4.x/Diablo SDK=&lt;br /&gt;
Due to the fact that there are API breaks in Fremantle, we cannot upgrade Diablo SDK to Fremantle. We can however have Fremantle Scratchbox targets co-exist with Diablo targets.&lt;br /&gt;
&lt;br /&gt;
For this, we need to first upgrade the Scratchbox installation on our host machine.&lt;br /&gt;
&lt;br /&gt;
*Download the Maemo5 scratchbox installer.&lt;br /&gt;
&lt;br /&gt;
*Set executable permissions and run it as follows:&lt;br /&gt;
&lt;br /&gt;
 $ chmod a+x ./maemo-scratchbox-install_5.0.sh&lt;br /&gt;
 $ sudo  ./maemo-scratchbox-install_5.0.sh -U -u &amp;lt;EXISTING_USER&amp;gt; -s /scratchbox&lt;br /&gt;
&lt;br /&gt;
Once the Scratchbox installation is done, run the Maemo 5 Final SDK installer.&lt;br /&gt;
&lt;br /&gt;
=Manual Installation=&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;On x86-32 Debian based systems:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
*You can add the following line into your host machine&#039;s /etc/apt/sources.list file.&lt;br /&gt;
&lt;br /&gt;
 deb http://scratchbox.org/debian/ maemo5-sdk main&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*Install the needed Scratchbox packages with root permission&lt;br /&gt;
&lt;br /&gt;
 $ sudo apt-get update&lt;br /&gt;
 $ sudo apt-get install scratchbox-core scratchbox-libs scratchbox-devkit-qemu scratchbox-devkit-debian scratchbox-devkit-doctools scratchbox-devkit-perl scratchbox-toolchain-host-gcc scratchbox-toolchain-cs2007q3-glibc2.5-arm7 scratchbox-toolchain-cs2007q3-glibc2.5-i486  scratchbox-devkit-svn scratchbox-devkit-git scratchbox-devkit-apt-https&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;On x86-64 Debian based systems:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
*Download the Scratchbox packages from [http://scratchbox.org/download/files/sbox-releases/branches/apophis/r4/deb/ here].&lt;br /&gt;
&lt;br /&gt;
*Force the installation of the x86-32 packages with root permission as follows:&lt;br /&gt;
&lt;br /&gt;
 $ sudo dpkg -i --force-architecture scratchbox-core scratchbox-libs scratchbox-devkit-qemu scratchbox-devkit-debian scratchbox-devkit-doctools scratchbox-devkit-perl scratchbox-toolchain-host-gcc scratchbox-toolchain-cs2007q3-glibc2.5-arm7 scratchbox-toolchain-cs2007q3-glibc2.5-i486  scratchbox-devkit-svn scratchbox-devkit-git scratchbox-devkit-apt-https&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The Scratchbox packages will be unpacked to /scratchbox directory and the installation procedure will ask you some questions about the group and user accounts. Default group to Scratchbox is &#039;sbox&#039;.&lt;br /&gt;
&lt;br /&gt;
*Users who will be using Scratchbox should be added using the following command with root permission:&lt;br /&gt;
&lt;br /&gt;
 $ sudo /scratchbox/sbin/sbox_adduser USER yes&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
It will automatically include the user to the Scratchbox group, create user directories under /scratchbox/users and mount several directories (/dev, /proc, /tmp) under the user directory.&lt;br /&gt;
&lt;br /&gt;
*Some of the Nokia applications shipped with the final SDK use a hard coded path for user home directory which presents a problem since the default username on the device differs from the username on the developer’s machine. To make these applications work, it is required to create a home directory that matches the hard coded value.  This needs to be done outside scratchbox using root privileges.&lt;br /&gt;
&lt;br /&gt;
 $ sudo ln -s /scratchbox/users/&amp;lt;username&amp;gt;/home/&amp;lt;username&amp;gt; /scratchbox/users/&amp;lt;username&amp;gt;/home/user&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*For the group membership to be effective in the current terminal session, run the following command:&lt;br /&gt;
&lt;br /&gt;
 $ newgrp sbox&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Note:&#039;&#039;&#039; This command will change the existing group ID during the current login session to &#039;sbox&#039;. If you do not want to change, simply logout and log back in for the group membership to be effective.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*Log-in to Scratchbox.&lt;br /&gt;
&lt;br /&gt;
 $ /scratchbox/login&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*Configure the scratchbox x86 and armel targets as follows:&lt;br /&gt;
&lt;br /&gt;
 [sbox-&amp;gt;:~]&amp;gt;sb-conf st FREMANTLE_X86 -c cs2007q3-glibc2.5-i486 -d perl:debian-etch:doctools:svn:git -t none&lt;br /&gt;
 [sbox-&amp;gt;:~]&amp;gt;sb-conf st FREMANTLE_ARMEL -c cs2007q3-glibc2.5-arm7 -d qemu:perl:debian-etch:doctools:svn:git -t qemu-arm-sb&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*Download the minimal rootstraps.&lt;br /&gt;
&lt;br /&gt;
 [sbox-&amp;gt;:~]&amp;gt; wget http://repository.maemo.org/stable/5.0/armel/maemo-sdk-rootstrap_5.0_armel.tgz http://repository.maemo.org/stable/5.0/i386/maemo-sdk-rootstrap_5.0_i386.tgz&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*Switch to x86 target, install the devkits, etc and fakeroot into the target, install the minimal rootstrap and finally the Maemo development files.&lt;br /&gt;
&lt;br /&gt;
 [sbox-&amp;gt;:~]&amp;gt; sb-conf se FREMANTLE_X86&lt;br /&gt;
 [sbox-FREMANTLE_X86: ~] &amp;gt; sb-conf rs maemo-sdk-rootstrap_5.0_i386.tgz&lt;br /&gt;
&lt;br /&gt;
*Some users seem to have problems downloading all files with apt http pipelining enabled. If you want to make sure or you get download errors like &amp;quot;104 connection reset by peer&amp;quot; at the fakeroot steps below, then disable http pipelining with the next command:&lt;br /&gt;
 [sbox-FREMANTLE_X86: ~] &amp;gt; echo &#039;Acquire::http::Pipeline-Depth &amp;quot;0&amp;quot;;&#039; &amp;gt;&amp;gt; /etc/apt/apt.conf.d/00maemo&lt;br /&gt;
&lt;br /&gt;
*either way, continue here:&lt;br /&gt;
 [sbox-FREMANTLE_X86: ~] &amp;gt; sb-conf in -edFL&lt;br /&gt;
 [sbox-FREMANTLE_X86: ~] &amp;gt; apt-get update&lt;br /&gt;
 [sbox-FREMANTLE_X86: ~] &amp;gt; fakeroot apt-get install maemo-sdk-debug&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The meta-package &#039;maemo-sdk-debug&#039; installs all needed open source runtime, development and debug pakcages into the target. Use maemo-sdk-runtime if you want only runtime packages to be installed or user maemo-sdk-dev if you want only the runtime + development packages to be installed.&lt;br /&gt;
&lt;br /&gt;
*Accept the EULA from [http://tablets-dev.nokia.com/eula/index.php here]  to obtain the URL to access the Nokia binaries repository.&lt;br /&gt;
&lt;br /&gt;
*Add the URL thus obtained to the Scratchbox target&#039;s /etc/apt/sources.list and do the following:&lt;br /&gt;
&lt;br /&gt;
 [sbox-FREMANTLE_X86: ~] &amp;gt;apt-get update&lt;br /&gt;
 [sbox-FREMANTLE_X86: ~] &amp;gt;fakeroot apt-get install nokia-binaries nokia-apps&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*In order to facilitate installing applications under /opt on the device, a symlink  /opt has been created pointing to /home/opt. The SDK inherits this feature. Under Scratchbox, /opt points to /target/links/opt which in turn points to /targets/&amp;lt;target_name&amp;gt;/opt. Installing the rootstraps makes this point to /home/opt, which is not what we want, since we need /opt to be target specific.  In order to resolve this situation,&lt;br /&gt;
&lt;br /&gt;
 [sbox-FREMANTLE_X86: ~] &amp;gt;rm /targets/FREMANTLE_X86/opt&lt;br /&gt;
 [sbox-FREMANTLE_X86: ~] &amp;gt;mkdir /targets/FREMANTLE_X86/opt&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*Execute similar steps on the armel target too to set it up:&lt;br /&gt;
&lt;br /&gt;
 [sbox-FREMANTLE_X86: ~]&amp;gt; sb-conf se FREMANTLE_ARMEL&lt;br /&gt;
 [sbox-FREMANTLE_ARMEL: ~] &amp;gt; sb-conf rs maemo-sdk-rootstrap_5.0_armel.tgz&lt;br /&gt;
&lt;br /&gt;
*again,the next command disables http pipelining, if you like:&lt;br /&gt;
 [sbox-FREMANTLE_X86: ~] &amp;gt; echo &#039;Acquire::http::Pipeline-Depth &amp;quot;0&amp;quot;;&#039; &amp;gt;&amp;gt; /etc/apt/apt.conf.d/00maemo&lt;br /&gt;
&lt;br /&gt;
*pipelining disabled or not, here we go again...&lt;br /&gt;
 [sbox-FREMANTLE_ARMEL: ~] &amp;gt; sb-conf in -edFL&lt;br /&gt;
 [sbox-FREMANTLE_ARMEL: ~] &amp;gt; apt-get update&lt;br /&gt;
 [sbox-FREMANTLE_ARMEL: ~] &amp;gt; fakeroot apt-get install maemo-sdk-debug&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*Add the same URL obtained above to access the Nokia binaries repository under /etc/apt/sources.list file of the Scratchbox armel target.&lt;br /&gt;
&lt;br /&gt;
 [sbox-FREMANTLE_ARMEL: ~] &amp;gt;apt-get update&lt;br /&gt;
 [sbox-FREMANTLE_ARMEL: ~] &amp;gt;fakeroot apt-get install nokia-binaries nokia-apps&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*Create the /opt directory.&lt;br /&gt;
&lt;br /&gt;
 [sbox-FREMANTLE_ARMEL: ~] &amp;gt;rm /targets/FREMANTLE_ARMEL/opt&lt;br /&gt;
 [sbox-FREMANTLE_ARMEL: ~] &amp;gt;mkdir /targets/FREMANTLE_ARMEL/opt&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
With this, you must now have both the targets setup and ready to use.&lt;br /&gt;
&lt;br /&gt;
[[#Starting/Shutting down the SDK UI|Start the UI framework]].&lt;br /&gt;
&lt;br /&gt;
=Un-installation=&lt;br /&gt;
&lt;br /&gt;
Make sure that you have no process running inside Scratchbox. Uninstalling Scratchbox will remove everything that is installed and saved inside Scratchbox. Please take a backup of your files from Scratchbox user home directory if needed.&lt;br /&gt;
&lt;br /&gt;
On Debian based systems, do the following with root permissions:&lt;br /&gt;
&lt;br /&gt;
 $ sudo apt-get remove scratchbox-* --purge&lt;br /&gt;
 $ sudo rm -rf /scratchbox&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
On non-Debian based systems, you need to stop scratchbox as follows before removing it.&lt;br /&gt;
&lt;br /&gt;
 $ sudo /scratchbox/sbin/sbox_ctl stop&lt;br /&gt;
 $ sudo rm -rf /scratchbox&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Limitations of Scratchbox=&lt;br /&gt;
&lt;br /&gt;
The following limitations have been noted in the usage of Scratchbox:&lt;br /&gt;
&lt;br /&gt;
==VDSO support==&lt;br /&gt;
Scratchbox does not work when VDSO32 support is enabled in the host&#039;s kernel. We&#039;re working on making it possible, but at the moment there are some workarounds, which are presented here.&lt;br /&gt;
&lt;br /&gt;
If your host has VDSO32 turned on you will get an error like this when trying to login to Scratchbox.&lt;br /&gt;
&lt;br /&gt;
 No directory, logging in with HOME=/&lt;br /&gt;
 Inconsistency detected by ld.so: rtld.c: 1192: dl_main: Assertion `(void *) &lt;br /&gt;
 ph-&amp;gt;p_vaddr == _rtld_local._dl_sysinfo_dso&#039; failed!&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==x86-64 kernel==&lt;br /&gt;
&lt;br /&gt;
x86-64 Linux kernels starting from version 2.6.25 enable VDSO32 by default. To temporarily disable VDSO32 execute &lt;br /&gt;
&lt;br /&gt;
 sysctl abi.vsyscall32=0&lt;br /&gt;
&lt;br /&gt;
On Linux kernel 2.6.24 &amp;lt;= you can disable VDSO32 by executing&lt;br /&gt;
&lt;br /&gt;
 sysctl vm.vdso_enabled=0&lt;br /&gt;
&lt;br /&gt;
or&lt;br /&gt;
&lt;br /&gt;
 sysctl kernel.vdso=0&lt;br /&gt;
&lt;br /&gt;
The current setting of VDSO32 can be verified by using sysctl. Only values 0 and 2 are compatible with Scratchbox. In our examples we use 0 (disable). 2 enables compat mode.&lt;br /&gt;
&lt;br /&gt;
You can set all of these permanently by adding the following lines to /etc/sysctl.conf&lt;br /&gt;
&lt;br /&gt;
 vm.vdso_enabled = 0&lt;br /&gt;
 abi.vsyscall32 = 0&lt;br /&gt;
 kernel.vdso = 0&lt;br /&gt;
&lt;br /&gt;
Save the file and run the command:&lt;br /&gt;
&lt;br /&gt;
 $ sudo sysctl -p&lt;br /&gt;
&lt;br /&gt;
Please note the correct line depends on your Linux kernel version. When you execute sysctl -p you may get a warning about unknown keys. You can safely ignore those warnings as long as one of the 3 settings works.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;WARNING :&#039;&#039;&#039; You should try setting these values by echoing them to the given locations before adding them to sysctl.conf to see if they cause any problems. For example, in some Ubuntu Gutsy installations, it has been observed that changing the VDSO settings will hang the system and thus making permanent changes in sysctl.conf may, in these cases, make your system unbootable.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Known Issues in the SDK=&lt;br /&gt;
&lt;br /&gt;
*A list of issues and their solutions can be found in the [[Developer_FAQ#Maemo_SDK_and_Scratchbox|Developer FAQ]] article&lt;br /&gt;
&lt;br /&gt;
*Unnecessary warnings and debugging messages are printed out when the hildon application framework is started.&lt;br /&gt;
&lt;br /&gt;
*Armel target does not bring up the UI framework&lt;br /&gt;
&lt;br /&gt;
*It has been noted that Xephyr dies with the application framework at times. The crash in question might even be Xephyr related since the application framework behaves differently with different versions/builds of Xephyr. The case seems to be worst on Xephyr that comes with Ubuntu Jaunty, there Xephyr will die when running any application that contains an input field and clicking on that field with a mouse to invoke the input method. On Fedora Code 10 the Xephyr does not mind the mouse clicks but dies when shutting down the application framework. On the other hand Xephyr on Ubuntu Intrepid or even the Intrepid version recompiled for Jaunty does not experience crashing in these situations.&lt;br /&gt;
&lt;br /&gt;
A patch is already available for the Xephyr on Ubuntu Jaunty and can be found at http://bugs.freedesktop.org/show_bug.cgi?id=21591. Binaries packages for [http://launchpadlibrarian.net/30330126/xserver-xephyr_1.6.3-1ubuntu2_i386.deb xserver-xephyr] package and its dependencies ([http://launchpadlibrarian.net/27533744/libgpg-error0_1.6-1ubuntu1_i386.deb libgpg-error0] and [http://launchpadlibrarian.net/28623981/libgcrypt11_1.4.4-2ubuntu2_i386.deb libcrypt11]) can be download from Ubuntu Jaunty repositories.&lt;br /&gt;
&lt;br /&gt;
*The performance of clutter can be improved by enabling hardware acceleration if not enabled already. In some cases, it would require installing restricted/proprietary drivers (Eg: on host machines with ATI or NVidia graphics card). Refer to [[Maemo5 clutter performance]] for more details.&lt;br /&gt;
&lt;br /&gt;
*Running Xephyr with -kb option disables entry of “@” symbol. However, removing -kb option disables cursor keys.&lt;br /&gt;
&lt;br /&gt;
*Running Xephyr with -host-cursor is causing Xephyr to crash in Ubuntu Lucid and Debian Squeeze when the Hildon Application Framework is closed.&lt;br /&gt;
&lt;br /&gt;
*Xephyr in Ubuntu Lucid does not support the -kb option anymore. https://bugs.launchpad.net/ubuntu/+source/xorg-server/+bug/531872&lt;br /&gt;
  &lt;br /&gt;
*In order to run ARMEL binaries in scratchbox the mmap_min_address needs to be set to 4096. Normally the SDK installer warns about that,  but in Ubuntu Lucid the /proc entry is visible only to root, so the SDK   installer can not see it. https://bugs.launchpad.net/ubuntu/+source/linux/+bug/568844&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Scratchbox]]&lt;/div&gt;</summary>
		<author><name>192.100.124.219</name></author>
	</entry>
	<entry>
		<id>https://maemo.octonezd.me/index.php?title=Maemo_5/PR1.2&amp;diff=18707</id>
		<title>Maemo 5/PR1.2</title>
		<link rel="alternate" type="text/html" href="https://maemo.octonezd.me/index.php?title=Maemo_5/PR1.2&amp;diff=18707"/>
		<updated>2010-05-26T09:50:05Z</updated>

		<summary type="html">&lt;p&gt;192.100.124.219: /* New Features */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Firmware update}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Maemo 5/PR1.1.1|PR 1.1.1]] was the preparatory release for PR1.2, which should be [http://conversations.nokia.com/2010/05/25/nokia-n900-software-update-release-1-2/ released on May 25/26, 2010].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The Maemo 5/PR1.2 SDK and tools has been updated on March 22nd, 2010 in order to give the developers time to adapt to the new firmware update and Qt 4.6.&lt;br /&gt;
&lt;br /&gt;
= New Features =&lt;br /&gt;
* Skype video call (with PC and other skype video capable clients)&lt;br /&gt;
* Gtalk video call (with gtalk PC web client or other gtalk video capable clients like N900, N810, N800 etc., or GNOME desktop client). In general, with any xmpp video call capable client.&lt;br /&gt;
* SIP video call (with supported SIP video call clients)&lt;br /&gt;
* Skype multiuser chat&lt;br /&gt;
* Qt 4.6.2 is now preinstalled on the OS.&lt;br /&gt;
* Changes for the video recording in the Camera Application.&lt;br /&gt;
* Video calling can be accessed through contacts (skype and gtalk).&lt;br /&gt;
* Can dial USSD Codes.&lt;br /&gt;
* SS codes dialing available as ester egg (go figure).&lt;br /&gt;
* No more &amp;quot;More&amp;quot; menu in application launcher, and is rearrangeable.&lt;br /&gt;
* Virtual Keyboard has been modified and now looks different.&lt;br /&gt;
* File Manager is now able to share any file and/or folder.&lt;br /&gt;
* Typing in Application Manager starts a search (like it is in Contacts or Media Player).&lt;br /&gt;
* Status area is now reachable in portrait mode (not working here...)&lt;br /&gt;
* &amp;lt;s&amp;gt;Portrait mode Virtual Keyboard for browser. *Not yet confirmed* [http://talk.maemo.org/showpost.php?p=583355&amp;amp;postcount=206 (Source)]&amp;lt;/s&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Resolved bugs =&lt;br /&gt;
&lt;br /&gt;
Please note that this list is not necessarily complete.&lt;br /&gt;
&lt;br /&gt;
See [https://bugs.maemo.org/buglist.cgi?classification=Maemo%20Official%20Applications&amp;amp;classification=Maemo%20Official%20Platform&amp;amp;resolution=FIXED&amp;amp;target_milestone=5.0%2F%28PR1.2%29&amp;amp;order=map_products.name%2Cbugs.bug_id this] query for more accurate/up-to-date report.&lt;br /&gt;
&lt;br /&gt;
== maemo.org Official Applications: ==&lt;br /&gt;
&lt;br /&gt;
=== Browser ===&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=1800 tapping browser rss icon lists two RSS feeds, one from an iframe]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=1801 tapping browser rss icon should list ATOM feed, not just RSS]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=5485 &amp;quot;&amp;quot;restart&amp;quot;&amp;quot; button after finishing download not localized (in Finnish)]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=5526 Type-to-find behaviour is inconsistent and suboptimal in browser]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=5684 History images do not match actual URLs under them]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=5705 Browser drawing issue in web pages with (multiple?) Flash applets]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=5783 Smooth scrolling not active using arrow keys until current page tapped]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=5829 &amp;quot;&amp;quot;Select user name&amp;quot;&amp;quot; dialog not finger friendly]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=5945 URL proposals in browser disappear after some hours]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=6066 Sticky shift &amp;amp; Fn not working for Flash text input fields: Impossible to use special characters palette]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=6184 Find on page causes page to reload]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=6269 Can&#039;t reuse the name of a bookmark that has been deleted]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=6342 Use Volume hardware key for adjust the device volume instead of zooming a website]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=6396 Zooming is not working right away when link clicked from desktop]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=6598 Browser should display passwords one character at a time like other applications]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=6743 Screen sometimes flickers when scrolling through bookmarks triggers rubber banding]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=6819 High CPU usage for 15 seconds after page loaded (Deleting History helps)]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=7174 specifying &amp;quot;&amp;quot;DejaVu Sans Mono&amp;quot;&amp;quot;,&amp;quot;&amp;quot;Courier New&amp;quot;&amp;quot;,monospace,Freemono fonts break pre]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=7235 g_mozilla_parse_env_proxy limits proxy server names to about 20 characters [http_proxy]]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=7335 Browser shows strong font kerning bugs (esp. when zooming)]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=7445 mobile4arab.com: After zooming in, sometimes cannot drag to the right side]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=7566 Browser toolbar steals text focus in fullscreen mode when &amp;quot;&amp;quot;Auto focus address field&amp;quot;&amp;quot; is enabled]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=7567 Browser toolbar steals text focus in fullscreen mode with remapped arrow keys]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=7568 Sites in history overview that were loaded in portrait mode appear distorted]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=7620 Browser process opens ports on all interfaces.]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=7806 Browser crashes while sending a comment to Maemo.org]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=7890 Clicking on webcal:// link does nothing (not even an error dialog)]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=8010 browser repaints after switching from contacts]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=8091 Press and hold in Browser portrait mode does nothing]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=8104 Browser portrait mode makes it stop working after a while]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=8117 Browser doesn&#039;t show progress indicator when user selects url from urlbar completion list]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=8252 Browser addressbar refreshes/blanks shortly after new window opens]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=8276 Imported SSL Certificates not recognized after PR1.1]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=8362 Some combination of Maemo 5 + Nokia N900 results in improper onChange callbacks in the maemo browser]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=8385 New browser windows&#039; contents are not updated when page loads in background]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=8601 Provide UI to enable/disable portrait mode]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=8606 Cannot scroll web bookmark folders if more than 5 folders]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=8683 Browser crashes when browsing some websites]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=8763 Back yields grayed page]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=8784 Browser crashes while changing system theme]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=8920 MicroB loses first keystroke]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=9362 Page view &amp;quot;&amp;quot;unstable&amp;quot;&amp;quot; (due to animated GIFs?)]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=9365 Maemo Browser does not honor CSS serif font specifications]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=9460 Disable show images leads to failure in opening links in a new window]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=9555 Only the address bar is visible on the bottom panel]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=9566 Browser doesn&#039;t stop flash or another plugins while device is locked]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=9926 No more search results loads new page]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=10101 browser: incorrect display then internal error (double access to the same buffer)]&lt;br /&gt;
&lt;br /&gt;
=== Calendar ===&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=6431 Alarm setting for Birthday is removed after adding photo to contact]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=6687 Calendar (and Calendar desktop Widget) can take up to 30 seconds to become responsive when a lot of Smart Calendar items are present]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=6909 Calendar launches automatically at 4:00 each night]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=8169 exported .ics calendars have bad line format (LF for empty lines)]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=8175 Exported calendars lack PRODID properties]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=8332 Day View doesn&#039;t display synced events with complex uneditable repeats]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=8448 tasks also displayed as notes]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=8463 libcalendar produces AALARM properties containing unescaped CRLF which prevents OSX synchronisation]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=8481 notes imported without DTSTART fields are not displayed]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=8678 Overdue tasks should be displayed as today&#039;s]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=8889 New event in calendar causes crash when using bg_BG locales]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=9048 &amp;quot;&amp;quot;Internal Error: Application &#039;Calendar&#039; closed when importing ics file]&lt;br /&gt;
&lt;br /&gt;
=== Chat &amp;amp; Call &amp;amp; SMS ===&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=5357 Does not accept GSM (USSD) Codes starting with *#]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=6016 Can&#039;t see the number an SMS was sent to]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=6201 libnice violates Debian packaging policy for description of package &amp;quot;&amp;quot;libnice0&amp;quot;&amp;quot;]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=6300 :/ in http:// is converted into an emoticon in some cases]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=6641 Sofia-SIP throws 500 Internal Server Error]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=6692 Unable to set a Google Talk account to Away]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=6733 gmail status set to away when skype status set to invisible]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=6769 Can&#039;t  answer a phone call with a short caller ID]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=6857 USSD codes are not recognized in chat]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=6936 Caller voice gets minced after some time when taking call via SIP]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=7052 Unable to see the sender&#039;s phone number used for a received sms]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=7212 Sent text messages are shown as unsent]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=7227 Contact names do not resolve correctly when country code is prefixed.]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=7361 Make a phone call to a contact from the sms view]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=7375 account-plugin-butterfly - delete contacts doesn&#039;t work]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=7470 N900 does not support Skype Voicemail Settings]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=7856 Recent Call entries are shown in conversations]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=7886 Tapping &#039;Task Manager&#039; shows &#039;Clear Conversation&#039; option while in a conversation]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=7933 Conversation IM window is not responding when Select contact dialog is displayed in background]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=7952 GTalk contact offline text is shown in conversion even if contact is back online]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=8082 Voice can be heard only one way with Saunalahti Nettipuhelin]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=8428 Carrier doesn&#039;t stop attempting to send USSD codes that aren&#039;t received (automated balance receipt)]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=8441 Messages don&#039;t change to &amp;quot;&amp;quot;read&amp;quot;&amp;quot; status after being read]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=8454 Placing a call in portrait mode gets desktop stuck in portrait mode upon exit.]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=8573 Conversation doesn&#039;t respect aspect ratio in avatars]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=8581 Reduce XMPP data packets to save battery]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=8854 Jabber opens unnecessary proxy connections]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=8954 SMS Sort/Filter/Search does not allow numbers to be entered (Fn key does not work beyond first digit)]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=8958 portrait layout for receiving call shown in landscape mode (-&amp;gt; no Reject button)]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=9005 XMPP lacks option to require TLS (vulnerable to MITM attacks)]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=9231 Open contact card&#039; broken for newly sent SMS]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=9243 Telephony uses 100% CPU for video call (using Google Talk)]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=9501 Phone UI not rotating to portrait mode]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=9973 SIP account can not be re-activated]&lt;br /&gt;
&lt;br /&gt;
=== Contacts ===&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=2962 Not able to open Maps application with contacts location as a search string]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=5510 Contact merge of number dialed manually via Skype fails due to internal error]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=5742 Contacts: Provide &amp;quot;&amp;quot;Fax&amp;quot;&amp;quot; field(s)]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=6375 Provides SMS buttons for &amp;quot;&amp;quot;Phone&amp;quot;&amp;quot; entries and not only &amp;quot;&amp;quot;Mobile&amp;quot;&amp;quot; entries]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=6503 only 2 Lines of Notes are visible in Contacts]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=6945 Skype: merged contact has duplicate phone number]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=7515 List of countries not shown on tapping the country picker button]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=8022 Making a SIP call crashes osso-addressbook]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=8159 Missing direct shortcut to use SIP/Skype again in Recent Calls list]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=8495 &amp;quot;&amp;quot;SIP audio&amp;quot;&amp;quot;  buttons active with no SIP accounts active]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=9010 Merging contacts, unable to select neither as an option in conflict field]&lt;br /&gt;
&lt;br /&gt;
=== Desktop Widgets ===&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=5331 Add AVRCP support to the Media Player widget (and system-wide?)]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=5894 Play track button doesn&#039;t work]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=6748 Small line visible below media player widget]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=6907 Media Player widget suddenly starts music after Phone call ends]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=7996 Media player&#039;s desktop widget displays wrong metadata of internet radios]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=8002 Being offline, RSS Reader tries to connect for refresh unconditionally]&lt;br /&gt;
&lt;br /&gt;
=== Email ===&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=2582 Option to download messages but not attachments (&amp;quot;&amp;quot;Messages only&amp;quot;&amp;quot;)]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=2922 Want ability to delete POP mail from server]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=3387 Modest doesn&#039;t fetch GMX IMAP mail (issuing LIST &amp;quot;&amp;quot;&amp;quot;&amp;quot; instead of LIST &amp;quot;&amp;quot;*&amp;quot;&amp;quot;)]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=4211 There should be a desktop widget for mail (like rss)]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=4834 Remove deprecated GTK+ symbols]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=4876 Remove libgnomeui dependency]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=4887 Use accessor functions instead direct access]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=4889 Use single GTK+ includes]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=4973 Support silent build rules with automake 1.11]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=4976 Add option in modest to add/not add new contact when replying to mail]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=5033 Select/Copy text within email is nonintuitive/broken]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=5161 Fix some compilation warnings in GNOME version]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=5266 Remove unneeded modest_osso_load_state () calls]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=5267 Remove unused modest-osso-autosave-callbacks.c/h files]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=5341 Can&#039;t disable email notification - makes notification unusable if you receive lots of mail]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=5417 Delete button greyed out when opening from notification popup]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=5503 Failed outgoing mails when using Nokia Messaging and Exchange]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=5634 Deleted IMAP messages are not expunged]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=5836 POP3 TCP connection is left open leading to locking issues]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=5870 Long emails can&#039;t be read - distorted output on screen after scrolling]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=6027 Only require libmodest-dbus-client in maemo platform]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=6048 Volume hardware key works only once; afterwards &amp;quot;&amp;quot;Unable to zoom&amp;quot;&amp;quot; in list of mail accounts, list of mail folders, New Mail editor]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=6279 Modest is very slow at loading images]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=6541 Polish Subject line violates RFC (&amp;quot;&amp;quot;Odp.&amp;quot;&amp;quot; prefix)]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=6570 Double-tapping &amp;quot;&amp;quot;Inbox&amp;quot;&amp;quot; sometimes opens &#039;empty&#039; Inbox]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=6575 Tapping new Email notification does not bring up email message]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=6700 Semicolon in To field should be ignored when sending a message]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=6702 email application does not see folders on imap4 with namespace]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=7139 Replying to an email with non-ascii chars in From cuts name short]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=7485 Email message viewer window refreshes a second time when email opened from Notification icon]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=7701 Arabic language not shown or encoded in Modest]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=7718 Unable to save attachment from e-mail without e-mail body]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=8230 cannot move message anywhere]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=8574 Subfolders of Zimbra IMAP server not appearing/not available]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=8604 Type-to-find behaviour is inconsistent and suboptimal in modest]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=10108 hyperlinks in email program terminates on &amp;amp;]&lt;br /&gt;
&lt;br /&gt;
=== Games ===&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=3748 Erroneous &amp;quot;&amp;quot;Game not started yet&amp;quot;&amp;quot; message]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=5276 hildon-games-wrapper crashes in hgw_conf_request_string if gconf key has no value]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=5868 Games do not respect master volume (&amp;quot;&amp;quot;sound effects&amp;quot;&amp;quot; enabled though)]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=5869 Chess game over dialog button is unreadable in some themes]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=6616 Mahjong: Łamigłówka (Confounding cross) does not display high score time in Polish]&lt;br /&gt;
&lt;br /&gt;
=== Images and Camera ===&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=4053 Confusing behaviour when saving to a file that matches an existing directory]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=6194 Shutter release button does not always work]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=6372 Sometimes photos are not deleted if you delete directly after taking them]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=7060 Sometimes photos are very green]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=7160 Camera app hardcodes and requires FAT partition]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=7394 Some photos are missing EXIF DateTimeOriginal data]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=7559 Old image displayed as a new one when swiping]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=7758 Daily image counter in photo filenames not incrementing in some cases]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=8087 Photo autorotation issue]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=8310 Image Viewer shows only black screen]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=8698 camera does not have the night mode function]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=8877 Volume buttons should work in camera window when lens cover is not opened]&lt;br /&gt;
&lt;br /&gt;
=== Map ===&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=5337 Ovi Maps gives up finding GPS lock too soon]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=5391 Virtual keyboard doesn&#039;t appear in Maps]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=5905 ovi maps brings up &amp;quot;&amp;quot;Select connection&amp;quot;&amp;quot; dialog relentlessly]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=8850 Ovi Maps search history]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=9532 Search: can input numbers and other &amp;quot;&amp;quot;blue&amp;quot;&amp;quot; characters only with -holding- &amp;quot;&amp;quot;alt&amp;quot;&amp;quot; key]&lt;br /&gt;
&lt;br /&gt;
=== Media player ===&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=5318 Missing &amp;quot;&amp;quot;Remove from Playlist&amp;quot;&amp;quot; option]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=5319 Ugly &amp;quot;&amp;quot;now playing&amp;quot;&amp;quot; animation]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=5522 Plays next radio station when current station cuts out / has playback issues]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=5805 Album art disappears when next song is played and you unlock the device]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=6067 Media player becomes unusable if a dialog is open when opening a stream link from browser]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=6823 media player won&#039;t play any video files now (.avi) divx / xvid]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=7124 media player loses cover art if song changes while screen is locked]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=7211 &amp;quot;&amp;quot;Unable to play media. Media format not supported&amp;quot;&amp;quot; for recently recorded video]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=7353 RDS station name should not contain album (esp. when its unknown)]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=7464 mediaplayer treats youtube mp4 urls as audio streams]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=7536 Can&#039;t search album titles (GtkIconView) by typing on keyboard]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=7634 Media player volume bar doesn&#039;t work when a browser with youtube played is opened in background.]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=7802 Media Player Streaming: Elapsed time advances by 1sec when playback is paused and reduced by 1sec when the playback is resumed.]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=7995 Internet radio (ogg) stream metadata not displayed]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=8035 Selecting song in media player doesn&#039;t cause song to play]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=8043 AVI Streaming  broken. Local playback works fine.]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=8050 Media Player displays stop button during the playback of an AAC stream. It should display pause button.]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=8189 Strange black box icon in media player&#039;s album list]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=8438 Media player playlist icon when not playing is difficult to notice]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=8499 Music stops when &amp;quot;&amp;quot;low battery&amp;quot;&amp;quot; hildon banner is displayed]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=8525 Media Player is not playing WMV Video streams but KMPlayer can]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=8653 Media Player crashed when viewing UPNP contents.]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=9020 Media player crashes when trying to search in &#039;&#039;All songs&#039;&#039;]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=9084 Media Player bridge_work-que battery drain]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=9182 No video shown, only audio, when streaming over upnp]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=9308 Media Player doesn&#039;t allow to search russian tags]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=9809 Scrolling animation on jump-to-song is too CPU heavy]&lt;br /&gt;
&lt;br /&gt;
=== RSS feed reader ===&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=304 Automatic proxy configuration URL not obeyed by RSS feed reader]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=5625 Feed list (Folder tree) uses non-finger friendly classic scrollbars]&lt;br /&gt;
&lt;br /&gt;
=== Settings and Maintenance ===&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=5546 In Certificate manager, &amp;quot;&amp;quot;Authorities&amp;quot;&amp;quot; title is shown two times]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=5560 Application manager shows &amp;quot;&amp;quot;ai_ib_unable_edit&amp;quot;&amp;quot; instead of proper, localised string when it has a repository of which it cannot change the details of]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=5746 symlink /var/cache/apt/archives to /home/apt-archives]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=6392 Unable to filter/search applcations&#039; name in Application Manager]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=7446 Unlocking SIM card from control panel fails]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=7483 &amp;quot;&amp;quot;Enter code for unlocking SIM card&amp;quot;&amp;quot; button visible even if phone is not SIM locked]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=8194 General locale settings for new users does not set the correct locale for text input]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=8696 Search results window is not responding when search dialog is displayed in background]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=9229 Upgrade from PR1.1 to PR1.1.1 produces &#039;Operation failed&#039; error]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=9621 Cannot perform a new search after an initial search in Uninstall section]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=9738 Popup &amp;quot;&amp;quot;Search complete&amp;quot;&amp;quot; blocks view, not useful]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=9794 Missing a searchfunction to select Ringtone]&lt;br /&gt;
&lt;br /&gt;
=== Utilities ===&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=4852 Remove Scratchboxism in wpeditor packaging]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=5300 Support sending files via Bluetooth in file manager]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=5810 automatically update date/time did not update after plane journey]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=5824 Maximum number of pseudo terminals too low (4)]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=6351 Context menu isn&#039;t thumbable/hildonized - options too small]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=6481 Buenos Aires, Argentina time off by 1 hour]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=6553 Calculator should remember mode setting]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=6882 Deletes file to move if destination filename already exists and choosing to not overwrite]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=8115 Having a modal dialog in background, Alarm dialog blocks entire UI =&amp;gt; battery removal]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=8198 FIle manager should filter view if somethings is written on the keyboard]&lt;br /&gt;
&lt;br /&gt;
== maemo.org Official Platform: ==&lt;br /&gt;
&lt;br /&gt;
=== Connectivity ===&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=1635 Eduroam (EAP-TTLS+PAP) WiFi auth]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=4789 ipctest.c input_cb seems to pass a reference to a freed pointer to sscanf]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=5550 &amp;quot;&amp;quot;Not enough memory in target location&amp;quot;&amp;quot; when receiving image from Nokia SU-1B using Bluetooth]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=6502 Control Panel: Cannot change Network mode when Network selection is &amp;quot;&amp;quot;Automatic&amp;quot;&amp;quot;]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=7843 BH-103 - Annoying Beeps when calling or receiving a phone call or SMS]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=8004 PR1.1 has introduced a battery drain bug (not wifi related)]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=8133 dnsmasq segfaults when connecting to a certain WLAN AP]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=9057 Wifi wont connect to Dlink DI-524 using WEP]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=9117 Wrong IAP set for SFR (France)]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=9272 TDC (Denmark) GPRS settings are &amp;quot;&amp;quot;incorrect&amp;quot;&amp;quot; (or could be better)]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=9662 DHCP with redundant Gateway does not configure any routes]&lt;br /&gt;
&lt;br /&gt;
=== Core ===&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=5712 Ad-hoc wifi leaks kernel memory, puts N900 into unusable swap hell]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=5917 Not possible to answer incoming call with wired headset buttons.]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=6088 Very low touchscreen sensivitivity in the area near the left edge of the screen]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=6176 bashism in bash uninstall script causes busybox error]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=6450 libglslcompiler crashes when fragment shader contains a for-loop]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=7029 Device reboots when trying to connect to WIFI due to Oops in rate_control_get_rate()]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=8268 Unable to authenticate on light.webmoney.ru with user&#039;s SSL certificate.]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=9577 Reboot caused by bluetooth probe]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=9688 GL textures may get corrupted on upload]&lt;br /&gt;
&lt;br /&gt;
=== Desktop platform ===&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=1163 GtkCellRendererText: Can not edit with virtual keyboard]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=3659 Changing icon theme requires reboot to be applied correctly]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=3890 Missing libhildonmime API documentation]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=3910 Allow transparent desktop (wallpaper)]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=4579 HildonWindowClipboardOperation is completely undocumented]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=4608 HildonBanner does not except NULL value for deprecated icon argument]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=4619 Panning and selecting are mutually exclusive]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=4638 HildonPannableArea description should mention mov-mode property]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=4640 hildon_touch_selector_get_active_iter() needed.]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=4658 Documentation: HildonTouchSelectorEntry is unclear about auto-completion/text column]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=4695 HildonAnimationActor defines are passively documented in function descriptions]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=4718 GtkButton + hildon_gtk_widget_set_theme_size() has wrong style when created via GtkBuilder]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=4845 Remove Scratchboxism in libosso packaging]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=4851 libosso assumes that all ARM platforms has VFP instructions.]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=5173 HildonPickerDialog selects the first item always if appended into shown widget]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=5284 HildonPannableArea: size-request-policy property should be deprecated]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=5349 Can&#039;t organize applications menu]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=5388 Allow keyboard input to jump to an entry in a list (&amp;quot;&amp;quot;type ahead&amp;quot;&amp;quot;)]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=5421 keys when long pressed should give the blue symbol/number]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=5445 Status menu not available in portrait mode]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=5482 missing: system-wide &amp;quot;&amp;quot;start typing to eliminate items from list&amp;quot;&amp;quot;]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=5496 HildonTouchSelector: No hint that there are more items]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=5609 Displays very small fonts (happened once)]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=5716 Popup menus with rounded corners missing transparency]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=5743 Show ALL installed applications in application menu; get rid of &amp;quot;&amp;quot;More...&amp;quot;&amp;quot;]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=5838 Certain directory entries are duplicated (listed twice / doubled)]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=6017 Clicking the dashboard icon highlights it but does not open the dashboard]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=6060 Application manager finishing an installation in background blocks keyboard input]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=6069 Documentation missing on HildonNote vs &amp;quot;&amp;quot;Cancel&amp;quot;&amp;quot; button]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=6099 Incremental search function is case sensitive for &amp;quot;&amp;quot;select objects&amp;quot;&amp;quot; dialogue in html form elements like drop-down menus]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=6193 Browser: Tap is treated as input even if device was in standby mode (screen off)]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=6233 HildonPickerButton opens HildonPickerDialog dialog in landscape mode]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=6268 The required #include directives are not documented for Hildon]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=6361 base&#039; and &#039;more&#039; applications are visible sametime (messed)]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=6494 Can&#039;t change desktop Background]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=6545 HildonAppMenu doesn&#039;t show when another top level widget is around]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=6931 After installation of software last icon in &amp;quot;&amp;quot;More...&amp;quot;&amp;quot; view has default icon instead of own one]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=7126 Notification messages not displayed when optional &amp;quot;&amp;quot;category&amp;quot;&amp;quot; not set]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=7285 VKB has strange behavior when using the browser in portrait mode]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=7694 FN/Shift Locks get disabled by inserting a symbol with Sym]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=7852 After every boot the phone switches to the default theme]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=8038 Unlocking screen using power button/touch slide tops last application when on the desktop]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=8069 Cannot see the track time after black fill covers the white time font]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=8390 Fast search on the desktop doesn&#039;t work with cyrillic (Русский) layout]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=8731 Memory leaks in widget HildonAnimationActor]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=9059 Status bar icons shown on top of the virtual keyboard.]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=9194 hildon_pannable_area_scroll_to example is wrong (pointer instead of struct)]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=9552 Polish virtual keyboard: Cannot enter CAPITAL chars with diacritical signs]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=10041 Calender and Clock crash in Arabic localizition]&lt;br /&gt;
&lt;br /&gt;
=== Location ===&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=6284 Documentation in header files inaccurate - what unit does altitude have?]&lt;br /&gt;
&lt;br /&gt;
=== Multimedia ===&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=5524 PulseAudio clients are muted and hang on exit when media player is playing music]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=5554 Embedded windows media stream (ASF) at omroep.nl doesn&#039;t work]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=6365 maemo-xinput-sounds uses all available CPU]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=6506 Hardware keys do not change volume when status menu in foreground &amp;amp; browser in background]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=6792 FM radio transmitter does not play while USB cord is connected]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=6868 Pulseaudio uses cpu constantly after a phone call.]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=7082 mafw-dbus-daemon killed by podcast]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=7133 Shuffle all songs often plays a non-random sequence after the first song]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=7147 After playing video and canceling a couple of applications crashes and N900 slows down]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=7271 Can&#039;t change FM TX radio station name]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=7327 Xvid encoded videos unwatchable]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=7552 fmtx_client should pad station names shorter than 8 chars with spaces]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=7642 Playback of MP3 files might be cut-off at the end after seeking in file]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=8011 Changing volume without unlocking the phone no longer works]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=8172 PR 1.1 Regression: MP4 files with chapters hang playback]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=8396 FM Transmitter displays gibberish text in Radio player]&lt;br /&gt;
&lt;br /&gt;
=== Synchronization ===&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=6576 Alarm for a dropped occurrence of a recurring event]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=6582 exchange sync cant handle certificate exceptions]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=6703 MfE calendar sync causes dummy email sync account to appear]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=7971 mail for exchange freezes when trying to sync calendar and tasks]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=8373 N900 no longer accepting updates from Outlook 2007]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=8552 URLs in emails from Exchange are parsed incorrectly]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=8671 Deletion of messages should move first those items to &amp;quot;&amp;quot;Deleted Items&amp;quot;&amp;quot; folder]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=9296 Exchange event invitations scheduled without a prompt]&lt;br /&gt;
&lt;br /&gt;
=== System software ===&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=5530 Device autolock switches on the display]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=5674 Autobuilder fails to use opt-ified packages]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=5982 Phone unlocked when receiving call]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=6558 ohmd fails if discover_plugins cannot open plugin directory]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=6746 USB mass storage enabled when connected while device is off]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=7432 /opt and /home/user  not cleared after firmware reflash]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=9270 Device unlockable if it get locked when being in portrait mode]&lt;br /&gt;
&lt;br /&gt;
=== Telephony ===&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=5457 Skype: &amp;quot;&amp;quot;Incorrect address&amp;quot;&amp;quot; for phone numbers missing the country code in Contacts]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=9073 callerid displays as &amp;quot;&amp;quot;Unknown number&amp;quot;&amp;quot; even though it is received by the N900]&lt;br /&gt;
&lt;br /&gt;
=== Translations ===&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=5602 IP address field in WiFi advanced settings partially hidden (&amp;quot;&amp;quot;Recuperar automáticamente direccíon IP&amp;quot;&amp;quot; string too long)]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=5819 Some sentences in the User Guide don&#039;t make sense]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=5820 Wrong profile names in the User Guide]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=6261 Delete dialog text missing a space]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=6476 Email: Awkward text: &amp;quot;&amp;quot;Connecting Nokia servers to check service availability&amp;quot;&amp;quot;]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=6662 Wrong Danish translation: &amp;quot;&amp;quot;Programmet 1 er installeret&amp;quot;&amp;quot;]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=6736 Polish string too long in UPnP browsing menu bar]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=6982 Spanish: &amp;quot;&amp;quot;Tipo de fuente cambiado a %s&amp;quot;&amp;quot; when switching input languages]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=6997 Camera: Wrong translation &amp;quot;&amp;quot;Hochformat&amp;quot;&amp;quot; of &amp;quot;&amp;quot;Portrait&amp;quot;&amp;quot; in German UI]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=7274 Settings menu: String doesn&#039;t fit the button (&amp;quot;&amp;quot;Inserir código para desbloquear cartão SIM&amp;quot;&amp;quot;)]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=7345 Context menu in file manager should say &amp;quot;&amp;quot;Sformatuj&amp;quot;&amp;quot; or &amp;quot;&amp;quot;Formatuj&amp;quot;&amp;quot; instead of &amp;quot;&amp;quot;Format&amp;quot;&amp;quot;]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=7476 Truncation of Flickr sharing introductory text in Polish]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=7477 &amp;quot;&amp;quot;sparowane&amp;quot;&amp;quot;, &amp;quot;&amp;quot;paruj&amp;quot;&amp;quot;, &amp;quot;&amp;quot;Paruj&amp;quot;&amp;quot;, &amp;quot;&amp;quot;Parowanie&amp;quot;&amp;quot; in Bluetooth settings]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=7639 Wrong PO Box translation for CZ language]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=7687 Clock: Incorrect Danish translation of the phrase &#039;Remote time&#039;]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=8052 &amp;quot;&amp;quot;Dane sieci komórkowej niedostępne&amp;quot;&amp;quot; sounds strange]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=8257 &amp;quot;&amp;quot;Prześlij ponownie&amp;quot;&amp;quot; button label truncated (MicroB)]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=8560 Dutch translation in &amp;quot;&amp;quot;Settings&amp;quot;&amp;quot; doesnt fit on the screen]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=8713 Incorrect Danish translation of &#039;Extras&#039; in Settings]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=8742 New E-mail Format translated illogically]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=9144 pl-PL: &amp;quot;&amp;quot;Nazwa autora&amp;quot;&amp;quot; in camera general settings should be &amp;quot;&amp;quot;Autor&amp;quot;&amp;quot; or &amp;quot;&amp;quot;Imię autora&amp;quot;&amp;quot;]&lt;br /&gt;
&lt;br /&gt;
=== UI Specification ===&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=5420 Don&#039;t show hildon banner every tap when browsing UPnP shares]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=5516 Image Viewer: Dealing with &amp;quot;&amp;quot;occupied&amp;quot;&amp;quot; images is confusing]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=5610 &amp;quot;&amp;quot;Regional settings&amp;quot;&amp;quot; items sorted by languages instead of countries]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=7054 Cannot set &amp;quot;&amp;quot;Regional Settings&amp;quot;&amp;quot; to &amp;quot;&amp;quot;English (Australia)&amp;quot;&amp;quot; or &amp;quot;&amp;quot;English (New Zealand)&amp;quot;&amp;quot;]&lt;br /&gt;
* [https://bugs.maemo.org/show_bug.cgi?id=8201 (metabug) Make more use of the keyboard in the dialogs / lists]&lt;br /&gt;
&lt;br /&gt;
= Updated packages =&lt;br /&gt;
&lt;br /&gt;
* +alarmd 1.1.16+0m5&lt;br /&gt;
* +apt 0.7.20.2maemo13.1+0m5&lt;br /&gt;
* +base-files 3.1.osso2+3.1.10.osso25+0m5&lt;br /&gt;
* +bash 2.05b-2-26osso8+0m5&lt;br /&gt;
* +bluez 4.60-0maemo1.4+0m5&lt;br /&gt;
* +browser-eal 0.5.5-6.1+0m5&lt;br /&gt;
* +cairo 1.8.8-0maemo1+0m5&lt;br /&gt;
* +clinkc 2.0-0osso17+0m5&lt;br /&gt;
* +clutter 0.8.2-0maemo66+0m5&lt;br /&gt;
* +dbus 1.2.14-0maemo4+0m5&lt;br /&gt;
* +dbus-glib 0.78-0maemo7+0m5&lt;br /&gt;
* +desktop-file-utils 0.12-2osso7+0m5&lt;br /&gt;
* +dnsmasq 2.45-1+lenny1+maemo3+0m5&lt;br /&gt;
* +dosfstools 3.0.1-1maemo6+0m5&lt;br /&gt;
* +dpkg 1.14.25maemo3+0m5&lt;br /&gt;
* +dsme 0.60.44+0m5&lt;br /&gt;
* +eds-backend-telepathy 0.4.62-1+0m5&lt;br /&gt;
* +evolution-data-server 1.4.2.1-20100226+0m5&lt;br /&gt;
* +farsight2 0.0.17-0maemo13+0m5&lt;br /&gt;
* +gcc-4.2 4.2.1-4maemo12+0m5&lt;br /&gt;
* +gconf2 2.16.0-2osso6.2+0m5&lt;br /&gt;
* +gdigicam 0.3.5.1+0m5&lt;br /&gt;
* +glib2.0 2.20.3-1maemo4+0m5&lt;br /&gt;
* +glibc 2.5.1-1eglibc23+0m5&lt;br /&gt;
* +gnome-menus 2.23.3-2maemo+0m5&lt;br /&gt;
* +gssdp 0.7.1-0maemo2+0m5&lt;br /&gt;
* +gst-openmax 0.10.0.6~1-0maemo17+0m5&lt;br /&gt;
* +gst-plugins-bad0.10 0.10.14-git265-0maemo10+0m5&lt;br /&gt;
* +gst-plugins-base0.10 0.10.25-0maemo14+0m5&lt;br /&gt;
* +gst-plugins-good0.10 0.10.16-git276-0maemo14+0m5&lt;br /&gt;
* +gstreamer0.10 0.10.25-0maemo4+0m5&lt;br /&gt;
* +gstreamer0.10-plugins-camera 0.79-1+0m5&lt;br /&gt;
* +gtk+2.0 2:2.14.7-1maemo29+0m5&lt;br /&gt;
* +gtkhtml3.14 3.24.4-osso18+0m5&lt;br /&gt;
* +gupnp 0.13.2-0maemo2+0m5&lt;br /&gt;
* +gupnp-av 0.5.2-0maemo2+0m5&lt;br /&gt;
* +gupnp-igd 0.1.4-0maemo3+0m5&lt;br /&gt;
* +hal 0.5.12~git20090219-0maemo7+0m5&lt;br /&gt;
* +hildon-application-manager 1:2.2.60-1+0m5&lt;br /&gt;
* +hildon-application-manager-l10n-public 6.0+r7611+0m5&lt;br /&gt;
* +hildon-control-panel 1:2.2.27-2+0m5&lt;br /&gt;
* +hildon-control-panel-l10n-public 6.0+r7640+0m5&lt;br /&gt;
* +hildon-desktop 1:2.2.135-2+0m5&lt;br /&gt;
* +hildon-fm-l10n-public 6.0+r7483+0m5&lt;br /&gt;
* +hildon-games-wrapper 1.9.4-5+0m5&lt;br /&gt;
* +hildon-home 0.3.66-2+0m5&lt;br /&gt;
* +hildon-input-method 1:2.1.46-1+0m5&lt;br /&gt;
* +hildon-input-method-framework 1:2.1.56-1+0m5&lt;br /&gt;
* +hildon-input-method-l10n-public 6.0+r7520+0m5&lt;br /&gt;
* +hildon-libs-l10n-public 6.0+r7510+0m5&lt;br /&gt;
* +hildon-status-menu 0.3.34+0m5&lt;br /&gt;
* +hildon-theme-layout-5 0.15.0-1+0m5&lt;br /&gt;
* +hildon-thumbnail 3.0.44+0m5&lt;br /&gt;
* +ke-recv-l10n-public 6.0+r7611+0m5&lt;br /&gt;
* +kernel 2.6.28-20100903+0m5&lt;br /&gt;
* +libcanberra 0.14-0maemo4+0m5&lt;br /&gt;
* +libcomapp 1.8.03-01+0m5&lt;br /&gt;
* +libconbtui 1.4.3+0m5&lt;br /&gt;
* +libconic 0.24+0m5&lt;br /&gt;
* +libdsme 0.60.30+0m5&lt;br /&gt;
* +libexif 0.6.17-1maemo3+0m5&lt;br /&gt;
* +libffi 3.0.7-2maemo2+0m5&lt;br /&gt;
* +libgtkadi 0.7.13-1+0m5&lt;br /&gt;
* +libgtkmozembed 1.8.7-2.1+0m5&lt;br /&gt;
* +libhildon 2.2.15-1+0m5&lt;br /&gt;
* +libhildondesktop 2.1.40+0m5&lt;br /&gt;
* +libhildonfm 1:2.28.17+0m5&lt;br /&gt;
* +libhildonmime 2.1.5-1+0m5&lt;br /&gt;
* +libical 1.43-101+0m5&lt;br /&gt;
* +libmafw 0.2.2010.06-1+0m5&lt;br /&gt;
* +libmlocknice 0.1+0m5&lt;br /&gt;
* +libmodest-dbus-client 4:3.2.5-0+0m5&lt;br /&gt;
* +libnice 1:0.0.9-0maemo8.0rtc+0m5&lt;br /&gt;
* +libosso 2.31-1+0m5&lt;br /&gt;
* +librtcom-telepathy-glib 0.1.49+0m5&lt;br /&gt;
* +libsoup2.4 2.26.3-0maemo3+0m5&lt;br /&gt;
* +libunwind 0.99+git20080421-2+0m5&lt;br /&gt;
* +libwidgetutils 1.4.1-6+0m5&lt;br /&gt;
* +libwww-perl 5.803-4osso1+0m5&lt;br /&gt;
* +loudmouth 1.4.1-0osso10+0m5&lt;br /&gt;
* +maemo-af-desktop-l10n-public 6.0+r7640+0m5&lt;br /&gt;
* +maemo-maf 5.0+3+0m5&lt;br /&gt;
* +maemo-mmf 5.0+3+0m5&lt;br /&gt;
* +maemopad 2.6-3&lt;br /&gt;
* +maemo-version 5.0update5+0m5&lt;br /&gt;
* +mafw-gst-renderer 0.2.2010.07-2+0m5&lt;br /&gt;
* +mafw-iradio-source 0.2.2010.06-1+0m5&lt;br /&gt;
* +mafw-shared 0.2.2010.06-1+0m5&lt;br /&gt;
* +mafw-test-gui 0.2.2010.06-1+0m5&lt;br /&gt;
* +mafw-tracker-source 0.2.2010.06-1+0m5&lt;br /&gt;
* +mafw-upnp-source 0.2.2010.07-2+0m5&lt;br /&gt;
* +matchbox-window-manager-2 0.2.89-1+0m5&lt;br /&gt;
* +mce-dev 1.8.17+0m5&lt;br /&gt;
* +microb-eal 2.9.5-1.15+0m5&lt;br /&gt;
* +microb-engine 20091230-1.9.2-6.8+0m5&lt;br /&gt;
* +mini-rc 0.2.67+0m5&lt;br /&gt;
* +modest 3.2.13-3+0m5&lt;br /&gt;
* +obexd 0.18-0maemo5+0m5&lt;br /&gt;
* +ohm 0.1.2-0maemo33+0m5&lt;br /&gt;
* +osso-af-utils 2.12-1+0m5&lt;br /&gt;
* +osso-app-killer 1.33-3+0m5&lt;br /&gt;
* +osso-filemanager-l10n-public 6.0+r7611+0m5&lt;br /&gt;
* +osso-games-startup 1.7.49-1+0m5&lt;br /&gt;
* +osso-gnome-vfs2 2.16.3-2osso11+0m5&lt;br /&gt;
* +osso-gwobex 0.64+0m5&lt;br /&gt;
* +osso-rss-feed-reader 1.8.03-3+0m5&lt;br /&gt;
* +osso-rss-feed-reader-applet 1.7.03-1+0m5&lt;br /&gt;
* +osso-rss-feed-reader-lib 1.8.01-1+0m5&lt;br /&gt;
* +osso-system-lock-l10n-public 6.0+r7585+0m5&lt;br /&gt;
* +osso-uri-l10n-public 6.0+r7510+0m5&lt;br /&gt;
* +pango1.0 1.24.2-0maemo4+0m5&lt;br /&gt;
* +pixman 0.16.2-4+0m5&lt;br /&gt;
* +poppler 0.4.5-5.1etch3maemo1+0m5&lt;br /&gt;
* +posix-locales 2.7.2-1maemo7-binonly0+0m5&lt;br /&gt;
* +pulseaudio 0.9.15-1maemo38+0m5&lt;br /&gt;
* +qt4-x11 4.6.2~git20100224-0maemo1+0m5&lt;br /&gt;
* +rtcom-eventlogger 1.3-4+0m5&lt;br /&gt;
* +rtcom-eventlogger-plugins 1.4-1+0m5&lt;br /&gt;
* +rtcom-eventlogger-ui 1.4-2+0m5&lt;br /&gt;
* +sapwood 3.1.1-10+0m5&lt;br /&gt;
* +sqlite3 3.6.14-1maemo3+0m5&lt;br /&gt;
* +telepathy-farsight 0.0.13-0maemo5+0m5&lt;br /&gt;
* +telepathy-gabble 0.8.11-0maemo2+0m5&lt;br /&gt;
* +telepathy-mission-control 5.2.7-0maemo6+0m5&lt;br /&gt;
* +tetex-bin 3.0-30maemo2+0m5&lt;br /&gt;
* +tiff 1:3.8.2-11maemo5+0m5&lt;br /&gt;
* +tinymail 1.1.90-svn4193+0m5&lt;br /&gt;
* +totem-pl-parser 2.27.2-1maemo2+0m5&lt;br /&gt;
* +tracker 0.6.95-25maemo1+0m5&lt;br /&gt;
* +upstart 0.3.8-64+0m5&lt;br /&gt;
* +wpeditor 3.53-1+0m5&lt;br /&gt;
* +xkeyboard-config 1.5-2maemo15+0m5&lt;br /&gt;
* +xorg-server 2:1.6.99.1-0osso20090208.108+0m5&lt;br /&gt;
* +xserver-xorg-video-fbdev 1:0.4.0-180+0m5&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Fremantle]]&lt;br /&gt;
[[Category:N900]]&lt;/div&gt;</summary>
		<author><name>192.100.124.219</name></author>
	</entry>
	<entry>
		<id>https://maemo.octonezd.me/index.php?title=Qt-Maemo&amp;diff=34088</id>
		<title>Qt-Maemo</title>
		<link rel="alternate" type="text/html" href="https://maemo.octonezd.me/index.php?title=Qt-Maemo&amp;diff=34088"/>
		<updated>2010-05-10T08:56:42Z</updated>

		<summary type="html">&lt;p&gt;192.100.124.219: /* Image:Ktorrent.png‎  Installing Qt */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&lt;br /&gt;
&lt;br /&gt;
=[[Image:Kblogger.png‎ ]] News=&lt;br /&gt;
&amp;lt;b&amp;gt;7 May 10&amp;lt;/b&amp;gt; - Qt 4.7 Beta1 packages for Maemo available [http://labs.trolltech.com/blogs/2010/05/06/new-experimental-qt-47-packages-for-the-n900/ read more]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;22 Mar 10&amp;lt;/b&amp;gt; - Qt 4.6.2 has replaced Qt 4.5.3 into SDK PR 1.2. Run apt-get update &amp;amp;&amp;amp; apt-get upgrade to update it.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;25 Feb 10&amp;lt;/b&amp;gt; - [http://labs.trolltech.com/blogs/2010/02/24/qt-for-maemo-5-home-screen-widgets/ How to make Qt Desktop Widgets]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;15 Feb 10&amp;lt;/b&amp;gt; - Qt 4.6.2 is out. Qt Mobility (beta1) packages are in extras-devel.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;20 Jan 10&amp;lt;/b&amp;gt; - [http://www.anselmolsm.org/blog/qt-mobile-demos-in-extras-devel/ Qt Mobile Demos in extras-devel]&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;19 Jan 10&amp;lt;/b&amp;gt; - [http://qt.nokia.com/developer/qt-for-maemo-developers Qt 4.6 for Maemo 5 going Beta]&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;15 Jan 10&amp;lt;/b&amp;gt; - New Qt 4.5.3~git20090723-0maemo6 packages are now in Fremantle [[Maemo_5/PR1.1|PR 1.1]]&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;22 Dec 09&amp;lt;/b&amp;gt; - [http://wiki.maemo.org/MADDE/Qt_Example Qt example] for [http://wiki.maemo.org/MADDE MADDE ] ([http://talk.maemo.org/showthread.php?t=38075 talk thread])&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;17 Dec 09&amp;lt;/b&amp;gt; - [http://labs.trolltech.com/blogs/2009/12/17/qt-declarative-for-maemo-5/Qt declarative hits Maemo extras-devel repository]&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;11 Dec 09&amp;lt;/b&amp;gt; - Bye bye old static web pages.. all our pages are now in the Maemo Wiki. Old website is [http://qt4.garage.maemo.org/index-old.html here]&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=[[Image:Intro.png]] What is Qt?=&lt;br /&gt;
Qt (pronounced as the English word &amp;quot;cute&amp;quot;) is a cross-platform application development framework. More information is available at the [http://qt.nokia.com/ Qt website].&lt;br /&gt;
&lt;br /&gt;
=[[Image:Rocket.png]] Maemo Qt main features=&lt;br /&gt;
* Hildon Style, so applications look like Hildon/GTK+ applications&lt;br /&gt;
* Hildon Input Method, so applications can use the virtual keyboard&lt;br /&gt;
* Hildon-specific widgets&lt;br /&gt;
** partial support in Qt 4.5&lt;br /&gt;
** Qt 4.6 will have full support, and is currently a technology preview&lt;br /&gt;
&lt;br /&gt;
= [[Image:Fileview-preview.png]] Maemo Qt in Action =&lt;br /&gt;
* Diablo Maemo Qt&lt;br /&gt;
 ADD_HERE_SOME_PICS&lt;br /&gt;
* Fremantle Maemo Qt&lt;br /&gt;
 ADD HERE SOME PICS&lt;br /&gt;
&lt;br /&gt;
=[[Image:Pda.png]] Supported Maemo devices=&lt;br /&gt;
* [[Nokia N800]]/[[Nokia N810|N810]] (OS2008/Maemo4.1/Diablo)&lt;br /&gt;
* [[Nokia N900]] (OS2009/Maemo5/[[Open development/Maemo roadmap/Fremantle|Fremantle]])&lt;br /&gt;
&lt;br /&gt;
=[[Image:Ktorrent.png‎ ]] Installing Qt=&lt;br /&gt;
&lt;br /&gt;
Qt can be [http://wiki.maemo.org/Qt4_Hildon#Getting_started installed in scratchbox] for development. For applications that use Qt and are installed via the application manager, the necessary Qt packages will automatically be installed.&lt;br /&gt;
&lt;br /&gt;
=[[Image:Available-qtapps-32.png‎ ]]Available and proposed Qt Applications=&lt;br /&gt;
If you want to port a Qt application to Maemo or if you want to check if an application you love has been already ported.. [[Qt4HildonApplications|this]] is the place you would like to check; &lt;br /&gt;
&lt;br /&gt;
=[[Image:Help-contents.png]] Documentation=&lt;br /&gt;
&lt;br /&gt;
== Qt ==&lt;br /&gt;
&lt;br /&gt;
* [[Qt4 development]] developing with Qt for Maemo&lt;br /&gt;
* [[QML]]&lt;br /&gt;
* [[QtRuby]]&lt;br /&gt;
&lt;br /&gt;
== Non-Qt documentation ==&lt;br /&gt;
&lt;br /&gt;
* Fremantle: &lt;br /&gt;
** [http://sw.nokia.com/id/a3187f95-ad88-4233-b0ef-a182da3ec1c7/Hildon_2_2_Widget_UI_Specification_v1_0_en.pdf Hildon 2.2 Widget UI Spec -PDF]&lt;br /&gt;
** [http://www.forum.nokia.com/info/sw.nokia.com/id/eb8a68ba-6225-4d84-ba8f-a00e4a05ff6f/Hildon_2_2_UI_Style_Guide.html Hildon 2.2 UI Style Guid -PDF]&lt;br /&gt;
* Diablo&lt;br /&gt;
** ADD_SOMETHING_HERE&lt;br /&gt;
&lt;br /&gt;
== Further reading ==&lt;br /&gt;
&lt;br /&gt;
* [http://www.forum.nokia.com/Tools_Docs_and_Code/Documentation/Latest.xhtml Forum Nokia Docs] contain Maemo as well as other documentation related to other Nokia platforms&lt;br /&gt;
* [http://wiki.forum.nokia.com/index.php/Qt_for_Maemo_Developers_Guide Qt for Maemo Developers Guide, Forum Nokia]&lt;br /&gt;
* [http://www.forum.nokia.com/Tools_Docs_and_Code/Documentation/Maemo.xhtml Maemo documentation, mostly about Qt, Forum Nokia]&lt;br /&gt;
* [http://doc.trolltech.com/qt-maemo-4.6/how-to-learn-qt.html How to learn Qt, Trolltech]&lt;br /&gt;
* [http://qt.nokia.com/developer/books Books] listed at qt.nokia.com&lt;br /&gt;
* [http://talk.maemo.org/showthread.php?t=39879 Qt4 hello world with python in 30 minutes]&lt;br /&gt;
* [http://wiki.forum.nokia.com/index.php/Qt_application_for_Maemo_with_DBus_support Install D-Bus Service with Qt]&lt;br /&gt;
* [[University Course]] (in progress): A syllabus for teaching Qt as an intensive two-week course.&lt;br /&gt;
&lt;br /&gt;
=[[Image:Bug.png]] Bug tracking=&lt;br /&gt;
* Diablo &amp;amp; Fremantle Qt 4.5 port&lt;br /&gt;
** [https://bugs.maemo.org/buglist.cgi?query_format=specific&amp;amp;order=relevance+desc&amp;amp;bug_status=__open__&amp;amp;product=Qt&amp;amp;content= View bug list]&lt;br /&gt;
** [https://bugs.maemo.org/enter_bug.cgi?product=Qt Report a new bug]&lt;br /&gt;
* Fremantle Qt 4.6 port&lt;br /&gt;
** [http://doc.trolltech.com/4.6/bughowto.html How to report a bug]&lt;br /&gt;
** [http://bugreports.qt.nokia.com/secure/CreateIssue!default.jspa Report a new bug]&lt;br /&gt;
** [http://bugreports.qt.nokia.com/secure/IssueNavigator.jspa?reset=true&amp;amp;&amp;amp;query=maemo&amp;amp;summary=true&amp;amp;description=true&amp;amp;body=true&amp;amp;environment=true&amp;amp;pid=10510 View bug list]&lt;br /&gt;
&lt;br /&gt;
=[[Image:Helmet.png]] Code=&lt;br /&gt;
* Qt 4.5 (Diablo)&lt;br /&gt;
** http://gitorious.org/+qt-maemo-developers/qt/qt-maemo&lt;br /&gt;
* Qt 4.5 (Fremantle)&lt;br /&gt;
** http://gitorious.org/+qt-maemo-developers/qt/qt-maemo&lt;br /&gt;
* Qt 4.6 (Fremantle)&lt;br /&gt;
** http://qt.gitorious.org/qt/x11-maemo&lt;br /&gt;
&lt;br /&gt;
=[[Image:Preferences-desktop-user.png]] Get Help=&lt;br /&gt;
* Forums&lt;br /&gt;
** [http://discussion.forum.nokia.com/forum/forumdisplay.php?f=220 Qt for Maemo Forum Nokia Discussion board]&lt;br /&gt;
** [https://garage.maemo.org/forum/?group_id=424 Old qt4.garage.maemo.org forum]&lt;br /&gt;
* IRC&lt;br /&gt;
** Official Qt for Maemo IRC Channel&lt;br /&gt;
** Click [http://webchat.freenode.net/?channels=qt-maemo here] to join the #qt-maemo channel in frenode (irc.freenode.net).&lt;br /&gt;
&lt;br /&gt;
* Mailing list&lt;br /&gt;
** [https://garage.maemo.org/mailman/listinfo/qt4-devel Click here to Subscribe to the Qt community ML]&lt;br /&gt;
&lt;br /&gt;
[[Category:Qt]]&lt;/div&gt;</summary>
		<author><name>192.100.124.219</name></author>
	</entry>
	<entry>
		<id>https://maemo.octonezd.me/index.php?title=Qt-Maemo&amp;diff=34089</id>
		<title>Qt-Maemo</title>
		<link rel="alternate" type="text/html" href="https://maemo.octonezd.me/index.php?title=Qt-Maemo&amp;diff=34089"/>
		<updated>2010-05-10T08:55:39Z</updated>

		<summary type="html">&lt;p&gt;192.100.124.219: /* Image:Ktorrent.png‎  Installing Qt */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&lt;br /&gt;
&lt;br /&gt;
=[[Image:Kblogger.png‎ ]] News=&lt;br /&gt;
&amp;lt;b&amp;gt;7 May 10&amp;lt;/b&amp;gt; - Qt 4.7 Beta1 packages for Maemo available [http://labs.trolltech.com/blogs/2010/05/06/new-experimental-qt-47-packages-for-the-n900/ read more]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;22 Mar 10&amp;lt;/b&amp;gt; - Qt 4.6.2 has replaced Qt 4.5.3 into SDK PR 1.2. Run apt-get update &amp;amp;&amp;amp; apt-get upgrade to update it.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;25 Feb 10&amp;lt;/b&amp;gt; - [http://labs.trolltech.com/blogs/2010/02/24/qt-for-maemo-5-home-screen-widgets/ How to make Qt Desktop Widgets]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;15 Feb 10&amp;lt;/b&amp;gt; - Qt 4.6.2 is out. Qt Mobility (beta1) packages are in extras-devel.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;20 Jan 10&amp;lt;/b&amp;gt; - [http://www.anselmolsm.org/blog/qt-mobile-demos-in-extras-devel/ Qt Mobile Demos in extras-devel]&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;19 Jan 10&amp;lt;/b&amp;gt; - [http://qt.nokia.com/developer/qt-for-maemo-developers Qt 4.6 for Maemo 5 going Beta]&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;15 Jan 10&amp;lt;/b&amp;gt; - New Qt 4.5.3~git20090723-0maemo6 packages are now in Fremantle [[Maemo_5/PR1.1|PR 1.1]]&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;22 Dec 09&amp;lt;/b&amp;gt; - [http://wiki.maemo.org/MADDE/Qt_Example Qt example] for [http://wiki.maemo.org/MADDE MADDE ] ([http://talk.maemo.org/showthread.php?t=38075 talk thread])&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;17 Dec 09&amp;lt;/b&amp;gt; - [http://labs.trolltech.com/blogs/2009/12/17/qt-declarative-for-maemo-5/Qt declarative hits Maemo extras-devel repository]&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;11 Dec 09&amp;lt;/b&amp;gt; - Bye bye old static web pages.. all our pages are now in the Maemo Wiki. Old website is [http://qt4.garage.maemo.org/index-old.html here]&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=[[Image:Intro.png]] What is Qt?=&lt;br /&gt;
Qt (pronounced as the English word &amp;quot;cute&amp;quot;) is a cross-platform application development framework. More information is available at the [http://qt.nokia.com/ Qt website].&lt;br /&gt;
&lt;br /&gt;
=[[Image:Rocket.png]] Maemo Qt main features=&lt;br /&gt;
* Hildon Style, so applications look like Hildon/GTK+ applications&lt;br /&gt;
* Hildon Input Method, so applications can use the virtual keyboard&lt;br /&gt;
* Hildon-specific widgets&lt;br /&gt;
** partial support in Qt 4.5&lt;br /&gt;
** Qt 4.6 will have full support, and is currently a technology preview&lt;br /&gt;
&lt;br /&gt;
= [[Image:Fileview-preview.png]] Maemo Qt in Action =&lt;br /&gt;
* Diablo Maemo Qt&lt;br /&gt;
 ADD_HERE_SOME_PICS&lt;br /&gt;
* Fremantle Maemo Qt&lt;br /&gt;
 ADD HERE SOME PICS&lt;br /&gt;
&lt;br /&gt;
=[[Image:Pda.png]] Supported Maemo devices=&lt;br /&gt;
* [[Nokia N800]]/[[Nokia N810|N810]] (OS2008/Maemo4.1/Diablo)&lt;br /&gt;
* [[Nokia N900]] (OS2009/Maemo5/[[Open development/Maemo roadmap/Fremantle|Fremantle]])&lt;br /&gt;
&lt;br /&gt;
=[[Image:Ktorrent.png‎ ]] Installing Qt=&lt;br /&gt;
&lt;br /&gt;
Qt can be [[http://wiki.maemo.org/Qt4_Hildon#Getting_started|installed in scratchbox]] for development. For applications that use Qt and are installed via the application manager, the necessary Qt packages will automatically be installed.&lt;br /&gt;
&lt;br /&gt;
=[[Image:Available-qtapps-32.png‎ ]]Available and proposed Qt Applications=&lt;br /&gt;
If you want to port a Qt application to Maemo or if you want to check if an application you love has been already ported.. [[Qt4HildonApplications|this]] is the place you would like to check; &lt;br /&gt;
&lt;br /&gt;
=[[Image:Help-contents.png]] Documentation=&lt;br /&gt;
&lt;br /&gt;
== Qt ==&lt;br /&gt;
&lt;br /&gt;
* [[Qt4 development]] developing with Qt for Maemo&lt;br /&gt;
* [[QML]]&lt;br /&gt;
* [[QtRuby]]&lt;br /&gt;
&lt;br /&gt;
== Non-Qt documentation ==&lt;br /&gt;
&lt;br /&gt;
* Fremantle: &lt;br /&gt;
** [http://sw.nokia.com/id/a3187f95-ad88-4233-b0ef-a182da3ec1c7/Hildon_2_2_Widget_UI_Specification_v1_0_en.pdf Hildon 2.2 Widget UI Spec -PDF]&lt;br /&gt;
** [http://www.forum.nokia.com/info/sw.nokia.com/id/eb8a68ba-6225-4d84-ba8f-a00e4a05ff6f/Hildon_2_2_UI_Style_Guide.html Hildon 2.2 UI Style Guid -PDF]&lt;br /&gt;
* Diablo&lt;br /&gt;
** ADD_SOMETHING_HERE&lt;br /&gt;
&lt;br /&gt;
== Further reading ==&lt;br /&gt;
&lt;br /&gt;
* [http://www.forum.nokia.com/Tools_Docs_and_Code/Documentation/Latest.xhtml Forum Nokia Docs] contain Maemo as well as other documentation related to other Nokia platforms&lt;br /&gt;
* [http://wiki.forum.nokia.com/index.php/Qt_for_Maemo_Developers_Guide Qt for Maemo Developers Guide, Forum Nokia]&lt;br /&gt;
* [http://www.forum.nokia.com/Tools_Docs_and_Code/Documentation/Maemo.xhtml Maemo documentation, mostly about Qt, Forum Nokia]&lt;br /&gt;
* [http://doc.trolltech.com/qt-maemo-4.6/how-to-learn-qt.html How to learn Qt, Trolltech]&lt;br /&gt;
* [http://qt.nokia.com/developer/books Books] listed at qt.nokia.com&lt;br /&gt;
* [http://talk.maemo.org/showthread.php?t=39879 Qt4 hello world with python in 30 minutes]&lt;br /&gt;
* [http://wiki.forum.nokia.com/index.php/Qt_application_for_Maemo_with_DBus_support Install D-Bus Service with Qt]&lt;br /&gt;
* [[University Course]] (in progress): A syllabus for teaching Qt as an intensive two-week course.&lt;br /&gt;
&lt;br /&gt;
=[[Image:Bug.png]] Bug tracking=&lt;br /&gt;
* Diablo &amp;amp; Fremantle Qt 4.5 port&lt;br /&gt;
** [https://bugs.maemo.org/buglist.cgi?query_format=specific&amp;amp;order=relevance+desc&amp;amp;bug_status=__open__&amp;amp;product=Qt&amp;amp;content= View bug list]&lt;br /&gt;
** [https://bugs.maemo.org/enter_bug.cgi?product=Qt Report a new bug]&lt;br /&gt;
* Fremantle Qt 4.6 port&lt;br /&gt;
** [http://doc.trolltech.com/4.6/bughowto.html How to report a bug]&lt;br /&gt;
** [http://bugreports.qt.nokia.com/secure/CreateIssue!default.jspa Report a new bug]&lt;br /&gt;
** [http://bugreports.qt.nokia.com/secure/IssueNavigator.jspa?reset=true&amp;amp;&amp;amp;query=maemo&amp;amp;summary=true&amp;amp;description=true&amp;amp;body=true&amp;amp;environment=true&amp;amp;pid=10510 View bug list]&lt;br /&gt;
&lt;br /&gt;
=[[Image:Helmet.png]] Code=&lt;br /&gt;
* Qt 4.5 (Diablo)&lt;br /&gt;
** http://gitorious.org/+qt-maemo-developers/qt/qt-maemo&lt;br /&gt;
* Qt 4.5 (Fremantle)&lt;br /&gt;
** http://gitorious.org/+qt-maemo-developers/qt/qt-maemo&lt;br /&gt;
* Qt 4.6 (Fremantle)&lt;br /&gt;
** http://qt.gitorious.org/qt/x11-maemo&lt;br /&gt;
&lt;br /&gt;
=[[Image:Preferences-desktop-user.png]] Get Help=&lt;br /&gt;
* Forums&lt;br /&gt;
** [http://discussion.forum.nokia.com/forum/forumdisplay.php?f=220 Qt for Maemo Forum Nokia Discussion board]&lt;br /&gt;
** [https://garage.maemo.org/forum/?group_id=424 Old qt4.garage.maemo.org forum]&lt;br /&gt;
* IRC&lt;br /&gt;
** Official Qt for Maemo IRC Channel&lt;br /&gt;
** Click [http://webchat.freenode.net/?channels=qt-maemo here] to join the #qt-maemo channel in frenode (irc.freenode.net).&lt;br /&gt;
&lt;br /&gt;
* Mailing list&lt;br /&gt;
** [https://garage.maemo.org/mailman/listinfo/qt4-devel Click here to Subscribe to the Qt community ML]&lt;br /&gt;
&lt;br /&gt;
[[Category:Qt]]&lt;/div&gt;</summary>
		<author><name>192.100.124.219</name></author>
	</entry>
	<entry>
		<id>https://maemo.octonezd.me/index.php?title=Qt-Maemo&amp;diff=34090</id>
		<title>Qt-Maemo</title>
		<link rel="alternate" type="text/html" href="https://maemo.octonezd.me/index.php?title=Qt-Maemo&amp;diff=34090"/>
		<updated>2010-05-07T11:12:45Z</updated>

		<summary type="html">&lt;p&gt;192.100.124.219: /* Image:Kblogger.png‎  News */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&lt;br /&gt;
&lt;br /&gt;
=[[Image:Kblogger.png‎ ]] News=&lt;br /&gt;
&amp;lt;b&amp;gt;7 May 10&amp;lt;/b&amp;gt; - Qt 4.7 Beta1 packages for Maemo available [http://labs.trolltech.com/blogs/2010/05/06/new-experimental-qt-47-packages-for-the-n900/ read more]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;22 Mar 10&amp;lt;/b&amp;gt; - Qt 4.6.2 has replaced Qt 4.5.3 into SDK PR 1.2. Run apt-get update &amp;amp;&amp;amp; apt-get upgrade to update it.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;25 Feb 10&amp;lt;/b&amp;gt; - [http://labs.trolltech.com/blogs/2010/02/24/qt-for-maemo-5-home-screen-widgets/ How to make Qt Desktop Widgets]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;15 Feb 10&amp;lt;/b&amp;gt; - Qt 4.6.2 is out. Qt Mobility (beta1) packages are in extras-devel.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;20 Jan 10&amp;lt;/b&amp;gt; - [http://www.anselmolsm.org/blog/qt-mobile-demos-in-extras-devel/ Qt Mobile Demos in extras-devel]&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;19 Jan 10&amp;lt;/b&amp;gt; - [http://qt.nokia.com/developer/qt-for-maemo-developers Qt 4.6 for Maemo 5 going Beta]&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;15 Jan 10&amp;lt;/b&amp;gt; - New Qt 4.5.3~git20090723-0maemo6 packages are now in Fremantle [[Maemo_5/PR1.1|PR 1.1]]&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;22 Dec 09&amp;lt;/b&amp;gt; - [http://wiki.maemo.org/MADDE/Qt_Example Qt example] for [http://wiki.maemo.org/MADDE MADDE ] ([http://talk.maemo.org/showthread.php?t=38075 talk thread])&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;17 Dec 09&amp;lt;/b&amp;gt; - [http://labs.trolltech.com/blogs/2009/12/17/qt-declarative-for-maemo-5/Qt declarative hits Maemo extras-devel repository]&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;11 Dec 09&amp;lt;/b&amp;gt; - Bye bye old static web pages.. all our pages are now in the Maemo Wiki. Old website is [http://qt4.garage.maemo.org/index-old.html here]&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=[[Image:Intro.png]] What is Qt?=&lt;br /&gt;
Qt (pronounced as the English word &amp;quot;cute&amp;quot;) is a cross-platform application development framework. More information is available at the [http://qt.nokia.com/ Qt website].&lt;br /&gt;
&lt;br /&gt;
=[[Image:Rocket.png]] Maemo Qt main features=&lt;br /&gt;
* Hildon Style, so applications look like Hildon/GTK+ applications&lt;br /&gt;
* Hildon Input Method, so applications can use the virtual keyboard&lt;br /&gt;
* Hildon-specific widgets&lt;br /&gt;
** partial support in Qt 4.5&lt;br /&gt;
** Qt 4.6 will have full support, and is currently a technology preview&lt;br /&gt;
&lt;br /&gt;
= [[Image:Fileview-preview.png]] Maemo Qt in Action =&lt;br /&gt;
* Diablo Maemo Qt&lt;br /&gt;
 ADD_HERE_SOME_PICS&lt;br /&gt;
* Fremantle Maemo Qt&lt;br /&gt;
 ADD HERE SOME PICS&lt;br /&gt;
&lt;br /&gt;
=[[Image:Pda.png]] Supported Maemo devices=&lt;br /&gt;
* [[Nokia N800]]/[[Nokia N810|N810]] (OS2008/Maemo4.1/Diablo)&lt;br /&gt;
* [[Nokia N900]] (OS2009/Maemo5/[[Open development/Maemo roadmap/Fremantle|Fremantle]])&lt;br /&gt;
&lt;br /&gt;
=[[Image:Ktorrent.png‎ ]] Installing Qt=&lt;br /&gt;
&lt;br /&gt;
Qt can be [[Qt4_Hildon#Installing_Qt_packages_in_Scratchbox|installed in scratchbox]] for development. For applications that use Qt and are installed via the application manager, the necessary Qt packages will automatically be installed.&lt;br /&gt;
&lt;br /&gt;
=[[Image:Available-qtapps-32.png‎ ]]Available and proposed Qt Applications=&lt;br /&gt;
If you want to port a Qt application to Maemo or if you want to check if an application you love has been already ported.. [[Qt4HildonApplications|this]] is the place you would like to check; &lt;br /&gt;
&lt;br /&gt;
=[[Image:Help-contents.png]] Documentation=&lt;br /&gt;
&lt;br /&gt;
== Qt ==&lt;br /&gt;
&lt;br /&gt;
* [[Qt4 development]] developing with Qt for Maemo&lt;br /&gt;
* [[QML]]&lt;br /&gt;
* [[QtRuby]]&lt;br /&gt;
&lt;br /&gt;
== Non-Qt documentation ==&lt;br /&gt;
&lt;br /&gt;
* Fremantle: &lt;br /&gt;
** [http://sw.nokia.com/id/a3187f95-ad88-4233-b0ef-a182da3ec1c7/Hildon_2_2_Widget_UI_Specification_v1_0_en.pdf Hildon 2.2 Widget UI Spec -PDF]&lt;br /&gt;
** [http://www.forum.nokia.com/info/sw.nokia.com/id/eb8a68ba-6225-4d84-ba8f-a00e4a05ff6f/Hildon_2_2_UI_Style_Guide.html Hildon 2.2 UI Style Guid -PDF]&lt;br /&gt;
* Diablo&lt;br /&gt;
** ADD_SOMETHING_HERE&lt;br /&gt;
&lt;br /&gt;
== Further reading ==&lt;br /&gt;
&lt;br /&gt;
* [http://www.forum.nokia.com/Tools_Docs_and_Code/Documentation/Latest.xhtml Forum Nokia Docs] contain Maemo as well as other documentation related to other Nokia platforms&lt;br /&gt;
* [http://wiki.forum.nokia.com/index.php/Qt_for_Maemo_Developers_Guide Qt for Maemo Developers Guide, Forum Nokia]&lt;br /&gt;
* [http://www.forum.nokia.com/Tools_Docs_and_Code/Documentation/Maemo.xhtml Maemo documentation, mostly about Qt, Forum Nokia]&lt;br /&gt;
* [http://doc.trolltech.com/qt-maemo-4.6/how-to-learn-qt.html How to learn Qt, Trolltech]&lt;br /&gt;
* [http://qt.nokia.com/developer/books Books] listed at qt.nokia.com&lt;br /&gt;
* [http://talk.maemo.org/showthread.php?t=39879 Qt4 hello world with python in 30 minutes]&lt;br /&gt;
* [http://wiki.forum.nokia.com/index.php/Qt_application_for_Maemo_with_DBus_support Install D-Bus Service with Qt]&lt;br /&gt;
* [[University Course]] (in progress): A syllabus for teaching Qt as an intensive two-week course.&lt;br /&gt;
&lt;br /&gt;
=[[Image:Bug.png]] Bug tracking=&lt;br /&gt;
* Diablo &amp;amp; Fremantle Qt 4.5 port&lt;br /&gt;
** [https://bugs.maemo.org/buglist.cgi?query_format=specific&amp;amp;order=relevance+desc&amp;amp;bug_status=__open__&amp;amp;product=Qt&amp;amp;content= View bug list]&lt;br /&gt;
** [https://bugs.maemo.org/enter_bug.cgi?product=Qt Report a new bug]&lt;br /&gt;
* Fremantle Qt 4.6 port&lt;br /&gt;
** [http://doc.trolltech.com/4.6/bughowto.html How to report a bug]&lt;br /&gt;
** [http://bugreports.qt.nokia.com/secure/CreateIssue!default.jspa Report a new bug]&lt;br /&gt;
** [http://bugreports.qt.nokia.com/secure/IssueNavigator.jspa?reset=true&amp;amp;&amp;amp;query=maemo&amp;amp;summary=true&amp;amp;description=true&amp;amp;body=true&amp;amp;environment=true&amp;amp;pid=10510 View bug list]&lt;br /&gt;
&lt;br /&gt;
=[[Image:Helmet.png]] Code=&lt;br /&gt;
* Qt 4.5 (Diablo)&lt;br /&gt;
** http://gitorious.org/+qt-maemo-developers/qt/qt-maemo&lt;br /&gt;
* Qt 4.5 (Fremantle)&lt;br /&gt;
** http://gitorious.org/+qt-maemo-developers/qt/qt-maemo&lt;br /&gt;
* Qt 4.6 (Fremantle)&lt;br /&gt;
** http://qt.gitorious.org/qt/x11-maemo&lt;br /&gt;
&lt;br /&gt;
=[[Image:Preferences-desktop-user.png]] Get Help=&lt;br /&gt;
* Forums&lt;br /&gt;
** [http://discussion.forum.nokia.com/forum/forumdisplay.php?f=220 Qt for Maemo Forum Nokia Discussion board]&lt;br /&gt;
** [https://garage.maemo.org/forum/?group_id=424 Old qt4.garage.maemo.org forum]&lt;br /&gt;
* IRC&lt;br /&gt;
** Official Qt for Maemo IRC Channel&lt;br /&gt;
** Click [http://webchat.freenode.net/?channels=qt-maemo here] to join the #qt-maemo channel in frenode (irc.freenode.net).&lt;br /&gt;
&lt;br /&gt;
* Mailing list&lt;br /&gt;
** [https://garage.maemo.org/mailman/listinfo/qt4-devel Click here to Subscribe to the Qt community ML]&lt;br /&gt;
&lt;br /&gt;
[[Category:Qt]]&lt;/div&gt;</summary>
		<author><name>192.100.124.219</name></author>
	</entry>
	<entry>
		<id>https://maemo.octonezd.me/index.php?title=Device_management_using_Bcfg2&amp;diff=6011</id>
		<title>Device management using Bcfg2</title>
		<link rel="alternate" type="text/html" href="https://maemo.octonezd.me/index.php?title=Device_management_using_Bcfg2&amp;diff=6011"/>
		<updated>2010-04-15T11:04:55Z</updated>

		<summary type="html">&lt;p&gt;192.100.124.219: /* Scope and terminology */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This article contains information about using [http://trac.mcs.anl.gov/projects/bcfg2 Bcfg2], an open source configuration management system in management of Maemo based devices.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;Note!&amp;lt;/font&amp;gt; At this phase, although the title says otherwise, instructions given in this article do NOT constitute a device management solution. At the moment these instructions only guide to &#039;&#039;&#039;experiment&#039;&#039;&#039; device management using Bcfg2.&lt;br /&gt;
&lt;br /&gt;
== Scope and terminology ==&lt;br /&gt;
&lt;br /&gt;
Scope of the article is using Bcfg2 to manage Maemo devices of employees at a fairly large company, where the number of devices is counted on hundreds or thousands. In a private use, or in small companies things covered here hardly make any sense.&lt;br /&gt;
&lt;br /&gt;
In the remainder if this document, following terminology is used&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Term&lt;br /&gt;
! Description&lt;br /&gt;
|-&lt;br /&gt;
| Device&lt;br /&gt;
| Maemo based handset, such as [[Nokia N900]]&lt;br /&gt;
|-&lt;br /&gt;
| Device management&lt;br /&gt;
| Generally used term for configuration management which takes place on Devices&lt;br /&gt;
|-&lt;br /&gt;
| Enterprise&lt;br /&gt;
| A large company or other organization that wants employees to ba able to acces company IT systems using Maemo based devices&lt;br /&gt;
|-&lt;br /&gt;
| Desktop computer&lt;br /&gt;
| A full-size computer (traditional desktop or laptop) used to access corporate IT systems&lt;br /&gt;
|-&lt;br /&gt;
| Enterprise configuration&lt;br /&gt;
| A set of applications and configuration values which the Enterprise wants to deploy into the Device as a prerequisite for accessing corporate IT systems. Usually includes hardening the device security. &lt;br /&gt;
|-&lt;br /&gt;
| Provisioning&lt;br /&gt;
| The process which equips the Device with Enterprise configuration&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Instructions given in this article are tested on [[Open development/Maemo roadmap/Fremantle|Fremantle]]. They may work on other releases as well, but probably not.&lt;br /&gt;
&lt;br /&gt;
=== Recommended reading ===&lt;br /&gt;
&lt;br /&gt;
Basic use and concepts of Bcfg2 are not in the scope of this article. To get familiar with Bcfg2, following reading is recommended:&lt;br /&gt;
&lt;br /&gt;
*[http://www.linuxlinks.com/article/20100222155850632/ConfigurationManagement.html 7 of the Best Free Linux Configuration Management Tools]&lt;br /&gt;
* [http://trac.mcs.anl.gov/projects/bcfg2/wiki/Bcfg2Doc Bcfg2 documentation]&lt;br /&gt;
&lt;br /&gt;
== Device management? Why bother? ==&lt;br /&gt;
&lt;br /&gt;
Provisioning Devices without management is like standing on the waterfront, throwing rocks in to a lake trying to get them land into a bucket at a bottom. The throwing movement can be very controlled and calculated, but once the rock is released from  hand, all control and traceability is lost. As a result, we do not really know if it ever hit the bucket. And if it did not, there is no way to get it there. Not to mention ability to move it into another bucket if so desired. Over time, we also inevitably lose track of how many rocks have we have thrown.&lt;br /&gt;
&lt;br /&gt;
Hence, Provisioning-only approach leads at least following shortcomings&lt;br /&gt;
* No statistics about Devices Provisioned&lt;br /&gt;
* No information about success of the Provisioning&lt;br /&gt;
* No method to fix failed Provisioning&lt;br /&gt;
* No method for managing changes at Enterprise configuration (other than publish a new release hoping users will pick it up)&lt;br /&gt;
&lt;br /&gt;
Using the rock analogy, in Device management approach we never completely release the rock. We tie a thin nylon line into each rock before throwing it. Now we can follow the line and track whether the rock did hit the bucket or not. We can use the line to lift misses to the bucket. We can also use the line to move them to another bucket if so desired. We can also easily have statistics about the rocks thrown; just count the lines.&lt;br /&gt;
&lt;br /&gt;
It should be also noted that there are legislations such as Sarbanes-Oxley which mandate keeping track of computers able to access and store corporate data.&lt;br /&gt;
&lt;br /&gt;
== Why Bcfg2? ==&lt;br /&gt;
&lt;br /&gt;
Openness is at heart of the Maemo philosophy. Thus, using an Open Source configuration management system seems a logical choice to try out.&lt;br /&gt;
&lt;br /&gt;
Bcfg2 was chosen as the first candidate to try-out because &lt;br /&gt;
&lt;br /&gt;
* Architecture is server-centric. Processing is performed at the server end as much as possible. This makes the client lightweight. It makes it also simpler and less frequently changing.&lt;br /&gt;
* Device management is a special use case for a software like this. They are all geared more for server and desktop management. Thus, fair amount of customization is anticipated. Bcfg2 has very flexible plugin architecture where most of it&#039;s core functionality implemented as plugins.  This makes it very customization-friendly, nearly all components are replaceable&lt;br /&gt;
* Anticipation of customization  puts lot of weight to implementation language. Bcfg2 is written in Python, which suits the author best.&lt;br /&gt;
&lt;br /&gt;
That said, there is no reason why other configuration management systems such as CFEngine or Puppet wouldn&#039;t work as well. (Actually, Puppet was tried out, got successfully running at the Device. Only it did not communicate with the server. This is possibly caused by the SSL problem discussed later. That&#039;s was the point where lack of author&#039;s Ruby skills kicked in :)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Getting Bcfg2 up and running ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;A word of warning&amp;lt;/font&amp;gt;: Configuration management is complicated task. Learning Bcfg2 and the concepts behind it does take some time and effort. Do NOT by try to manage Maemo clients as your first Bcfg2 rehearsal. Instead, familiarize yourself with Bcfg2 first using &amp;quot;ordinary&amp;quot; computers  as clients.&lt;br /&gt;
&lt;br /&gt;
=== Problems with Bcfg2 in Maemo ===&lt;br /&gt;
&lt;br /&gt;
At the moment there are some problems we need to work around in order to  install Bcfg2 client into Device. &lt;br /&gt;
&lt;br /&gt;
# Lack of proper SSL support&lt;br /&gt;
#* Bcfg2 prior to 1.0 used Python implementation of SSL called tlslite. At 1.0 tlslite war replaced with Python 2.6 built-in SSL module&lt;br /&gt;
#* Bcfg2 has internal fallback to use M2crypto module if SSL module fails&lt;br /&gt;
#* Maemo (Fremantle), however, has Python 2.5, which has no SSL module and no M2crypto module either&lt;br /&gt;
#** There is actually already [https://bugs.maemo.org/show_bug.cgi?id=5102 bug report] filed about the problem. However, the original problem (importing SSL module) was never solved, the problem the reporter faces seems to be worked around other way&lt;br /&gt;
#* Possible workarounds:&lt;br /&gt;
#** Compile [http://pypi.python.org/pypi/ssl/SSL SSL 1.15] module into Python 2.5&lt;br /&gt;
#** Compile M2crypto module into Python 2.5&lt;br /&gt;
#*** Both fail into lack of complete set of OpenSSL development headers&lt;br /&gt;
#** Re-include tlslib into Bcfg2&lt;br /&gt;
#*** Possible, however there will be no server identity validation&lt;br /&gt;
#** Use Bcfg2 prior to 1.0 in Device&lt;br /&gt;
#*** Possible, however there will be no server identity validation&lt;br /&gt;
#* Contributions welcome&lt;br /&gt;
# Bcfg2 is not packaged for Maemo &lt;br /&gt;
#* Must be installed from source&lt;br /&gt;
# There is no good way for bootstrapping right now&lt;br /&gt;
#* Installation must be performed from Device command line&lt;br /&gt;
&lt;br /&gt;
=== Server installation ===&lt;br /&gt;
&lt;br /&gt;
Download and install version 1.0.1 following instructions found at [http://trac.mcs.anl.gov/projects/bcfg2/wiki/Download Bcfg2 web site]&lt;br /&gt;
&lt;br /&gt;
Note that the server should reside in a network the Device is able to access.&lt;br /&gt;
&lt;br /&gt;
=== Client installation ===&lt;br /&gt;
&lt;br /&gt;
==== Option 1: Install old version ====&lt;br /&gt;
&lt;br /&gt;
Download [http://ftp.mcs.anl.gov/pub/bcfg/archive/bcfg2-0.9.6.tar.gz bcfg2-0.9.6] in to the Device. Open terminal window and install Bcfg2 by entering following commands&lt;br /&gt;
&lt;br /&gt;
 apt-get install python&lt;br /&gt;
 tar zxvf bcfg2-0.9.6.tar.gz&lt;br /&gt;
 cd bcfg2-0.9.6&lt;br /&gt;
 python setup.py install --install-layout deb --record /root/bcfg2files&lt;br /&gt;
&lt;br /&gt;
==== Option 2: Install current version ====&lt;br /&gt;
&lt;br /&gt;
This option is somewhat more complicated since we need to re-include tlslib into Bcfg2&lt;br /&gt;
&lt;br /&gt;
Download [http://ftp.mcs.anl.gov/pub/bcfg/archive/bcfg2-0.9.6.tar.gz bcfg2-0.9.6] and [http://ftp.mcs.anl.gov/pub/bcfg/archive/bcfg2-1.0.1.tar.gz bcfg2-1.0.1] both. Extract them:&lt;br /&gt;
&lt;br /&gt;
 tar zxvf bcfg2-0.9.6.tar.gz &lt;br /&gt;
 tar zxvf bcfg2-1.0.1.tar.gz&lt;br /&gt;
&lt;br /&gt;
Get tlslib and from older version&lt;br /&gt;
&lt;br /&gt;
 cp -r bcfg2-0.9.6/src/lib/tlslite bcfg2-1.0.1/src/lib&lt;br /&gt;
&lt;br /&gt;
Download [http://trac.mcs.anl.gov/projects/bcfg2/browser/trunk/bcfg2/src/lib/Proxy.py?rev=5168&amp;amp;format=txt this version] of Proxy.py from Bcfg2 site and save it as &amp;lt;code&amp;gt;bcfg2-1.0.1/src/lib/Proxy.py&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Edit &amp;lt;code&amp;gt;bcfg2-1.0.1/src/lib/Proxy.py&amp;lt;/code&amp;gt;. Add dummy placeholders &amp;lt;code&amp;gt;ca&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;allowedServerCNs&amp;lt;/code&amp;gt; into ComponentProxy definition so it looks like below:&lt;br /&gt;
&lt;br /&gt;
 def ComponentProxy (url, user=None, password=None, fingerprint=None,&lt;br /&gt;
                     key=None, ca=None, allowedServerCNs=None, cert=None):&lt;br /&gt;
&lt;br /&gt;
Edit &amp;lt;code&amp;gt;bcfg2-1.0.1/setup.py&amp;lt;/code&amp;gt;&lt;br /&gt;
Add the packages &amp;lt;code&amp;gt;Bcfg2.tlslite&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;Bcfg2.tlslite.integration&amp;lt;/code&amp;gt;, and &amp;lt;code&amp;gt;Bcfg2.tlslite.utils&amp;lt;/code&amp;gt; back into the packages list in setup.py, as seen in [https://trac.mcs.anl.gov/projects/bcfg2/browser/trunk/bcfg2/setup.py?rev=5182 here]&lt;br /&gt;
&lt;br /&gt;
Repackage the source directory&lt;br /&gt;
&lt;br /&gt;
 tar zcvf bcfg2-1.0.1-mod.tar.gz bcfg2-1.0.1&lt;br /&gt;
&lt;br /&gt;
Transfer &amp;lt;code&amp;gt;bcfg2-1.0.1-mod.tar.gz&amp;lt;/code&amp;gt; to the Device. Open (at Device) terminal window and install Bcfg2 by entering following commands&lt;br /&gt;
&lt;br /&gt;
 apt-get install python&lt;br /&gt;
 tar zxvf bcfg2-1.0.1-mod.tar.gz&lt;br /&gt;
 cd bcfg2-1.0.1&lt;br /&gt;
 python setup.py install --install-layout deb --record /root/bcfg2files&lt;br /&gt;
&lt;br /&gt;
=== Installation notes ===&lt;br /&gt;
&lt;br /&gt;
Reinstalling Bcfg2: Remove &amp;lt;code&amp;gt;bcfg2-1.0.1/build&amp;lt;/code&amp;gt; directory before re-run of &amp;lt;code&amp;gt;setup.py&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Removing Bcfg2: remove files listed at &amp;lt;code&amp;gt;/root/bcfg2files&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Simple sample configuration ===&lt;br /&gt;
&lt;br /&gt;
In the following we create a simple configuration at the Bcfg2 server, just to make you get on board quicker (empty configurations are not very illustrative). In the sample configuration we do three things:&lt;br /&gt;
* Manage the content of a simple file &amp;lt;code&amp;gt;/etc/simple&amp;lt;/code&amp;gt;&lt;br /&gt;
* Manage the content of a file &amp;lt;code&amp;gt;/etc/bcfg2.info&amp;lt;/code&amp;gt; using template&lt;br /&gt;
* Run a simple action, a shell command &amp;lt;code&amp;gt;ls / &amp;gt; /tmp/foobar&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Throughout this article we assume the configuration repository is at default location &amp;lt;code&amp;gt;/var/lib/bcfg2&amp;lt;/code&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
Edit file &amp;lt;code&amp;gt;/var/lib/bcfg2/Metadata/groups.xml&amp;lt;/code&amp;gt; to contain following:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;Groups&amp;gt;&lt;br /&gt;
     &amp;lt;Group name=&#039;armel&#039;/&amp;gt;&lt;br /&gt;
     &amp;lt;Group name=&#039;linux&#039;/&amp;gt;&lt;br /&gt;
     &amp;lt;Group name=&#039;deb&#039;&amp;gt;&lt;br /&gt;
         &amp;lt;Group name=&#039;linux&#039;/&amp;gt;&lt;br /&gt;
     &amp;lt;/Group&amp;gt;&lt;br /&gt;
     &amp;lt;Group name=&#039;maemo&#039;&amp;gt;&lt;br /&gt;
         &amp;lt;Group name=&#039;deb&#039;/&amp;gt;&lt;br /&gt;
         &amp;lt;Bundle name=&#039;sample&#039;/&amp;gt;&lt;br /&gt;
     &amp;lt;/Group&amp;gt;&lt;br /&gt;
     &amp;lt;Group name=&#039;fremantle&#039;&amp;gt;&lt;br /&gt;
         &amp;lt;Group name=&#039;maemo&#039;/&amp;gt;&lt;br /&gt;
     &amp;lt;/Group&amp;gt;&lt;br /&gt;
 &amp;lt;/Groups&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Edit file &amp;lt;code&amp;gt;/var/lib/bcfg2/Bundler/sample.xml&amp;lt;/code&amp;gt; to contain following:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;Bundle name=&#039;sample&#039;&amp;gt;&lt;br /&gt;
     &amp;lt;ConfigFile name=&#039;/etc/simple&#039;/&amp;gt;&lt;br /&gt;
     &amp;lt;ConfigFile name=&#039;/etc/bcfg2.info&#039;/&amp;gt;&lt;br /&gt;
     &amp;lt;BoundAction name=&amp;quot;simple&amp;quot; timing=&#039;post&#039; when=&#039;always&#039; status=&#039;check&#039; command=&amp;quot;ls / &amp;gt; /tmp/foobar&amp;quot;/&amp;gt;&lt;br /&gt;
 &amp;lt;/Bundle&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Edit file &amp;lt;code&amp;gt;/var/lib/bcfg2/Cfg/etc/simple/simple&amp;lt;/code&amp;gt; to contain following (Create directories as needed):&lt;br /&gt;
&lt;br /&gt;
 This is a simple file&lt;br /&gt;
&lt;br /&gt;
Edit file &amp;lt;code&amp;gt;/var/lib/bcfg2/Cfg/etc/simple/simple&amp;lt;/code&amp;gt; to contain following:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;FileInfo&amp;gt;&lt;br /&gt;
     &amp;lt;Info owner=&#039;root&#039; group=&#039;root&#039; perms=&#039;0644&#039; encoding=&#039;ascii&#039;/&amp;gt;&lt;br /&gt;
 &amp;lt;/FileInfo&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Edit file &amp;lt;code&amp;gt;/var/lib/bcfg2/TCheetah/etc/bcfg2.info/template&amp;lt;/code&amp;gt; to contain following (Create directories as needed):&lt;br /&gt;
&lt;br /&gt;
 Hostname: $self.metadata.hostname&lt;br /&gt;
 Uuid: $self.metadata.uuid&lt;br /&gt;
 Password: $self.metadata.password&lt;br /&gt;
 Profile: $self.metadata.profile&lt;br /&gt;
 Groups: #echo &#039;,&#039;.join($self.metadata.groups)#&lt;br /&gt;
 Bundles: #echo &#039;,&#039;.join($self.metadata.bundles)#&lt;br /&gt;
&lt;br /&gt;
Edit file &amp;lt;code&amp;gt;/var/lib/bcfg2/TCheetah/etc/bcfg2.info/info.xml&amp;lt;/code&amp;gt; to contain following:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;FileInfo&amp;gt;&lt;br /&gt;
     &amp;lt;Info owner=&#039;root&#039; group=&#039;root&#039; perms=&#039;0644&#039; encoding=&#039;ascii&#039;/&amp;gt;&lt;br /&gt;
 &amp;lt;/FileInfo&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Some explanation: ==== &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Bcfg2 builds the configuration using layered approach:&lt;br /&gt;
&lt;br /&gt;
* Metadata (roughly: &amp;quot;which kind of configuration should be where&amp;quot;)&lt;br /&gt;
* Abstract (roughly: what should be configured)&lt;br /&gt;
* Literal (roughly: how exactly that &amp;quot;what&amp;quot; should be achieved)&lt;br /&gt;
&lt;br /&gt;
In this example, we have two instances of the same abstract configuration item (ConfigFile). They are however handled by two different literal configuration generators, Cfg, which handles simple files and TCheetah which handles more complicated files using built-in Cheetah templating engine.&lt;br /&gt;
&lt;br /&gt;
One thing to like in Bcfg2 is that it does not mandate things too much. Third item is an example of that. Bcfg2 allows short-circuiting the Literal layer processing altogether by adding &amp;quot;Bound&amp;quot; in front of the keyword. In a simple cases where what we want exactly is already known already at abstract level this can simplify things.&lt;br /&gt;
&lt;br /&gt;
=== Hooking the Device and Bcfg2 server together ===&lt;br /&gt;
&lt;br /&gt;
At server, add following line into &amp;lt;code&amp;gt;/var/lib/bcfg2/Metadata/clients.xml&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;Client uuid=&amp;quot;foo&amp;quot; name=&amp;quot;bar&amp;quot; profile=&amp;quot;maemo&amp;quot; password=&amp;quot;xyzzy&amp;quot; pingable=&amp;quot;N&amp;quot; location=&amp;quot;floating&amp;quot; auth=&amp;quot;cert+password&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
No need to restart the Bcfg2 server, it picks the changes on the fly. Next, at the Device, edit the file  &amp;lt;code&amp;gt;/etc/bcfg2.conf&amp;lt;/code&amp;gt; to look like following:&lt;br /&gt;
&lt;br /&gt;
 [communication]&lt;br /&gt;
 protocol = xmlrpc/ssl&lt;br /&gt;
 user = foo&lt;br /&gt;
 password = xyzzy&lt;br /&gt;
 &lt;br /&gt;
 [components]&lt;br /&gt;
 bcfg2 = https://bcfg2server.example.com:6789&lt;br /&gt;
&lt;br /&gt;
Now you should be able to invoke Bcfg2 client and make first connection to the server using command&lt;br /&gt;
&lt;br /&gt;
 bcfg2 -I&lt;br /&gt;
&lt;br /&gt;
You should now be prompted a confirmation for three configuration item defined in the sample configuration, due to use of &amp;lt;code&amp;gt;-I&amp;lt;/code&amp;gt; option.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;hr/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Appendix: Hints on Bcfg2 usage ==&lt;br /&gt;
&lt;br /&gt;
=== Autogroup probe ===&lt;br /&gt;
&lt;br /&gt;
Bcfg2 is able to automatically determine group memberships using probes. [http://wiki.maemo.org/Image:Autogroup.sh Here] is a sample probe code which recognizes Maemo devices among many other computers. Just put the code into a file at Probes directory, for example, &amp;lt;code&amp;gt;/var/lib/bcfg2/Probes/autogroup&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
At Bcfg2 web site is another [http://trac.mcs.anl.gov/projects/bcfg2/wiki/Plugins/Probes/examples/group example] of autogroup probe code. This code does not recognize Maemo but might do better work with some other platforms.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;hr/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== TODO ==&lt;br /&gt;
&lt;br /&gt;
This is the &amp;quot;dont look here&amp;quot; part, stuff under construction&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== APT package driver ===&lt;br /&gt;
&lt;br /&gt;
==== Problems ====&lt;br /&gt;
&lt;br /&gt;
# Maemo does not have debsums utility&lt;br /&gt;
#* Causes APT package driver not to load&lt;br /&gt;
# Maemo has no Python bindings to APT cache&lt;br /&gt;
#* Causes APT package driver not to load/work&lt;br /&gt;
# APT package driver is too &amp;quot;control freak&amp;quot; for the purpose&lt;br /&gt;
#* Wants to check package versions and even verify all the files&lt;br /&gt;
#* Suitable approach for servers but brings tiny device at it&#039;s knees&lt;br /&gt;
#* We probably only want to control that package X is installed and let package manager take care of the rest (updates &amp;amp; such)&lt;br /&gt;
# No any form of proxy handling (odds being inside corporate firewall are good)&lt;br /&gt;
&lt;br /&gt;
==== Opportunities ====&lt;br /&gt;
&lt;br /&gt;
Hildon application manager is not able to go through proxies, but APT is&lt;br /&gt;
&lt;br /&gt;
==== Proposed solution ====&lt;br /&gt;
&lt;br /&gt;
We need to write a &amp;quot;APTlite&amp;quot; client driver. Probably modifying an simple existing driver like &amp;lt;code&amp;gt;FreeBSDPackage.py&amp;lt;/code&amp;gt; would do. Some notes about the task:&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;RefreshPackages&amp;lt;/code&amp;gt; method needs to be modified to include only packages received from server and ignore the rest. Looks like following piece of code generates the list we need&lt;br /&gt;
 desired = [entry.get(&#039;name&#039;) for struct in self.config for entry in struct if entry.tag == &#039;Package&#039;]&lt;br /&gt;
&lt;br /&gt;
* Then, we could run something like this for each pkg in desired list to fill up the &amp;lt;code&amp;gt;self.installed&amp;lt;/code&amp;gt; dictionary:&lt;br /&gt;
&lt;br /&gt;
 /usr/bin/dpkg-query -W --showformat=&#039;${Version}\t${Status}\n&#039; &amp;lt;pkg&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;VerifyPackage&amp;lt;/code&amp;gt; method needs probably to be made a bit more liberal, like returning true if &amp;lt;code&amp;gt;entry.attrib[&#039;version&#039;]&amp;lt;/code&amp;gt; equals &amp;lt;code&amp;gt;&#039;auto&#039;&amp;lt;/code&amp;gt;  or &amp;lt;code&amp;gt;&#039;any&#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;pkgtool&amp;lt;/code&amp;gt; could probably be copied from &amp;lt;code&amp;gt;APT.py&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Proxies could be copied from shell environment by adding them into &amp;lt;code&amp;gt;pkgtool&amp;lt;/code&amp;gt;. Something like&lt;br /&gt;
&lt;br /&gt;
 proxies = &amp;quot;&amp;quot;&lt;br /&gt;
 for p in (&#039;http&#039;,&#039;https&#039;,&#039;ftp&#039;):&lt;br /&gt;
     if os.environ.has_key(&#039;%s_proxy&#039; % p):&lt;br /&gt;
         proxies += &#039;%s=%s &#039; % (&#039;%s_proxy&#039; % p, os.environ.get(&#039;%s_proxy&#039; % p))&lt;br /&gt;
 pkgtool = proxies + &#039; &#039; + pkgtool&lt;br /&gt;
&lt;br /&gt;
And how to get proxies into shell variables? One option is to use Bcfg2 to manage some file which is sourced by shell&lt;br /&gt;
&lt;br /&gt;
[[Category:Power users]]&lt;/div&gt;</summary>
		<author><name>192.100.124.219</name></author>
	</entry>
	<entry>
		<id>https://maemo.octonezd.me/index.php?title=Qt-Maemo&amp;diff=34097</id>
		<title>Qt-Maemo</title>
		<link rel="alternate" type="text/html" href="https://maemo.octonezd.me/index.php?title=Qt-Maemo&amp;diff=34097"/>
		<updated>2010-03-26T10:36:31Z</updated>

		<summary type="html">&lt;p&gt;192.100.124.219: /* Image:Kblogger.png‎  News */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&lt;br /&gt;
&lt;br /&gt;
=[[Image:Kblogger.png‎ ]] News=&lt;br /&gt;
&amp;lt;b&amp;gt;22 Mar 10&amp;lt;/b&amp;gt; - Qt 4.6.2 has replaced Qt 4.5.3 into SDK PR 1.2. Run apt-get update &amp;amp;&amp;amp; apt-get upgrade to update it.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;25 Feb 10&amp;lt;/b&amp;gt; - [http://labs.trolltech.com/blogs/2010/02/24/qt-for-maemo-5-home-screen-widgets/ How to make Qt Desktop Widgets]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;15 Feb 10&amp;lt;/b&amp;gt; - Qt 4.6.2 is out. Qt Mobility (beta1) packages are in extras-devel.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;20 Jan 10&amp;lt;/b&amp;gt; - [http://www.anselmolsm.org/blog/qt-mobile-demos-in-extras-devel/ Qt Mobile Demos in extras-devel]&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;19 Jan 10&amp;lt;/b&amp;gt; - [http://qt.nokia.com/developer/qt-for-maemo-developers Qt 4.6 for Maemo 5 going Beta]&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;15 Jan 10&amp;lt;/b&amp;gt; - New Qt 4.5.3~git20090723-0maemo6 packages are now in Fremantle [[Maemo_5/PR1.1|PR 1.1]]&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;22 Dec 09&amp;lt;/b&amp;gt; - [http://wiki.maemo.org/MADDE/Qt_Example Qt example] for [http://wiki.maemo.org/MADDE MADDE ] ([http://talk.maemo.org/showthread.php?t=38075 talk thread])&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;17 Dec 09&amp;lt;/b&amp;gt; - [http://labs.trolltech.com/blogs/2009/12/17/qt-declarative-for-maemo-5/Qt declarative hits Maemo extras-devel repository]&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;11 Dec 09&amp;lt;/b&amp;gt; - Bye bye old static web pages.. all our pages are now in the Maemo Wiki. Old website is [http://qt4.garage.maemo.org/index-old.html here]&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=[[Image:Intro.png]] What is Qt?=&lt;br /&gt;
Qt (pronounced as the English word &amp;quot;cute&amp;quot;) is a cross-platform application development framework. More information is available at the [http://qt.nokia.com/ Qt website].&lt;br /&gt;
&lt;br /&gt;
=[[Image:Rocket.png]] Maemo Qt main features=&lt;br /&gt;
* Hildon Style, so applications look like Hildon/GTK+ applications&lt;br /&gt;
* Hildon Input Method, so applications can use the virtual keyboard&lt;br /&gt;
* Hildon-specific widgets&lt;br /&gt;
** partial support in Qt 4.5&lt;br /&gt;
** Qt 4.6 will have full support, and is currently a technology preview&lt;br /&gt;
&lt;br /&gt;
= [[Image:Fileview-preview.png]] Maemo Qt in Action =&lt;br /&gt;
* Diablo Maemo Qt&lt;br /&gt;
 ADD_HERE_SOME_PICS&lt;br /&gt;
* Fremantle Maemo Qt&lt;br /&gt;
 ADD HERE SOME PICS&lt;br /&gt;
&lt;br /&gt;
=[[Image:Pda.png]] Supported Maemo devices=&lt;br /&gt;
* [[Nokia N800]]/[[Nokia N810|N810]] (OS2008/Maemo4.1/Diablo)&lt;br /&gt;
* [[Nokia N900]] (OS2009/Maemo5/[[Open development/Maemo roadmap/Fremantle|Fremantle]])&lt;br /&gt;
&lt;br /&gt;
=[[Image:Ktorrent.png‎ ]] Installing Qt=&lt;br /&gt;
&lt;br /&gt;
Qt can be [[Qt4_Hildon#Installing_Qt_packages_in_Scratchbox|installed in scratchbox]] for development. For applications that use Qt and are installed via the application manager, the necessary Qt packages will automatically be installed.&lt;br /&gt;
&lt;br /&gt;
=[[Image:Available-qtapps-32.png‎ ]]Available and proposed Qt Applications=&lt;br /&gt;
If you want to port a Qt application to Maemo or if you want to check if an application you love has been already ported.. [[Qt4HildonApplications|this]] is the place you would like to check; &lt;br /&gt;
&lt;br /&gt;
=[[Image:Help-contents.png]] Documentation=&lt;br /&gt;
&lt;br /&gt;
== Qt ==&lt;br /&gt;
&lt;br /&gt;
* [[Qt4 Hildon|Qt 4 Hildon]] developing with Qt for Maemo&lt;br /&gt;
* [[QML]]&lt;br /&gt;
&lt;br /&gt;
== Non-Qt documentation ==&lt;br /&gt;
&lt;br /&gt;
* Fremantle: &lt;br /&gt;
** [http://sw.nokia.com/id/a3187f95-ad88-4233-b0ef-a182da3ec1c7/Hildon_2_2_Widget_UI_Specification_v1_0_en.pdf Hildon 2.2 Widget UI Spec -PDF]&lt;br /&gt;
** [http://www.forum.nokia.com/info/sw.nokia.com/id/eb8a68ba-6225-4d84-ba8f-a00e4a05ff6f/Hildon_2_2_UI_Style_Guide.html Hildon 2.2 UI Style Guid -PDF]&lt;br /&gt;
* Diablo&lt;br /&gt;
** ADD_SOMETHING_HERE&lt;br /&gt;
&lt;br /&gt;
== Further reading ==&lt;br /&gt;
&lt;br /&gt;
* [http://www.forum.nokia.com/Tools_Docs_and_Code/Documentation/Latest.xhtml Forum Nokia Docs] contain Maemo as well as other documentation related to other Nokia platforms&lt;br /&gt;
* [http://wiki.forum.nokia.com/index.php/Qt_for_Maemo_Developers_Guide Qt for Maemo Developers Guide, Forum Nokia]&lt;br /&gt;
* [http://www.forum.nokia.com/Tools_Docs_and_Code/Documentation/Maemo.xhtml Maemo documentation, mostly about Qt, Forum Nokia]&lt;br /&gt;
* [http://doc.trolltech.com/3.2/how-to-learn-qt.html How to learn Qt, Trolltech]&lt;br /&gt;
* [http://qt.nokia.com/developer/books Books] listed at qt.nokia.com&lt;br /&gt;
* [http://talk.maemo.org/showthread.php?t=39879 Qt4 hello world with python in 30 minutes]&lt;br /&gt;
&lt;br /&gt;
=[[Image:Bug.png]] Bug tracking=&lt;br /&gt;
* Diablo &amp;amp; Fremantle Qt 4.5 port&lt;br /&gt;
** [https://bugs.maemo.org/buglist.cgi?query_format=specific&amp;amp;order=relevance+desc&amp;amp;bug_status=__open__&amp;amp;product=Qt&amp;amp;content= View bug list]&lt;br /&gt;
** [https://bugs.maemo.org/enter_bug.cgi?product=Qt Report a new bug]&lt;br /&gt;
* Fremantle Qt 4.6 port&lt;br /&gt;
** [http://doc.trolltech.com/4.6/bughowto.html How to report a bug]&lt;br /&gt;
** [http://bugreports.qt.nokia.com/secure/CreateIssue!default.jspa Report a new bug]&lt;br /&gt;
** [http://bugreports.qt.nokia.com/secure/IssueNavigator.jspa?reset=true&amp;amp;&amp;amp;query=maemo&amp;amp;summary=true&amp;amp;description=true&amp;amp;body=true&amp;amp;environment=true&amp;amp;pid=10510 View bug list]&lt;br /&gt;
&lt;br /&gt;
=[[Image:Helmet.png]] Code=&lt;br /&gt;
* Qt 4.5 (Diablo)&lt;br /&gt;
** http://gitorious.org/+qt-maemo-developers/qt/qt-maemo&lt;br /&gt;
* Qt 4.5 (Fremantle)&lt;br /&gt;
** http://gitorious.org/+qt-maemo-developers/qt/qt-maemo&lt;br /&gt;
* Qt 4.6 (Fremantle)&lt;br /&gt;
** http://qt.gitorious.org/qt/x11-maemo&lt;br /&gt;
&lt;br /&gt;
=[[Image:Preferences-desktop-user.png]] Get Help=&lt;br /&gt;
* Forums&lt;br /&gt;
** [http://discussion.forum.nokia.com/forum/forumdisplay.php?f=220 Qt for Maemo Forum Nokia Discussion board]&lt;br /&gt;
** [https://garage.maemo.org/forum/?group_id=424 Old qt4.garage.maemo.org forum]&lt;br /&gt;
* IRC&lt;br /&gt;
** Official Qt for Maemo IRC Channel&lt;br /&gt;
** Click [http://webchat.freenode.net/?channels=qt-maemo here] to join the #qt-maemo channel in frenode (irc.freenode.net).&lt;br /&gt;
&lt;br /&gt;
* Mailing list&lt;br /&gt;
** [https://garage.maemo.org/mailman/listinfo/qt4-devel Click here to Subscribe to the Qt community ML]&lt;br /&gt;
&lt;br /&gt;
[[Category:Qt]]&lt;/div&gt;</summary>
		<author><name>192.100.124.219</name></author>
	</entry>
	<entry>
		<id>https://maemo.octonezd.me/index.php?title=Qt-Maemo&amp;diff=34098</id>
		<title>Qt-Maemo</title>
		<link rel="alternate" type="text/html" href="https://maemo.octonezd.me/index.php?title=Qt-Maemo&amp;diff=34098"/>
		<updated>2010-03-26T10:36:11Z</updated>

		<summary type="html">&lt;p&gt;192.100.124.219: /* Image:Kblogger.png‎  News */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&lt;br /&gt;
&lt;br /&gt;
=[[Image:Kblogger.png‎ ]] News=&lt;br /&gt;
&amp;lt;b&amp;gt;22 Mar 10&amp;lt;/b&amp;gt; - Qt 4.6.2 has replaced Qt 4.5.3 into SDK PR 1.2. Run apt-get update &amp;amp;&amp;amp; apt-get upgrade to update it.&lt;br /&gt;
&amp;lt;b&amp;gt;25 Feb 10&amp;lt;/b&amp;gt; - [http://labs.trolltech.com/blogs/2010/02/24/qt-for-maemo-5-home-screen-widgets/ How to make Qt Desktop Widgets]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;15 Feb 10&amp;lt;/b&amp;gt; - Qt 4.6.2 is out. Qt Mobility (beta1) packages are in extras-devel.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;20 Jan 10&amp;lt;/b&amp;gt; - [http://www.anselmolsm.org/blog/qt-mobile-demos-in-extras-devel/ Qt Mobile Demos in extras-devel]&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;19 Jan 10&amp;lt;/b&amp;gt; - [http://qt.nokia.com/developer/qt-for-maemo-developers Qt 4.6 for Maemo 5 going Beta]&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;15 Jan 10&amp;lt;/b&amp;gt; - New Qt 4.5.3~git20090723-0maemo6 packages are now in Fremantle [[Maemo_5/PR1.1|PR 1.1]]&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;22 Dec 09&amp;lt;/b&amp;gt; - [http://wiki.maemo.org/MADDE/Qt_Example Qt example] for [http://wiki.maemo.org/MADDE MADDE ] ([http://talk.maemo.org/showthread.php?t=38075 talk thread])&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;17 Dec 09&amp;lt;/b&amp;gt; - [http://labs.trolltech.com/blogs/2009/12/17/qt-declarative-for-maemo-5/Qt declarative hits Maemo extras-devel repository]&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;11 Dec 09&amp;lt;/b&amp;gt; - Bye bye old static web pages.. all our pages are now in the Maemo Wiki. Old website is [http://qt4.garage.maemo.org/index-old.html here]&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=[[Image:Intro.png]] What is Qt?=&lt;br /&gt;
Qt (pronounced as the English word &amp;quot;cute&amp;quot;) is a cross-platform application development framework. More information is available at the [http://qt.nokia.com/ Qt website].&lt;br /&gt;
&lt;br /&gt;
=[[Image:Rocket.png]] Maemo Qt main features=&lt;br /&gt;
* Hildon Style, so applications look like Hildon/GTK+ applications&lt;br /&gt;
* Hildon Input Method, so applications can use the virtual keyboard&lt;br /&gt;
* Hildon-specific widgets&lt;br /&gt;
** partial support in Qt 4.5&lt;br /&gt;
** Qt 4.6 will have full support, and is currently a technology preview&lt;br /&gt;
&lt;br /&gt;
= [[Image:Fileview-preview.png]] Maemo Qt in Action =&lt;br /&gt;
* Diablo Maemo Qt&lt;br /&gt;
 ADD_HERE_SOME_PICS&lt;br /&gt;
* Fremantle Maemo Qt&lt;br /&gt;
 ADD HERE SOME PICS&lt;br /&gt;
&lt;br /&gt;
=[[Image:Pda.png]] Supported Maemo devices=&lt;br /&gt;
* [[Nokia N800]]/[[Nokia N810|N810]] (OS2008/Maemo4.1/Diablo)&lt;br /&gt;
* [[Nokia N900]] (OS2009/Maemo5/[[Open development/Maemo roadmap/Fremantle|Fremantle]])&lt;br /&gt;
&lt;br /&gt;
=[[Image:Ktorrent.png‎ ]] Installing Qt=&lt;br /&gt;
&lt;br /&gt;
Qt can be [[Qt4_Hildon#Installing_Qt_packages_in_Scratchbox|installed in scratchbox]] for development. For applications that use Qt and are installed via the application manager, the necessary Qt packages will automatically be installed.&lt;br /&gt;
&lt;br /&gt;
=[[Image:Available-qtapps-32.png‎ ]]Available and proposed Qt Applications=&lt;br /&gt;
If you want to port a Qt application to Maemo or if you want to check if an application you love has been already ported.. [[Qt4HildonApplications|this]] is the place you would like to check; &lt;br /&gt;
&lt;br /&gt;
=[[Image:Help-contents.png]] Documentation=&lt;br /&gt;
&lt;br /&gt;
== Qt ==&lt;br /&gt;
&lt;br /&gt;
* [[Qt4 Hildon|Qt 4 Hildon]] developing with Qt for Maemo&lt;br /&gt;
* [[QML]]&lt;br /&gt;
&lt;br /&gt;
== Non-Qt documentation ==&lt;br /&gt;
&lt;br /&gt;
* Fremantle: &lt;br /&gt;
** [http://sw.nokia.com/id/a3187f95-ad88-4233-b0ef-a182da3ec1c7/Hildon_2_2_Widget_UI_Specification_v1_0_en.pdf Hildon 2.2 Widget UI Spec -PDF]&lt;br /&gt;
** [http://www.forum.nokia.com/info/sw.nokia.com/id/eb8a68ba-6225-4d84-ba8f-a00e4a05ff6f/Hildon_2_2_UI_Style_Guide.html Hildon 2.2 UI Style Guid -PDF]&lt;br /&gt;
* Diablo&lt;br /&gt;
** ADD_SOMETHING_HERE&lt;br /&gt;
&lt;br /&gt;
== Further reading ==&lt;br /&gt;
&lt;br /&gt;
* [http://www.forum.nokia.com/Tools_Docs_and_Code/Documentation/Latest.xhtml Forum Nokia Docs] contain Maemo as well as other documentation related to other Nokia platforms&lt;br /&gt;
* [http://wiki.forum.nokia.com/index.php/Qt_for_Maemo_Developers_Guide Qt for Maemo Developers Guide, Forum Nokia]&lt;br /&gt;
* [http://www.forum.nokia.com/Tools_Docs_and_Code/Documentation/Maemo.xhtml Maemo documentation, mostly about Qt, Forum Nokia]&lt;br /&gt;
* [http://doc.trolltech.com/3.2/how-to-learn-qt.html How to learn Qt, Trolltech]&lt;br /&gt;
* [http://qt.nokia.com/developer/books Books] listed at qt.nokia.com&lt;br /&gt;
* [http://talk.maemo.org/showthread.php?t=39879 Qt4 hello world with python in 30 minutes]&lt;br /&gt;
&lt;br /&gt;
=[[Image:Bug.png]] Bug tracking=&lt;br /&gt;
* Diablo &amp;amp; Fremantle Qt 4.5 port&lt;br /&gt;
** [https://bugs.maemo.org/buglist.cgi?query_format=specific&amp;amp;order=relevance+desc&amp;amp;bug_status=__open__&amp;amp;product=Qt&amp;amp;content= View bug list]&lt;br /&gt;
** [https://bugs.maemo.org/enter_bug.cgi?product=Qt Report a new bug]&lt;br /&gt;
* Fremantle Qt 4.6 port&lt;br /&gt;
** [http://doc.trolltech.com/4.6/bughowto.html How to report a bug]&lt;br /&gt;
** [http://bugreports.qt.nokia.com/secure/CreateIssue!default.jspa Report a new bug]&lt;br /&gt;
** [http://bugreports.qt.nokia.com/secure/IssueNavigator.jspa?reset=true&amp;amp;&amp;amp;query=maemo&amp;amp;summary=true&amp;amp;description=true&amp;amp;body=true&amp;amp;environment=true&amp;amp;pid=10510 View bug list]&lt;br /&gt;
&lt;br /&gt;
=[[Image:Helmet.png]] Code=&lt;br /&gt;
* Qt 4.5 (Diablo)&lt;br /&gt;
** http://gitorious.org/+qt-maemo-developers/qt/qt-maemo&lt;br /&gt;
* Qt 4.5 (Fremantle)&lt;br /&gt;
** http://gitorious.org/+qt-maemo-developers/qt/qt-maemo&lt;br /&gt;
* Qt 4.6 (Fremantle)&lt;br /&gt;
** http://qt.gitorious.org/qt/x11-maemo&lt;br /&gt;
&lt;br /&gt;
=[[Image:Preferences-desktop-user.png]] Get Help=&lt;br /&gt;
* Forums&lt;br /&gt;
** [http://discussion.forum.nokia.com/forum/forumdisplay.php?f=220 Qt for Maemo Forum Nokia Discussion board]&lt;br /&gt;
** [https://garage.maemo.org/forum/?group_id=424 Old qt4.garage.maemo.org forum]&lt;br /&gt;
* IRC&lt;br /&gt;
** Official Qt for Maemo IRC Channel&lt;br /&gt;
** Click [http://webchat.freenode.net/?channels=qt-maemo here] to join the #qt-maemo channel in frenode (irc.freenode.net).&lt;br /&gt;
&lt;br /&gt;
* Mailing list&lt;br /&gt;
** [https://garage.maemo.org/mailman/listinfo/qt4-devel Click here to Subscribe to the Qt community ML]&lt;br /&gt;
&lt;br /&gt;
[[Category:Qt]]&lt;/div&gt;</summary>
		<author><name>192.100.124.219</name></author>
	</entry>
	<entry>
		<id>https://maemo.octonezd.me/index.php?title=Qt4_Hildon_Legacy&amp;diff=34233</id>
		<title>Qt4 Hildon Legacy</title>
		<link rel="alternate" type="text/html" href="https://maemo.octonezd.me/index.php?title=Qt4_Hildon_Legacy&amp;diff=34233"/>
		<updated>2010-03-23T17:30:53Z</updated>

		<summary type="html">&lt;p&gt;192.100.124.219: /* Fremantle */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= [[Image:Intro.png]] Introduction =&lt;br /&gt;
&lt;br /&gt;
To develop with [[Qt-Maemo|Qt for Maemo]], a working SDK installation is required. There are [[Documentation/Maemo_5_Final_SDK_Installation|instructions on how to install the Maemo SDK]], and you can [http://www.youtube.com/watch?v=c8myh_iBy8k watch the Maemo SDK in action]. Alternatively, you may want to try [[MADDE]], a cross-platform Maemo development tool, available as a technology preview.&lt;br /&gt;
&lt;br /&gt;
== Maemo platform ==&lt;br /&gt;
&lt;br /&gt;
The Maemo platform is the software stack for Nokia Internet Tablets, which includes the Maemo operating system and the Maemo SDK. The Maemo Platform is mostly based on open source code, and has been developed by the Maemo Software department within Nokia in collaboration with many open source projects such as the Linux kernel, Debian, [[Hildon]] and GNOME.&lt;br /&gt;
&lt;br /&gt;
Read more about [http://maemo.org/intro/platform/ the Maemo platform] and a [http://maemo.org/intro/developer_overview/ developer overview].&lt;br /&gt;
&lt;br /&gt;
= [[Image:Rocket.png]] Getting started =&lt;br /&gt;
&lt;br /&gt;
To start to develop with Maemo Qt, we need to [[Documentation/Maemo_5_Final_SDK_Installation|install the Maemo SDK]].&lt;br /&gt;
&lt;br /&gt;
== Installing Qt packages in Scratchbox ==&lt;br /&gt;
Maemo Qt developers offers a set of Qt packages for [[Open development/Maemo roadmap/Fremantle|Fremantle]] (Maemo5 - OS2009) and Diablo (Maemo4.1 - OS2008).&lt;br /&gt;
&lt;br /&gt;
== Fremantle ==&lt;br /&gt;
You do not need to add any extra repository for Fremantle since Qt packages are already available in the SDK. You can install Qt with the command:&lt;br /&gt;
 fakeroot apt-get install libqt4-dev&lt;br /&gt;
&lt;br /&gt;
=== Using Qt 4.6 in Fremantle ===&lt;br /&gt;
Since PR 1.2 release Qt 4.6 is available in public Fremantle repository&lt;br /&gt;
To upgrade older scratchbox targets to use the latest packages execute the following commands:&lt;br /&gt;
 fakeroot apt-get update&lt;br /&gt;
 fakeroot apt-get dist-upgrade&lt;br /&gt;
&lt;br /&gt;
== Diablo ==&lt;br /&gt;
Diablo Qt packages are into the official [[Extras]] repository. In order to start to develop with those packages you need to [[Extras#Diablo|add extras repository to your repository list]], and then install Qt packages in the terminal:&lt;br /&gt;
 apt-get install libqt4-dev&lt;br /&gt;
&lt;br /&gt;
==How to compile a Qt application in scratchbox==&lt;br /&gt;
Qt applications are usually built using QMake. Project like KDE instead replaced&lt;br /&gt;
QMake with CMake for more flexibility.&lt;br /&gt;
 &lt;br /&gt;
=== QMake ===&lt;br /&gt;
[http://doc.trolltech.com/4.5/qmake-manual.html QMake] is a tool from Trolltech that helps simplify the build process for development project across different platforms&lt;br /&gt;
&lt;br /&gt;
You can build your Maemo Qt application in 3 simple steps:&lt;br /&gt;
# Generating project file (Required if there is no .pro file into the app source tree)&amp;lt;br/&amp;gt;&amp;lt;pre&amp;gt;qmake -project&amp;lt;/pre&amp;gt;&lt;br /&gt;
# Generating Makefile from the QMake project file:&amp;lt;br/&amp;gt;&amp;lt;pre&amp;gt;qmake file.pro&amp;lt;/pre&amp;gt;&lt;br /&gt;
# &amp;lt;pre&amp;gt;make&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== CMake ===&lt;br /&gt;
&lt;br /&gt;
Because of some issue with [http://www.cmake.org/ CMake], [[Open development/Maemo roadmap/Diablo|Diablo]] CMake packages are currently useless since CMake segfaults (on the device at least). This issue has been solved in [[Open development/Maemo roadmap/Fremantle|Fremantle]] and CMake packages that comes from Fremantle [[SDK]] work nicely.&lt;br /&gt;
&lt;br /&gt;
CMake projects usually have a &amp;lt;code&amp;gt;CMakeLists.txt&amp;lt;/code&amp;gt; file instead of: &lt;br /&gt;
# .pro file used by QMake projects&lt;br /&gt;
# Makefile.am used by Autotools projects (standard in Unix/Linux)&lt;br /&gt;
&lt;br /&gt;
Using CMake to build the project is extremely easy. In the directory containing CMakeLists.txt, supply the following two commands, where path is the path to the source code.&lt;br /&gt;
 cmake path&lt;br /&gt;
 make&lt;br /&gt;
&lt;br /&gt;
Note: CMake is not installed by default in [[:Category:Scratchbox|scratchbox]]. You can install it with the command:&lt;br /&gt;
 fakeroot apt-get install cmake&lt;br /&gt;
&lt;br /&gt;
== Running a Qt application in: ==&lt;br /&gt;
=== Scratchbox ===&lt;br /&gt;
Diablo and Fremantle Qt applications can run into the device as into scratchbox.&lt;br /&gt;
&lt;br /&gt;
First step to run a Qt application is starting the SDK UI:&lt;br /&gt;
 &lt;br /&gt;
# Run Xephyr. It is able to run a [http://en.wikipedia.org/wiki/X_Window_System  X Server] inside another X Server.&amp;lt;br/&amp;gt;&amp;lt;pre&amp;gt;Xephyr :2 -host-cursor -screen 800x480x16 -dpi 96 -ac -kb&amp;lt;/pre&amp;gt;&lt;br /&gt;
# Set display for application that runs inside scratchbox:&amp;lt;br/&amp;gt;&amp;lt;pre&amp;gt;export DISPLAY=:2&amp;lt;/pre&amp;gt;&lt;br /&gt;
# You can now run the SDK UI. A Diablo or Fremantle desktop will appear in your Xephyr window:&amp;lt;br/&amp;gt;&amp;lt;pre&amp;gt;af-sb-init.sh start&amp;lt;/pre&amp;gt;&lt;br /&gt;
# Now you are ready to run any Maemo or Maemo Qt application with:&amp;lt;pre&amp;gt;run-standalone.sh ./qtapps&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Note: run-standalone.sh sets some variable needed by Qt to use the Hildon style.&lt;br /&gt;
&lt;br /&gt;
=== Device ===&lt;br /&gt;
Maemo Qt applications are Linux binaries. They can run on the device without any problem if you copy them to &amp;quot;partitions&amp;quot; mounted with exec flag. (for example, /home/user or /opt in Fremantle).&lt;br /&gt;
&lt;br /&gt;
Fore example, if we want to run quassel (Qt IRC Client) we have to launch it with:&lt;br /&gt;
 su -c ./quassel user&lt;br /&gt;
&lt;br /&gt;
= [[Image:Hammer.png]] Porting Qt applications to Maemo =&lt;br /&gt;
&lt;br /&gt;
Porting a Qt desktop application to Maemo requires very little effort. This is because the Maemo Qt libraries will take care of giving the Hildon look &amp;amp; Feel and enabling the virtual input methods for your application.&lt;br /&gt;
&lt;br /&gt;
==Overriding the Qt Maemo changes==&lt;br /&gt;
&lt;br /&gt;
===Maemo Style===&lt;br /&gt;
Hildon Style is the default Qt application style. Other style available are:&lt;br /&gt;
* [http://doc.trolltech.com/4.4/gallery-cleanlooks.html QCleanLooks]&lt;br /&gt;
* [http://doc.trolltech.com/4.4/gallery-windows.html Windows]&lt;br /&gt;
* [http://doc.trolltech.com/4.4/gallery-plastique.html Plastique]&lt;br /&gt;
&lt;br /&gt;
Qt application can use other Qt styles;&lt;br /&gt;
* Running your application with the style flag:&lt;br /&gt;
 ./qt-test-application -style windows&lt;br /&gt;
&lt;br /&gt;
* Using [http://doc.trolltech.com/4.4/qapplication.html#setStyle QApplication::setStyle( QStyle * style )]&lt;br /&gt;
&lt;br /&gt;
* If you want to change the style of a widget:[http://doc.trolltech.com/4.4/qwidget.html#setStyle QWidget::setStyle( QStyle * style )]&lt;br /&gt;
&lt;br /&gt;
===Showing the status bar===&lt;br /&gt;
&lt;br /&gt;
Hildon applications don&#039;t have a status bar. Qt for Maemo hides the status bar by default.&lt;br /&gt;
&lt;br /&gt;
You can show it again by using method &#039;&#039;statusBar()-&amp;gt;show()&#039;&#039; in your class derived from QMainWindow.&lt;br /&gt;
&lt;br /&gt;
===Using the Kinetic Finger Scrolling (cf Gtk&#039;s PannableArea)===&lt;br /&gt;
See [[Qt/Finger Scrolling|Finger Scrolling]]&lt;br /&gt;
&lt;br /&gt;
==Adding Maemo changes to a Qt Application==&lt;br /&gt;
&lt;br /&gt;
Some methods of Qt for Maemo are not available in the &amp;quot;standard&amp;quot; Qt libs, so a Qt application with specific Maemo Qt code can&#039;t be built outside the Maemo SDK. To avoid this issue, the developer can use the preprocessor directives, for example:&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;b&amp;gt;Qt 4.5 (Diablo and Fremantle)&amp;lt;/b&amp;gt;&lt;br /&gt;
 #ifdef Q_WS_HILDON&lt;br /&gt;
    //Specific hildon/Maemo5 code here &lt;br /&gt;
 #endif&lt;br /&gt;
&lt;br /&gt;
Qt project files can load hildon files using: (check [http://doc.trolltech.com/4.5/qmake-function-reference.html qmake ref guide] for more info about qmake options)&lt;br /&gt;
 contains(QT_CONFIG, hildon): {&lt;br /&gt;
    message(&amp;quot;Hello Hildon&amp;quot;)&lt;br /&gt;
    SOURCE += hildon.cpp&lt;br /&gt;
    HEADER += hildon.h&lt;br /&gt;
    FORMS   += hildon.ui&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;b&amp;gt;Qt 4.6 (Fremantle)&amp;lt;/b&amp;gt;&lt;br /&gt;
Q_WS_HILDON has been replaced by Q_WS_MAEMO_5 in Qt 4.6 and Qt 4.5 &amp;quot;contains(QT_CONFIG, hildon):{}&amp;quot; does same job of Qt 4.6 &amp;quot;maemo5 {}&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
 #ifdef Q_WS_MAEMO_5&lt;br /&gt;
    //specific hildon/maemo5 code here&lt;br /&gt;
 #endif&lt;br /&gt;
&lt;br /&gt;
 maemo5 {&lt;br /&gt;
    message(&amp;quot;Hello Hildon&amp;quot;)&lt;br /&gt;
    SOURCE += hildon.cpp&lt;br /&gt;
    HEADER += hildon.h&lt;br /&gt;
    FORMS   += hildon.ui&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
== Home widget interaction ==&lt;br /&gt;
{{main|Qt4 and Hildon home widget interaction}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Limitations==&lt;br /&gt;
&lt;br /&gt;
Currently Qt Maemo lacks full support for Hildon widgets introduced in Maemo 5. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;At the moment, creating a Qt application that follows Maemo 5 UI Style requires using custom Qt widgets, coded within the application itself&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
There is work ongoing to provide Qt Hildon widgets for Maemo 5, see [http://wiki.maemo.org/Qt4_Hildon/Qt_Hildon_Widgets Qt Hildon Widgets]&lt;br /&gt;
&lt;br /&gt;
To get the benefits of the ongoing Maemo 5 hildon integration work in Qt, you must get the latest Qt source code and compile it yourself. See [http://wiki.maemo.org/Qt4_Hildon#Building_Qt_from_GIT_rep Building Qt from GIT repository].&lt;br /&gt;
&lt;br /&gt;
= [[Image:Bug.png]] Debugging a Qt application =&lt;br /&gt;
&lt;br /&gt;
{{main|Documentation/Maemo_5_Developer_Guide/Kernel_and_Debugging_Guide/Maemo_Debugging_Guide}}&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Note&#039;&#039;&#039;: Fremantle Gdb 6.8 crashes in x86 and gives messed up backtraces on the device. Using gdb 7.0 is recommended. You can get gdb 7.0 sources from http://ftp.de.debian.org/debian/pool/main/g/gdb/gdb_7.0.orig.tar.gz, compile it (./configure &amp;amp;&amp;amp; make) inside X86 and armel scratchbox targets.&lt;br /&gt;
[http://chaos.troll.no/~harald/gdb7/ Here you can find GDB7 for fremantle x86 and armel]. &lt;br /&gt;
 /usr/local/bin/gdb7 ./myapp&lt;br /&gt;
&lt;br /&gt;
= [[Image:chart.png]] Profiling a Qt application =&lt;br /&gt;
&lt;br /&gt;
== OProfile ==&lt;br /&gt;
&lt;br /&gt;
{{main|Documentation/devtools/maemo5/oprofile}}&lt;br /&gt;
&lt;br /&gt;
== Valgrind ==&lt;br /&gt;
&lt;br /&gt;
{{main|Documentation/devtools/maemo5/valgrind}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= [[Image:package.png]] Packaging a Qt application for Maemo =&lt;br /&gt;
&lt;br /&gt;
{{main|Packaging a Qt application}}&lt;br /&gt;
&lt;br /&gt;
= [[Image:Helmet.png]] Maemo Qt API Reference =&lt;br /&gt;
&lt;br /&gt;
Maemo Qt is based on Qt for X11. It shares same APIs avoiding API breaks. In this way every Qt application that runs in other platforms (Windows, Mac OS X, Linux, S60, etc.) can run in Maemo devices as well. &lt;br /&gt;
To Develop a Qt application you can use the [http://doc.trolltech.com/4.5/index.html Official Qt 4.5 API documentation] and the list below to see what are the Maemo changes.&lt;br /&gt;
&lt;br /&gt;
==Diablo==&lt;br /&gt;
  &#039;&#039;&#039;QString QDesktopServices::storageLocation(StandardLocation type)&#039;&#039;&#039; returns specific Maemo locations for these types:&lt;br /&gt;
  - DesktopLocation:   QDir::homePath() + QLatin1String(&amp;quot;/MyDocs&amp;quot;),            instead of QDir::homePath() + QLatin1String(&amp;quot;/Desktop&amp;quot;)&lt;br /&gt;
  - DocumentsLocation: QDir::homePath() + QLatin1String(&amp;quot;/MyDocs/.documents&amp;quot;), instead of QDir::homePath() + QLatin1String(&amp;quot;/MyDocs/.documents&amp;quot;)&lt;br /&gt;
  - PicturesLocation:  QDir::homePath() + QLatin1String(&amp;quot;/MyDocs/.images&amp;quot;),    instead of QDir::homePath() + QLatin1String(&amp;quot;/Pictures&amp;quot;)&lt;br /&gt;
  - MusicLocation:     QDir::homePath() + QLatin1String(&amp;quot;/MyDocs/.sounds&amp;quot;),    instead of QDir::homePath() + QLatin1String(&amp;quot;/Music&amp;quot;)&lt;br /&gt;
  - MoviesLocation:    QDir::homePath() + QLatin1String(&amp;quot;/MyDocs/.videos&amp;quot;),    instead of QDir::homePath() + QLatin1String(&amp;quot;/MyDocs/.videos&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
  &#039;&#039;&#039;QTabletEvents&#039;&#039;&#039; are able to get the pressure value from the touchscreen.&lt;br /&gt;
   - The eventdeviceType is for the touchscreen is set to QTabletEvent::Stylus.&lt;br /&gt;
   - QTabletEvents won&#039;t be used anymore in Fremantle&lt;br /&gt;
  &lt;br /&gt;
  &#039;&#039;&#039;Finger poke&#039;&#039;&#039; is emulated in scratchbox by the Middle Mouse button (NOTE: There is no Fullscreen VKB in scratchbox)&lt;br /&gt;
 &lt;br /&gt;
  &#039;&#039;&#039;QInputEvents&#039;&#039;&#039; don&#039;t move the cursor. &lt;br /&gt;
  It&#039;s mandatory to get working the HIM moving the cursor via QInputMethodEvents.&lt;br /&gt;
  Why is it mandatory?  &lt;br /&gt;
  Because if the user select text with the finger from the right to the left, we are able to remove the highlighted text, but the&lt;br /&gt;
  cursor will be moved on the last char instead to stay on the first one.&lt;br /&gt;
   &lt;br /&gt;
  To do that some changes has been added to some widget function like: &#039;&#039;widget::inputMethodEvent(QInputMethodEvent *e)&#039;&#039;.&lt;br /&gt;
  Modifing that function in some custom widgets may be necessary.&lt;br /&gt;
  Don&#039;t reimplementing that function will break some fullscreen virtual keyboard features.&lt;br /&gt;
  &lt;br /&gt;
  &#039;&#039;&#039;Hardcoded Keys:&#039;&#039;&#039;&lt;br /&gt;
  In the QMainWindow:&lt;br /&gt;
  - F6 - Toggle fullscreen the application&lt;br /&gt;
  - F4 - Shows/Hides the application context menu&lt;br /&gt;
  - Zoom in  - is a standard [http://doc.trolltech.com/4.4/qkeysequence.html#StandardKey-enum key sequence] QKeySequence::ZoomIn&lt;br /&gt;
  - Zoom out - is a standard [http://doc.trolltech.com/4.4/qkeysequence.html#StandardKey-enum key sequence] QKeySequence::ZoomOut&lt;br /&gt;
&lt;br /&gt;
  &#039;&#039;&#039;Input Method:&#039;&#039;&#039;&lt;br /&gt;
  Maemo Qt uses the Hildon IM as default Input method.&lt;br /&gt;
  Each kind of widget can set the IM mode. This allows the input method to focus on the type of input that the application is expecting.&lt;br /&gt;
  Eg: spinboxes can receive only numeric characters (1-9).&lt;br /&gt;
  &lt;br /&gt;
  NOTE: Qt widgets like QTextEdit, QLineEdit... set the right input method mode automatically. &lt;br /&gt;
  &lt;br /&gt;
  A developer can change it by using:&lt;br /&gt;
    void QInputContext::setInputMode(int mode);&lt;br /&gt;
  It will update immediately the Hildon Input method to use the selected IM mode.  &lt;br /&gt;
  &lt;br /&gt;
  HIC Modes:&lt;br /&gt;
    HILDON_GTK_INPUT_MODE_ALPHA 	alphabetical characters and whitespace&lt;br /&gt;
    HILDON_GTK_INPUT_MODE_NUMERIC 	numbers 0-9 and the &#039;-&#039; character&lt;br /&gt;
    HILDON_GTK_INPUT_MODE_SPECIAL 	special characters&lt;br /&gt;
    HILDON_GTK_INPUT_MODE_HEXA 	hexadecimal characters; numbers 0-9, characters a-f, and A-F&lt;br /&gt;
    HILDON_GTK_INPUT_MODE_TELE 	telephone numbers; numbers 0-9, whitespace, and the characters &amp;quot;pwPW/().-+*#?,&amp;quot;&lt;br /&gt;
    HILDON_GTK_INPUT_MODE_FULL 	unrestricted entry mode, combination of the alpha, numeric and special modes.&lt;br /&gt;
    HILDON_GTK_INPUT_MODE_MULTILINE 	the client contains multiple lines of text or accepts linebreaks in the input.&lt;br /&gt;
    HILDON_GTK_INPUT_MODE_INVISIBLE 	do not echo or save the input in the IM when entering sensitive information such as passwords.&lt;br /&gt;
    HILDON_GTK_INPUT_MODE_AUTOCAP 	automatically capitalize the first letter at the start of a sentence.&lt;br /&gt;
    HILDON_GTK_INPUT_MODE_DICTIONARY 	enable predictive dictionaries and learning based on the input.&lt;br /&gt;
   &lt;br /&gt;
  Example:&lt;br /&gt;
    For a password field we need to set a specific IM mode:&lt;br /&gt;
    int mode = HILDON_GTK_INPUT_MODE_FULL | HILDON_GTK_INPUT_MODE_INVISIBLE&lt;br /&gt;
    QInputContext *qic = widget-&amp;gt;inputContext();&lt;br /&gt;
    qic-&amp;gt;setInputMode(mode);&lt;br /&gt;
  &lt;br /&gt;
  If you are developing a Custom widget able to receive input text, you can instruct your widget to use the right IM Mode just returning&lt;br /&gt;
  the mode.&lt;br /&gt;
  &lt;br /&gt;
  - How does it work?&lt;br /&gt;
  The Hildon IM sends a XMessage to pop up the &amp;quot;Virtual Keyboard&amp;quot; (or better the Main HIM UI) when an input widget receive the focus.&lt;br /&gt;
  The IM before to raise the VKB, makes an inputMethodQuery to the widget retrieving the IM mode.&lt;br /&gt;
  If the developer of the custom widget doesn&#039;t set the mode property, the IM will use HILDON_GTK_INPUT_MODE_FULL (the default mode) for that widget.&lt;br /&gt;
  &lt;br /&gt;
  Setting the ImMode is quite easy. Check the code below for more understanding.&lt;br /&gt;
  &lt;br /&gt;
  #ifdef Q_WS_HILDON&lt;br /&gt;
  #include &amp;lt;QInputContext&amp;gt;&lt;br /&gt;
  #endif&lt;br /&gt;
  &lt;br /&gt;
  QVariant QAbstractSpinBox::inputMethodQuery(Qt::InputMethodQuery query) const&lt;br /&gt;
  {    &lt;br /&gt;
    Q_D(const QAbstractSpinBox);&lt;br /&gt;
    switch(query) {&lt;br /&gt;
        case Qt::ImMode:{&lt;br /&gt;
            int mode = HILDON_GTK_INPUT_MODE_NUMERIC;&lt;br /&gt;
            return QVariant(mode);&lt;br /&gt;
        }&lt;br /&gt;
        default:&lt;br /&gt;
            return d-&amp;gt;edit-&amp;gt;inputMethodQuery(query);&lt;br /&gt;
    }&lt;br /&gt;
  }&lt;br /&gt;
&lt;br /&gt;
=FREMANTLE (Qt 4.5)=&lt;br /&gt;
&lt;br /&gt;
==Kinetic scrolling==&lt;br /&gt;
Kinetic scrolling is enabled by default in QListWidgets and is supported by any Qt widget that inherits QScrollArea.&lt;br /&gt;
Any item view widgets (QTreeView/QTreeWidget, QListView, QTableView/QTableWidget...) can use fingerscroll if it has &amp;quot;FingerScrollable&amp;quot; dynamic property set to true.&lt;br /&gt;
Eg:&lt;br /&gt;
  QTableWidget *table = new QTableWidget(this);&lt;br /&gt;
  table-&amp;gt;setProperty(&amp;quot;FingerScrollable&amp;quot;, true); &lt;br /&gt;
&lt;br /&gt;
NOTE: Available in Qt &amp;gt; 4.5.3-xxxxx-maemo4&lt;br /&gt;
&lt;br /&gt;
==Hildon-Desktop widgets==&lt;br /&gt;
&lt;br /&gt;
{{main|/Qt Hildon Widgets}}&lt;br /&gt;
&lt;br /&gt;
They are supported by Qt. An example (qt-example-hildondesktopwidget) is available in extras-devel.&lt;br /&gt;
&lt;br /&gt;
==Hildon menus==&lt;br /&gt;
Maemo5 menus are created using QActions available in menu bar. &lt;br /&gt;
Hidden, disabled, separators and widget actions won&#039;t shown. (Same in Qt 4.6)&lt;br /&gt;
&lt;br /&gt;
* qt-4.5.3-xxxx-maemo4 packages - needs QActions in a &amp;quot;fremantle&amp;quot; menu.&lt;br /&gt;
* Pkgs &amp;gt; qt-4.5.3-xxxx-maemo4 shows Maemo5 menus automatically&lt;br /&gt;
&lt;br /&gt;
Note: Maemo5 policy doesn&#039;t allow application to have more than 10 items.&lt;br /&gt;
&lt;br /&gt;
==Stackable windows==&lt;br /&gt;
http://maemomm.garage.maemo.org/docs/tutorial/figures/stackable-window.png&lt;br /&gt;
Are supported by Qt. To create them you need to create a MainWindow child of another Main window.&lt;br /&gt;
&lt;br /&gt;
 QMainWindow *fistStackableWindow = new QMainWindow;&lt;br /&gt;
 QMainWindow *secondStackableWindow = new QMainWindow(fistStackableWindow);&lt;br /&gt;
// you need the below line to see the back button on the top right hand corner of the stacked window instead of a cross&lt;br /&gt;
 secondStackableWindow-&amp;gt;setAttribute(Qt::WA_Maemo5StackedWindow);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Note: this is not entirely accurate, see&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
http://qt.nokia.com/doc/qt-maemo-4.6/maemo5-stackedwindows.html&lt;br /&gt;
&lt;br /&gt;
==Raise a Qt application in background==&lt;br /&gt;
QWidget::activateWindow() does the job.&lt;br /&gt;
&lt;br /&gt;
Implemented in Qt packages &amp;gt;= qt-4.5.3-xxxx-maemo6&lt;br /&gt;
== How to minimize a Qt application? ==&lt;br /&gt;
 QDBusConnection c = QDBusConnection::sessionBus();&lt;br /&gt;
 QDBusMessage m = QDBusMessage::createSignal(&amp;quot;/&amp;quot;,&amp;quot;com.nokia.hildon_desktop&amp;quot;,&amp;quot;exit_app_view&amp;quot;);&lt;br /&gt;
 c.send(m);&lt;br /&gt;
&lt;br /&gt;
==Portrait mode and listening for orientation changes==&lt;br /&gt;
If you want to run your application in portrait mode then you can add these lines to your application. The code goes in your main widget constructor.&lt;br /&gt;
&lt;br /&gt;
 #ifdef Q_WS_HILDON&lt;br /&gt;
 //Includes for portrait mode support&lt;br /&gt;
 # include &amp;lt;X11/Xlib.h&amp;gt;&lt;br /&gt;
 # include &amp;lt;X11/Xatom.h&amp;gt;&lt;br /&gt;
 # include &amp;lt;QtGui/QX11Info&amp;gt;&lt;br /&gt;
 #endif&lt;br /&gt;
 &lt;br /&gt;
 #ifndef Q_WS_HILDON&lt;br /&gt;
 int value = 1;&lt;br /&gt;
 Atom portraitSupport = XInternAtom(QX11Info::display(), &amp;quot;_HILDON_PORTRAIT_MODE_SUPPORT&amp;quot;, false);&lt;br /&gt;
 Atom portraitRequest = XInternAtom(QX11Info::display(), &amp;quot;_HILDON_PORTRAIT_MODE_REQUEST&amp;quot;, false);&lt;br /&gt;
 XChangeProperty(QX11Info::display(), winId(), portraitSupport, XA_CARDINAL, 32, PropModeReplace, (uchar *)&amp;amp;value, 1);&lt;br /&gt;
 XChangeProperty(QX11Info::display(), winId(), portraitRequest, XA_CARDINAL, 32, PropModeReplace, (uchar *)&amp;amp;value, 1);&lt;br /&gt;
 #endif&lt;br /&gt;
&lt;br /&gt;
If you want to listen for orientation changes and then switch the view to landscape or potrait mode automatically than take a look at [[Maemo_Qt_Extra_Libraries]] for more information.&lt;br /&gt;
&lt;br /&gt;
== QDockWidgets ==&lt;br /&gt;
QDockWidgets are not finger friendly widgets. They should not be used in Maemo.&lt;br /&gt;
In case you are porting an application to Maemo maybe you want to do&lt;br /&gt;
few changes as possible into your UI. Then you could use QDockWidget::setFeatures(QDockWidget::NoDockWidgetFeatures); to hide float and close button and lock the position of the dock widget.&lt;br /&gt;
&lt;br /&gt;
== QPrint* and QSystemTray support missing ==&lt;br /&gt;
 Printing (QPrint*) and System tray support is missing in current&lt;br /&gt;
 Qt 4.5.3-xxxx-maemo4 packages.&lt;br /&gt;
 Since incompatibility with KDE and other Qt application, they will be enabled again in next Qt 4.5.3 packages.&lt;br /&gt;
&lt;br /&gt;
== QSplashScreen not fully compatible with Hildon-Desktop ==&lt;br /&gt;
 QSplashScreen&#039;s window type is not supported in Fremantle. The splash screen is&lt;br /&gt;
 shown in full screen and the image is repeated to fill the splash screen&#039;s&lt;br /&gt;
 window. When splash screen is closed normal window closing animation is shown&lt;br /&gt;
 before showing the actual application window. For these reasons developers are&lt;br /&gt;
 disencouraged to use splash screens in their applications.&lt;br /&gt;
&lt;br /&gt;
As a workaround for the problem you can set a window property that tells HD to skip the transitions:&lt;br /&gt;
&lt;br /&gt;
 static void set_no_transitions (Display *dpy, Window w)&lt;br /&gt;
 {&lt;br /&gt;
 Atom no_trans;&lt;br /&gt;
 int one = 1;&lt;br /&gt;
 no_trans = XInternAtom (dpy, &amp;quot;_HILDON_WM_ACTION_NO_TRANSITIONS&amp;quot;, False);&lt;br /&gt;
 XChangeProperty (dpy, w, no_trans,&lt;br /&gt;
                  XA_CARDINAL, 32, PropModeReplace,&lt;br /&gt;
                  (unsigned char *)&amp;amp;one, 1);&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
== QToolBar limitations ==&lt;br /&gt;
Adding a QToolBar to a QMainWindow will always result in a toolbar at the&lt;br /&gt;
bottom of the screen. (Justification/Workarounds?)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=FREMANTLE (Qt 4.6)=&lt;br /&gt;
Here an example that shows several maemo5 Qt widgets in Qt 4.6.&lt;br /&gt;
&lt;br /&gt;
http://qt.nokia.com/doc/qt-maemo-4.6/examples-maemo5.html&lt;br /&gt;
&lt;br /&gt;
http://qt.gitorious.org/+qt-developers/qt/x11-maemo/trees/986340bb5e4b69ceb0a959c2a067a1ed5e504d50/examples/maemo5/widgets&lt;br /&gt;
&lt;br /&gt;
==Finger Scrolling==&lt;br /&gt;
&lt;br /&gt;
Kinetic scrolling is present by default in most scrolling widgets, eg. &amp;lt;code&amp;gt;QTextBrowser&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;QTableView&amp;lt;/code&amp;gt;. If you want to tweak the kinetic scrolling parameters like inertia and acceleration then you can instaniate a &amp;lt;code&amp;gt;QAbstractKineticScroller&amp;lt;/code&amp;gt; object like this:&lt;br /&gt;
&lt;br /&gt;
 QAbstractKineticScroller ks =  &lt;br /&gt;
   scrollArea-&amp;gt;property(&amp;quot;kineticScroller&amp;quot;).value&amp;lt;QAbstractKineticScroller *&amp;gt;();&lt;br /&gt;
&lt;br /&gt;
where scrollArea could be &amp;lt;code&amp;gt;QScrollArea&amp;lt;/code&amp;gt; with some widgets added to it, or you could use implementations like &amp;lt;code&amp;gt;QTextBrowser&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
You can tweak scrolling like this:&lt;br /&gt;
 ks-&amp;gt;setDragInertia( (double)value / 100.0)&lt;br /&gt;
 ks-&amp;gt;setMode(QAbstractKineticScroller::PushMode)&lt;br /&gt;
 &lt;br /&gt;
etc., refer to the examples here for details: http://qt.gitorious.org/+qt-developers/qt/x11-maemo/blobs/4.6-fremantle/examples/maemo5/kineticscroller/main.cpp&lt;br /&gt;
&lt;br /&gt;
==QSplashScreen==&lt;br /&gt;
Should be fixed in Qt 4.6. SplashWindow type is not supported by Fremantle WM. Qt 4.6 display splash screen using popup window type.&lt;br /&gt;
&lt;br /&gt;
==Orientation==&lt;br /&gt;
[http://qt.nokia.com/doc/qt-maemo-4.6/maemo5-rotation.html Official documentation]&lt;br /&gt;
&lt;br /&gt;
==Maemo5 Readme file==&lt;br /&gt;
There is a [http://qt.gitorious.org/+qt-developers/qt/x11-maemo/blobs/4.6-fremantle/README.maemo5 README file in Qt 4.6 source tree].&lt;br /&gt;
&lt;br /&gt;
= [[Image:Helmet.png]] Contributing to the Maemo Qt Project =&lt;br /&gt;
&lt;br /&gt;
Maemo Qt is a community project. Contributing to the forum, sending us patches, give us feedbacks, tracking bugs are all activities that help us to improve the quality of our work.&lt;br /&gt;
&lt;br /&gt;
Here there is a list of things that every person interested in helping us should read.&lt;br /&gt;
&lt;br /&gt;
==Stay updated==&lt;br /&gt;
Any Maemo Qt developer should be updated and should participate to the discussions, for that he must join the Mailing list.&lt;br /&gt;
BTW the mailing list is not for Maemo Qt Developers but it&#039;s open to Maemo Qt application developers too.&lt;br /&gt;
&lt;br /&gt;
== Introduction to Git ==&lt;br /&gt;
If you are a git newbie you maybe find interesting these links:&lt;br /&gt;
* http://www.sourcemage.org/Git_Guide&lt;br /&gt;
* http://www.gitcasts.com/&lt;br /&gt;
* http://www.gnome.org/~newren/eg/git-for-svn-users.html&lt;br /&gt;
* Using the git protocol through a HTTP CONNECT proxy: http://www.emilsit.net/blog/archives/how-to-use-the-git-protocol-through-a-http-connect-proxy/&lt;br /&gt;
&lt;br /&gt;
==Understanding the structure of our Git repository==&lt;br /&gt;
&lt;br /&gt;
{{main|Qt Maemo Git Process}}&lt;br /&gt;
&lt;br /&gt;
== Preparation ==&lt;br /&gt;
&lt;br /&gt;
Make sure each scratchbox target has&lt;br /&gt;
&lt;br /&gt;
  fakeroot apt-get build-dep libqt4-gui&lt;br /&gt;
&lt;br /&gt;
(you may need to apt-get install libgl-dev too as it&#039;s not in the Build-Depends: yet)&lt;br /&gt;
&lt;br /&gt;
==Building Qt from Git repository==&lt;br /&gt;
&lt;br /&gt;
# Clone the repository:&amp;lt;br/&amp;gt;&amp;lt;pre&amp;gt;git clone git://gitorious.org/+qt-maemo-developers/qt/qt-maemo.git&amp;lt;/pre&amp;gt;&amp;lt;br/&amp;gt;or if you are a member of our team:&amp;lt;br/&amp;gt;&amp;lt;pre&amp;gt;git clone git@gitorious.org:+qt-maemo-developers/qt/qt-maemo.git&amp;lt;/pre&amp;gt;&lt;br /&gt;
# Change dir:&amp;lt;br/&amp;gt;&amp;lt;pre&amp;gt;cd qt-maemo&amp;lt;/pre&amp;gt;&lt;br /&gt;
# Copy the remote 4.5 branch in your working copy:&amp;lt;br/&amp;gt;&amp;lt;pre&amp;gt;git checkout -b 4.5 origin/4.5&amp;lt;/pre&amp;gt;&lt;br /&gt;
# Checkout ONE of these branches:&amp;lt;br/&amp;gt;&amp;lt;pre&amp;gt;git checkout -b qt-diablo origin/qt-diablo&amp;lt;/pre&amp;gt;&amp;lt;br/&amp;gt;&amp;lt;pre&amp;gt;git checkout -b qt-n900+w34 origin/qt-n900+w34&amp;lt;/pre&amp;gt;&amp;lt;br/&amp;gt;&amp;lt;pre&amp;gt;git checkout -b qt-mer origin/qt-mer&amp;lt;/pre&amp;gt;&lt;br /&gt;
# Build the packages:&amp;lt;br/&amp;gt;&amp;lt;pre&amp;gt;dpkg-buildpackage -rfakeroot -b&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Merging branches changes in the mainline [OLD]==&lt;br /&gt;
&lt;br /&gt;
Before to merge your changes in the mainline, the code must be full working, cleaned and tested. A review from another developer is also needed in order to reduce the possibility to add errors.&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==QML==&lt;br /&gt;
[[QML]] is a GUI interface building scripting language for Qt. Check out the [[QML-EnhancedCalcExample | QML calculator example]].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=[[Image:Help-contents.png]] F.A.Q.=&lt;br /&gt;
&lt;br /&gt;
; &#039;&#039;I&#039;m trying to compile a Qt application for ARMEL, but I got the error below. What&#039;s wrong?&#039;&#039;&lt;br /&gt;
: &amp;lt;pre&amp;gt;/targets/FREMANTLE_X86/usr/include/qt4/QtCore/qatomic_i386.h:127: error: impossible constraint in &#039;asm&#039;&amp;lt;/pre&amp;gt;&lt;br /&gt;
:You are using x86 include files, then you have to update your Makefile. Running &amp;lt;code&amp;gt;qmake&amp;lt;/code&amp;gt; before &amp;lt;code&amp;gt;make&amp;lt;/code&amp;gt; will be solve this issue.&lt;br /&gt;
&lt;br /&gt;
; I&#039;m trying to compile a Qt packcage for x86, but I got the error below. What&#039;s wrong?&lt;br /&gt;
: &amp;lt;pre&amp;gt;In file included from maemo/gconfsymbols.cpp:41:&lt;br /&gt;
 maemo/gconfsymbols_p.h:49:25: gconf/gconf.h: No such file or directory&amp;lt;/pre&amp;gt;&lt;br /&gt;
: Your scratchbox does not have &amp;lt;code&amp;gt;/bin/sh&amp;lt;/code&amp;gt;, so when calling &amp;lt;code&amp;gt;pkg-config&amp;lt;/code&amp;gt; from &amp;lt;code&amp;gt;qmake&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;CFLAGS&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;LIBS&amp;lt;/code&amp;gt; are not set correctly. Running &amp;lt;code&amp;gt;ln -s /scratchbox/tools/bin/sh /bin/sh&amp;lt;/code&amp;gt; will be solve this issue.&lt;br /&gt;
&lt;br /&gt;
; I&#039;m trying to compile a diablo Qt package, so I just created a symbolic link, debian, for debian.diablo, and then run dpkg-buildpackage command, but I got a build error because the symbolic link was deleted&lt;br /&gt;
: When running dpkg-buildpackage, all symbolic links will be deleted, so need to rename the folder from debian.diablo to debian to make a build of diablo Qt package.&lt;br /&gt;
&lt;br /&gt;
; I installed Qt (libqt4-dev) to scratchbox and tried to build a sample application, but I got the error because some header files such as qhildonstyle.h, and qvfbhdr.h etc. were missing&lt;br /&gt;
: libqt4-dev should copy all header files, but now, at least in 4.5.2-1maemo1, some files are missing. Please download file below and extract to your scratchbox system.&lt;br /&gt;
: &amp;lt;pre&amp;gt;http://qt4.garage.maemo.org/patches/qt4-missing-header.tgz&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Development]]&lt;br /&gt;
[[Category:Qt]]&lt;/div&gt;</summary>
		<author><name>192.100.124.219</name></author>
	</entry>
	<entry>
		<id>https://maemo.octonezd.me/index.php?title=Qt4_Hildon_Legacy&amp;diff=34234</id>
		<title>Qt4 Hildon Legacy</title>
		<link rel="alternate" type="text/html" href="https://maemo.octonezd.me/index.php?title=Qt4_Hildon_Legacy&amp;diff=34234"/>
		<updated>2010-03-23T17:30:16Z</updated>

		<summary type="html">&lt;p&gt;192.100.124.219: /* Using Qt 4.6 in Fremantle */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= [[Image:Intro.png]] Introduction =&lt;br /&gt;
&lt;br /&gt;
To develop with [[Qt-Maemo|Qt for Maemo]], a working SDK installation is required. There are [[Documentation/Maemo_5_Final_SDK_Installation|instructions on how to install the Maemo SDK]], and you can [http://www.youtube.com/watch?v=c8myh_iBy8k watch the Maemo SDK in action]. Alternatively, you may want to try [[MADDE]], a cross-platform Maemo development tool, available as a technology preview.&lt;br /&gt;
&lt;br /&gt;
== Maemo platform ==&lt;br /&gt;
&lt;br /&gt;
The Maemo platform is the software stack for Nokia Internet Tablets, which includes the Maemo operating system and the Maemo SDK. The Maemo Platform is mostly based on open source code, and has been developed by the Maemo Software department within Nokia in collaboration with many open source projects such as the Linux kernel, Debian, [[Hildon]] and GNOME.&lt;br /&gt;
&lt;br /&gt;
Read more about [http://maemo.org/intro/platform/ the Maemo platform] and a [http://maemo.org/intro/developer_overview/ developer overview].&lt;br /&gt;
&lt;br /&gt;
= [[Image:Rocket.png]] Getting started =&lt;br /&gt;
&lt;br /&gt;
To start to develop with Maemo Qt, we need to [[Documentation/Maemo_5_Final_SDK_Installation|install the Maemo SDK]].&lt;br /&gt;
&lt;br /&gt;
== Installing Qt packages in Scratchbox ==&lt;br /&gt;
Maemo Qt developers offers a set of Qt packages for [[Open development/Maemo roadmap/Fremantle|Fremantle]] (Maemo5 - OS2009) and Diablo (Maemo4.1 - OS2008).&lt;br /&gt;
&lt;br /&gt;
== Fremantle ==&lt;br /&gt;
You do not need to add any extra repository for Fremantle since Qt packages are already available in the SDK. You can install Qt with the command:&lt;br /&gt;
 fakeroot apt-get install libqt4-gui libqt4-dev&lt;br /&gt;
&lt;br /&gt;
=== Using Qt 4.6 in Fremantle ===&lt;br /&gt;
Since PR 1.2 release Qt 4.6 is available in public Fremantle repository&lt;br /&gt;
To upgrade older scratchbox targets to use the latest packages execute the following commands:&lt;br /&gt;
 fakeroot apt-get update&lt;br /&gt;
 fakeroot apt-get dist-upgrade&lt;br /&gt;
&lt;br /&gt;
== Diablo ==&lt;br /&gt;
Diablo Qt packages are into the official [[Extras]] repository. In order to start to develop with those packages you need to [[Extras#Diablo|add extras repository to your repository list]], and then install Qt packages in the terminal:&lt;br /&gt;
 apt-get install libqt4-dev&lt;br /&gt;
&lt;br /&gt;
==How to compile a Qt application in scratchbox==&lt;br /&gt;
Qt applications are usually built using QMake. Project like KDE instead replaced&lt;br /&gt;
QMake with CMake for more flexibility.&lt;br /&gt;
 &lt;br /&gt;
=== QMake ===&lt;br /&gt;
[http://doc.trolltech.com/4.5/qmake-manual.html QMake] is a tool from Trolltech that helps simplify the build process for development project across different platforms&lt;br /&gt;
&lt;br /&gt;
You can build your Maemo Qt application in 3 simple steps:&lt;br /&gt;
# Generating project file (Required if there is no .pro file into the app source tree)&amp;lt;br/&amp;gt;&amp;lt;pre&amp;gt;qmake -project&amp;lt;/pre&amp;gt;&lt;br /&gt;
# Generating Makefile from the QMake project file:&amp;lt;br/&amp;gt;&amp;lt;pre&amp;gt;qmake file.pro&amp;lt;/pre&amp;gt;&lt;br /&gt;
# &amp;lt;pre&amp;gt;make&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== CMake ===&lt;br /&gt;
&lt;br /&gt;
Because of some issue with [http://www.cmake.org/ CMake], [[Open development/Maemo roadmap/Diablo|Diablo]] CMake packages are currently useless since CMake segfaults (on the device at least). This issue has been solved in [[Open development/Maemo roadmap/Fremantle|Fremantle]] and CMake packages that comes from Fremantle [[SDK]] work nicely.&lt;br /&gt;
&lt;br /&gt;
CMake projects usually have a &amp;lt;code&amp;gt;CMakeLists.txt&amp;lt;/code&amp;gt; file instead of: &lt;br /&gt;
# .pro file used by QMake projects&lt;br /&gt;
# Makefile.am used by Autotools projects (standard in Unix/Linux)&lt;br /&gt;
&lt;br /&gt;
Using CMake to build the project is extremely easy. In the directory containing CMakeLists.txt, supply the following two commands, where path is the path to the source code.&lt;br /&gt;
 cmake path&lt;br /&gt;
 make&lt;br /&gt;
&lt;br /&gt;
Note: CMake is not installed by default in [[:Category:Scratchbox|scratchbox]]. You can install it with the command:&lt;br /&gt;
 fakeroot apt-get install cmake&lt;br /&gt;
&lt;br /&gt;
== Running a Qt application in: ==&lt;br /&gt;
=== Scratchbox ===&lt;br /&gt;
Diablo and Fremantle Qt applications can run into the device as into scratchbox.&lt;br /&gt;
&lt;br /&gt;
First step to run a Qt application is starting the SDK UI:&lt;br /&gt;
 &lt;br /&gt;
# Run Xephyr. It is able to run a [http://en.wikipedia.org/wiki/X_Window_System  X Server] inside another X Server.&amp;lt;br/&amp;gt;&amp;lt;pre&amp;gt;Xephyr :2 -host-cursor -screen 800x480x16 -dpi 96 -ac -kb&amp;lt;/pre&amp;gt;&lt;br /&gt;
# Set display for application that runs inside scratchbox:&amp;lt;br/&amp;gt;&amp;lt;pre&amp;gt;export DISPLAY=:2&amp;lt;/pre&amp;gt;&lt;br /&gt;
# You can now run the SDK UI. A Diablo or Fremantle desktop will appear in your Xephyr window:&amp;lt;br/&amp;gt;&amp;lt;pre&amp;gt;af-sb-init.sh start&amp;lt;/pre&amp;gt;&lt;br /&gt;
# Now you are ready to run any Maemo or Maemo Qt application with:&amp;lt;pre&amp;gt;run-standalone.sh ./qtapps&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Note: run-standalone.sh sets some variable needed by Qt to use the Hildon style.&lt;br /&gt;
&lt;br /&gt;
=== Device ===&lt;br /&gt;
Maemo Qt applications are Linux binaries. They can run on the device without any problem if you copy them to &amp;quot;partitions&amp;quot; mounted with exec flag. (for example, /home/user or /opt in Fremantle).&lt;br /&gt;
&lt;br /&gt;
Fore example, if we want to run quassel (Qt IRC Client) we have to launch it with:&lt;br /&gt;
 su -c ./quassel user&lt;br /&gt;
&lt;br /&gt;
= [[Image:Hammer.png]] Porting Qt applications to Maemo =&lt;br /&gt;
&lt;br /&gt;
Porting a Qt desktop application to Maemo requires very little effort. This is because the Maemo Qt libraries will take care of giving the Hildon look &amp;amp; Feel and enabling the virtual input methods for your application.&lt;br /&gt;
&lt;br /&gt;
==Overriding the Qt Maemo changes==&lt;br /&gt;
&lt;br /&gt;
===Maemo Style===&lt;br /&gt;
Hildon Style is the default Qt application style. Other style available are:&lt;br /&gt;
* [http://doc.trolltech.com/4.4/gallery-cleanlooks.html QCleanLooks]&lt;br /&gt;
* [http://doc.trolltech.com/4.4/gallery-windows.html Windows]&lt;br /&gt;
* [http://doc.trolltech.com/4.4/gallery-plastique.html Plastique]&lt;br /&gt;
&lt;br /&gt;
Qt application can use other Qt styles;&lt;br /&gt;
* Running your application with the style flag:&lt;br /&gt;
 ./qt-test-application -style windows&lt;br /&gt;
&lt;br /&gt;
* Using [http://doc.trolltech.com/4.4/qapplication.html#setStyle QApplication::setStyle( QStyle * style )]&lt;br /&gt;
&lt;br /&gt;
* If you want to change the style of a widget:[http://doc.trolltech.com/4.4/qwidget.html#setStyle QWidget::setStyle( QStyle * style )]&lt;br /&gt;
&lt;br /&gt;
===Showing the status bar===&lt;br /&gt;
&lt;br /&gt;
Hildon applications don&#039;t have a status bar. Qt for Maemo hides the status bar by default.&lt;br /&gt;
&lt;br /&gt;
You can show it again by using method &#039;&#039;statusBar()-&amp;gt;show()&#039;&#039; in your class derived from QMainWindow.&lt;br /&gt;
&lt;br /&gt;
===Using the Kinetic Finger Scrolling (cf Gtk&#039;s PannableArea)===&lt;br /&gt;
See [[Qt/Finger Scrolling|Finger Scrolling]]&lt;br /&gt;
&lt;br /&gt;
==Adding Maemo changes to a Qt Application==&lt;br /&gt;
&lt;br /&gt;
Some methods of Qt for Maemo are not available in the &amp;quot;standard&amp;quot; Qt libs, so a Qt application with specific Maemo Qt code can&#039;t be built outside the Maemo SDK. To avoid this issue, the developer can use the preprocessor directives, for example:&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;b&amp;gt;Qt 4.5 (Diablo and Fremantle)&amp;lt;/b&amp;gt;&lt;br /&gt;
 #ifdef Q_WS_HILDON&lt;br /&gt;
    //Specific hildon/Maemo5 code here &lt;br /&gt;
 #endif&lt;br /&gt;
&lt;br /&gt;
Qt project files can load hildon files using: (check [http://doc.trolltech.com/4.5/qmake-function-reference.html qmake ref guide] for more info about qmake options)&lt;br /&gt;
 contains(QT_CONFIG, hildon): {&lt;br /&gt;
    message(&amp;quot;Hello Hildon&amp;quot;)&lt;br /&gt;
    SOURCE += hildon.cpp&lt;br /&gt;
    HEADER += hildon.h&lt;br /&gt;
    FORMS   += hildon.ui&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;b&amp;gt;Qt 4.6 (Fremantle)&amp;lt;/b&amp;gt;&lt;br /&gt;
Q_WS_HILDON has been replaced by Q_WS_MAEMO_5 in Qt 4.6 and Qt 4.5 &amp;quot;contains(QT_CONFIG, hildon):{}&amp;quot; does same job of Qt 4.6 &amp;quot;maemo5 {}&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
 #ifdef Q_WS_MAEMO_5&lt;br /&gt;
    //specific hildon/maemo5 code here&lt;br /&gt;
 #endif&lt;br /&gt;
&lt;br /&gt;
 maemo5 {&lt;br /&gt;
    message(&amp;quot;Hello Hildon&amp;quot;)&lt;br /&gt;
    SOURCE += hildon.cpp&lt;br /&gt;
    HEADER += hildon.h&lt;br /&gt;
    FORMS   += hildon.ui&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
== Home widget interaction ==&lt;br /&gt;
{{main|Qt4 and Hildon home widget interaction}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Limitations==&lt;br /&gt;
&lt;br /&gt;
Currently Qt Maemo lacks full support for Hildon widgets introduced in Maemo 5. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;At the moment, creating a Qt application that follows Maemo 5 UI Style requires using custom Qt widgets, coded within the application itself&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
There is work ongoing to provide Qt Hildon widgets for Maemo 5, see [http://wiki.maemo.org/Qt4_Hildon/Qt_Hildon_Widgets Qt Hildon Widgets]&lt;br /&gt;
&lt;br /&gt;
To get the benefits of the ongoing Maemo 5 hildon integration work in Qt, you must get the latest Qt source code and compile it yourself. See [http://wiki.maemo.org/Qt4_Hildon#Building_Qt_from_GIT_rep Building Qt from GIT repository].&lt;br /&gt;
&lt;br /&gt;
= [[Image:Bug.png]] Debugging a Qt application =&lt;br /&gt;
&lt;br /&gt;
{{main|Documentation/Maemo_5_Developer_Guide/Kernel_and_Debugging_Guide/Maemo_Debugging_Guide}}&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Note&#039;&#039;&#039;: Fremantle Gdb 6.8 crashes in x86 and gives messed up backtraces on the device. Using gdb 7.0 is recommended. You can get gdb 7.0 sources from http://ftp.de.debian.org/debian/pool/main/g/gdb/gdb_7.0.orig.tar.gz, compile it (./configure &amp;amp;&amp;amp; make) inside X86 and armel scratchbox targets.&lt;br /&gt;
[http://chaos.troll.no/~harald/gdb7/ Here you can find GDB7 for fremantle x86 and armel]. &lt;br /&gt;
 /usr/local/bin/gdb7 ./myapp&lt;br /&gt;
&lt;br /&gt;
= [[Image:chart.png]] Profiling a Qt application =&lt;br /&gt;
&lt;br /&gt;
== OProfile ==&lt;br /&gt;
&lt;br /&gt;
{{main|Documentation/devtools/maemo5/oprofile}}&lt;br /&gt;
&lt;br /&gt;
== Valgrind ==&lt;br /&gt;
&lt;br /&gt;
{{main|Documentation/devtools/maemo5/valgrind}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= [[Image:package.png]] Packaging a Qt application for Maemo =&lt;br /&gt;
&lt;br /&gt;
{{main|Packaging a Qt application}}&lt;br /&gt;
&lt;br /&gt;
= [[Image:Helmet.png]] Maemo Qt API Reference =&lt;br /&gt;
&lt;br /&gt;
Maemo Qt is based on Qt for X11. It shares same APIs avoiding API breaks. In this way every Qt application that runs in other platforms (Windows, Mac OS X, Linux, S60, etc.) can run in Maemo devices as well. &lt;br /&gt;
To Develop a Qt application you can use the [http://doc.trolltech.com/4.5/index.html Official Qt 4.5 API documentation] and the list below to see what are the Maemo changes.&lt;br /&gt;
&lt;br /&gt;
==Diablo==&lt;br /&gt;
  &#039;&#039;&#039;QString QDesktopServices::storageLocation(StandardLocation type)&#039;&#039;&#039; returns specific Maemo locations for these types:&lt;br /&gt;
  - DesktopLocation:   QDir::homePath() + QLatin1String(&amp;quot;/MyDocs&amp;quot;),            instead of QDir::homePath() + QLatin1String(&amp;quot;/Desktop&amp;quot;)&lt;br /&gt;
  - DocumentsLocation: QDir::homePath() + QLatin1String(&amp;quot;/MyDocs/.documents&amp;quot;), instead of QDir::homePath() + QLatin1String(&amp;quot;/MyDocs/.documents&amp;quot;)&lt;br /&gt;
  - PicturesLocation:  QDir::homePath() + QLatin1String(&amp;quot;/MyDocs/.images&amp;quot;),    instead of QDir::homePath() + QLatin1String(&amp;quot;/Pictures&amp;quot;)&lt;br /&gt;
  - MusicLocation:     QDir::homePath() + QLatin1String(&amp;quot;/MyDocs/.sounds&amp;quot;),    instead of QDir::homePath() + QLatin1String(&amp;quot;/Music&amp;quot;)&lt;br /&gt;
  - MoviesLocation:    QDir::homePath() + QLatin1String(&amp;quot;/MyDocs/.videos&amp;quot;),    instead of QDir::homePath() + QLatin1String(&amp;quot;/MyDocs/.videos&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
  &#039;&#039;&#039;QTabletEvents&#039;&#039;&#039; are able to get the pressure value from the touchscreen.&lt;br /&gt;
   - The eventdeviceType is for the touchscreen is set to QTabletEvent::Stylus.&lt;br /&gt;
   - QTabletEvents won&#039;t be used anymore in Fremantle&lt;br /&gt;
  &lt;br /&gt;
  &#039;&#039;&#039;Finger poke&#039;&#039;&#039; is emulated in scratchbox by the Middle Mouse button (NOTE: There is no Fullscreen VKB in scratchbox)&lt;br /&gt;
 &lt;br /&gt;
  &#039;&#039;&#039;QInputEvents&#039;&#039;&#039; don&#039;t move the cursor. &lt;br /&gt;
  It&#039;s mandatory to get working the HIM moving the cursor via QInputMethodEvents.&lt;br /&gt;
  Why is it mandatory?  &lt;br /&gt;
  Because if the user select text with the finger from the right to the left, we are able to remove the highlighted text, but the&lt;br /&gt;
  cursor will be moved on the last char instead to stay on the first one.&lt;br /&gt;
   &lt;br /&gt;
  To do that some changes has been added to some widget function like: &#039;&#039;widget::inputMethodEvent(QInputMethodEvent *e)&#039;&#039;.&lt;br /&gt;
  Modifing that function in some custom widgets may be necessary.&lt;br /&gt;
  Don&#039;t reimplementing that function will break some fullscreen virtual keyboard features.&lt;br /&gt;
  &lt;br /&gt;
  &#039;&#039;&#039;Hardcoded Keys:&#039;&#039;&#039;&lt;br /&gt;
  In the QMainWindow:&lt;br /&gt;
  - F6 - Toggle fullscreen the application&lt;br /&gt;
  - F4 - Shows/Hides the application context menu&lt;br /&gt;
  - Zoom in  - is a standard [http://doc.trolltech.com/4.4/qkeysequence.html#StandardKey-enum key sequence] QKeySequence::ZoomIn&lt;br /&gt;
  - Zoom out - is a standard [http://doc.trolltech.com/4.4/qkeysequence.html#StandardKey-enum key sequence] QKeySequence::ZoomOut&lt;br /&gt;
&lt;br /&gt;
  &#039;&#039;&#039;Input Method:&#039;&#039;&#039;&lt;br /&gt;
  Maemo Qt uses the Hildon IM as default Input method.&lt;br /&gt;
  Each kind of widget can set the IM mode. This allows the input method to focus on the type of input that the application is expecting.&lt;br /&gt;
  Eg: spinboxes can receive only numeric characters (1-9).&lt;br /&gt;
  &lt;br /&gt;
  NOTE: Qt widgets like QTextEdit, QLineEdit... set the right input method mode automatically. &lt;br /&gt;
  &lt;br /&gt;
  A developer can change it by using:&lt;br /&gt;
    void QInputContext::setInputMode(int mode);&lt;br /&gt;
  It will update immediately the Hildon Input method to use the selected IM mode.  &lt;br /&gt;
  &lt;br /&gt;
  HIC Modes:&lt;br /&gt;
    HILDON_GTK_INPUT_MODE_ALPHA 	alphabetical characters and whitespace&lt;br /&gt;
    HILDON_GTK_INPUT_MODE_NUMERIC 	numbers 0-9 and the &#039;-&#039; character&lt;br /&gt;
    HILDON_GTK_INPUT_MODE_SPECIAL 	special characters&lt;br /&gt;
    HILDON_GTK_INPUT_MODE_HEXA 	hexadecimal characters; numbers 0-9, characters a-f, and A-F&lt;br /&gt;
    HILDON_GTK_INPUT_MODE_TELE 	telephone numbers; numbers 0-9, whitespace, and the characters &amp;quot;pwPW/().-+*#?,&amp;quot;&lt;br /&gt;
    HILDON_GTK_INPUT_MODE_FULL 	unrestricted entry mode, combination of the alpha, numeric and special modes.&lt;br /&gt;
    HILDON_GTK_INPUT_MODE_MULTILINE 	the client contains multiple lines of text or accepts linebreaks in the input.&lt;br /&gt;
    HILDON_GTK_INPUT_MODE_INVISIBLE 	do not echo or save the input in the IM when entering sensitive information such as passwords.&lt;br /&gt;
    HILDON_GTK_INPUT_MODE_AUTOCAP 	automatically capitalize the first letter at the start of a sentence.&lt;br /&gt;
    HILDON_GTK_INPUT_MODE_DICTIONARY 	enable predictive dictionaries and learning based on the input.&lt;br /&gt;
   &lt;br /&gt;
  Example:&lt;br /&gt;
    For a password field we need to set a specific IM mode:&lt;br /&gt;
    int mode = HILDON_GTK_INPUT_MODE_FULL | HILDON_GTK_INPUT_MODE_INVISIBLE&lt;br /&gt;
    QInputContext *qic = widget-&amp;gt;inputContext();&lt;br /&gt;
    qic-&amp;gt;setInputMode(mode);&lt;br /&gt;
  &lt;br /&gt;
  If you are developing a Custom widget able to receive input text, you can instruct your widget to use the right IM Mode just returning&lt;br /&gt;
  the mode.&lt;br /&gt;
  &lt;br /&gt;
  - How does it work?&lt;br /&gt;
  The Hildon IM sends a XMessage to pop up the &amp;quot;Virtual Keyboard&amp;quot; (or better the Main HIM UI) when an input widget receive the focus.&lt;br /&gt;
  The IM before to raise the VKB, makes an inputMethodQuery to the widget retrieving the IM mode.&lt;br /&gt;
  If the developer of the custom widget doesn&#039;t set the mode property, the IM will use HILDON_GTK_INPUT_MODE_FULL (the default mode) for that widget.&lt;br /&gt;
  &lt;br /&gt;
  Setting the ImMode is quite easy. Check the code below for more understanding.&lt;br /&gt;
  &lt;br /&gt;
  #ifdef Q_WS_HILDON&lt;br /&gt;
  #include &amp;lt;QInputContext&amp;gt;&lt;br /&gt;
  #endif&lt;br /&gt;
  &lt;br /&gt;
  QVariant QAbstractSpinBox::inputMethodQuery(Qt::InputMethodQuery query) const&lt;br /&gt;
  {    &lt;br /&gt;
    Q_D(const QAbstractSpinBox);&lt;br /&gt;
    switch(query) {&lt;br /&gt;
        case Qt::ImMode:{&lt;br /&gt;
            int mode = HILDON_GTK_INPUT_MODE_NUMERIC;&lt;br /&gt;
            return QVariant(mode);&lt;br /&gt;
        }&lt;br /&gt;
        default:&lt;br /&gt;
            return d-&amp;gt;edit-&amp;gt;inputMethodQuery(query);&lt;br /&gt;
    }&lt;br /&gt;
  }&lt;br /&gt;
&lt;br /&gt;
=FREMANTLE (Qt 4.5)=&lt;br /&gt;
&lt;br /&gt;
==Kinetic scrolling==&lt;br /&gt;
Kinetic scrolling is enabled by default in QListWidgets and is supported by any Qt widget that inherits QScrollArea.&lt;br /&gt;
Any item view widgets (QTreeView/QTreeWidget, QListView, QTableView/QTableWidget...) can use fingerscroll if it has &amp;quot;FingerScrollable&amp;quot; dynamic property set to true.&lt;br /&gt;
Eg:&lt;br /&gt;
  QTableWidget *table = new QTableWidget(this);&lt;br /&gt;
  table-&amp;gt;setProperty(&amp;quot;FingerScrollable&amp;quot;, true); &lt;br /&gt;
&lt;br /&gt;
NOTE: Available in Qt &amp;gt; 4.5.3-xxxxx-maemo4&lt;br /&gt;
&lt;br /&gt;
==Hildon-Desktop widgets==&lt;br /&gt;
&lt;br /&gt;
{{main|/Qt Hildon Widgets}}&lt;br /&gt;
&lt;br /&gt;
They are supported by Qt. An example (qt-example-hildondesktopwidget) is available in extras-devel.&lt;br /&gt;
&lt;br /&gt;
==Hildon menus==&lt;br /&gt;
Maemo5 menus are created using QActions available in menu bar. &lt;br /&gt;
Hidden, disabled, separators and widget actions won&#039;t shown. (Same in Qt 4.6)&lt;br /&gt;
&lt;br /&gt;
* qt-4.5.3-xxxx-maemo4 packages - needs QActions in a &amp;quot;fremantle&amp;quot; menu.&lt;br /&gt;
* Pkgs &amp;gt; qt-4.5.3-xxxx-maemo4 shows Maemo5 menus automatically&lt;br /&gt;
&lt;br /&gt;
Note: Maemo5 policy doesn&#039;t allow application to have more than 10 items.&lt;br /&gt;
&lt;br /&gt;
==Stackable windows==&lt;br /&gt;
http://maemomm.garage.maemo.org/docs/tutorial/figures/stackable-window.png&lt;br /&gt;
Are supported by Qt. To create them you need to create a MainWindow child of another Main window.&lt;br /&gt;
&lt;br /&gt;
 QMainWindow *fistStackableWindow = new QMainWindow;&lt;br /&gt;
 QMainWindow *secondStackableWindow = new QMainWindow(fistStackableWindow);&lt;br /&gt;
// you need the below line to see the back button on the top right hand corner of the stacked window instead of a cross&lt;br /&gt;
 secondStackableWindow-&amp;gt;setAttribute(Qt::WA_Maemo5StackedWindow);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Note: this is not entirely accurate, see&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
http://qt.nokia.com/doc/qt-maemo-4.6/maemo5-stackedwindows.html&lt;br /&gt;
&lt;br /&gt;
==Raise a Qt application in background==&lt;br /&gt;
QWidget::activateWindow() does the job.&lt;br /&gt;
&lt;br /&gt;
Implemented in Qt packages &amp;gt;= qt-4.5.3-xxxx-maemo6&lt;br /&gt;
== How to minimize a Qt application? ==&lt;br /&gt;
 QDBusConnection c = QDBusConnection::sessionBus();&lt;br /&gt;
 QDBusMessage m = QDBusMessage::createSignal(&amp;quot;/&amp;quot;,&amp;quot;com.nokia.hildon_desktop&amp;quot;,&amp;quot;exit_app_view&amp;quot;);&lt;br /&gt;
 c.send(m);&lt;br /&gt;
&lt;br /&gt;
==Portrait mode and listening for orientation changes==&lt;br /&gt;
If you want to run your application in portrait mode then you can add these lines to your application. The code goes in your main widget constructor.&lt;br /&gt;
&lt;br /&gt;
 #ifdef Q_WS_HILDON&lt;br /&gt;
 //Includes for portrait mode support&lt;br /&gt;
 # include &amp;lt;X11/Xlib.h&amp;gt;&lt;br /&gt;
 # include &amp;lt;X11/Xatom.h&amp;gt;&lt;br /&gt;
 # include &amp;lt;QtGui/QX11Info&amp;gt;&lt;br /&gt;
 #endif&lt;br /&gt;
 &lt;br /&gt;
 #ifndef Q_WS_HILDON&lt;br /&gt;
 int value = 1;&lt;br /&gt;
 Atom portraitSupport = XInternAtom(QX11Info::display(), &amp;quot;_HILDON_PORTRAIT_MODE_SUPPORT&amp;quot;, false);&lt;br /&gt;
 Atom portraitRequest = XInternAtom(QX11Info::display(), &amp;quot;_HILDON_PORTRAIT_MODE_REQUEST&amp;quot;, false);&lt;br /&gt;
 XChangeProperty(QX11Info::display(), winId(), portraitSupport, XA_CARDINAL, 32, PropModeReplace, (uchar *)&amp;amp;value, 1);&lt;br /&gt;
 XChangeProperty(QX11Info::display(), winId(), portraitRequest, XA_CARDINAL, 32, PropModeReplace, (uchar *)&amp;amp;value, 1);&lt;br /&gt;
 #endif&lt;br /&gt;
&lt;br /&gt;
If you want to listen for orientation changes and then switch the view to landscape or potrait mode automatically than take a look at [[Maemo_Qt_Extra_Libraries]] for more information.&lt;br /&gt;
&lt;br /&gt;
== QDockWidgets ==&lt;br /&gt;
QDockWidgets are not finger friendly widgets. They should not be used in Maemo.&lt;br /&gt;
In case you are porting an application to Maemo maybe you want to do&lt;br /&gt;
few changes as possible into your UI. Then you could use QDockWidget::setFeatures(QDockWidget::NoDockWidgetFeatures); to hide float and close button and lock the position of the dock widget.&lt;br /&gt;
&lt;br /&gt;
== QPrint* and QSystemTray support missing ==&lt;br /&gt;
 Printing (QPrint*) and System tray support is missing in current&lt;br /&gt;
 Qt 4.5.3-xxxx-maemo4 packages.&lt;br /&gt;
 Since incompatibility with KDE and other Qt application, they will be enabled again in next Qt 4.5.3 packages.&lt;br /&gt;
&lt;br /&gt;
== QSplashScreen not fully compatible with Hildon-Desktop ==&lt;br /&gt;
 QSplashScreen&#039;s window type is not supported in Fremantle. The splash screen is&lt;br /&gt;
 shown in full screen and the image is repeated to fill the splash screen&#039;s&lt;br /&gt;
 window. When splash screen is closed normal window closing animation is shown&lt;br /&gt;
 before showing the actual application window. For these reasons developers are&lt;br /&gt;
 disencouraged to use splash screens in their applications.&lt;br /&gt;
&lt;br /&gt;
As a workaround for the problem you can set a window property that tells HD to skip the transitions:&lt;br /&gt;
&lt;br /&gt;
 static void set_no_transitions (Display *dpy, Window w)&lt;br /&gt;
 {&lt;br /&gt;
 Atom no_trans;&lt;br /&gt;
 int one = 1;&lt;br /&gt;
 no_trans = XInternAtom (dpy, &amp;quot;_HILDON_WM_ACTION_NO_TRANSITIONS&amp;quot;, False);&lt;br /&gt;
 XChangeProperty (dpy, w, no_trans,&lt;br /&gt;
                  XA_CARDINAL, 32, PropModeReplace,&lt;br /&gt;
                  (unsigned char *)&amp;amp;one, 1);&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
== QToolBar limitations ==&lt;br /&gt;
Adding a QToolBar to a QMainWindow will always result in a toolbar at the&lt;br /&gt;
bottom of the screen. (Justification/Workarounds?)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=FREMANTLE (Qt 4.6)=&lt;br /&gt;
Here an example that shows several maemo5 Qt widgets in Qt 4.6.&lt;br /&gt;
&lt;br /&gt;
http://qt.nokia.com/doc/qt-maemo-4.6/examples-maemo5.html&lt;br /&gt;
&lt;br /&gt;
http://qt.gitorious.org/+qt-developers/qt/x11-maemo/trees/986340bb5e4b69ceb0a959c2a067a1ed5e504d50/examples/maemo5/widgets&lt;br /&gt;
&lt;br /&gt;
==Finger Scrolling==&lt;br /&gt;
&lt;br /&gt;
Kinetic scrolling is present by default in most scrolling widgets, eg. &amp;lt;code&amp;gt;QTextBrowser&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;QTableView&amp;lt;/code&amp;gt;. If you want to tweak the kinetic scrolling parameters like inertia and acceleration then you can instaniate a &amp;lt;code&amp;gt;QAbstractKineticScroller&amp;lt;/code&amp;gt; object like this:&lt;br /&gt;
&lt;br /&gt;
 QAbstractKineticScroller ks =  &lt;br /&gt;
   scrollArea-&amp;gt;property(&amp;quot;kineticScroller&amp;quot;).value&amp;lt;QAbstractKineticScroller *&amp;gt;();&lt;br /&gt;
&lt;br /&gt;
where scrollArea could be &amp;lt;code&amp;gt;QScrollArea&amp;lt;/code&amp;gt; with some widgets added to it, or you could use implementations like &amp;lt;code&amp;gt;QTextBrowser&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
You can tweak scrolling like this:&lt;br /&gt;
 ks-&amp;gt;setDragInertia( (double)value / 100.0)&lt;br /&gt;
 ks-&amp;gt;setMode(QAbstractKineticScroller::PushMode)&lt;br /&gt;
 &lt;br /&gt;
etc., refer to the examples here for details: http://qt.gitorious.org/+qt-developers/qt/x11-maemo/blobs/4.6-fremantle/examples/maemo5/kineticscroller/main.cpp&lt;br /&gt;
&lt;br /&gt;
==QSplashScreen==&lt;br /&gt;
Should be fixed in Qt 4.6. SplashWindow type is not supported by Fremantle WM. Qt 4.6 display splash screen using popup window type.&lt;br /&gt;
&lt;br /&gt;
==Orientation==&lt;br /&gt;
[http://qt.nokia.com/doc/qt-maemo-4.6/maemo5-rotation.html Official documentation]&lt;br /&gt;
&lt;br /&gt;
==Maemo5 Readme file==&lt;br /&gt;
There is a [http://qt.gitorious.org/+qt-developers/qt/x11-maemo/blobs/4.6-fremantle/README.maemo5 README file in Qt 4.6 source tree].&lt;br /&gt;
&lt;br /&gt;
= [[Image:Helmet.png]] Contributing to the Maemo Qt Project =&lt;br /&gt;
&lt;br /&gt;
Maemo Qt is a community project. Contributing to the forum, sending us patches, give us feedbacks, tracking bugs are all activities that help us to improve the quality of our work.&lt;br /&gt;
&lt;br /&gt;
Here there is a list of things that every person interested in helping us should read.&lt;br /&gt;
&lt;br /&gt;
==Stay updated==&lt;br /&gt;
Any Maemo Qt developer should be updated and should participate to the discussions, for that he must join the Mailing list.&lt;br /&gt;
BTW the mailing list is not for Maemo Qt Developers but it&#039;s open to Maemo Qt application developers too.&lt;br /&gt;
&lt;br /&gt;
== Introduction to Git ==&lt;br /&gt;
If you are a git newbie you maybe find interesting these links:&lt;br /&gt;
* http://www.sourcemage.org/Git_Guide&lt;br /&gt;
* http://www.gitcasts.com/&lt;br /&gt;
* http://www.gnome.org/~newren/eg/git-for-svn-users.html&lt;br /&gt;
* Using the git protocol through a HTTP CONNECT proxy: http://www.emilsit.net/blog/archives/how-to-use-the-git-protocol-through-a-http-connect-proxy/&lt;br /&gt;
&lt;br /&gt;
==Understanding the structure of our Git repository==&lt;br /&gt;
&lt;br /&gt;
{{main|Qt Maemo Git Process}}&lt;br /&gt;
&lt;br /&gt;
== Preparation ==&lt;br /&gt;
&lt;br /&gt;
Make sure each scratchbox target has&lt;br /&gt;
&lt;br /&gt;
  fakeroot apt-get build-dep libqt4-gui&lt;br /&gt;
&lt;br /&gt;
(you may need to apt-get install libgl-dev too as it&#039;s not in the Build-Depends: yet)&lt;br /&gt;
&lt;br /&gt;
==Building Qt from Git repository==&lt;br /&gt;
&lt;br /&gt;
# Clone the repository:&amp;lt;br/&amp;gt;&amp;lt;pre&amp;gt;git clone git://gitorious.org/+qt-maemo-developers/qt/qt-maemo.git&amp;lt;/pre&amp;gt;&amp;lt;br/&amp;gt;or if you are a member of our team:&amp;lt;br/&amp;gt;&amp;lt;pre&amp;gt;git clone git@gitorious.org:+qt-maemo-developers/qt/qt-maemo.git&amp;lt;/pre&amp;gt;&lt;br /&gt;
# Change dir:&amp;lt;br/&amp;gt;&amp;lt;pre&amp;gt;cd qt-maemo&amp;lt;/pre&amp;gt;&lt;br /&gt;
# Copy the remote 4.5 branch in your working copy:&amp;lt;br/&amp;gt;&amp;lt;pre&amp;gt;git checkout -b 4.5 origin/4.5&amp;lt;/pre&amp;gt;&lt;br /&gt;
# Checkout ONE of these branches:&amp;lt;br/&amp;gt;&amp;lt;pre&amp;gt;git checkout -b qt-diablo origin/qt-diablo&amp;lt;/pre&amp;gt;&amp;lt;br/&amp;gt;&amp;lt;pre&amp;gt;git checkout -b qt-n900+w34 origin/qt-n900+w34&amp;lt;/pre&amp;gt;&amp;lt;br/&amp;gt;&amp;lt;pre&amp;gt;git checkout -b qt-mer origin/qt-mer&amp;lt;/pre&amp;gt;&lt;br /&gt;
# Build the packages:&amp;lt;br/&amp;gt;&amp;lt;pre&amp;gt;dpkg-buildpackage -rfakeroot -b&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Merging branches changes in the mainline [OLD]==&lt;br /&gt;
&lt;br /&gt;
Before to merge your changes in the mainline, the code must be full working, cleaned and tested. A review from another developer is also needed in order to reduce the possibility to add errors.&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==QML==&lt;br /&gt;
[[QML]] is a GUI interface building scripting language for Qt. Check out the [[QML-EnhancedCalcExample | QML calculator example]].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=[[Image:Help-contents.png]] F.A.Q.=&lt;br /&gt;
&lt;br /&gt;
; &#039;&#039;I&#039;m trying to compile a Qt application for ARMEL, but I got the error below. What&#039;s wrong?&#039;&#039;&lt;br /&gt;
: &amp;lt;pre&amp;gt;/targets/FREMANTLE_X86/usr/include/qt4/QtCore/qatomic_i386.h:127: error: impossible constraint in &#039;asm&#039;&amp;lt;/pre&amp;gt;&lt;br /&gt;
:You are using x86 include files, then you have to update your Makefile. Running &amp;lt;code&amp;gt;qmake&amp;lt;/code&amp;gt; before &amp;lt;code&amp;gt;make&amp;lt;/code&amp;gt; will be solve this issue.&lt;br /&gt;
&lt;br /&gt;
; I&#039;m trying to compile a Qt packcage for x86, but I got the error below. What&#039;s wrong?&lt;br /&gt;
: &amp;lt;pre&amp;gt;In file included from maemo/gconfsymbols.cpp:41:&lt;br /&gt;
 maemo/gconfsymbols_p.h:49:25: gconf/gconf.h: No such file or directory&amp;lt;/pre&amp;gt;&lt;br /&gt;
: Your scratchbox does not have &amp;lt;code&amp;gt;/bin/sh&amp;lt;/code&amp;gt;, so when calling &amp;lt;code&amp;gt;pkg-config&amp;lt;/code&amp;gt; from &amp;lt;code&amp;gt;qmake&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;CFLAGS&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;LIBS&amp;lt;/code&amp;gt; are not set correctly. Running &amp;lt;code&amp;gt;ln -s /scratchbox/tools/bin/sh /bin/sh&amp;lt;/code&amp;gt; will be solve this issue.&lt;br /&gt;
&lt;br /&gt;
; I&#039;m trying to compile a diablo Qt package, so I just created a symbolic link, debian, for debian.diablo, and then run dpkg-buildpackage command, but I got a build error because the symbolic link was deleted&lt;br /&gt;
: When running dpkg-buildpackage, all symbolic links will be deleted, so need to rename the folder from debian.diablo to debian to make a build of diablo Qt package.&lt;br /&gt;
&lt;br /&gt;
; I installed Qt (libqt4-dev) to scratchbox and tried to build a sample application, but I got the error because some header files such as qhildonstyle.h, and qvfbhdr.h etc. were missing&lt;br /&gt;
: libqt4-dev should copy all header files, but now, at least in 4.5.2-1maemo1, some files are missing. Please download file below and extract to your scratchbox system.&lt;br /&gt;
: &amp;lt;pre&amp;gt;http://qt4.garage.maemo.org/patches/qt4-missing-header.tgz&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Development]]&lt;br /&gt;
[[Category:Qt]]&lt;/div&gt;</summary>
		<author><name>192.100.124.219</name></author>
	</entry>
	<entry>
		<id>https://maemo.octonezd.me/index.php?title=Qt-Maemo&amp;diff=34099</id>
		<title>Qt-Maemo</title>
		<link rel="alternate" type="text/html" href="https://maemo.octonezd.me/index.php?title=Qt-Maemo&amp;diff=34099"/>
		<updated>2010-02-25T08:18:20Z</updated>

		<summary type="html">&lt;p&gt;192.100.124.219: /* Image:Kblogger.png‎  News */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&lt;br /&gt;
&lt;br /&gt;
=[[Image:Kblogger.png‎ ]] News=&lt;br /&gt;
&amp;lt;b&amp;gt;25 Feb 10&amp;lt;/b&amp;gt; - [http://labs.trolltech.com/blogs/2010/02/24/qt-for-maemo-5-home-screen-widgets/ How to make Qt Desktop Widgets]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;15 Feb 10&amp;lt;/b&amp;gt; - Qt 4.6.2 is out. Qt Mobility (beta1) packages are in extras-devel.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;20 Jan 10&amp;lt;/b&amp;gt; - [http://www.anselmolsm.org/blog/qt-mobile-demos-in-extras-devel/ Qt Mobile Demos in extras-devel]&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;19 Jan 10&amp;lt;/b&amp;gt; - [http://qt.nokia.com/developer/qt-for-maemo-developers Qt 4.6 for Maemo 5 going Beta]&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;15 Jan 10&amp;lt;/b&amp;gt; - New Qt 4.5.3~git20090723-0maemo6 packages are now in Fremantle [[Maemo_5/PR1.1|PR 1.1]]&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;22 Dec 09&amp;lt;/b&amp;gt; - [http://wiki.maemo.org/MADDE/Qt_Example Qt example] for [http://wiki.maemo.org/MADDE MADDE ] ([http://talk.maemo.org/showthread.php?t=38075 talk thread])&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;17 Dec 09&amp;lt;/b&amp;gt; - [http://labs.trolltech.com/blogs/2009/12/17/qt-declarative-for-maemo-5/Qt declarative hits Maemo extras-devel repository]&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;11 Dec 09&amp;lt;/b&amp;gt; - Bye bye old static web pages.. all our pages are now in the Maemo Wiki. Old website is [http://qt4.garage.maemo.org/index-old.html here]&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=[[Image:Intro.png]] What is Qt?=&lt;br /&gt;
Qt (pronounced as the English word &amp;quot;cute&amp;quot;) is a cross-platform application development framework. More information is available at the [http://qt.nokia.com/ Qt website].&lt;br /&gt;
&lt;br /&gt;
=[[Image:Rocket.png]] Maemo Qt main features=&lt;br /&gt;
* Hildon Style, so applications look like Hildon/GTK+ applications&lt;br /&gt;
* Hildon Input Method, so applications can use the virtual keyboard&lt;br /&gt;
* Hildon-specific widgets&lt;br /&gt;
** partial support in Qt 4.5&lt;br /&gt;
** Qt 4.6 will have full support, and is currently a technology preview&lt;br /&gt;
&lt;br /&gt;
= [[Image:Fileview-preview.png]] Maemo Qt in Action =&lt;br /&gt;
* Diablo Maemo Qt&lt;br /&gt;
 ADD_HERE_SOME_PICS&lt;br /&gt;
* Fremantle Maemo Qt&lt;br /&gt;
 ADD HERE SOME PICS&lt;br /&gt;
&lt;br /&gt;
=[[Image:Pda.png]] Supported Maemo devices=&lt;br /&gt;
* [[Nokia N800]]/[[Nokia N810|N810]] (OS2008/Maemo4.1/Diablo)&lt;br /&gt;
* [[Nokia N900]] (OS2009/Maemo5/[[Open development/Maemo roadmap/Fremantle|Fremantle]])&lt;br /&gt;
&lt;br /&gt;
=[[Image:Ktorrent.png‎ ]] Installing Qt=&lt;br /&gt;
&lt;br /&gt;
Qt can be [[Qt4_Hildon#Installing_Qt_packages_in_Scratchbox|installed in scratchbox]] for development. For applications that use Qt and are installed via the application manager, the necessary Qt packages will automatically be installed.&lt;br /&gt;
&lt;br /&gt;
=[[Image:Available-qtapps-32.png‎ ]]Available and proposed Qt Applications=&lt;br /&gt;
If you want to port a Qt application to Maemo or if you want to check if an application you love has been already ported.. [[Qt4HildonApplications|this]] is the place you would like to check; &lt;br /&gt;
&lt;br /&gt;
=[[Image:Help-contents.png]] Documentation=&lt;br /&gt;
&lt;br /&gt;
== Qt ==&lt;br /&gt;
&lt;br /&gt;
* [[Qt4 Hildon|Qt 4 Hildon]] developing with Qt for Maemo&lt;br /&gt;
* [[QML]]&lt;br /&gt;
&lt;br /&gt;
== Non-Qt documentation ==&lt;br /&gt;
&lt;br /&gt;
* Fremantle: &lt;br /&gt;
** [http://sw.nokia.com/id/a3187f95-ad88-4233-b0ef-a182da3ec1c7/Hildon_2_2_Widget_UI_Specification_v1_0_en.pdf Hildon 2.2 Widget UI Spec -PDF]&lt;br /&gt;
** [http://www.forum.nokia.com/info/sw.nokia.com/id/eb8a68ba-6225-4d84-ba8f-a00e4a05ff6f/Hildon_2_2_UI_Style_Guide.html Hildon 2.2 UI Style Guid -PDF]&lt;br /&gt;
* Diablo&lt;br /&gt;
** ADD_SOMETHING_HERE&lt;br /&gt;
&lt;br /&gt;
== Further reading ==&lt;br /&gt;
&lt;br /&gt;
* [http://www.forum.nokia.com/Tools_Docs_and_Code/Documentation/Latest.xhtml Forum Nokia Docs] contain Maemo as well as other documentation related to other Nokia platforms&lt;br /&gt;
* [http://wiki.forum.nokia.com/index.php/Qt_for_Maemo_Developers_Guide Qt for Maemo Developers Guide, Forum Nokia]&lt;br /&gt;
* [http://www.forum.nokia.com/Tools_Docs_and_Code/Documentation/Maemo.xhtml Maemo documentation, mostly about Qt, Forum Nokia]&lt;br /&gt;
* [http://doc.trolltech.com/3.2/how-to-learn-qt.html How to learn Qt, Trolltech]&lt;br /&gt;
* [http://qt.nokia.com/developer/books Books] listed at qt.nokia.com&lt;br /&gt;
* [http://talk.maemo.org/showthread.php?t=39879 Qt4 hello world with python in 30 minutes]&lt;br /&gt;
&lt;br /&gt;
=[[Image:Bug.png]] Bug tracking=&lt;br /&gt;
* Diablo &amp;amp; Fremantle Qt 4.5 port&lt;br /&gt;
** [https://bugs.maemo.org/buglist.cgi?query_format=specific&amp;amp;order=relevance+desc&amp;amp;bug_status=__open__&amp;amp;product=Qt&amp;amp;content= View bug list]&lt;br /&gt;
** [https://bugs.maemo.org/enter_bug.cgi?product=Qt Report a new bug]&lt;br /&gt;
* Fremantle Qt 4.6 port&lt;br /&gt;
** [http://doc.trolltech.com/4.6/bughowto.html How to report a bug]&lt;br /&gt;
** [http://bugreports.qt.nokia.com/secure/CreateIssue!default.jspa Report a new bug]&lt;br /&gt;
** [http://bugreports.qt.nokia.com/secure/IssueNavigator.jspa?reset=true&amp;amp;&amp;amp;query=maemo&amp;amp;summary=true&amp;amp;description=true&amp;amp;body=true&amp;amp;environment=true&amp;amp;pid=10510 View bug list]&lt;br /&gt;
&lt;br /&gt;
=[[Image:Helmet.png]] Code=&lt;br /&gt;
* Qt 4.5 (Diablo)&lt;br /&gt;
** http://gitorious.org/+qt-maemo-developers/qt/qt-maemo&lt;br /&gt;
* Qt 4.5 (Fremantle)&lt;br /&gt;
** http://gitorious.org/+qt-maemo-developers/qt/qt-maemo&lt;br /&gt;
* Qt 4.6 (Fremantle)&lt;br /&gt;
** http://qt.gitorious.org/qt/x11-maemo&lt;br /&gt;
&lt;br /&gt;
=[[Image:Preferences-desktop-user.png]] Get Help=&lt;br /&gt;
* Forums&lt;br /&gt;
** [http://discussion.forum.nokia.com/forum/forumdisplay.php?f=220 Qt for Maemo Forum Nokia Discussion board]&lt;br /&gt;
** [https://garage.maemo.org/forum/?group_id=424 Old qt4.garage.maemo.org forum]&lt;br /&gt;
* IRC&lt;br /&gt;
** Official Qt for Maemo IRC Channel&lt;br /&gt;
** Click [http://webchat.freenode.net/?channels=qt-maemo here] to join the #qt-maemo channel in frenode (irc.freenode.net).&lt;br /&gt;
&lt;br /&gt;
* Mailing list&lt;br /&gt;
** [https://garage.maemo.org/mailman/listinfo/qt4-devel Click here to Subscribe to the Qt community ML]&lt;br /&gt;
&lt;br /&gt;
[[Category:Qt]]&lt;/div&gt;</summary>
		<author><name>192.100.124.219</name></author>
	</entry>
	<entry>
		<id>https://maemo.octonezd.me/index.php?title=Qt4_Hildon_Legacy&amp;diff=34269</id>
		<title>Qt4 Hildon Legacy</title>
		<link rel="alternate" type="text/html" href="https://maemo.octonezd.me/index.php?title=Qt4_Hildon_Legacy&amp;diff=34269"/>
		<updated>2010-01-20T07:23:32Z</updated>

		<summary type="html">&lt;p&gt;192.100.124.219: /* FREMANTLE (Qt 4.6) */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Image:MaemoQtPicture.png]]&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
== [[Image:Intro.png]] Intro ==&lt;br /&gt;
&lt;br /&gt;
=== Maemo Platform ===&lt;br /&gt;
&lt;br /&gt;
The Maemo Platform is the software stack for Nokia Internet Tablets, which includes the Maemo operating system and the Maemo SDK. The Maemo Platform is mostly based on open source code, and has been developed by the Maemo Software department within Nokia in collaboration with many open source projects such as the Linux kernel, Debian, and GNOME.&amp;lt;ref&amp;gt;[http://en.wikipedia.org/wiki/Maemo_Platform Maemo Platform on Wikipedia]&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[http://maemo.org/intro/platform/ Read more...]&lt;br /&gt;
&lt;br /&gt;
=== What is Hildon? ===&lt;br /&gt;
&lt;br /&gt;
Hildon is an application framework for Linux operating system mobile devices (PDAs, mobile phones, etc), developed by Nokia for Maemo and now a part of GNOME, that focuses on providing a finger friendly interface.&amp;lt;ref&amp;gt;[http://en.wikipedia.org/wiki/Hildon Hildon on Wikipedia]&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[http://live.gnome.org/Hildon Read more...]&lt;br /&gt;
&lt;br /&gt;
=== Developing on Maemo ===&lt;br /&gt;
&lt;br /&gt;
Developing applications for Maemo is done with the Maemo SDK. The process from creating the first prototype of your application to distributing to a wide audience consists basically of three steps:&lt;br /&gt;
&lt;br /&gt;
* Share your application project in the [http://garage.maemo.org Garage].&lt;br /&gt;
* Make your application easy to install and put in the [[Extras]].&lt;br /&gt;
* Once your application has a high quality - be promoted to the [http://www.nokia.com/os2008 Nokia user site].&lt;br /&gt;
&lt;br /&gt;
[http://maemo.org/intro/developer_overview/ Read more...]&lt;br /&gt;
&lt;br /&gt;
=== Maemo SDK ===&lt;br /&gt;
&lt;br /&gt;
The Maemo SDK is based around the Debian-oriented Scratchbox Cross Compilation Toolkit, which provides a sandbox environment in which development may take place. Scratchbox uses Qemu to emulate an ARMEL processor or sbrsh to remotely execute instructions. Scratchbox-compatible rootstraps are available for both x86 and ARMEL, so the majority of development and debugging takes place on x86, with final packaging being for ARMEL.&amp;lt;ref&amp;gt;[http://en.wikipedia.org/wiki/Maemo_Platform#Maemo_SDK Maemo SDK on Wikipedia]&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[http://www.youtube.com/watch?v=c8myh_iBy8k Watch the Maemo SDK in action!]&lt;br /&gt;
&lt;br /&gt;
=== What is Scratchbox? ===&lt;br /&gt;
&lt;br /&gt;
Scratchbox is a cross compilation toolkit designed to make embedded Linux application development easier. It also provides a full set of tools to integrate and cross compile an entire Linux distribution.&amp;lt;ref&amp;gt;[http://en.wikipedia.org/wiki/Scratchbox Scratchbox on Wikipedia]&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[http://www.scratchbox.org/ Read more...]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== [[Image:Rocket.png]] Getting started ==&lt;br /&gt;
&lt;br /&gt;
To start to develop with Maemo Qt, we need to install the Maemo SDK on a Linux machine.&lt;br /&gt;
&lt;br /&gt;
=== Hey, I don&#039;t have a Linux machine! ===&lt;br /&gt;
That&#039;s not a big problem. You can run Maemo SDK in a virtual machine;&lt;br /&gt;
You can download Maemo SDK virtual Image (Linux Ubuntu + Diablo and Fremantle SDK)&lt;br /&gt;
from [http://tablets-dev.nokia.com/maemo-dev-env-downloads.php tablets-dev.nokia.com].&lt;br /&gt;
You can get VMPlayer from [http://www.vmware.com/products/player/ here].&lt;br /&gt;
&lt;br /&gt;
=== Installing the Maemo SDK ===&lt;br /&gt;
Maemo SDK can be installaed in any Linux environment.&lt;br /&gt;
However Debian based distros (eg: Ubuntu) are recommended.&lt;br /&gt;
&lt;br /&gt;
Documentation you need to install Maemo SDK is [http://maemo.org/development/sdks/ here].&lt;br /&gt;
&lt;br /&gt;
=== Installing Qt packages in Scratchbox ===&lt;br /&gt;
Maemo Qt developers offers a set of Qt packages for Diablo (Maemo4.1 - OS2008)&lt;br /&gt;
and Fremantle (Maemo5 - OS2009).&lt;br /&gt;
&lt;br /&gt;
==== Diablo ====&lt;br /&gt;
Diablo Qt packages are into the official Extras repository.&lt;br /&gt;
In order to start to develop with those packages you need to add&lt;br /&gt;
extras repository to your repository list.&lt;br /&gt;
&lt;br /&gt;
 1. Open /etc/apt/source.list with a text editor (eg: kate, gedit...)&lt;br /&gt;
 2. Append the following line to that file: &lt;br /&gt;
     deb http://repository.maemo.org/extras/ diablo free non-free&lt;br /&gt;
 3. Then update your APT cache with&lt;br /&gt;
      &amp;lt;i&amp;gt;apt-get update&amp;lt;/i&amp;gt;&lt;br /&gt;
 4. Install Qt packages with&lt;br /&gt;
      &amp;lt;i&amp;gt;apt-get install libqt4-dev&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Fremantle ====&lt;br /&gt;
You don&#039;t need to add any extra repository for Fremantle since Qt packages are already available into the SDK. You can find more information on installing Qt on Fremantle, and help improve Qt on Maemo, [[QT/Testing | on the Qt testing page]].&lt;br /&gt;
&lt;br /&gt;
Then you can install Qt with:&lt;br /&gt;
  [sbox-FREMANTLE_X86: ~] &amp;gt; fakeroot apt-get install libqt4-gui libqt4-dev&lt;br /&gt;
&lt;br /&gt;
==== Using Qt 4.6 Betas in Fremantle ====&lt;br /&gt;
If you want to test your applications with the latest Qt 4.6 Beta version, either compile it [[Qt_Maemo_Git_Process|directly from the git repos]] or install the libqt4-maemo5-dev package.&lt;br /&gt;
&lt;br /&gt;
For the latter you need to enable access to the extra devel repositories first (if you haven&#039;t done so yet). Inside of scratchbox, for your i486 target (ARM is very similar), do the following:&lt;br /&gt;
&lt;br /&gt;
  [sbox-FREMANTLE_X86: ~] &amp;gt; fakeroot echo &amp;quot;deb http://repository.maemo.org/extras/ fremantle free non-free&amp;quot; &amp;gt;&amp;gt; /etc/apt/sources.list&lt;br /&gt;
  [sbox-FREMANTLE_X86: ~] &amp;gt; fakeroot echo &amp;quot;deb-src http://repository.maemo.org/extras/ fremantle free&amp;quot; &amp;gt;&amp;gt; /etc/apt/sources.list&lt;br /&gt;
  [sbox-FREMANTLE_X86: ~] &amp;gt; fakeroot echo &amp;quot;deb http://repository.maemo.org/extras-devel fremantle free non-free&amp;quot; &amp;gt;&amp;gt; /etc/apt/sources.list&lt;br /&gt;
  [sbox-FREMANTLE_X86: ~] &amp;gt; fakeroot echo &amp;quot;deb-src http://repository.maemo.org/extras-devel fremantle free&amp;quot; &amp;gt;&amp;gt; /etc/apt/sources.list&lt;br /&gt;
&lt;br /&gt;
To install the tech preview:&lt;br /&gt;
  [sbox-FREMANTLE_X86: ~] &amp;gt; fakeroot apt-get update&lt;br /&gt;
  [sbox-FREMANTLE_X86: ~] &amp;gt; fakeroot apt-get remove libqt4*&lt;br /&gt;
  [sbox-FREMANTLE_X86: ~] &amp;gt; fakeroot apt-get install libqt4-maemo5-dev&lt;br /&gt;
&lt;br /&gt;
Qt is installed to /opt/qt4-maemo5.&lt;br /&gt;
&lt;br /&gt;
If you happen to use autotools, this will recompile the code against the beta:&lt;br /&gt;
  [sbox-FREMANTLE_X86: ~] &amp;gt; cd ~/your/project/folder&lt;br /&gt;
  [sbox-FREMANTLE_X86: ~] &amp;gt; make distclean #dont worry if it fails&lt;br /&gt;
  [sbox-FREMANTLE_X86: ~] &amp;gt; ./autogen.sh QT_PATH=/opt/qt4-maemo5/bin&lt;br /&gt;
  [sbox-FREMANTLE_X86: ~] &amp;gt; make&lt;br /&gt;
&lt;br /&gt;
For qmake you might have to set the QT_INSTALL_PREFIX correctly.&lt;br /&gt;
&lt;br /&gt;
===How to compile a Qt application in scratchbox===&lt;br /&gt;
Qt applications are usually built using QMake. Project like KDE instead replaced&lt;br /&gt;
QMake with CMake for more flexibility.&lt;br /&gt;
 &lt;br /&gt;
==== QMake ====&lt;br /&gt;
[http://doc.trolltech.com/4.5/qmake-manual.html QMake] is a tool from Trolltech that helps simplify the build process for development project across different platforms&lt;br /&gt;
&lt;br /&gt;
You can build your Maemo Qt application in 3 simple steps:&lt;br /&gt;
 1. Generating project file [Required if there is not .pro file into the app source tree]&lt;br /&gt;
    &amp;lt;i&amp;gt;qmake -project&amp;lt;/i&amp;gt;&lt;br /&gt;
 2. Generating Makefile from the QMake project file:&lt;br /&gt;
    qmake file.pro&lt;br /&gt;
 3. make&lt;br /&gt;
&lt;br /&gt;
==== CMake ====&lt;br /&gt;
&lt;br /&gt;
As told before it&#039;s not a standard tool but it&#039;s largely used from people and application coming from the [[KDE]] world.&lt;br /&gt;
&lt;br /&gt;
Because of some issue with [[CMake]], [[Diablo]] CMake packages are currently useless since CMake segfaults (on the device at least).&lt;br /&gt;
&lt;br /&gt;
This issue has been solved in [[Fremantle]] and CMake packages that comes from Fremantle [[SDK]] work nicely.&lt;br /&gt;
&lt;br /&gt;
 - CMake projects has usually a CMakeLists.txt file instead of &lt;br /&gt;
     - .pro file used by QMake projects&lt;br /&gt;
     - Makefile.am used by Autotools projects (standard in Unix/[[Linux]])&lt;br /&gt;
&lt;br /&gt;
Using CMake to build the project is extremely easy.&lt;br /&gt;
In the directory containing CMakeLists.txt, supply the following two commands, where path is the path to the source code.&lt;br /&gt;
&lt;br /&gt;
 - cmake path&lt;br /&gt;
 - make&lt;br /&gt;
&lt;br /&gt;
Note: CMake is not installed by default in [[scratchbox]]. You can install it with&lt;br /&gt;
 &amp;lt;i&amp;gt;fakeroot apt-get install cmake&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Running a Qt application in: ===&lt;br /&gt;
====A. Scratchbox====&lt;br /&gt;
Diablo and Fremantle Qt applications can run into the device as into scratchbox.&lt;br /&gt;
&lt;br /&gt;
First step to run a Qt application is starting the SDK UI:&lt;br /&gt;
 &lt;br /&gt;
1. Run Xephyr. It&#039;s able to run a [http://en.wikipedia.org/wiki/X_Window_System  X Server] inside another X Server. &lt;br /&gt;
 &amp;lt;i&amp;gt;Xephyr :2 -host-cursor -screen 800x480x16 -dpi 96 -ac -kb&amp;lt;/i&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
2. Set display for application that runs inside scratchbox&lt;br /&gt;
 &amp;lt;i&amp;gt;&amp;lt;b&amp;gt;[sbox-DIABLO_&amp;lt;target&amp;gt;:~] &amp;gt;&amp;lt;/b&amp;gt; export DISPLAY=:2&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
3. You can now run the SDK UI. Diablo or Fremantle desktop will appear into your Xephyr window:&lt;br /&gt;
 &amp;lt;i&amp;gt;&amp;lt;b&amp;gt;[sbox-DIABLO_&amp;lt;target&amp;gt;:~] &amp;gt;&amp;lt;/b&amp;gt; af-sb-init.sh start&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
4. Now you are ready to run any Maemo or Maemo Qt application with&lt;br /&gt;
 &amp;lt;i&amp;gt;&amp;lt;b&amp;gt;[sbox-DIABLO_&amp;lt;target&amp;gt;:~] &amp;gt;&amp;lt;/b&amp;gt; run-standalone.sh ./qtapps&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Note: run-standalone.sh sets some variable needed by Qt to use the Hildon style.&lt;br /&gt;
&lt;br /&gt;
====B. device====&lt;br /&gt;
Maemo Qt applications are linux binaries. They can run into the device without any problem if you copy it/them in &amp;quot;partitions&amp;quot; mounted with exec flag. (Eg: /home/user or /opt in Fremantle).&lt;br /&gt;
&lt;br /&gt;
Eg: If we want to run quassel (Qt IRC Client) we have to launch it with:&lt;br /&gt;
 &amp;lt;b&amp;gt;Nokia-N900-44-1:/home/user#&amp;lt;/b&amp;gt; su -c ./quassel user&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== [[Image:Hammer.png]] Porting Qt applications to Maemo ==&lt;br /&gt;
&lt;br /&gt;
===Intro===&lt;br /&gt;
&lt;br /&gt;
Porting a Qt desktop application to Maemo requires very little effort. This because the Maemo Qt libraries will take care of giving the Hildon look &amp;amp; Feel and enabling the virtual input methods for your application.&lt;br /&gt;
&lt;br /&gt;
===Overriding the Qt Maemo changes===&lt;br /&gt;
&lt;br /&gt;
====Maemo Style====&lt;br /&gt;
Hildon Style is the default Qt application style. Other style available are:&lt;br /&gt;
* [http://doc.trolltech.com/4.4/gallery-cleanlooks.html QCleanLooks]&lt;br /&gt;
* [http://doc.trolltech.com/4.4/gallery-windows.html Windows]&lt;br /&gt;
* [http://doc.trolltech.com/4.4/gallery-plastique.html Plastique]&lt;br /&gt;
&lt;br /&gt;
Qt application can use other Qt styles;&lt;br /&gt;
* Running your application with the style flag:&lt;br /&gt;
&amp;lt;i&amp;gt;./qt-test-application -style windows&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Using [http://doc.trolltech.com/4.4/qapplication.html#setStyle QApplication::setStyle( QStyle * style )]&lt;br /&gt;
&lt;br /&gt;
* If you want to change the style of a widget:[http://doc.trolltech.com/4.4/qwidget.html#setStyle QWidget::setStyle( QStyle * style )]&lt;br /&gt;
&lt;br /&gt;
====Showing the status bar====&lt;br /&gt;
&lt;br /&gt;
Hildon applications don&#039;t have a status bar. Qt for Maemo hides the status bar by default.&lt;br /&gt;
&lt;br /&gt;
You can show it again by using method &#039;&#039;statusBar()-&amp;gt;show()&#039;&#039; in your class derived from QMainWindow.&lt;br /&gt;
&lt;br /&gt;
====Using the Kinetic Finger Scrolling (cf Gtk&#039;s PannableArea)====&lt;br /&gt;
See [[Qt/Finger Scrolling|Finger Scrolling]]&lt;br /&gt;
&lt;br /&gt;
===Adding Maemo changes to a Qt Application===&lt;br /&gt;
&lt;br /&gt;
Some methods of Qt for Maemo are not available in the &amp;quot;standard&amp;quot; Qt libs, so a Qt application with specific Maemo Qt code can&#039;t be built outside the Maemo SDK. To avoid this issue, the developer can use the preprocessor directives, for example:&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;b&amp;gt;Qt 4.5 (Diablo and Fremantle)&amp;lt;/b&amp;gt;&lt;br /&gt;
 #ifdef Q_WS_HILDON&lt;br /&gt;
    //Specific hildon/Maemo5 code here &lt;br /&gt;
 #endif&lt;br /&gt;
&lt;br /&gt;
Qt project files can load hildon files using: (check [http://doc.trolltech.com/4.5/qmake-function-reference.html qmake ref guide] for more info about qmake options)&lt;br /&gt;
 contains(QT_CONFIG, hildon): {&lt;br /&gt;
    message(&amp;quot;Hello Hildon&amp;quot;)&lt;br /&gt;
    SOURCE += hildon.cpp&lt;br /&gt;
    HEADER += hildon.h&lt;br /&gt;
    FORMS   += hildon.ui&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;b&amp;gt;Qt 4.6 (Fremantle)&amp;lt;/b&amp;gt;&lt;br /&gt;
Q_WS_HILDON has been replaced by Q_WS_MAEMO_5 in Qt 4.6 and Qt 4.5 &amp;quot;contains(QT_CONFIG, hildon):{}&amp;quot; does same job of Qt 4.6 &amp;quot;maemo5 {}&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
 #ifdef Q_WS_MAEMO_5&lt;br /&gt;
    //specific hildon/maemo5 code here&lt;br /&gt;
 #endif&lt;br /&gt;
&lt;br /&gt;
 maemo5 {&lt;br /&gt;
    message(&amp;quot;Hello Hildon&amp;quot;)&lt;br /&gt;
    SOURCE += hildon.cpp&lt;br /&gt;
    HEADER += hildon.h&lt;br /&gt;
    FORMS   += hildon.ui&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
===Limitations===&lt;br /&gt;
&lt;br /&gt;
Currently Qt Maemo lacks full support for Hildon widgets introduced in Maemo 5. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;At the moment, creating a Qt application that follows Maemo 5 UI Style requires using custom Qt widgets, coded within the application itself&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
There is work ongoing to provide Qt Hildon widgets for Maemo 5, see [http://wiki.maemo.org/Qt4_Hildon/Qt_Hildon_Widgets Qt Hildon Widgets]&lt;br /&gt;
&lt;br /&gt;
To get the benefits of the ongoing Maemo 5 hildon integration work in Qt, you must get the latest Qt source code and compile it yourself. See [http://wiki.maemo.org/Qt4_Hildon#Building_Qt_from_GIT_rep Building Qt from GIT repository].&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== [[Image:Bug.png]] Debugging a Qt application ==&lt;br /&gt;
&lt;br /&gt;
===GDB ===&lt;br /&gt;
&lt;br /&gt;
====Intro ====&lt;br /&gt;
&lt;br /&gt;
The GNU Project Debugger, or gdb for short, is a general purpose debugger that can be used for various debugging purposes.&lt;br /&gt;
&lt;br /&gt;
====Debugging a Qt application in Scratchbox====&lt;br /&gt;
&lt;br /&gt;
TODO&lt;br /&gt;
&lt;br /&gt;
====Debugging a Qt application on device====&lt;br /&gt;
=====Using gdb=====&lt;br /&gt;
Fast way is running gdb ./your app.&lt;br /&gt;
&lt;br /&gt;
=====Using gdb &amp;amp; gdbserver=====&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Installing gdb on the device.&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Add the [http://maemo.org/development/tools/ SDK tools] repository to the catalogue list.&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;install gdb by using apt-get (require around 6 MB of space)&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Install the debug symbols files in scratchbox (ARMEL target)&amp;lt;/li&amp;gt;&lt;br /&gt;
 apt-get install libqt4-dbg&lt;br /&gt;
&amp;lt;li&amp;gt;Run the application (device side)&amp;lt;/li&amp;gt;&lt;br /&gt;
 $gdbserver 0.0.0.0:1234 ./qtApplication&lt;br /&gt;
&amp;lt;li&amp;gt;Run the gdb client on your host PC (scratchbox side)&amp;lt;/li&amp;gt;&lt;br /&gt;
 [sbox-DIABLO_ARMEL: ~/TEST/svn/qt4-x11-4.4.0/examples/widgets/tablet] &amp;gt; gdb ./qtApplication&lt;br /&gt;
&amp;lt;li&amp;gt;Set the target of gdb&amp;lt;/li&amp;gt;&lt;br /&gt;
 (gdb) target remote 172.21.37.117:1234&lt;br /&gt;
&amp;lt;li&amp;gt;Tell to gdb to continue to debug the application on the device&amp;lt;/li&amp;gt;&lt;br /&gt;
 (gdb) continue&lt;br /&gt;
&amp;lt;li&amp;gt;Wait some moments...&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;If necessary you can put break points; eg: for void QWidget::setPalette ( const QPalette &amp;amp; )&amp;lt;/li&amp;gt;&lt;br /&gt;
 (gdb) break QWidget::setPalette(QPalette const&amp;amp;)&lt;br /&gt;
 Breakpoint 1 at 0x4026ae68&lt;br /&gt;
&lt;br /&gt;
&amp;lt;li&amp;gt;Your application will appear on the device screen. Happy debugging!&amp;lt;/li&amp;gt;&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Note&#039;&#039;&#039;: Fremantle Gdb 6.8 crashes in x86 and gives messed up backtraces onto the device. Using gdb 7.0 is recommended. You can get gdb 7.0 sources fromhttp://ftp.de.debian.org/debian/pool/main/g/gdb/gdb_7.0.orig.tar.gz, compile it (./configure &amp;amp;&amp;amp; make) inside X86 and armel scratchbox targets.&lt;br /&gt;
[http://chaos.troll.no/~harald/gdb7/ Here you can find GDB7 for fremantle x86 and armel]&lt;br /&gt;
&lt;br /&gt;
===Links===&lt;br /&gt;
&lt;br /&gt;
* [http://www.gnu.org/software/gdb/documentation/ GDB documentation &amp;amp; tutorials]&lt;br /&gt;
* [http://maemo.org/development/documentation/man_pages/gdbserver/ GDBServer man page]&lt;br /&gt;
* [http://maemo.org/maemo_release_documentation/maemo4.1.x/node15.html Maemo debugging guide]&lt;br /&gt;
* [http://repository.maemo.org/pool/diablo/free/g/gdb/ gdb debian package for Diablo]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== [[Image:chart.png]] Profiling a Qt application ==&lt;br /&gt;
&lt;br /&gt;
=== OProfile ===&lt;br /&gt;
&lt;br /&gt;
OProfile is a low overhead system-wide profiler for Linux. It can be used to find CPU usage bottlenecks in the whole system and within processes. It works fine in the device, but viewing the reports can take quite a long time (10 minutes) when fired up on N800/N810 devices. Therefore, it often makes sense to run opreport in scratchbox.&lt;br /&gt;
&lt;br /&gt;
If you want to know more about OProfile in Maemo see the [http://maemo.org/development/tools/doc/chinook/oprofile/ documentation].&lt;br /&gt;
&lt;br /&gt;
=== Valgrind ===&lt;br /&gt;
Valgrind runs programs on a virtual processor and can detect memory errors (e.g., misuse of malloc and free) and race conditions in multithread programs.&lt;br /&gt;
&lt;br /&gt;
It performs a [http://en.wikipedia.org/wiki/Dynamic_program_analysis Dynamic program analysis] (In a few words,dynamic stands for analysis performed while executing the program).&lt;br /&gt;
&lt;br /&gt;
It&#039;s very useful tool to track memory leaks&lt;br /&gt;
&lt;br /&gt;
 run-standalone.sh valgrind --tool=memcheck --leak-check=yes ./Application&lt;br /&gt;
or&lt;br /&gt;
 run-standalone.sh valgrind --leak-check=full ./Application&lt;br /&gt;
&lt;br /&gt;
You can learn more about valngrind at http://www.cprogramming.com/debugging/valgrind.html&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== [[Image:chart.png]] Qt benchmarks ==&lt;br /&gt;
2D graphic benchmark tools:&lt;br /&gt;
&lt;br /&gt;
* [[Qt/Benchmark/qgear|QGears]]&lt;br /&gt;
3D graphic benchmark tools:&lt;br /&gt;
&lt;br /&gt;
* TODO&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== [[Image:package.png]] Packaging a Qt application for Maemo ==&lt;br /&gt;
&lt;br /&gt;
{{main|Packaging a Qt application}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
== [[Image:Helmet.png]] Maemo Qt API Reference ==&lt;br /&gt;
&lt;br /&gt;
Maemo Qt is based on Qt for X11. It shares same APIs avoiding API breaks. In this way every Qt application that runs in other platforms (Windows, Mac OS X, Linux, S60, etc.) can run in Maemo devices as well. &lt;br /&gt;
To Develop a Qt application you can use the [http://doc.trolltech.com/4.5/index.html Official Qt 4.5 API documentation] and the list below to see what are the Maemo changes.&lt;br /&gt;
&lt;br /&gt;
===Diablo===&lt;br /&gt;
  &#039;&#039;&#039;QString QDesktopServices::storageLocation(StandardLocation type)&#039;&#039;&#039; returns specific Maemo locations for these types:&lt;br /&gt;
  - DesktopLocation:   QDir::homePath() + QLatin1String(&amp;quot;/MyDocs&amp;quot;),            instead of QDir::homePath() + QLatin1String(&amp;quot;/Desktop&amp;quot;)&lt;br /&gt;
  - DocumentsLocation: QDir::homePath() + QLatin1String(&amp;quot;/MyDocs/.documents&amp;quot;), instead of QDir::homePath() + QLatin1String(&amp;quot;/MyDocs/.documents&amp;quot;)&lt;br /&gt;
  - PicturesLocation:  QDir::homePath() + QLatin1String(&amp;quot;/MyDocs/.images&amp;quot;),    instead of QDir::homePath() + QLatin1String(&amp;quot;/Pictures&amp;quot;)&lt;br /&gt;
  - MusicLocation:     QDir::homePath() + QLatin1String(&amp;quot;/MyDocs/.sounds&amp;quot;),    instead of QDir::homePath() + QLatin1String(&amp;quot;/Music&amp;quot;)&lt;br /&gt;
  - MoviesLocation:    QDir::homePath() + QLatin1String(&amp;quot;/MyDocs/.videos&amp;quot;),    instead of QDir::homePath() + QLatin1String(&amp;quot;/MyDocs/.videos&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
  &#039;&#039;&#039;QTabletEvents&#039;&#039;&#039; are able to get the pressure value from the touchscreen.&lt;br /&gt;
   - The eventdeviceType is for the touchscreen is set to QTabletEvent::Stylus.&lt;br /&gt;
   - QTabletEvents won&#039;t be used anymore in Fremantle&lt;br /&gt;
  &lt;br /&gt;
  &#039;&#039;&#039;Finger poke&#039;&#039;&#039; is emulated in scratchbox by the Middle Mouse button (NOTE: There is no Fullscreen VKB in scratchbox)&lt;br /&gt;
 &lt;br /&gt;
  &#039;&#039;&#039;QInputEvents&#039;&#039;&#039; don&#039;t move the cursor. &lt;br /&gt;
  It&#039;s mandatory to get working the HIM moving the cursor via QInputMethodEvents.&lt;br /&gt;
  Why is it mandatory?  &lt;br /&gt;
  Because if the user select text with the finger from the right to the left, we are able to remove the highlighted text, but the&lt;br /&gt;
  cursor will be moved on the last char instead to stay on the first one.&lt;br /&gt;
   &lt;br /&gt;
  To do that some changes has been added to some widget function like: &#039;&#039;widget::inputMethodEvent(QInputMethodEvent *e)&#039;&#039;.&lt;br /&gt;
  Modifing that function in some custom widgets may be necessary.&lt;br /&gt;
  Don&#039;t reimplementing that function will break some fullscreen virtual keyboard features.&lt;br /&gt;
  &lt;br /&gt;
  &#039;&#039;&#039;Hardcoded Keys:&#039;&#039;&#039;&lt;br /&gt;
  In the QMainWindow:&lt;br /&gt;
  - F6 - Toggle fullscreen the application&lt;br /&gt;
  - F4 - Shows/Hides the application context menu&lt;br /&gt;
  - Zoom in  - is a standard [http://doc.trolltech.com/4.4/qkeysequence.html#StandardKey-enum key sequence] QKeySequence::ZoomIn&lt;br /&gt;
  - Zoom out - is a standard [http://doc.trolltech.com/4.4/qkeysequence.html#StandardKey-enum key sequence] QKeySequence::ZoomOut&lt;br /&gt;
&lt;br /&gt;
  &#039;&#039;&#039;Input Method:&#039;&#039;&#039;&lt;br /&gt;
  Maemo Qt uses the Hildon IM as default Input method.&lt;br /&gt;
  Each kind of widget can set the IM mode. This allows the input method to focus on the type of input that the application is expecting.&lt;br /&gt;
  Eg: spinboxes can receive only numeric characters (1-9).&lt;br /&gt;
  &lt;br /&gt;
  NOTE: Qt widgets like QTextEdit, QLineEdit... set the right input method mode automatically. &lt;br /&gt;
  &lt;br /&gt;
  A developer can change it by using:&lt;br /&gt;
    void QInputContext::setInputMode(int mode);&lt;br /&gt;
  It will update immediately the Hildon Input method to use the selected IM mode.  &lt;br /&gt;
  &lt;br /&gt;
  HIC Modes:&lt;br /&gt;
    HILDON_GTK_INPUT_MODE_ALPHA 	alphabetical characters and whitespace&lt;br /&gt;
    HILDON_GTK_INPUT_MODE_NUMERIC 	numbers 0-9 and the &#039;-&#039; character&lt;br /&gt;
    HILDON_GTK_INPUT_MODE_SPECIAL 	special characters&lt;br /&gt;
    HILDON_GTK_INPUT_MODE_HEXA 	hexadecimal characters; numbers 0-9, characters a-f, and A-F&lt;br /&gt;
    HILDON_GTK_INPUT_MODE_TELE 	telephone numbers; numbers 0-9, whitespace, and the characters &amp;quot;pwPW/().-+*#?,&amp;quot;&lt;br /&gt;
    HILDON_GTK_INPUT_MODE_FULL 	unrestricted entry mode, combination of the alpha, numeric and special modes.&lt;br /&gt;
    HILDON_GTK_INPUT_MODE_MULTILINE 	the client contains multiple lines of text or accepts linebreaks in the input.&lt;br /&gt;
    HILDON_GTK_INPUT_MODE_INVISIBLE 	do not echo or save the input in the IM when entering sensitive information such as passwords.&lt;br /&gt;
    HILDON_GTK_INPUT_MODE_AUTOCAP 	automatically capitalize the first letter at the start of a sentence.&lt;br /&gt;
    HILDON_GTK_INPUT_MODE_DICTIONARY 	enable predictive dictionaries and learning based on the input.&lt;br /&gt;
   &lt;br /&gt;
  Example:&lt;br /&gt;
    For a password field we need to set a specific IM mode:&lt;br /&gt;
    int mode = HILDON_GTK_INPUT_MODE_FULL | HILDON_GTK_INPUT_MODE_INVISIBLE&lt;br /&gt;
    QInputContext *qic = widget-&amp;gt;inputContext();&lt;br /&gt;
    qic-&amp;gt;setInputMode(mode);&lt;br /&gt;
  &lt;br /&gt;
  If you are developing a Custom widget able to receive input text, you can instruct your widget to use the right IM Mode just returning&lt;br /&gt;
  the mode.&lt;br /&gt;
  &lt;br /&gt;
  - How does it work?&lt;br /&gt;
  The Hildon IM sends a XMessage to pop up the &amp;quot;Virtual Keyboard&amp;quot; (or better the Main HIM UI) when an input widget receive the focus.&lt;br /&gt;
  The IM before to raise the VKB, makes an inputMethodQuery to the widget retrieving the IM mode.&lt;br /&gt;
  If the developer of the custom widget doesn&#039;t set the mode property, the IM will use HILDON_GTK_INPUT_MODE_FULL (the default mode) for that widget.&lt;br /&gt;
  &lt;br /&gt;
  Setting the ImMode is quite easy. Check the code below for more understanding.&lt;br /&gt;
  &lt;br /&gt;
  #ifdef Q_WS_HILDON&lt;br /&gt;
  #include &amp;lt;QInputContext&amp;gt;&lt;br /&gt;
  #endif&lt;br /&gt;
  &lt;br /&gt;
  QVariant QAbstractSpinBox::inputMethodQuery(Qt::InputMethodQuery query) const&lt;br /&gt;
  {    &lt;br /&gt;
    Q_D(const QAbstractSpinBox);&lt;br /&gt;
    switch(query) {&lt;br /&gt;
        case Qt::ImMode:{&lt;br /&gt;
            int mode = HILDON_GTK_INPUT_MODE_NUMERIC;&lt;br /&gt;
            return QVariant(mode);&lt;br /&gt;
        }&lt;br /&gt;
        default:&lt;br /&gt;
            return d-&amp;gt;edit-&amp;gt;inputMethodQuery(query);&lt;br /&gt;
    }&lt;br /&gt;
  }&lt;br /&gt;
&lt;br /&gt;
===FREMANTLE (Qt 4.5)===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====Kinetic scrolling====&lt;br /&gt;
Kinetic scrolling is enabled by default in QListWidgets and is supported by any Qt widget that inherits QScrollArea.&lt;br /&gt;
Any item view widgets (QTreeView/QTreeWidget, QListView, QTableView/QTableWidget...) can use fingerscroll if it has &amp;quot;FingerScrollable&amp;quot; dynamic property set to true.&lt;br /&gt;
Eg:&lt;br /&gt;
  QTableWidget *table = new QTableWidget(this);&lt;br /&gt;
  table-&amp;gt;setProperty(&amp;quot;FingerScrollable&amp;quot;, true); &lt;br /&gt;
&lt;br /&gt;
NOTE: Available in Qt &amp;gt; 4.5.3-xxxxx-maemo4&lt;br /&gt;
&lt;br /&gt;
====Hildon-Desktop widgets====&lt;br /&gt;
They are supported by Qt. An example (qt-example-hildondesktopwidget) is available in extras-devel.&lt;br /&gt;
&lt;br /&gt;
====Hildon menus====&lt;br /&gt;
Maemo5 menus are created using QActions available in menu bar. &lt;br /&gt;
Hidden, disabled, separators and widget actions won&#039;t shown. (Same in Qt 4.6)&lt;br /&gt;
&lt;br /&gt;
* qt-4.5.3-xxxx-maemo4 packages - needs QActions in a &amp;quot;fremantle&amp;quot; menu.&lt;br /&gt;
* Pkgs &amp;gt; qt-4.5.3-xxxx-maemo4 shows Maemo5 menus automatically&lt;br /&gt;
&lt;br /&gt;
Note: Maemo5 policy doesn&#039;t allow application to have more than 10 items.&lt;br /&gt;
&lt;br /&gt;
====Stackable windows====&lt;br /&gt;
http://maemomm.garage.maemo.org/docs/tutorial/figures/stackable-window.png&lt;br /&gt;
Are supported by Qt. To create them you need to create a MainWindow child of another Main window.&lt;br /&gt;
&lt;br /&gt;
 QMainWindow *fistStackableWindow = new QMainWindow;&lt;br /&gt;
 QMainWindow *secondStackableWindow = new QMainWindow(fistStackableWindow);&lt;br /&gt;
// you need the below line to see the back button on the top right hand corner of the stacked window instead of a cross&lt;br /&gt;
 secondStackableWindow-&amp;gt;setAttribute(Qt::WA_Maemo5StackedWindow);&lt;br /&gt;
&lt;br /&gt;
====Raise a Qt application in background====&lt;br /&gt;
QWidget::activateWindow() does the job.&lt;br /&gt;
&lt;br /&gt;
Implemented in Qt packages &amp;gt;= qt-4.5.3-xxxx-maemo6&lt;br /&gt;
==== How to minimize a Qt application? ====&lt;br /&gt;
 QDBusConnection c = QDBusConnection::sessionBus();&lt;br /&gt;
 QDBusMessage m = QDBusMessage::createSignal(&amp;quot;/&amp;quot;,&amp;quot;com.nokia.hildon_desktop&amp;quot;,&amp;quot;exit_app_view&amp;quot;);&lt;br /&gt;
 c.send(m);&lt;br /&gt;
&lt;br /&gt;
====Portrait mode and listening for orientation changes====&lt;br /&gt;
If you want to run your application in portrait mode then you can add these lines to your application. The code goes in your main widget constructor.&lt;br /&gt;
&lt;br /&gt;
 #ifdef Q_WS_HILDON&lt;br /&gt;
 //Includes for portrait mode support&lt;br /&gt;
 # include &amp;lt;X11/Xlib.h&amp;gt;&lt;br /&gt;
 # include &amp;lt;X11/Xatom.h&amp;gt;&lt;br /&gt;
 # include &amp;lt;QtGui/QX11Info&amp;gt;&lt;br /&gt;
 #endif&lt;br /&gt;
 &lt;br /&gt;
 #ifndef Q_WS_HILDON&lt;br /&gt;
 int value = 1;&lt;br /&gt;
 Atom portraitSupport = XInternAtom(QX11Info::display(), &amp;quot;_HILDON_PORTRAIT_MODE_SUPPORT&amp;quot;, false);&lt;br /&gt;
 Atom portraitRequest = XInternAtom(QX11Info::display(), &amp;quot;_HILDON_PORTRAIT_MODE_REQUEST&amp;quot;, false);&lt;br /&gt;
 XChangeProperty(QX11Info::display(), winId(), portraitSupport, XA_CARDINAL, 32, PropModeReplace, (uchar *)&amp;amp;value, 1);&lt;br /&gt;
 XChangeProperty(QX11Info::display(), winId(), portraitRequest, XA_CARDINAL, 32, PropModeReplace, (uchar *)&amp;amp;value, 1);&lt;br /&gt;
 #endif&lt;br /&gt;
&lt;br /&gt;
If you want to listen for orientation changes and then switch the view to landscape or potrait mode automatically than take a look at [[Maemo_Qt_Extra_Libraries]] for more information.&lt;br /&gt;
&lt;br /&gt;
==== QDockWidgets ====&lt;br /&gt;
QDockWidgets are not finger friendly widgets. They should not be used in Maemo.&lt;br /&gt;
In case you are porting an application to Maemo maybe you want to do&lt;br /&gt;
few changes as possible into your UI. Then you could use QDockWidget::setFeatures(QDockWidget::NoDockWidgetFeatures); to hide float and close button and lock the position of the dock widget.&lt;br /&gt;
&lt;br /&gt;
==== QPrint* and QSystemTray support missing ==== &lt;br /&gt;
 Printing (QPrint*) and System tray support is missing in current&lt;br /&gt;
 Qt 4.5.3-xxxx-maemo4 packages.&lt;br /&gt;
 Since incompatibility with KDE and other Qt application, they will be enabled again in next Qt 4.5.3 packages.&lt;br /&gt;
&lt;br /&gt;
==== QSplashScreen not fully compatible with Hildon-Desktop ====&lt;br /&gt;
 QSplashScreen&#039;s window type is not supported in Fremantle. The splash screen is&lt;br /&gt;
 shown in full screen and the image is repeated to fill the splash screen&#039;s&lt;br /&gt;
 window. When splash screen is closed normal window closing animation is shown&lt;br /&gt;
 before showing the actual application window. For these reasons developers are&lt;br /&gt;
 disencouraged to use splash screens in their applications.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===FREMANTLE (Qt 4.6)===&lt;br /&gt;
Here an example that shows several maemo5 Qt widgets in Qt 4.6.&lt;br /&gt;
&lt;br /&gt;
http://qt.nokia.com/doc/qt-maemo-4.6/examples-maemo5.html&lt;br /&gt;
&lt;br /&gt;
http://qt.gitorious.org/+qt-developers/qt/x11-maemo/trees/986340bb5e4b69ceb0a959c2a067a1ed5e504d50/examples/maemo5/widgets&lt;br /&gt;
&lt;br /&gt;
====Finger Scrolling====&lt;br /&gt;
* Qt 4.6 tp2&lt;br /&gt;
 &amp;lt;s&amp;gt;QListView listView;&lt;br /&gt;
 new QMaemo5KineticScroller(&amp;amp;listView);&amp;lt;/s&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;s&amp;gt;The ctor for QMaemo5KineticScroller for widgets seems protected now, hence the above cant be done.&lt;br /&gt;
So to have Kinetic Scrolling we can do this :&lt;br /&gt;
&lt;br /&gt;
 QAbstractScrollArea areaToScroll&lt;br /&gt;
 new QMaemo5KineticScroller(&amp;amp;areaToScroll);&amp;lt;/s&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Kinetic scrolling is *now* present by default in most scrolling widgets&lt;br /&gt;
eg. QTextBrowser, QTableView&lt;br /&gt;
&lt;br /&gt;
If you want to tweak the kinetic scrolling parameters like inertia and acceleration&lt;br /&gt;
then you can instaniate a QAbstractKineticScroller object like this.&lt;br /&gt;
&lt;br /&gt;
 QAbstractKineticScroller ks =  &lt;br /&gt;
   scrollArea-&amp;gt;property(&amp;quot;kineticScroller&amp;quot;).value&amp;lt;QAbstractKineticScroller *&amp;gt;();&lt;br /&gt;
&lt;br /&gt;
where scrollArea could be QScrollArea with some widgets added to it&lt;br /&gt;
or you could use implementations like QTextBrowser&lt;br /&gt;
&lt;br /&gt;
you can tweak scrolling like this&lt;br /&gt;
 ks-&amp;gt;setDragInertia( (double)value / 100.0)&lt;br /&gt;
 ks-&amp;gt;setMode(QAbstractKineticScroller::PushMode)&lt;br /&gt;
 &lt;br /&gt;
etc... , refer to the examples here for details ==&amp;gt; [http://qt.gitorious.org/+qt-developers/qt/x11-maemo/blobs/4.6-fremantle/examples/maemo5/kineticscroller/main.cpp]&lt;br /&gt;
&lt;br /&gt;
====QSplashScreen====&lt;br /&gt;
Should be fixed in Qt 4.6. SplashWindow type is not supported by Fremantle WM. Qt 4.6 display splash screen using popup window type.&lt;br /&gt;
&lt;br /&gt;
====Orientation====&lt;br /&gt;
[http://qt.nokia.com/doc/qt-maemo-4.6/maemo5-rotation.html Official documentation]&lt;br /&gt;
====Maemo5 Readme file====&lt;br /&gt;
There is a README file in Qt 4.6 source tree. You could check it clicking [http://qt.gitorious.org/+qt-developers/qt/x11-maemo/blobs/4.6-fremantle/README.maemo5 Here].&lt;br /&gt;
&lt;br /&gt;
== [[Image:Helmet.png]] Contributing to the Maemo Qt Project ==&lt;br /&gt;
&lt;br /&gt;
Maemo Qt is a community project. Contributing to the forum, sending us patches, give us feedbacks, tracking bugs are all activities that help us to improve the quality of our work.&lt;br /&gt;
&lt;br /&gt;
Here there is a list of things that every person interested in helping us should read.&lt;br /&gt;
&lt;br /&gt;
===Be updated===&lt;br /&gt;
Any Maemo Qt developer should be updated and should participate to the discussions, for that he must join the Mailing list.&lt;br /&gt;
BTW the mailing list is not for Maemo Qt Developers but it&#039;s open to Maemo Qt application developers too.&lt;br /&gt;
&lt;br /&gt;
=== Introduction to Git ===&lt;br /&gt;
If you are a git newbie you maybe find interesting these links:&lt;br /&gt;
* http://www.sourcemage.org/Git_Guide&lt;br /&gt;
* http://www.gitcasts.com/&lt;br /&gt;
* http://www.gnome.org/~newren/eg/git-for-svn-users.html&lt;br /&gt;
* Using the git protocol through a HTTP CONNECT proxy: http://www.emilsit.net/blog/archives/how-to-use-the-git-protocol-through-a-http-connect-proxy/&lt;br /&gt;
&lt;br /&gt;
===Understanding the structure of our Git repository===&lt;br /&gt;
These info are here:[[Qt Maemo Git Process]].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Preparation ===&lt;br /&gt;
Make sure each scratchbox target has&lt;br /&gt;
&lt;br /&gt;
  fakeroot apt-get build-dep libqt4-gui&lt;br /&gt;
&lt;br /&gt;
(you may need to apt-get install libgl-dev too as it&#039;s not in the Build-Depends: yet)&lt;br /&gt;
&lt;br /&gt;
===Building Qt from GIT rep===&lt;br /&gt;
&lt;br /&gt;
* Clone the repository:&lt;br /&gt;
 git clone git://gitorious.org/+qt-maemo-developers/qt/qt-maemo.git &lt;br /&gt;
or if you are a member of our team:&lt;br /&gt;
 git clone git@gitorious.org:+qt-maemo-developers/qt/qt-maemo.git&lt;br /&gt;
&lt;br /&gt;
* Change dir&lt;br /&gt;
 cd qt-maemo&lt;br /&gt;
&lt;br /&gt;
* Copy the remote 4.5 branch in your workingcopy&lt;br /&gt;
 git checkout -b 4.5 origin/4.5&lt;br /&gt;
&lt;br /&gt;
* Checkout ONE of these branches: &lt;br /&gt;
 git checkout -b qt-diablo    origin/qt-diablo&lt;br /&gt;
 git checkout -b qt-n900+w34 origin/qt-n900+w34&lt;br /&gt;
 git checkout -b qt-mer       origin/qt-mer&lt;br /&gt;
&lt;br /&gt;
* Build the packages:&lt;br /&gt;
 dpkg-buildpackage -rfakeroot -b&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Commit changes in SVN [OLD]===&lt;br /&gt;
&lt;br /&gt;
If you are a Maemo Qt developer and you want to save your changes in the Garage SVN but your project is not ready to go to the main line (trunk/qt-x11), you should create a private branch and then work there until the merging with the mainline.&lt;br /&gt;
&lt;br /&gt;
For that you have to create a your directory in branches/ named &#039;&#039;developer_name-qt&#039;&#039;. After that you can copy trunk/qt-x11 in your directory.&lt;br /&gt;
 svn copy --username developer_name https://garage.maemo.org/svn/qt4/trunk/qt-x11 https://garage.maemo.org/svn/qt4/branches/developer_name-qt -m &amp;quot;Creating private branch of trunk/qt-x11&amp;quot;&lt;br /&gt;
&lt;br /&gt;
NOTE: Subversion uses cheap copy, so them don&#039;t increase the size of the repository. Then feel free to create your own branch.&lt;br /&gt;
&lt;br /&gt;
===Merging branches changes in the mainline [OLD]===&lt;br /&gt;
&lt;br /&gt;
Before to merge your changes in the mainline, the code must be full working, cleaned and tested. A review from another developer is also needed in order to reduce the possibility to add errors.&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==[[Image:Help-contents.png]] F.A.Q.==&lt;br /&gt;
&lt;br /&gt;
=== I&#039;m trying to compile a Qt application for ARMEL, but I got the error below. What&#039;s wrong? ===&lt;br /&gt;
&lt;br /&gt;
 /targets/FREMANTLE_X86/usr/include/qt4/QtCore/qatomic_i386.h:127: error: impossible constraint in &#039;asm&#039;&lt;br /&gt;
&lt;br /&gt;
You are using x86 include files, then you have to update your Makefile. Running &amp;lt;code&amp;gt;qmake&amp;lt;/code&amp;gt; before &amp;lt;code&amp;gt;make&amp;lt;/code&amp;gt; will be solve this issue.&lt;br /&gt;
&lt;br /&gt;
=== I&#039;m trying to compile a Qt packcage for x86, but I got the error below. What&#039;s wrong? ===&lt;br /&gt;
&lt;br /&gt;
 In file included from maemo/gconfsymbols.cpp:41:&lt;br /&gt;
 maemo/gconfsymbols_p.h:49:25: gconf/gconf.h: No such file or directory&lt;br /&gt;
&lt;br /&gt;
Your scratchbox does not have &amp;lt;code&amp;gt;/bin/sh&amp;lt;/code&amp;gt;, so when calling &amp;lt;code&amp;gt;pkg-config&amp;lt;/code&amp;gt; from &amp;lt;code&amp;gt;qmake&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;CFLAGS&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;LIBS&amp;lt;/code&amp;gt; are not set correctly. Running &amp;lt;code&amp;gt;ln -s /scratchbox/tools/bin/sh /bin/sh&amp;lt;/code&amp;gt; will be solve this issue.&lt;br /&gt;
&lt;br /&gt;
=== I&#039;m trying to compile a diablo Qt package, so I just created a symbolic link, debian, for debian.diablo, and then run dpkg-buildpackage command, but I got a build error because the symbolic link was deleted. ===&lt;br /&gt;
&lt;br /&gt;
When running dpkg-buildpackage, all symbolic links will be deleted, so need to rename the folder from debian.diablo to debian to make a build of diablo Qt package.&lt;br /&gt;
&lt;br /&gt;
=== I installed Qt (libqt4-dev) to scratchbox and tried to build a sample application, but I got the error because some header files such as qhildonstyle.h, and qvfbhdr.h etc. were missing. ===&lt;br /&gt;
&lt;br /&gt;
libqt4-dev should copy all header files, but now, at least in 4.5.2-1maemo1, some files are missing. Please download file below and extract to your scratchbox system.&lt;br /&gt;
&lt;br /&gt;
http://qt4.garage.maemo.org/patches/qt4-missing-header.tgz&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===QML===&lt;br /&gt;
http://wiki.maemo.org/QML&lt;br /&gt;
&lt;br /&gt;
== References ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Development]]&lt;br /&gt;
[[Category:Qt]]&lt;/div&gt;</summary>
		<author><name>192.100.124.219</name></author>
	</entry>
	<entry>
		<id>https://maemo.octonezd.me/index.php?title=Qt-Maemo&amp;diff=34111</id>
		<title>Qt-Maemo</title>
		<link rel="alternate" type="text/html" href="https://maemo.octonezd.me/index.php?title=Qt-Maemo&amp;diff=34111"/>
		<updated>2010-01-20T07:17:03Z</updated>

		<summary type="html">&lt;p&gt;192.100.124.219: /* Image:Kblogger.png‎  News */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&lt;br /&gt;
&lt;br /&gt;
=[[Image:Kblogger.png‎ ]] News=&lt;br /&gt;
&amp;lt;div id=&amp;quot;news&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;tm&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;bm&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;lm&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;rm&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;tl&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;tr&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;bl&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;br&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;ul class=&amp;quot;recent&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;li class=&amp;quot;first&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;b&amp;gt;20 Gen 09&amp;lt;/b&amp;gt; - [http://www.anselmolsm.org/blog/qt-mobile-demos-in-extras-devel/ Qt Mobile Demos in extras-devel]&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
      &amp;lt;b&amp;gt;19 Gen 09&amp;lt;/b&amp;gt; - Qt 4.6 for Maemo 5 going Beta&amp;lt;br&amp;gt;&lt;br /&gt;
      &amp;lt;b&amp;gt;15 Gen 09&amp;lt;/b&amp;gt; - New Qt 4.5.3~git20090723-0maemo6 packages are now in Fremantle PR 1.1.&amp;lt;br&amp;gt;&lt;br /&gt;
  &lt;br /&gt;
      &amp;lt;b&amp;gt;22 Dec 09&amp;lt;/b&amp;gt; - [http://wiki.maemo.org/MADDE/Qt_Example Qt example] for [http://wiki.maemo.org/MADDE MADDE ] ([http://talk.maemo.org/showthread.php?t=38075 talk thread])&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
      &amp;lt;b&amp;gt;17 Dec 09&amp;lt;/b&amp;gt; - Qt declarative hits Maemo extras-devel repository [http://labs.trolltech.com/blogs/2009/12/17/qt-declarative-for-maemo-5/ more info here]&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
      &amp;lt;b&amp;gt;11 Dec 09&amp;lt;/b&amp;gt; - Bye bye old static web pages.. all our pages are now in Maemo Wiki. Old website is [http://qt4.garage.maemo.org/index-old.html here]&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;/li&amp;gt;&lt;br /&gt;
  &amp;lt;li&amp;gt;&lt;br /&gt;
      &amp;lt;b&amp;gt;[[Image:OtherNews.jpg‎]]&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
      &amp;lt;rss title=&amp;quot;off&amp;quot; desc=&amp;quot;off&amp;quot; number=&amp;quot;5&amp;quot; time=&amp;quot;3600&amp;quot; text&amp;gt;http://labs.trolltech.com/blogs/feed/rss/&amp;lt;/rss&amp;gt;&lt;br /&gt;
  &amp;lt;/li&amp;gt;&lt;br /&gt;
   &amp;lt;li&amp;gt;&lt;br /&gt;
  &amp;lt;b&amp;gt;[[Image:LastCommits.jpg‎]]&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
      &amp;lt;rss title=&amp;quot;off&amp;quot; desc=&amp;quot;off&amp;quot; number=&amp;quot;5&amp;quot; time=&amp;quot;3600&amp;quot; text&amp;gt;http://pipes.yahoo.com/pipes/pipe.run?_id=249549b5f3ea9af37a077bb103af6614&amp;amp;_render=rss&amp;lt;/rss&amp;gt;&lt;br /&gt;
  &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ul&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
.&lt;br /&gt;
&lt;br /&gt;
=[[Image:Intro.png]] What is Qt?=&lt;br /&gt;
Qt (pronounced as the English word &amp;quot;cute&amp;quot;) is a cross-platform application development framework.&lt;br /&gt;
&lt;br /&gt;
It is produced by Nokia&#039;s Qt Development Frameworks division, which came into being after Nokia&#039;s acquisition of the Norwegian company Trolltech.&lt;br /&gt;
&lt;br /&gt;
Qt uses standard C++, but makes extensive use of the C pre-processor to enrich the language. Qt can also be used in several other programming languages via language bindings. &lt;br /&gt;
&lt;br /&gt;
Distributed under the terms of the GNU Lesser General Public License (among others), Qt is free and open source software.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=[[Image:Rocket.png]] Maemo Qt main features=&lt;br /&gt;
* Hildon Style&lt;br /&gt;
* Hildon Input Method&lt;br /&gt;
* Optimizations&lt;br /&gt;
* Hildon specific widgets&lt;br /&gt;
** partial support in Qt 4.5&lt;br /&gt;
** Qt 4.6 will have full support&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= [[Image:Fileview-preview.png]] Maemo Qt in Actions =&lt;br /&gt;
* Diablo Maemo Qt&lt;br /&gt;
 ADD_HERE_SOME_PICS&lt;br /&gt;
* Fremantle Maemo Qt&lt;br /&gt;
 ADD HERE SOME PICS&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=[[Image:Pda.png]] Supported Maemo devices=&lt;br /&gt;
* Nokia N800/N810 (OS2008/Maemo4.1/Diablo)&lt;br /&gt;
* Nokia N900 (OS2009/Maemo5/Fremantle)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=[[Image:Ktorrent.png‎ ]] Installing Qt=&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div id=&amp;quot;news&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;tm&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;bm&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;lm&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;rm&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;tl&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;tr&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;bl&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;br&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;ul class=&amp;quot;recent&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;li class=&amp;quot;first&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;H3&amp;gt;N8x0&amp;lt;/H3&amp;gt;&lt;br /&gt;
Supported Maemo version: 4.1 (Diablo)&lt;br /&gt;
&lt;br /&gt;
Latest stable packages are into extras repository:&amp;lt;br&amp;gt;&lt;br /&gt;
deb http://repository.maemo.org/extras/ diablo free non-free&lt;br /&gt;
&lt;br /&gt;
Testing packages are in extras-devel&amp;lt;br&amp;gt;&lt;br /&gt;
deb http://repository.maemo.org/extras-devel/ diablo free non-free&lt;br /&gt;
&lt;br /&gt;
Install Qt binaries onto the device: &amp;lt;i&amp;gt;sudo gainroot &amp;amp;&amp;amp; apt-get install libqt4-gui&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Install Qt binaries and development packages into the SDK:&lt;br /&gt;
&amp;lt;i&amp;gt;fakeroot apt-get install libqt4-dev&amp;lt;/i&amp;gt;&lt;br /&gt;
  &amp;lt;/li&amp;gt;&lt;br /&gt;
  &amp;lt;li class=&amp;quot;&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;H3&amp;gt;N900&amp;lt;/H3&amp;gt;&lt;br /&gt;
Supported Maemo version: 5 (Fremantle)&lt;br /&gt;
&lt;br /&gt;
Qt core packages (qtcore, xml...) are pre-installed into the device. Rest of packages (GUI, webkit...) are in the Application repository (enabled by default in every device).&lt;br /&gt;
&lt;br /&gt;
They are downloaded automatically when user install application packages that depends from those.&lt;br /&gt;
&lt;br /&gt;
OVI store can host Maemo Qt Applications as well as other official Maemo repositories.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Qt 4.5 - community port&#039;&#039;&#039; core packages are already into the device. &lt;br /&gt;
&lt;br /&gt;
- Installing Qt binaries into the device: &amp;lt;i&amp;gt;sudo gainroot &amp;amp;&amp;amp; apt-get install libqt4-gui&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- Installing Qt binaries and development packages in scratchbox: &amp;lt;i&amp;gt;fakeroot apt-get install libqt4-dev&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Qt 4.6&#039;&#039;&#039; is still underdevelopment. It&#039;s in extras-devel; To install Qt 4.6:&lt;br /&gt;
&lt;br /&gt;
- Add add extras-devel repository to /etc/apt/source.list. You can do that adding following line to that file.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;i&amp;gt;deb http://repository.maemo.org/extras-devel/ fremantle free non-free&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- Run &amp;lt;i&amp;gt;apt-get update&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- Install lib packages into the device with: &amp;lt;i&amp;gt;fakeroot apt-get install libqt4-maemo5-gui&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- Install dev packages into the SDK with: &amp;lt;i&amp;gt;fakeroot apt-get install libqt4-maemo5-dev&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Note: &lt;br /&gt;
&lt;br /&gt;
- Qt 4.6tp is installed to /opt/qt4-maemo5&lt;br /&gt;
  &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ul&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=[[Image:Available-qtapps-32.png‎ ]]Available and proposed Qt Applications=&lt;br /&gt;
If you want to port a Qt application to Maemo or if you want to check if an application you love has been already ported.. well [http://wiki.maemo.org/Qt4HildonApplications this] is the place you would like to check; &lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=[[Image:Help-contents.png]] Docs=&lt;br /&gt;
&amp;lt;b&amp;gt;Qt:&amp;lt;/b&amp;gt;&lt;br /&gt;
* [http://wiki.maemo.org/Qt4Hildon Qt 4 Hildon]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Non-Qt stuff:&amp;lt;/b&amp;gt;&lt;br /&gt;
* Fremantle: &lt;br /&gt;
** [http://sw.nokia.com/id/a3187f95-ad88-4233-b0ef-a182da3ec1c7/Hildon_2_2_Widget_UI_Specification_v1_0_en.pdf Hildon 2.2 Widget UI Spec -PDF]&lt;br /&gt;
** [http://www.forum.nokia.com/info/sw.nokia.com/id/eb8a68ba-6225-4d84-ba8f-a00e4a05ff6f/Hildon_2_2_UI_Style_Guide.html Hildon 2.2 UI Style Guid -PDF]&lt;br /&gt;
* Diablo&lt;br /&gt;
** ADD_SOMETHING_HERE&lt;br /&gt;
* Other Docs&lt;br /&gt;
** [http://www.forum.nokia.com/Tools_Docs_and_Code/Documentation/Latest.xhtml Forum Nokia Docs] contain Maemo as well as other documentation related to other Nokia platforms.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=[[Image:Bug.png]] Bug tracking=&lt;br /&gt;
* Diablo &amp;amp; Fremanlte Qt 4.5 port&lt;br /&gt;
** [https://bugs.maemo.org/buglist.cgi?query_format=specific&amp;amp;order=relevance+desc&amp;amp;bug_status=__open__&amp;amp;product=Qt&amp;amp;content= View bug list]&lt;br /&gt;
** [https://bugs.maemo.org/enter_bug.cgi?product=Qt Report a new bug]&lt;br /&gt;
* Fremantle Qt 4.6 port&lt;br /&gt;
** [http://doc.trolltech.com/4.6/bughowto.html How to report a bug]&lt;br /&gt;
** [http://bugreports.qt.nokia.com/secure/CreateIssue!default.jspa Report a new bug]&lt;br /&gt;
** [http://bugreports.qt.nokia.com/secure/IssueNavigator.jspa?reset=true&amp;amp;&amp;amp;query=maemo&amp;amp;summary=true&amp;amp;description=true&amp;amp;body=true&amp;amp;environment=true&amp;amp;pid=10510 View bug list]&lt;br /&gt;
&lt;br /&gt;
=[[Image:Helmet.png]] Code=&lt;br /&gt;
* Qt 4.5 (Diablo)&lt;br /&gt;
** http://gitorious.org/+qt-maemo-developers/qt/qt-maemo&lt;br /&gt;
* Qt 4.5 (Fremantle)&lt;br /&gt;
** http://gitorious.org/+qt-maemo-developers/qt/qt-maemo&lt;br /&gt;
* Qt 4.6 (Fremantle)&lt;br /&gt;
** http://qt.gitorious.org/qt/x11-maemo&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=[[Image:Preferences-desktop-user.png]] Get Help=&lt;br /&gt;
* Forums&lt;br /&gt;
** [http://discussion.forum.nokia.com/forum/forumdisplay.php?f=220 Qt for Maemo Forum Nokia Discussion board]&lt;br /&gt;
** [https://garage.maemo.org/forum/?group_id=424 Old qt4.garage.maemo.org forum]&lt;br /&gt;
* IRC&lt;br /&gt;
** Official Qt for Maemo IRC Channel&lt;br /&gt;
** Click [http://webchat.freenode.net/?channels=qt-maemo here] to join the #qt-maemo channel in frenode (irc.freenode.net).&lt;br /&gt;
&lt;br /&gt;
* Mailing list&lt;br /&gt;
** [https://garage.maemo.org/mailman/listinfo/qt4-devel Click here to Subscribe to the Qt community ML]&lt;/div&gt;</summary>
		<author><name>192.100.124.219</name></author>
	</entry>
	<entry>
		<id>https://maemo.octonezd.me/index.php?title=Qt4_Hildon_Legacy&amp;diff=34271</id>
		<title>Qt4 Hildon Legacy</title>
		<link rel="alternate" type="text/html" href="https://maemo.octonezd.me/index.php?title=Qt4_Hildon_Legacy&amp;diff=34271"/>
		<updated>2010-01-19T15:14:09Z</updated>

		<summary type="html">&lt;p&gt;192.100.124.219: /* Checking out all the remote branches */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Image:MaemoQtPicture.png]]&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
== [[Image:Intro.png]] Intro ==&lt;br /&gt;
&lt;br /&gt;
=== Maemo Platform ===&lt;br /&gt;
&lt;br /&gt;
The Maemo Platform is the software stack for Nokia Internet Tablets, which includes the Maemo operating system and the Maemo SDK. The Maemo Platform is mostly based on open source code, and has been developed by the Maemo Software department within Nokia in collaboration with many open source projects such as the Linux kernel, Debian, and GNOME.&amp;lt;ref&amp;gt;[http://en.wikipedia.org/wiki/Maemo_Platform Maemo Platform on Wikipedia]&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[http://maemo.org/intro/platform/ Read more...]&lt;br /&gt;
&lt;br /&gt;
=== What is Hildon? ===&lt;br /&gt;
&lt;br /&gt;
Hildon is an application framework for Linux operating system mobile devices (PDAs, mobile phones, etc), developed by Nokia for Maemo and now a part of GNOME, that focuses on providing a finger friendly interface.&amp;lt;ref&amp;gt;[http://en.wikipedia.org/wiki/Hildon Hildon on Wikipedia]&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[http://live.gnome.org/Hildon Read more...]&lt;br /&gt;
&lt;br /&gt;
=== Developing on Maemo ===&lt;br /&gt;
&lt;br /&gt;
Developing applications for Maemo is done with the Maemo SDK. The process from creating the first prototype of your application to distributing to a wide audience consists basically of three steps:&lt;br /&gt;
&lt;br /&gt;
* Share your application project in the [http://garage.maemo.org Garage].&lt;br /&gt;
* Make your application easy to install and put in the [[Extras]].&lt;br /&gt;
* Once your application has a high quality - be promoted to the [http://www.nokia.com/os2008 Nokia user site].&lt;br /&gt;
&lt;br /&gt;
[http://maemo.org/intro/developer_overview/ Read more...]&lt;br /&gt;
&lt;br /&gt;
=== Maemo SDK ===&lt;br /&gt;
&lt;br /&gt;
The Maemo SDK is based around the Debian-oriented Scratchbox Cross Compilation Toolkit, which provides a sandbox environment in which development may take place. Scratchbox uses Qemu to emulate an ARMEL processor or sbrsh to remotely execute instructions. Scratchbox-compatible rootstraps are available for both x86 and ARMEL, so the majority of development and debugging takes place on x86, with final packaging being for ARMEL.&amp;lt;ref&amp;gt;[http://en.wikipedia.org/wiki/Maemo_Platform#Maemo_SDK Maemo SDK on Wikipedia]&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[http://www.youtube.com/watch?v=c8myh_iBy8k Watch the Maemo SDK in action!]&lt;br /&gt;
&lt;br /&gt;
=== What is Scratchbox? ===&lt;br /&gt;
&lt;br /&gt;
Scratchbox is a cross compilation toolkit designed to make embedded Linux application development easier. It also provides a full set of tools to integrate and cross compile an entire Linux distribution.&amp;lt;ref&amp;gt;[http://en.wikipedia.org/wiki/Scratchbox Scratchbox on Wikipedia]&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[http://www.scratchbox.org/ Read more...]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== [[Image:Rocket.png]] Getting started ==&lt;br /&gt;
&lt;br /&gt;
To start to develop with Maemo Qt, we need to install the Maemo SDK on a Linux machine.&lt;br /&gt;
&lt;br /&gt;
=== Hey, I don&#039;t have a Linux machine! ===&lt;br /&gt;
That&#039;s not a big problem. You can run Maemo SDK in a virtual machine;&lt;br /&gt;
You can download Maemo SDK virtual Image (Linux Ubuntu + Diablo and Fremantle SDK)&lt;br /&gt;
from [http://tablets-dev.nokia.com/maemo-dev-env-downloads.php tablets-dev.nokia.com].&lt;br /&gt;
You can get VMPlayer from [http://www.vmware.com/products/player/ here].&lt;br /&gt;
&lt;br /&gt;
=== Installing the Maemo SDK ===&lt;br /&gt;
Maemo SDK can be installaed in any Linux environment.&lt;br /&gt;
However Debian based distros (eg: Ubuntu) are recommended.&lt;br /&gt;
&lt;br /&gt;
Documentation you need to install Maemo SDK is [http://maemo.org/development/sdks/ here].&lt;br /&gt;
&lt;br /&gt;
=== Installing Qt packages in Scratchbox ===&lt;br /&gt;
Maemo Qt developers offers a set of Qt packages for Diablo (Maemo4.1 - OS2008)&lt;br /&gt;
and Fremantle (Maemo5 - OS2009).&lt;br /&gt;
&lt;br /&gt;
==== Diablo ====&lt;br /&gt;
Diablo Qt packages are into the official Extras repository.&lt;br /&gt;
In order to start to develop with those packages you need to add&lt;br /&gt;
extras repository to your repository list.&lt;br /&gt;
&lt;br /&gt;
 1. Open /etc/apt/source.list with a text editor (eg: kate, gedit...)&lt;br /&gt;
 2. Append the following line to that file: &lt;br /&gt;
     deb http://repository.maemo.org/extras/ diablo free non-free&lt;br /&gt;
 3. Then update your APT cache with&lt;br /&gt;
      &amp;lt;i&amp;gt;apt-get update&amp;lt;/i&amp;gt;&lt;br /&gt;
 4. Install Qt packages with&lt;br /&gt;
      &amp;lt;i&amp;gt;apt-get install libqt4-dev&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Fremantle ====&lt;br /&gt;
You don&#039;t need to add any extra repository for Fremantle since Qt packages are already available into the SDK. You can find more information on installing Qt on Fremantle, and help improve Qt on Maemo, [[QT/Testing | on the Qt testing page]].&lt;br /&gt;
&lt;br /&gt;
Then you can install Qt with:&lt;br /&gt;
  [sbox-FREMANTLE_X86: ~] &amp;gt; fakeroot apt-get install libqt4-gui libqt4-dev&lt;br /&gt;
&lt;br /&gt;
==== Using Qt 4.6 Betas in Fremantle ====&lt;br /&gt;
If you want to test your applications with the latest Qt 4.6 Beta version, either compile it [[Qt_Maemo_Git_Process|directly from the git repos]] or install the libqt4-maemo5-dev package.&lt;br /&gt;
&lt;br /&gt;
For the latter you need to enable access to the extra devel repositories first (if you haven&#039;t done so yet). Inside of scratchbox, for your i486 target (ARM is very similar), do the following:&lt;br /&gt;
&lt;br /&gt;
  [sbox-FREMANTLE_X86: ~] &amp;gt; fakeroot echo &amp;quot;deb http://repository.maemo.org/extras/ fremantle free non-free&amp;quot; &amp;gt;&amp;gt; /etc/apt/sources.list&lt;br /&gt;
  [sbox-FREMANTLE_X86: ~] &amp;gt; fakeroot echo &amp;quot;deb-src http://repository.maemo.org/extras/ fremantle free&amp;quot; &amp;gt;&amp;gt; /etc/apt/sources.list&lt;br /&gt;
  [sbox-FREMANTLE_X86: ~] &amp;gt; fakeroot echo &amp;quot;deb http://repository.maemo.org/extras-devel fremantle free non-free&amp;quot; &amp;gt;&amp;gt; /etc/apt/sources.list&lt;br /&gt;
  [sbox-FREMANTLE_X86: ~] &amp;gt; fakeroot echo &amp;quot;deb-src http://repository.maemo.org/extras-devel fremantle free&amp;quot; &amp;gt;&amp;gt; /etc/apt/sources.list&lt;br /&gt;
&lt;br /&gt;
To install the tech preview:&lt;br /&gt;
  [sbox-FREMANTLE_X86: ~] &amp;gt; fakeroot apt-get update&lt;br /&gt;
  [sbox-FREMANTLE_X86: ~] &amp;gt; fakeroot apt-get remove libqt4*&lt;br /&gt;
  [sbox-FREMANTLE_X86: ~] &amp;gt; fakeroot apt-get install libqt4-maemo5-dev&lt;br /&gt;
&lt;br /&gt;
Qt is installed to /opt/qt4-maemo5.&lt;br /&gt;
&lt;br /&gt;
If you happen to use autotools, this will recompile the code against the beta:&lt;br /&gt;
  [sbox-FREMANTLE_X86: ~] &amp;gt; cd ~/your/project/folder&lt;br /&gt;
  [sbox-FREMANTLE_X86: ~] &amp;gt; make distclean #dont worry if it fails&lt;br /&gt;
  [sbox-FREMANTLE_X86: ~] &amp;gt; ./autogen.sh QT_PATH=/opt/qt4-maemo5/bin&lt;br /&gt;
  [sbox-FREMANTLE_X86: ~] &amp;gt; make&lt;br /&gt;
&lt;br /&gt;
For qmake you might have to set the QT_INSTALL_PREFIX correctly.&lt;br /&gt;
&lt;br /&gt;
===How to compile a Qt application in scratchbox===&lt;br /&gt;
Qt applications are usually built using QMake. Project like KDE instead replaced&lt;br /&gt;
QMake with CMake for more flexibility.&lt;br /&gt;
 &lt;br /&gt;
==== QMake ====&lt;br /&gt;
[http://doc.trolltech.com/4.5/qmake-manual.html QMake] is a tool from Trolltech that helps simplify the build process for development project across different platforms&lt;br /&gt;
&lt;br /&gt;
You can build your Maemo Qt application in 3 simple steps:&lt;br /&gt;
 1. Generating project file [Required if there is not .pro file into the app source tree]&lt;br /&gt;
    &amp;lt;i&amp;gt;qmake -project&amp;lt;/i&amp;gt;&lt;br /&gt;
 2. Generating Makefile from the QMake project file:&lt;br /&gt;
    qmake file.pro&lt;br /&gt;
 3. make&lt;br /&gt;
&lt;br /&gt;
==== CMake ====&lt;br /&gt;
&lt;br /&gt;
As told before it&#039;s not a standard tool but it&#039;s largely used from people and application coming from the [[KDE]] world.&lt;br /&gt;
&lt;br /&gt;
Because of some issue with [[CMake]], [[Diablo]] CMake packages are currently useless since CMake segfaults (on the device at least).&lt;br /&gt;
&lt;br /&gt;
This issue has been solved in [[Fremantle]] and CMake packages that comes from Fremantle [[SDK]] work nicely.&lt;br /&gt;
&lt;br /&gt;
 - CMake projects has usually a CMakeLists.txt file instead of &lt;br /&gt;
     - .pro file used by QMake projects&lt;br /&gt;
     - Makefile.am used by Autotools projects (standard in Unix/[[Linux]])&lt;br /&gt;
&lt;br /&gt;
Using CMake to build the project is extremely easy.&lt;br /&gt;
In the directory containing CMakeLists.txt, supply the following two commands, where path is the path to the source code.&lt;br /&gt;
&lt;br /&gt;
 - cmake path&lt;br /&gt;
 - make&lt;br /&gt;
&lt;br /&gt;
Note: CMake is not installed by default in [[scratchbox]]. You can install it with&lt;br /&gt;
 &amp;lt;i&amp;gt;fakeroot apt-get install cmake&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Running a Qt application in: ===&lt;br /&gt;
====A. Scratchbox====&lt;br /&gt;
Diablo and Fremantle Qt applications can run into the device as into scratchbox.&lt;br /&gt;
&lt;br /&gt;
First step to run a Qt application is starting the SDK UI:&lt;br /&gt;
 &lt;br /&gt;
1. Run Xephyr. It&#039;s able to run a [http://en.wikipedia.org/wiki/X_Window_System  X Server] inside another X Server. &lt;br /&gt;
 &amp;lt;i&amp;gt;Xephyr :2 -host-cursor -screen 800x480x16 -dpi 96 -ac -kb&amp;lt;/i&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
2. Set display for application that runs inside scratchbox&lt;br /&gt;
 &amp;lt;i&amp;gt;&amp;lt;b&amp;gt;[sbox-DIABLO_&amp;lt;target&amp;gt;:~] &amp;gt;&amp;lt;/b&amp;gt; export DISPLAY=:2&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
3. You can now run the SDK UI. Diablo or Fremantle desktop will appear into your Xephyr window:&lt;br /&gt;
 &amp;lt;i&amp;gt;&amp;lt;b&amp;gt;[sbox-DIABLO_&amp;lt;target&amp;gt;:~] &amp;gt;&amp;lt;/b&amp;gt; af-sb-init.sh start&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
4. Now you are ready to run any Maemo or Maemo Qt application with&lt;br /&gt;
 &amp;lt;i&amp;gt;&amp;lt;b&amp;gt;[sbox-DIABLO_&amp;lt;target&amp;gt;:~] &amp;gt;&amp;lt;/b&amp;gt; run-standalone.sh ./qtapps&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Note: run-standalone.sh sets some variable needed by Qt to use the Hildon style.&lt;br /&gt;
&lt;br /&gt;
====B. device====&lt;br /&gt;
Maemo Qt applications are linux binaries. They can run into the device without any problem if you copy it/them in &amp;quot;partitions&amp;quot; mounted with exec flag. (Eg: /home/user or /opt in Fremantle).&lt;br /&gt;
&lt;br /&gt;
Eg: If we want to run quassel (Qt IRC Client) we have to launch it with:&lt;br /&gt;
 &amp;lt;b&amp;gt;Nokia-N900-44-1:/home/user#&amp;lt;/b&amp;gt; su -c ./quassel user&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== [[Image:Hammer.png]] Porting Qt applications to Maemo ==&lt;br /&gt;
&lt;br /&gt;
===Intro===&lt;br /&gt;
&lt;br /&gt;
Porting a Qt desktop application to Maemo requires very little effort. This because the Maemo Qt libraries will take care of giving the Hildon look &amp;amp; Feel and enabling the virtual input methods for your application.&lt;br /&gt;
&lt;br /&gt;
===Overriding the Qt Maemo changes===&lt;br /&gt;
&lt;br /&gt;
====Maemo Style====&lt;br /&gt;
Hildon Style is the default Qt application style. Other style available are:&lt;br /&gt;
* [http://doc.trolltech.com/4.4/gallery-cleanlooks.html QCleanLooks]&lt;br /&gt;
* [http://doc.trolltech.com/4.4/gallery-windows.html Windows]&lt;br /&gt;
* [http://doc.trolltech.com/4.4/gallery-plastique.html Plastique]&lt;br /&gt;
&lt;br /&gt;
Qt application can use other Qt styles;&lt;br /&gt;
* Running your application with the style flag:&lt;br /&gt;
&amp;lt;i&amp;gt;./qt-test-application -style windows&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Using [http://doc.trolltech.com/4.4/qapplication.html#setStyle QApplication::setStyle( QStyle * style )]&lt;br /&gt;
&lt;br /&gt;
* If you want to change the style of a widget:[http://doc.trolltech.com/4.4/qwidget.html#setStyle QWidget::setStyle( QStyle * style )]&lt;br /&gt;
&lt;br /&gt;
====Showing the status bar====&lt;br /&gt;
&lt;br /&gt;
Hildon applications don&#039;t have a status bar. Qt for Maemo hides the status bar by default.&lt;br /&gt;
&lt;br /&gt;
You can show it again by using method &#039;&#039;statusBar()-&amp;gt;show()&#039;&#039; in your class derived from QMainWindow.&lt;br /&gt;
&lt;br /&gt;
====Using the Kinetic Finger Scrolling (cf Gtk&#039;s PannableArea)====&lt;br /&gt;
See [[Qt/Finger Scrolling|Finger Scrolling]]&lt;br /&gt;
&lt;br /&gt;
===Adding Maemo changes to a Qt Application===&lt;br /&gt;
&lt;br /&gt;
Some methods of Qt for Maemo are not available in the &amp;quot;standard&amp;quot; Qt libs, so a Qt application with specific Maemo Qt code can&#039;t be built outside the Maemo SDK. To avoid this issue, the developer can use the preprocessor directives, for example:&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;b&amp;gt;Qt 4.5 (Diablo and Fremantle)&amp;lt;/b&amp;gt;&lt;br /&gt;
 #ifdef Q_WS_HILDON&lt;br /&gt;
    //Specific hildon/Maemo5 code here &lt;br /&gt;
 #endif&lt;br /&gt;
&lt;br /&gt;
Qt project files can load hildon files using: (check [http://doc.trolltech.com/4.5/qmake-function-reference.html qmake ref guide] for more info about qmake options)&lt;br /&gt;
 contains(QT_CONFIG, hildon): {&lt;br /&gt;
    message(&amp;quot;Hello Hildon&amp;quot;)&lt;br /&gt;
    SOURCE += hildon.cpp&lt;br /&gt;
    HEADER += hildon.h&lt;br /&gt;
    FORMS   += hildon.ui&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;b&amp;gt;Qt 4.6 (Fremantle)&amp;lt;/b&amp;gt;&lt;br /&gt;
Q_WS_HILDON has been replaced by Q_WS_MAEMO_5 in Qt 4.6 and Qt 4.5 &amp;quot;contains(QT_CONFIG, hildon):{}&amp;quot; does same job of Qt 4.6 &amp;quot;maemo5 {}&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
 #ifdef Q_WS_MAEMO_5&lt;br /&gt;
    //specific hildon/maemo5 code here&lt;br /&gt;
 #endif&lt;br /&gt;
&lt;br /&gt;
 maemo5 {&lt;br /&gt;
    message(&amp;quot;Hello Hildon&amp;quot;)&lt;br /&gt;
    SOURCE += hildon.cpp&lt;br /&gt;
    HEADER += hildon.h&lt;br /&gt;
    FORMS   += hildon.ui&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
===Limitations===&lt;br /&gt;
&lt;br /&gt;
Currently Qt Maemo lacks full support for Hildon widgets introduced in Maemo 5. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;At the moment, creating a Qt application that follows Maemo 5 UI Style requires using custom Qt widgets, coded within the application itself&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
There is work ongoing to provide Qt Hildon widgets for Maemo 5, see [http://wiki.maemo.org/Qt4_Hildon/Qt_Hildon_Widgets Qt Hildon Widgets]&lt;br /&gt;
&lt;br /&gt;
To get the benefits of the ongoing Maemo 5 hildon integration work in Qt, you must get the latest Qt source code and compile it yourself. See [http://wiki.maemo.org/Qt4_Hildon#Building_Qt_from_GIT_rep Building Qt from GIT repository].&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== [[Image:Bug.png]] Debugging a Qt application ==&lt;br /&gt;
&lt;br /&gt;
===GDB ===&lt;br /&gt;
&lt;br /&gt;
====Intro ====&lt;br /&gt;
&lt;br /&gt;
The GNU Project Debugger, or gdb for short, is a general purpose debugger that can be used for various debugging purposes.&lt;br /&gt;
&lt;br /&gt;
====Debugging a Qt application in Scratchbox====&lt;br /&gt;
&lt;br /&gt;
TODO&lt;br /&gt;
&lt;br /&gt;
====Debugging a Qt application on device====&lt;br /&gt;
=====Using gdb=====&lt;br /&gt;
Fast way is running gdb ./your app.&lt;br /&gt;
&lt;br /&gt;
=====Using gdb &amp;amp; gdbserver=====&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Installing gdb on the device.&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Add the [http://maemo.org/development/tools/ SDK tools] repository to the catalogue list.&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;install gdb by using apt-get (require around 6 MB of space)&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Install the debug symbols files in scratchbox (ARMEL target)&amp;lt;/li&amp;gt;&lt;br /&gt;
 apt-get install libqt4-dbg&lt;br /&gt;
&amp;lt;li&amp;gt;Run the application (device side)&amp;lt;/li&amp;gt;&lt;br /&gt;
 $gdbserver 0.0.0.0:1234 ./qtApplication&lt;br /&gt;
&amp;lt;li&amp;gt;Run the gdb client on your host PC (scratchbox side)&amp;lt;/li&amp;gt;&lt;br /&gt;
 [sbox-DIABLO_ARMEL: ~/TEST/svn/qt4-x11-4.4.0/examples/widgets/tablet] &amp;gt; gdb ./qtApplication&lt;br /&gt;
&amp;lt;li&amp;gt;Set the target of gdb&amp;lt;/li&amp;gt;&lt;br /&gt;
 (gdb) target remote 172.21.37.117:1234&lt;br /&gt;
&amp;lt;li&amp;gt;Tell to gdb to continue to debug the application on the device&amp;lt;/li&amp;gt;&lt;br /&gt;
 (gdb) continue&lt;br /&gt;
&amp;lt;li&amp;gt;Wait some moments...&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;If necessary you can put break points; eg: for void QWidget::setPalette ( const QPalette &amp;amp; )&amp;lt;/li&amp;gt;&lt;br /&gt;
 (gdb) break QWidget::setPalette(QPalette const&amp;amp;)&lt;br /&gt;
 Breakpoint 1 at 0x4026ae68&lt;br /&gt;
&lt;br /&gt;
&amp;lt;li&amp;gt;Your application will appear on the device screen. Happy debugging!&amp;lt;/li&amp;gt;&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Note&#039;&#039;&#039;: Fremantle Gdb 6.8 crashes in x86 and gives messed up backtraces onto the device. Using gdb 7.0 is recommended. You can get gdb 7.0 sources fromhttp://ftp.de.debian.org/debian/pool/main/g/gdb/gdb_7.0.orig.tar.gz, compile it (./configure &amp;amp;&amp;amp; make) inside X86 and armel scratchbox targets.&lt;br /&gt;
[http://chaos.troll.no/~harald/gdb7/ Here you can find GDB7 for fremantle x86 and armel]&lt;br /&gt;
&lt;br /&gt;
===Links===&lt;br /&gt;
&lt;br /&gt;
* [http://www.gnu.org/software/gdb/documentation/ GDB documentation &amp;amp; tutorials]&lt;br /&gt;
* [http://maemo.org/development/documentation/man_pages/gdbserver/ GDBServer man page]&lt;br /&gt;
* [http://maemo.org/maemo_release_documentation/maemo4.1.x/node15.html Maemo debugging guide]&lt;br /&gt;
* [http://repository.maemo.org/pool/diablo/free/g/gdb/ gdb debian package for Diablo]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== [[Image:chart.png]] Profiling a Qt application ==&lt;br /&gt;
&lt;br /&gt;
=== OProfile ===&lt;br /&gt;
&lt;br /&gt;
OProfile is a low overhead system-wide profiler for Linux. It can be used to find CPU usage bottlenecks in the whole system and within processes. It works fine in the device, but viewing the reports can take quite a long time (10 minutes) when fired up on N800/N810 devices. Therefore, it often makes sense to run opreport in scratchbox.&lt;br /&gt;
&lt;br /&gt;
If you want to know more about OProfile in Maemo see the [http://maemo.org/development/tools/doc/chinook/oprofile/ documentation].&lt;br /&gt;
&lt;br /&gt;
=== Valgrind ===&lt;br /&gt;
Valgrind runs programs on a virtual processor and can detect memory errors (e.g., misuse of malloc and free) and race conditions in multithread programs.&lt;br /&gt;
&lt;br /&gt;
It performs a [http://en.wikipedia.org/wiki/Dynamic_program_analysis Dynamic program analysis] (In a few words,dynamic stands for analysis performed while executing the program).&lt;br /&gt;
&lt;br /&gt;
It&#039;s very useful tool to track memory leaks&lt;br /&gt;
&lt;br /&gt;
 run-standalone.sh valgrind --tool=memcheck --leak-check=yes ./Application&lt;br /&gt;
or&lt;br /&gt;
 run-standalone.sh valgrind --leak-check=full ./Application&lt;br /&gt;
&lt;br /&gt;
You can learn more about valngrind at http://www.cprogramming.com/debugging/valgrind.html&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== [[Image:chart.png]] Qt benchmarks ==&lt;br /&gt;
2D graphic benchmark tools:&lt;br /&gt;
&lt;br /&gt;
* [[Qt/Benchmark/qgear|QGears]]&lt;br /&gt;
3D graphic benchmark tools:&lt;br /&gt;
&lt;br /&gt;
* TODO&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== [[Image:package.png]] Packaging a Qt application for Maemo ==&lt;br /&gt;
&lt;br /&gt;
{{main|Packaging a Qt application}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
== [[Image:Helmet.png]] Maemo Qt API Reference ==&lt;br /&gt;
&lt;br /&gt;
Maemo Qt is based on Qt for X11. It shares same APIs avoiding API breaks. In this way every Qt application that runs in other platforms (Windows, Mac OS X, Linux, S60, etc.) can run in Maemo devices as well. &lt;br /&gt;
To Develop a Qt application you can use the [http://doc.trolltech.com/4.5/index.html Official Qt 4.5 API documentation] and the list below to see what are the Maemo changes.&lt;br /&gt;
&lt;br /&gt;
===Diablo===&lt;br /&gt;
  &#039;&#039;&#039;QString QDesktopServices::storageLocation(StandardLocation type)&#039;&#039;&#039; returns specific Maemo locations for these types:&lt;br /&gt;
  - DesktopLocation:   QDir::homePath() + QLatin1String(&amp;quot;/MyDocs&amp;quot;),            instead of QDir::homePath() + QLatin1String(&amp;quot;/Desktop&amp;quot;)&lt;br /&gt;
  - DocumentsLocation: QDir::homePath() + QLatin1String(&amp;quot;/MyDocs/.documents&amp;quot;), instead of QDir::homePath() + QLatin1String(&amp;quot;/MyDocs/.documents&amp;quot;)&lt;br /&gt;
  - PicturesLocation:  QDir::homePath() + QLatin1String(&amp;quot;/MyDocs/.images&amp;quot;),    instead of QDir::homePath() + QLatin1String(&amp;quot;/Pictures&amp;quot;)&lt;br /&gt;
  - MusicLocation:     QDir::homePath() + QLatin1String(&amp;quot;/MyDocs/.sounds&amp;quot;),    instead of QDir::homePath() + QLatin1String(&amp;quot;/Music&amp;quot;)&lt;br /&gt;
  - MoviesLocation:    QDir::homePath() + QLatin1String(&amp;quot;/MyDocs/.videos&amp;quot;),    instead of QDir::homePath() + QLatin1String(&amp;quot;/MyDocs/.videos&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
  &#039;&#039;&#039;QTabletEvents&#039;&#039;&#039; are able to get the pressure value from the touchscreen.&lt;br /&gt;
   - The eventdeviceType is for the touchscreen is set to QTabletEvent::Stylus.&lt;br /&gt;
   - QTabletEvents won&#039;t be used anymore in Fremantle&lt;br /&gt;
  &lt;br /&gt;
  &#039;&#039;&#039;Finger poke&#039;&#039;&#039; is emulated in scratchbox by the Middle Mouse button (NOTE: There is no Fullscreen VKB in scratchbox)&lt;br /&gt;
 &lt;br /&gt;
  &#039;&#039;&#039;QInputEvents&#039;&#039;&#039; don&#039;t move the cursor. &lt;br /&gt;
  It&#039;s mandatory to get working the HIM moving the cursor via QInputMethodEvents.&lt;br /&gt;
  Why is it mandatory?  &lt;br /&gt;
  Because if the user select text with the finger from the right to the left, we are able to remove the highlighted text, but the&lt;br /&gt;
  cursor will be moved on the last char instead to stay on the first one.&lt;br /&gt;
   &lt;br /&gt;
  To do that some changes has been added to some widget function like: &#039;&#039;widget::inputMethodEvent(QInputMethodEvent *e)&#039;&#039;.&lt;br /&gt;
  Modifing that function in some custom widgets may be necessary.&lt;br /&gt;
  Don&#039;t reimplementing that function will break some fullscreen virtual keyboard features.&lt;br /&gt;
  &lt;br /&gt;
  &#039;&#039;&#039;Hardcoded Keys:&#039;&#039;&#039;&lt;br /&gt;
  In the QMainWindow:&lt;br /&gt;
  - F6 - Toggle fullscreen the application&lt;br /&gt;
  - F4 - Shows/Hides the application context menu&lt;br /&gt;
  - Zoom in  - is a standard [http://doc.trolltech.com/4.4/qkeysequence.html#StandardKey-enum key sequence] QKeySequence::ZoomIn&lt;br /&gt;
  - Zoom out - is a standard [http://doc.trolltech.com/4.4/qkeysequence.html#StandardKey-enum key sequence] QKeySequence::ZoomOut&lt;br /&gt;
&lt;br /&gt;
  &#039;&#039;&#039;Input Method:&#039;&#039;&#039;&lt;br /&gt;
  Maemo Qt uses the Hildon IM as default Input method.&lt;br /&gt;
  Each kind of widget can set the IM mode. This allows the input method to focus on the type of input that the application is expecting.&lt;br /&gt;
  Eg: spinboxes can receive only numeric characters (1-9).&lt;br /&gt;
  &lt;br /&gt;
  NOTE: Qt widgets like QTextEdit, QLineEdit... set the right input method mode automatically. &lt;br /&gt;
  &lt;br /&gt;
  A developer can change it by using:&lt;br /&gt;
    void QInputContext::setInputMode(int mode);&lt;br /&gt;
  It will update immediately the Hildon Input method to use the selected IM mode.  &lt;br /&gt;
  &lt;br /&gt;
  HIC Modes:&lt;br /&gt;
    HILDON_GTK_INPUT_MODE_ALPHA 	alphabetical characters and whitespace&lt;br /&gt;
    HILDON_GTK_INPUT_MODE_NUMERIC 	numbers 0-9 and the &#039;-&#039; character&lt;br /&gt;
    HILDON_GTK_INPUT_MODE_SPECIAL 	special characters&lt;br /&gt;
    HILDON_GTK_INPUT_MODE_HEXA 	hexadecimal characters; numbers 0-9, characters a-f, and A-F&lt;br /&gt;
    HILDON_GTK_INPUT_MODE_TELE 	telephone numbers; numbers 0-9, whitespace, and the characters &amp;quot;pwPW/().-+*#?,&amp;quot;&lt;br /&gt;
    HILDON_GTK_INPUT_MODE_FULL 	unrestricted entry mode, combination of the alpha, numeric and special modes.&lt;br /&gt;
    HILDON_GTK_INPUT_MODE_MULTILINE 	the client contains multiple lines of text or accepts linebreaks in the input.&lt;br /&gt;
    HILDON_GTK_INPUT_MODE_INVISIBLE 	do not echo or save the input in the IM when entering sensitive information such as passwords.&lt;br /&gt;
    HILDON_GTK_INPUT_MODE_AUTOCAP 	automatically capitalize the first letter at the start of a sentence.&lt;br /&gt;
    HILDON_GTK_INPUT_MODE_DICTIONARY 	enable predictive dictionaries and learning based on the input.&lt;br /&gt;
   &lt;br /&gt;
  Example:&lt;br /&gt;
    For a password field we need to set a specific IM mode:&lt;br /&gt;
    int mode = HILDON_GTK_INPUT_MODE_FULL | HILDON_GTK_INPUT_MODE_INVISIBLE&lt;br /&gt;
    QInputContext *qic = widget-&amp;gt;inputContext();&lt;br /&gt;
    qic-&amp;gt;setInputMode(mode);&lt;br /&gt;
  &lt;br /&gt;
  If you are developing a Custom widget able to receive input text, you can instruct your widget to use the right IM Mode just returning&lt;br /&gt;
  the mode.&lt;br /&gt;
  &lt;br /&gt;
  - How does it work?&lt;br /&gt;
  The Hildon IM sends a XMessage to pop up the &amp;quot;Virtual Keyboard&amp;quot; (or better the Main HIM UI) when an input widget receive the focus.&lt;br /&gt;
  The IM before to raise the VKB, makes an inputMethodQuery to the widget retrieving the IM mode.&lt;br /&gt;
  If the developer of the custom widget doesn&#039;t set the mode property, the IM will use HILDON_GTK_INPUT_MODE_FULL (the default mode) for that widget.&lt;br /&gt;
  &lt;br /&gt;
  Setting the ImMode is quite easy. Check the code below for more understanding.&lt;br /&gt;
  &lt;br /&gt;
  #ifdef Q_WS_HILDON&lt;br /&gt;
  #include &amp;lt;QInputContext&amp;gt;&lt;br /&gt;
  #endif&lt;br /&gt;
  &lt;br /&gt;
  QVariant QAbstractSpinBox::inputMethodQuery(Qt::InputMethodQuery query) const&lt;br /&gt;
  {    &lt;br /&gt;
    Q_D(const QAbstractSpinBox);&lt;br /&gt;
    switch(query) {&lt;br /&gt;
        case Qt::ImMode:{&lt;br /&gt;
            int mode = HILDON_GTK_INPUT_MODE_NUMERIC;&lt;br /&gt;
            return QVariant(mode);&lt;br /&gt;
        }&lt;br /&gt;
        default:&lt;br /&gt;
            return d-&amp;gt;edit-&amp;gt;inputMethodQuery(query);&lt;br /&gt;
    }&lt;br /&gt;
  }&lt;br /&gt;
&lt;br /&gt;
===FREMANTLE (Qt 4.5)===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====Kinetic scrolling====&lt;br /&gt;
Kinetic scrolling is enabled by default in QListWidgets and is supported by any Qt widget that inherits QScrollArea.&lt;br /&gt;
Any item view widgets (QTreeView/QTreeWidget, QListView, QTableView/QTableWidget...) can use fingerscroll if it has &amp;quot;FingerScrollable&amp;quot; dynamic property set to true.&lt;br /&gt;
Eg:&lt;br /&gt;
  QTableWidget *table = new QTableWidget(this);&lt;br /&gt;
  table-&amp;gt;setProperty(&amp;quot;FingerScrollable&amp;quot;, true); &lt;br /&gt;
&lt;br /&gt;
NOTE: Available in Qt &amp;gt; 4.5.3-xxxxx-maemo4&lt;br /&gt;
&lt;br /&gt;
====Hildon-Desktop widgets====&lt;br /&gt;
They are supported by Qt. An example (qt-example-hildondesktopwidget) is available in extras-devel.&lt;br /&gt;
&lt;br /&gt;
====Hildon menus====&lt;br /&gt;
Maemo5 menus are created using QActions available in menu bar. &lt;br /&gt;
Hidden, disabled, separators and widget actions won&#039;t shown. (Same in Qt 4.6)&lt;br /&gt;
&lt;br /&gt;
* qt-4.5.3-xxxx-maemo4 packages - needs QActions in a &amp;quot;fremantle&amp;quot; menu.&lt;br /&gt;
* Pkgs &amp;gt; qt-4.5.3-xxxx-maemo4 shows Maemo5 menus automatically&lt;br /&gt;
&lt;br /&gt;
Note: Maemo5 policy doesn&#039;t allow application to have more than 10 items.&lt;br /&gt;
&lt;br /&gt;
====Stackable windows====&lt;br /&gt;
http://maemomm.garage.maemo.org/docs/tutorial/figures/stackable-window.png&lt;br /&gt;
Are supported by Qt. To create them you need to create a MainWindow child of another Main window.&lt;br /&gt;
&lt;br /&gt;
 QMainWindow *fistStackableWindow = new QMainWindow;&lt;br /&gt;
 QMainWindow *secondStackableWindow = new QMainWindow(fistStackableWindow);&lt;br /&gt;
// you need the below line to see the back button on the top right hand corner of the stacked window instead of a cross&lt;br /&gt;
 secondStackableWindow-&amp;gt;setAttribute(Qt::WA_Maemo5StackedWindow);&lt;br /&gt;
&lt;br /&gt;
====Raise a Qt application in background====&lt;br /&gt;
QWidget::activateWindow() does the job.&lt;br /&gt;
&lt;br /&gt;
Implemented in Qt packages &amp;gt;= qt-4.5.3-xxxx-maemo6&lt;br /&gt;
==== How to minimize a Qt application? ====&lt;br /&gt;
 QDBusConnection c = QDBusConnection::sessionBus();&lt;br /&gt;
 QDBusMessage m = QDBusMessage::createSignal(&amp;quot;/&amp;quot;,&amp;quot;com.nokia.hildon_desktop&amp;quot;,&amp;quot;exit_app_view&amp;quot;);&lt;br /&gt;
 c.send(m);&lt;br /&gt;
&lt;br /&gt;
====Portrait mode and listening for orientation changes====&lt;br /&gt;
If you want to run your application in portrait mode then you can add these lines to your application. The code goes in your main widget constructor.&lt;br /&gt;
&lt;br /&gt;
 #ifdef Q_WS_HILDON&lt;br /&gt;
 //Includes for portrait mode support&lt;br /&gt;
 # include &amp;lt;X11/Xlib.h&amp;gt;&lt;br /&gt;
 # include &amp;lt;X11/Xatom.h&amp;gt;&lt;br /&gt;
 # include &amp;lt;QtGui/QX11Info&amp;gt;&lt;br /&gt;
 #endif&lt;br /&gt;
 &lt;br /&gt;
 #ifndef Q_WS_HILDON&lt;br /&gt;
 int value = 1;&lt;br /&gt;
 Atom portraitSupport = XInternAtom(QX11Info::display(), &amp;quot;_HILDON_PORTRAIT_MODE_SUPPORT&amp;quot;, false);&lt;br /&gt;
 Atom portraitRequest = XInternAtom(QX11Info::display(), &amp;quot;_HILDON_PORTRAIT_MODE_REQUEST&amp;quot;, false);&lt;br /&gt;
 XChangeProperty(QX11Info::display(), winId(), portraitSupport, XA_CARDINAL, 32, PropModeReplace, (uchar *)&amp;amp;value, 1);&lt;br /&gt;
 XChangeProperty(QX11Info::display(), winId(), portraitRequest, XA_CARDINAL, 32, PropModeReplace, (uchar *)&amp;amp;value, 1);&lt;br /&gt;
 #endif&lt;br /&gt;
&lt;br /&gt;
If you want to listen for orientation changes and then switch the view to landscape or potrait mode automatically than take a look at [[Maemo_Qt_Extra_Libraries]] for more information.&lt;br /&gt;
&lt;br /&gt;
==== QDockWidgets ====&lt;br /&gt;
QDockWidgets are not finger friendly widgets. They should not be used in Maemo.&lt;br /&gt;
In case you are porting an application to Maemo maybe you want to do&lt;br /&gt;
few changes as possible into your UI. Then you could use QDockWidget::setFeatures(QDockWidget::NoDockWidgetFeatures); to hide float and close button and lock the position of the dock widget.&lt;br /&gt;
&lt;br /&gt;
==== QPrint* and QSystemTray support missing ==== &lt;br /&gt;
 Printing (QPrint*) and System tray support is missing in current&lt;br /&gt;
 Qt 4.5.3-xxxx-maemo4 packages.&lt;br /&gt;
 Since incompatibility with KDE and other Qt application, they will be enabled again in next Qt 4.5.3 packages.&lt;br /&gt;
&lt;br /&gt;
==== QSplashScreen not fully compatible with Hildon-Desktop ====&lt;br /&gt;
 QSplashScreen&#039;s window type is not supported in Fremantle. The splash screen is&lt;br /&gt;
 shown in full screen and the image is repeated to fill the splash screen&#039;s&lt;br /&gt;
 window. When splash screen is closed normal window closing animation is shown&lt;br /&gt;
 before showing the actual application window. For these reasons developers are&lt;br /&gt;
 disencouraged to use splash screens in their applications.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===FREMANTLE (Qt 4.6)===&lt;br /&gt;
Here an example that shows several maemo5 Qt widgets in Qt 4.6.&lt;br /&gt;
&lt;br /&gt;
http://qt.gitorious.org/+qt-developers/qt/x11-maemo/trees/986340bb5e4b69ceb0a959c2a067a1ed5e504d50/examples/maemo5/widgets&lt;br /&gt;
&lt;br /&gt;
====Finger Scrolling====&lt;br /&gt;
* Qt 4.6 tp2&lt;br /&gt;
 &amp;lt;s&amp;gt;QListView listView;&lt;br /&gt;
 new QMaemo5KineticScroller(&amp;amp;listView);&amp;lt;/s&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;s&amp;gt;The ctor for QMaemo5KineticScroller for widgets seems protected now, hence the above cant be done.&lt;br /&gt;
So to have Kinetic Scrolling we can do this :&lt;br /&gt;
&lt;br /&gt;
 QAbstractScrollArea areaToScroll&lt;br /&gt;
 new QMaemo5KineticScroller(&amp;amp;areaToScroll);&amp;lt;/s&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Kinetic scrolling is *now* present by default in most scrolling widgets&lt;br /&gt;
eg. QTextBrowser, QTableView&lt;br /&gt;
&lt;br /&gt;
If you want to tweak the kinetic scrolling parameters like inertia and acceleration&lt;br /&gt;
then you can instaniate a QAbstractKineticScroller object like this.&lt;br /&gt;
&lt;br /&gt;
 QAbstractKineticScroller ks =  &lt;br /&gt;
   scrollArea-&amp;gt;property(&amp;quot;kineticScroller&amp;quot;).value&amp;lt;QAbstractKineticScroller *&amp;gt;();&lt;br /&gt;
&lt;br /&gt;
where scrollArea could be QScrollArea with some widgets added to it&lt;br /&gt;
or you could use implementations like QTextBrowser&lt;br /&gt;
&lt;br /&gt;
you can tweak scrolling like this&lt;br /&gt;
 ks-&amp;gt;setDragInertia( (double)value / 100.0)&lt;br /&gt;
 ks-&amp;gt;setMode(QAbstractKineticScroller::PushMode)&lt;br /&gt;
 &lt;br /&gt;
etc... , refer to the examples here for details ==&amp;gt; [http://qt.gitorious.org/+qt-developers/qt/x11-maemo/blobs/4.6-fremantle/examples/maemo5/kineticscroller/main.cpp]&lt;br /&gt;
&lt;br /&gt;
====QSplashScreen====&lt;br /&gt;
Should be fixed in Qt 4.6. SplashWindow type is not supported by Fremantle WM. Qt 4.6 display splash screen using popup window type.&lt;br /&gt;
&lt;br /&gt;
====Maemo5 Readme file====&lt;br /&gt;
There is a README file in Qt 4.6 source tree. You could check it clicking [http://qt.gitorious.org/+qt-developers/qt/x11-maemo/blobs/4.6-fremantle/README.maemo5 Here].&lt;br /&gt;
&lt;br /&gt;
== [[Image:Helmet.png]] Contributing to the Maemo Qt Project ==&lt;br /&gt;
&lt;br /&gt;
Maemo Qt is a community project. Contributing to the forum, sending us patches, give us feedbacks, tracking bugs are all activities that help us to improve the quality of our work.&lt;br /&gt;
&lt;br /&gt;
Here there is a list of things that every person interested in helping us should read.&lt;br /&gt;
&lt;br /&gt;
===Be updated===&lt;br /&gt;
Any Maemo Qt developer should be updated and should participate to the discussions, for that he must join the Mailing list.&lt;br /&gt;
BTW the mailing list is not for Maemo Qt Developers but it&#039;s open to Maemo Qt application developers too.&lt;br /&gt;
&lt;br /&gt;
=== Introduction to Git ===&lt;br /&gt;
If you are a git newbie you maybe find interesting these links:&lt;br /&gt;
* http://www.sourcemage.org/Git_Guide&lt;br /&gt;
* http://www.gitcasts.com/&lt;br /&gt;
* http://www.gnome.org/~newren/eg/git-for-svn-users.html&lt;br /&gt;
* Using the git protocol through a HTTP CONNECT proxy: http://www.emilsit.net/blog/archives/how-to-use-the-git-protocol-through-a-http-connect-proxy/&lt;br /&gt;
&lt;br /&gt;
===Understanding the structure of our Git repository===&lt;br /&gt;
These info are here:[[Qt Maemo Git Process]].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Preparation ===&lt;br /&gt;
Make sure each scratchbox target has&lt;br /&gt;
&lt;br /&gt;
  fakeroot apt-get build-dep libqt4-gui&lt;br /&gt;
&lt;br /&gt;
(you may need to apt-get install libgl-dev too as it&#039;s not in the Build-Depends: yet)&lt;br /&gt;
&lt;br /&gt;
===Building Qt from GIT rep===&lt;br /&gt;
&lt;br /&gt;
* Clone the repository:&lt;br /&gt;
 git clone git://gitorious.org/+qt-maemo-developers/qt/qt-maemo.git &lt;br /&gt;
or if you are a member of our team:&lt;br /&gt;
 git clone git@gitorious.org:+qt-maemo-developers/qt/qt-maemo.git&lt;br /&gt;
&lt;br /&gt;
* Change dir&lt;br /&gt;
 cd qt-maemo&lt;br /&gt;
&lt;br /&gt;
* Copy the remote 4.5 branch in your workingcopy&lt;br /&gt;
 git checkout -b 4.5 origin/4.5&lt;br /&gt;
&lt;br /&gt;
* Checkout ONE of these branches: &lt;br /&gt;
 git checkout -b qt-diablo    origin/qt-diablo&lt;br /&gt;
 git checkout -b qt-n900+w34 origin/qt-n900+w34&lt;br /&gt;
 git checkout -b qt-mer       origin/qt-mer&lt;br /&gt;
&lt;br /&gt;
* Build the packages:&lt;br /&gt;
 dpkg-buildpackage -rfakeroot -b&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Commit changes in SVN [OLD]===&lt;br /&gt;
&lt;br /&gt;
If you are a Maemo Qt developer and you want to save your changes in the Garage SVN but your project is not ready to go to the main line (trunk/qt-x11), you should create a private branch and then work there until the merging with the mainline.&lt;br /&gt;
&lt;br /&gt;
For that you have to create a your directory in branches/ named &#039;&#039;developer_name-qt&#039;&#039;. After that you can copy trunk/qt-x11 in your directory.&lt;br /&gt;
 svn copy --username developer_name https://garage.maemo.org/svn/qt4/trunk/qt-x11 https://garage.maemo.org/svn/qt4/branches/developer_name-qt -m &amp;quot;Creating private branch of trunk/qt-x11&amp;quot;&lt;br /&gt;
&lt;br /&gt;
NOTE: Subversion uses cheap copy, so them don&#039;t increase the size of the repository. Then feel free to create your own branch.&lt;br /&gt;
&lt;br /&gt;
===Merging branches changes in the mainline [OLD]===&lt;br /&gt;
&lt;br /&gt;
Before to merge your changes in the mainline, the code must be full working, cleaned and tested. A review from another developer is also needed in order to reduce the possibility to add errors.&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==[[Image:Help-contents.png]] F.A.Q.==&lt;br /&gt;
&lt;br /&gt;
=== I&#039;m trying to compile a Qt application for ARMEL, but I got the error below. What&#039;s wrong? ===&lt;br /&gt;
&lt;br /&gt;
 /targets/FREMANTLE_X86/usr/include/qt4/QtCore/qatomic_i386.h:127: error: impossible constraint in &#039;asm&#039;&lt;br /&gt;
&lt;br /&gt;
You are using x86 include files, then you have to update your Makefile. Running &amp;lt;code&amp;gt;qmake&amp;lt;/code&amp;gt; before &amp;lt;code&amp;gt;make&amp;lt;/code&amp;gt; will be solve this issue.&lt;br /&gt;
&lt;br /&gt;
=== I&#039;m trying to compile a Qt packcage for x86, but I got the error below. What&#039;s wrong? ===&lt;br /&gt;
&lt;br /&gt;
 In file included from maemo/gconfsymbols.cpp:41:&lt;br /&gt;
 maemo/gconfsymbols_p.h:49:25: gconf/gconf.h: No such file or directory&lt;br /&gt;
&lt;br /&gt;
Your scratchbox does not have &amp;lt;code&amp;gt;/bin/sh&amp;lt;/code&amp;gt;, so when calling &amp;lt;code&amp;gt;pkg-config&amp;lt;/code&amp;gt; from &amp;lt;code&amp;gt;qmake&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;CFLAGS&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;LIBS&amp;lt;/code&amp;gt; are not set correctly. Running &amp;lt;code&amp;gt;ln -s /scratchbox/tools/bin/sh /bin/sh&amp;lt;/code&amp;gt; will be solve this issue.&lt;br /&gt;
&lt;br /&gt;
=== I&#039;m trying to compile a diablo Qt package, so I just created a symbolic link, debian, for debian.diablo, and then run dpkg-buildpackage command, but I got a build error because the symbolic link was deleted. ===&lt;br /&gt;
&lt;br /&gt;
When running dpkg-buildpackage, all symbolic links will be deleted, so need to rename the folder from debian.diablo to debian to make a build of diablo Qt package.&lt;br /&gt;
&lt;br /&gt;
=== I installed Qt (libqt4-dev) to scratchbox and tried to build a sample application, but I got the error because some header files such as qhildonstyle.h, and qvfbhdr.h etc. were missing. ===&lt;br /&gt;
&lt;br /&gt;
libqt4-dev should copy all header files, but now, at least in 4.5.2-1maemo1, some files are missing. Please download file below and extract to your scratchbox system.&lt;br /&gt;
&lt;br /&gt;
http://qt4.garage.maemo.org/patches/qt4-missing-header.tgz&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===QML===&lt;br /&gt;
http://wiki.maemo.org/QML&lt;br /&gt;
&lt;br /&gt;
== References ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Development]]&lt;br /&gt;
[[Category:Qt]]&lt;/div&gt;</summary>
		<author><name>192.100.124.219</name></author>
	</entry>
	<entry>
		<id>https://maemo.octonezd.me/index.php?title=Qt-Maemo&amp;diff=34112</id>
		<title>Qt-Maemo</title>
		<link rel="alternate" type="text/html" href="https://maemo.octonezd.me/index.php?title=Qt-Maemo&amp;diff=34112"/>
		<updated>2010-01-19T12:30:45Z</updated>

		<summary type="html">&lt;p&gt;192.100.124.219: /* Image:Kblogger.png‎  News */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&lt;br /&gt;
&lt;br /&gt;
=[[Image:Kblogger.png‎ ]] News=&lt;br /&gt;
&amp;lt;div id=&amp;quot;news&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;tm&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;bm&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;lm&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;rm&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;tl&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;tr&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;bl&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;br&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;ul class=&amp;quot;recent&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;li class=&amp;quot;first&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;b&amp;gt;19 Gen 09&amp;lt;/b&amp;gt; - Qt 4.6 for Maemo 5 going Beta&amp;lt;br&amp;gt;&lt;br /&gt;
      &amp;lt;b&amp;gt;15 Gen 09&amp;lt;/b&amp;gt; - New Qt 4.5.3~git20090723-0maemo6 packages are now in Fremantle PR 1.1.&amp;lt;br&amp;gt;&lt;br /&gt;
  &lt;br /&gt;
      &amp;lt;b&amp;gt;22 Dec 09&amp;lt;/b&amp;gt; - [http://wiki.maemo.org/MADDE/Qt_Example Qt example] for [http://wiki.maemo.org/MADDE MADDE ] ([http://talk.maemo.org/showthread.php?t=38075 talk thread])&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
      &amp;lt;b&amp;gt;17 Dec 09&amp;lt;/b&amp;gt; - Qt declarative hits Maemo extras-devel repository [http://labs.trolltech.com/blogs/2009/12/17/qt-declarative-for-maemo-5/ more info here]&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
      &amp;lt;b&amp;gt;11 Dec 09&amp;lt;/b&amp;gt; - Bye bye old static web pages.. all our pages are now in Maemo Wiki. Old website is [http://qt4.garage.maemo.org/index-old.html here]&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;/li&amp;gt;&lt;br /&gt;
  &amp;lt;li&amp;gt;&lt;br /&gt;
      &amp;lt;b&amp;gt;[[Image:OtherNews.jpg‎]]&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
      &amp;lt;rss title=&amp;quot;off&amp;quot; desc=&amp;quot;off&amp;quot; number=&amp;quot;5&amp;quot; time=&amp;quot;3600&amp;quot; text&amp;gt;http://labs.trolltech.com/blogs/feed/rss/&amp;lt;/rss&amp;gt;&lt;br /&gt;
  &amp;lt;/li&amp;gt;&lt;br /&gt;
   &amp;lt;li&amp;gt;&lt;br /&gt;
  &amp;lt;b&amp;gt;[[Image:LastCommits.jpg‎]]&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
      &amp;lt;rss title=&amp;quot;off&amp;quot; desc=&amp;quot;off&amp;quot; number=&amp;quot;5&amp;quot; time=&amp;quot;3600&amp;quot; text&amp;gt;http://pipes.yahoo.com/pipes/pipe.run?_id=249549b5f3ea9af37a077bb103af6614&amp;amp;_render=rss&amp;lt;/rss&amp;gt;&lt;br /&gt;
  &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ul&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
.&lt;br /&gt;
&lt;br /&gt;
=[[Image:Intro.png]] What is Qt?=&lt;br /&gt;
Qt (pronounced as the English word &amp;quot;cute&amp;quot;) is a cross-platform application development framework.&lt;br /&gt;
&lt;br /&gt;
It is produced by Nokia&#039;s Qt Development Frameworks division, which came into being after Nokia&#039;s acquisition of the Norwegian company Trolltech.&lt;br /&gt;
&lt;br /&gt;
Qt uses standard C++, but makes extensive use of the C pre-processor to enrich the language. Qt can also be used in several other programming languages via language bindings. &lt;br /&gt;
&lt;br /&gt;
Distributed under the terms of the GNU Lesser General Public License (among others), Qt is free and open source software.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=[[Image:Rocket.png]] Maemo Qt main features=&lt;br /&gt;
* Hildon Style&lt;br /&gt;
* Hildon Input Method&lt;br /&gt;
* Optimizations&lt;br /&gt;
* Hildon specific widgets&lt;br /&gt;
** partial support in Qt 4.5&lt;br /&gt;
** Qt 4.6 will have full support&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= [[Image:Fileview-preview.png]] Maemo Qt in Actions =&lt;br /&gt;
* Diablo Maemo Qt&lt;br /&gt;
 ADD_HERE_SOME_PICS&lt;br /&gt;
* Fremantle Maemo Qt&lt;br /&gt;
 ADD HERE SOME PICS&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=[[Image:Pda.png]] Supported Maemo devices=&lt;br /&gt;
* Nokia N800/N810 (OS2008/Maemo4.1/Diablo)&lt;br /&gt;
* Nokia N900 (OS2009/Maemo5/Fremantle)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=[[Image:Ktorrent.png‎ ]] Installing Qt=&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div id=&amp;quot;news&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;tm&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;bm&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;lm&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;rm&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;tl&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;tr&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;bl&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;br&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;ul class=&amp;quot;recent&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;li class=&amp;quot;first&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;H3&amp;gt;N8x0&amp;lt;/H3&amp;gt;&lt;br /&gt;
Supported Maemo version: 4.1 (Diablo)&lt;br /&gt;
&lt;br /&gt;
Latest stable packages are into extras repository:&amp;lt;br&amp;gt;&lt;br /&gt;
deb http://repository.maemo.org/extras/ diablo free non-free&lt;br /&gt;
&lt;br /&gt;
Testing packages are in extras-devel&amp;lt;br&amp;gt;&lt;br /&gt;
deb http://repository.maemo.org/extras-devel/ diablo free non-free&lt;br /&gt;
&lt;br /&gt;
Install Qt binaries onto the device: &amp;lt;i&amp;gt;sudo gainroot &amp;amp;&amp;amp; apt-get install libqt4-gui&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Install Qt binaries and development packages into the SDK:&lt;br /&gt;
&amp;lt;i&amp;gt;fakeroot apt-get install libqt4-dev&amp;lt;/i&amp;gt;&lt;br /&gt;
  &amp;lt;/li&amp;gt;&lt;br /&gt;
  &amp;lt;li class=&amp;quot;&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;H3&amp;gt;N900&amp;lt;/H3&amp;gt;&lt;br /&gt;
Supported Maemo version: 5 (Fremantle)&lt;br /&gt;
&lt;br /&gt;
Qt core packages (qtcore, xml...) are pre-installed into the device. Rest of packages (GUI, webkit...) are in the Application repository (enabled by default in every device).&lt;br /&gt;
&lt;br /&gt;
They are downloaded automatically when user install application packages that depends from those.&lt;br /&gt;
&lt;br /&gt;
OVI store can host Maemo Qt Applications as well as other official Maemo repositories.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Qt 4.5 - community port&#039;&#039;&#039; core packages are already into the device. &lt;br /&gt;
&lt;br /&gt;
- Installing Qt binaries into the device: &amp;lt;i&amp;gt;sudo gainroot &amp;amp;&amp;amp; apt-get install libqt4-gui&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- Installing Qt binaries and development packages in scratchbox: &amp;lt;i&amp;gt;fakeroot apt-get install libqt4-dev&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Qt 4.6&#039;&#039;&#039; is still underdevelopment. It&#039;s in extras-devel; To install Qt 4.6:&lt;br /&gt;
&lt;br /&gt;
- Add add extras-devel repository to /etc/apt/source.list. You can do that adding following line to that file.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;i&amp;gt;deb http://repository.maemo.org/extras-devel/ fremantle free non-free&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- Run &amp;lt;i&amp;gt;apt-get update&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- Install lib packages into the device with: &amp;lt;i&amp;gt;fakeroot apt-get install libqt4-maemo5-gui&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- Install dev packages into the SDK with: &amp;lt;i&amp;gt;fakeroot apt-get install libqt4-maemo5-dev&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Note: &lt;br /&gt;
&lt;br /&gt;
- Qt 4.6tp is installed to /opt/qt4-maemo5&lt;br /&gt;
  &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ul&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=[[Image:Available-qtapps-32.png‎ ]]Available and proposed Qt Applications=&lt;br /&gt;
If you want to port a Qt application to Maemo or if you want to check if an application you love has been already ported.. well [http://wiki.maemo.org/Qt4HildonApplications this] is the place you would like to check; &lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=[[Image:Help-contents.png]] Docs=&lt;br /&gt;
&amp;lt;b&amp;gt;Qt:&amp;lt;/b&amp;gt;&lt;br /&gt;
* [http://wiki.maemo.org/Qt4Hildon Qt 4 Hildon]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Non-Qt stuff:&amp;lt;/b&amp;gt;&lt;br /&gt;
* Fremantle: &lt;br /&gt;
** [http://sw.nokia.com/id/a3187f95-ad88-4233-b0ef-a182da3ec1c7/Hildon_2_2_Widget_UI_Specification_v1_0_en.pdf Hildon 2.2 Widget UI Spec -PDF]&lt;br /&gt;
** [http://www.forum.nokia.com/info/sw.nokia.com/id/eb8a68ba-6225-4d84-ba8f-a00e4a05ff6f/Hildon_2_2_UI_Style_Guide.html Hildon 2.2 UI Style Guid -PDF]&lt;br /&gt;
* Diablo&lt;br /&gt;
** ADD_SOMETHING_HERE&lt;br /&gt;
* Other Docs&lt;br /&gt;
** [http://www.forum.nokia.com/Tools_Docs_and_Code/Documentation/Latest.xhtml Forum Nokia Docs] contain Maemo as well as other documentation related to other Nokia platforms.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=[[Image:Bug.png]] Bug tracking=&lt;br /&gt;
* Diablo &amp;amp; Fremanlte Qt 4.5 port&lt;br /&gt;
** [https://bugs.maemo.org/buglist.cgi?query_format=specific&amp;amp;order=relevance+desc&amp;amp;bug_status=__open__&amp;amp;product=Qt&amp;amp;content= View bug list]&lt;br /&gt;
** [https://bugs.maemo.org/enter_bug.cgi?product=Qt Report a new bug]&lt;br /&gt;
* Fremantle Qt 4.6 port&lt;br /&gt;
** [http://doc.trolltech.com/4.6/bughowto.html How to report a bug]&lt;br /&gt;
** [http://bugreports.qt.nokia.com/secure/CreateIssue!default.jspa Report a new bug]&lt;br /&gt;
** [http://bugreports.qt.nokia.com/secure/IssueNavigator.jspa?reset=true&amp;amp;&amp;amp;query=maemo&amp;amp;summary=true&amp;amp;description=true&amp;amp;body=true&amp;amp;environment=true&amp;amp;pid=10510 View bug list]&lt;br /&gt;
&lt;br /&gt;
=[[Image:Helmet.png]] Code=&lt;br /&gt;
* Qt 4.5 (Diablo)&lt;br /&gt;
** http://gitorious.org/+qt-maemo-developers/qt/qt-maemo&lt;br /&gt;
* Qt 4.5 (Fremantle)&lt;br /&gt;
** http://gitorious.org/+qt-maemo-developers/qt/qt-maemo&lt;br /&gt;
* Qt 4.6 (Fremantle)&lt;br /&gt;
** http://qt.gitorious.org/qt/x11-maemo&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=[[Image:Preferences-desktop-user.png]] Get Help=&lt;br /&gt;
* Forums&lt;br /&gt;
** [http://discussion.forum.nokia.com/forum/forumdisplay.php?f=220 Qt for Maemo Forum Nokia Discussion board]&lt;br /&gt;
** [https://garage.maemo.org/forum/?group_id=424 Old qt4.garage.maemo.org forum]&lt;br /&gt;
* IRC&lt;br /&gt;
** Official Qt for Maemo IRC Channel&lt;br /&gt;
** Click [http://webchat.freenode.net/?channels=qt-maemo here] to join the #qt-maemo channel in frenode (irc.freenode.net).&lt;br /&gt;
&lt;br /&gt;
* Mailing list&lt;br /&gt;
** [https://garage.maemo.org/mailman/listinfo/qt4-devel Click here to Subscribe to the Qt community ML]&lt;/div&gt;</summary>
		<author><name>192.100.124.219</name></author>
	</entry>
	<entry>
		<id>https://maemo.octonezd.me/index.php?title=Qt-Maemo&amp;diff=34113</id>
		<title>Qt-Maemo</title>
		<link rel="alternate" type="text/html" href="https://maemo.octonezd.me/index.php?title=Qt-Maemo&amp;diff=34113"/>
		<updated>2010-01-18T10:10:50Z</updated>

		<summary type="html">&lt;p&gt;192.100.124.219: /* Image:Kblogger.png‎  News */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&lt;br /&gt;
&lt;br /&gt;
=[[Image:Kblogger.png‎ ]] News=&lt;br /&gt;
&amp;lt;div id=&amp;quot;news&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;tm&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;bm&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;lm&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;rm&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;tl&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;tr&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;bl&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;br&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;ul class=&amp;quot;recent&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;li class=&amp;quot;first&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;b&amp;gt;15 Gen 09&amp;lt;/b&amp;gt; - New Qt 4.5.3~git20090723-0maemo6 packages are now in Fremantle PR 1.1.&amp;lt;br&amp;gt;&lt;br /&gt;
  &lt;br /&gt;
      &amp;lt;b&amp;gt;22 Dec 09&amp;lt;/b&amp;gt; - [http://wiki.maemo.org/MADDE/Qt_Example Qt example] for [http://wiki.maemo.org/MADDE MADDE ] ([http://talk.maemo.org/showthread.php?t=38075 talk thread])&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
      &amp;lt;b&amp;gt;17 Dec 09&amp;lt;/b&amp;gt; - Qt declarative hits Maemo extras-devel repository [http://labs.trolltech.com/blogs/2009/12/17/qt-declarative-for-maemo-5/ more info here]&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
      &amp;lt;b&amp;gt;11 Dec 09&amp;lt;/b&amp;gt; - Bye bye old static web pages.. all our pages are now in Maemo Wiki. Old website is [http://qt4.garage.maemo.org/index-old.html here]&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;/li&amp;gt;&lt;br /&gt;
  &amp;lt;li&amp;gt;&lt;br /&gt;
      &amp;lt;b&amp;gt;[[Image:OtherNews.jpg‎]]&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
      &amp;lt;rss title=&amp;quot;off&amp;quot; desc=&amp;quot;off&amp;quot; number=&amp;quot;5&amp;quot; time=&amp;quot;3600&amp;quot; text&amp;gt;http://labs.trolltech.com/blogs/feed/rss/&amp;lt;/rss&amp;gt;&lt;br /&gt;
  &amp;lt;/li&amp;gt;&lt;br /&gt;
   &amp;lt;li&amp;gt;&lt;br /&gt;
  &amp;lt;b&amp;gt;[[Image:LastCommits.jpg‎]]&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
      &amp;lt;rss title=&amp;quot;off&amp;quot; desc=&amp;quot;off&amp;quot; number=&amp;quot;5&amp;quot; time=&amp;quot;3600&amp;quot; text&amp;gt;http://pipes.yahoo.com/pipes/pipe.run?_id=249549b5f3ea9af37a077bb103af6614&amp;amp;_render=rss&amp;lt;/rss&amp;gt;&lt;br /&gt;
  &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ul&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
.&lt;br /&gt;
&lt;br /&gt;
=[[Image:Intro.png]] What is Qt?=&lt;br /&gt;
Qt (pronounced as the English word &amp;quot;cute&amp;quot;) is a cross-platform application development framework.&lt;br /&gt;
&lt;br /&gt;
It is produced by Nokia&#039;s Qt Development Frameworks division, which came into being after Nokia&#039;s acquisition of the Norwegian company Trolltech.&lt;br /&gt;
&lt;br /&gt;
Qt uses standard C++, but makes extensive use of the C pre-processor to enrich the language. Qt can also be used in several other programming languages via language bindings. &lt;br /&gt;
&lt;br /&gt;
Distributed under the terms of the GNU Lesser General Public License (among others), Qt is free and open source software.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=[[Image:Rocket.png]] Maemo Qt main features=&lt;br /&gt;
* Hildon Style&lt;br /&gt;
* Hildon Input Method&lt;br /&gt;
* Optimizations&lt;br /&gt;
* Hildon specific widgets&lt;br /&gt;
** partial support in Qt 4.5&lt;br /&gt;
** Qt 4.6 will have full support&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= [[Image:Fileview-preview.png]] Maemo Qt in Actions =&lt;br /&gt;
* Diablo Maemo Qt&lt;br /&gt;
 ADD_HERE_SOME_PICS&lt;br /&gt;
* Fremantle Maemo Qt&lt;br /&gt;
 ADD HERE SOME PICS&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=[[Image:Pda.png]] Supported Maemo devices=&lt;br /&gt;
* Nokia N800/N810 (OS2008/Maemo4.1/Diablo)&lt;br /&gt;
* Nokia N900 (OS2009/Maemo5/Fremantle)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=[[Image:Ktorrent.png‎ ]] Installing Qt=&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div id=&amp;quot;news&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;tm&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;bm&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;lm&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;rm&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;tl&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;tr&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;bl&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;br&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;ul class=&amp;quot;recent&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;li class=&amp;quot;first&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;H3&amp;gt;N8x0&amp;lt;/H3&amp;gt;&lt;br /&gt;
Supported Maemo version: 4.1 (Diablo)&lt;br /&gt;
&lt;br /&gt;
Latest stable packages are into extras repository:&amp;lt;br&amp;gt;&lt;br /&gt;
deb http://repository.maemo.org/extras/ diablo free non-free&lt;br /&gt;
&lt;br /&gt;
Testing packages are in extras-devel&amp;lt;br&amp;gt;&lt;br /&gt;
deb http://repository.maemo.org/extras-devel/ diablo free non-free&lt;br /&gt;
&lt;br /&gt;
Install Qt binaries onto the device: &amp;lt;i&amp;gt;sudo gainroot &amp;amp;&amp;amp; apt-get install libqt4-gui&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Install Qt binaries and development packages into the SDK:&lt;br /&gt;
&amp;lt;i&amp;gt;fakeroot apt-get install libqt4-dev&amp;lt;/i&amp;gt;&lt;br /&gt;
  &amp;lt;/li&amp;gt;&lt;br /&gt;
  &amp;lt;li class=&amp;quot;&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;H3&amp;gt;N900&amp;lt;/H3&amp;gt;&lt;br /&gt;
Supported Maemo version: 5 (Fremantle)&lt;br /&gt;
&lt;br /&gt;
Qt core packages (qtcore, xml...) are pre-installed into the device. Rest of packages (GUI, webkit...) are in the Application repository (enabled by default in every device).&lt;br /&gt;
&lt;br /&gt;
They are downloaded automatically when user install application packages that depends from those.&lt;br /&gt;
&lt;br /&gt;
OVI store can host Maemo Qt Applications as well as other official Maemo repositories.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Qt 4.5 - community port&#039;&#039;&#039; core packages are already into the device. &lt;br /&gt;
&lt;br /&gt;
- Installing Qt binaries into the device: &amp;lt;i&amp;gt;sudo gainroot &amp;amp;&amp;amp; apt-get install libqt4-gui&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- Installing Qt binaries and development packages in scratchbox: &amp;lt;i&amp;gt;fakeroot apt-get install libqt4-dev&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Qt 4.6&#039;&#039;&#039; is still underdevelopment. It&#039;s in extras-devel; To install Qt 4.6:&lt;br /&gt;
&lt;br /&gt;
- Add add extras-devel repository to /etc/apt/source.list. You can do that adding following line to that file.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;i&amp;gt;deb http://repository.maemo.org/extras-devel/ fremantle free non-free&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- Run &amp;lt;i&amp;gt;apt-get update&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- Install lib packages into the device with: &amp;lt;i&amp;gt;fakeroot apt-get install libqt4-maemo5-gui&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- Install dev packages into the SDK with: &amp;lt;i&amp;gt;fakeroot apt-get install libqt4-maemo5-dev&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Note: &lt;br /&gt;
&lt;br /&gt;
- Qt 4.6tp is installed to /opt/qt4-maemo5&lt;br /&gt;
  &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ul&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=[[Image:Available-qtapps-32.png‎ ]]Available and proposed Qt Applications=&lt;br /&gt;
If you want to port a Qt application to Maemo or if you want to check if an application you love has been already ported.. well [http://wiki.maemo.org/Qt4HildonApplications this] is the place you would like to check; &lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=[[Image:Help-contents.png]] Docs=&lt;br /&gt;
&amp;lt;b&amp;gt;Qt:&amp;lt;/b&amp;gt;&lt;br /&gt;
* [http://wiki.maemo.org/Qt4Hildon Qt 4 Hildon]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Non-Qt stuff:&amp;lt;/b&amp;gt;&lt;br /&gt;
* Fremantle: &lt;br /&gt;
** [http://sw.nokia.com/id/a3187f95-ad88-4233-b0ef-a182da3ec1c7/Hildon_2_2_Widget_UI_Specification_v1_0_en.pdf Hildon 2.2 Widget UI Spec -PDF]&lt;br /&gt;
** [http://www.forum.nokia.com/info/sw.nokia.com/id/eb8a68ba-6225-4d84-ba8f-a00e4a05ff6f/Hildon_2_2_UI_Style_Guide.html Hildon 2.2 UI Style Guid -PDF]&lt;br /&gt;
* Diablo&lt;br /&gt;
** ADD_SOMETHING_HERE&lt;br /&gt;
* Other Docs&lt;br /&gt;
** [http://www.forum.nokia.com/Tools_Docs_and_Code/Documentation/Latest.xhtml Forum Nokia Docs] contain Maemo as well as other documentation related to other Nokia platforms.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=[[Image:Bug.png]] Bug tracking=&lt;br /&gt;
* Diablo &amp;amp; Fremanlte Qt 4.5 port&lt;br /&gt;
** [https://bugs.maemo.org/buglist.cgi?query_format=specific&amp;amp;order=relevance+desc&amp;amp;bug_status=__open__&amp;amp;product=Qt&amp;amp;content= View bug list]&lt;br /&gt;
** [https://bugs.maemo.org/enter_bug.cgi?product=Qt Report a new bug]&lt;br /&gt;
* Fremantle Qt 4.6 port&lt;br /&gt;
** [http://doc.trolltech.com/4.6/bughowto.html How to report a bug]&lt;br /&gt;
** [http://bugreports.qt.nokia.com/secure/CreateIssue!default.jspa Report a new bug]&lt;br /&gt;
** [http://bugreports.qt.nokia.com/secure/IssueNavigator.jspa?reset=true&amp;amp;&amp;amp;query=maemo&amp;amp;summary=true&amp;amp;description=true&amp;amp;body=true&amp;amp;environment=true&amp;amp;pid=10510 View bug list]&lt;br /&gt;
&lt;br /&gt;
=[[Image:Helmet.png]] Code=&lt;br /&gt;
* Qt 4.5 (Diablo)&lt;br /&gt;
** http://gitorious.org/+qt-maemo-developers/qt/qt-maemo&lt;br /&gt;
* Qt 4.5 (Fremantle)&lt;br /&gt;
** http://gitorious.org/+qt-maemo-developers/qt/qt-maemo&lt;br /&gt;
* Qt 4.6 (Fremantle)&lt;br /&gt;
** http://qt.gitorious.org/qt/x11-maemo&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=[[Image:Preferences-desktop-user.png]] Get Help=&lt;br /&gt;
* Forums&lt;br /&gt;
** [http://discussion.forum.nokia.com/forum/forumdisplay.php?f=220 Qt for Maemo Forum Nokia Discussion board]&lt;br /&gt;
** [https://garage.maemo.org/forum/?group_id=424 Old qt4.garage.maemo.org forum]&lt;br /&gt;
* IRC&lt;br /&gt;
** Official Qt for Maemo IRC Channel&lt;br /&gt;
** Click [http://webchat.freenode.net/?channels=qt-maemo here] to join the #qt-maemo channel in frenode (irc.freenode.net).&lt;br /&gt;
&lt;br /&gt;
* Mailing list&lt;br /&gt;
** [https://garage.maemo.org/mailman/listinfo/qt4-devel Click here to Subscribe to the Qt community ML]&lt;/div&gt;</summary>
		<author><name>192.100.124.219</name></author>
	</entry>
	<entry>
		<id>https://maemo.octonezd.me/index.php?title=Talk:Documentation/Maemo_5_Developer_Guide/Using_Generic_Platform_Components/Using_Address_Book_API&amp;diff=44174</id>
		<title>Talk:Documentation/Maemo 5 Developer Guide/Using Generic Platform Components/Using Address Book API</title>
		<link rel="alternate" type="text/html" href="https://maemo.octonezd.me/index.php?title=Talk:Documentation/Maemo_5_Developer_Guide/Using_Generic_Platform_Components/Using_Address_Book_API&amp;diff=44174"/>
		<updated>2010-01-12T09:15:49Z</updated>

		<summary type="html">&lt;p&gt;192.100.124.219: New page: This page seems ok, but info about even the existance of OssoABookSelfContact to get your own contact from abook is missing. It is ofcourse in the apidoc, but a example would be nice as we...&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page seems ok, but info about even the existance of OssoABookSelfContact to get your own contact from abook is missing. It is ofcourse in the apidoc, but a example would be nice as well.&lt;/div&gt;</summary>
		<author><name>192.100.124.219</name></author>
	</entry>
	<entry>
		<id>https://maemo.octonezd.me/index.php?title=Qt-Maemo&amp;diff=34117</id>
		<title>Qt-Maemo</title>
		<link rel="alternate" type="text/html" href="https://maemo.octonezd.me/index.php?title=Qt-Maemo&amp;diff=34117"/>
		<updated>2010-01-11T12:15:08Z</updated>

		<summary type="html">&lt;p&gt;192.100.124.219: /* Image:Kblogger.png‎  News */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&lt;br /&gt;
&lt;br /&gt;
=[[Image:Kblogger.png‎ ]] News=&lt;br /&gt;
&amp;lt;div id=&amp;quot;news&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;tm&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;bm&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;lm&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;rm&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;tl&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;tr&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;bl&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;br&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;ul class=&amp;quot;recent&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;li class=&amp;quot;first&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;b&amp;gt;22 Dec 09&amp;lt;/b&amp;gt; - [http://wiki.maemo.org/MADDE/Qt_Example Qt example] for [http://wiki.maemo.org/MADDE MADDE ] ([http://talk.maemo.org/showthread.php?t=38075 talk thread])&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
      &amp;lt;b&amp;gt;17 Dec 09&amp;lt;/b&amp;gt; - Qt declarative hits Maemo extras-devel repository [http://labs.trolltech.com/blogs/2009/12/17/qt-declarative-for-maemo-5/ more info here]&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
      &amp;lt;b&amp;gt;11 Dec 09&amp;lt;/b&amp;gt; - Bye bye old static web pages.. all our pages are now in Maemo Wiki. Old website is [http://qt4.garage.maemo.org/index-old.html here]&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;/li&amp;gt;&lt;br /&gt;
  &amp;lt;li&amp;gt;&lt;br /&gt;
      &amp;lt;b&amp;gt;News from Qt blog...&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
      &amp;lt;rss title=&amp;quot;off&amp;quot; desc=&amp;quot;off&amp;quot; number=&amp;quot;5&amp;quot; time=&amp;quot;3600&amp;quot; text&amp;gt;http://labs.trolltech.com/blogs/feed/rss/&amp;lt;/rss&amp;gt;&lt;br /&gt;
  &amp;lt;/li&amp;gt;&lt;br /&gt;
   &amp;lt;li&amp;gt;&lt;br /&gt;
  &amp;lt;b&amp;gt;Latest Maemo Qt 4.6 commits&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
      &amp;lt;rss title=&amp;quot;off&amp;quot; desc=&amp;quot;off&amp;quot; number=&amp;quot;5&amp;quot; time=&amp;quot;3600&amp;quot; text&amp;gt;http://pipes.yahoo.com/pipes/pipe.run?_id=249549b5f3ea9af37a077bb103af6614&amp;amp;_render=rss&amp;lt;/rss&amp;gt;&lt;br /&gt;
  &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ul&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
.&lt;br /&gt;
&lt;br /&gt;
=[[Image:Intro.png]] What is Qt?=&lt;br /&gt;
Qt (pronounced as the English word &amp;quot;cute&amp;quot;) is a cross-platform application development framework.&lt;br /&gt;
&lt;br /&gt;
It is produced by Nokia&#039;s Qt Development Frameworks division, which came into being after Nokia&#039;s acquisition of the Norwegian company Trolltech.&lt;br /&gt;
&lt;br /&gt;
Qt uses standard C++, but makes extensive use of the C pre-processor to enrich the language. Qt can also be used in several other programming languages via language bindings. &lt;br /&gt;
&lt;br /&gt;
Distributed under the terms of the GNU Lesser General Public License (among others), Qt is free and open source software.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=[[Image:Rocket.png]] Maemo Qt main features=&lt;br /&gt;
* Hildon Style&lt;br /&gt;
* Hildon Input Method&lt;br /&gt;
* Optimizations&lt;br /&gt;
* Hildon specific widget&lt;br /&gt;
** partial support in Qt 4.5&lt;br /&gt;
** Qt 4.6 will have full support&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= [[Image:Fileview-preview.png]] Maemo Qt in Actions =&lt;br /&gt;
* Diablo Maemo Qt&lt;br /&gt;
 ADD_HERE_SOME_PICS&lt;br /&gt;
* Fremantle Maemo Qt&lt;br /&gt;
 ADD HERE SOME PICS&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=[[Image:Pda.png]] Supported Maemo devices=&lt;br /&gt;
* Nokia N800/N810 (OS2008/Maemo4.1/Diablo)&lt;br /&gt;
* Nokia N900 (OS2009/Maemo5/Fremantle)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=[[Image:Ktorrent.png‎ ]] Installing Qt=&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div id=&amp;quot;news&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;tm&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;bm&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;lm&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;rm&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;tl&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;tr&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;bl&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;br&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;ul class=&amp;quot;recent&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;li class=&amp;quot;first&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;H3&amp;gt;N8x0&amp;lt;/H3&amp;gt;&lt;br /&gt;
Supported Maemo version: 4.1 (Diablo)&lt;br /&gt;
&lt;br /&gt;
Latest stable packages are into extras repository:&amp;lt;br&amp;gt;&lt;br /&gt;
deb http://repository.maemo.org/extras/ diablo free non-free&lt;br /&gt;
&lt;br /&gt;
Testing packages are in extras-devel&amp;lt;br&amp;gt;&lt;br /&gt;
deb http://repository.maemo.org/extras-devel/ diablo free non-free&lt;br /&gt;
&lt;br /&gt;
Install Qt binaries onto the device: &amp;lt;i&amp;gt;sudo gainroot &amp;amp;&amp;amp; apt-get install libqt4-gui&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Install Qt binaries and development packages into the SDK:&lt;br /&gt;
&amp;lt;i&amp;gt;fakeroot apt-get install libqt4-dev&amp;lt;/i&amp;gt;&lt;br /&gt;
  &amp;lt;/li&amp;gt;&lt;br /&gt;
  &amp;lt;li class=&amp;quot;&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;H3&amp;gt;N900&amp;lt;/H3&amp;gt;&lt;br /&gt;
Supported Maemo version: 5 (Fremantle)&lt;br /&gt;
&lt;br /&gt;
Qt core packages (qtcore, xml...) are pre-installed into the device. Rest of packages (GUI, webkit...) are in the Application repository (enabled by default in every device).&lt;br /&gt;
&lt;br /&gt;
They are downloaded automatically when user install application packages that depends from those.&lt;br /&gt;
&lt;br /&gt;
OVI store can host Maemo Qt Applications as well as other official Maemo repositories.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Qt 4.5 - community port&#039;&#039;&#039; core packages are already into the device. &lt;br /&gt;
&lt;br /&gt;
- Installing Qt binaries into the device: &amp;lt;i&amp;gt;sudo gainroot &amp;amp;&amp;amp; apt-get install libqt4-gui&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- Installing Qt binaries and development packages in scratchbox: &amp;lt;i&amp;gt;fakeroot apt-get install libqt4-dev&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Qt 4.6&#039;&#039;&#039; is still underdevelopment. It&#039;s in extras-devel; To install Qt 4.6:&lt;br /&gt;
&lt;br /&gt;
- Add add extras-devel repository to /etc/apt/source.list. You can do that adding following line to that file.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;i&amp;gt;deb http://repository.maemo.org/extras-devel/ fremantle free non-free&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- Run &amp;lt;i&amp;gt;apt-get update&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- Install lib packages into the device with: &amp;lt;i&amp;gt;fakeroot apt-get install libqt4-maemo5-gui&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- Install dev packages into the SDK with: &amp;lt;i&amp;gt;fakeroot apt-get install libqt4-maemo5-dev&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Note: &lt;br /&gt;
&lt;br /&gt;
- Qt 4.6tp is installed to /opt/qt4-maemo5&lt;br /&gt;
  &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ul&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=[[Image:Available-qtapps-32.png‎ ]]Available and proposed Qt Applications=&lt;br /&gt;
If you want to port a Qt application to Maemo or if you want to check if an application you love has been already ported.. well [http://wiki.maemo.org/Qt4HildonApplications this] is the place you would like to check; &lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=[[Image:Help-contents.png]] Docs=&lt;br /&gt;
&amp;lt;b&amp;gt;Qt:&amp;lt;/b&amp;gt;&lt;br /&gt;
* [http://wiki.maemo.org/Qt4Hildon Qt 4 Hildon]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Non-Qt stuff:&amp;lt;/b&amp;gt;&lt;br /&gt;
* Fremantle: &lt;br /&gt;
** [http://sw.nokia.com/id/a3187f95-ad88-4233-b0ef-a182da3ec1c7/Hildon_2_2_Widget_UI_Specification_v1_0_en.pdf Hildon 2.2 Widget UI Spec -PDF]&lt;br /&gt;
** [http://www.forum.nokia.com/info/sw.nokia.com/id/eb8a68ba-6225-4d84-ba8f-a00e4a05ff6f/Hildon_2_2_UI_Style_Guide.html Hildon 2.2 UI Style Guid -PDF]&lt;br /&gt;
* Diablo&lt;br /&gt;
** ADD_SOMETHING_HERE&lt;br /&gt;
* Other Docs&lt;br /&gt;
** [http://www.forum.nokia.com/Tools_Docs_and_Code/Documentation/Latest.xhtml Forum Nokia Docs] contain Maemo as well as other documentation related to other Nokia platforms.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=[[Image:Bug.png]] Bug tracking=&lt;br /&gt;
* Diablo &amp;amp; Fremanlte Qt 4.5 port&lt;br /&gt;
** [https://bugs.maemo.org/buglist.cgi?query_format=specific&amp;amp;order=relevance+desc&amp;amp;bug_status=__open__&amp;amp;product=Qt&amp;amp;content= View bug list]&lt;br /&gt;
** [https://bugs.maemo.org/enter_bug.cgi?product=Qt Report a new bug]&lt;br /&gt;
* Fremantle Qt 4.6 port&lt;br /&gt;
** [http://doc.trolltech.com/4.6/bughowto.html How to report a bug]&lt;br /&gt;
** [http://bugreports.qt.nokia.com/secure/CreateIssue!default.jspa Report a new bug]&lt;br /&gt;
** [http://bugreports.qt.nokia.com/secure/IssueNavigator.jspa?reset=true&amp;amp;&amp;amp;query=maemo&amp;amp;summary=true&amp;amp;description=true&amp;amp;body=true&amp;amp;environment=true&amp;amp;pid=10510 View bug list]&lt;br /&gt;
&lt;br /&gt;
=[[Image:Helmet.png]] Code=&lt;br /&gt;
* Qt 4.5 (Diablo)&lt;br /&gt;
** http://gitorious.org/+qt-maemo-developers/qt/qt-maemo&lt;br /&gt;
* Qt 4.5 (Fremantle)&lt;br /&gt;
** http://gitorious.org/+qt-maemo-developers/qt/qt-maemo&lt;br /&gt;
* Qt 4.6 (Fremantle)&lt;br /&gt;
** http://qt.gitorious.org/qt/x11-maemo&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=[[Image:Preferences-desktop-user.png]] Get Help=&lt;br /&gt;
* Forums&lt;br /&gt;
** [http://discussion.forum.nokia.com/forum/forumdisplay.php?f=220 Qt for Maemo Forum Nokia Discussion board]&lt;br /&gt;
** [https://garage.maemo.org/forum/?group_id=424 Old qt4.garage.maemo.org forum]&lt;br /&gt;
* IRC&lt;br /&gt;
** Official Qt for Maemo IRC Channel&lt;br /&gt;
** Click [http://webchat.freenode.net/?channels=qt-maemo here] to join the #qt-maemo channel in frenode (irc.freenode.net).&lt;br /&gt;
&lt;br /&gt;
* Mailing list&lt;br /&gt;
** [https://garage.maemo.org/mailman/listinfo/qt4-devel Click here to Subscribe to the Qt community ML]&lt;/div&gt;</summary>
		<author><name>192.100.124.219</name></author>
	</entry>
	<entry>
		<id>https://maemo.octonezd.me/index.php?title=Qt-Maemo&amp;diff=34122</id>
		<title>Qt-Maemo</title>
		<link rel="alternate" type="text/html" href="https://maemo.octonezd.me/index.php?title=Qt-Maemo&amp;diff=34122"/>
		<updated>2009-12-18T13:15:48Z</updated>

		<summary type="html">&lt;p&gt;192.100.124.219: /* Image:Help-contents.png Docs */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&lt;br /&gt;
&lt;br /&gt;
=[[Image:Kblogger.png‎ ]] News=&lt;br /&gt;
&amp;lt;div id=&amp;quot;news&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;tm&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;bm&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;lm&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;rm&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;tl&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;tr&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;bl&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;br&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;ul class=&amp;quot;recent&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;li class=&amp;quot;first&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;/li&amp;gt;&lt;br /&gt;
  &amp;lt;li&amp;gt;&lt;br /&gt;
      &amp;lt;b&amp;gt;11 Dec 09&amp;lt;/b&amp;gt; - Bye bye old static web pages.. all our pages are now in Maemo Wiki. Old website is [http://qt4.garage.maemo.org/index-old.html here]&lt;br /&gt;
  &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ul&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
.&lt;br /&gt;
&lt;br /&gt;
=[[Image:Intro.png]] What is Qt?=&lt;br /&gt;
Qt (pronounced as the English word &amp;quot;cute&amp;quot;) is a cross-platform application development framework.&lt;br /&gt;
&lt;br /&gt;
It is produced by Nokia&#039;s Qt Development Frameworks division, which came into being after Nokia&#039;s acquisition of the Norwegian company Trolltech.&lt;br /&gt;
&lt;br /&gt;
Qt uses standard C++, but makes extensive use of the C pre-processor to enrich the language. Qt can also be used in several other programming languages via language bindings. &lt;br /&gt;
&lt;br /&gt;
Distributed under the terms of the GNU Lesser General Public License (among others), Qt is free and open source software.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=[[Image:Rocket.png]] Maemo Qt main features=&lt;br /&gt;
* Hildon Style&lt;br /&gt;
* Hildon Input Method&lt;br /&gt;
* Optimizations&lt;br /&gt;
* Hildon specific widget&lt;br /&gt;
** partial support in Qt 4.5&lt;br /&gt;
** Qt 4.6 will have full support&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= [[Image:Fileview-preview.png]] Maemo Qt in Actions =&lt;br /&gt;
* Diablo Maemo Qt&lt;br /&gt;
 ADD_HERE_SOME_PICS&lt;br /&gt;
* Fremantle Maemo Qt&lt;br /&gt;
 ADD HERE SOME PICS&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=[[Image:Pda.png]] Supported Maemo devices=&lt;br /&gt;
* Nokia N800/N810 (OS2008/Maemo4.1/Diablo)&lt;br /&gt;
* Nokia N900 (OS2009/Maemo5/Fremantle)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=[[Image:Ktorrent.png‎ ]] Installing Qt=&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div id=&amp;quot;news&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;tm&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;bm&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;lm&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;rm&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;tl&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;tr&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;bl&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;br&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;ul class=&amp;quot;recent&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;li class=&amp;quot;first&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;H3&amp;gt;N8x0&amp;lt;/H3&amp;gt;&lt;br /&gt;
Supported Maemo version: 4.1 (Diablo)&lt;br /&gt;
&lt;br /&gt;
Latest stable packages are into extras repository:&amp;lt;br&amp;gt;&lt;br /&gt;
deb http://repository.maemo.org/extras/ diablo free non-free&lt;br /&gt;
&lt;br /&gt;
Testing packages are in extras-devel&amp;lt;br&amp;gt;&lt;br /&gt;
deb http://repository.maemo.org/extras-devel/ diablo free non-free&lt;br /&gt;
&lt;br /&gt;
Install Qt binaries onto the device: &amp;lt;i&amp;gt;sudo gainroot &amp;amp;&amp;amp; apt-get install libqt4-gui&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Install Qt binaries and development packages into the SDK:&lt;br /&gt;
&amp;lt;i&amp;gt;fakeroot apt-get install libqt4-dev&amp;lt;/i&amp;gt;&lt;br /&gt;
  &amp;lt;/li&amp;gt;&lt;br /&gt;
  &amp;lt;li class=&amp;quot;&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;H3&amp;gt;N900&amp;lt;/H3&amp;gt;&lt;br /&gt;
Supported Maemo version: 5 (Fremantle)&lt;br /&gt;
&lt;br /&gt;
Qt core packages (qtcore, xml...) are pre-installed into the device. Rest of packages (GUI, webkit...) are in the Application repository (enabled by default in every device).&lt;br /&gt;
&lt;br /&gt;
They are downloaded automatically when user install application packages that depends from those.&lt;br /&gt;
&lt;br /&gt;
OVI store can host Maemo Qt Applications as well as other official Maemo repositories.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Qt 4.5 - community port&#039;&#039;&#039; core packages are already into the device. &lt;br /&gt;
&lt;br /&gt;
- Installing Qt binaries into the device: &amp;lt;i&amp;gt;sudo gainroot &amp;amp;&amp;amp; apt-get install libqt4-gui&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- Installing Qt binaries and development packages in scratchbox: &amp;lt;i&amp;gt;fakeroot apt-get install libqt4-dev&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Qt 4.6&#039;&#039;&#039; is still underdevelopment. It&#039;s in extras-devel; To install Qt 4.6:&lt;br /&gt;
&lt;br /&gt;
- Add add extras-devel repository to /etc/apt/source.list. You can do that adding following line to that file.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;i&amp;gt;deb http://repository.maemo.org/extras-devel/ fremantle free non-free&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- Run &amp;lt;i&amp;gt;apt-get update&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- Install lib packages into the device with: &amp;lt;i&amp;gt;fakeroot apt-get install libqt4-maemo5-gui&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- Install dev packages into the SDK with: &amp;lt;i&amp;gt;fakeroot apt-get install libqt4-maemo5-dev&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Note: &lt;br /&gt;
&lt;br /&gt;
- Qt 4.6tp is installed to /opt/qt4-maemo5&lt;br /&gt;
  &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ul&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=[[Image:Available-qtapps-32.png‎ ]]Available and proposed Qt Applications=&lt;br /&gt;
If you want to port a Qt application to Maemo or if you want to check if an application you love has been already ported.. well [http://wiki.maemo.org/Qt4HildonApplications this] is the place you would like to check; &lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=[[Image:Help-contents.png]] Docs=&lt;br /&gt;
&amp;lt;b&amp;gt;Qt:&amp;lt;/b&amp;gt;&lt;br /&gt;
* [http://wiki.maemo.org/Qt4Hildon Qt 4 Hildon]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Non-Qt stuff:&amp;lt;/b&amp;gt;&lt;br /&gt;
* Fremantle: &lt;br /&gt;
** [http://sw.nokia.com/id/a3187f95-ad88-4233-b0ef-a182da3ec1c7/Hildon_2_2_Widget_UI_Specification_v1_0_en.pdf Hildon 2.2 Widget UI Spec -PDF]&lt;br /&gt;
** [http://www.forum.nokia.com/info/sw.nokia.com/id/eb8a68ba-6225-4d84-ba8f-a00e4a05ff6f/Hildon_2_2_UI_Style_Guide.html Hildon 2.2 UI Style Guid -PDF]&lt;br /&gt;
* Diablo&lt;br /&gt;
** ADD_SOMETHING_HERE&lt;br /&gt;
* Other Docs&lt;br /&gt;
** [http://www.forum.nokia.com/Tools_Docs_and_Code/Documentation/Latest.xhtml Forum Nokia Docs] contain Maemo as well as other documentation related to other Nokia platforms.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=[[Image:Bug.png]] Bug tracking=&lt;br /&gt;
* Diablo &amp;amp; Fremanlte Qt 4.5 port&lt;br /&gt;
** [https://bugs.maemo.org/buglist.cgi?query_format=specific&amp;amp;order=relevance+desc&amp;amp;bug_status=__open__&amp;amp;product=Qt&amp;amp;content= View bug list]&lt;br /&gt;
** [https://bugs.maemo.org/enter_bug.cgi?product=Qt Report a new bug]&lt;br /&gt;
* Fremantle Qt 4.6 port&lt;br /&gt;
** [http://doc.trolltech.com/4.6/bughowto.html How to report a bug]&lt;br /&gt;
** [http://bugreports.qt.nokia.com/secure/CreateIssue!default.jspa Report a new bug]&lt;br /&gt;
** [http://bugreports.qt.nokia.com/secure/IssueNavigator.jspa?reset=true&amp;amp;&amp;amp;query=maemo&amp;amp;summary=true&amp;amp;description=true&amp;amp;body=true&amp;amp;environment=true&amp;amp;pid=10510 View bug list]&lt;br /&gt;
&lt;br /&gt;
=[[Image:Helmet.png]] Code=&lt;br /&gt;
* Qt 4.5 (Diablo)&lt;br /&gt;
** http://gitorious.org/+qt-maemo-developers/qt/qt-maemo&lt;br /&gt;
* Qt 4.5 (Fremantle)&lt;br /&gt;
** http://gitorious.org/+qt-maemo-developers/qt/qt-maemo&lt;br /&gt;
* Qt 4.6 (Fremantle)&lt;br /&gt;
** http://qt.gitorious.org/qt/x11-maemo&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=[[Image:Preferences-desktop-user.png]] Get Help=&lt;br /&gt;
* Forums&lt;br /&gt;
** [http://discussion.forum.nokia.com/forum/forumdisplay.php?f=220 Qt for Maemo Forum Nokia Discussion board]&lt;br /&gt;
** [https://garage.maemo.org/forum/?group_id=424 Old qt4.garage.maemo.org forum]&lt;br /&gt;
* IRC&lt;br /&gt;
** Official Qt for Maemo IRC Channel&lt;br /&gt;
** Click [http://webchat.freenode.net/?channels=qt-maemo here] to join the #qt-maemo channel in frenode (irc.freenode.net).&lt;br /&gt;
&lt;br /&gt;
* Mailing list&lt;br /&gt;
** [https://garage.maemo.org/mailman/listinfo/qt4-devel Click here to Subscribe to the Qt community ML]&lt;/div&gt;</summary>
		<author><name>192.100.124.219</name></author>
	</entry>
	<entry>
		<id>https://maemo.octonezd.me/index.php?title=Qt-Maemo&amp;diff=34123</id>
		<title>Qt-Maemo</title>
		<link rel="alternate" type="text/html" href="https://maemo.octonezd.me/index.php?title=Qt-Maemo&amp;diff=34123"/>
		<updated>2009-12-18T12:55:31Z</updated>

		<summary type="html">&lt;p&gt;192.100.124.219: /* Image:Preferences-desktop-user.png Get Help */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&lt;br /&gt;
&lt;br /&gt;
=[[Image:Kblogger.png‎ ]] News=&lt;br /&gt;
&amp;lt;div id=&amp;quot;news&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;tm&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;bm&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;lm&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;rm&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;tl&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;tr&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;bl&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;br&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;ul class=&amp;quot;recent&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;li class=&amp;quot;first&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;/li&amp;gt;&lt;br /&gt;
  &amp;lt;li&amp;gt;&lt;br /&gt;
      &amp;lt;b&amp;gt;11 Dec 09&amp;lt;/b&amp;gt; - Bye bye old static web pages.. all our pages are now in Maemo Wiki. Old website is [http://qt4.garage.maemo.org/index-old.html here]&lt;br /&gt;
  &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ul&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
.&lt;br /&gt;
&lt;br /&gt;
=[[Image:Intro.png]] What is Qt?=&lt;br /&gt;
Qt (pronounced as the English word &amp;quot;cute&amp;quot;) is a cross-platform application development framework.&lt;br /&gt;
&lt;br /&gt;
It is produced by Nokia&#039;s Qt Development Frameworks division, which came into being after Nokia&#039;s acquisition of the Norwegian company Trolltech.&lt;br /&gt;
&lt;br /&gt;
Qt uses standard C++, but makes extensive use of the C pre-processor to enrich the language. Qt can also be used in several other programming languages via language bindings. &lt;br /&gt;
&lt;br /&gt;
Distributed under the terms of the GNU Lesser General Public License (among others), Qt is free and open source software.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=[[Image:Rocket.png]] Maemo Qt main features=&lt;br /&gt;
* Hildon Style&lt;br /&gt;
* Hildon Input Method&lt;br /&gt;
* Optimizations&lt;br /&gt;
* Hildon specific widget&lt;br /&gt;
** partial support in Qt 4.5&lt;br /&gt;
** Qt 4.6 will have full support&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= [[Image:Fileview-preview.png]] Maemo Qt in Actions =&lt;br /&gt;
* Diablo Maemo Qt&lt;br /&gt;
 ADD_HERE_SOME_PICS&lt;br /&gt;
* Fremantle Maemo Qt&lt;br /&gt;
 ADD HERE SOME PICS&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=[[Image:Pda.png]] Supported Maemo devices=&lt;br /&gt;
* Nokia N800/N810 (OS2008/Maemo4.1/Diablo)&lt;br /&gt;
* Nokia N900 (OS2009/Maemo5/Fremantle)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=[[Image:Ktorrent.png‎ ]] Installing Qt=&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div id=&amp;quot;news&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;tm&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;bm&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;lm&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;rm&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;tl&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;tr&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;bl&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;br&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;ul class=&amp;quot;recent&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;li class=&amp;quot;first&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;H3&amp;gt;N8x0&amp;lt;/H3&amp;gt;&lt;br /&gt;
Supported Maemo version: 4.1 (Diablo)&lt;br /&gt;
&lt;br /&gt;
Latest stable packages are into extras repository:&amp;lt;br&amp;gt;&lt;br /&gt;
deb http://repository.maemo.org/extras/ diablo free non-free&lt;br /&gt;
&lt;br /&gt;
Testing packages are in extras-devel&amp;lt;br&amp;gt;&lt;br /&gt;
deb http://repository.maemo.org/extras-devel/ diablo free non-free&lt;br /&gt;
&lt;br /&gt;
Install Qt binaries onto the device: &amp;lt;i&amp;gt;sudo gainroot &amp;amp;&amp;amp; apt-get install libqt4-gui&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Install Qt binaries and development packages into the SDK:&lt;br /&gt;
&amp;lt;i&amp;gt;fakeroot apt-get install libqt4-dev&amp;lt;/i&amp;gt;&lt;br /&gt;
  &amp;lt;/li&amp;gt;&lt;br /&gt;
  &amp;lt;li class=&amp;quot;&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;H3&amp;gt;N900&amp;lt;/H3&amp;gt;&lt;br /&gt;
Supported Maemo version: 5 (Fremantle)&lt;br /&gt;
&lt;br /&gt;
Qt core packages (qtcore, xml...) are pre-installed into the device. Rest of packages (GUI, webkit...) are in the Application repository (enabled by default in every device).&lt;br /&gt;
&lt;br /&gt;
They are downloaded automatically when user install application packages that depends from those.&lt;br /&gt;
&lt;br /&gt;
OVI store can host Maemo Qt Applications as well as other official Maemo repositories.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Qt 4.5 - community port&#039;&#039;&#039; core packages are already into the device. &lt;br /&gt;
&lt;br /&gt;
- Installing Qt binaries into the device: &amp;lt;i&amp;gt;sudo gainroot &amp;amp;&amp;amp; apt-get install libqt4-gui&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- Installing Qt binaries and development packages in scratchbox: &amp;lt;i&amp;gt;fakeroot apt-get install libqt4-dev&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Qt 4.6&#039;&#039;&#039; is still underdevelopment. It&#039;s in extras-devel; To install Qt 4.6:&lt;br /&gt;
&lt;br /&gt;
- Add add extras-devel repository to /etc/apt/source.list. You can do that adding following line to that file.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;i&amp;gt;deb http://repository.maemo.org/extras-devel/ fremantle free non-free&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- Run &amp;lt;i&amp;gt;apt-get update&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- Install lib packages into the device with: &amp;lt;i&amp;gt;fakeroot apt-get install libqt4-maemo5-gui&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- Install dev packages into the SDK with: &amp;lt;i&amp;gt;fakeroot apt-get install libqt4-maemo5-dev&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Note: &lt;br /&gt;
&lt;br /&gt;
- Qt 4.6tp is installed to /opt/qt4-maemo5&lt;br /&gt;
  &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ul&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=[[Image:Available-qtapps-32.png‎ ]]Available and proposed Qt Applications=&lt;br /&gt;
If you want to port a Qt application to Maemo or if you want to check if an application you love has been already ported.. well [http://wiki.maemo.org/Qt4HildonApplications this] is the place you would like to check; &lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=[[Image:Help-contents.png]] Docs=&lt;br /&gt;
Qt:&lt;br /&gt;
* [http://wiki.maemo.org/Qt4Hildon Qt 4 Hildon]&lt;br /&gt;
&lt;br /&gt;
Non-Qt stuff:&lt;br /&gt;
* Fremantle: &lt;br /&gt;
** [http://sw.nokia.com/id/a3187f95-ad88-4233-b0ef-a182da3ec1c7/Hildon_2_2_Widget_UI_Specification_v1_0_en.pdf Hildon 2.2 Widget UI Spec -PDF]&lt;br /&gt;
** [http://www.forum.nokia.com/info/sw.nokia.com/id/eb8a68ba-6225-4d84-ba8f-a00e4a05ff6f/Hildon_2_2_UI_Style_Guide.html Hildon 2.2 UI Style Guid -PDF]&lt;br /&gt;
* Diablo&lt;br /&gt;
** ADD_SOMETHING_HERE&lt;br /&gt;
* Other Docs&lt;br /&gt;
** [http://www.forum.nokia.com/Tools_Docs_and_Code/Documentation/Latest.xhtml Forum Nokia Docs] contain Maemo as well as other documentation related to other Nokia platforms.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=[[Image:Bug.png]] Bug tracking=&lt;br /&gt;
* Diablo &amp;amp; Fremanlte Qt 4.5 port&lt;br /&gt;
** [https://bugs.maemo.org/buglist.cgi?query_format=specific&amp;amp;order=relevance+desc&amp;amp;bug_status=__open__&amp;amp;product=Qt&amp;amp;content= View bug list]&lt;br /&gt;
** [https://bugs.maemo.org/enter_bug.cgi?product=Qt Report a new bug]&lt;br /&gt;
* Fremantle Qt 4.6 port&lt;br /&gt;
** [http://doc.trolltech.com/4.6/bughowto.html How to report a bug]&lt;br /&gt;
** [http://bugreports.qt.nokia.com/secure/CreateIssue!default.jspa Report a new bug]&lt;br /&gt;
** [http://bugreports.qt.nokia.com/secure/IssueNavigator.jspa?reset=true&amp;amp;&amp;amp;query=maemo&amp;amp;summary=true&amp;amp;description=true&amp;amp;body=true&amp;amp;environment=true&amp;amp;pid=10510 View bug list]&lt;br /&gt;
&lt;br /&gt;
=[[Image:Helmet.png]] Code=&lt;br /&gt;
* Qt 4.5 (Diablo)&lt;br /&gt;
** http://gitorious.org/+qt-maemo-developers/qt/qt-maemo&lt;br /&gt;
* Qt 4.5 (Fremantle)&lt;br /&gt;
** http://gitorious.org/+qt-maemo-developers/qt/qt-maemo&lt;br /&gt;
* Qt 4.6 (Fremantle)&lt;br /&gt;
** http://qt.gitorious.org/qt/x11-maemo&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=[[Image:Preferences-desktop-user.png]] Get Help=&lt;br /&gt;
* Forums&lt;br /&gt;
** [http://discussion.forum.nokia.com/forum/forumdisplay.php?f=220 Qt for Maemo Forum Nokia Discussion board]&lt;br /&gt;
** [https://garage.maemo.org/forum/?group_id=424 Old qt4.garage.maemo.org forum]&lt;br /&gt;
* IRC&lt;br /&gt;
** Official Qt for Maemo IRC Channel&lt;br /&gt;
** Click [http://webchat.freenode.net/?channels=qt-maemo here] to join the #qt-maemo channel in frenode (irc.freenode.net).&lt;br /&gt;
&lt;br /&gt;
* Mailing list&lt;br /&gt;
** [https://garage.maemo.org/mailman/listinfo/qt4-devel Click here to Subscribe to the Qt community ML]&lt;/div&gt;</summary>
		<author><name>192.100.124.219</name></author>
	</entry>
	<entry>
		<id>https://maemo.octonezd.me/index.php?title=Qt-Maemo&amp;diff=34124</id>
		<title>Qt-Maemo</title>
		<link rel="alternate" type="text/html" href="https://maemo.octonezd.me/index.php?title=Qt-Maemo&amp;diff=34124"/>
		<updated>2009-12-18T12:54:03Z</updated>

		<summary type="html">&lt;p&gt;192.100.124.219: /* Image:Preferences-desktop-user.png Get Help */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&lt;br /&gt;
&lt;br /&gt;
=[[Image:Kblogger.png‎ ]] News=&lt;br /&gt;
&amp;lt;div id=&amp;quot;news&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;tm&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;bm&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;lm&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;rm&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;tl&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;tr&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;bl&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;br&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;ul class=&amp;quot;recent&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;li class=&amp;quot;first&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;/li&amp;gt;&lt;br /&gt;
  &amp;lt;li&amp;gt;&lt;br /&gt;
      &amp;lt;b&amp;gt;11 Dec 09&amp;lt;/b&amp;gt; - Bye bye old static web pages.. all our pages are now in Maemo Wiki. Old website is [http://qt4.garage.maemo.org/index-old.html here]&lt;br /&gt;
  &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ul&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
.&lt;br /&gt;
&lt;br /&gt;
=[[Image:Intro.png]] What is Qt?=&lt;br /&gt;
Qt (pronounced as the English word &amp;quot;cute&amp;quot;) is a cross-platform application development framework.&lt;br /&gt;
&lt;br /&gt;
It is produced by Nokia&#039;s Qt Development Frameworks division, which came into being after Nokia&#039;s acquisition of the Norwegian company Trolltech.&lt;br /&gt;
&lt;br /&gt;
Qt uses standard C++, but makes extensive use of the C pre-processor to enrich the language. Qt can also be used in several other programming languages via language bindings. &lt;br /&gt;
&lt;br /&gt;
Distributed under the terms of the GNU Lesser General Public License (among others), Qt is free and open source software.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=[[Image:Rocket.png]] Maemo Qt main features=&lt;br /&gt;
* Hildon Style&lt;br /&gt;
* Hildon Input Method&lt;br /&gt;
* Optimizations&lt;br /&gt;
* Hildon specific widget&lt;br /&gt;
** partial support in Qt 4.5&lt;br /&gt;
** Qt 4.6 will have full support&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= [[Image:Fileview-preview.png]] Maemo Qt in Actions =&lt;br /&gt;
* Diablo Maemo Qt&lt;br /&gt;
 ADD_HERE_SOME_PICS&lt;br /&gt;
* Fremantle Maemo Qt&lt;br /&gt;
 ADD HERE SOME PICS&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=[[Image:Pda.png]] Supported Maemo devices=&lt;br /&gt;
* Nokia N800/N810 (OS2008/Maemo4.1/Diablo)&lt;br /&gt;
* Nokia N900 (OS2009/Maemo5/Fremantle)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=[[Image:Ktorrent.png‎ ]] Installing Qt=&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div id=&amp;quot;news&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;tm&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;bm&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;lm&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;rm&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;tl&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;tr&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;bl&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;br&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;ul class=&amp;quot;recent&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;li class=&amp;quot;first&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;H3&amp;gt;N8x0&amp;lt;/H3&amp;gt;&lt;br /&gt;
Supported Maemo version: 4.1 (Diablo)&lt;br /&gt;
&lt;br /&gt;
Latest stable packages are into extras repository:&amp;lt;br&amp;gt;&lt;br /&gt;
deb http://repository.maemo.org/extras/ diablo free non-free&lt;br /&gt;
&lt;br /&gt;
Testing packages are in extras-devel&amp;lt;br&amp;gt;&lt;br /&gt;
deb http://repository.maemo.org/extras-devel/ diablo free non-free&lt;br /&gt;
&lt;br /&gt;
Install Qt binaries onto the device: &amp;lt;i&amp;gt;sudo gainroot &amp;amp;&amp;amp; apt-get install libqt4-gui&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Install Qt binaries and development packages into the SDK:&lt;br /&gt;
&amp;lt;i&amp;gt;fakeroot apt-get install libqt4-dev&amp;lt;/i&amp;gt;&lt;br /&gt;
  &amp;lt;/li&amp;gt;&lt;br /&gt;
  &amp;lt;li class=&amp;quot;&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;H3&amp;gt;N900&amp;lt;/H3&amp;gt;&lt;br /&gt;
Supported Maemo version: 5 (Fremantle)&lt;br /&gt;
&lt;br /&gt;
Qt core packages (qtcore, xml...) are pre-installed into the device. Rest of packages (GUI, webkit...) are in the Application repository (enabled by default in every device).&lt;br /&gt;
&lt;br /&gt;
They are downloaded automatically when user install application packages that depends from those.&lt;br /&gt;
&lt;br /&gt;
OVI store can host Maemo Qt Applications as well as other official Maemo repositories.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Qt 4.5 - community port&#039;&#039;&#039; core packages are already into the device. &lt;br /&gt;
&lt;br /&gt;
- Installing Qt binaries into the device: &amp;lt;i&amp;gt;sudo gainroot &amp;amp;&amp;amp; apt-get install libqt4-gui&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- Installing Qt binaries and development packages in scratchbox: &amp;lt;i&amp;gt;fakeroot apt-get install libqt4-dev&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Qt 4.6&#039;&#039;&#039; is still underdevelopment. It&#039;s in extras-devel; To install Qt 4.6:&lt;br /&gt;
&lt;br /&gt;
- Add add extras-devel repository to /etc/apt/source.list. You can do that adding following line to that file.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;i&amp;gt;deb http://repository.maemo.org/extras-devel/ fremantle free non-free&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- Run &amp;lt;i&amp;gt;apt-get update&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- Install lib packages into the device with: &amp;lt;i&amp;gt;fakeroot apt-get install libqt4-maemo5-gui&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- Install dev packages into the SDK with: &amp;lt;i&amp;gt;fakeroot apt-get install libqt4-maemo5-dev&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Note: &lt;br /&gt;
&lt;br /&gt;
- Qt 4.6tp is installed to /opt/qt4-maemo5&lt;br /&gt;
  &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ul&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=[[Image:Available-qtapps-32.png‎ ]]Available and proposed Qt Applications=&lt;br /&gt;
If you want to port a Qt application to Maemo or if you want to check if an application you love has been already ported.. well [http://wiki.maemo.org/Qt4HildonApplications this] is the place you would like to check; &lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=[[Image:Help-contents.png]] Docs=&lt;br /&gt;
Qt:&lt;br /&gt;
* [http://wiki.maemo.org/Qt4Hildon Qt 4 Hildon]&lt;br /&gt;
&lt;br /&gt;
Non-Qt stuff:&lt;br /&gt;
* Fremantle: &lt;br /&gt;
** [http://sw.nokia.com/id/a3187f95-ad88-4233-b0ef-a182da3ec1c7/Hildon_2_2_Widget_UI_Specification_v1_0_en.pdf Hildon 2.2 Widget UI Spec -PDF]&lt;br /&gt;
** [http://www.forum.nokia.com/info/sw.nokia.com/id/eb8a68ba-6225-4d84-ba8f-a00e4a05ff6f/Hildon_2_2_UI_Style_Guide.html Hildon 2.2 UI Style Guid -PDF]&lt;br /&gt;
* Diablo&lt;br /&gt;
** ADD_SOMETHING_HERE&lt;br /&gt;
* Other Docs&lt;br /&gt;
** [http://www.forum.nokia.com/Tools_Docs_and_Code/Documentation/Latest.xhtml Forum Nokia Docs] contain Maemo as well as other documentation related to other Nokia platforms.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=[[Image:Bug.png]] Bug tracking=&lt;br /&gt;
* Diablo &amp;amp; Fremanlte Qt 4.5 port&lt;br /&gt;
** [https://bugs.maemo.org/buglist.cgi?query_format=specific&amp;amp;order=relevance+desc&amp;amp;bug_status=__open__&amp;amp;product=Qt&amp;amp;content= View bug list]&lt;br /&gt;
** [https://bugs.maemo.org/enter_bug.cgi?product=Qt Report a new bug]&lt;br /&gt;
* Fremantle Qt 4.6 port&lt;br /&gt;
** [http://doc.trolltech.com/4.6/bughowto.html How to report a bug]&lt;br /&gt;
** [http://bugreports.qt.nokia.com/secure/CreateIssue!default.jspa Report a new bug]&lt;br /&gt;
** [http://bugreports.qt.nokia.com/secure/IssueNavigator.jspa?reset=true&amp;amp;&amp;amp;query=maemo&amp;amp;summary=true&amp;amp;description=true&amp;amp;body=true&amp;amp;environment=true&amp;amp;pid=10510 View bug list]&lt;br /&gt;
&lt;br /&gt;
=[[Image:Helmet.png]] Code=&lt;br /&gt;
* Qt 4.5 (Diablo)&lt;br /&gt;
** http://gitorious.org/+qt-maemo-developers/qt/qt-maemo&lt;br /&gt;
* Qt 4.5 (Fremantle)&lt;br /&gt;
** http://gitorious.org/+qt-maemo-developers/qt/qt-maemo&lt;br /&gt;
* Qt 4.6 (Fremantle)&lt;br /&gt;
** http://qt.gitorious.org/qt/x11-maemo&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=[[Image:Preferences-desktop-user.png]] Get Help=&lt;br /&gt;
* Forums&lt;br /&gt;
** [http://discussion.forum.nokia.com/forum/forumdisplay.php?f=220 Click here to enter Forum Nokia Discussion board]&lt;br /&gt;
** [https://garage.maemo.org/forum/?group_id=424 Click here to enter Old garage.maemo.org Forum]&lt;br /&gt;
* IRC&lt;br /&gt;
** Currently this is main and faster way to communicate with Qt 4.6 and Qt 4.5 developers.&lt;br /&gt;
** Click [http://webchat.freenode.net/?channels=qt-maemo here] to join the #qt-maemo channel in frenode (irc.freenode.net).&lt;br /&gt;
&lt;br /&gt;
* Mailing list&lt;br /&gt;
** [https://garage.maemo.org/mailman/listinfo/qt4-devel Click here to Subscribe to the Qt community ML]&lt;/div&gt;</summary>
		<author><name>192.100.124.219</name></author>
	</entry>
	<entry>
		<id>https://maemo.octonezd.me/index.php?title=Qt-Maemo&amp;diff=34125</id>
		<title>Qt-Maemo</title>
		<link rel="alternate" type="text/html" href="https://maemo.octonezd.me/index.php?title=Qt-Maemo&amp;diff=34125"/>
		<updated>2009-12-18T12:53:05Z</updated>

		<summary type="html">&lt;p&gt;192.100.124.219: /* Image:Preferences-desktop-user.png Contacting us */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&lt;br /&gt;
&lt;br /&gt;
=[[Image:Kblogger.png‎ ]] News=&lt;br /&gt;
&amp;lt;div id=&amp;quot;news&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;tm&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;bm&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;lm&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;rm&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;tl&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;tr&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;bl&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;br&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;ul class=&amp;quot;recent&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;li class=&amp;quot;first&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;/li&amp;gt;&lt;br /&gt;
  &amp;lt;li&amp;gt;&lt;br /&gt;
      &amp;lt;b&amp;gt;11 Dec 09&amp;lt;/b&amp;gt; - Bye bye old static web pages.. all our pages are now in Maemo Wiki. Old website is [http://qt4.garage.maemo.org/index-old.html here]&lt;br /&gt;
  &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ul&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
.&lt;br /&gt;
&lt;br /&gt;
=[[Image:Intro.png]] What is Qt?=&lt;br /&gt;
Qt (pronounced as the English word &amp;quot;cute&amp;quot;) is a cross-platform application development framework.&lt;br /&gt;
&lt;br /&gt;
It is produced by Nokia&#039;s Qt Development Frameworks division, which came into being after Nokia&#039;s acquisition of the Norwegian company Trolltech.&lt;br /&gt;
&lt;br /&gt;
Qt uses standard C++, but makes extensive use of the C pre-processor to enrich the language. Qt can also be used in several other programming languages via language bindings. &lt;br /&gt;
&lt;br /&gt;
Distributed under the terms of the GNU Lesser General Public License (among others), Qt is free and open source software.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=[[Image:Rocket.png]] Maemo Qt main features=&lt;br /&gt;
* Hildon Style&lt;br /&gt;
* Hildon Input Method&lt;br /&gt;
* Optimizations&lt;br /&gt;
* Hildon specific widget&lt;br /&gt;
** partial support in Qt 4.5&lt;br /&gt;
** Qt 4.6 will have full support&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= [[Image:Fileview-preview.png]] Maemo Qt in Actions =&lt;br /&gt;
* Diablo Maemo Qt&lt;br /&gt;
 ADD_HERE_SOME_PICS&lt;br /&gt;
* Fremantle Maemo Qt&lt;br /&gt;
 ADD HERE SOME PICS&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=[[Image:Pda.png]] Supported Maemo devices=&lt;br /&gt;
* Nokia N800/N810 (OS2008/Maemo4.1/Diablo)&lt;br /&gt;
* Nokia N900 (OS2009/Maemo5/Fremantle)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=[[Image:Ktorrent.png‎ ]] Installing Qt=&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div id=&amp;quot;news&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;tm&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;bm&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;lm&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;rm&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;tl&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;tr&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;bl&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;br&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;ul class=&amp;quot;recent&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;li class=&amp;quot;first&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;H3&amp;gt;N8x0&amp;lt;/H3&amp;gt;&lt;br /&gt;
Supported Maemo version: 4.1 (Diablo)&lt;br /&gt;
&lt;br /&gt;
Latest stable packages are into extras repository:&amp;lt;br&amp;gt;&lt;br /&gt;
deb http://repository.maemo.org/extras/ diablo free non-free&lt;br /&gt;
&lt;br /&gt;
Testing packages are in extras-devel&amp;lt;br&amp;gt;&lt;br /&gt;
deb http://repository.maemo.org/extras-devel/ diablo free non-free&lt;br /&gt;
&lt;br /&gt;
Install Qt binaries onto the device: &amp;lt;i&amp;gt;sudo gainroot &amp;amp;&amp;amp; apt-get install libqt4-gui&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Install Qt binaries and development packages into the SDK:&lt;br /&gt;
&amp;lt;i&amp;gt;fakeroot apt-get install libqt4-dev&amp;lt;/i&amp;gt;&lt;br /&gt;
  &amp;lt;/li&amp;gt;&lt;br /&gt;
  &amp;lt;li class=&amp;quot;&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;H3&amp;gt;N900&amp;lt;/H3&amp;gt;&lt;br /&gt;
Supported Maemo version: 5 (Fremantle)&lt;br /&gt;
&lt;br /&gt;
Qt core packages (qtcore, xml...) are pre-installed into the device. Rest of packages (GUI, webkit...) are in the Application repository (enabled by default in every device).&lt;br /&gt;
&lt;br /&gt;
They are downloaded automatically when user install application packages that depends from those.&lt;br /&gt;
&lt;br /&gt;
OVI store can host Maemo Qt Applications as well as other official Maemo repositories.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Qt 4.5 - community port&#039;&#039;&#039; core packages are already into the device. &lt;br /&gt;
&lt;br /&gt;
- Installing Qt binaries into the device: &amp;lt;i&amp;gt;sudo gainroot &amp;amp;&amp;amp; apt-get install libqt4-gui&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- Installing Qt binaries and development packages in scratchbox: &amp;lt;i&amp;gt;fakeroot apt-get install libqt4-dev&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Qt 4.6&#039;&#039;&#039; is still underdevelopment. It&#039;s in extras-devel; To install Qt 4.6:&lt;br /&gt;
&lt;br /&gt;
- Add add extras-devel repository to /etc/apt/source.list. You can do that adding following line to that file.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;i&amp;gt;deb http://repository.maemo.org/extras-devel/ fremantle free non-free&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- Run &amp;lt;i&amp;gt;apt-get update&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- Install lib packages into the device with: &amp;lt;i&amp;gt;fakeroot apt-get install libqt4-maemo5-gui&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- Install dev packages into the SDK with: &amp;lt;i&amp;gt;fakeroot apt-get install libqt4-maemo5-dev&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Note: &lt;br /&gt;
&lt;br /&gt;
- Qt 4.6tp is installed to /opt/qt4-maemo5&lt;br /&gt;
  &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ul&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=[[Image:Available-qtapps-32.png‎ ]]Available and proposed Qt Applications=&lt;br /&gt;
If you want to port a Qt application to Maemo or if you want to check if an application you love has been already ported.. well [http://wiki.maemo.org/Qt4HildonApplications this] is the place you would like to check; &lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=[[Image:Help-contents.png]] Docs=&lt;br /&gt;
Qt:&lt;br /&gt;
* [http://wiki.maemo.org/Qt4Hildon Qt 4 Hildon]&lt;br /&gt;
&lt;br /&gt;
Non-Qt stuff:&lt;br /&gt;
* Fremantle: &lt;br /&gt;
** [http://sw.nokia.com/id/a3187f95-ad88-4233-b0ef-a182da3ec1c7/Hildon_2_2_Widget_UI_Specification_v1_0_en.pdf Hildon 2.2 Widget UI Spec -PDF]&lt;br /&gt;
** [http://www.forum.nokia.com/info/sw.nokia.com/id/eb8a68ba-6225-4d84-ba8f-a00e4a05ff6f/Hildon_2_2_UI_Style_Guide.html Hildon 2.2 UI Style Guid -PDF]&lt;br /&gt;
* Diablo&lt;br /&gt;
** ADD_SOMETHING_HERE&lt;br /&gt;
* Other Docs&lt;br /&gt;
** [http://www.forum.nokia.com/Tools_Docs_and_Code/Documentation/Latest.xhtml Forum Nokia Docs] contain Maemo as well as other documentation related to other Nokia platforms.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=[[Image:Bug.png]] Bug tracking=&lt;br /&gt;
* Diablo &amp;amp; Fremanlte Qt 4.5 port&lt;br /&gt;
** [https://bugs.maemo.org/buglist.cgi?query_format=specific&amp;amp;order=relevance+desc&amp;amp;bug_status=__open__&amp;amp;product=Qt&amp;amp;content= View bug list]&lt;br /&gt;
** [https://bugs.maemo.org/enter_bug.cgi?product=Qt Report a new bug]&lt;br /&gt;
* Fremantle Qt 4.6 port&lt;br /&gt;
** [http://doc.trolltech.com/4.6/bughowto.html How to report a bug]&lt;br /&gt;
** [http://bugreports.qt.nokia.com/secure/CreateIssue!default.jspa Report a new bug]&lt;br /&gt;
** [http://bugreports.qt.nokia.com/secure/IssueNavigator.jspa?reset=true&amp;amp;&amp;amp;query=maemo&amp;amp;summary=true&amp;amp;description=true&amp;amp;body=true&amp;amp;environment=true&amp;amp;pid=10510 View bug list]&lt;br /&gt;
&lt;br /&gt;
=[[Image:Helmet.png]] Code=&lt;br /&gt;
* Qt 4.5 (Diablo)&lt;br /&gt;
** http://gitorious.org/+qt-maemo-developers/qt/qt-maemo&lt;br /&gt;
* Qt 4.5 (Fremantle)&lt;br /&gt;
** http://gitorious.org/+qt-maemo-developers/qt/qt-maemo&lt;br /&gt;
* Qt 4.6 (Fremantle)&lt;br /&gt;
** http://qt.gitorious.org/qt/x11-maemo&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=[[Image:Preferences-desktop-user.png]] Get Help=&lt;br /&gt;
* IRC&lt;br /&gt;
** Currently this is main and faster way to communicate with Qt 4.6 and Qt 4.5 developers.&lt;br /&gt;
** Click [http://webchat.freenode.net/?channels=qt-maemo here] to join the #qt-maemo channel in frenode (irc.freenode.net).&lt;br /&gt;
&lt;br /&gt;
* Mailing list&lt;br /&gt;
** [https://garage.maemo.org/mailman/listinfo/qt4-devel Click here to Subscribe to the Qt community ML]&lt;br /&gt;
&lt;br /&gt;
* Forums&lt;br /&gt;
** [http://discussion.forum.nokia.com/forum/forumdisplay.php?f=220 Click here to enter Forum Nokia Discussion board]&lt;br /&gt;
** [https://garage.maemo.org/forum/?group_id=424 Click here to enter Old garage.maemo.org Forum]&lt;/div&gt;</summary>
		<author><name>192.100.124.219</name></author>
	</entry>
	<entry>
		<id>https://maemo.octonezd.me/index.php?title=Qt-Maemo&amp;diff=34127</id>
		<title>Qt-Maemo</title>
		<link rel="alternate" type="text/html" href="https://maemo.octonezd.me/index.php?title=Qt-Maemo&amp;diff=34127"/>
		<updated>2009-12-17T13:39:13Z</updated>

		<summary type="html">&lt;p&gt;192.100.124.219: /* Maemo Qt in Actions */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&lt;br /&gt;
&lt;br /&gt;
=[[Image:Kblogger.png‎ ]] News=&lt;br /&gt;
&amp;lt;div id=&amp;quot;news&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;tm&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;bm&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;lm&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;rm&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;tl&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;tr&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;bl&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;br&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;ul class=&amp;quot;recent&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;li class=&amp;quot;first&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;/li&amp;gt;&lt;br /&gt;
  &amp;lt;li&amp;gt;&lt;br /&gt;
      &amp;lt;b&amp;gt;11 Dec 09&amp;lt;/b&amp;gt; - Bye bye old static web pages.. all our pages are now in Maemo Wiki. Old website is [http://qt4.garage.maemo.org/index-old.html here]&lt;br /&gt;
  &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ul&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
.&lt;br /&gt;
&lt;br /&gt;
=[[Image:Intro.png]] What is Qt?=&lt;br /&gt;
Qt (pronounced as the English word &amp;quot;cute&amp;quot;) is a cross-platform application development framework.&lt;br /&gt;
&lt;br /&gt;
It is produced by Nokia&#039;s Qt Development Frameworks division, which came into being after Nokia&#039;s acquisition of the Norwegian company Trolltech.&lt;br /&gt;
&lt;br /&gt;
Qt uses standard C++, but makes extensive use of the C pre-processor to enrich the language. Qt can also be used in several other programming languages via language bindings. &lt;br /&gt;
&lt;br /&gt;
Distributed under the terms of the GNU Lesser General Public License (among others), Qt is free and open source software.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=[[Image:Rocket.png]] Maemo Qt main features=&lt;br /&gt;
* Hildon Style&lt;br /&gt;
* Hildon Input Method&lt;br /&gt;
* Optimizations&lt;br /&gt;
* Hildon specific widget&lt;br /&gt;
** partial support in Qt 4.5&lt;br /&gt;
** Qt 4.6 will have full support&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Maemo Qt in Actions =&lt;br /&gt;
* Diablo Maemo Qt&lt;br /&gt;
 ADD_HERE_SOME_THUMBS&lt;br /&gt;
* Fremantle Maemo Qt&lt;br /&gt;
 ADD HERE SOME THUMBS&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=[[Image:Pda.png]] Supported Maemo devices=&lt;br /&gt;
* Nokia N800/N810 (OS2008/Maemo4.1/Diablo)&lt;br /&gt;
* Nokia N900 (OS2009/Maemo5/Fremantle)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=[[Image:Ktorrent.png‎ ]] Installing Qt=&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div id=&amp;quot;news&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;tm&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;bm&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;lm&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;rm&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;tl&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;tr&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;bl&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;br&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;ul class=&amp;quot;recent&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;li class=&amp;quot;first&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;H3&amp;gt;N8x0&amp;lt;/H3&amp;gt;&lt;br /&gt;
Supported Maemo version: 4.1 (Diablo)&lt;br /&gt;
&lt;br /&gt;
Latest stable packages are into extras repository:&amp;lt;br&amp;gt;&lt;br /&gt;
deb http://repository.maemo.org/extras/ diablo free non-free&lt;br /&gt;
&lt;br /&gt;
Testing packages are in extras-devel&amp;lt;br&amp;gt;&lt;br /&gt;
deb http://repository.maemo.org/extras-devel/ diablo free non-free&lt;br /&gt;
&lt;br /&gt;
Install Qt binaries onto the device: &amp;lt;i&amp;gt;sudo gainroot &amp;amp;&amp;amp; apt-get install libqt4-gui&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Install Qt binaries and development packages into the SDK:&lt;br /&gt;
&amp;lt;i&amp;gt;fakeroot apt-get install libqt4-dev&amp;lt;/i&amp;gt;&lt;br /&gt;
  &amp;lt;/li&amp;gt;&lt;br /&gt;
  &amp;lt;li class=&amp;quot;&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;H3&amp;gt;N900&amp;lt;/H3&amp;gt;&lt;br /&gt;
Supported Maemo version: 5 (Fremantle)&lt;br /&gt;
&lt;br /&gt;
Qt core packages (qtcore, xml...) are pre-installed into the device. Rest of packages (GUI, webkit...) are in the Application repository (enabled by default in every device).&lt;br /&gt;
&lt;br /&gt;
They are downloaded automatically when user install application packages that depends from those.&lt;br /&gt;
&lt;br /&gt;
OVI store can host Maemo Qt Applications as well as other official Maemo repositories.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Qt 4.5 - community port&#039;&#039;&#039; core packages are already into the device. &lt;br /&gt;
&lt;br /&gt;
- Installing Qt binaries into the device: &amp;lt;i&amp;gt;sudo gainroot &amp;amp;&amp;amp; apt-get install libqt4-gui&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- Installing Qt binaries and development packages in scratchbox: &amp;lt;i&amp;gt;fakeroot apt-get install libqt4-dev&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Qt 4.6&#039;&#039;&#039; is still underdevelopment. It&#039;s in extras-devel; To install Qt 4.6:&lt;br /&gt;
&lt;br /&gt;
- Add add extras-devel repository to /etc/apt/source.list. You can do that adding following line to that file.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;i&amp;gt;deb http://repository.maemo.org/extras-devel/ fremantle free non-free&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- Run &amp;lt;i&amp;gt;apt-get update&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- Install lib packages into the device with: &amp;lt;i&amp;gt;fakeroot apt-get install libqt4-maemo5-gui&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- Install dev packages into the SDK with: &amp;lt;i&amp;gt;fakeroot apt-get install libqt4-maemo5-dev&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Note: &lt;br /&gt;
&lt;br /&gt;
- Qt 4.6tp is installed to /opt/qt4-maemo5&lt;br /&gt;
  &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ul&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=[[Image:Available-qtapps-32.png‎ ]]Available and proposed Qt Applications=&lt;br /&gt;
If you want to port a Qt application to Maemo or if you want to check if an application you love has been already ported.. well [http://wiki.maemo.org/Qt4HildonApplications this] is the place you would like to check; &lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=[[Image:Help-contents.png]] Docs=&lt;br /&gt;
Qt:&lt;br /&gt;
* [http://wiki.maemo.org/Qt4Hildon Qt 4 Hildon]&lt;br /&gt;
&lt;br /&gt;
Non-Qt stuff:&lt;br /&gt;
* Fremantle: &lt;br /&gt;
** [http://sw.nokia.com/id/a3187f95-ad88-4233-b0ef-a182da3ec1c7/Hildon_2_2_Widget_UI_Specification_v1_0_en.pdf Hildon 2.2 Widget UI Spec -PDF]&lt;br /&gt;
** [http://www.forum.nokia.com/info/sw.nokia.com/id/eb8a68ba-6225-4d84-ba8f-a00e4a05ff6f/Hildon_2_2_UI_Style_Guide.html Hildon 2.2 UI Style Guid -PDF]&lt;br /&gt;
* Diablo&lt;br /&gt;
** ADD_SOMETHING_HERE&lt;br /&gt;
* Other Docs&lt;br /&gt;
** [http://www.forum.nokia.com/Tools_Docs_and_Code/Documentation/Latest.xhtml Forum Nokia Docs] contain Maemo as well as other documentation related to other Nokia platforms.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=[[Image:Bug.png]] Bug tracking=&lt;br /&gt;
* Diablo &amp;amp; Fremanlte Qt 4.5 port&lt;br /&gt;
** [https://bugs.maemo.org/buglist.cgi?query_format=specific&amp;amp;order=relevance+desc&amp;amp;bug_status=__open__&amp;amp;product=Qt&amp;amp;content= View bug list]&lt;br /&gt;
** [https://bugs.maemo.org/enter_bug.cgi?product=Qt Report a new bug]&lt;br /&gt;
* Fremantle Qt 4.6 port&lt;br /&gt;
** [http://doc.trolltech.com/4.6/bughowto.html How to report a bug]&lt;br /&gt;
** [http://bugreports.qt.nokia.com/secure/CreateIssue!default.jspa Report a new bug]&lt;br /&gt;
** [http://bugreports.qt.nokia.com/secure/IssueNavigator.jspa?reset=true&amp;amp;&amp;amp;query=maemo&amp;amp;summary=true&amp;amp;description=true&amp;amp;body=true&amp;amp;environment=true&amp;amp;pid=10510 View bug list]&lt;br /&gt;
&lt;br /&gt;
=[[Image:Helmet.png]] Code=&lt;br /&gt;
* Qt 4.5 (Diablo)&lt;br /&gt;
** http://gitorious.org/+qt-maemo-developers/qt/qt-maemo&lt;br /&gt;
* Qt 4.5 (Fremantle)&lt;br /&gt;
** http://gitorious.org/+qt-maemo-developers/qt/qt-maemo&lt;br /&gt;
* Qt 4.6 (Fremantle)&lt;br /&gt;
** http://qt.gitorious.org/qt/x11-maemo&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=[[Image:Preferences-desktop-user.png]] Contacting us=&lt;br /&gt;
* IRC&lt;br /&gt;
** Currently this is main and faster way to communicate with Qt 4.6 and Qt 4.5 developers.&lt;br /&gt;
** Click [http://webchat.freenode.net/?channels=qt-maemo here] to join the #qt-maemo channel in frenode (irc.freenode.net).&lt;br /&gt;
&lt;br /&gt;
* Mailing list&lt;br /&gt;
** [https://garage.maemo.org/mailman/listinfo/qt4-devel Click here to Subscribe to the Qt community ML]&lt;br /&gt;
&lt;br /&gt;
* Forums&lt;br /&gt;
** [http://discussion.forum.nokia.com/forum/forumdisplay.php?f=220 Click here to enter Forum Nokia Discussion board]&lt;br /&gt;
** [https://garage.maemo.org/forum/?group_id=424 Click here to enter Old garage.maemo.org Forum]&lt;/div&gt;</summary>
		<author><name>192.100.124.219</name></author>
	</entry>
	<entry>
		<id>https://maemo.octonezd.me/index.php?title=Qt-Maemo&amp;diff=34128</id>
		<title>Qt-Maemo</title>
		<link rel="alternate" type="text/html" href="https://maemo.octonezd.me/index.php?title=Qt-Maemo&amp;diff=34128"/>
		<updated>2009-12-17T13:38:53Z</updated>

		<summary type="html">&lt;p&gt;192.100.124.219: /* Image:Rocket.png Maemo Qt main features */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&lt;br /&gt;
&lt;br /&gt;
=[[Image:Kblogger.png‎ ]] News=&lt;br /&gt;
&amp;lt;div id=&amp;quot;news&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;tm&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;bm&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;lm&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;rm&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;tl&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;tr&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;bl&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;br&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;ul class=&amp;quot;recent&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;li class=&amp;quot;first&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;/li&amp;gt;&lt;br /&gt;
  &amp;lt;li&amp;gt;&lt;br /&gt;
      &amp;lt;b&amp;gt;11 Dec 09&amp;lt;/b&amp;gt; - Bye bye old static web pages.. all our pages are now in Maemo Wiki. Old website is [http://qt4.garage.maemo.org/index-old.html here]&lt;br /&gt;
  &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ul&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
.&lt;br /&gt;
&lt;br /&gt;
=[[Image:Intro.png]] What is Qt?=&lt;br /&gt;
Qt (pronounced as the English word &amp;quot;cute&amp;quot;) is a cross-platform application development framework.&lt;br /&gt;
&lt;br /&gt;
It is produced by Nokia&#039;s Qt Development Frameworks division, which came into being after Nokia&#039;s acquisition of the Norwegian company Trolltech.&lt;br /&gt;
&lt;br /&gt;
Qt uses standard C++, but makes extensive use of the C pre-processor to enrich the language. Qt can also be used in several other programming languages via language bindings. &lt;br /&gt;
&lt;br /&gt;
Distributed under the terms of the GNU Lesser General Public License (among others), Qt is free and open source software.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=[[Image:Rocket.png]] Maemo Qt main features=&lt;br /&gt;
* Hildon Style&lt;br /&gt;
* Hildon Input Method&lt;br /&gt;
* Optimizations&lt;br /&gt;
* Hildon specific widget&lt;br /&gt;
** partial support in Qt 4.5&lt;br /&gt;
** Qt 4.6 will have full support&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Maemo Qt in Actions =&lt;br /&gt;
* Diablo Maemo Qt&lt;br /&gt;
 ADD_HERE_SOME_THUMBS&lt;br /&gt;
* Fremantle Maemo Qt&lt;br /&gt;
 ADD HERE SOME THUMBS&lt;br /&gt;
&lt;br /&gt;
=[[Image:Pda.png]] Supported Maemo devices=&lt;br /&gt;
* Nokia N800/N810 (OS2008/Maemo4.1/Diablo)&lt;br /&gt;
* Nokia N900 (OS2009/Maemo5/Fremantle)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=[[Image:Ktorrent.png‎ ]] Installing Qt=&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div id=&amp;quot;news&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;tm&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;bm&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;lm&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;rm&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;tl&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;tr&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;bl&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;br&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;ul class=&amp;quot;recent&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;li class=&amp;quot;first&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;H3&amp;gt;N8x0&amp;lt;/H3&amp;gt;&lt;br /&gt;
Supported Maemo version: 4.1 (Diablo)&lt;br /&gt;
&lt;br /&gt;
Latest stable packages are into extras repository:&amp;lt;br&amp;gt;&lt;br /&gt;
deb http://repository.maemo.org/extras/ diablo free non-free&lt;br /&gt;
&lt;br /&gt;
Testing packages are in extras-devel&amp;lt;br&amp;gt;&lt;br /&gt;
deb http://repository.maemo.org/extras-devel/ diablo free non-free&lt;br /&gt;
&lt;br /&gt;
Install Qt binaries onto the device: &amp;lt;i&amp;gt;sudo gainroot &amp;amp;&amp;amp; apt-get install libqt4-gui&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Install Qt binaries and development packages into the SDK:&lt;br /&gt;
&amp;lt;i&amp;gt;fakeroot apt-get install libqt4-dev&amp;lt;/i&amp;gt;&lt;br /&gt;
  &amp;lt;/li&amp;gt;&lt;br /&gt;
  &amp;lt;li class=&amp;quot;&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;H3&amp;gt;N900&amp;lt;/H3&amp;gt;&lt;br /&gt;
Supported Maemo version: 5 (Fremantle)&lt;br /&gt;
&lt;br /&gt;
Qt core packages (qtcore, xml...) are pre-installed into the device. Rest of packages (GUI, webkit...) are in the Application repository (enabled by default in every device).&lt;br /&gt;
&lt;br /&gt;
They are downloaded automatically when user install application packages that depends from those.&lt;br /&gt;
&lt;br /&gt;
OVI store can host Maemo Qt Applications as well as other official Maemo repositories.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Qt 4.5 - community port&#039;&#039;&#039; core packages are already into the device. &lt;br /&gt;
&lt;br /&gt;
- Installing Qt binaries into the device: &amp;lt;i&amp;gt;sudo gainroot &amp;amp;&amp;amp; apt-get install libqt4-gui&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- Installing Qt binaries and development packages in scratchbox: &amp;lt;i&amp;gt;fakeroot apt-get install libqt4-dev&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Qt 4.6&#039;&#039;&#039; is still underdevelopment. It&#039;s in extras-devel; To install Qt 4.6:&lt;br /&gt;
&lt;br /&gt;
- Add add extras-devel repository to /etc/apt/source.list. You can do that adding following line to that file.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;i&amp;gt;deb http://repository.maemo.org/extras-devel/ fremantle free non-free&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- Run &amp;lt;i&amp;gt;apt-get update&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- Install lib packages into the device with: &amp;lt;i&amp;gt;fakeroot apt-get install libqt4-maemo5-gui&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- Install dev packages into the SDK with: &amp;lt;i&amp;gt;fakeroot apt-get install libqt4-maemo5-dev&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Note: &lt;br /&gt;
&lt;br /&gt;
- Qt 4.6tp is installed to /opt/qt4-maemo5&lt;br /&gt;
  &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ul&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=[[Image:Available-qtapps-32.png‎ ]]Available and proposed Qt Applications=&lt;br /&gt;
If you want to port a Qt application to Maemo or if you want to check if an application you love has been already ported.. well [http://wiki.maemo.org/Qt4HildonApplications this] is the place you would like to check; &lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=[[Image:Help-contents.png]] Docs=&lt;br /&gt;
Qt:&lt;br /&gt;
* [http://wiki.maemo.org/Qt4Hildon Qt 4 Hildon]&lt;br /&gt;
&lt;br /&gt;
Non-Qt stuff:&lt;br /&gt;
* Fremantle: &lt;br /&gt;
** [http://sw.nokia.com/id/a3187f95-ad88-4233-b0ef-a182da3ec1c7/Hildon_2_2_Widget_UI_Specification_v1_0_en.pdf Hildon 2.2 Widget UI Spec -PDF]&lt;br /&gt;
** [http://www.forum.nokia.com/info/sw.nokia.com/id/eb8a68ba-6225-4d84-ba8f-a00e4a05ff6f/Hildon_2_2_UI_Style_Guide.html Hildon 2.2 UI Style Guid -PDF]&lt;br /&gt;
* Diablo&lt;br /&gt;
** ADD_SOMETHING_HERE&lt;br /&gt;
* Other Docs&lt;br /&gt;
** [http://www.forum.nokia.com/Tools_Docs_and_Code/Documentation/Latest.xhtml Forum Nokia Docs] contain Maemo as well as other documentation related to other Nokia platforms.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=[[Image:Bug.png]] Bug tracking=&lt;br /&gt;
* Diablo &amp;amp; Fremanlte Qt 4.5 port&lt;br /&gt;
** [https://bugs.maemo.org/buglist.cgi?query_format=specific&amp;amp;order=relevance+desc&amp;amp;bug_status=__open__&amp;amp;product=Qt&amp;amp;content= View bug list]&lt;br /&gt;
** [https://bugs.maemo.org/enter_bug.cgi?product=Qt Report a new bug]&lt;br /&gt;
* Fremantle Qt 4.6 port&lt;br /&gt;
** [http://doc.trolltech.com/4.6/bughowto.html How to report a bug]&lt;br /&gt;
** [http://bugreports.qt.nokia.com/secure/CreateIssue!default.jspa Report a new bug]&lt;br /&gt;
** [http://bugreports.qt.nokia.com/secure/IssueNavigator.jspa?reset=true&amp;amp;&amp;amp;query=maemo&amp;amp;summary=true&amp;amp;description=true&amp;amp;body=true&amp;amp;environment=true&amp;amp;pid=10510 View bug list]&lt;br /&gt;
&lt;br /&gt;
=[[Image:Helmet.png]] Code=&lt;br /&gt;
* Qt 4.5 (Diablo)&lt;br /&gt;
** http://gitorious.org/+qt-maemo-developers/qt/qt-maemo&lt;br /&gt;
* Qt 4.5 (Fremantle)&lt;br /&gt;
** http://gitorious.org/+qt-maemo-developers/qt/qt-maemo&lt;br /&gt;
* Qt 4.6 (Fremantle)&lt;br /&gt;
** http://qt.gitorious.org/qt/x11-maemo&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=[[Image:Preferences-desktop-user.png]] Contacting us=&lt;br /&gt;
* IRC&lt;br /&gt;
** Currently this is main and faster way to communicate with Qt 4.6 and Qt 4.5 developers.&lt;br /&gt;
** Click [http://webchat.freenode.net/?channels=qt-maemo here] to join the #qt-maemo channel in frenode (irc.freenode.net).&lt;br /&gt;
&lt;br /&gt;
* Mailing list&lt;br /&gt;
** [https://garage.maemo.org/mailman/listinfo/qt4-devel Click here to Subscribe to the Qt community ML]&lt;br /&gt;
&lt;br /&gt;
* Forums&lt;br /&gt;
** [http://discussion.forum.nokia.com/forum/forumdisplay.php?f=220 Click here to enter Forum Nokia Discussion board]&lt;br /&gt;
** [https://garage.maemo.org/forum/?group_id=424 Click here to enter Old garage.maemo.org Forum]&lt;/div&gt;</summary>
		<author><name>192.100.124.219</name></author>
	</entry>
	<entry>
		<id>https://maemo.octonezd.me/index.php?title=Qt-Maemo&amp;diff=34129</id>
		<title>Qt-Maemo</title>
		<link rel="alternate" type="text/html" href="https://maemo.octonezd.me/index.php?title=Qt-Maemo&amp;diff=34129"/>
		<updated>2009-12-17T13:35:49Z</updated>

		<summary type="html">&lt;p&gt;192.100.124.219: /* Image:Preferences-desktop-user.png Contacting us */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&lt;br /&gt;
&lt;br /&gt;
=[[Image:Kblogger.png‎ ]] News=&lt;br /&gt;
&amp;lt;div id=&amp;quot;news&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;tm&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;bm&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;lm&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;rm&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;tl&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;tr&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;bl&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;br&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;ul class=&amp;quot;recent&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;li class=&amp;quot;first&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;/li&amp;gt;&lt;br /&gt;
  &amp;lt;li&amp;gt;&lt;br /&gt;
      &amp;lt;b&amp;gt;11 Dec 09&amp;lt;/b&amp;gt; - Bye bye old static web pages.. all our pages are now in Maemo Wiki. Old website is [http://qt4.garage.maemo.org/index-old.html here]&lt;br /&gt;
  &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ul&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
.&lt;br /&gt;
&lt;br /&gt;
=[[Image:Intro.png]] What is Qt?=&lt;br /&gt;
Qt (pronounced as the English word &amp;quot;cute&amp;quot;) is a cross-platform application development framework.&lt;br /&gt;
&lt;br /&gt;
It is produced by Nokia&#039;s Qt Development Frameworks division, which came into being after Nokia&#039;s acquisition of the Norwegian company Trolltech.&lt;br /&gt;
&lt;br /&gt;
Qt uses standard C++, but makes extensive use of the C pre-processor to enrich the language. Qt can also be used in several other programming languages via language bindings. &lt;br /&gt;
&lt;br /&gt;
Distributed under the terms of the GNU Lesser General Public License (among others), Qt is free and open source software.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=[[Image:Rocket.png]] Maemo Qt main features=&lt;br /&gt;
* Hildon Style&lt;br /&gt;
* Hildon Input Method&lt;br /&gt;
* Optimizations&lt;br /&gt;
* Hildon specific widget&lt;br /&gt;
** partial support in Qt 4.5&lt;br /&gt;
** Qt 4.6 will have full support&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=[[Image:Pda.png]] Supported Maemo devices=&lt;br /&gt;
* Nokia N800/N810 (OS2008/Maemo4.1/Diablo)&lt;br /&gt;
* Nokia N900 (OS2009/Maemo5/Fremantle)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=[[Image:Ktorrent.png‎ ]] Installing Qt=&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div id=&amp;quot;news&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;tm&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;bm&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;lm&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;rm&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;tl&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;tr&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;bl&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;br&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;ul class=&amp;quot;recent&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;li class=&amp;quot;first&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;H3&amp;gt;N8x0&amp;lt;/H3&amp;gt;&lt;br /&gt;
Supported Maemo version: 4.1 (Diablo)&lt;br /&gt;
&lt;br /&gt;
Latest stable packages are into extras repository:&amp;lt;br&amp;gt;&lt;br /&gt;
deb http://repository.maemo.org/extras/ diablo free non-free&lt;br /&gt;
&lt;br /&gt;
Testing packages are in extras-devel&amp;lt;br&amp;gt;&lt;br /&gt;
deb http://repository.maemo.org/extras-devel/ diablo free non-free&lt;br /&gt;
&lt;br /&gt;
Install Qt binaries onto the device: &amp;lt;i&amp;gt;sudo gainroot &amp;amp;&amp;amp; apt-get install libqt4-gui&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Install Qt binaries and development packages into the SDK:&lt;br /&gt;
&amp;lt;i&amp;gt;fakeroot apt-get install libqt4-dev&amp;lt;/i&amp;gt;&lt;br /&gt;
  &amp;lt;/li&amp;gt;&lt;br /&gt;
  &amp;lt;li class=&amp;quot;&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;H3&amp;gt;N900&amp;lt;/H3&amp;gt;&lt;br /&gt;
Supported Maemo version: 5 (Fremantle)&lt;br /&gt;
&lt;br /&gt;
Qt core packages (qtcore, xml...) are pre-installed into the device. Rest of packages (GUI, webkit...) are in the Application repository (enabled by default in every device).&lt;br /&gt;
&lt;br /&gt;
They are downloaded automatically when user install application packages that depends from those.&lt;br /&gt;
&lt;br /&gt;
OVI store can host Maemo Qt Applications as well as other official Maemo repositories.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Qt 4.5 - community port&#039;&#039;&#039; core packages are already into the device. &lt;br /&gt;
&lt;br /&gt;
- Installing Qt binaries into the device: &amp;lt;i&amp;gt;sudo gainroot &amp;amp;&amp;amp; apt-get install libqt4-gui&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- Installing Qt binaries and development packages in scratchbox: &amp;lt;i&amp;gt;fakeroot apt-get install libqt4-dev&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Qt 4.6&#039;&#039;&#039; is still underdevelopment. It&#039;s in extras-devel; To install Qt 4.6:&lt;br /&gt;
&lt;br /&gt;
- Add add extras-devel repository to /etc/apt/source.list. You can do that adding following line to that file.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;i&amp;gt;deb http://repository.maemo.org/extras-devel/ fremantle free non-free&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- Run &amp;lt;i&amp;gt;apt-get update&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- Install lib packages into the device with: &amp;lt;i&amp;gt;fakeroot apt-get install libqt4-maemo5-gui&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- Install dev packages into the SDK with: &amp;lt;i&amp;gt;fakeroot apt-get install libqt4-maemo5-dev&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Note: &lt;br /&gt;
&lt;br /&gt;
- Qt 4.6tp is installed to /opt/qt4-maemo5&lt;br /&gt;
  &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ul&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=[[Image:Available-qtapps-32.png‎ ]]Available and proposed Qt Applications=&lt;br /&gt;
If you want to port a Qt application to Maemo or if you want to check if an application you love has been already ported.. well [http://wiki.maemo.org/Qt4HildonApplications this] is the place you would like to check; &lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=[[Image:Help-contents.png]] Docs=&lt;br /&gt;
Qt:&lt;br /&gt;
* [http://wiki.maemo.org/Qt4Hildon Qt 4 Hildon]&lt;br /&gt;
&lt;br /&gt;
Non-Qt stuff:&lt;br /&gt;
* Fremantle: &lt;br /&gt;
** [http://sw.nokia.com/id/a3187f95-ad88-4233-b0ef-a182da3ec1c7/Hildon_2_2_Widget_UI_Specification_v1_0_en.pdf Hildon 2.2 Widget UI Spec -PDF]&lt;br /&gt;
** [http://www.forum.nokia.com/info/sw.nokia.com/id/eb8a68ba-6225-4d84-ba8f-a00e4a05ff6f/Hildon_2_2_UI_Style_Guide.html Hildon 2.2 UI Style Guid -PDF]&lt;br /&gt;
* Diablo&lt;br /&gt;
** ADD_SOMETHING_HERE&lt;br /&gt;
* Other Docs&lt;br /&gt;
** [http://www.forum.nokia.com/Tools_Docs_and_Code/Documentation/Latest.xhtml Forum Nokia Docs] contain Maemo as well as other documentation related to other Nokia platforms.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=[[Image:Bug.png]] Bug tracking=&lt;br /&gt;
* Diablo &amp;amp; Fremanlte Qt 4.5 port&lt;br /&gt;
** [https://bugs.maemo.org/buglist.cgi?query_format=specific&amp;amp;order=relevance+desc&amp;amp;bug_status=__open__&amp;amp;product=Qt&amp;amp;content= View bug list]&lt;br /&gt;
** [https://bugs.maemo.org/enter_bug.cgi?product=Qt Report a new bug]&lt;br /&gt;
* Fremantle Qt 4.6 port&lt;br /&gt;
** [http://doc.trolltech.com/4.6/bughowto.html How to report a bug]&lt;br /&gt;
** [http://bugreports.qt.nokia.com/secure/CreateIssue!default.jspa Report a new bug]&lt;br /&gt;
** [http://bugreports.qt.nokia.com/secure/IssueNavigator.jspa?reset=true&amp;amp;&amp;amp;query=maemo&amp;amp;summary=true&amp;amp;description=true&amp;amp;body=true&amp;amp;environment=true&amp;amp;pid=10510 View bug list]&lt;br /&gt;
&lt;br /&gt;
=[[Image:Helmet.png]] Code=&lt;br /&gt;
* Qt 4.5 (Diablo)&lt;br /&gt;
** http://gitorious.org/+qt-maemo-developers/qt/qt-maemo&lt;br /&gt;
* Qt 4.5 (Fremantle)&lt;br /&gt;
** http://gitorious.org/+qt-maemo-developers/qt/qt-maemo&lt;br /&gt;
* Qt 4.6 (Fremantle)&lt;br /&gt;
** http://qt.gitorious.org/qt/x11-maemo&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=[[Image:Preferences-desktop-user.png]] Contacting us=&lt;br /&gt;
* IRC&lt;br /&gt;
** Currently this is main and faster way to communicate with Qt 4.6 and Qt 4.5 developers.&lt;br /&gt;
** Click [http://webchat.freenode.net/?channels=qt-maemo here] to join the #qt-maemo channel in frenode (irc.freenode.net).&lt;br /&gt;
&lt;br /&gt;
* Mailing list&lt;br /&gt;
** [https://garage.maemo.org/mailman/listinfo/qt4-devel Click here to Subscribe to the Qt community ML]&lt;br /&gt;
&lt;br /&gt;
* Forums&lt;br /&gt;
** [http://discussion.forum.nokia.com/forum/forumdisplay.php?f=220 Click here to enter Forum Nokia Discussion board]&lt;br /&gt;
** [https://garage.maemo.org/forum/?group_id=424 Click here to enter Old garage.maemo.org Forum]&lt;/div&gt;</summary>
		<author><name>192.100.124.219</name></author>
	</entry>
	<entry>
		<id>https://maemo.octonezd.me/index.php?title=Qt-Maemo&amp;diff=34130</id>
		<title>Qt-Maemo</title>
		<link rel="alternate" type="text/html" href="https://maemo.octonezd.me/index.php?title=Qt-Maemo&amp;diff=34130"/>
		<updated>2009-12-17T13:35:26Z</updated>

		<summary type="html">&lt;p&gt;192.100.124.219: /* Image:Preferences-desktop-user.png Contacting us */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&lt;br /&gt;
&lt;br /&gt;
=[[Image:Kblogger.png‎ ]] News=&lt;br /&gt;
&amp;lt;div id=&amp;quot;news&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;tm&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;bm&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;lm&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;rm&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;tl&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;tr&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;bl&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;br&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;ul class=&amp;quot;recent&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;li class=&amp;quot;first&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;/li&amp;gt;&lt;br /&gt;
  &amp;lt;li&amp;gt;&lt;br /&gt;
      &amp;lt;b&amp;gt;11 Dec 09&amp;lt;/b&amp;gt; - Bye bye old static web pages.. all our pages are now in Maemo Wiki. Old website is [http://qt4.garage.maemo.org/index-old.html here]&lt;br /&gt;
  &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ul&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
.&lt;br /&gt;
&lt;br /&gt;
=[[Image:Intro.png]] What is Qt?=&lt;br /&gt;
Qt (pronounced as the English word &amp;quot;cute&amp;quot;) is a cross-platform application development framework.&lt;br /&gt;
&lt;br /&gt;
It is produced by Nokia&#039;s Qt Development Frameworks division, which came into being after Nokia&#039;s acquisition of the Norwegian company Trolltech.&lt;br /&gt;
&lt;br /&gt;
Qt uses standard C++, but makes extensive use of the C pre-processor to enrich the language. Qt can also be used in several other programming languages via language bindings. &lt;br /&gt;
&lt;br /&gt;
Distributed under the terms of the GNU Lesser General Public License (among others), Qt is free and open source software.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=[[Image:Rocket.png]] Maemo Qt main features=&lt;br /&gt;
* Hildon Style&lt;br /&gt;
* Hildon Input Method&lt;br /&gt;
* Optimizations&lt;br /&gt;
* Hildon specific widget&lt;br /&gt;
** partial support in Qt 4.5&lt;br /&gt;
** Qt 4.6 will have full support&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=[[Image:Pda.png]] Supported Maemo devices=&lt;br /&gt;
* Nokia N800/N810 (OS2008/Maemo4.1/Diablo)&lt;br /&gt;
* Nokia N900 (OS2009/Maemo5/Fremantle)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=[[Image:Ktorrent.png‎ ]] Installing Qt=&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div id=&amp;quot;news&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;tm&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;bm&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;lm&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;rm&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;tl&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;tr&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;bl&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;br&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;ul class=&amp;quot;recent&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;li class=&amp;quot;first&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;H3&amp;gt;N8x0&amp;lt;/H3&amp;gt;&lt;br /&gt;
Supported Maemo version: 4.1 (Diablo)&lt;br /&gt;
&lt;br /&gt;
Latest stable packages are into extras repository:&amp;lt;br&amp;gt;&lt;br /&gt;
deb http://repository.maemo.org/extras/ diablo free non-free&lt;br /&gt;
&lt;br /&gt;
Testing packages are in extras-devel&amp;lt;br&amp;gt;&lt;br /&gt;
deb http://repository.maemo.org/extras-devel/ diablo free non-free&lt;br /&gt;
&lt;br /&gt;
Install Qt binaries onto the device: &amp;lt;i&amp;gt;sudo gainroot &amp;amp;&amp;amp; apt-get install libqt4-gui&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Install Qt binaries and development packages into the SDK:&lt;br /&gt;
&amp;lt;i&amp;gt;fakeroot apt-get install libqt4-dev&amp;lt;/i&amp;gt;&lt;br /&gt;
  &amp;lt;/li&amp;gt;&lt;br /&gt;
  &amp;lt;li class=&amp;quot;&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;H3&amp;gt;N900&amp;lt;/H3&amp;gt;&lt;br /&gt;
Supported Maemo version: 5 (Fremantle)&lt;br /&gt;
&lt;br /&gt;
Qt core packages (qtcore, xml...) are pre-installed into the device. Rest of packages (GUI, webkit...) are in the Application repository (enabled by default in every device).&lt;br /&gt;
&lt;br /&gt;
They are downloaded automatically when user install application packages that depends from those.&lt;br /&gt;
&lt;br /&gt;
OVI store can host Maemo Qt Applications as well as other official Maemo repositories.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Qt 4.5 - community port&#039;&#039;&#039; core packages are already into the device. &lt;br /&gt;
&lt;br /&gt;
- Installing Qt binaries into the device: &amp;lt;i&amp;gt;sudo gainroot &amp;amp;&amp;amp; apt-get install libqt4-gui&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- Installing Qt binaries and development packages in scratchbox: &amp;lt;i&amp;gt;fakeroot apt-get install libqt4-dev&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Qt 4.6&#039;&#039;&#039; is still underdevelopment. It&#039;s in extras-devel; To install Qt 4.6:&lt;br /&gt;
&lt;br /&gt;
- Add add extras-devel repository to /etc/apt/source.list. You can do that adding following line to that file.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;i&amp;gt;deb http://repository.maemo.org/extras-devel/ fremantle free non-free&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- Run &amp;lt;i&amp;gt;apt-get update&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- Install lib packages into the device with: &amp;lt;i&amp;gt;fakeroot apt-get install libqt4-maemo5-gui&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- Install dev packages into the SDK with: &amp;lt;i&amp;gt;fakeroot apt-get install libqt4-maemo5-dev&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Note: &lt;br /&gt;
&lt;br /&gt;
- Qt 4.6tp is installed to /opt/qt4-maemo5&lt;br /&gt;
  &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ul&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=[[Image:Available-qtapps-32.png‎ ]]Available and proposed Qt Applications=&lt;br /&gt;
If you want to port a Qt application to Maemo or if you want to check if an application you love has been already ported.. well [http://wiki.maemo.org/Qt4HildonApplications this] is the place you would like to check; &lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=[[Image:Help-contents.png]] Docs=&lt;br /&gt;
Qt:&lt;br /&gt;
* [http://wiki.maemo.org/Qt4Hildon Qt 4 Hildon]&lt;br /&gt;
&lt;br /&gt;
Non-Qt stuff:&lt;br /&gt;
* Fremantle: &lt;br /&gt;
** [http://sw.nokia.com/id/a3187f95-ad88-4233-b0ef-a182da3ec1c7/Hildon_2_2_Widget_UI_Specification_v1_0_en.pdf Hildon 2.2 Widget UI Spec -PDF]&lt;br /&gt;
** [http://www.forum.nokia.com/info/sw.nokia.com/id/eb8a68ba-6225-4d84-ba8f-a00e4a05ff6f/Hildon_2_2_UI_Style_Guide.html Hildon 2.2 UI Style Guid -PDF]&lt;br /&gt;
* Diablo&lt;br /&gt;
** ADD_SOMETHING_HERE&lt;br /&gt;
* Other Docs&lt;br /&gt;
** [http://www.forum.nokia.com/Tools_Docs_and_Code/Documentation/Latest.xhtml Forum Nokia Docs] contain Maemo as well as other documentation related to other Nokia platforms.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=[[Image:Bug.png]] Bug tracking=&lt;br /&gt;
* Diablo &amp;amp; Fremanlte Qt 4.5 port&lt;br /&gt;
** [https://bugs.maemo.org/buglist.cgi?query_format=specific&amp;amp;order=relevance+desc&amp;amp;bug_status=__open__&amp;amp;product=Qt&amp;amp;content= View bug list]&lt;br /&gt;
** [https://bugs.maemo.org/enter_bug.cgi?product=Qt Report a new bug]&lt;br /&gt;
* Fremantle Qt 4.6 port&lt;br /&gt;
** [http://doc.trolltech.com/4.6/bughowto.html How to report a bug]&lt;br /&gt;
** [http://bugreports.qt.nokia.com/secure/CreateIssue!default.jspa Report a new bug]&lt;br /&gt;
** [http://bugreports.qt.nokia.com/secure/IssueNavigator.jspa?reset=true&amp;amp;&amp;amp;query=maemo&amp;amp;summary=true&amp;amp;description=true&amp;amp;body=true&amp;amp;environment=true&amp;amp;pid=10510 View bug list]&lt;br /&gt;
&lt;br /&gt;
=[[Image:Helmet.png]] Code=&lt;br /&gt;
* Qt 4.5 (Diablo)&lt;br /&gt;
** http://gitorious.org/+qt-maemo-developers/qt/qt-maemo&lt;br /&gt;
* Qt 4.5 (Fremantle)&lt;br /&gt;
** http://gitorious.org/+qt-maemo-developers/qt/qt-maemo&lt;br /&gt;
* Qt 4.6 (Fremantle)&lt;br /&gt;
** http://qt.gitorious.org/qt/x11-maemo&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=[[Image:Preferences-desktop-user.png]] Contacting us=&lt;br /&gt;
* IRC&lt;br /&gt;
** Currently this is main and faster way to communicate with Qt 4.6 and Qt 4.5 developers.&lt;br /&gt;
** Click [http://webchat.freenode.net/?channels=qt-maemo here] to join the #qt-maemo channel in frenode (irc.freenode.net).&lt;br /&gt;
&lt;br /&gt;
* Mailing list&lt;br /&gt;
** [https://garage.maemo.org/mailman/listinfo/qt4-devel Click here to Subscribe to the Qt community ML]&lt;br /&gt;
&lt;br /&gt;
* Forums&lt;br /&gt;
** [http://discussion.forum.nokia.com/forum/forumdisplay.php?f=220 Click here to enter the Forum Nokia Discussion board]&lt;br /&gt;
** [https://garage.maemo.org/forum/?group_id=424 Click here to enter Old garage.maemo.org Forum]&lt;/div&gt;</summary>
		<author><name>192.100.124.219</name></author>
	</entry>
	<entry>
		<id>https://maemo.octonezd.me/index.php?title=Qt-Maemo&amp;diff=34131</id>
		<title>Qt-Maemo</title>
		<link rel="alternate" type="text/html" href="https://maemo.octonezd.me/index.php?title=Qt-Maemo&amp;diff=34131"/>
		<updated>2009-12-17T13:27:42Z</updated>

		<summary type="html">&lt;p&gt;192.100.124.219: /* Image:Preferences-desktop-user.png Contacting us */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&lt;br /&gt;
&lt;br /&gt;
=[[Image:Kblogger.png‎ ]] News=&lt;br /&gt;
&amp;lt;div id=&amp;quot;news&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;tm&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;bm&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;lm&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;rm&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;tl&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;tr&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;bl&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;br&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;ul class=&amp;quot;recent&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;li class=&amp;quot;first&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;/li&amp;gt;&lt;br /&gt;
  &amp;lt;li&amp;gt;&lt;br /&gt;
      &amp;lt;b&amp;gt;11 Dec 09&amp;lt;/b&amp;gt; - Bye bye old static web pages.. all our pages are now in Maemo Wiki. Old website is [http://qt4.garage.maemo.org/index-old.html here]&lt;br /&gt;
  &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ul&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
.&lt;br /&gt;
&lt;br /&gt;
=[[Image:Intro.png]] What is Qt?=&lt;br /&gt;
Qt (pronounced as the English word &amp;quot;cute&amp;quot;) is a cross-platform application development framework.&lt;br /&gt;
&lt;br /&gt;
It is produced by Nokia&#039;s Qt Development Frameworks division, which came into being after Nokia&#039;s acquisition of the Norwegian company Trolltech.&lt;br /&gt;
&lt;br /&gt;
Qt uses standard C++, but makes extensive use of the C pre-processor to enrich the language. Qt can also be used in several other programming languages via language bindings. &lt;br /&gt;
&lt;br /&gt;
Distributed under the terms of the GNU Lesser General Public License (among others), Qt is free and open source software.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=[[Image:Rocket.png]] Maemo Qt main features=&lt;br /&gt;
* Hildon Style&lt;br /&gt;
* Hildon Input Method&lt;br /&gt;
* Optimizations&lt;br /&gt;
* Hildon specific widget&lt;br /&gt;
** partial support in Qt 4.5&lt;br /&gt;
** Qt 4.6 will have full support&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=[[Image:Pda.png]] Supported Maemo devices=&lt;br /&gt;
* Nokia N800/N810 (OS2008/Maemo4.1/Diablo)&lt;br /&gt;
* Nokia N900 (OS2009/Maemo5/Fremantle)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=[[Image:Ktorrent.png‎ ]] Installing Qt=&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div id=&amp;quot;news&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;tm&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;bm&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;lm&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;rm&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;tl&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;tr&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;bl&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;br&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;ul class=&amp;quot;recent&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;li class=&amp;quot;first&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;H3&amp;gt;N8x0&amp;lt;/H3&amp;gt;&lt;br /&gt;
Supported Maemo version: 4.1 (Diablo)&lt;br /&gt;
&lt;br /&gt;
Latest stable packages are into extras repository:&amp;lt;br&amp;gt;&lt;br /&gt;
deb http://repository.maemo.org/extras/ diablo free non-free&lt;br /&gt;
&lt;br /&gt;
Testing packages are in extras-devel&amp;lt;br&amp;gt;&lt;br /&gt;
deb http://repository.maemo.org/extras-devel/ diablo free non-free&lt;br /&gt;
&lt;br /&gt;
Install Qt binaries onto the device: &amp;lt;i&amp;gt;sudo gainroot &amp;amp;&amp;amp; apt-get install libqt4-gui&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Install Qt binaries and development packages into the SDK:&lt;br /&gt;
&amp;lt;i&amp;gt;fakeroot apt-get install libqt4-dev&amp;lt;/i&amp;gt;&lt;br /&gt;
  &amp;lt;/li&amp;gt;&lt;br /&gt;
  &amp;lt;li class=&amp;quot;&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;H3&amp;gt;N900&amp;lt;/H3&amp;gt;&lt;br /&gt;
Supported Maemo version: 5 (Fremantle)&lt;br /&gt;
&lt;br /&gt;
Qt core packages (qtcore, xml...) are pre-installed into the device. Rest of packages (GUI, webkit...) are in the Application repository (enabled by default in every device).&lt;br /&gt;
&lt;br /&gt;
They are downloaded automatically when user install application packages that depends from those.&lt;br /&gt;
&lt;br /&gt;
OVI store can host Maemo Qt Applications as well as other official Maemo repositories.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Qt 4.5 - community port&#039;&#039;&#039; core packages are already into the device. &lt;br /&gt;
&lt;br /&gt;
- Installing Qt binaries into the device: &amp;lt;i&amp;gt;sudo gainroot &amp;amp;&amp;amp; apt-get install libqt4-gui&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- Installing Qt binaries and development packages in scratchbox: &amp;lt;i&amp;gt;fakeroot apt-get install libqt4-dev&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Qt 4.6&#039;&#039;&#039; is still underdevelopment. It&#039;s in extras-devel; To install Qt 4.6:&lt;br /&gt;
&lt;br /&gt;
- Add add extras-devel repository to /etc/apt/source.list. You can do that adding following line to that file.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;i&amp;gt;deb http://repository.maemo.org/extras-devel/ fremantle free non-free&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- Run &amp;lt;i&amp;gt;apt-get update&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- Install lib packages into the device with: &amp;lt;i&amp;gt;fakeroot apt-get install libqt4-maemo5-gui&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- Install dev packages into the SDK with: &amp;lt;i&amp;gt;fakeroot apt-get install libqt4-maemo5-dev&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Note: &lt;br /&gt;
&lt;br /&gt;
- Qt 4.6tp is installed to /opt/qt4-maemo5&lt;br /&gt;
  &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ul&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=[[Image:Available-qtapps-32.png‎ ]]Available and proposed Qt Applications=&lt;br /&gt;
If you want to port a Qt application to Maemo or if you want to check if an application you love has been already ported.. well [http://wiki.maemo.org/Qt4HildonApplications this] is the place you would like to check; &lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=[[Image:Help-contents.png]] Docs=&lt;br /&gt;
Qt:&lt;br /&gt;
* [http://wiki.maemo.org/Qt4Hildon Qt 4 Hildon]&lt;br /&gt;
&lt;br /&gt;
Non-Qt stuff:&lt;br /&gt;
* Fremantle: &lt;br /&gt;
** [http://sw.nokia.com/id/a3187f95-ad88-4233-b0ef-a182da3ec1c7/Hildon_2_2_Widget_UI_Specification_v1_0_en.pdf Hildon 2.2 Widget UI Spec -PDF]&lt;br /&gt;
** [http://www.forum.nokia.com/info/sw.nokia.com/id/eb8a68ba-6225-4d84-ba8f-a00e4a05ff6f/Hildon_2_2_UI_Style_Guide.html Hildon 2.2 UI Style Guid -PDF]&lt;br /&gt;
* Diablo&lt;br /&gt;
** ADD_SOMETHING_HERE&lt;br /&gt;
* Other Docs&lt;br /&gt;
** [http://www.forum.nokia.com/Tools_Docs_and_Code/Documentation/Latest.xhtml Forum Nokia Docs] contain Maemo as well as other documentation related to other Nokia platforms.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=[[Image:Bug.png]] Bug tracking=&lt;br /&gt;
* Diablo &amp;amp; Fremanlte Qt 4.5 port&lt;br /&gt;
** [https://bugs.maemo.org/buglist.cgi?query_format=specific&amp;amp;order=relevance+desc&amp;amp;bug_status=__open__&amp;amp;product=Qt&amp;amp;content= View bug list]&lt;br /&gt;
** [https://bugs.maemo.org/enter_bug.cgi?product=Qt Report a new bug]&lt;br /&gt;
* Fremantle Qt 4.6 port&lt;br /&gt;
** [http://doc.trolltech.com/4.6/bughowto.html How to report a bug]&lt;br /&gt;
** [http://bugreports.qt.nokia.com/secure/CreateIssue!default.jspa Report a new bug]&lt;br /&gt;
** [http://bugreports.qt.nokia.com/secure/IssueNavigator.jspa?reset=true&amp;amp;&amp;amp;query=maemo&amp;amp;summary=true&amp;amp;description=true&amp;amp;body=true&amp;amp;environment=true&amp;amp;pid=10510 View bug list]&lt;br /&gt;
&lt;br /&gt;
=[[Image:Helmet.png]] Code=&lt;br /&gt;
* Qt 4.5 (Diablo)&lt;br /&gt;
** http://gitorious.org/+qt-maemo-developers/qt/qt-maemo&lt;br /&gt;
* Qt 4.5 (Fremantle)&lt;br /&gt;
** http://gitorious.org/+qt-maemo-developers/qt/qt-maemo&lt;br /&gt;
* Qt 4.6 (Fremantle)&lt;br /&gt;
** http://qt.gitorious.org/qt/x11-maemo&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=[[Image:Preferences-desktop-user.png]] Contacting us=&lt;br /&gt;
* IRC&lt;br /&gt;
** Currently this is main and faster way to communicate with Qt 4.6 and Qt 4.5 developers.&lt;br /&gt;
** Click [http://webchat.freenode.net/?channels=qt-maemo here] to join the #qt-maemo channel in frenode (irc.freenode.net).&lt;br /&gt;
&lt;br /&gt;
* Mailing list&lt;br /&gt;
** [https://garage.maemo.org/mailman/listinfo/qt4-devel Click here to Subscribe to the Qt community ML]&lt;br /&gt;
&lt;br /&gt;
* Forums&lt;br /&gt;
** [https://garage.maemo.org/forum/?group_id=424 Click here to enter the Forum]&lt;br /&gt;
** [http://discussion.forum.nokia.com/forum/forumdisplay.php?f=220 Click here to enter the Forum Nokia]&lt;/div&gt;</summary>
		<author><name>192.100.124.219</name></author>
	</entry>
	<entry>
		<id>https://maemo.octonezd.me/index.php?title=Qt-Maemo&amp;diff=34132</id>
		<title>Qt-Maemo</title>
		<link rel="alternate" type="text/html" href="https://maemo.octonezd.me/index.php?title=Qt-Maemo&amp;diff=34132"/>
		<updated>2009-12-17T13:27:10Z</updated>

		<summary type="html">&lt;p&gt;192.100.124.219: /* Image:Preferences-desktop-user.png Contacting us */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&lt;br /&gt;
&lt;br /&gt;
=[[Image:Kblogger.png‎ ]] News=&lt;br /&gt;
&amp;lt;div id=&amp;quot;news&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;tm&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;bm&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;lm&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;rm&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;tl&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;tr&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;bl&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;br&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;ul class=&amp;quot;recent&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;li class=&amp;quot;first&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;/li&amp;gt;&lt;br /&gt;
  &amp;lt;li&amp;gt;&lt;br /&gt;
      &amp;lt;b&amp;gt;11 Dec 09&amp;lt;/b&amp;gt; - Bye bye old static web pages.. all our pages are now in Maemo Wiki. Old website is [http://qt4.garage.maemo.org/index-old.html here]&lt;br /&gt;
  &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ul&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
.&lt;br /&gt;
&lt;br /&gt;
=[[Image:Intro.png]] What is Qt?=&lt;br /&gt;
Qt (pronounced as the English word &amp;quot;cute&amp;quot;) is a cross-platform application development framework.&lt;br /&gt;
&lt;br /&gt;
It is produced by Nokia&#039;s Qt Development Frameworks division, which came into being after Nokia&#039;s acquisition of the Norwegian company Trolltech.&lt;br /&gt;
&lt;br /&gt;
Qt uses standard C++, but makes extensive use of the C pre-processor to enrich the language. Qt can also be used in several other programming languages via language bindings. &lt;br /&gt;
&lt;br /&gt;
Distributed under the terms of the GNU Lesser General Public License (among others), Qt is free and open source software.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=[[Image:Rocket.png]] Maemo Qt main features=&lt;br /&gt;
* Hildon Style&lt;br /&gt;
* Hildon Input Method&lt;br /&gt;
* Optimizations&lt;br /&gt;
* Hildon specific widget&lt;br /&gt;
** partial support in Qt 4.5&lt;br /&gt;
** Qt 4.6 will have full support&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=[[Image:Pda.png]] Supported Maemo devices=&lt;br /&gt;
* Nokia N800/N810 (OS2008/Maemo4.1/Diablo)&lt;br /&gt;
* Nokia N900 (OS2009/Maemo5/Fremantle)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=[[Image:Ktorrent.png‎ ]] Installing Qt=&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div id=&amp;quot;news&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;tm&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;bm&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;lm&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;rm&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;tl&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;tr&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;bl&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;br&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;ul class=&amp;quot;recent&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;li class=&amp;quot;first&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;H3&amp;gt;N8x0&amp;lt;/H3&amp;gt;&lt;br /&gt;
Supported Maemo version: 4.1 (Diablo)&lt;br /&gt;
&lt;br /&gt;
Latest stable packages are into extras repository:&amp;lt;br&amp;gt;&lt;br /&gt;
deb http://repository.maemo.org/extras/ diablo free non-free&lt;br /&gt;
&lt;br /&gt;
Testing packages are in extras-devel&amp;lt;br&amp;gt;&lt;br /&gt;
deb http://repository.maemo.org/extras-devel/ diablo free non-free&lt;br /&gt;
&lt;br /&gt;
Install Qt binaries onto the device: &amp;lt;i&amp;gt;sudo gainroot &amp;amp;&amp;amp; apt-get install libqt4-gui&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Install Qt binaries and development packages into the SDK:&lt;br /&gt;
&amp;lt;i&amp;gt;fakeroot apt-get install libqt4-dev&amp;lt;/i&amp;gt;&lt;br /&gt;
  &amp;lt;/li&amp;gt;&lt;br /&gt;
  &amp;lt;li class=&amp;quot;&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;H3&amp;gt;N900&amp;lt;/H3&amp;gt;&lt;br /&gt;
Supported Maemo version: 5 (Fremantle)&lt;br /&gt;
&lt;br /&gt;
Qt core packages (qtcore, xml...) are pre-installed into the device. Rest of packages (GUI, webkit...) are in the Application repository (enabled by default in every device).&lt;br /&gt;
&lt;br /&gt;
They are downloaded automatically when user install application packages that depends from those.&lt;br /&gt;
&lt;br /&gt;
OVI store can host Maemo Qt Applications as well as other official Maemo repositories.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Qt 4.5 - community port&#039;&#039;&#039; core packages are already into the device. &lt;br /&gt;
&lt;br /&gt;
- Installing Qt binaries into the device: &amp;lt;i&amp;gt;sudo gainroot &amp;amp;&amp;amp; apt-get install libqt4-gui&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- Installing Qt binaries and development packages in scratchbox: &amp;lt;i&amp;gt;fakeroot apt-get install libqt4-dev&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Qt 4.6&#039;&#039;&#039; is still underdevelopment. It&#039;s in extras-devel; To install Qt 4.6:&lt;br /&gt;
&lt;br /&gt;
- Add add extras-devel repository to /etc/apt/source.list. You can do that adding following line to that file.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;i&amp;gt;deb http://repository.maemo.org/extras-devel/ fremantle free non-free&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- Run &amp;lt;i&amp;gt;apt-get update&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- Install lib packages into the device with: &amp;lt;i&amp;gt;fakeroot apt-get install libqt4-maemo5-gui&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- Install dev packages into the SDK with: &amp;lt;i&amp;gt;fakeroot apt-get install libqt4-maemo5-dev&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Note: &lt;br /&gt;
&lt;br /&gt;
- Qt 4.6tp is installed to /opt/qt4-maemo5&lt;br /&gt;
  &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ul&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=[[Image:Available-qtapps-32.png‎ ]]Available and proposed Qt Applications=&lt;br /&gt;
If you want to port a Qt application to Maemo or if you want to check if an application you love has been already ported.. well [http://wiki.maemo.org/Qt4HildonApplications this] is the place you would like to check; &lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=[[Image:Help-contents.png]] Docs=&lt;br /&gt;
Qt:&lt;br /&gt;
* [http://wiki.maemo.org/Qt4Hildon Qt 4 Hildon]&lt;br /&gt;
&lt;br /&gt;
Non-Qt stuff:&lt;br /&gt;
* Fremantle: &lt;br /&gt;
** [http://sw.nokia.com/id/a3187f95-ad88-4233-b0ef-a182da3ec1c7/Hildon_2_2_Widget_UI_Specification_v1_0_en.pdf Hildon 2.2 Widget UI Spec -PDF]&lt;br /&gt;
** [http://www.forum.nokia.com/info/sw.nokia.com/id/eb8a68ba-6225-4d84-ba8f-a00e4a05ff6f/Hildon_2_2_UI_Style_Guide.html Hildon 2.2 UI Style Guid -PDF]&lt;br /&gt;
* Diablo&lt;br /&gt;
** ADD_SOMETHING_HERE&lt;br /&gt;
* Other Docs&lt;br /&gt;
** [http://www.forum.nokia.com/Tools_Docs_and_Code/Documentation/Latest.xhtml Forum Nokia Docs] contain Maemo as well as other documentation related to other Nokia platforms.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=[[Image:Bug.png]] Bug tracking=&lt;br /&gt;
* Diablo &amp;amp; Fremanlte Qt 4.5 port&lt;br /&gt;
** [https://bugs.maemo.org/buglist.cgi?query_format=specific&amp;amp;order=relevance+desc&amp;amp;bug_status=__open__&amp;amp;product=Qt&amp;amp;content= View bug list]&lt;br /&gt;
** [https://bugs.maemo.org/enter_bug.cgi?product=Qt Report a new bug]&lt;br /&gt;
* Fremantle Qt 4.6 port&lt;br /&gt;
** [http://doc.trolltech.com/4.6/bughowto.html How to report a bug]&lt;br /&gt;
** [http://bugreports.qt.nokia.com/secure/CreateIssue!default.jspa Report a new bug]&lt;br /&gt;
** [http://bugreports.qt.nokia.com/secure/IssueNavigator.jspa?reset=true&amp;amp;&amp;amp;query=maemo&amp;amp;summary=true&amp;amp;description=true&amp;amp;body=true&amp;amp;environment=true&amp;amp;pid=10510 View bug list]&lt;br /&gt;
&lt;br /&gt;
=[[Image:Helmet.png]] Code=&lt;br /&gt;
* Qt 4.5 (Diablo)&lt;br /&gt;
** http://gitorious.org/+qt-maemo-developers/qt/qt-maemo&lt;br /&gt;
* Qt 4.5 (Fremantle)&lt;br /&gt;
** http://gitorious.org/+qt-maemo-developers/qt/qt-maemo&lt;br /&gt;
* Qt 4.6 (Fremantle)&lt;br /&gt;
** http://qt.gitorious.org/qt/x11-maemo&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=[[Image:Preferences-desktop-user.png]] Contacting us=&lt;br /&gt;
* IRC&lt;br /&gt;
** Currently this is main and faster way to communicate with Qt 4.6 and Qt 4.5 developers.&lt;br /&gt;
** Click [http://webchat.freenode.net/?channels=qt-maemo here] to join the #qt-maemo channel in frenode (irc.freenode.net).&lt;br /&gt;
&lt;br /&gt;
* Mailing list&lt;br /&gt;
** [https://garage.maemo.org/mailman/listinfo/qt4-devel Click here to Subscribe to the Qt community ML]&lt;br /&gt;
&lt;br /&gt;
* Forums&lt;br /&gt;
** [https://garage.maemo.org/forum/?group_id=424 Click here to enter the Forum]&lt;br /&gt;
&lt;br /&gt;
** [http://discussion.forum.nokia.com/forum/forumdisplay.php?f=220 Click here to enter the Forum Nokia]&lt;/div&gt;</summary>
		<author><name>192.100.124.219</name></author>
	</entry>
	<entry>
		<id>https://maemo.octonezd.me/index.php?title=Maemo-Barcelona_Long_Weekend/UX_meets_Code&amp;diff=15873</id>
		<title>Maemo-Barcelona Long Weekend/UX meets Code</title>
		<link rel="alternate" type="text/html" href="https://maemo.octonezd.me/index.php?title=Maemo-Barcelona_Long_Weekend/UX_meets_Code&amp;diff=15873"/>
		<updated>2009-12-02T08:05:35Z</updated>

		<summary type="html">&lt;p&gt;192.100.124.219: /* Participants */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This wiki page is complemented by [http://talk.maemo.org/showthread.php?p=393329 this discussion thread]&lt;br /&gt;
&lt;br /&gt;
About 50 community developers and user experience professionals work together during 3 days.&lt;br /&gt;
&lt;br /&gt;
=== 3 goals ===&lt;br /&gt;
&lt;br /&gt;
* Improve the usability and visual appeal of great Maemo apps.&lt;br /&gt;
* Improve the UX documentation for Maemo developers.&lt;br /&gt;
* Get a critical mass of people interested in pushing forward UX meets Code activities online and face to face.&lt;br /&gt;
&lt;br /&gt;
=== Way of working ===&lt;br /&gt;
&lt;br /&gt;
All the activity happens in a big room (official capacity for 70 people).&lt;br /&gt;
&lt;br /&gt;
The group activity on a project can happen in one side and you can be doing your own thing on the other side if you prefer. Free flow!&lt;br /&gt;
&lt;br /&gt;
You should be able to find some time during the day to get some opinions and help from one of the experts about specific details of your project.&lt;br /&gt;
&lt;br /&gt;
Every day has a similar flexible structure:&lt;br /&gt;
* 9:00 - Starting with a briefing about the topic: presentation + Q&amp;amp;A.&lt;br /&gt;
* 11:00 - About 2h discussion and collaboration on a real project. &lt;br /&gt;
* 13:00 - Lunch&lt;br /&gt;
* 14:00 - 2nd real project.&lt;br /&gt;
* 16:00 - Everybody: hard work. Other projects feel free to share your plans and problems &lt;br /&gt;
* 18:00 - Recap&lt;br /&gt;
* 18:30-ish - Enjoy the city!&lt;br /&gt;
&lt;br /&gt;
===Projects===&lt;br /&gt;
&lt;br /&gt;
6 projects have been selected to get get special attention during the Long Weekend. The group will do its best to have a Before and After for them. Participants in the hackfest can join the discussion/work of a specific project or can you their time to work on their own projects. &lt;br /&gt;
&lt;br /&gt;
{|width=100%&lt;br /&gt;
!width=10%| &lt;br /&gt;
!width=30% align=center style=&amp;quot;background-color:#efe;&amp;quot;|&amp;lt;span style=&amp;quot;font-size: 20pt; font-weight: bold;&amp;quot;&amp;gt;Friday&amp;lt;/span&amp;gt;&amp;lt;br&amp;gt;concepting&lt;br /&gt;
!width=30% align=center style=&amp;quot;background-color:#fee;&amp;quot;|&amp;lt;span style=&amp;quot;font-size: 20pt; font-weight: bold;&amp;quot;&amp;gt;Saturday&amp;lt;/span&amp;gt;&amp;lt;br&amp;gt;interaction&lt;br /&gt;
!width=30% align=center style=&amp;quot;background-color:#eef;&amp;quot;|&amp;lt;span style=&amp;quot;font-size: 20pt; font-weight: bold;&amp;quot;&amp;gt;Sunday&amp;lt;/span&amp;gt;&amp;lt;br&amp;gt;graphics&lt;br /&gt;
|-&lt;br /&gt;
|align=right style=&amp;quot;padding:10px;&amp;quot;|11:00-12:00&lt;br /&gt;
|style=&amp;quot;padding:10px;background-color:#efe;&amp;quot;|[http://www.youtube.com/watch?v=9rEZxWjVvGo liqbase Calendar]&lt;br /&gt;
|style=&amp;quot;padding:10px;background-color:#fee;&amp;quot;|[[Maemo-Barcelona_Long_Weekend/UX_meets_Code/MaemoMapper|Mapper]]&lt;br /&gt;
|style=&amp;quot;padding:10px;background-color:#eef;&amp;quot;|[http://maemo.org/downloads/product/Maemo5/gpodder/ gPodder]&lt;br /&gt;
|-&lt;br /&gt;
|align=right style=&amp;quot;padding:10px;&amp;quot;|14:00-16:00&lt;br /&gt;
|style=&amp;quot;padding:10px;background-color:#efe;&amp;quot;|Video editor&lt;br /&gt;
|style=&amp;quot;padding:10px;background-color:#fee;&amp;quot;|[http://maemo.org/downloads/product/Maemo5/xournal/ Xournal]&lt;br /&gt;
|style=&amp;quot;padding:10px;background-color:#eef;&amp;quot;|MaStory&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
List here other projects with developers participants in the hackfest. Please provide links to the project and your thought on what would you like to improve and what do you plan to achieve during the whole weekend. Add your names!&lt;br /&gt;
&lt;br /&gt;
* [http://maemo.org/downloads/product/Maemo5/fmradio/ FM Radio] - Martin Grimme - general UI overhaul for a better user experience&lt;br /&gt;
* [http://maemo.org/downloads/product/Maemo5/conboy/ Conboy] - Cornelius Hald - Fixing settings UI / Polishing synchronization work flow and dialogs / Making control file translatable / Getting ideas for next version&lt;br /&gt;
* [http://maemo.org/downloads/product/OS2008/diskusage/ DiskUsage], [http://maemo.org/downloads/product/OS2008/kandis/ Kandis], [http://maemo.org/downloads/product/OS2008/PackageView/ PackageView], [http://maemo.org/downloads/product/OS2008/weightjinni/ WeightJinni], [http://maemo.org/downloads/product/OS2008/wifiinfo/ WifiInfo], [http://maemo.org/downloads/product/OS2008/mathjinni/ MathJinni], [http://maemo.org/downloads/product/OS2008/dicejinni/ DiceJinni], [http://maemo.org/downloads/product/OS2008/findmine/ FindMine], [http://maemo.org/downloads/product/OS2008/pushit/ PushIt], [http://maemo.org/downloads/product/OS2008/givemefive/ GiveMeFive], [http://maemo.org/downloads/product/OS2008/gpsjinni/ GPSJinni] - Tim Teulings - Usage of tables with table headers and multiple columns vs. one table column with complex layout (general), general usability improvements (MathJinni, WeightJinni, DiceJinni, Kandis, GPSJinni) replacement suggestions for tree view (MathJinni), thumbable gaming interaction (FindMine, PushIt, GiveMeFive) and technical support for Gtk/hildon theming alignment and Qt know how (general) - all applications also available in maemo5 extras-devel!&lt;br /&gt;
&lt;br /&gt;
=== Participants ===&lt;br /&gt;
Please add your names and a link to your maemo.org profile. Please edit your profile adding all the relevant info about you and links to your website, blog, etc.&lt;br /&gt;
&lt;br /&gt;
* [http://maemo.org/profile/view/martin/ Martin Schuele] - Principal UI designer for N900&lt;br /&gt;
* [http://maemo.org/profile/view/msoini/ Mox Soini] - Interaction Designer, Concepting, Maemo-as-platform&lt;br /&gt;
* Steffen Halme - Graphic Designer specializing in icons&lt;br /&gt;
* [http://personal.inet.fi/koti/mgimpl/ Martin Gimpl] - Graphic Designer, Concepting, Transitions, Graphics&lt;br /&gt;
* [http://maemo.org/profile/view/asimula/ Adele Simula] - UX Graphic Designer, Concepting, Layout Design, Graphics&lt;br /&gt;
* Sanna Nordling - Interaction designer, Concepting, Application UX design&lt;br /&gt;
* [http://maemo.org/profile/view/jmaaniit/ Jussi Maaniitty] - UX Management, Concepting&lt;br /&gt;
* Juha Vartiainen - Interaction Design, Concepting, Application UI design&lt;br /&gt;
* Jaakko Viitanen - Interaction Design, Concepting, Application UI design&lt;br /&gt;
* [http://blogs.forum.nokia.com/blog/arabella-davids-forum-nokia-blog Arabella David], Design &amp;amp; User Experience Program Manager @ Forum Nokia&lt;br /&gt;
* [http://maemo.org/profile/view/sannah/ Sanna Häivalainen] - UX Specialist @ Forum Nokia&lt;br /&gt;
* [http://maemo.org/profile/view/tigert/ Tuomas Kuosmanen] - Senior Designer @ Nokia&lt;br /&gt;
* [http://maemo.org/profile/view/patifa/ Patricia Montenegro] - Lead User Experience Designer @ INdT&lt;br /&gt;
* [http://maemo.org/profile/view/allsomm/ Alysson Santos] - Senior Designer @ INdT - interested in the video editor&lt;br /&gt;
* Annu-Maaria Nivala&lt;br /&gt;
* Jan Krebber&lt;br /&gt;
* Kirsi Rönkkö&lt;br /&gt;
* Ulla Niemelä&lt;br /&gt;
&lt;br /&gt;
===Help with specific technologies===&lt;br /&gt;
&lt;br /&gt;
====Developers willing to help====&lt;br /&gt;
Please list technologies you are using and working with here. This makes it easier for other people to quickly find a person to ask specific technical questions.&lt;br /&gt;
&lt;br /&gt;
* Thomas Perl: PyMaemo, GTK+, Hildon, PyGTK, Python&lt;br /&gt;
* [http://maemo.org/profile/view/andy80/ Andrea Grandi]: Pymaemo, Python, UI design concepts&lt;br /&gt;
* [http://maemo.org/profile/view/anidel/ Aniello Del Sorbo]: GTK, C, Debian packaging. Not an expert.&lt;br /&gt;
* Jesus Sanchez-Palencia: Qt 4.6, libqt4-maemo5 (Qt 4.6 for Maemo5)&lt;br /&gt;
* Zaheer Abbas Merali: GStreamer, Python, PyGTK&lt;br /&gt;
* [http://maemo.org/profile/view/vdvsx/ Valério Valério]: Python, C/C++, EFL, PyGTK, Qt (not an expert).&lt;br /&gt;
* [http://maemo.org/profile/view/mardy/ Alberto Mardegan]: GTK, Hildon, C/C++, Qt, Clutter (just basics).&lt;br /&gt;
* [http://maemo.org/profile/view/marcoil/ Marc Ordinas i Llopis]: C, Gtk+, Hildon, Hildon-desktop.&lt;br /&gt;
* [http://maemo.org/profile/view/pycage/ Martin Grimme]: PyMaemo, GDK, UPnP with Python, V4L2 in Python, controlling N800 &amp;amp; N900 FM receivers, D-Bus services with GObject (C)&lt;br /&gt;
* [http://maemo.org/profile/view/mikhas/ Michael Hasselmann]: Qt 4.6 for Maemo5 (novice), autotroll&lt;br /&gt;
* [http://maemo.org/profile/view/bilboed/ Edward Hervey]: Video Editing, GStreamer, PiTiVi, GStreamer Editing Services, GNonLin&lt;br /&gt;
* [http://maemo.org/profile/view/conny/ Cornelius Hald]: C, Gtk+, Hildon, Eclipse, transifex.net, hildon-extras&lt;br /&gt;
* &#039;&#039;&amp;lt;Your name here&amp;gt;: &amp;lt;Your technologies here&amp;gt;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
====How to get help====&lt;br /&gt;
&lt;br /&gt;
# Look up developers who work with the technology you need help with in the list above&lt;br /&gt;
# Approach the developers and ask them for help/advice :)&lt;br /&gt;
# In the neighbor room there will be [[Maemo-Barcelona_Long_Weekend/Formaci%C3%B3n|a developer&lt;br /&gt;
training track]]. Feel free jumping there to ask questions, too!&lt;br /&gt;
&lt;br /&gt;
=== Interested? ===&lt;br /&gt;
&lt;br /&gt;
If you want to be invited please provide in [http://talk.maemo.org/showthread.php?t=33719 this thread]:&lt;br /&gt;
&lt;br /&gt;
* Your [http://maemo.org/profile/list/ maemo.org profile] making sure that there one can find info about or links to your current projects and your interests in Code or UX.&lt;br /&gt;
* If you are more into Code, a link to the app hosted in maemo.org, either under [http://maemo.org/packages/ Fremantle packages] or [http://maemo.org/downloads/OS2008/ OS2008 Downloads].&lt;br /&gt;
* If you are more into UX, a link to wherever your work can be seen.&lt;br /&gt;
&lt;br /&gt;
Forward this to your colleagues working on great stuff!&lt;br /&gt;
&lt;br /&gt;
For budgeting and also practical purposes we will keep the number of participants around 50 people even if we get more requests. The criteria will be defined more or less by fast response, travel costs, community involvement and of course Maemo excellence in Code or UX.&lt;/div&gt;</summary>
		<author><name>192.100.124.219</name></author>
	</entry>
	<entry>
		<id>https://maemo.octonezd.me/index.php?title=Using_Fremantle_widgets&amp;diff=42493</id>
		<title>Using Fremantle widgets</title>
		<link rel="alternate" type="text/html" href="https://maemo.octonezd.me/index.php?title=Using_Fremantle_widgets&amp;diff=42493"/>
		<updated>2009-11-12T09:28:36Z</updated>

		<summary type="html">&lt;p&gt;192.100.124.219: /* Portrait Mode */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This document should help developers to port the user interface from [[Diablo]] to [[Fremantle]]. The document mirrors what was discussed on the mailing lists, forum and bug reports. It is based completely on the Fremantle Beta SDK which is the most recent SDK at the moment.&lt;br /&gt;
in addition, please check the growing [http://wiki.maemo.org/index.php?title=Documentation/Maemo_5_Developer_Guide/Human_Interface_Guidelines Human Interface Guidelines] and the official hildon documentation:&lt;br /&gt;
* [http://www.forum.nokia.com/info/sw.nokia.com/id/eb8a68ba-6225-4d84-ba8f-a00e4a05ff6f/Hildon_2_2_UI_Style_Guide.html Hildon 2.2 UI Style Guide]&lt;br /&gt;
* [http://www.forum.nokia.com/info/sw.nokia.com/id/019c2b31-3777-49a0-9257-970d79580756/Hildon_2_2_Widget_UI_Specification.html Hildon 2.2 Widget UI Specification]&lt;br /&gt;
* [http://www.forum.nokia.com/info/sw.nokia.com/id/e778ba1f-2507-4672-be45-798359a3aea7/Fremantle_Master_Layout_Guide.html Fremantle Master Layout Guide]&lt;br /&gt;
&lt;br /&gt;
Please feel totally free to add/update/change/remix this document. Many aspects are currently not discussed here but will hopefully be added by you!&lt;br /&gt;
&lt;br /&gt;
Note: The casts of all code examples haven been removed for better readability.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Toggle Buttons Vs. Radio Buttons =&lt;br /&gt;
The use of radio buttons in Fremantle is discouraged because they don&#039;t fit the visual style quite well. Instead you should use toggle buttons.&lt;br /&gt;
&lt;br /&gt;
So if you need the behavior of radio buttons (which is that only one can be selected at a time) simply create them as usually and then call &amp;lt;code&amp;gt;gtk_toggle_button_set_mode()&amp;lt;/code&amp;gt;. This will create a button that acts like a radio button, but is displayed as a toggle button.&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
GtkWidget *b1 = gtk_radio_button_new_with_label(&amp;quot;One&amp;quot;);&lt;br /&gt;
GtkWidget *b2 = gtk_radio_button_new_with_label_from_widget(b1, &amp;quot;Two&amp;quot;);&lt;br /&gt;
gtk_toggle_button_set_mode(b1, FALSE);&lt;br /&gt;
gtk_toggle_button_set_mode(b2, FALSE);&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Image:Fle_tut_radio_buttons.jpg|frame|Above you see how radio buttons are displayed in Fremantle. There is a bug in this screenshot, normally of course only one of the four options would be selected.]]&lt;br /&gt;
&lt;br /&gt;
[[image:Fle_tut_toggle_buttons.jpg|frame|Here you can see four radio buttons which are displayed as toggle buttons using the &amp;lt;code&amp;gt;gtk_toggle_button_set_mode()&amp;lt;/code&amp;gt; function mentioned above.]]&lt;br /&gt;
&lt;br /&gt;
= Widget Sizes =&lt;br /&gt;
For some widgets there is now an enum which provides three different values: &amp;lt;code&amp;gt;HILDON_SIZE_FINGER_HEIGHT&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;HILDON_SIZE_THUMB_HEIGHT&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;HILDON_SIZE_AUTO_HEIGHT&amp;lt;/code&amp;gt;. You can use them, for example, like that:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
GtkWidget but* = hildon_gtk_button_new(HILDON_SIZE_FINGER_HEIGHT);&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
You should always use the finger or the thumb size, don&#039;t use HILDON_SIZE_AUTO_HEIGHT as the outcome is not totally clear (see below for screenshots).&lt;br /&gt;
&lt;br /&gt;
If you have a button where you cannot provide a size with the constructor, for example, a stock button, then you can use &amp;lt;code&amp;gt;hildon_gtk_widget_set_theme_size()&amp;lt;/code&amp;gt; to set the code afterwards. Like in this small example:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
GtkWidget *but = gtk_button_new_from_stock(GTK_STOCK_COPY);&lt;br /&gt;
hildon_gtk_widget_set_theme_size(but, HILDON_SIZE_THUMB_HEIGHT);&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Now to get a feeling for the different sizes here are some screenshots that show a HildonEntry together with a GtkButton using different sizes.&lt;br /&gt;
&lt;br /&gt;
[[Image:Fle_tut_button_auto_finger.jpg|frame|A HildonEntry with HILDON_SIZE_AUTO_HEIGHT and a GtkButton with HILDON_SIZE_FINGER_HEIGHT. Looks inconsistent.]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Image:Fle_tut_button_finger_finger.jpg|frame|Both widget with HILDON_SIZE_FINGER_HEIGHT. Looks more consistent now.]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Image:Fle_tut_button_finger_thumb.jpg|frame|For comparison reasons the HildonEntry with HILDON_SIZE_FINGER_HEIGHT and the GtkButton with HILDON_SIZE_THUMB_HEIGHT.]]&lt;br /&gt;
&lt;br /&gt;
= Window Menu =&lt;br /&gt;
In Fremantle it is not encouraged to use &amp;lt;code&amp;gt;GtkMenu&amp;lt;/code&amp;gt; as window menu anymore. Instead you should use the &amp;lt;code&amp;gt;HildonAppMenu&amp;lt;/code&amp;gt;. This new menu is really different from the old one so it´s worth taking a closer look. Here are the main features of the HildonAppMenu.&lt;br /&gt;
* It has big / finger friendly menu items.&lt;br /&gt;
* It holds a maximum of ten menu items.&lt;br /&gt;
* It does not support sub menues.&lt;br /&gt;
* The first row can be used for Filters. (Filters are explained in more details below.)&lt;br /&gt;
* In landscape mode the menu items are displayed in two rows.&lt;br /&gt;
* In portrait mode the menu items are automatically displayed in one row.&lt;br /&gt;
* There are no separators, so you cannot group your menu items.&lt;br /&gt;
* The menu items are GtkButtons and not GtkMenuItems.&lt;br /&gt;
&lt;br /&gt;
The HildonAppMenu is meant to be displayed when the user clicks the title bar of the window, but it is possible to have several other HildonAppMenus in your application and activate them for example on button press.&lt;br /&gt;
&lt;br /&gt;
As you can see the HildonAppMenu differs quite a lot from the old GtkMenu. The main difference is surely that you cannot have more then 10 menu items&lt;br /&gt;
inside the new menu. The Hildon HIG gives an overview on how to deal with that.&lt;br /&gt;
&lt;br /&gt;
[[Image:Fle_tut_app_menu_with_filters.jpg‎|frame|A HildonAppMenu with two filters at the top and four buttons]]&lt;br /&gt;
&lt;br /&gt;
== Using HildonAppMenu with GtkActions ==&lt;br /&gt;
As said earlier, the menu items are not GtkMenuItems anymore but instead they are normal GtkButtons. So you´re using GtkActions in your code, you´ll probably miss a replacement for &amp;lt;code&amp;gt;gtk_action_create_menu_item()&amp;lt;/code&amp;gt;. There is no direct replacement, instead you just have to use standard gtk functions to connect the button as a proxy to the action. Here is an example:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
GtkButton *menu_item = gtk_button_new();&lt;br /&gt;
gtk_action_connect_proxy(action, menu_item);&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
This is also possible with &amp;lt;code&amp;gt;GtkToggleAction&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;GtkRadioAction&amp;lt;/code&amp;gt;. But remember that your GtkRadioButtons should look like GtkToggleButtons as mentioned above. So a complete example for a HildonAppMenu that should display three GtkRadioActions would look like this:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
GSList *group = NULL;&lt;br /&gt;
GtkAction *a1, *a2, *a3;&lt;br /&gt;
GtkWidget *b1, *b2, *b3;&lt;br /&gt;
GtkWidget *menu;&lt;br /&gt;
&lt;br /&gt;
/* Create the actions */&lt;br /&gt;
a1 = gtk_radio_action_new(&amp;quot;small&amp;quot;, &amp;quot;Small&amp;quot;, NULL, NULL, 0);&lt;br /&gt;
a2 = gtk_radio_action_new(&amp;quot;normal&amp;quot;, &amp;quot;Normal&amp;quot;, NULL, NULL, 1);&lt;br /&gt;
a3 = gtk_radio_action_new(&amp;quot;large&amp;quot;, &amp;quot;Large&amp;quot;, NULL, NULL, 2);&lt;br /&gt;
&lt;br /&gt;
/* Build the radio action group */&lt;br /&gt;
gtk_radio_action_set_group(a1, group);&lt;br /&gt;
group = gtk_radio_action_get_group(a1);&lt;br /&gt;
&lt;br /&gt;
gtk_radio_action_set_group(a2, group);&lt;br /&gt;
group = gtk_radio_action_get_group(a2);&lt;br /&gt;
&lt;br /&gt;
gtk_radio_action_set_group(a3, group);&lt;br /&gt;
group = gtk_radio_action_get_group(a3);&lt;br /&gt;
&lt;br /&gt;
/* Create the toggle buttons */&lt;br /&gt;
b1 = gtk_toggle_button_new();&lt;br /&gt;
b2 = gtk_toggle_button_new();&lt;br /&gt;
b3 = gtk_toggle_button_new();&lt;br /&gt;
&lt;br /&gt;
/* Connect the buttons and the actions */&lt;br /&gt;
gtk_action_connect_proxy(a1, b1);&lt;br /&gt;
gtk_action_connect_proxy(a2, b2);&lt;br /&gt;
gtk_action_connect_proxy(a3, b3);&lt;br /&gt;
&lt;br /&gt;
/* Create the menu */&lt;br /&gt;
menu = hildon_app_menu_new();&lt;br /&gt;
&lt;br /&gt;
/* Add the buttons to the menu */&lt;br /&gt;
hildon_app_menu_append(menu, b1);&lt;br /&gt;
hildon_app_menu_append(menu, b2);&lt;br /&gt;
hildon_app_menu_append(menu, b3);&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Finger Friendly GtkTreeView =&lt;br /&gt;
To get a finger friendly &amp;lt;code&amp;gt;GtkTreeView&amp;lt;/code&amp;gt; it´s not enough to call &amp;lt;code&amp;gt;hildon_gtk_tree_view_new()&amp;lt;/code&amp;gt; instead of &amp;lt;code&amp;gt;gtk_tree_view_new()&amp;lt;/code&amp;gt; but you also have to put the tree view inside a &amp;lt;code&amp;gt;HildonPannableArea&amp;lt;/code&amp;gt; to get finger friendly sizes. If you have your tree view inside a &amp;lt;code&amp;gt;GtkScrolledWindow&amp;lt;/code&amp;gt; it will be displayed with stylus-style (like in Diablo).&lt;br /&gt;
&lt;br /&gt;
Also if you´re displaying icons in your tree view you probably should use the 40x40 pixel version for Fremantle if you used the 26x26 pixel version in Diablo.&lt;br /&gt;
&lt;br /&gt;
== Normal Vs. Edit Mode ==&lt;br /&gt;
There are now two different modes for the tree view. Those modes affect how the rows in a tree view react to finger taps.&lt;br /&gt;
&lt;br /&gt;
You should use &amp;lt;code&amp;gt;HILDON_UI_MODE_NORMAL&amp;lt;/code&amp;gt; if the user should only be able to activate one row of the text view. If the user taps a row in the tree view the &amp;lt;code&amp;gt;row-activated&amp;lt;/code&amp;gt; is emitted. In standard Gtk+ this happens only if the user double clicks the row - a single click selects the row which is not possible with &amp;lt;code&amp;gt;HILDON_UI_MODE_NORMAL&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
If the user should be able to select or edit rows then you should use &amp;lt;code&amp;gt;HILDON_UI_MODE_EDIT&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
== Using Filters For Sorting ==&lt;br /&gt;
Most of you probably are using the tree view with a header row that displays column labels. Often this header row can also be used to sort the columns ascending or descending. If you&#039;re designing a finger friendly UI you will usually have a very limited number of visible columns - probably only one or two. In this case the column content is often self explanatory and the header row is only there for sorting. If that&#039;s the case for your UI, you might want to remove the header column completely and replace it with so called filters on the HildonAppMenu.&lt;br /&gt;
&lt;br /&gt;
According to the HIG filters are meant to change how data is presented, but it should not affect the amount of data that is displayed. Sorting a tree view would be a possible use case. To do this, just have a look at the example:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
/* Remove the header row */&lt;br /&gt;
gtk_tree_view_set_headers_visible(view, FALSE);&lt;br /&gt;
&lt;br /&gt;
/* Create two radio buttons for sorting */&lt;br /&gt;
GtkWidget *b1, *b2;&lt;br /&gt;
b1 = gtk_radio_button_new_with_label(NULL, &amp;quot;Sort By Title&amp;quot;);&lt;br /&gt;
b2 = gtk_radio_button_new_with_label_from_widget(b1, &amp;quot;Sort By Date&amp;quot;);&lt;br /&gt;
&lt;br /&gt;
/* Draw them as toggle buttons not as radio buttons */&lt;br /&gt;
gtk_toggle_button_set_mode(b1, FALSE);&lt;br /&gt;
gtk_toggle_button_set_mode(b2, FALSE);&lt;br /&gt;
&lt;br /&gt;
/* Add the buttons as filters to the menu */&lt;br /&gt;
hildon_app_menu_add_filter(menu, b1);&lt;br /&gt;
hildon_app_menu_add_filter(menu, b2);&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
That is all for showing them on the window menu. Now only a callback is needed which gets activated whenever the user selects a filter. An example implementation might look like that:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
void on_sort_filter_clicked(GtkToggleButton *button, GtkTreeSortable *sortable)&lt;br /&gt;
{&lt;br /&gt;
  if (gtk_toggle_button_get_active(button)) {&lt;br /&gt;
    gtk_tree_sortable_set_sort_column_id(sortable, TITLE_COLUMN, GTK_SORT_ASCENDING);&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You can add as many filters as you like, but they will be displayed all in one row and there is no possibility to add another filter row. This means you have to select carefully what to put there and also have a look at the length of the strings.&lt;br /&gt;
If you, for example have two rows, one with a title and one with a date you could offer the user:&lt;br /&gt;
* Sort ascending by date&lt;br /&gt;
* Sort descending by date&lt;br /&gt;
* Sort ascending by title&lt;br /&gt;
* Sort descending by title&lt;br /&gt;
Those four strings will not fit into one row. Therefore you have to make a selection and include only the cases which will (hopefully) be most relevant to the user. In this case you should offer:&lt;br /&gt;
* Sort by title (which sorts by title ascending - A before B)&lt;br /&gt;
* Sort by date (which sorts by date descending - newest on top)&lt;br /&gt;
In the most recent version (not yet in Beta 2) the filter group has a fixed size which does not depend on the number of filters or the orientation of the device. So if your menu looks good in landscape mode it will look good in portrait mode.&lt;br /&gt;
&lt;br /&gt;
[[Image:Fle_tut_tree_view.jpg‎|frame|A tree view without the title row. Sorting is now done with filters]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Image:Fle_tut_tree_view_filter.jpg‎|frame|When clicking the title bar two filters are shown which let the user sort the tree view]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Image:Fle_tut_filter_long_strings.jpg|frame|Long strings get truncated]]&lt;br /&gt;
&lt;br /&gt;
= Context Menus =&lt;br /&gt;
To display finger friendly context menues there is a hildon helper function called &amp;lt;code&amp;gt;hildon_gtk_menu_new()&amp;lt;/code&amp;gt;. Just call this instead of &amp;lt;code&amp;gt;gtk_menu_new()&amp;lt;/code&amp;gt; and you´re done.&lt;br /&gt;
Example:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
GtkWidget *menu = hildon_gtk_menu_new();&lt;br /&gt;
&lt;br /&gt;
GtkWidget *item1 = gtk_menu_item_new_with_label(&amp;quot;Bla&amp;quot;);&lt;br /&gt;
GtkWidget *item2 = gtk_menu_item_new_with_label(&amp;quot;Blablabla&amp;quot;);&lt;br /&gt;
&lt;br /&gt;
gtk_menu_shell_append(GTK_MENU_SHELL(menu), item1);&lt;br /&gt;
gtk_menu_shell_append(GTK_MENU_SHELL(menu), item2);&lt;br /&gt;
&lt;br /&gt;
gtk_widget_show_all(menu);&lt;br /&gt;
gtk_menu_popup(GTK_MENU(menu), NULL, NULL, NULL, NULL, 0,&lt;br /&gt;
gtk_get_current_event_time());&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&#039;&#039;Note that in the Beta SDK there is a bug. If you´re using &amp;lt;code&amp;gt;GtkImageMenuItems&amp;lt;/code&amp;gt; instead of &amp;lt;code&amp;gt;GtkMenuItems&amp;lt;/code&amp;gt; the menu will have stylus-style. This bug is already fixed and a work around is available here: https://bugs.maemo.org/show_bug.cgi?id=4654 .&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
[[Image:Fle_tut_context_menu.jpg‎|frame|Finger friendly context menu which is showing four stock items]]&lt;br /&gt;
&lt;br /&gt;
= Panning =&lt;br /&gt;
Almost all of you will know the problems with scrollbars in Diablo. You can have small scrollbars which are not finger friendly or you can have large scrollbars which are using a lot of screen space and look ugly.&lt;br /&gt;
&lt;br /&gt;
In Fremantle both kinds of scrollbars are still available, but there is also a third option. &amp;lt;code&amp;gt;HildonPannableArea&amp;lt;/code&amp;gt; features kinetic panning using fingers. There is no scrollbar anymore, only a very small scroll indicator that indicates which part of the document you´re seeing right now.&lt;br /&gt;
&amp;lt;code&amp;gt;HildonPannableArea&amp;lt;/code&amp;gt; can be used as a replacement for &amp;lt;code&amp;gt;GtkScrolledWindow&amp;lt;/code&amp;gt; but there are things you have to keep in mind when doing so.&lt;br /&gt;
&lt;br /&gt;
== GtkTextView Inside HildonPannableArea ==&lt;br /&gt;
Panning does not work with a &amp;lt;code&amp;gt;GtkTextView&amp;lt;/code&amp;gt;. Instead you can use a &amp;lt;HildonTextView&amp;gt; which is a drop in replacement. The advantage is, that then panning is possible. The disadvantage is that selecting text is not possible anymore. The discussion about this is here: https://bugs.maemo.org/show_bug.cgi?id=4619&lt;br /&gt;
&lt;br /&gt;
== GtkHtml Inside HildonPannableArea ==&lt;br /&gt;
When using &amp;lt;code&amp;gt;GtkHtml&amp;lt;/code&amp;gt; inside a &amp;lt;code&amp;gt;HildonPannableArea&amp;lt;/code&amp;gt; the panning is not smooth. The problem seems to be that GtkHtml provides some build in support for panning and that it conflicts with the panning offered by Hildon. See this bug report here: https://bugs.maemo.org/show_bug.cgi?id=4631&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Portrait Mode =&lt;br /&gt;
If your application should work in portrait mode you probably have to change the UI quite a bit. There are a couple of problems you&#039;ll might have:&lt;br /&gt;
* The toolbar is not wide enough to hold all items anymore.&lt;br /&gt;
* The columns of your tree view get too small.&lt;br /&gt;
* You cannot enter text because there´s no onscreen keyboard.  (Actually the FKB works perfectly, but it will switch to landscape and then back to portrait when closed.)&lt;br /&gt;
* Dialogs are not shown correctly (see https://bugs.maemo.org/show_bug.cgi?id=4618 ).&lt;br /&gt;
* Probably more...&lt;br /&gt;
&lt;br /&gt;
This means you have to listen to changes in the orientation and hide/show/change widgets to make the UI functional in portrait mode.&lt;br /&gt;
&lt;br /&gt;
[[Image:Fle_tut_app_menu_portrait.jpg|frame|The HildonAppMenu with filters in portrait mode. The final version will cover the complete screen width, so there is a bit more space for the filters.]]&lt;br /&gt;
&lt;br /&gt;
== Listening To Screen Orientation Changes ==&lt;br /&gt;
Basically here you´re not listening to changes in the devices orientation, but you check  the height and width of the screen. So if width &amp;gt; height you are in landscape mode and if height &amp;gt; width you´re in portrait mode. This is supposed to work no matter why height and width changed. So it does not depend on hardware support like acceleratormeters it could also just be a software setting that rotates the screen.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
gboolean is_portrait()&lt;br /&gt;
{&lt;br /&gt;
  GdkScreen *screen = gdk_screen_get_default();&lt;br /&gt;
  int width = gdk_screen_get_width(screen);&lt;br /&gt;
  int height = gdk_screen_get_height(screen);&lt;br /&gt;
  if (width &amp;gt; height) {&lt;br /&gt;
    return FALSE;&lt;br /&gt;
  } else {&lt;br /&gt;
    return TRUE;&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
void on_orientation_changed(GdkScreen *screen, GtkWidget *widget)&lt;br /&gt;
{&lt;br /&gt;
  if (is_portrait()) {&lt;br /&gt;
    gtk_widget_hide(widget);&lt;br /&gt;
    /* Hide/Show other things */&lt;br /&gt;
  } else {&lt;br /&gt;
    gtk_widget_show(widget);&lt;br /&gt;
    /* Hide/Show other things */&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Then inside your UI code you should listen to the &amp;lt;code&amp;gt;size-changed&amp;lt;/code&amp;gt; signal of &amp;lt;code&amp;gt;GdkScreen&amp;lt;/code&amp;gt;. For example:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
g_signal_connect(screen, &amp;quot;size-changed&amp;quot;, on_orientation_changed, widget);&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Testing Screen Orientation Changes In Scratchbox ==&lt;br /&gt;
For testing your code you can execute the following commands outside scratchbox:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
xrandr -display :2 -o left&lt;br /&gt;
xrandr -display :2 -o normal&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Automatic Screen Rotation ==&lt;br /&gt;
Your application is not automatically rotated when the user rotates its device. Even if the hardware supports it. There are more things to do to make that happen. Basically you have to do two things:&lt;br /&gt;
* During startup of your application, or better shortly before showing the first window, you should check the orientation of the device and adjust your application.&lt;br /&gt;
* You have to listen to all changes in the devices orientation while your application is running and adapt accordingly.&lt;br /&gt;
&lt;br /&gt;
Whether or not your application is rotated depends on a couple of things:&lt;br /&gt;
* There are two X window properties which you can set on your windows.&lt;br /&gt;
* Those tell the system what to do.  The type of the value of the properties is &amp;lt;tt&amp;gt;XA_CARDINAL&amp;lt;/tt&amp;gt; where 0 means &amp;quot;off&amp;quot;, and 1 stands for &amp;quot;on&amp;quot;.  Other values may get other meaning in the future.&lt;br /&gt;
** &amp;lt;tt&amp;gt;HILDON_PORTRAIT_MODE_SUPPORT&amp;lt;/tt&amp;gt; tells the system that your application can be rotated, so it won&#039;t prevent any other application from rotating.&lt;br /&gt;
** &amp;lt;tt&amp;gt;HILDON_PORTRAIT_MODE_REQUEST&amp;lt;/tt&amp;gt; tells the system that your application wants to be rotated.&lt;br /&gt;
* Rotation only happens when all visible windows are ok with being rotated.&lt;br /&gt;
&lt;br /&gt;
That means that to get a rotated desktop all visible windows must have the &amp;lt;tt&amp;gt;HILDON_PORTRAIT_MODE_SUPPORT&amp;lt;/tt&amp;gt; flag set to 1 and at least one of them must have the &amp;lt;tt&amp;gt;HILDON_PORTRAIT_MODE_REQUEST&amp;lt;/tt&amp;gt; flag set to true.  The flags are inherited through the transiency chain, so you needn&#039;t set the SUPPORT flag on your transient dialogs for example, nor on all stackable windows.&lt;br /&gt;
&lt;br /&gt;
It&#039;s important that you set the flags correctly on all windows that you open. If you or another application opens a window with the &amp;lt;tt&amp;gt;HILDON_PORTRAIT_MODE_SUPPORT&amp;lt;/tt&amp;gt; flag not set, the whole UI is rotated to landscape mode.&lt;br /&gt;
&lt;br /&gt;
So here are the steps you have to do to make correct use of the portrait mode:&lt;br /&gt;
* On all windows that support portrait mode, set the &amp;lt;tt&amp;gt;HILDON_PORTRAIT_MODE_SUPPORT&amp;lt;/tt&amp;gt; flag.&lt;br /&gt;
* During startup check the hardware orientation. If the hardware orientation is portrait mode, then set the &amp;lt;tt&amp;gt;HILDON_PORTRAIT_MODE_REQUEST&amp;lt;/tt&amp;gt; flag on at least one visible window.&lt;br /&gt;
* While running your application, listen to changes in the orientation of the device. If it is rotated to landscape mode set the &amp;lt;tt&amp;gt;HILDON_PORTRAIT_MODE_SUPPORT&amp;lt;/tt&amp;gt; flag. If it&#039;s rotated to portrait mode set the &amp;lt;tt&amp;gt;HILDON_PORTRAIT_MODE_REQUEST&amp;lt;/tt&amp;gt; flag. &lt;br /&gt;
It is not necessary to set &#039;request&#039; together with &#039;support&#039; as &#039;request&#039; implies &#039;support&#039;, provided that &#039;support&#039; is unset (as opposed to set to 0).&lt;br /&gt;
&lt;br /&gt;
=== Finding Out The Current Hardware Orientation ===&lt;br /&gt;
In order to find out whether or not the device currently is in portrait you need to ask the MCE (Mode Control Entity) via DBus. The parameters of the call are the following and can be found as constants in &#039;mce/dbus-names.h&#039;.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Service:   &amp;quot;com.nokia.mce&amp;quot;&lt;br /&gt;
Path:      &amp;quot;/com/nokia/mce/request&amp;quot;&lt;br /&gt;
Iterface:  &amp;quot;com.nokia.mce.request&amp;quot;&lt;br /&gt;
Member:    &amp;quot;get_device_orientation&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This method returns several values:&lt;br /&gt;
* gchar * portrait/landscape orientation (see mce/mode-names.h for valid portrait/landscape states)&lt;br /&gt;
* gchar * on/off stand (see mce/mode-names.h for valid stand states)&lt;br /&gt;
* gchar * face up/face down (see mce/mode-names.h for valid facing states)&lt;br /&gt;
* dbus_int32_t x axis (unit mG)&lt;br /&gt;
* dbus_int32_t y axis (unit mG)&lt;br /&gt;
* dbus_int32_t z axis (unit mG) &lt;br /&gt;
&lt;br /&gt;
In our case we are only interested in the first return value which will be &#039;portrait&#039; or &#039;landscape&#039;. Because we only need to know the first value here we can use the &amp;lt;tt&amp;gt;osso_rpc_run_system()&amp;lt;/tt&amp;gt; function for making this call to DBus. It&#039;s a convenience function provided by libosso for making DBus calls. The advantage is that our code gets shorter, the disadvantage is that it only return the first return value - which in our case is ok. So here is the code using libosso.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#include &amp;lt;mce/dbus-names.h&amp;gt;&lt;br /&gt;
#include &amp;lt;mce-dev/mode-names.h&lt;br /&gt;
&lt;br /&gt;
gboolean&lt;br /&gt;
device_is_portrait_mode(osso_context_t* ctx)&lt;br /&gt;
{&lt;br /&gt;
    osso_rpc_t ret;&lt;br /&gt;
    gboolean result = FALSE;&lt;br /&gt;
&lt;br /&gt;
    if (osso_rpc_run_system(ctx, MCE_SERVICE, MCE_REQUEST_PATH,&lt;br /&gt;
        MCE_REQUEST_IF, MCE_DEVICE_ORIENTATION_GET, &amp;amp;ret, DBUS_TYPE_INVALID) == OSSO_OK) {&lt;br /&gt;
        g_printerr(&amp;quot;INFO: DBus said orientation is: %s\n&amp;quot;, ret.value.s);&lt;br /&gt;
&lt;br /&gt;
        if (strcmp(ret.value.s, MCE_ORIENTATION_PORTRAIT) == 0) {&lt;br /&gt;
            result = TRUE;&lt;br /&gt;
        }&lt;br /&gt;
&lt;br /&gt;
        osso_rpc_free_val(&amp;amp;ret);&lt;br /&gt;
&lt;br /&gt;
    } else {&lt;br /&gt;
        g_printerr(&amp;quot;ERROR: Call do DBus failed\n&amp;quot;);&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    return result;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Listening To Hardware Orientation Changes ===&lt;br /&gt;
&lt;br /&gt;
So now you know how to ask the device for its orientation. Now let&#039;s see how to connect a signal handler to listen to changes in the orientation.&lt;br /&gt;
&lt;br /&gt;
First here is again the signature:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Service:   &amp;quot;com.nokia.mce&amp;quot;&lt;br /&gt;
Path:      &amp;quot;/com/nokia/mce/signal&amp;quot;&lt;br /&gt;
Iterface:  &amp;quot;com.nokia.mce.signal&amp;quot;&lt;br /&gt;
Member:    &amp;quot;sig_device_orientation_ind&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The signal transports three values:&lt;br /&gt;
* gchar * portrait/landscape orientation (see mce/mode-names.h for valid portrait/landscape states)&lt;br /&gt;
* gchar * on/off stand (see mce/mode-names.h for valid stand states)&lt;br /&gt;
* gchar * face up/face down (see mce/mode-names.h for valid facing states) &lt;br /&gt;
&lt;br /&gt;
Again we are only interested in the first value which is &#039;portrait&#039; or &#039;landscape&#039;. Unfortunately there is no libosso convenience function for listening to DBus signals, so we have to use the raw DBus API.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
static DBusHandlerResult&lt;br /&gt;
dbus_handle_mce_message(DBusConnection *con, DBusMessage *msg, gpointer data)&lt;br /&gt;
{&lt;br /&gt;
    DBusMessageIter iter;&lt;br /&gt;
    const gchar *mode = NULL;&lt;br /&gt;
&lt;br /&gt;
    if (dbus_message_is_signal(msg, MCE_SIGNAL_IF, MCE_DEVICE_ORIENTATION_SIG)) {&lt;br /&gt;
        if (dbus_message_iter_init(msg, &amp;amp;iter)) {&lt;br /&gt;
            dbus_message_iter_get_basic(&amp;amp;iter, &amp;amp;mode);&lt;br /&gt;
            g_printerr(&amp;quot;INFO: New orientation is now: %s\n&amp;quot;, mode);&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
    return DBUS_HANDLER_RESULT_NOT_YET_HANDLED;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Now we need to register this signal handler.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#define MCE_MATCH_RULE &amp;quot;type=&#039;signal&#039;,interface=&#039;&amp;quot; MCE_SIGNAL_IF &amp;quot;&#039;,member=&#039;&amp;quot; MCE_DEVICE_ORIENTATION_SIG &amp;quot;&#039;&amp;quot;&lt;br /&gt;
&lt;br /&gt;
/* Get the system DBus connection */&lt;br /&gt;
DBusConnection *con = osso_get_sys_dbus_connection(osso_context);&lt;br /&gt;
&lt;br /&gt;
/* Add the callback, which should be called, once the device is rotated */&lt;br /&gt;
dbus_bus_add_match(con, MCE_MATCH_RULE, NULL);&lt;br /&gt;
dbus_connection_add_filter(con, dbus_handle_mce_message, NULL, NULL);&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Listening To Hardware Orientation Changes (Python example) ===&lt;br /&gt;
&lt;br /&gt;
This short snippet should get you started (you only need the gobject.MainLoop if you are writing a console application). &amp;quot;handler&amp;quot; will be called every time the orientation changes, and the first parameter is the important one (compare it to &amp;quot;landscape&amp;quot; and &amp;quot;portrait&amp;quot;).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;import dbus&lt;br /&gt;
import dbus.glib&lt;br /&gt;
&lt;br /&gt;
# Again, this is only needed for console apps&lt;br /&gt;
import gobject&lt;br /&gt;
mainloop = gobject.MainLoop()&lt;br /&gt;
&lt;br /&gt;
# Define some constants&lt;br /&gt;
MCE_SIGNAL_NAME = &#039;sig_device_orientation_ind&#039;&lt;br /&gt;
MCE_SIGNAL_IFACE = &#039;com.nokia.mce.signal&#039;&lt;br /&gt;
MCE_SIGNAL_PATH = &#039;/com/nokia/mce/signal&#039;&lt;br /&gt;
&lt;br /&gt;
# Get the system bus&lt;br /&gt;
system_bus = dbus.Bus.get_system()&lt;br /&gt;
&lt;br /&gt;
# Define a callback that gets called for orientation changes&lt;br /&gt;
def handler(orientation, stand, face, x, y, z):&lt;br /&gt;
    print orientation&lt;br /&gt;
&lt;br /&gt;
# Connect the &amp;quot;handler&amp;quot; to the orientation changed signal of mce&lt;br /&gt;
system_bus.add_signal_receiver(handler, signal_name=MCE_SIGNAL_NAME, \&lt;br /&gt;
        dbus_interface=MCE_SIGNAL_IFACE, path=MCE_SIGNAL_PATH)&lt;br /&gt;
&lt;br /&gt;
# Start the main loop - only needed for console apps&lt;br /&gt;
mainloop.run()&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Do you want it even more comfortable? See [http://talk.maemo.org/showthread.php?p=330992 this forum post] for a link to an easy-to-use drop-in module that will take care of auto-rotation all your application windows.&lt;br /&gt;
&lt;br /&gt;
== Testing Hardware Orientation In Scratchbox ==&lt;br /&gt;
Testing whether or not your DBus signal handler for device orientation change works is easy. Just run the following commands inside scratchbox while your application is running.&lt;br /&gt;
&lt;br /&gt;
Device was rotated into portrait mode:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
run-standalone.sh dbus-send --system --type=signal /com/nokia/mce/signal com.nokia.mce.signal.sig_device_orientation_ind string:&#039;portrait&#039;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Device was rotated into landscape mode:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
run-standalone.sh dbus-send --system --type=signal /com/nokia/mce/signal com.nokia.mce.signal.sig_device_orientation_ind string:&#039;landscape&#039;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
For testing the call to the MCE you first have to install the MCE because it&#039;s not part of the default SDK installation. Simply do:&lt;br /&gt;
&amp;lt;pre&amp;gt;fakeroot apt-get install mce&amp;lt;/pre&amp;gt;&lt;br /&gt;
Now start it using the debug mode. It won&#039;t start without the &#039;--debug-mode&#039; flag. You&#039;ll get lots of debug output on the terminal, just ignore it:&lt;br /&gt;
&amp;lt;pre&amp;gt;mce --debug-mode&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Now the DBus call to the MCE should return &#039;landscape&#039;. It probably will always return &#039;landscape&#039; when run inside the SDK as it is not possible to really rotated the &amp;quot;device&amp;quot; there.&lt;br /&gt;
&lt;br /&gt;
= References =&lt;br /&gt;
In no particular order&lt;br /&gt;
&lt;br /&gt;
* http://maemo.org/api_refs/5.0/beta/tutorial/html&lt;br /&gt;
* http://maemo.org/api_refs/5.0/beta/hig/html&lt;br /&gt;
&lt;br /&gt;
* http://lists.maemo.org/pipermail//maemo-developers/2009-May/019368.html&lt;br /&gt;
* http://lists.maemo.org/pipermail//maemo-developers/2009-May/019144.html&lt;br /&gt;
* http://lists.maemo.org/pipermail//maemo-developers/2009-June/019426.html&lt;br /&gt;
* http://lists.maemo.org/pipermail//maemo-developers/2009-June/019579.html&lt;br /&gt;
* http://lists.maemo.org/pipermail//maemo-developers/2009-August/020202.html&lt;br /&gt;
&lt;br /&gt;
* https://bugs.maemo.org/show_bug.cgi?id=4617&lt;br /&gt;
* https://bugs.maemo.org/show_bug.cgi?id=4618&lt;br /&gt;
* https://bugs.maemo.org/show_bug.cgi?id=4619&lt;br /&gt;
* https://bugs.maemo.org/show_bug.cgi?id=4654&lt;br /&gt;
* https://bugs.maemo.org/show_bug.cgi?id=4637&lt;br /&gt;
* https://bugs.maemo.org/show_bug.cgi?id=4648&lt;br /&gt;
&lt;br /&gt;
[[Category:Development]]&lt;br /&gt;
[[Category:Fremantle]]&lt;/div&gt;</summary>
		<author><name>192.100.124.219</name></author>
	</entry>
	<entry>
		<id>https://maemo.octonezd.me/index.php?title=Legacy_Maemo_5_Documentation/Graphical_UI_Tutorial/Data_selection&amp;diff=14229</id>
		<title>Legacy Maemo 5 Documentation/Graphical UI Tutorial/Data selection</title>
		<link rel="alternate" type="text/html" href="https://maemo.octonezd.me/index.php?title=Legacy_Maemo_5_Documentation/Graphical_UI_Tutorial/Data_selection&amp;diff=14229"/>
		<updated>2009-11-11T12:47:00Z</updated>

		<summary type="html">&lt;p&gt;192.100.124.219: /* Text Columns Example */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Data selection =&lt;br /&gt;
Hildon provides a set of widgets for data selection specially designed for touchscreens that allows to build simple and easy-to-use interfaces.&lt;br /&gt;
&lt;br /&gt;
The key widget is a selector widget that allows users to select items from one to many predefined lists. It is similar to a combo box but allows several individual pannable columns.&lt;br /&gt;
&lt;br /&gt;
In addition, Hildon also provides a specialized dialog and a specialized button to be used in combination with a selector.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Touch selector ==&lt;br /&gt;
HildonTouchSelector is the mentioned selector widget. This widget can display several pannable columns. Each column is represented by a GtkTreeModel and single or multiple selection is allowed.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Text Columns Example===&lt;br /&gt;
Let us see the simplest possible example. A selector that shows a single text column.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Example 6.1. Example of a single-column selector&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
[[Image:example-single-text-column-selector.png|400px]]&lt;br /&gt;
&lt;br /&gt;
  #include                                        &amp;lt;hildon/hildon.h&amp;gt;&lt;br /&gt;
  &lt;br /&gt;
  void selection_changed                   (HildonTouchSelector * selector, gpointer user_data);&lt;br /&gt;
  static GtkWidget *create_simple_selector ();&lt;br /&gt;
  &lt;br /&gt;
  void&lt;br /&gt;
  selection_changed (HildonTouchSelector * selector,&lt;br /&gt;
                     gpointer user_data)&lt;br /&gt;
  {&lt;br /&gt;
    gchar *current_selection = NULL;&lt;br /&gt;
  &lt;br /&gt;
    current_selection = hildon_touch_selector_get_current_text (selector);&lt;br /&gt;
    g_debug (&amp;quot;Current selection : %s&amp;quot;, current_selection);&lt;br /&gt;
  }&lt;br /&gt;
  &lt;br /&gt;
  static GtkWidget *&lt;br /&gt;
  create_simple_selector ()&lt;br /&gt;
  {&lt;br /&gt;
    GtkWidget *selector = NULL;&lt;br /&gt;
    gint i;&lt;br /&gt;
  &lt;br /&gt;
    /* Create a HildonTouchSelector with a single text column */&lt;br /&gt;
    selector = hildon_touch_selector_new_text();&lt;br /&gt;
  &lt;br /&gt;
    g_signal_connect (G_OBJECT (selector), &amp;quot;changed&amp;quot;,&lt;br /&gt;
                      G_CALLBACK (selection_changed), NULL);&lt;br /&gt;
  &lt;br /&gt;
    /* Populate selector */&lt;br /&gt;
    for (i = 1; i &amp;lt;= 10 ; i++) {&lt;br /&gt;
      gchar *label = g_strdup_printf (&amp;quot;Item %d&amp;quot;, i);&lt;br /&gt;
  &lt;br /&gt;
      /* Add item to the column */&lt;br /&gt;
      hildon_touch_selector_append_text (HILDON_TOUCH_SELECTOR (selector),&lt;br /&gt;
                                         label);&lt;br /&gt;
  &lt;br /&gt;
      g_free (label);&lt;br /&gt;
    }&lt;br /&gt;
  &lt;br /&gt;
    /* Set selection mode */&lt;br /&gt;
    hildon_touch_selector_set_column_selection_mode (HILDON_TOUCH_SELECTOR (selector),&lt;br /&gt;
                                                     HILDON_TOUCH_SELECTOR_SELECTION_MODE_MULTIPLE);&lt;br /&gt;
  &lt;br /&gt;
    return selector;&lt;br /&gt;
  }&lt;br /&gt;
  &lt;br /&gt;
  int&lt;br /&gt;
  main (int argc, char **argv)&lt;br /&gt;
  {&lt;br /&gt;
    HildonProgram *program = NULL;&lt;br /&gt;
    GtkWidget *window = NULL;&lt;br /&gt;
    GtkWidget *selector = NULL;&lt;br /&gt;
    GtkWidget *picker_button = NULL;&lt;br /&gt;
  &lt;br /&gt;
    hildon_gtk_init (&amp;amp;argc, &amp;amp;argv);&lt;br /&gt;
  &lt;br /&gt;
    program = hildon_program_get_instance ();&lt;br /&gt;
    g_set_application_name&lt;br /&gt;
      (&amp;quot;hildon-touch-selector example program&amp;quot;);&lt;br /&gt;
  &lt;br /&gt;
    window = hildon_stackable_window_new ();&lt;br /&gt;
    hildon_program_add_window (program, HILDON_WINDOW (window));&lt;br /&gt;
  &lt;br /&gt;
    /* Create touch selector */&lt;br /&gt;
    selector = create_simple_selector ();&lt;br /&gt;
  &lt;br /&gt;
    /* Create a picker button */&lt;br /&gt;
    picker_button = hildon_picker_button_new (HILDON_SIZE_AUTO,&lt;br /&gt;
                                              HILDON_BUTTON_ARRANGEMENT_VERTICAL);&lt;br /&gt;
  &lt;br /&gt;
    /* Set a title to the button*/&lt;br /&gt;
    hildon_button_set_title (HILDON_BUTTON (picker_button), &amp;quot;Select an item&amp;quot;);&lt;br /&gt;
  &lt;br /&gt;
    /* Attach touch selector to the picker button*/&lt;br /&gt;
    hildon_picker_button_set_selector (HILDON_PICKER_BUTTON (picker_button),&lt;br /&gt;
                                       HILDON_TOUCH_SELECTOR (selector));&lt;br /&gt;
  &lt;br /&gt;
    /* Add button to main window */&lt;br /&gt;
    gtk_container_add (GTK_CONTAINER (window), picker_button);&lt;br /&gt;
  &lt;br /&gt;
    g_signal_connect (G_OBJECT (window), &amp;quot;destroy&amp;quot;,&lt;br /&gt;
                      G_CALLBACK (gtk_main_quit), NULL);&lt;br /&gt;
  &lt;br /&gt;
    gtk_widget_show_all (GTK_WIDGET (window));&lt;br /&gt;
  &lt;br /&gt;
    gtk_main ();&lt;br /&gt;
  &lt;br /&gt;
    return 0;&lt;br /&gt;
  }&lt;br /&gt;
&lt;br /&gt;
A HildonTouchSelector with a single text column is created in this program using the following convenience constructor.&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;tt&amp;gt;GtkWidget&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;*&amp;lt;/nowiki&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;  &amp;lt;span&amp;gt;&#039;&#039;&#039;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#000000&amp;quot;&amp;gt;hildon_touch_selector_new_text&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&#039;&#039;&#039;&amp;lt;/span&amp;gt;  &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;(&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#009900&amp;quot;&amp;gt;void&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;);&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
 &amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
To add text to a selector created by calling the constructor above, use the function.&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;tt&amp;gt;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#009900&amp;quot;&amp;gt;void&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;        &amp;lt;span&amp;gt;&#039;&#039;&#039;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#000000&amp;quot;&amp;gt;hildon_touch_selector_append_text&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&#039;&#039;&#039;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;(&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;HildonTouchSelector &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;*&amp;lt;/nowiki&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;selector&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;,&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
                                                &amp;lt;span&amp;gt;&#039;&#039;&#039;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#0000FF&amp;quot;&amp;gt;const&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&#039;&#039;&#039;&amp;lt;/span&amp;gt; gchar &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;*&amp;lt;/nowiki&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;text&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;);&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
 &amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Alternatively, you can use &amp;lt;code&amp;gt;hildon_touch_selector_prepend_text()&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;hildon_touch_selector_insert_text()&amp;lt;/code&amp;gt; to add text to the selector in different positions.&lt;br /&gt;
&lt;br /&gt;
You can set the desired selection with the function. In the example, the mode was set to allow multiple selection.&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;tt&amp;gt;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#009900&amp;quot;&amp;gt;void&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;        hildon_touch_selector_set_column_selection_mode&lt;br /&gt;
                                             &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;(&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;HildonTouchSelector &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;*&amp;lt;/nowiki&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;selector&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;,&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
                                              HildonTouchSelectorSelectionMode mode&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;);&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
 &amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This example shows a very common use case of this widget. Next section shows how to build a more complex selector with several columns of different types.&lt;br /&gt;
&lt;br /&gt;
Also a simple function was set as a handler for the &amp;quot;changed&amp;quot; signal which is emitted each time the selected items change.&lt;br /&gt;
&lt;br /&gt;
The callback retrieves a text representation of the currently selected items in the selector by calling &amp;lt;code&amp;gt;hildon_touch_selector_get_current_text()&amp;lt;/code&amp;gt;. By default this function returns a concatenation of the items selected, separated by a comma.&lt;br /&gt;
&lt;br /&gt;
To change how the text representation is generated, set your own function by  calling &amp;lt;code&amp;gt;hildon_touch_selector_set_print_func()&amp;lt;/code&amp;gt; and using the following signature for the function:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;tt&amp;gt;gchar&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;*&amp;lt;/nowiki&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;      &amp;lt;span&amp;gt;&#039;&#039;&#039;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#000000&amp;quot;&amp;gt;user_function&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&#039;&#039;&#039;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;(&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;HildonTouchSelector &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;*&amp;lt;/nowiki&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;selector&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;);&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
 &amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Custom columns===&lt;br /&gt;
&lt;br /&gt;
In the previous section, a selector with a text column was created. That is probably the most common use case of touch selectors. Convenience functions to deal with text columns was used. However, you can also set other type of columns.&lt;br /&gt;
&lt;br /&gt;
Because each column is basically a treeview, you can use the same display to different data and in different ways as you would do with a GtkTreeview. Thus, you can use the GtkCellRenderers available in GTK+ to display the data on each cell.&lt;br /&gt;
&lt;br /&gt;
This section explains how to build a selector within a column displaying stock icons. Firstly, let us take a look on the function which used for appending new columns to a touchable selector.&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;tt&amp;gt;HildonTouchSelectorColumn&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;*&amp;lt;/nowiki&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt; hildon_touch_selector_append_column&lt;br /&gt;
                                             &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;(&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;HildonTouchSelector &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;*&amp;lt;/nowiki&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;selector&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;,&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
                                              GtkTreeModel &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;*&amp;lt;/nowiki&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;model&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;,&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
                                              GtkCellRenderer &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;*&amp;lt;/nowiki&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;cell_renderer&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;,&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
                                              &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;...);&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
 &amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This functions adds a new column to the widget whose data is obtained from the passed model. Pass also a GtkCellRenderer and a list of pairs property/value which is set as attributes of the renderer.&lt;br /&gt;
&lt;br /&gt;
This function basically adds a GtkTreeView to the widget. For more information on how GtkTreeviews work, see [http://maemo.org/api_refs/5.0/beta/gtk/ GTK+ widgets] before.&lt;br /&gt;
The following example shows how to set a column to display images in a selector. For clarity, only the function which creates the selector is shown.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Example 6.2. Example of a selector with a custom column&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
[[Image:example-single-column-selector.png|400px]]&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;tt&amp;gt; &amp;lt;span&amp;gt;&#039;&#039;&#039;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#0000FF&amp;quot;&amp;gt;static&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&#039;&#039;&#039;&amp;lt;/span&amp;gt; GtkWidget &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;*&amp;lt;/nowiki&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
 &amp;lt;span&amp;gt;&#039;&#039;&#039;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#000000&amp;quot;&amp;gt;create_customized_selector&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&#039;&#039;&#039;&amp;lt;/span&amp;gt;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;()&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
 &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#FF0000&amp;quot;&amp;gt;{&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
   GtkWidget &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;*&amp;lt;/nowiki&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;selector&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;;&amp;lt;/nowiki&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
   GSList &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;*&amp;lt;/nowiki&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;icon_list &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;=&amp;lt;/nowiki&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt; NULL&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;;&amp;lt;/nowiki&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
   GtkListStore &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;*&amp;lt;/nowiki&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;store_icons &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;=&amp;lt;/nowiki&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt; NULL&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;;&amp;lt;/nowiki&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
   GSList &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;*&amp;lt;/nowiki&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;item &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;=&amp;lt;/nowiki&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt; NULL&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;;&amp;lt;/nowiki&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
   GtkCellRenderer &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;*&amp;lt;/nowiki&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;renderer &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;=&amp;lt;/nowiki&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt; NULL&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;;&amp;lt;/nowiki&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
   HildonTouchSelectorColumn &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;*&amp;lt;/nowiki&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;column &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;=&amp;lt;/nowiki&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt; NULL&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;;&amp;lt;/nowiki&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
   &amp;lt;span&amp;gt;&#039;&#039;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#9A1900&amp;quot;&amp;gt;/* Create a touch selector */&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&#039;&#039;&amp;lt;/span&amp;gt;&lt;br /&gt;
   selector &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;=&amp;lt;/nowiki&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&#039;&#039;&#039;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#000000&amp;quot;&amp;gt;hildon_touch_selector_new&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&#039;&#039;&#039;&amp;lt;/span&amp;gt;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;();&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
   &amp;lt;span&amp;gt;&#039;&#039;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#9A1900&amp;quot;&amp;gt;/* Stock icons will be used for the example */&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&#039;&#039;&amp;lt;/span&amp;gt;&lt;br /&gt;
   icon_list &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;=&amp;lt;/nowiki&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&#039;&#039;&#039;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#000000&amp;quot;&amp;gt;gtk_stock_list_ids&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&#039;&#039;&#039;&amp;lt;/span&amp;gt;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;();&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
   &amp;lt;span&amp;gt;&#039;&#039;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#9A1900&amp;quot;&amp;gt;/* Create model to store selector&#039;s items */&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&#039;&#039;&amp;lt;/span&amp;gt;&lt;br /&gt;
   store_icons &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;=&amp;lt;/nowiki&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&#039;&#039;&#039;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#000000&amp;quot;&amp;gt;gtk_list_store_new&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&#039;&#039;&#039;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;(&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#993399&amp;quot;&amp;gt;1&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;,&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt; G_TYPE_STRING&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;);&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
   &amp;lt;span&amp;gt;&#039;&#039;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#9A1900&amp;quot;&amp;gt;/* Populate model */&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&#039;&#039;&amp;lt;/span&amp;gt;&lt;br /&gt;
   &amp;lt;span&amp;gt;&#039;&#039;&#039;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#0000FF&amp;quot;&amp;gt;for&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&#039;&#039;&#039;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;(&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;item &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;=&amp;lt;/nowiki&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt; icon_list&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;;&amp;lt;/nowiki&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt; item&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;;&amp;lt;/nowiki&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt; item &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;=&amp;lt;/nowiki&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&#039;&#039;&#039;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#000000&amp;quot;&amp;gt;g_slist_next&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&#039;&#039;&#039;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;(&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;item&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;))&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#FF0000&amp;quot;&amp;gt;{&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
     GtkTreeIter iter&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;;&amp;lt;/nowiki&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
     gchar &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;*&amp;lt;/nowiki&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;label &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;=&amp;lt;/nowiki&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt; item&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;-&amp;amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;data&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;;&amp;lt;/nowiki&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
     &amp;lt;span&amp;gt;&#039;&#039;&#039;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#000000&amp;quot;&amp;gt;gtk_list_store_append&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&#039;&#039;&#039;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;(&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;store_icons&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;,&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;&amp;amp;amp;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;iter&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;);&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
     &amp;lt;span&amp;gt;&#039;&#039;&#039;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#000000&amp;quot;&amp;gt;gtk_list_store_set&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&#039;&#039;&#039;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;(&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;store_icons&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;,&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;&amp;amp;amp;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;iter&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;,&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#993399&amp;quot;&amp;gt;0&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;,&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt; label&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;,&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;-&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#993399&amp;quot;&amp;gt;1&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;);&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
     &amp;lt;span&amp;gt;&#039;&#039;&#039;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#000000&amp;quot;&amp;gt;g_free&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&#039;&#039;&#039;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;(&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;label&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;);&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
   &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#FF0000&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
   &amp;lt;span&amp;gt;&#039;&#039;&#039;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#000000&amp;quot;&amp;gt;g_slist_free&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&#039;&#039;&#039;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;(&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;icon_list&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;);&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
   &amp;lt;span&amp;gt;&#039;&#039;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#9A1900&amp;quot;&amp;gt;/* Create and set up a pixbuf renderer to use in the selector */&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&#039;&#039;&amp;lt;/span&amp;gt;&lt;br /&gt;
   renderer &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;=&amp;lt;/nowiki&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&#039;&#039;&#039;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#000000&amp;quot;&amp;gt;gtk_cell_renderer_pixbuf_new&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&#039;&#039;&#039;&amp;lt;/span&amp;gt;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;();&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
   &amp;lt;span&amp;gt;&#039;&#039;&#039;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#000000&amp;quot;&amp;gt;gtk_cell_renderer_set_fixed_size&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&#039;&#039;&#039;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;(&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;renderer&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;,&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;-&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#993399&amp;quot;&amp;gt;1&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;,&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#993399&amp;quot;&amp;gt;100&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;);&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
   &amp;lt;span&amp;gt;&#039;&#039;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#9A1900&amp;quot;&amp;gt;/* Add the column to the selector */&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&#039;&#039;&amp;lt;/span&amp;gt;&lt;br /&gt;
   column &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;=&amp;lt;/nowiki&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&#039;&#039;&#039;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#000000&amp;quot;&amp;gt;hildon_touch_selector_append_column&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&#039;&#039;&#039;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;(&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;span&amp;gt;&#039;&#039;&#039;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#000000&amp;quot;&amp;gt;HILDON_TOUCH_SELECTOR&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&#039;&#039;&#039;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;(&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;selector&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;),&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
                                                 &amp;lt;span&amp;gt;&#039;&#039;&#039;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#000000&amp;quot;&amp;gt;GTK_TREE_MODEL&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&#039;&#039;&#039;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;(&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;store_icons&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;),&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
                                                 renderer&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;,&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
                                                 &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#FF0000&amp;quot;&amp;gt;&amp;quot;stock-id&amp;quot;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;,&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#993399&amp;quot;&amp;gt;0&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;,&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
                                                 NULL&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;);&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
   &amp;lt;span&amp;gt;&#039;&#039;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#9A1900&amp;quot;&amp;gt;/* Set the selection mode */&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&#039;&#039;&amp;lt;/span&amp;gt;&lt;br /&gt;
   &amp;lt;span&amp;gt;&#039;&#039;&#039;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#000000&amp;quot;&amp;gt;hildon_touch_selector_set_column_selection_mode&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&#039;&#039;&#039;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;(&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;span&amp;gt;&#039;&#039;&#039;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#000000&amp;quot;&amp;gt;HILDON_TOUCH_SELECTOR&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&#039;&#039;&#039;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;(&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;selector&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;),&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
                                     HILDON_TOUCH_SELECTOR_SELECTION_MODE_MULTIPLE&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;);&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
   &amp;lt;span&amp;gt;&#039;&#039;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#9A1900&amp;quot;&amp;gt;/* Set the property &amp;quot;text-column&amp;quot; that indicates the column&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&#039;&#039;&amp;lt;/span&amp;gt;&lt;br /&gt;
 &amp;lt;span&amp;gt;&#039;&#039;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#9A1900&amp;quot;&amp;gt;   * of the model to get the string from */&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&#039;&#039;&amp;lt;/span&amp;gt;&lt;br /&gt;
   &amp;lt;span&amp;gt;&#039;&#039;&#039;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#000000&amp;quot;&amp;gt;g_object_set&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&#039;&#039;&#039;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;(&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;span&amp;gt;&#039;&#039;&#039;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#000000&amp;quot;&amp;gt;G_OBJECT&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&#039;&#039;&#039;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;(&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;column&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;),&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#FF0000&amp;quot;&amp;gt;&amp;quot;text-column&amp;quot;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;,&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#993399&amp;quot;&amp;gt;0&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;,&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt; NULL&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;);&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
   &amp;lt;span&amp;gt;&#039;&#039;&#039;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#0000FF&amp;quot;&amp;gt;return&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&#039;&#039;&#039;&amp;lt;/span&amp;gt; selector&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;;&amp;lt;/nowiki&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
 &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#FF0000&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
 &amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The first step in the example is to create and populate a GtkTreeModel. A GtkListStore is used in the example. In most use cases of the touchable selectors a GtkListStore fits well as selectors were designed to allow users to select from a list of items.&lt;br /&gt;
&lt;br /&gt;
In this case, the model stores a list of GTK+ stock icons identifiers. The following call creates a list store with one column to store strings.&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;tt&amp;gt;store_icons &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;=&amp;lt;/nowiki&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&#039;&#039;&#039;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#000000&amp;quot;&amp;gt;gtk_list_store_new&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&#039;&#039;&#039;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;(&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#993399&amp;quot;&amp;gt;1&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;,&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt; G_TYPE_STRING&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;);&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
 &amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The following loop appends all stock identifiers in the newly created model. The identifiers were previously retrieved using&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;tt&amp;gt;&amp;lt;span&amp;gt;&#039;&#039;&#039;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#000000&amp;quot;&amp;gt;gtk_stock_list_ids&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&#039;&#039;&#039;&amp;lt;/span&amp;gt;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;().&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
   &amp;lt;span&amp;gt;&#039;&#039;&#039;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#0000FF&amp;quot;&amp;gt;for&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&#039;&#039;&#039;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;(&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;item &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;=&amp;lt;/nowiki&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt; icon_list&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;;&amp;lt;/nowiki&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt; item&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;;&amp;lt;/nowiki&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt; item &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;=&amp;lt;/nowiki&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&#039;&#039;&#039;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#000000&amp;quot;&amp;gt;g_slist_next&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&#039;&#039;&#039;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;(&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;item&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;))&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#FF0000&amp;quot;&amp;gt;{&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
     GtkTreeIter iter&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;;&amp;lt;/nowiki&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
     gchar &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;*&amp;lt;/nowiki&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;label &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;=&amp;lt;/nowiki&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt; item&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;-&amp;amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;data&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;;&amp;lt;/nowiki&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
     &amp;lt;span&amp;gt;&#039;&#039;&#039;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#000000&amp;quot;&amp;gt;gtk_list_store_append&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&#039;&#039;&#039;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;(&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;store_icons&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;,&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;&amp;amp;amp;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;iter&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;);&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
     &amp;lt;span&amp;gt;&#039;&#039;&#039;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#000000&amp;quot;&amp;gt;gtk_list_store_set&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&#039;&#039;&#039;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;(&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;store_icons&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;,&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;&amp;amp;amp;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;iter&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;,&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#993399&amp;quot;&amp;gt;0&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;,&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt; label&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;,&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;-&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#993399&amp;quot;&amp;gt;1&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;);&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
     &amp;lt;span&amp;gt;&#039;&#039;&#039;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#000000&amp;quot;&amp;gt;g_free&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&#039;&#039;&#039;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;(&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;label&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;);&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
   &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#FF0000&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
   &amp;lt;span&amp;gt;&#039;&#039;&#039;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#000000&amp;quot;&amp;gt;g_slist_free&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&#039;&#039;&#039;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;(&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;icon_list&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;);&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
 &amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The next step is to set up the renderer which renders each row of the new column. We need a GtkCellRendererPixbuf to display the stock icons.&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;tt&amp;gt;renderer &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;=&amp;lt;/nowiki&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&#039;&#039;&#039;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#000000&amp;quot;&amp;gt;gtk_cell_renderer_pixbuf_new&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&#039;&#039;&#039;&amp;lt;/span&amp;gt;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;();&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
 &amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Finally, we create and append the new column, using the model and renderer previously created.&lt;br /&gt;
&lt;br /&gt;
This call also sets the property &amp;quot;stock-id&amp;quot; of the GtkCellrendererPixbuf. The value is set to 0 which is the number of the column in the GtkTreeModel that stores the stock-id.&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;tt&amp;gt;  column &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;=&amp;lt;/nowiki&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&#039;&#039;&#039;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#000000&amp;quot;&amp;gt;hildon_touch_selector_append_column&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&#039;&#039;&#039;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;(&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;span&amp;gt;&#039;&#039;&#039;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#000000&amp;quot;&amp;gt;HILDON_TOUCH_SELECTOR&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&#039;&#039;&#039;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;(&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;selector&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;),&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
 	                                        &amp;lt;span&amp;gt;&#039;&#039;&#039;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#000000&amp;quot;&amp;gt;GTK_TREE_MODEL&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&#039;&#039;&#039;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;(&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;store_icons&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;),&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
                                                 renderer&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;,&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
                                                 &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#FF0000&amp;quot;&amp;gt;&amp;quot;stock-id&amp;quot;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;,&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#993399&amp;quot;&amp;gt;0&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;,&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
                                                 NULL&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;);&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
 &amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
To summarize, setting a new custom column in a touchable selector is quite similar to setting a new column in a normal GtkTreeview. Create a model to store the data and a cell renderer to properly show this data in each row, and finally add the new column.&lt;br /&gt;
&lt;br /&gt;
==Picker dialog and picker buttons ==&lt;br /&gt;
Normally, you use HildonTouchSelector together with a HildonPickerDialog activated from a button. For most common cases you use HildonPickerButton.&lt;br /&gt;
&lt;br /&gt;
This is the usual way to present a selector to the user. The picker button opens a dialog which presents the selector and properly manages user interaction.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Example&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Previous sections showed you how to create a touchable selector. In most cases the next step is to attach the selector to a HildonPickerButton.&lt;br /&gt;
&lt;br /&gt;
A HildonPickerButton is a special GtkButton which displays two labels, title and value, and brings up a HildonPickerDialog. The user chooses one or several items. A string representation of the chosen items is displayed in the value label of the picker button.&lt;br /&gt;
&lt;br /&gt;
Below, a modified version of the previous main function is shown, in which you can check how a HildonPickerButton is created and attached to a selector. Also a callback to catch the signal &amp;quot;value-changed&amp;quot; emitted is added.&lt;br /&gt;
&lt;br /&gt;
[[Image:example-picker-button.png|400px]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Example 6.3. Example of a Hildon picker button&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;tt&amp;gt;&amp;lt;span&amp;gt;&#039;&#039;&#039;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#0000FF&amp;quot;&amp;gt;static&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&#039;&#039;&#039;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#009900&amp;quot;&amp;gt;void&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
 &amp;lt;span&amp;gt;&#039;&#039;&#039;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#000000&amp;quot;&amp;gt;on_picker_value_changed&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&#039;&#039;&#039;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;(&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;HildonPickerButton &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;*&amp;lt;/nowiki&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt; button&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;,&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt; gpointer data&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;)&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
 &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#FF0000&amp;quot;&amp;gt;{&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
   &amp;lt;span&amp;gt;&#039;&#039;&#039;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#000000&amp;quot;&amp;gt;g_print&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&#039;&#039;&#039;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;(&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#FF0000&amp;quot;&amp;gt;&amp;quot;Newly selected value: %s&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#CC33CC&amp;quot;&amp;gt;\n&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#FF0000&amp;quot;&amp;gt;&amp;quot;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;,&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
            &amp;lt;span&amp;gt;&#039;&#039;&#039;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#000000&amp;quot;&amp;gt;hildon_button_get_value&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&#039;&#039;&#039;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;(&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;span&amp;gt;&#039;&#039;&#039;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#000000&amp;quot;&amp;gt;HILDON_BUTTON&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&#039;&#039;&#039;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;(&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;button&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;)));&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
 &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#FF0000&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
 &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#009900&amp;quot;&amp;gt;int&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
 &amp;lt;span&amp;gt;&#039;&#039;&#039;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#000000&amp;quot;&amp;gt;main&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&#039;&#039;&#039;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;(&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#009900&amp;quot;&amp;gt;int&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt; argc&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;,&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#009900&amp;quot;&amp;gt;char&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;**&amp;lt;/nowiki&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;argv&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;)&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
 &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#FF0000&amp;quot;&amp;gt;{&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
   HildonProgram &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;*&amp;lt;/nowiki&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;program&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;;&amp;lt;/nowiki&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
   GtkWidget &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;*&amp;lt;/nowiki&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;window&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;;&amp;lt;/nowiki&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
   GtkWidget &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;*&amp;lt;/nowiki&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;picker_button&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;;&amp;lt;/nowiki&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
   &amp;lt;span&amp;gt;&#039;&#039;&#039;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#000000&amp;quot;&amp;gt;hildon_gtk_init&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&#039;&#039;&#039;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;(&amp;amp;amp;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;argc&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;,&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;&amp;amp;amp;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;argv&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;);&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
   program &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;=&amp;lt;/nowiki&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&#039;&#039;&#039;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#000000&amp;quot;&amp;gt;hildon_program_get_instance&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&#039;&#039;&#039;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;();&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
   &amp;lt;span&amp;gt;&#039;&#039;&#039;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#000000&amp;quot;&amp;gt;g_set_application_name&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&#039;&#039;&#039;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;(&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#FF0000&amp;quot;&amp;gt;&amp;quot;hildon-touch-selector example program&amp;quot;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;);&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
   window &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;=&amp;lt;/nowiki&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&#039;&#039;&#039;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#000000&amp;quot;&amp;gt;hildon_stackable_window_new&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&#039;&#039;&#039;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;();&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
   &amp;lt;span&amp;gt;&#039;&#039;&#039;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#000000&amp;quot;&amp;gt;hildon_program_add_window&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&#039;&#039;&#039;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;(&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;program&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;,&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&#039;&#039;&#039;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#000000&amp;quot;&amp;gt;HILDON_WINDOW&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&#039;&#039;&#039;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;(&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;window&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;));&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
   &amp;lt;span&amp;gt;&#039;&#039;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#9A1900&amp;quot;&amp;gt;/* Create touch selector */&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&#039;&#039;&amp;lt;/span&amp;gt;&lt;br /&gt;
   selector &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;=&amp;lt;/nowiki&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&#039;&#039;&#039;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#000000&amp;quot;&amp;gt;create_customized_selector&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&#039;&#039;&#039;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;();&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
   &amp;lt;span&amp;gt;&#039;&#039;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#9A1900&amp;quot;&amp;gt;/* Create a picker button */&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&#039;&#039;&amp;lt;/span&amp;gt;&lt;br /&gt;
   picker_button &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;=&amp;lt;/nowiki&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&#039;&#039;&#039;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#000000&amp;quot;&amp;gt;hildon_picker_button_new&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&#039;&#039;&#039;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;(&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;HILDON_SIZE_AUTO&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;,&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
                                             HILDON_BUTTON_ARRANGEMENT_VERTICAL&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;);&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
   &amp;lt;span&amp;gt;&#039;&#039;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#9A1900&amp;quot;&amp;gt;/* Set a title to the button */&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&#039;&#039;&amp;lt;/span&amp;gt;&lt;br /&gt;
   &amp;lt;span&amp;gt;&#039;&#039;&#039;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#000000&amp;quot;&amp;gt;hildon_button_set_title&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&#039;&#039;&#039;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;(&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;span&amp;gt;&#039;&#039;&#039;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#000000&amp;quot;&amp;gt;HILDON_BUTTON&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&#039;&#039;&#039;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;(&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;picker_button&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;),&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#FF0000&amp;quot;&amp;gt;&amp;quot;Select an item&amp;quot;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;);&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
   &amp;lt;span&amp;gt;&#039;&#039;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#9A1900&amp;quot;&amp;gt;/* Attach the touch selector to the picker button*/&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&#039;&#039;&amp;lt;/span&amp;gt;&lt;br /&gt;
   &amp;lt;span&amp;gt;&#039;&#039;&#039;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#000000&amp;quot;&amp;gt;hildon_picker_button_set_selector&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&#039;&#039;&#039;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;(&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;span&amp;gt;&#039;&#039;&#039;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#000000&amp;quot;&amp;gt;HILDON_PICKER_BUTTON&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&#039;&#039;&#039;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;(&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;picker_button&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;),&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
                                      &amp;lt;span&amp;gt;&#039;&#039;&#039;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#000000&amp;quot;&amp;gt;HILDON_TOUCH_SELECTOR&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&#039;&#039;&#039;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;(&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;selector&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;));&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
   &amp;lt;span&amp;gt;&#039;&#039;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#9A1900&amp;quot;&amp;gt;/* Attach callback to the &amp;quot;value-changed&amp;quot; signal*/&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&#039;&#039;&amp;lt;/span&amp;gt;&lt;br /&gt;
   &amp;lt;span&amp;gt;&#039;&#039;&#039;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#000000&amp;quot;&amp;gt;g_signal_connect&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&#039;&#039;&#039;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;(&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;span&amp;gt;&#039;&#039;&#039;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#000000&amp;quot;&amp;gt;G_OBJECT&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&#039;&#039;&#039;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;(&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;picker_button&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;),&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#FF0000&amp;quot;&amp;gt;&amp;quot;value-changed&amp;quot;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;,&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
                     &amp;lt;span&amp;gt;&#039;&#039;&#039;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#000000&amp;quot;&amp;gt;G_CALLBACK&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&#039;&#039;&#039;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;(&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;on_picker_value_changed&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;),&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt; NULL&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;);&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
   &amp;lt;span&amp;gt;&#039;&#039;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#9A1900&amp;quot;&amp;gt;/* Add button to main window */&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&#039;&#039;&amp;lt;/span&amp;gt;&lt;br /&gt;
   &amp;lt;span&amp;gt;&#039;&#039;&#039;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#000000&amp;quot;&amp;gt;gtk_container_add&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&#039;&#039;&#039;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;(&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;span&amp;gt;&#039;&#039;&#039;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#000000&amp;quot;&amp;gt;GTK_CONTAINER&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&#039;&#039;&#039;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;(&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;window&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;),&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt; picker_button&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;);&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
   &amp;lt;span&amp;gt;&#039;&#039;&#039;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#000000&amp;quot;&amp;gt;g_signal_connect&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&#039;&#039;&#039;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;(&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;span&amp;gt;&#039;&#039;&#039;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#000000&amp;quot;&amp;gt;G_OBJECT&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&#039;&#039;&#039;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;(&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;window&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;),&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#FF0000&amp;quot;&amp;gt;&amp;quot;destroy&amp;quot;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;,&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
                     &amp;lt;span&amp;gt;&#039;&#039;&#039;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#000000&amp;quot;&amp;gt;G_CALLBACK&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&#039;&#039;&#039;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;(&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;gtk_main_quit&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;),&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt; NULL&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;);&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
   &amp;lt;span&amp;gt;&#039;&#039;&#039;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#000000&amp;quot;&amp;gt;gtk_widget_show_all&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&#039;&#039;&#039;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;(&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;span&amp;gt;&#039;&#039;&#039;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#000000&amp;quot;&amp;gt;GTK_WIDGET&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&#039;&#039;&#039;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;(&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;window&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;));&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
   &amp;lt;span&amp;gt;&#039;&#039;&#039;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#000000&amp;quot;&amp;gt;gtk_main&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&#039;&#039;&#039;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;();&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
   &amp;lt;span&amp;gt;&#039;&#039;&#039;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#0000FF&amp;quot;&amp;gt;return&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&#039;&#039;&#039;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#993399&amp;quot;&amp;gt;0&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;;&amp;lt;/nowiki&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
 &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#FF0000&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
 &amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In the above example a picker button is created. The reference to the attached selector is stored in the property &amp;quot;touch-selector&amp;quot; of the picker button. To retrieve the attached selector , use function &amp;lt;code&amp;gt;hildon_picker_button_get_selector()&amp;lt;/code&amp;gt;. To attach the selector, use the function &amp;lt;code&amp;gt;hildon_picker_button_set_selector()&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Note that you do not need to take care of the HildonPickerDialog. The dialog is automatically brought up when users click the picker button and closed when the selection is done.&lt;br /&gt;
&lt;br /&gt;
The dialog shows a button &amp;quot;Done&amp;quot; to allow users finish the selection when the touchable selector allows multiple selection. When the selector allows only single selection, the dialog does not show any button and closes when the user taps on one item.&lt;br /&gt;
&lt;br /&gt;
The label of the button &amp;quot;Done&amp;quot; can be set by using &amp;lt;code&amp;gt;hildon_picker_button_set_done_button_text()&amp;lt;/code&amp;gt; and retrieved by using &amp;lt;code&amp;gt;hildon_picker_button_get_done_button_text()&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
When users finish their selection, the value label on the button automatically changes to show a textual representation of the item or items selected.&lt;br /&gt;
&lt;br /&gt;
In most cases you want to perform any action when selection is finished. To do that, add a handler to the signal &amp;quot;value-changed&amp;quot; of the picker button. In this example the handler attached to &amp;quot;value-changed&amp;quot; signal retrieves the value label of the button and prints a debug message.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Touch selector entry ==&lt;br /&gt;
The HildonTouchSelectorEntry is a selector widget with a text entry that allows users to select an item from a predefined list or to enter a different one in a HildonEntry. Items can also be searched and selected by typing in the entry.&lt;br /&gt;
&lt;br /&gt;
An additional feature is that the HildonEntry is auto-completed with the list&#039;s items as the user types their name.&lt;br /&gt;
&lt;br /&gt;
Example below shows how to build a selector to pick a word in a list of words.&lt;br /&gt;
&lt;br /&gt;
[[Image:Touch_selector_entry.png|400px]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Example 6.4. Example of a Hildon picker button with a selector entry&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;tt&amp;gt;&amp;lt;span&amp;gt;&#039;&#039;&#039;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#000080&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;#include&amp;lt;/nowiki&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&#039;&#039;&#039;&amp;lt;/span&amp;gt;        &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#FF0000&amp;quot;&amp;gt;&amp;amp;lt;hildon/hildon.h&amp;amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
 &amp;lt;span&amp;gt;&#039;&#039;&#039;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#0000FF&amp;quot;&amp;gt;static&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&#039;&#039;&#039;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&#039;&#039;&#039;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#0000FF&amp;quot;&amp;gt;const&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&#039;&#039;&#039;&amp;lt;/span&amp;gt; gchar&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;*&amp;lt;/nowiki&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt; artists &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;[]&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;=&amp;lt;/nowiki&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#FF0000&amp;quot;&amp;gt;{&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
   &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#FF0000&amp;quot;&amp;gt;&amp;quot;AC/DC&amp;quot;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;,&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
   &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#FF0000&amp;quot;&amp;gt;&amp;quot;Aerosmith&amp;quot;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;,&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
   &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#FF0000&amp;quot;&amp;gt;&amp;quot;Alice in Chains&amp;quot;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;,&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
   &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#FF0000&amp;quot;&amp;gt;&amp;quot;Black Sabbath&amp;quot;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;,&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
   &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#FF0000&amp;quot;&amp;gt;&amp;quot;Carcass&amp;quot;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;,&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
   &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#FF0000&amp;quot;&amp;gt;&amp;quot;Danzig&amp;quot;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;,&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
   &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#FF0000&amp;quot;&amp;gt;&amp;quot;Deep Purple&amp;quot;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;,&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
   &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#FF0000&amp;quot;&amp;gt;&amp;quot;Dream Theater&amp;quot;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;,&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
   &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#FF0000&amp;quot;&amp;gt;&amp;quot;Eric Clapton&amp;quot;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;,&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
   NULL&lt;br /&gt;
 &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#FF0000&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;;&amp;lt;/nowiki&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
 &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#009900&amp;quot;&amp;gt;int&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
 &amp;lt;span&amp;gt;&#039;&#039;&#039;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#000000&amp;quot;&amp;gt;main&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&#039;&#039;&#039;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;(&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#009900&amp;quot;&amp;gt;int&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt; argc&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;,&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#009900&amp;quot;&amp;gt;char&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;**&amp;lt;/nowiki&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;argv&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;)&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
 &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#FF0000&amp;quot;&amp;gt;{&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
   HildonProgram &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;*&amp;lt;/nowiki&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;program&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;;&amp;lt;/nowiki&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
   GtkWidget &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;*&amp;lt;/nowiki&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;window&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;;&amp;lt;/nowiki&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
   GtkWidget &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;*&amp;lt;/nowiki&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;button&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;;&amp;lt;/nowiki&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
   GtkWidget &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;*&amp;lt;/nowiki&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;selector&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;;&amp;lt;/nowiki&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
   gint i&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;;&amp;lt;/nowiki&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
   &amp;lt;span&amp;gt;&#039;&#039;&#039;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#000000&amp;quot;&amp;gt;hildon_gtk_init&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&#039;&#039;&#039;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;(&amp;amp;amp;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;argc&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;,&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;&amp;amp;amp;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;argv&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;);&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
   program &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;=&amp;lt;/nowiki&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&#039;&#039;&#039;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#000000&amp;quot;&amp;gt;hildon_program_get_instance&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&#039;&#039;&#039;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;();&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
   g_set_application_name&lt;br /&gt;
     &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;(&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#FF0000&amp;quot;&amp;gt;&amp;quot;HildonTouchSelectorEntry example program&amp;quot;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;);&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
   window &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;=&amp;lt;/nowiki&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&#039;&#039;&#039;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#000000&amp;quot;&amp;gt;hildon_stackable_window_new&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&#039;&#039;&#039;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;();&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
   &amp;lt;span&amp;gt;&#039;&#039;&#039;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#000000&amp;quot;&amp;gt;hildon_program_add_window&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&#039;&#039;&#039;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;(&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;program&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;,&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&#039;&#039;&#039;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#000000&amp;quot;&amp;gt;HILDON_WINDOW&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&#039;&#039;&#039;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;(&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;window&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;));&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
   &amp;lt;span&amp;gt;&#039;&#039;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#9A1900&amp;quot;&amp;gt;/* Create a picker button */&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&#039;&#039;&amp;lt;/span&amp;gt;&lt;br /&gt;
   button &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;=&amp;lt;/nowiki&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&#039;&#039;&#039;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#000000&amp;quot;&amp;gt;hildon_picker_button_new&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&#039;&#039;&#039;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;(&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;HILDON_SIZE_AUTO&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;,&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
                                      HILDON_BUTTON_ARRANGEMENT_VERTICAL&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;);&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
   &amp;lt;span&amp;gt;&#039;&#039;&#039;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#000000&amp;quot;&amp;gt;hildon_button_set_title&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&#039;&#039;&#039;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;(&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;span&amp;gt;&#039;&#039;&#039;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#000000&amp;quot;&amp;gt;HILDON_BUTTON&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&#039;&#039;&#039;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;(&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;button&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;),&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#FF0000&amp;quot;&amp;gt;&amp;quot;Pick a band!&amp;quot;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;);&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
   &amp;lt;span&amp;gt;&#039;&#039;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#9A1900&amp;quot;&amp;gt;/* Create a touch selector entry */&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&#039;&#039;&amp;lt;/span&amp;gt;&lt;br /&gt;
   selector &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;=&amp;lt;/nowiki&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&#039;&#039;&#039;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#000000&amp;quot;&amp;gt;hildon_touch_selector_entry_new_text&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&#039;&#039;&#039;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;();&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
   &amp;lt;span&amp;gt;&#039;&#039;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#9A1900&amp;quot;&amp;gt;/* Populate the selector */&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&#039;&#039;&amp;lt;/span&amp;gt;&lt;br /&gt;
   &amp;lt;span&amp;gt;&#039;&#039;&#039;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#0000FF&amp;quot;&amp;gt;for&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&#039;&#039;&#039;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;(&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;i &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;=&amp;lt;/nowiki&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#993399&amp;quot;&amp;gt;0&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;;&amp;lt;/nowiki&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt; artists &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;[&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;i&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;]&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;!=&amp;lt;/nowiki&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt; NULL&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;;&amp;lt;/nowiki&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt; i&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;++)&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#FF0000&amp;quot;&amp;gt;{&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
     &amp;lt;span&amp;gt;&#039;&#039;&#039;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#000000&amp;quot;&amp;gt;hildon_touch_selector_append_text&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&#039;&#039;&#039;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;(&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;span&amp;gt;&#039;&#039;&#039;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#000000&amp;quot;&amp;gt;HILDON_TOUCH_SELECTOR&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&#039;&#039;&#039;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;(&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;selector&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;),&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
                                        artists &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;[&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;i&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;]);&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
   &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#FF0000&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
   &amp;lt;span&amp;gt;&#039;&#039;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#9A1900&amp;quot;&amp;gt;/* Attach selector to the picker button */&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&#039;&#039;&amp;lt;/span&amp;gt;&lt;br /&gt;
   &amp;lt;span&amp;gt;&#039;&#039;&#039;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#000000&amp;quot;&amp;gt;hildon_picker_button_set_selector&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&#039;&#039;&#039;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;(&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;span&amp;gt;&#039;&#039;&#039;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#000000&amp;quot;&amp;gt;HILDON_PICKER_BUTTON&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&#039;&#039;&#039;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;(&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;button&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;),&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
                                      &amp;lt;span&amp;gt;&#039;&#039;&#039;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#000000&amp;quot;&amp;gt;HILDON_TOUCH_SELECTOR&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&#039;&#039;&#039;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;(&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;selector&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;));&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
   &amp;lt;span&amp;gt;&#039;&#039;&#039;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#000000&amp;quot;&amp;gt;gtk_container_add&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&#039;&#039;&#039;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;(&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;span&amp;gt;&#039;&#039;&#039;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#000000&amp;quot;&amp;gt;GTK_CONTAINER&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&#039;&#039;&#039;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;(&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;window&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;),&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt; button&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;);&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
   &amp;lt;span&amp;gt;&#039;&#039;&#039;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#000000&amp;quot;&amp;gt;g_signal_connect&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&#039;&#039;&#039;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;(&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;span&amp;gt;&#039;&#039;&#039;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#000000&amp;quot;&amp;gt;G_OBJECT&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&#039;&#039;&#039;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;(&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;window&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;),&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#FF0000&amp;quot;&amp;gt;&amp;quot;destroy&amp;quot;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;,&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
                     &amp;lt;span&amp;gt;&#039;&#039;&#039;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#000000&amp;quot;&amp;gt;G_CALLBACK&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&#039;&#039;&#039;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;(&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;gtk_main_quit&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;),&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt; NULL&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;);&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
   &amp;lt;span&amp;gt;&#039;&#039;&#039;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#000000&amp;quot;&amp;gt;gtk_widget_show_all&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&#039;&#039;&#039;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;(&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;span&amp;gt;&#039;&#039;&#039;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#000000&amp;quot;&amp;gt;GTK_WIDGET&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&#039;&#039;&#039;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;(&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;window&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;));&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
   &amp;lt;span&amp;gt;&#039;&#039;&#039;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#000000&amp;quot;&amp;gt;gtk_main&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&#039;&#039;&#039;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;();&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
   &amp;lt;span&amp;gt;&#039;&#039;&#039;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#0000FF&amp;quot;&amp;gt;return&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&#039;&#039;&#039;&amp;lt;/span&amp;gt; &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#993399&amp;quot;&amp;gt;0&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#990000&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;;&amp;lt;/nowiki&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
 &amp;lt;span&amp;gt;&amp;lt;font color=&amp;quot;#FF0000&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
 &amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
As you can see in the example above, the use of this widget is similar to using a normal touchable selector.&lt;br /&gt;
&lt;br /&gt;
You can also use custom columns in a HildonTouchableEntry but at least one column must be a text column. The text column is indicated by the property &amp;quot;text_column&amp;quot; which you set with &amp;lt;code&amp;gt;hildon_touch_selector_entry_set_text_column()&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Pre-built selectors ==&lt;br /&gt;
The widgets HildonDateButton and HildonTimeButton are buttons displaying and allowing the selection of date and time, respectively. Developers can use them directly instead of building their own date or time selectors.&lt;br /&gt;
&lt;br /&gt;
Both widgets are specialized picker buttons with a convenient touchable selector attached that you can use directly in your application.&lt;br /&gt;
&lt;br /&gt;
Here a simple application using a HildonDateButton.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Example 6.5. Example of a Hildon date button&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
  #include                                        &amp;lt;hildon/hildon.h&amp;gt;&lt;br /&gt;
  &lt;br /&gt;
  int&lt;br /&gt;
  main (int argc, char **argv)&lt;br /&gt;
  {&lt;br /&gt;
    HildonProgram *program = NULL;&lt;br /&gt;
    GtkWidget *window = NULL;&lt;br /&gt;
    GtkWidget *picker_button = NULL;&lt;br /&gt;
  &lt;br /&gt;
    hildon_gtk_init (&amp;amp;argc, &amp;amp;argv);&lt;br /&gt;
  &lt;br /&gt;
    program = hildon_program_get_instance ();&lt;br /&gt;
    g_set_application_name&lt;br /&gt;
      (&amp;quot;hildon-date-button example program&amp;quot;);&lt;br /&gt;
  &lt;br /&gt;
    window = hildon_stackable_window_new ();&lt;br /&gt;
    hildon_program_add_window (program, HILDON_WINDOW (window));&lt;br /&gt;
  &lt;br /&gt;
    /* Create a picker button */&lt;br /&gt;
    picker_button = hildon_date_button_new (HILDON_SIZE_AUTO,&lt;br /&gt;
                                            HILDON_BUTTON_ARRANGEMENT_VERTICAL);&lt;br /&gt;
  &lt;br /&gt;
    /* Set a title to the button*/&lt;br /&gt;
    hildon_button_set_title (HILDON_BUTTON (picker_button), &amp;quot;Pick a date&amp;quot;);&lt;br /&gt;
  &lt;br /&gt;
    /* Add button to main window */&lt;br /&gt;
    gtk_container_add (GTK_CONTAINER (window), picker_button);&lt;br /&gt;
  &lt;br /&gt;
    g_signal_connect (G_OBJECT (window), &amp;quot;destroy&amp;quot;,&lt;br /&gt;
                      G_CALLBACK (gtk_main_quit), NULL);&lt;br /&gt;
  &lt;br /&gt;
    gtk_widget_show_all (GTK_WIDGET (window));&lt;br /&gt;
  &lt;br /&gt;
    gtk_main ();&lt;br /&gt;
  &lt;br /&gt;
    return 0;&lt;br /&gt;
  }&lt;/div&gt;</summary>
		<author><name>192.100.124.219</name></author>
	</entry>
	<entry>
		<id>https://maemo.octonezd.me/index.php?title=Maemo-releases&amp;diff=16028</id>
		<title>Maemo-releases</title>
		<link rel="alternate" type="text/html" href="https://maemo.octonezd.me/index.php?title=Maemo-releases&amp;diff=16028"/>
		<updated>2009-10-29T13:32:00Z</updated>

		<summary type="html">&lt;p&gt;192.100.124.219: /* The rationale behind maemo-release */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== The rationale behind maemo-release ==&lt;br /&gt;
&lt;br /&gt;
The maemo-release package seeks to address the situation wherein a source package is forked into gregale/bora/chinook/diablo/fremantle versions of itself because one set of Build-Depends does not work for all distributions.&lt;br /&gt;
&lt;br /&gt;
Example: Fremantle provides libgstfarsight0.10-dev, whereas previous distributions do not. pidgin needs to Build-Depend on it for voice/video support to be compiled in during the build process. However, the libgstfarsight0.10-dev package does not exist in any previous distribution.&lt;br /&gt;
&lt;br /&gt;
This results in having to provide a different debian/control file for the various distributions, which in turn forces one to make a different debian/changelog file for the various distributions. At this point, different distributions have different source packages.&lt;br /&gt;
&lt;br /&gt;
To prevent this one reason for forking the source package, we need the maemo-release package. Then, knowing which distribution(s) contain a needed package foo, we can create an appropriate debian/control entry.&lt;br /&gt;
&lt;br /&gt;
Example: Suppose Bora and Diablo contain package foo, but the other distributions do not. The corresponding debian/control Build-Depends entry will be:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 Build-Depends: package1-dev, &lt;br /&gt;
  package2-dev, &lt;br /&gt;
  ..., &lt;br /&gt;
  foo | maemo-release (= 1.0.0) | maemo-release (= 3.0.0) | maemo-release (= 5.0.0),&lt;br /&gt;
  ...,&lt;br /&gt;
  packagen-dev&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This way you can describe intervals of distributions wherein a certain package has become available. Examples:&lt;br /&gt;
&lt;br /&gt;
{|style=&amp;quot;border:1px solid;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!align=&amp;quot;center&amp;quot;| &amp;amp;nbsp; (1.0.0) Gregale &amp;amp;nbsp;&lt;br /&gt;
!align=&amp;quot;center&amp;quot;| &amp;amp;nbsp; (2.0.0) Bora &amp;amp;nbsp;&lt;br /&gt;
!align=&amp;quot;center&amp;quot;| &amp;amp;nbsp; (3.0.0) Chinook &amp;amp;nbsp;&lt;br /&gt;
!align=&amp;quot;center&amp;quot;| &amp;amp;nbsp; (4.0.0) Diablo &amp;amp;nbsp;&lt;br /&gt;
!align=&amp;quot;center&amp;quot;| &amp;amp;nbsp; (5.0.0) Fremantle &amp;amp;nbsp;&lt;br /&gt;
|-&lt;br /&gt;
|colspan=&amp;quot;5&amp;quot; style=&amp;quot;border:1px solid;&amp;quot; | Example: &amp;lt;code&amp;gt;foo | maemo-release (&amp;lt; 3.0.0)&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| align=&amp;quot;center&amp;quot; style=&amp;quot;background:red; color:white&amp;quot; colspan=&amp;quot;2&amp;quot; | foo is absent&lt;br /&gt;
| align=&amp;quot;center&amp;quot; style=&amp;quot;background:green; color:white&amp;quot; colspan=&amp;quot;3&amp;quot; | foo is present&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
|colspan=&amp;quot;5&amp;quot; style=&amp;quot;border:1px solid;&amp;quot; | Example: &amp;lt;code&amp;gt;foo | maemo-release (&amp;lt; 3.0.0) | maemo-release (&amp;gt; 4.0.0)&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| align=&amp;quot;center&amp;quot; style=&amp;quot;background:red; color:white&amp;quot; colspan=&amp;quot;2&amp;quot; | foo is absent&lt;br /&gt;
| align=&amp;quot;center&amp;quot; style=&amp;quot;background:green; color:white&amp;quot; colspan=&amp;quot;2&amp;quot; | foo is present&lt;br /&gt;
| align=&amp;quot;center&amp;quot; style=&amp;quot;background:red; color:white&amp;quot; colspan=&amp;quot;1&amp;quot; | foo is absent&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
|colspan=&amp;quot;5&amp;quot; style=&amp;quot;border:1px solid;&amp;quot; | Example: &amp;lt;code&amp;gt;foo | maemo-release (= 1.0.0) | maemo-release (= 3.0.0) | maemo-release (= 5.0.0)&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| align=&amp;quot;center&amp;quot; style=&amp;quot;background:red; color:white&amp;quot; colspan=&amp;quot;1&amp;quot; | foo is absent&lt;br /&gt;
| align=&amp;quot;center&amp;quot; style=&amp;quot;background:green; color:white&amp;quot; colspan=&amp;quot;1&amp;quot; | foo is present&lt;br /&gt;
| align=&amp;quot;center&amp;quot; style=&amp;quot;background:red; color:white&amp;quot; colspan=&amp;quot;1&amp;quot; | foo is absent&lt;br /&gt;
| align=&amp;quot;center&amp;quot; style=&amp;quot;background:green; color:white&amp;quot; colspan=&amp;quot;1&amp;quot; | foo is present&lt;br /&gt;
| align=&amp;quot;center&amp;quot; style=&amp;quot;background:red; color:white&amp;quot; colspan=&amp;quot;1&amp;quot; | foo is absent&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Of course, the rest of the build process has also to be made tolerant of the presence/absence of a given package.&lt;/div&gt;</summary>
		<author><name>192.100.124.219</name></author>
	</entry>
	<entry>
		<id>https://maemo.octonezd.me/index.php?title=Maemo-releases&amp;diff=16029</id>
		<title>Maemo-releases</title>
		<link rel="alternate" type="text/html" href="https://maemo.octonezd.me/index.php?title=Maemo-releases&amp;diff=16029"/>
		<updated>2009-10-29T13:24:12Z</updated>

		<summary type="html">&lt;p&gt;192.100.124.219: /* The rationale behind maemo-release */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== The rationale behind maemo-release ==&lt;br /&gt;
&lt;br /&gt;
The maemo-release package seeks to address the situation wherein a source package is forked into gregale/bora/chinook/diablo/fremantle versions of itself because one set of Build-Depends does not work for all distributions.&lt;br /&gt;
&lt;br /&gt;
Example: Fremantle provides libgstfarsight0.10-dev, whereas previous distributions do not. pidgin needs to Build-Depend on it for voice/video support to be compiled in during the build process. However, the libgstfarsight0.10-dev package does not exist in any previous distribution.&lt;br /&gt;
&lt;br /&gt;
This results in having to provide a different debian/control file for the various distributions, which in turn forces one to make a different debian/changelog file for the various distributions. At this point, different distributions have different source packages.&lt;br /&gt;
&lt;br /&gt;
To prevent this one reason for forking the source package, we need the maemo-release package. Then, knowing which distribution(s) contain a needed package foo, we can create an appropriate debian/control entry.&lt;br /&gt;
&lt;br /&gt;
Example: Suppose Bora and Diablo contain package foo, but the other distributions do not. The corresponding debian/control Build-Depends entry will be:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 Build-Depends: package1-dev, &lt;br /&gt;
  package2-dev, &lt;br /&gt;
  ..., &lt;br /&gt;
  foo | maemo-release (= 1.0.0) | maemo-release (= 3.0.0) | maemo-release (= 5.0.0),&lt;br /&gt;
  ...,&lt;br /&gt;
  packagen-dev&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This way you can describe intervals of distributions wherein a certain package has become available. Examples:&lt;br /&gt;
&lt;br /&gt;
{|style=&amp;quot;border:1px solid;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!align=&amp;quot;center&amp;quot;| &amp;amp;nbsp; (1.0.0) Gregale &amp;amp;nbsp;&lt;br /&gt;
!align=&amp;quot;center&amp;quot;| &amp;amp;nbsp; (2.0.0) Bora &amp;amp;nbsp;&lt;br /&gt;
!align=&amp;quot;center&amp;quot;| &amp;amp;nbsp; (3.0.0) Chinook &amp;amp;nbsp;&lt;br /&gt;
!align=&amp;quot;center&amp;quot;| &amp;amp;nbsp; (4.0.0) Diablo &amp;amp;nbsp;&lt;br /&gt;
!align=&amp;quot;center&amp;quot;| &amp;amp;nbsp; (5.0.0) Fremantle &amp;amp;nbsp;&lt;br /&gt;
|-&lt;br /&gt;
|colspan=&amp;quot;5&amp;quot; style=&amp;quot;border:1px solid;&amp;quot; | Example: &amp;lt;code&amp;gt;foo | maemo-release (&amp;lt; 3.0.0)&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| align=&amp;quot;center&amp;quot; style=&amp;quot;background:red; color:white&amp;quot; colspan=&amp;quot;2&amp;quot; | foo is absent&lt;br /&gt;
| align=&amp;quot;center&amp;quot; style=&amp;quot;background:green; color:white&amp;quot; colspan=&amp;quot;3&amp;quot; | foo is present&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
|colspan=&amp;quot;5&amp;quot; style=&amp;quot;border:1px solid;&amp;quot; | Example: &amp;lt;code&amp;gt;foo | maemo-release (&amp;lt; 2.0.0) | maemo-release (&amp;gt; 4.0.0)&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| align=&amp;quot;center&amp;quot; style=&amp;quot;background:red; color:white&amp;quot; colspan=&amp;quot;2&amp;quot; | foo is absent&lt;br /&gt;
| align=&amp;quot;center&amp;quot; style=&amp;quot;background:green; color:white&amp;quot; colspan=&amp;quot;2&amp;quot; | foo is present&lt;br /&gt;
| align=&amp;quot;center&amp;quot; style=&amp;quot;background:red; color:white&amp;quot; colspan=&amp;quot;1&amp;quot; | foo is absent&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
|colspan=&amp;quot;5&amp;quot; style=&amp;quot;border:1px solid;&amp;quot; | Example: &amp;lt;code&amp;gt;foo | maemo-release (= 1.0.0) | maemo-release (= 3.0.0) | maemo-release (= 5.0.0)&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| align=&amp;quot;center&amp;quot; style=&amp;quot;background:red; color:white&amp;quot; colspan=&amp;quot;1&amp;quot; | foo is absent&lt;br /&gt;
| align=&amp;quot;center&amp;quot; style=&amp;quot;background:green; color:white&amp;quot; colspan=&amp;quot;1&amp;quot; | foo is present&lt;br /&gt;
| align=&amp;quot;center&amp;quot; style=&amp;quot;background:red; color:white&amp;quot; colspan=&amp;quot;1&amp;quot; | foo is absent&lt;br /&gt;
| align=&amp;quot;center&amp;quot; style=&amp;quot;background:green; color:white&amp;quot; colspan=&amp;quot;1&amp;quot; | foo is present&lt;br /&gt;
| align=&amp;quot;center&amp;quot; style=&amp;quot;background:red; color:white&amp;quot; colspan=&amp;quot;1&amp;quot; | foo is absent&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Of course, the rest of the build process has also to be made tolerant of the presence/absence of a given package.&lt;/div&gt;</summary>
		<author><name>192.100.124.219</name></author>
	</entry>
	<entry>
		<id>https://maemo.octonezd.me/index.php?title=Maemo-releases&amp;diff=16030</id>
		<title>Maemo-releases</title>
		<link rel="alternate" type="text/html" href="https://maemo.octonezd.me/index.php?title=Maemo-releases&amp;diff=16030"/>
		<updated>2009-10-29T13:21:22Z</updated>

		<summary type="html">&lt;p&gt;192.100.124.219: /* The rationale behind maemo-release */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== The rationale behind maemo-release ==&lt;br /&gt;
&lt;br /&gt;
The maemo-release package seeks to address the situation wherein a source package is forked into gregale/bora/chinook/diablo/fremantle versions of itself because one set of Build-Depends does not work for all distributions.&lt;br /&gt;
&lt;br /&gt;
Example: Fremantle provides libgstfarsight0.10-dev, whereas previous distributions do not. pidgin needs to Build-Depend on it for voice/video support to be compiled in during the build process. However, the libgstfarsight0.10-dev package does not exist in any previous distribution.&lt;br /&gt;
&lt;br /&gt;
This results in having to provide a different debian/control file for the various distributions, which in turn forces one to make a different debian/changelog file for the various distributions. At this point, different distributions have different source packages.&lt;br /&gt;
&lt;br /&gt;
To prevent this one reason for forking the source package, we need the maemo-release package. Then, knowing which distribution(s) contain a needed package foo, we can create an appropriate debian/control entry.&lt;br /&gt;
&lt;br /&gt;
Example: Suppose Bora and Diablo contain package foo, but the other distributions do not. The corresponding debian/control Build-Depends entry will be:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 Build-Depends: package1-dev, &lt;br /&gt;
  package2-dev, &lt;br /&gt;
  ..., &lt;br /&gt;
  foo | maemo-release (= 1.0.0) | maemo-release (= 3.0.0) | maemo-release (= 5.0.0),&lt;br /&gt;
  ...,&lt;br /&gt;
  packagen-dev&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This way you can describe intervals of distributions wherein a certain package has become available. Examples:&lt;br /&gt;
&lt;br /&gt;
{|style=&amp;quot;border:1px solid;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!align=&amp;quot;center&amp;quot;| &amp;amp;nbsp; (1.0.0) Gregale &amp;amp;nbsp;&lt;br /&gt;
!align=&amp;quot;center&amp;quot;| &amp;amp;nbsp; (2.0.0) Bora &amp;amp;nbsp;&lt;br /&gt;
!align=&amp;quot;center&amp;quot;| &amp;amp;nbsp; (3.0.0) Chinook &amp;amp;nbsp;&lt;br /&gt;
!align=&amp;quot;center&amp;quot;| &amp;amp;nbsp; (4.0.0) Diablo &amp;amp;nbsp;&lt;br /&gt;
!align=&amp;quot;center&amp;quot;| &amp;amp;nbsp; (5.0.0) Fremantle &amp;amp;nbsp;&lt;br /&gt;
|-&lt;br /&gt;
|colspan=&amp;quot;5&amp;quot; style=&amp;quot;border:1px solid;&amp;quot; | Example: &amp;lt;code&amp;gt;foo | maemo-release (&amp;lt; 3.0.0)&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| align=&amp;quot;center&amp;quot; style=&amp;quot;background:red; color:white&amp;quot; colspan=&amp;quot;2&amp;quot; | foo is absent&lt;br /&gt;
| align=&amp;quot;center&amp;quot; style=&amp;quot;background:green; color:white&amp;quot; colspan=&amp;quot;3&amp;quot; | foo is present&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
|colspan=&amp;quot;5&amp;quot; style=&amp;quot;border:1px solid;&amp;quot; | Example: &amp;lt;code&amp;gt;foo | maemo-release (&amp;lt; 2.0.0) | maemo-release (&amp;gt; 4.0.0)&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| align=&amp;quot;center&amp;quot; style=&amp;quot;background:red; color:white&amp;quot; colspan=&amp;quot;2&amp;quot; | foo is absent&lt;br /&gt;
| align=&amp;quot;center&amp;quot; style=&amp;quot;background:green; color:white&amp;quot; colspan=&amp;quot;2&amp;quot; | foo is present&lt;br /&gt;
| align=&amp;quot;center&amp;quot; style=&amp;quot;background:red; color:white&amp;quot; colspan=&amp;quot;1&amp;quot; | foo is absent&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
|colspan=&amp;quot;5&amp;quot; style=&amp;quot;border:1px solid;&amp;quot; | Example: &amp;lt;code&amp;gt;foo | maemo-release (= 1.0.0) | maemo-release (= 3.0.0) | maemo-release (= 5.0.0)&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| align=&amp;quot;center&amp;quot; style=&amp;quot;background:red; color:white&amp;quot; colspan=&amp;quot;1&amp;quot; | foo is absent&lt;br /&gt;
| align=&amp;quot;center&amp;quot; style=&amp;quot;background:green; color:white&amp;quot; colspan=&amp;quot;1&amp;quot; | foo is present&lt;br /&gt;
| align=&amp;quot;center&amp;quot; style=&amp;quot;background:red; color:white&amp;quot; colspan=&amp;quot;1&amp;quot; | foo is absent&lt;br /&gt;
| align=&amp;quot;center&amp;quot; style=&amp;quot;background:green; color:white&amp;quot; colspan=&amp;quot;1&amp;quot; | foo is present&lt;br /&gt;
| align=&amp;quot;center&amp;quot; style=&amp;quot;background:red; color:white&amp;quot; colspan=&amp;quot;1&amp;quot; | foo is absent&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>192.100.124.219</name></author>
	</entry>
	<entry>
		<id>https://maemo.octonezd.me/index.php?title=Maemo-releases&amp;diff=16031</id>
		<title>Maemo-releases</title>
		<link rel="alternate" type="text/html" href="https://maemo.octonezd.me/index.php?title=Maemo-releases&amp;diff=16031"/>
		<updated>2009-10-29T13:17:27Z</updated>

		<summary type="html">&lt;p&gt;192.100.124.219: New page&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== The rationale behind maemo-release ==&lt;br /&gt;
&lt;br /&gt;
The maemo-release package seeks to address the situation wherein a source package is forked into gregale/bora/chinook/diablo/fremantle versions of itself because one set of Build-Depends does not work for all distributions.&lt;br /&gt;
&lt;br /&gt;
Example: Fremantle provides libgstfarsight0.10-dev, whereas previous distributions do not. pidgin needs to Build-Depend on it for voice/video support to be compiled in during the build process. However, the libgstfarsight0.10-dev package does not exist in any previous distribution.&lt;br /&gt;
&lt;br /&gt;
This results in having to provide a different debian/control file for the various distributions, which in turn forces one to make a different debian/changelog file for the various distributions. At this point, different distributions have different source packages.&lt;br /&gt;
&lt;br /&gt;
To prevent this one reason for forking the source package, we need the maemo-release package. Then, knowing which distribution(s) contain a needed package foo, we can create an appropriate debian/control entry.&lt;br /&gt;
&lt;br /&gt;
Example: Suppose Bora and Diablo contain package foo, but the other distributions do not. The corresponding debian/control Build-Depends entry will be:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 Build-Depends: package1-dev, &lt;br /&gt;
  package2-dev, &lt;br /&gt;
  ..., &lt;br /&gt;
  foo | maemo-version (= 1.0.0) | maemo-version (= 3.0.0) | maemo-version (= 5.0.0),&lt;br /&gt;
  ...,&lt;br /&gt;
  packagen-dev&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This way you can describe intervals of distributions wherein a certain package has become available. Examples:&lt;br /&gt;
&lt;br /&gt;
{|style=&amp;quot;border:1px solid;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!align=&amp;quot;center&amp;quot;| &amp;amp;nbsp; (1.0.0) Gregale &amp;amp;nbsp;&lt;br /&gt;
!align=&amp;quot;center&amp;quot;| &amp;amp;nbsp; (2.0.0) Bora &amp;amp;nbsp;&lt;br /&gt;
!align=&amp;quot;center&amp;quot;| &amp;amp;nbsp; (3.0.0) Chinook &amp;amp;nbsp;&lt;br /&gt;
!align=&amp;quot;center&amp;quot;| &amp;amp;nbsp; (4.0.0) Diablo &amp;amp;nbsp;&lt;br /&gt;
!align=&amp;quot;center&amp;quot;| &amp;amp;nbsp; (5.0.0) Fremantle &amp;amp;nbsp;&lt;br /&gt;
|-&lt;br /&gt;
|colspan=&amp;quot;5&amp;quot; style=&amp;quot;border:1px solid;&amp;quot; | Example: &amp;lt;code&amp;gt;foo | maemo-release (&amp;lt; 3.0.0)&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| align=&amp;quot;center&amp;quot; style=&amp;quot;background:red; color:white&amp;quot; colspan=&amp;quot;2&amp;quot; | foo is absent&lt;br /&gt;
| align=&amp;quot;center&amp;quot; style=&amp;quot;background:green; color:white&amp;quot; colspan=&amp;quot;3&amp;quot; | foo is present&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
|colspan=&amp;quot;5&amp;quot; style=&amp;quot;border:1px solid;&amp;quot; | Example: &amp;lt;code&amp;gt;foo | maemo-release (&amp;lt; 2.0.0) | maemo-release (&amp;gt; 4.0.0)&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| align=&amp;quot;center&amp;quot; style=&amp;quot;background:red; color:white&amp;quot; colspan=&amp;quot;2&amp;quot; | foo is absent&lt;br /&gt;
| align=&amp;quot;center&amp;quot; style=&amp;quot;background:green; color:white&amp;quot; colspan=&amp;quot;2&amp;quot; | foo is present&lt;br /&gt;
| align=&amp;quot;center&amp;quot; style=&amp;quot;background:red; color:white&amp;quot; colspan=&amp;quot;1&amp;quot; | foo is absent&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>192.100.124.219</name></author>
	</entry>
	<entry>
		<id>https://maemo.octonezd.me/index.php?title=Maemo_Summit_2009&amp;diff=20112</id>
		<title>Maemo Summit 2009</title>
		<link rel="alternate" type="text/html" href="https://maemo.octonezd.me/index.php?title=Maemo_Summit_2009&amp;diff=20112"/>
		<updated>2009-10-19T14:25:58Z</updated>

		<summary type="html">&lt;p&gt;192.100.124.219: Link to slides of my talk&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;div style=&amp;quot;font-weight:bold;&amp;quot;&amp;gt;October 9-10-11, 2009- [http://www.westergasfabriek.nl/english/engels_welcome.php WesterGasFabriek] - Amsterdam&amp;lt;/div&amp;gt;&lt;br /&gt;
[[Image:Westergas.png‎]]&lt;br /&gt;
&lt;br /&gt;
== Conference archive ==&lt;br /&gt;
Videos, slides and other materials related to the sessions. Feel free to update your own.&lt;br /&gt;
&lt;br /&gt;
=== Thursday, October 8 ===&lt;br /&gt;
&lt;br /&gt;
17:00 - 19:00 Registration at the Community Room (Zuiveringshal Oost). &#039;&#039;&#039;Early registrations encouraged to avoid queues and stress on Friday morning!&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
19:00 - 00:00 The official get together on Thursday will be [http://www.indewildeman.nl/indexe.html In de Wildeman], a beer house ([http://maps.google.nl/maps?f=q&amp;amp;source=s_q&amp;amp;hl=en&amp;amp;geocode=&amp;amp;q=Kolksteeg+3+1012+PT+Amsterdam&amp;amp;sll=52.377171,4.897242&amp;amp;sspn=0.005803,0.016512&amp;amp;ie=UTF8&amp;amp;hq=&amp;amp;hnear=Kolksteeg+3,+1012+Amsterdam,+North+Holland&amp;amp;t=h&amp;amp;z=16 Map]).&lt;br /&gt;
&lt;br /&gt;
=== [[/Schedule/Day 1 | Friday, October 9]] ===&lt;br /&gt;
&lt;br /&gt;
9:00    Registration at the Community Room (Zuiveringshal Oost). &#039;&#039;&#039;Come early: you won&#039;t get to the conference without your badge.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
10:00   &#039;&#039;&#039;Programme starts at N900 (Transformatorhuis)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
10:00    &#039;&#039;&#039;Welcome - Opening of Summit &#039;&#039;&#039; by [http://maemo.org/profile/view/peterschneider.html Peter Schneider], Head of Maemo Marketing @ Nokia&lt;br /&gt;
&lt;br /&gt;
10:15     &#039;&#039;&#039;[http://wiki.maemo.org/Maemo_Summit_2009/Schedule/Day_1#Maemo_5_and_the_N900 Maemo 5 and the Nokia N900] by [http://maemo.org/profile/view/jaaksi/ Ari Jaaksi], VP - Maemo Devices @ Nokia [http://www.slideshare.net/peterschneider/maemo-and-the-nokia-n900 (slides)]&lt;br /&gt;
&lt;br /&gt;
11:00    &#039;&#039;&#039;[http://wiki.maemo.org/Maemo_Summit_2009/Schedule/Day_1#Changing_PC_.26_Mobile_Landscape.3B_Why_Linux_will_play_a_Critical_Role Changing PC &amp;amp; Mobile Landscape; Why Linux will play a Critical Role]&#039;&#039;&#039;  by Jim Zemlin, Executive Director @ Linux Foundation&lt;br /&gt;
&lt;br /&gt;
11:30  &#039;&#039;&#039;Break&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
11:45    &#039;&#039;&#039;[http://wiki.maemo.org/Maemo_Summit_2009/Schedule/Day_1#Nokia_Nseries_Devices_on_Maemo Nokia Nseries Devices on Maemo]&#039;&#039;&#039; by Jose-Luis Martinez Merino, VP, Marketing @ Nokia [http://www.slideshare.net/peterschneider/nokia-nseries-and-maemo-6 (slides)]&lt;br /&gt;
&lt;br /&gt;
12:15    &#039;&#039;&#039;[http://wiki.maemo.org/Maemo_Summit_2009/Schedule/Day_1#Harmattan_Highlights_-_Developer_Opportunities Harmattan Highlights - Developer Opportunities]&#039;&#039;&#039; by Janne Heikkinen, Director - Maemo Product Planning @ Nokia [http://www.slideshare.net/peterschneider/maemo-5-developer-offering (Maemo 5 slides)] - [http://www.slideshare.net/peterschneider/maemo-6-technology-highlights (Maemo 6 slides)]&lt;br /&gt;
&lt;br /&gt;
13:00  &#039;&#039;&#039;Lunch - Maemo Expo opens&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
14:15  &#039;&#039;&#039;[http://wiki.maemo.org/Maemo_Summit_2009/Schedule/Day_1#Why_the_Maemo_Community_matters_to_Nokia Why the Maemo Community matters to Nokia]&#039;&#039;&#039; - Alan &amp;quot;[http://maemo.org/profile/view/qole/ qole]&amp;quot; Bruce of [[Community Council|Maemo Community Council]] interviewing Ari Jaaksi, VP - Maemo Devices @ Nokia&lt;br /&gt;
&lt;br /&gt;
15:00      &#039;&#039;&#039;Expert streams&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;2&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Time&lt;br /&gt;
! N900 - &#039;&#039;chair: John Loughney&#039;&#039;&lt;br /&gt;
! N810 - &#039;&#039;chair: Anthony Fabbricino&#039;&#039;&lt;br /&gt;
! N800 - &#039;&#039;chair: Quim Gil&#039;&#039; &lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| 15:00 - 15:25 &lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; | &#039;&#039;&#039;[http://wiki.maemo.org/Maemo_Summit_2009/Schedule/Day_1#UX_panel UX Panel]&#039;&#039;&#039; &lt;br /&gt;
&#039;&#039;Moderated by: [http://maemo.org/profile/view/timsamoff Tim Samoff], Maemo Council,&#039;&#039;&lt;br /&gt;
&#039;&#039;with Harri Kiljander, Director Maemo UX Design and Martin Schüle, Principal Designer Maemo 5&#039;&#039;&lt;br /&gt;
| &#039;&#039;&#039;UI design of Maemo 5 apps&#039;&#039;&#039;&lt;br /&gt;
&#039;&#039;Annu-Maaria Nivala, UX team, Digia&#039;&#039; [http://www.slideshare.net/annumaaria/ui-design-of-maemo-5-apps-digia (slides)]&lt;br /&gt;
| &#039;&#039;&#039;[http://wiki.maemo.org/Maemo_Summit_2009/Schedule/Day_1#Cross-platform_with_Qt_-_live Cross-platform with Qt - live]&#039;&#039;&#039;&lt;br /&gt;
&#039;&#039;Ariya Hidayat, Software Engineer, Nokia&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
| 15:30 - 15:55 &lt;br /&gt;
| &#039;&#039;&#039;[http://wiki.maemo.org/Maemo_Summit_2009/Schedule/Day_1#Developing_widgets_on_Maemo_5_-_showcase_Foreca_Weather Developing widgets on Maemo 5 - showcase Foreca Weather]&#039;&#039;&#039;&lt;br /&gt;
&#039;&#039;Juha Järvi, Software Designer, Foreca&#039;&#039;&lt;br /&gt;
| &#039;&#039;&#039;[http://wiki.maemo.org/Maemo_Summit_2009/Schedule/Day_1#Mer_-_how_the_community_innovates Mer - how the community innovates]&#039;&#039;&#039;&lt;br /&gt;
&#039;&#039;Carsten Munk, Lead Developer, Mer project&#039;&#039; [http://www.slideshare.net/carstenmunk/mer-how-the-community-innovates (slides)]&lt;br /&gt;
|-&lt;br /&gt;
| 16.00 - 16.25 &lt;br /&gt;
| &#039;&#039;&#039;[http://wiki.maemo.org/Maemo_Summit_2009/Schedule/Day_1#Firefox_on_Maemo Firefox on Maemo]&#039;&#039;&#039;&lt;br /&gt;
&#039;&#039;Stuart Parmenter, Director of Engineering, Mozilla&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
| &#039;&#039;&#039;Developing apps with Qt for Maemo5&#039;&#039;&#039;&lt;br /&gt;
&#039;&#039;Kate Alhola, Forum Nokia, Chief Guru on Maemo&lt;br /&gt;
| | &#039;&#039;&#039;[http://wiki.maemo.org/Maemo_Summit_2009/Schedule/Day_1#Your_foundation_for_open-source_innovation:_TI.E2.80.99s_OMAP_processor-based_Zoom_platform Your foundation for open-source innovation:  TI’s OMAP processor-based Zoom platform]&#039;&#039;&#039;&lt;br /&gt;
&#039;&#039;Ameet Suri, Texas Instruments&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
| 16.30 - 16.55&lt;br /&gt;
| &#039;&#039;&#039;[http://wiki.maemo.org/Maemo_Summit_2009/Schedule/Day_1#Present_and_future_of_Maemo_digital_marketing Present andd future of Maemo digital marketing]&#039;&#039;&#039;&lt;br /&gt;
&#039;&#039;Isko Salminen, Production Manager, Activeark &amp;amp; Jussi Mäkinen, Maemo Marketing, Nokia&#039;&#039;&#039;&lt;br /&gt;
| &#039;&#039;&#039;Developing apps with Qt on Harmattan&#039;&#039;&#039;&lt;br /&gt;
&#039;&#039;Ville Lavonius, Product Manager Developer Offering, Nokia&#039;&#039;&lt;br /&gt;
| &#039;&#039;&#039;Feedservice and plug-ins development in Maemo 5&#039;&#039;&#039;&lt;br /&gt;
&#039;&#039;Mikko Levonmaa, Ixonos&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
| 17.00 - 17.25 &lt;br /&gt;
| &#039;&#039;&#039;[http://wiki.maemo.org/Maemo_Summit_2009/Schedule/Day_1#Biz_apps_on_Maemo Biz apps on Maemo]&#039;&#039;&#039;&lt;br /&gt;
&#039;&#039;Kari Pikkarainen, Product Manager Productivity, Nokia&#039;&#039;&lt;br /&gt;
| &#039;&#039;&#039;Developing apps with Nokia Web Runtime&#039;&#039;&#039;&lt;br /&gt;
&#039;&#039;Santtu Ahonen, Head of Developer Offering, Nokia&#039;&#039;&lt;br /&gt;
| &#039;&#039;&#039;[http://www.slideshare.net/jtukkine/maemo-6-harmattan-architecture-overview Harmattan Architecture Overview]&#039;&#039;&#039;&lt;br /&gt;
&#039;&#039;Juha Tukkinen, Principal Engineer, Maemo Devices, Nokia&#039;&#039; [http://www.slideshare.net/jtukkine/maemo-6-harmattan-architecture-overview (slides)]&lt;br /&gt;
|-&lt;br /&gt;
| 17.30 - 18.00 &lt;br /&gt;
| &#039;&#039;&#039;[http://wiki.maemo.org/Maemo_Summit_2009/Schedule/Day_1#Skype_on_Maemo Skype on Maemo]&#039;&#039;&#039;&lt;br /&gt;
&#039;&#039;Mark Douglas, Mobile Product Manager, Skype&#039;&#039;&lt;br /&gt;
| &#039;&#039;&#039;[http://wiki.maemo.org/Maemo_Summit_2009/Schedule/Day_1#Developer_Support_for_Maemo_by_Forum_Nokia Developer Support for Maemo by Forum Nokia]&#039;&#039;&#039;&lt;br /&gt;
&#039;&#039;Matt Collins, Director, Forum Nokia Marketing&#039;&#039;&lt;br /&gt;
| &#039;&#039;&#039;[http://wiki.maemo.org/Maemo_Summit_2009/Schedule/Day_1#Porting_an_OpenGL_game_to_GL_ES Porting an OpenGL game to GL ES]&#039;&#039;&#039;&lt;br /&gt;
&#039;&#039;Oliver Mcfadden, Software Engineer, Nokia&#039;&#039; &lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
20:00    &#039;&#039;&#039;Maemo Party in FlexBar&#039;&#039;&#039; DJ&#039;s [http://valeriecherie.blogspot.com/2008/02/from-britain-with-love.html Russ Chimes] &amp;amp; [http://www.trashmenagerie.com/mixes/2008/04/01/grums-nllr-mixtape/ Grum]  (check the mixtapes!) visuals by [http://www.xploitec.org/blog/?page_id=103 Xploitec VJ&#039;s]. coordinated by Jussi Mäkinen. It&#039;s a public bar and the doors are open to anybody. Our &#039;&#039;program&#039;&#039; will go until 23h or so, but the bar is open until really late with good music. Special cocktail hour sponsored by the lovely Skype people. Don&#039;t forget the Saturday schedule, though.  :)&lt;br /&gt;
&lt;br /&gt;
=== [[/Day 2 | Saturday, October 10]] ===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;2&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Time&lt;br /&gt;
! N900&lt;br /&gt;
! N810&lt;br /&gt;
! N800&lt;br /&gt;
! 770&lt;br /&gt;
|-&lt;br /&gt;
| align=&amp;quot;right&amp;quot; | 9.00  &lt;br /&gt;
| colspan=&amp;quot;4&amp;quot; align=&amp;quot;center&amp;quot; | Doors Open&lt;br /&gt;
|- &lt;br /&gt;
| 10.00 - 10.15 &lt;br /&gt;
| colspan=&amp;quot;4&amp;quot; align=&amp;quot;center&amp;quot; | &#039;&#039;&#039;Welcome to Community days&#039;&#039;&#039;&amp;lt;br/&amp;gt;&#039;&#039;Maemo Community Council&#039;&#039;&amp;lt;br/&amp;gt;([http://www.youtube.com/watch?v=6Mm-OS__8V0 Video])&lt;br /&gt;
|- &lt;br /&gt;
| 10.15 - 10:45 &lt;br /&gt;
| colspan=&amp;quot;4&amp;quot; align=&amp;quot;center&amp;quot; | &#039;&#039;&#039;Keynote: Ton Roosendaal, the Blender Foundation&#039;&#039;&#039;&lt;br /&gt;
|- &lt;br /&gt;
| 10.45 - 11:00&lt;br /&gt;
| colspan=&amp;quot;4&amp;quot; align=&amp;quot;center&amp;quot; | Coffee-break&lt;br /&gt;
|- &lt;br /&gt;
| 11.00 - 11.25 &lt;br /&gt;
| [[/Day 2#Designing_UI_for_Maemo_5 | &#039;&#039;&#039;Designing UI for Maemo 5&#039;&#039;&#039;]]&amp;lt;br /&amp;gt;&lt;br /&gt;
&#039;&#039;Mox Soini&#039;&#039;&amp;lt;br /&amp;gt;([http://www.slideshare.net/moximillian/soini-designing-ui-for-maemo-5 Slides])&lt;br /&gt;
| [[/Day 2#PyQt_application_development_on_Maemo | &#039;&#039;&#039;PyQt application development on Maemo&#039;&#039;&#039;]]&amp;lt;br /&amp;gt;&lt;br /&gt;
&#039;&#039;Attila Csipa&#039;&#039;&amp;lt;br /&amp;gt;([http://www.slideshare.net/guestb404461/pyqt-application-development-on-maemo Slides], [http://web.atombiztos.hu/pyqt_on_maemo.zip .odp with demo videos])&lt;br /&gt;
|rowspan=&amp;quot;2&amp;quot; | [[/Day 2#Getting_started_session | &#039;&#039;&#039;Getting started session&#039;&#039;&#039;]]&amp;lt;br /&amp;gt;&#039;&#039;Daniel Wilms and others&#039;&#039;&lt;br /&gt;
| ------&lt;br /&gt;
|-&lt;br /&gt;
| 11.30 - 11.55 &lt;br /&gt;
| [[/Day 2#Personalizing_your_Maemo_5_device | &#039;&#039;&#039;Personalizing your Maemo 5 device&#039;&#039;&#039;]]&amp;lt;br/&amp;gt;&#039;&#039;Hartti Suomela&#039;&#039;&lt;br /&gt;
| [[/Day 2#Canola_application_and_framework_for_rich_GUI | &#039;&#039;&#039;Canola application and framework for rich GUI&#039;&#039;&#039;]]&amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;Gustavo Sverzut Barbieri&#039;&#039;&lt;br /&gt;
| ------&lt;br /&gt;
|-&lt;br /&gt;
| 12.00 - 12.25 &lt;br /&gt;
| [[/Day 2#Modest.2C_email_client_for_Fremantle | &#039;&#039;&#039;Modest, email client for Fremantle&#039;&#039;&#039;]] &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;Sergio Villar, Jose Dapena&#039;&#039;&lt;br /&gt;
| [[/Day_2#Introducing_the_Harmattan_UI_framework | &#039;&#039;&#039;Introducing the Harmattan UI framework&#039;&#039;&#039;]]&amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;Tomas Junnonen&#039;&#039;&lt;br /&gt;
| [[/Day 2#Maemomm:_Maemo_with_C.2B.2B_and_a_Gtkmm_flavour | &#039;&#039;&#039;Maemomm: Maemo with C++ and a Gtkmm flavour&#039;&#039;&#039;]]&amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;David King&#039;&#039;&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; | [[/Day 2#Extras.2Fautobuilder.2Finterfaces_round-table | &#039;&#039;&#039;Extras/autobuilder/interfaces round-table&#039;&#039;&#039;]]&lt;br /&gt;
|-&lt;br /&gt;
| 12.30 - 12.55 &lt;br /&gt;
| [[/Day_2#Maemo_Co-creation | &#039;&#039;&#039;Maemo Co-Creation Showcase&#039;&#039;&#039;]]&amp;lt;br /&amp;gt;&lt;br /&gt;
&#039;&#039;Jussi Mäkinen&#039;&#039;&lt;br /&gt;
| [[/Day 2#Creating_packages_for_the_Maemo_platform | &#039;&#039;&#039;Creating packages for the Maemo platform&#039;&#039;&#039;]] &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;Jeremiah Foster&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
[http://www.slideshare.net/miahfost/packaging-for-the-maemo-platform (slides)]&lt;br /&gt;
| [[/Day 2#Developments_in_The_Qt_WebKit_Integration | &#039;&#039;&#039;Developments in The Qt WebKit Integration&#039;&#039;&#039;]] &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;Kenneth Rohde Christiansen&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
| 13.00 - 14.30 &lt;br /&gt;
| colspan=&amp;quot;4&amp;quot; align=&amp;quot;center&amp;quot; | Lunch&lt;br /&gt;
|-&lt;br /&gt;
| 14.30 - 15.25&lt;br /&gt;
| colspan=&amp;quot;4&amp;quot; | &#039;&#039;&#039;[[/Lightning talks | Lightning talks]]&#039;&#039;&#039;, 5 min each &lt;br /&gt;
# [[/Lightning talks#Giving_Great_Presentations | &#039;&#039;&#039;Giving Great Presentations&#039;&#039;&#039;]] - &#039;&#039;Dave Neary&#039;&#039;&lt;br /&gt;
# [[/Lightning talks#Feedhandler_-_Integrating_RSS_newsreaders_with_the_browser | &#039;&#039;&#039;Feedhandler - Integrating RSS newsreaders with the browser&#039;&#039;&#039;]] - &#039;&#039;Thomas Perl&#039;&#039;&lt;br /&gt;
# [[/Lightning talks#python-mafw:_MAFW_framework_for_Python_developers | &#039;&#039;&#039;python-mafw: MAFW framework for Python developers&#039;&#039;&#039;]] - &#039;&#039;Andrea Grandi&#039;&#039; - [http://www.slideshare.net/andy80/pythonmafw-intoduction-at-maemo-summit-2009 (Slides)]&lt;br /&gt;
# [[/Lightning talks#DVCS.3F_git.3F_-_How_does_that_work_then.3F | &#039;&#039;&#039;DVCS? git? - How does that work then?&#039;&#039;&#039;]] - &#039;&#039;David Greaves&#039;&#039; - [http://www.slideshare.net/mrlbt/git-how-does-that-work-then (Slides)]&lt;br /&gt;
# [[/Lightning_talks#BlueMaemo_-_Bluetooth_HID_mouse_.26_keyboard_for_Maemo | &#039;&#039;&#039;BlueMaemo - Bluetooth HID mouse &amp;amp; keyboard for Maemo&#039;&#039;&#039;]] - &#039;&#039;Valério Valério&#039;&#039; [http://www.slideshare.net/VDVsx/bluemaemo-bluetooth-hid-mouse-keyboard-for-maemo (Slides)]&lt;br /&gt;
# [[/Lightning_talks#Continous_Integration_with_CruiseControl_and_Scratchbox | &#039;&#039;&#039;Continous Integration with CruiseControl and Scratchbox&#039;&#039;&#039;]] - &#039;&#039;Jani Mikkonen&#039;&#039; [http://www.slideshare.net/rasjani/continuous-integration-with-scratchbox-and-cruisecontrol (Slides)]&lt;br /&gt;
# [[/Lightning_talks#Conboy.2C_Tomboy_and_Snowy | &#039;&#039;&#039;Conboy, Tomboy and Snowy&#039;&#039;&#039;]] - &#039;&#039;Cornelius Hald&#039;&#039;&lt;br /&gt;
# [[/Lightning_talks#Ogg_support_status | &#039;&#039;&#039;Ogg support status&#039;&#039;&#039;]] - &#039;&#039;Tuomas Kulve&#039;&#039;&lt;br /&gt;
# [[/Lightning_talks#Maemo_Platform_Security | &#039;&#039;&#039;Maemo Platform Security&#039;&#039;&#039;]] - &#039;&#039;Elena Reshetova&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
| 15:25 - 15:45&lt;br /&gt;
| colspan=&amp;quot;4&amp;quot; align=&amp;quot;center&amp;quot; | Break&lt;br /&gt;
|-&lt;br /&gt;
| 15.45 - 16.10 &lt;br /&gt;
| [[/Day 2#GUPnP_and_Rygel:_The_UPnP.2FDLNA_solution_for_Maemo | &#039;&#039;&#039;GUPnP and Rygel: The UPnP/DLNA solution for Maemo&#039;&#039;&#039;]]&amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;Zeeshan Ali&#039;&#039; [http://github.com/zeenix/rygel-presentation-2009/raw/maemo-summit/slides.odp (slides)]&lt;br /&gt;
| [[/Day 2#Adapting_GNOME_applications_to_Maemo_Fremantle | &#039;&#039;&#039;Adapting GNOME applications to Maemo Fremantle&#039;&#039;&#039;]]&amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;Joaquim Rocha&#039;&#039; [http://www.slideshare.net/j_rocha/adapting-gnome-applications-to-maemo-fremantle (slides)]&lt;br /&gt;
| [[/Day 2#Contributing_with_Git_.26_Gitorious | &#039;&#039;&#039;Contributing with Git &amp;amp; Gitorious&#039;&#039;&#039;]]&amp;lt;br/&amp;gt;Johan Sørensen&lt;br /&gt;
| [[/Day_2#High-resolution_image_processing_on_Maemo_devices | &#039;&#039;&#039;High-resolution image processing on Maemo devices&#039;&#039;&#039;]]&amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;Alexander Bokovoy&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
| 16.15 - 16.40 &lt;br /&gt;
| [[/Day 2#Mer:_A_year_after| &#039;&#039;&#039;Mer: A year after&#039;&#039;&#039;]]&amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;Carsten Valdemar Munk&#039;&#039; [http://www.slideshare.net/carstenmunk/mer-a-year-after (slides)]&lt;br /&gt;
| [[/Day_2#Intelligent_Usage_of_Fremantle_Location_Framework_For_Location-aware_Applications | &#039;&#039;&#039;Intelligent Usage of Fremantle Location Framework For Location-aware Applications&#039;&#039;&#039;]]&amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;Quanyi Sun&#039;&#039;&lt;br /&gt;
| [[/Day 2#Hildon_toolkit_for_Fremantle | &#039;&#039;&#039;Hildon toolkit for Fremantle&#039;&#039;&#039;]]&amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;Alberto Garcia, Claudio Saavedra&#039;&#039;&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; | [[/Day_2#Git_hands-on_workshop | &#039;&#039;&#039;Git hands-on workshop&#039;&#039;&#039;]]&amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;David Greaves&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
| 16.45 - 17.10 &lt;br /&gt;
| [[/Day 2#maemo.org_Bug_Management | &#039;&#039;&#039;maemo.org Bug Management&#039;&#039;&#039;]]&amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;Andre Klapper&#039;&#039; [http://home.arcor.de/ak-47/en/linux/maemosummit2009.pdf (slides)]&lt;br /&gt;
| [[/Day 2#Go-to_market_opportunities_for_mobile_application_developers | &#039;&#039;&#039;Go-to market opportunities for mobile application developers&#039;&#039;&#039;]]&amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;Boaz Zilberman&#039;&#039;&lt;br /&gt;
| [[/Day_2#Tracker:_Dial_M_for_Metadata | &#039;&#039;&#039;Tracker: Dial M for Metadata&#039;&#039;&#039;]]&amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;Ivan Frade, Iridian Kiiskinen&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
| 17.10 - 17.30 &lt;br /&gt;
| colspan=&amp;quot;4&amp;quot; align=&amp;quot;center&amp;quot; | Break&lt;br /&gt;
|-&lt;br /&gt;
| 17.30 - 17.55 &lt;br /&gt;
| [[/Day 2#Canola:_Beyond_the_media_playback | &#039;&#039;&#039;Canola: Beyond the media playback&#039;&#039;&#039;]]&amp;lt;br/&amp;gt;&#039;&#039;Eduardo Lima&#039;&#039;&lt;br /&gt;
| [[/Day 2#Hands-on_development_with_Nokia_Web_Runtime | &#039;&#039;&#039;Hands-on development with Nokia Web Runtime&#039;&#039;&#039;]]&amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;Oren Levine&#039;&#039; [http://www.slideshare.net/olevine/handson-development-with-nokia-web-runtime (Slides)] [http://www.forum.nokia.com/Technology_Topics/Web_Technologies/Web_Runtime/ (More information)]&lt;br /&gt;
| [[/Day 2#The_Qt_Mobility_Project | &#039;&#039;&#039;The Qt Mobility Project&#039;&#039;&#039;]]&amp;lt;br/&amp;gt;&#039;&#039;Alex Luddy&#039;&#039;&lt;br /&gt;
| [[/Day_2#Hacking_officially_unsupported_Bluetooth_profiles_to_work_in_Fremantle | &#039;&#039;&#039;Hacking officially unsupported Bluetooth profiles to work in Fremantle&#039;&#039;&#039;]]&amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;Johan Hedberg&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
| 18.00 - 18.25 &lt;br /&gt;
| [[/Day_2#The_Maemo_5_Address_Book | &#039;&#039;&#039;The Maemo 5 Address Book&#039;&#039;&#039;]]&amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;Mathias Hasselmann, Travis Reiter&#039;&#039;&lt;br /&gt;
| [[/Day 2#Publishing_your_software_through_maemo.org | &#039;&#039;&#039;Publishing your software through maemo.org&#039;&#039;&#039;]] &amp;lt;br/&amp;gt;&#039;&#039;Niels Breet&#039;&#039;&lt;br /&gt;
| [[/Day_2#Maemo_and_oFono | &#039;&#039;&#039;Maemo and oFono&#039;&#039;&#039;]]&amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;Aki Niemi, Rémi Denis-Courmont&#039;&#039;&lt;br /&gt;
| [[/Day_2#The_future_of_GTK.2B.2FHildon_in_Maemo_Harmattan | &#039;&#039;&#039;The future of GTK+/Hildon in Maemo Harmattan&#039;&#039;&#039;]]&amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;Alberto Garcia, Claudio Saavedra&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
| 18.45 - 20.30 &lt;br /&gt;
| colspan=&amp;quot;4&amp;quot; align=&amp;quot;center&amp;quot; | Maemo Drinks in N900 room&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== [[/Day 3 | Sunday, October 11]] ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;2&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Time&lt;br /&gt;
! N900&lt;br /&gt;
! N810&lt;br /&gt;
! N800&lt;br /&gt;
! 770&lt;br /&gt;
|-&lt;br /&gt;
| align=&amp;quot;right&amp;quot; | 9.00  &lt;br /&gt;
| colspan=&amp;quot;4&amp;quot; align=&amp;quot;center&amp;quot; | Doors Open&lt;br /&gt;
|- &lt;br /&gt;
| 10.00 - 10.45 &lt;br /&gt;
| colspan=&amp;quot;4&amp;quot; align=&amp;quot;center&amp;quot; | [[/Day 3#Fremantle_Stars_showcase | &#039;&#039;&#039;Fremantle Stars showcase&#039;&#039;&#039;]]&amp;lt;br/&amp;gt;Including liqbase, OSM2Go, [http://mauku.innologies.com Mauku], OMWeather [http://www.slideshare.net/vasvlad/omweather-in-maemo-summit-2009 (Slides+notes)], eCoach and more.&lt;br /&gt;
|- &lt;br /&gt;
| 10.45 - 11.00 &lt;br /&gt;
| colspan=&amp;quot;4&amp;quot; align=&amp;quot;center&amp;quot; | Coffee-break&lt;br /&gt;
|- &lt;br /&gt;
| 11.00 - 11.25 &lt;br /&gt;
| [[/Day 3#Maemo_Browser_for_power_users  | &#039;&#039;&#039;Maemo Browser for power users&#039;&#039;&#039;]]&amp;lt;br/&amp;gt; &#039;&#039;Mikko Korpelainen&#039;&#039; - [http://www.slideshare.net/mtkorpel/maemo-browser (presentation content)]&lt;br /&gt;
&amp;lt;br/&amp;gt; [[/Day 3#Maemo_Browser_evolution  | &#039;&#039;Maemo Browser evolution&#039;&#039;]]&amp;lt;br/&amp;gt; &#039;&#039;Oleg Romashin&#039;&#039;&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;br/&amp;gt; [[/Day 3#Maemo_Browser_extension_development  | &#039;&#039;Maemo Browser extension development&#039;&#039;]]&amp;lt;br/&amp;gt; &#039;&#039;Sudarsana Nagineni&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
| [[/Day 3#JamMo_-_Jamming_mobile_game_for_children | &#039;&#039;&#039;JamMo - Jamming mobile game for children&#039;&#039;&#039;]]&amp;lt;br /&amp;gt;&lt;br /&gt;
&#039;&#039;Aapo Rantalainen&#039;&#039;&lt;br /&gt;
| [[/Day_3#Building_for_Mer | &#039;&#039;&#039;Building for Mer&#039;&#039;&#039;]]&amp;lt;br/&amp;gt;&#039;&#039;David Greaves&#039;&#039; - [http://www.slideshare.net/mrlbt/building-for-mer (Slides+notes)]&amp;lt;br/&amp;gt;[[Mer/Build | (see also Mer Build page)]]&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; | [[/Day 3#Hackathon:_Integrating_Canola_with_Fremantle | &#039;&#039;&#039;Canola Fremantle Hackathon&#039;&#039;&#039;]]&lt;br /&gt;
|-&lt;br /&gt;
| 11.30 - 11.55 &lt;br /&gt;
| [[/Day 3#Maemo_documentation_co-creation  | &#039;&#039;&#039;Maemo documentation co-creation &#039;&#039;&#039;]]&amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;Dave Neary&#039;&#039;&lt;br /&gt;
| [[/Day_3#Designing_QT_application_for_Maemo_5_and_Maemo_6 | &#039;&#039;&#039;Designing Qt application for Maemo 5 and Maemo 6&#039;&#039;&#039;]] &amp;lt;br/&amp;gt;&#039;&#039;Sergiy Dubovik, Ian Monroe&#039;&#039;&lt;br /&gt;
| [[/Day 3#Writing_plugins_for_MAFW | &#039;&#039;&#039;Writing plugins for MAFW &#039;&#039;&#039;]]&amp;lt;br/&amp;gt;&#039;&#039;Iago Toral&#039;&#039; [http://blogs.igalia.com/itoral/2009/10/11/writing-mafw-plugins-talk-maemo-summit/ (blog post with slides and source code examples)]&lt;br /&gt;
|-&lt;br /&gt;
| 12.00 - 12.25 &lt;br /&gt;
| [[/Day_3#Mobile_Office_based_on_KOffice_Open_Source_Project | &#039;&#039;&#039;Mobile Office based on KOffice Open Source Project&#039;&#039;&#039;]]&amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;Suresh Chande&#039;&#039; [http://sureshchande.blogspot.com/2009/10/mobile-office-based-on-koffice-for.html (blog post + video demo)]&lt;br /&gt;
| [[/Day 3#Handheld_Glom:_Easy_database_applications | &#039;&#039;&#039;Handheld Glom: Easy database applications&#039;&#039;&#039;]] &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;Murray Cumming&#039;&#039;&lt;br /&gt;
| [[/Day_3#Maemo_Platform_Security:_Principles_and_Concepts | &#039;&#039;&#039;Maemo Platform Security: Principles and Concepts&#039;&#039;&#039;]] &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;Elena Reshetova&#039;&#039;&lt;br /&gt;
|[[/Day_3#Extending_the_Hildon_desktop | &#039;&#039;&#039;Extending the Hildon desktop &#039;&#039;&#039;]]&amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;Marc Ordinas i Llopis&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
| 12.30 - 12.55 &lt;br /&gt;
| [[/Day 3#Towards_painless_and_quality_translations | &#039;&#039;&#039;Towards painless and quality translations&#039;&#039;&#039;]]&amp;lt;br/&amp;gt;Dimitris Glezos ([http://media.indifex.com/other/maesum.pdf slides])&lt;br /&gt;
| [[/Day_3#10_Tips_for_Designing_Mobile_Widgets | &#039;&#039;&#039;10 Tips for Designing Mobile Widgets&#039;&#039;&#039;]] &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;Rajesh Lal&#039;&#039; ([http://www.slideshare.net/rajeshlal/ten-tips-for-designing-mobile-widgets-2009-q3-maemo-summit-v1 slideshare], [http://irajesh.com/files/10TipsForDesigningMobileWidgets.pdf pdf], [http://irajesh.com/files/10TipsForDesigningMobileWidgets.ppt ppt], [http://irajesh.com/files/10TipsForDesigningMobileWidgets.pps pps])&lt;br /&gt;
| [[/Day_3#Telepathy_on_Maemo | &#039;&#039;&#039;Telepathy on Maemo&#039;&#039;&#039;]]&amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;Marco Barisione&#039;&#039;&lt;br /&gt;
| [[/Day_3#What_to_do_about_.2Fopt_in_Fremantle | &#039;&#039;&#039;What to do about /opt in Fremantle&#039;&#039;&#039;]]&amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;Marius Vollmer&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
| 13.00 - 14.30 &lt;br /&gt;
| colspan=&amp;quot;4&amp;quot; align=&amp;quot;center&amp;quot; | Lunch&lt;br /&gt;
|-&lt;br /&gt;
| 14.30 - 15.25&lt;br /&gt;
| colspan=&amp;quot;4&amp;quot; | &#039;&#039;&#039;[[/Lightning talks | Lightning talks]]&#039;&#039;&#039;, 5 min each &lt;br /&gt;
# [[/Lightning talks#Issues_on_adapting_Maemo_4_application_to_Maemo_5 | &#039;&#039;&#039;Issues on adapting Maemo 4 application to Maemo 5&#039;&#039;&#039;]] - &#039;&#039;Aniello del Sorbo&#039;&#039; - [http://www.slideshare.net/anidel/issues-on-adapting-maemo-4-applications-to-maemo-5-2229255 (Slides)]&lt;br /&gt;
# [[/Lightning talks#How_to_speed_up_your_Maemo_application_development | &#039;&#039;&#039;How to speed up your Maemo application development&#039;&#039;&#039;]] - &#039;&#039;Raul Herbster&#039;&#039;&lt;br /&gt;
# [[/Lightning talks#Development_Nirvana:_How_Maemo_Application_Development_Should_Be | &#039;&#039;&#039;Development Nirvana: How Maemo Application Development Should Be&#039;&#039;&#039;]] - &#039;&#039;Andrew Flegg&#039;&#039;&lt;br /&gt;
# [[/Lightning talks#GSoC_presentation:_BitTorrent_plugin_for_Canola | &#039;&#039;&#039;GSoC presentation: BitTorrent plugin for Canola&#039;&#039;&#039;]] - &#039;&#039;Lauri Võsandi&#039;&#039;&lt;br /&gt;
# [[/Lightning talks#GSoC_Project_presentation:_Picasa_plugin_for_Canola | &#039;&#039;&#039;GSoC Project presentation: Picasa plugin for Canola&#039;&#039;&#039;]] - &#039;&#039;Andrei Mirestean&#039;&#039;&lt;br /&gt;
# [[/Lightning talks#Behaviour-Driven_Development_on_Maemo | &#039;&#039;&#039;Behaviour-Driven Development on Maemo&#039;&#039;&#039;]] - &#039;&#039;Jose Teixeira&#039;&#039;&lt;br /&gt;
# [[/Lightning_talks#N900_HW_architecture_overview_.26_power_management | &#039;&#039;&#039;N900 HW architecture overview &amp;amp; power management&#039;&#039;&#039;]] - &#039;&#039;Igor Stoppa&#039;&#039;&lt;br /&gt;
# [[/Lightning talks#From_corporations_to_communities:_responsible_and_effective_engagement | &#039;&#039;&#039;From corporations to communities: responsible and effective engagement&#039;&#039;&#039;]] - &#039;&#039;Randall &amp;quot;Texrat&amp;quot; Arnold&#039;&#039;&lt;br /&gt;
# [[/Lightning talks#Mer_from_a_user.27s_perspective | &#039;&#039;&#039;Mer from a user&#039;s perspective&#039;&#039;&#039;]] - &#039;&#039;Tomasz Dominikowski&#039;&#039; - [http://www.slideshare.net/guest8106d9c/mer-from-users-perspective (Slides)]&lt;br /&gt;
# [[/Lightning talks#Nokia_PUSH_N900_Project_Showcase | &#039;&#039;&#039;Nokia PUSH N900 Project Showcase&#039;&#039;&#039;]] - &#039;&#039;Ben Mason and Gary Birkett&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
| 15.30 - 16.00 &lt;br /&gt;
| colspan=&amp;quot;4&amp;quot; align=&amp;quot;center&amp;quot; | Grand Finale&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== News ==&lt;br /&gt;
Link here Summit related news that made it to the homepage of recognized media.&lt;br /&gt;
* Made it to homepage of slideshare.net as Spotlight: Maemo Summit 2009, Amsterdam in the right navigation&lt;br /&gt;
&lt;br /&gt;
== User-created content ==&lt;br /&gt;
&lt;br /&gt;
===Tagged===&lt;br /&gt;
&lt;br /&gt;
Please use the tag &amp;quot;maesum&amp;quot; (or hashtag &amp;quot;#maesum&amp;quot; on Identi.ca/Twitter) to tag your content.&lt;br /&gt;
&lt;br /&gt;
Here are some helpful links to search for Maemo Summit content:&lt;br /&gt;
&lt;br /&gt;
* [http://www.flickr.com/photos/tags/maesum/interesting/ maesum on Flickr]&lt;br /&gt;
* [http://picasaweb.google.com/lh/view?q=maesum&amp;amp;psc=G maesum on Picasa]&lt;br /&gt;
* [http://search.twitter.com/search?q=maesum maesum on Twitter]&lt;br /&gt;
* [http://identi.ca/tag/maesum maesum on Identi.ca]&lt;br /&gt;
* [http://www.youtube.com/results?search_query=+%22maesum%22 maesum on YouTube]&lt;br /&gt;
* [http://technorati.com/search/maesum maesum on Technorati]&lt;br /&gt;
* [http://www.slideshare.net/event/maemo-summit-2009 maesum on Slideshare]&lt;br /&gt;
* [http://vimeo.com/tag:maesum maesum on Vimeo]&lt;br /&gt;
&lt;br /&gt;
===Blogs===&lt;br /&gt;
&lt;br /&gt;
See [http://planet.maemo.org Planet Maemo] for some additional posts.&lt;br /&gt;
&lt;br /&gt;
* [http://freebirdbr.wordpress.com/2009/10/12/maemo-summit-2009-dia-1/ Day 1], [http://freebirdbr.wordpress.com/2009/10/12/maemo-summit-2009-dia-2/ Day 2], [http://freebirdbr.wordpress.com/2009/10/13/maemo-summit-2009-dia-3/ Day 3] and two special posts on [http://freebirdbr.wordpress.com/2009/10/09/mitos-do-n900-n900-roda-mesmo-quake-iii/ Quake III on Maemo] and [http://freebirdbr.wordpress.com/2009/10/13/maemo-co-creation-workshop/ Co-creation workshop] at [http://freebirdbr.wordpress.com/2009/10/12/maemo-summit-2009-dia-1/ Free Bird] (&#039;&#039;&#039;&#039;&#039;in portuguese&#039;&#039;&#039;&#039;&#039;); automatic translations (by Google Translate) [http://translate.google.com/translate?u=http%3A%2F%2Ffreebirdbr.wordpress.com%2F2009%2F10%2F12%2Fmaemo-summit-2009-dia-1%2F&amp;amp;sl=&amp;amp;tl=en Day 1], [http://translate.google.com/translate?u=http%3A%2F%2Ffreebirdbr.wordpress.com%2F2009%2F10%2F12%2Fmaemo-summit-2009-dia-2%2F&amp;amp;sl=&amp;amp;tl=en Day 2], [http://translate.google.com/translate?u=http%3A%2F%2Ffreebirdbr.wordpress.com%2F2009%2F10%2F13%2Fmaemo-summit-2009-dia-3%2F&amp;amp;sl=&amp;amp;tl=en Day 3], [http://translate.google.com/translate?u=http%3A%2F%2Ffreebirdbr.wordpress.com%2F2009%2F10%2F09%2Fmitos-do-n900-n900-roda-mesmo-quake-iii%2F&amp;amp;sl=&amp;amp;tl=en Quake III on Maemo] and [http://translate.google.com/translate?u=http%3A%2F%2Ffreebirdbr.wordpress.com%2F2009%2F10%2F13%2Fmaemo-co-creation-workshop%2F&amp;amp;sl=&amp;amp;tl=en Co-creation workshop]&lt;br /&gt;
* Live blogging at [http://maemotalk.com/ Maemo Talk]: [http://maemotalk.com/2009/10/09/maemo-summit-2009-day-1/ Day 1], [http://maemotalk.com/2009/10/10/maemo-summit-2009-day-2/ Day 2], [http://maemotalk.com/2009/10/11/maemo-summit-2009-day-3/ Day 3]&lt;br /&gt;
* [http://blog.bdesmet.be/?p=228 biertie&#039;s blogpost]&lt;br /&gt;
* Add a link to your blog post here&lt;br /&gt;
&lt;br /&gt;
===Videos===&lt;br /&gt;
&lt;br /&gt;
Please add videos that have been taken directly at the Summit (Talks, Interviews, etc..).&lt;br /&gt;
&lt;br /&gt;
* [http://www.youtube.com/watch?v=n7a2Vz9msq4 Quake 3 Presentation]&lt;br /&gt;
* [http://www.youtube.com/watch?v=-xzD7UrrP9w Intro Video (N900 room, Friday morning)]&lt;br /&gt;
* [http://vimeo.com/7109463 Mer: how the community innovates]&lt;br /&gt;
* [http://vimeo.com/7059150 Summit Finale] &lt;br /&gt;
* Add a link to your video here&lt;br /&gt;
&lt;br /&gt;
===Photos===&lt;br /&gt;
&lt;br /&gt;
Please add links to your photos, either as a Flickr photoset, Picasa album or personal website.&lt;br /&gt;
&lt;br /&gt;
* [http://www.flickr.com/photos/63684846@N00/sets/72157622451059219/ thp&#039;s photos on Flickr]&lt;br /&gt;
* [http://www.flickr.com/photos/43614522@N08/ rajesh lal&#039;s photos on Flickr]&lt;br /&gt;
* Add a link to your photos here&lt;br /&gt;
&lt;br /&gt;
== Old ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;font-size: 1em;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;sections&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;column&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;section&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;h2&amp;gt;Schedule&amp;lt;/h2&amp;gt;&lt;br /&gt;
&amp;lt;ul class=&amp;quot;document&amp;quot;&amp;gt;{{Summit 2009 Schedule}}&lt;br /&gt;
&amp;lt;/ul&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;section&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;h2&amp;gt;Location&amp;lt;/h2&amp;gt;&lt;br /&gt;
&amp;lt;ul class=&amp;quot;help&amp;quot;&amp;gt;{{Summit 2009 Location}}&lt;br /&gt;
&amp;lt;/ul&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;section&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;h2&amp;gt;Attendees&amp;lt;/h2&amp;gt;&lt;br /&gt;
&amp;lt;ul class=&amp;quot;help&amp;quot;&amp;gt;{{Summit 2009 Attendees}}&amp;lt;/ul&amp;gt;&lt;br /&gt;
* [[Maemo_Summit_2009/Speakers|Information for Speakers]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;column&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;section&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;h2&amp;gt;Organization&amp;lt;/h2&amp;gt;&lt;br /&gt;
&amp;lt;ul class=&amp;quot;help&amp;quot;&amp;gt;{{Summit 2009 Organization}}&lt;br /&gt;
&amp;lt;/ul&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Latest News ===&lt;br /&gt;
&amp;lt;rss title=&amp;quot;off&amp;quot; desc=&amp;quot;off&amp;quot; number=&amp;quot;10&amp;quot; time=&amp;quot;3600&amp;quot;&amp;gt;http://search.twitter.com/search.rss?q=%23maesum&amp;lt;/rss&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Community|Mer]]&lt;/div&gt;</summary>
		<author><name>192.100.124.219</name></author>
	</entry>
	<entry>
		<id>https://maemo.octonezd.me/index.php?title=Maemo_Summit_2009&amp;diff=20115</id>
		<title>Maemo Summit 2009</title>
		<link rel="alternate" type="text/html" href="https://maemo.octonezd.me/index.php?title=Maemo_Summit_2009&amp;diff=20115"/>
		<updated>2009-10-19T09:44:58Z</updated>

		<summary type="html">&lt;p&gt;192.100.124.219: /*  Saturday, October 10 */ added link to my slides&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;div style=&amp;quot;font-weight:bold;&amp;quot;&amp;gt;October 9-10-11, 2009- [http://www.westergasfabriek.nl/english/engels_welcome.php WesterGasFabriek] - Amsterdam&amp;lt;/div&amp;gt;&lt;br /&gt;
[[Image:Westergas.png‎]]&lt;br /&gt;
&lt;br /&gt;
== Conference archive ==&lt;br /&gt;
Videos, slides and other materials related to the sessions. Feel free to update your own.&lt;br /&gt;
&lt;br /&gt;
=== Thursday, October 8 ===&lt;br /&gt;
&lt;br /&gt;
17:00 - 19:00 Registration at the Community Room (Zuiveringshal Oost). &#039;&#039;&#039;Early registrations encouraged to avoid queues and stress on Friday morning!&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
19:00 - 00:00 The official get together on Thursday will be [http://www.indewildeman.nl/indexe.html In de Wildeman], a beer house ([http://maps.google.nl/maps?f=q&amp;amp;source=s_q&amp;amp;hl=en&amp;amp;geocode=&amp;amp;q=Kolksteeg+3+1012+PT+Amsterdam&amp;amp;sll=52.377171,4.897242&amp;amp;sspn=0.005803,0.016512&amp;amp;ie=UTF8&amp;amp;hq=&amp;amp;hnear=Kolksteeg+3,+1012+Amsterdam,+North+Holland&amp;amp;t=h&amp;amp;z=16 Map]).&lt;br /&gt;
&lt;br /&gt;
=== [[/Schedule/Day 1 | Friday, October 9]] ===&lt;br /&gt;
&lt;br /&gt;
9:00    Registration at the Community Room (Zuiveringshal Oost). &#039;&#039;&#039;Come early: you won&#039;t get to the conference without your badge.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
10:00   &#039;&#039;&#039;Programme starts at N900 (Transformatorhuis)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
10:00    &#039;&#039;&#039;Welcome - Opening of Summit &#039;&#039;&#039; by [http://maemo.org/profile/view/peterschneider.html Peter Schneider], Head of Maemo Marketing @ Nokia&lt;br /&gt;
&lt;br /&gt;
10:15     &#039;&#039;&#039;[http://wiki.maemo.org/Maemo_Summit_2009/Schedule/Day_1#Maemo_5_and_the_N900 Maemo 5 and the Nokia N900] by [http://maemo.org/profile/view/jaaksi/ Ari Jaaksi], VP - Maemo Devices @ Nokia [http://www.slideshare.net/peterschneider/maemo-and-the-nokia-n900 (slides)]&lt;br /&gt;
&lt;br /&gt;
11:00    &#039;&#039;&#039;[http://wiki.maemo.org/Maemo_Summit_2009/Schedule/Day_1#Changing_PC_.26_Mobile_Landscape.3B_Why_Linux_will_play_a_Critical_Role Changing PC &amp;amp; Mobile Landscape; Why Linux will play a Critical Role]&#039;&#039;&#039;  by Jim Zemlin, Executive Director @ Linux Foundation&lt;br /&gt;
&lt;br /&gt;
11:30  &#039;&#039;&#039;Break&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
11:45    &#039;&#039;&#039;[http://wiki.maemo.org/Maemo_Summit_2009/Schedule/Day_1#Nokia_Nseries_Devices_on_Maemo Nokia Nseries Devices on Maemo]&#039;&#039;&#039; by Jose-Luis Martinez Merino, VP, Marketing @ Nokia [http://www.slideshare.net/peterschneider/nokia-nseries-and-maemo-6 (slides)]&lt;br /&gt;
&lt;br /&gt;
12:15    &#039;&#039;&#039;[http://wiki.maemo.org/Maemo_Summit_2009/Schedule/Day_1#Harmattan_Highlights_-_Developer_Opportunities Harmattan Highlights - Developer Opportunities]&#039;&#039;&#039; by Janne Heikkinen, Director - Maemo Product Planning @ Nokia [http://www.slideshare.net/peterschneider/maemo-5-developer-offering (Maemo 5 slides)] - [http://www.slideshare.net/peterschneider/maemo-6-technology-highlights (Maemo 6 slides)]&lt;br /&gt;
&lt;br /&gt;
13:00  &#039;&#039;&#039;Lunch - Maemo Expo opens&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
14:15  &#039;&#039;&#039;[http://wiki.maemo.org/Maemo_Summit_2009/Schedule/Day_1#Why_the_Maemo_Community_matters_to_Nokia Why the Maemo Community matters to Nokia]&#039;&#039;&#039; - Alan &amp;quot;[http://maemo.org/profile/view/qole/ qole]&amp;quot; Bruce of [[Community Council|Maemo Community Council]] interviewing Ari Jaaksi, VP - Maemo Devices @ Nokia&lt;br /&gt;
&lt;br /&gt;
15:00      &#039;&#039;&#039;Expert streams&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;2&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Time&lt;br /&gt;
! N900 - &#039;&#039;chair: John Loughney&#039;&#039;&lt;br /&gt;
! N810 - &#039;&#039;chair: Anthony Fabbricino&#039;&#039;&lt;br /&gt;
! N800 - &#039;&#039;chair: Quim Gil&#039;&#039; &lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| 15:00 - 15:25 &lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; | &#039;&#039;&#039;[http://wiki.maemo.org/Maemo_Summit_2009/Schedule/Day_1#UX_panel UX Panel]&#039;&#039;&#039; &lt;br /&gt;
&#039;&#039;Moderated by: [http://maemo.org/profile/view/timsamoff Tim Samoff], Maemo Council,&#039;&#039;&lt;br /&gt;
&#039;&#039;with Harri Kiljander, Director Maemo UX Design and Martin Schüle, Principal Designer Maemo 5&#039;&#039;&lt;br /&gt;
| &#039;&#039;&#039;UI design of Maemo 5 apps&#039;&#039;&#039;&lt;br /&gt;
&#039;&#039;Annu-Maaria Nivala, UX team, Digia&#039;&#039; [http://www.slideshare.net/annumaaria/ui-design-of-maemo-5-apps-digia (slides)]&lt;br /&gt;
| &#039;&#039;&#039;[http://wiki.maemo.org/Maemo_Summit_2009/Schedule/Day_1#Cross-platform_with_Qt_-_live Cross-platform with Qt - live]&#039;&#039;&#039;&lt;br /&gt;
&#039;&#039;Ariya Hidayat, Software Engineer, Nokia&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
| 15:30 - 15:55 &lt;br /&gt;
| &#039;&#039;&#039;[http://wiki.maemo.org/Maemo_Summit_2009/Schedule/Day_1#Developing_widgets_on_Maemo_5_-_showcase_Foreca_Weather Developing widgets on Maemo 5 - showcase Foreca Weather]&#039;&#039;&#039;&lt;br /&gt;
&#039;&#039;Juha Järvi, Software Designer, Foreca&#039;&#039;&lt;br /&gt;
| &#039;&#039;&#039;[http://wiki.maemo.org/Maemo_Summit_2009/Schedule/Day_1#Mer_-_how_the_community_innovates Mer - how the community innovates]&#039;&#039;&#039;&lt;br /&gt;
&#039;&#039;Carsten Munk, Lead Developer, Mer project&#039;&#039; [http://www.slideshare.net/carstenmunk/mer-how-the-community-innovates (slides)]&lt;br /&gt;
|-&lt;br /&gt;
| 16.00 - 16.25 &lt;br /&gt;
| &#039;&#039;&#039;[http://wiki.maemo.org/Maemo_Summit_2009/Schedule/Day_1#Firefox_on_Maemo Firefox on Maemo]&#039;&#039;&#039;&lt;br /&gt;
&#039;&#039;Stuart Parmenter, Director of Engineering, Mozilla&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
| &#039;&#039;&#039;Developing apps with Qt for Maemo5&#039;&#039;&#039;&lt;br /&gt;
&#039;&#039;Kate Alhola, Forum Nokia, Chief Guru on Maemo&lt;br /&gt;
| | &#039;&#039;&#039;[http://wiki.maemo.org/Maemo_Summit_2009/Schedule/Day_1#Your_foundation_for_open-source_innovation:_TI.E2.80.99s_OMAP_processor-based_Zoom_platform Your foundation for open-source innovation:  TI’s OMAP processor-based Zoom platform]&#039;&#039;&#039;&lt;br /&gt;
&#039;&#039;Ameet Suri, Texas Instruments&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
| 16.30 - 16.55&lt;br /&gt;
| &#039;&#039;&#039;[http://wiki.maemo.org/Maemo_Summit_2009/Schedule/Day_1#Present_and_future_of_Maemo_digital_marketing Present andd future of Maemo digital marketing]&#039;&#039;&#039;&lt;br /&gt;
&#039;&#039;Isko Salminen, Production Manager, Activeark &amp;amp; Jussi Mäkinen, Maemo Marketing, Nokia&#039;&#039;&#039;&lt;br /&gt;
| &#039;&#039;&#039;Developing apps with Qt on Harmattan&#039;&#039;&#039;&lt;br /&gt;
&#039;&#039;Ville Lavonius, Product Manager Developer Offering, Nokia&#039;&#039;&lt;br /&gt;
| &#039;&#039;&#039;Feedservice and plug-ins development in Maemo 5&#039;&#039;&#039;&lt;br /&gt;
&#039;&#039;Mikko Levonmaa, Ixonos&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
| 17.00 - 17.25 &lt;br /&gt;
| &#039;&#039;&#039;[http://wiki.maemo.org/Maemo_Summit_2009/Schedule/Day_1#Biz_apps_on_Maemo Biz apps on Maemo]&#039;&#039;&#039;&lt;br /&gt;
&#039;&#039;Kari Pikkarainen, Product Manager Productivity, Nokia&#039;&#039;&lt;br /&gt;
| &#039;&#039;&#039;Developing apps with Nokia Web Runtime&#039;&#039;&#039;&lt;br /&gt;
&#039;&#039;Santtu Ahonen, Head of Developer Offering, Nokia&#039;&#039;&lt;br /&gt;
| &#039;&#039;&#039;[http://www.slideshare.net/jtukkine/maemo-6-harmattan-architecture-overview Harmattan Architecture Overview]&#039;&#039;&#039;&lt;br /&gt;
&#039;&#039;Juha Tukkinen, Principal Engineer, Maemo Devices, Nokia&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
| 17.30 - 18.00 &lt;br /&gt;
| &#039;&#039;&#039;[http://wiki.maemo.org/Maemo_Summit_2009/Schedule/Day_1#Skype_on_Maemo Skype on Maemo]&#039;&#039;&#039;&lt;br /&gt;
&#039;&#039;Mark Douglas, Mobile Product Manager, Skype&#039;&#039;&lt;br /&gt;
| &#039;&#039;&#039;[http://wiki.maemo.org/Maemo_Summit_2009/Schedule/Day_1#Developer_Support_for_Maemo_by_Forum_Nokia Developer Support for Maemo by Forum Nokia]&#039;&#039;&#039;&lt;br /&gt;
&#039;&#039;Matt Collins, Director, Forum Nokia Marketing&#039;&#039;&lt;br /&gt;
| &#039;&#039;&#039;[http://wiki.maemo.org/Maemo_Summit_2009/Schedule/Day_1#Porting_an_OpenGL_game_to_GL_ES Porting an OpenGL game to GL ES]&#039;&#039;&#039;&lt;br /&gt;
&#039;&#039;Oliver Mcfadden, Software Engineer, Nokia&#039;&#039; &lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
20:00    &#039;&#039;&#039;Maemo Party in FlexBar&#039;&#039;&#039; DJ&#039;s [http://valeriecherie.blogspot.com/2008/02/from-britain-with-love.html Russ Chimes] &amp;amp; [http://www.trashmenagerie.com/mixes/2008/04/01/grums-nllr-mixtape/ Grum]  (check the mixtapes!) visuals by [http://www.xploitec.org/blog/?page_id=103 Xploitec VJ&#039;s]. coordinated by Jussi Mäkinen. It&#039;s a public bar and the doors are open to anybody. Our &#039;&#039;program&#039;&#039; will go until 23h or so, but the bar is open until really late with good music. Special cocktail hour sponsored by the lovely Skype people. Don&#039;t forget the Saturday schedule, though.  :)&lt;br /&gt;
&lt;br /&gt;
=== [[/Day 2 | Saturday, October 10]] ===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;2&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Time&lt;br /&gt;
! N900&lt;br /&gt;
! N810&lt;br /&gt;
! N800&lt;br /&gt;
! 770&lt;br /&gt;
|-&lt;br /&gt;
| align=&amp;quot;right&amp;quot; | 9.00  &lt;br /&gt;
| colspan=&amp;quot;4&amp;quot; align=&amp;quot;center&amp;quot; | Doors Open&lt;br /&gt;
|- &lt;br /&gt;
| 10.00 - 10.15 &lt;br /&gt;
| colspan=&amp;quot;4&amp;quot; align=&amp;quot;center&amp;quot; | &#039;&#039;&#039;Welcome to Community days&#039;&#039;&#039;&amp;lt;br/&amp;gt;&#039;&#039;Maemo Community Council&#039;&#039;&amp;lt;br/&amp;gt;([http://www.youtube.com/watch?v=6Mm-OS__8V0 Video])&lt;br /&gt;
|- &lt;br /&gt;
| 10.15 - 10:45 &lt;br /&gt;
| colspan=&amp;quot;4&amp;quot; align=&amp;quot;center&amp;quot; | &#039;&#039;&#039;Keynote: Ton Roosendaal, the Blender Foundation&#039;&#039;&#039;&lt;br /&gt;
|- &lt;br /&gt;
| 10.45 - 11:00&lt;br /&gt;
| colspan=&amp;quot;4&amp;quot; align=&amp;quot;center&amp;quot; | Coffee-break&lt;br /&gt;
|- &lt;br /&gt;
| 11.00 - 11.25 &lt;br /&gt;
| [[/Day 2#Designing_UI_for_Maemo_5 | &#039;&#039;&#039;Designing UI for Maemo 5&#039;&#039;&#039;]]&amp;lt;br /&amp;gt;&lt;br /&gt;
&#039;&#039;Mox Soini&#039;&#039;&amp;lt;br /&amp;gt;([http://www.slideshare.net/moximillian/soini-designing-ui-for-maemo-5 Slides])&lt;br /&gt;
| [[/Day 2#PyQt_application_development_on_Maemo | &#039;&#039;&#039;PyQt application development on Maemo&#039;&#039;&#039;]]&amp;lt;br /&amp;gt;&lt;br /&gt;
&#039;&#039;Attila Csipa&#039;&#039;&amp;lt;br /&amp;gt;([http://www.slideshare.net/guestb404461/pyqt-application-development-on-maemo Slides], [http://web.atombiztos.hu/pyqt_on_maemo.zip .odp with demo videos])&lt;br /&gt;
|rowspan=&amp;quot;2&amp;quot; | [[/Day 2#Getting_started_session | &#039;&#039;&#039;Getting started session&#039;&#039;&#039;]]&amp;lt;br /&amp;gt;&#039;&#039;Daniel Wilms and others&#039;&#039;&lt;br /&gt;
| ------&lt;br /&gt;
|-&lt;br /&gt;
| 11.30 - 11.55 &lt;br /&gt;
| [[/Day 2#Personalizing_your_Maemo_5_device | &#039;&#039;&#039;Personalizing your Maemo 5 device&#039;&#039;&#039;]]&amp;lt;br/&amp;gt;&#039;&#039;Hartti Suomela&#039;&#039;&lt;br /&gt;
| [[/Day 2#Canola_application_and_framework_for_rich_GUI | &#039;&#039;&#039;Canola application and framework for rich GUI&#039;&#039;&#039;]]&amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;Gustavo Sverzut Barbieri&#039;&#039;&lt;br /&gt;
| ------&lt;br /&gt;
|-&lt;br /&gt;
| 12.00 - 12.25 &lt;br /&gt;
| [[/Day 2#Modest.2C_email_client_for_Fremantle | &#039;&#039;&#039;Modest, email client for Fremantle&#039;&#039;&#039;]] &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;Sergio Villar, Jose Dapena&#039;&#039;&lt;br /&gt;
| [[/Day_2#Introducing_the_Harmattan_UI_framework | &#039;&#039;&#039;Introducing the Harmattan UI framework&#039;&#039;&#039;]]&amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;Tomas Junnonen&#039;&#039;&lt;br /&gt;
| [[/Day 2#Maemomm:_Maemo_with_C.2B.2B_and_a_Gtkmm_flavour | &#039;&#039;&#039;Maemomm: Maemo with C++ and a Gtkmm flavour&#039;&#039;&#039;]]&amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;David King&#039;&#039;&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; | [[/Day 2#Extras.2Fautobuilder.2Finterfaces_round-table | &#039;&#039;&#039;Extras/autobuilder/interfaces round-table&#039;&#039;&#039;]]&lt;br /&gt;
|-&lt;br /&gt;
| 12.30 - 12.55 &lt;br /&gt;
| [[/Day_2#Maemo_Co-creation | &#039;&#039;&#039;Maemo Co-Creation Showcase&#039;&#039;&#039;]]&amp;lt;br /&amp;gt;&lt;br /&gt;
&#039;&#039;Jussi Mäkinen&#039;&#039;&lt;br /&gt;
| [[/Day 2#Creating_packages_for_the_Maemo_platform | &#039;&#039;&#039;Creating packages for the Maemo platform&#039;&#039;&#039;]] &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;Jeremiah Foster&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
[http://www.slideshare.net/miahfost/packaging-for-the-maemo-platform (slides)]&lt;br /&gt;
| [[/Day 2#Developments_in_The_Qt_WebKit_Integration | &#039;&#039;&#039;Developments in The Qt WebKit Integration&#039;&#039;&#039;]] &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;Kenneth Rohde Christiansen&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
| 13.00 - 14.30 &lt;br /&gt;
| colspan=&amp;quot;4&amp;quot; align=&amp;quot;center&amp;quot; | Lunch&lt;br /&gt;
|-&lt;br /&gt;
| 14.30 - 15.25&lt;br /&gt;
| colspan=&amp;quot;4&amp;quot; | &#039;&#039;&#039;[[/Lightning talks | Lightning talks]]&#039;&#039;&#039;, 5 min each &lt;br /&gt;
# [[/Lightning talks#Giving_Great_Presentations | &#039;&#039;&#039;Giving Great Presentations&#039;&#039;&#039;]] - &#039;&#039;Dave Neary&#039;&#039;&lt;br /&gt;
# [[/Lightning talks#Feedhandler_-_Integrating_RSS_newsreaders_with_the_browser | &#039;&#039;&#039;Feedhandler - Integrating RSS newsreaders with the browser&#039;&#039;&#039;]] - &#039;&#039;Thomas Perl&#039;&#039;&lt;br /&gt;
# [[/Lightning talks#python-mafw:_MAFW_framework_for_Python_developers | &#039;&#039;&#039;python-mafw: MAFW framework for Python developers&#039;&#039;&#039;]] - &#039;&#039;Andrea Grandi&#039;&#039; - [http://www.slideshare.net/andy80/pythonmafw-intoduction-at-maemo-summit-2009 (Slides)]&lt;br /&gt;
# [[/Lightning talks#DVCS.3F_git.3F_-_How_does_that_work_then.3F | &#039;&#039;&#039;DVCS? git? - How does that work then?&#039;&#039;&#039;]] - &#039;&#039;David Greaves&#039;&#039; - [http://www.slideshare.net/mrlbt/git-how-does-that-work-then (Slides)]&lt;br /&gt;
# [[/Lightning_talks#BlueMaemo_-_Bluetooth_HID_mouse_.26_keyboard_for_Maemo | &#039;&#039;&#039;BlueMaemo - Bluetooth HID mouse &amp;amp; keyboard for Maemo&#039;&#039;&#039;]] - &#039;&#039;Valério Valério&#039;&#039; [http://www.slideshare.net/VDVsx/bluemaemo-bluetooth-hid-mouse-keyboard-for-maemo (Slides)]&lt;br /&gt;
# [[/Lightning_talks#Continous_Integration_with_CruiseControl_and_Scratchbox | &#039;&#039;&#039;Continous Integration with CruiseControl and Scratchbox&#039;&#039;&#039;]] - &#039;&#039;Jani Mikkonen&#039;&#039; [http://www.slideshare.net/rasjani/continuous-integration-with-scratchbox-and-cruisecontrol (Slides)]&lt;br /&gt;
# [[/Lightning_talks#Conboy.2C_Tomboy_and_Snowy | &#039;&#039;&#039;Conboy, Tomboy and Snowy&#039;&#039;&#039;]] - &#039;&#039;Cornelius Hald&#039;&#039;&lt;br /&gt;
# [[/Lightning_talks#Ogg_support_status | &#039;&#039;&#039;Ogg support status&#039;&#039;&#039;]] - &#039;&#039;Tuomas Kulve&#039;&#039;&lt;br /&gt;
# [[/Lightning_talks#Maemo_Platform_Security | &#039;&#039;&#039;Maemo Platform Security&#039;&#039;&#039;]] - &#039;&#039;Elena Reshetova&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
| 15:25 - 15:45&lt;br /&gt;
| colspan=&amp;quot;4&amp;quot; align=&amp;quot;center&amp;quot; | Break&lt;br /&gt;
|-&lt;br /&gt;
| 15.45 - 16.10 &lt;br /&gt;
| [[/Day 2#GUPnP_and_Rygel:_The_UPnP.2FDLNA_solution_for_Maemo | &#039;&#039;&#039;GUPnP and Rygel: The UPnP/DLNA solution for Maemo&#039;&#039;&#039;]]&amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;Zeeshan Ali&#039;&#039;&lt;br /&gt;
| [[/Day 2#Adapting_GNOME_applications_to_Maemo_Fremantle | &#039;&#039;&#039;Adapting GNOME applications to Maemo Fremantle&#039;&#039;&#039;]]&amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;Joaquim Rocha&#039;&#039; [http://www.slideshare.net/j_rocha/adapting-gnome-applications-to-maemo-fremantle (slides)]&lt;br /&gt;
| [[/Day 2#Contributing_with_Git_.26_Gitorious | &#039;&#039;&#039;Contributing with Git &amp;amp; Gitorious&#039;&#039;&#039;]]&amp;lt;br/&amp;gt;Johan Sørensen&lt;br /&gt;
| [[/Day_2#High-resolution_image_processing_on_Maemo_devices | &#039;&#039;&#039;High-resolution image processing on Maemo devices&#039;&#039;&#039;]]&amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;Alexander Bokovoy&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
| 16.15 - 16.40 &lt;br /&gt;
| [[/Day 2#Mer:_A_year_after| &#039;&#039;&#039;Mer: A year after&#039;&#039;&#039;]]&amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;Carsten Valdemar Munk&#039;&#039; [http://www.slideshare.net/carstenmunk/mer-a-year-after (slides)]&lt;br /&gt;
| [[/Day_2#Intelligent_Usage_of_Fremantle_Location_Framework_For_Location-aware_Applications | &#039;&#039;&#039;Intelligent Usage of Fremantle Location Framework For Location-aware Applications&#039;&#039;&#039;]]&amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;Quanyi Sun&#039;&#039;&lt;br /&gt;
| [[/Day 2#Hildon_toolkit_for_Fremantle | &#039;&#039;&#039;Hildon toolkit for Fremantle&#039;&#039;&#039;]]&amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;Alberto Garcia, Claudio Saavedra&#039;&#039;&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; | [[/Day_2#Git_hands-on_workshop | &#039;&#039;&#039;Git hands-on workshop&#039;&#039;&#039;]]&amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;David Greaves&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
| 16.45 - 17.10 &lt;br /&gt;
| [[/Day 2#maemo.org_Bug_Management | &#039;&#039;&#039;maemo.org Bug Management&#039;&#039;&#039;]]&amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;Andre Klapper&#039;&#039; [http://home.arcor.de/ak-47/en/linux/maemosummit2009.pdf (slides)]&lt;br /&gt;
| [[/Day 2#Go-to_market_opportunities_for_mobile_application_developers | &#039;&#039;&#039;Go-to market opportunities for mobile application developers&#039;&#039;&#039;]]&amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;Boaz Zilberman&#039;&#039;&lt;br /&gt;
| [[/Day_2#Tracker:_Dial_M_for_Metadata | &#039;&#039;&#039;Tracker: Dial M for Metadata&#039;&#039;&#039;]]&amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;Ivan Frade, Iridian Kiiskinen&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
| 17.10 - 17.30 &lt;br /&gt;
| colspan=&amp;quot;4&amp;quot; align=&amp;quot;center&amp;quot; | Break&lt;br /&gt;
|-&lt;br /&gt;
| 17.30 - 17.55 &lt;br /&gt;
| [[/Day 2#Canola:_Beyond_the_media_playback | &#039;&#039;&#039;Canola: Beyond the media playback&#039;&#039;&#039;]]&amp;lt;br/&amp;gt;&#039;&#039;Eduardo Lima&#039;&#039;&lt;br /&gt;
| [[/Day 2#Hands-on_development_with_Nokia_Web_Runtime | &#039;&#039;&#039;Hands-on development with Nokia Web Runtime&#039;&#039;&#039;]]&amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;Oren Levine&#039;&#039; [http://www.slideshare.net/olevine/handson-development-with-nokia-web-runtime (Slides)] [http://www.forum.nokia.com/Technology_Topics/Web_Technologies/Web_Runtime/ (More information)]&lt;br /&gt;
| [[/Day 2#The_Qt_Mobility_Project | &#039;&#039;&#039;The Qt Mobility Project&#039;&#039;&#039;]]&amp;lt;br/&amp;gt;&#039;&#039;Alex Luddy&#039;&#039;&lt;br /&gt;
| [[/Day_2#Hacking_officially_unsupported_Bluetooth_profiles_to_work_in_Fremantle | &#039;&#039;&#039;Hacking officially unsupported Bluetooth profiles to work in Fremantle&#039;&#039;&#039;]]&amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;Johan Hedberg&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
| 18.00 - 18.25 &lt;br /&gt;
| [[/Day_2#The_Maemo_5_Address_Book | &#039;&#039;&#039;The Maemo 5 Address Book&#039;&#039;&#039;]]&amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;Mathias Hasselmann, Travis Reiter&#039;&#039;&lt;br /&gt;
| [[/Day 2#Publishing_your_software_through_maemo.org | &#039;&#039;&#039;Publishing your software through maemo.org&#039;&#039;&#039;]] &amp;lt;br/&amp;gt;&#039;&#039;Niels Breet&#039;&#039;&lt;br /&gt;
| [[/Day_2#Maemo_and_oFono | &#039;&#039;&#039;Maemo and oFono&#039;&#039;&#039;]]&amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;Aki Niemi, Rémi Denis-Courmont&#039;&#039;&lt;br /&gt;
| [[/Day_2#The_future_of_GTK.2B.2FHildon_in_Maemo_Harmattan | &#039;&#039;&#039;The future of GTK+/Hildon in Maemo Harmattan&#039;&#039;&#039;]]&amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;Alberto Garcia, Claudio Saavedra&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
| 18.45 - 20.30 &lt;br /&gt;
| colspan=&amp;quot;4&amp;quot; align=&amp;quot;center&amp;quot; | Maemo Drinks in N900 room&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== [[/Day 3 | Sunday, October 11]] ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;2&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Time&lt;br /&gt;
! N900&lt;br /&gt;
! N810&lt;br /&gt;
! N800&lt;br /&gt;
! 770&lt;br /&gt;
|-&lt;br /&gt;
| align=&amp;quot;right&amp;quot; | 9.00  &lt;br /&gt;
| colspan=&amp;quot;4&amp;quot; align=&amp;quot;center&amp;quot; | Doors Open&lt;br /&gt;
|- &lt;br /&gt;
| 10.00 - 10.45 &lt;br /&gt;
| colspan=&amp;quot;4&amp;quot; align=&amp;quot;center&amp;quot; | [[/Day 3#Fremantle_Stars_showcase | &#039;&#039;&#039;Fremantle Stars showcase&#039;&#039;&#039;]]&amp;lt;br/&amp;gt;Including liqbase, OSM2Go, [http://mauku.innologies.com Mauku], OMWeather [http://www.slideshare.net/vasvlad/omweather-in-maemo-summit-2009 (Slides+notes)], eCoach and more.&lt;br /&gt;
|- &lt;br /&gt;
| 10.45 - 11.00 &lt;br /&gt;
| colspan=&amp;quot;4&amp;quot; align=&amp;quot;center&amp;quot; | Coffee-break&lt;br /&gt;
|- &lt;br /&gt;
| 11.00 - 11.25 &lt;br /&gt;
| [[/Day 3#Maemo_Browser_for_power_users  | &#039;&#039;&#039;Maemo Browser for power users&#039;&#039;&#039;]]&amp;lt;br/&amp;gt; &#039;&#039;Mikko Korpelainen&#039;&#039; - [http://www.slideshare.net/mtkorpel/maemo-browser (presentation content)]&lt;br /&gt;
&amp;lt;br/&amp;gt; [[/Day 3#Maemo_Browser_evolution  | &#039;&#039;Maemo Browser evolution&#039;&#039;]]&amp;lt;br/&amp;gt; &#039;&#039;Oleg Romashin&#039;&#039;&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;br/&amp;gt; [[/Day 3#Maemo_Browser_extension_development  | &#039;&#039;Maemo Browser extension development&#039;&#039;]]&amp;lt;br/&amp;gt; &#039;&#039;Sudarsana Nagineni&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
| [[/Day 3#JamMo_-_Jamming_mobile_game_for_children | &#039;&#039;&#039;JamMo - Jamming mobile game for children&#039;&#039;&#039;]]&amp;lt;br /&amp;gt;&lt;br /&gt;
&#039;&#039;Aapo Rantalainen&#039;&#039;&lt;br /&gt;
| [[/Day_3#Building_for_Mer | &#039;&#039;&#039;Building for Mer&#039;&#039;&#039;]]&amp;lt;br/&amp;gt;&#039;&#039;David Greaves&#039;&#039; - [http://www.slideshare.net/mrlbt/building-for-mer (Slides+notes)]&amp;lt;br/&amp;gt;[[Mer/Build | (see also Mer Build page)]]&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; | [[/Day 3#Hackathon:_Integrating_Canola_with_Fremantle | &#039;&#039;&#039;Canola Fremantle Hackathon&#039;&#039;&#039;]]&lt;br /&gt;
|-&lt;br /&gt;
| 11.30 - 11.55 &lt;br /&gt;
| [[/Day 3#Maemo_documentation_co-creation  | &#039;&#039;&#039;Maemo documentation co-creation &#039;&#039;&#039;]]&amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;Dave Neary&#039;&#039;&lt;br /&gt;
| [[/Day_3#Designing_QT_application_for_Maemo_5_and_Maemo_6 | &#039;&#039;&#039;Designing Qt application for Maemo 5 and Maemo 6&#039;&#039;&#039;]] &amp;lt;br/&amp;gt;&#039;&#039;Sergiy Dubovik, Ian Monroe&#039;&#039;&lt;br /&gt;
| [[/Day 3#Writing_plugins_for_MAFW | &#039;&#039;&#039;Writing plugins for MAFW &#039;&#039;&#039;]]&amp;lt;br/&amp;gt;&#039;&#039;Iago Toral&#039;&#039; [http://blogs.igalia.com/itoral/2009/10/11/writing-mafw-plugins-talk-maemo-summit/ (blog post with slides and source code examples)]&lt;br /&gt;
|-&lt;br /&gt;
| 12.00 - 12.25 &lt;br /&gt;
| [[/Day_3#Mobile_Office_based_on_KOffice_Open_Source_Project | &#039;&#039;&#039;Mobile Office based on KOffice Open Source Project&#039;&#039;&#039;]]&amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;Suresh Chande&#039;&#039; [http://sureshchande.blogspot.com/2009/10/mobile-office-based-on-koffice-for.html (blog post + video demo)]&lt;br /&gt;
| [[/Day 3#Handheld_Glom:_Easy_database_applications | &#039;&#039;&#039;Handheld Glom: Easy database applications&#039;&#039;&#039;]] &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;Murray Cumming&#039;&#039;&lt;br /&gt;
| [[/Day_3#Maemo_Platform_Security:_Principles_and_Concepts | &#039;&#039;&#039;Maemo Platform Security: Principles and Concepts&#039;&#039;&#039;]] &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;Elena Reshetova&#039;&#039;&lt;br /&gt;
|[[/Day_3#Extending_the_Hildon_desktop | &#039;&#039;&#039;Extending the Hildon desktop &#039;&#039;&#039;]]&amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;Marc Ordinas i Llopis&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
| 12.30 - 12.55 &lt;br /&gt;
| [[/Day 3#Towards_painless_and_quality_translations | &#039;&#039;&#039;Towards painless and quality translations&#039;&#039;&#039;]]&amp;lt;br/&amp;gt;Dimitris Glezos ([http://media.indifex.com/other/maesum.pdf slides])&lt;br /&gt;
| [[/Day_3#10_Tips_for_Designing_Mobile_Widgets | &#039;&#039;&#039;10 Tips for Designing Mobile Widgets&#039;&#039;&#039;]] &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;Rajesh Lal&#039;&#039; ([http://www.slideshare.net/rajeshlal/ten-tips-for-designing-mobile-widgets-2009-q3-maemo-summit-v1 slideshare], [http://irajesh.com/files/10TipsForDesigningMobileWidgets.pdf pdf], [http://irajesh.com/files/10TipsForDesigningMobileWidgets.ppt ppt], [http://irajesh.com/files/10TipsForDesigningMobileWidgets.pps pps])&lt;br /&gt;
| [[/Day_3#Telepathy_on_Maemo | &#039;&#039;&#039;Telepathy on Maemo&#039;&#039;&#039;]]&amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;Marco Barisione&#039;&#039;&lt;br /&gt;
| [[/Day_3#What_to_do_about_.2Fopt_in_Fremantle | &#039;&#039;&#039;What to do about /opt in Fremantle&#039;&#039;&#039;]]&amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;Marius Vollmer&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
| 13.00 - 14.30 &lt;br /&gt;
| colspan=&amp;quot;4&amp;quot; align=&amp;quot;center&amp;quot; | Lunch&lt;br /&gt;
|-&lt;br /&gt;
| 14.30 - 15.25&lt;br /&gt;
| colspan=&amp;quot;4&amp;quot; | &#039;&#039;&#039;[[/Lightning talks | Lightning talks]]&#039;&#039;&#039;, 5 min each &lt;br /&gt;
# [[/Lightning talks#Issues_on_adapting_Maemo_4_application_to_Maemo_5 | &#039;&#039;&#039;Issues on adapting Maemo 4 application to Maemo 5&#039;&#039;&#039;]] - &#039;&#039;Aniello del Sorbo&#039;&#039; - [http://www.slideshare.net/anidel/issues-on-adapting-maemo-4-applications-to-maemo-5-2229255 (Slides)]&lt;br /&gt;
# [[/Lightning talks#How_to_speed_up_your_Maemo_application_development | &#039;&#039;&#039;How to speed up your Maemo application development&#039;&#039;&#039;]] - &#039;&#039;Raul Herbster&#039;&#039;&lt;br /&gt;
# [[/Lightning talks#Development_Nirvana:_How_Maemo_Application_Development_Should_Be | &#039;&#039;&#039;Development Nirvana: How Maemo Application Development Should Be&#039;&#039;&#039;]] - &#039;&#039;Andrew Flegg&#039;&#039;&lt;br /&gt;
# [[/Lightning talks#GSoC_presentation:_BitTorrent_plugin_for_Canola | &#039;&#039;&#039;GSoC presentation: BitTorrent plugin for Canola&#039;&#039;&#039;]] - &#039;&#039;Lauri Võsandi&#039;&#039;&lt;br /&gt;
# [[/Lightning talks#GSoC_Project_presentation:_Picasa_plugin_for_Canola | &#039;&#039;&#039;GSoC Project presentation: Picasa plugin for Canola&#039;&#039;&#039;]] - &#039;&#039;Andrei Mirestean&#039;&#039;&lt;br /&gt;
# [[/Lightning talks#Behaviour-Driven_Development_on_Maemo | &#039;&#039;&#039;Behaviour-Driven Development on Maemo&#039;&#039;&#039;]] - &#039;&#039;Jose Teixeira&#039;&#039;&lt;br /&gt;
# [[/Lightning_talks#N900_HW_architecture_overview_.26_power_management | &#039;&#039;&#039;N900 HW architecture overview &amp;amp; power management&#039;&#039;&#039;]] - &#039;&#039;Igor Stoppa&#039;&#039;&lt;br /&gt;
# [[/Lightning talks#From_corporations_to_communities:_responsible_and_effective_engagement | &#039;&#039;&#039;From corporations to communities: responsible and effective engagement&#039;&#039;&#039;]] - &#039;&#039;Randall &amp;quot;Texrat&amp;quot; Arnold&#039;&#039;&lt;br /&gt;
# [[/Lightning talks#Mer_from_a_user.27s_perspective | &#039;&#039;&#039;Mer from a user&#039;s perspective&#039;&#039;&#039;]] - &#039;&#039;Tomasz Dominikowski&#039;&#039; - [http://www.slideshare.net/guest8106d9c/mer-from-users-perspective (Slides)]&lt;br /&gt;
# [[/Lightning talks#Nokia_PUSH_N900_Project_Showcase | &#039;&#039;&#039;Nokia PUSH N900 Project Showcase&#039;&#039;&#039;]] - &#039;&#039;Ben Mason and Gary Birkett&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
| 15.30 - 16.00 &lt;br /&gt;
| colspan=&amp;quot;4&amp;quot; align=&amp;quot;center&amp;quot; | Grand Finale&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== News ==&lt;br /&gt;
Link here Summit related news that made it to the homepage of recognized media.&lt;br /&gt;
* Made it to homepage of slideshare.net as Spotlight: Maemo Summit 2009, Amsterdam in the right navigation&lt;br /&gt;
&lt;br /&gt;
== User-created content ==&lt;br /&gt;
&lt;br /&gt;
===Tagged===&lt;br /&gt;
&lt;br /&gt;
Please use the tag &amp;quot;maesum&amp;quot; (or hashtag &amp;quot;#maesum&amp;quot; on Identi.ca/Twitter) to tag your content.&lt;br /&gt;
&lt;br /&gt;
Here are some helpful links to search for Maemo Summit content:&lt;br /&gt;
&lt;br /&gt;
* [http://www.flickr.com/photos/tags/maesum/interesting/ maesum on Flickr]&lt;br /&gt;
* [http://picasaweb.google.com/lh/view?q=maesum&amp;amp;psc=G maesum on Picasa]&lt;br /&gt;
* [http://search.twitter.com/search?q=maesum maesum on Twitter]&lt;br /&gt;
* [http://identi.ca/tag/maesum maesum on Identi.ca]&lt;br /&gt;
* [http://www.youtube.com/results?search_query=+%22maesum%22 maesum on YouTube]&lt;br /&gt;
* [http://technorati.com/search/maesum maesum on Technorati]&lt;br /&gt;
* [http://www.slideshare.net/event/maemo-summit-2009 maesum on Slideshare]&lt;br /&gt;
* [http://vimeo.com/tag:maesum maesum on Vimeo]&lt;br /&gt;
&lt;br /&gt;
===Blogs===&lt;br /&gt;
&lt;br /&gt;
See [http://planet.maemo.org Planet Maemo] for some additional posts.&lt;br /&gt;
&lt;br /&gt;
* [http://freebirdbr.wordpress.com/2009/10/12/maemo-summit-2009-dia-1/ Day 1], [http://freebirdbr.wordpress.com/2009/10/12/maemo-summit-2009-dia-2/ Day 2], [http://freebirdbr.wordpress.com/2009/10/13/maemo-summit-2009-dia-3/ Day 3] and two special posts on [http://freebirdbr.wordpress.com/2009/10/09/mitos-do-n900-n900-roda-mesmo-quake-iii/ Quake III on Maemo] and [http://freebirdbr.wordpress.com/2009/10/13/maemo-co-creation-workshop/ Co-creation workshop] at [http://freebirdbr.wordpress.com/2009/10/12/maemo-summit-2009-dia-1/ Free Bird] (&#039;&#039;&#039;&#039;&#039;in portuguese&#039;&#039;&#039;&#039;&#039;); automatic translations (by Google Translate) [http://translate.google.com/translate?u=http%3A%2F%2Ffreebirdbr.wordpress.com%2F2009%2F10%2F12%2Fmaemo-summit-2009-dia-1%2F&amp;amp;sl=&amp;amp;tl=en Day 1], [http://translate.google.com/translate?u=http%3A%2F%2Ffreebirdbr.wordpress.com%2F2009%2F10%2F12%2Fmaemo-summit-2009-dia-2%2F&amp;amp;sl=&amp;amp;tl=en Day 2], [http://translate.google.com/translate?u=http%3A%2F%2Ffreebirdbr.wordpress.com%2F2009%2F10%2F13%2Fmaemo-summit-2009-dia-3%2F&amp;amp;sl=&amp;amp;tl=en Day 3], [http://translate.google.com/translate?u=http%3A%2F%2Ffreebirdbr.wordpress.com%2F2009%2F10%2F09%2Fmitos-do-n900-n900-roda-mesmo-quake-iii%2F&amp;amp;sl=&amp;amp;tl=en Quake III on Maemo] and [http://translate.google.com/translate?u=http%3A%2F%2Ffreebirdbr.wordpress.com%2F2009%2F10%2F13%2Fmaemo-co-creation-workshop%2F&amp;amp;sl=&amp;amp;tl=en Co-creation workshop]&lt;br /&gt;
* Live blogging at [http://maemotalk.com/ Maemo Talk]: [http://maemotalk.com/2009/10/09/maemo-summit-2009-day-1/ Day 1], [http://maemotalk.com/2009/10/10/maemo-summit-2009-day-2/ Day 2], [http://maemotalk.com/2009/10/11/maemo-summit-2009-day-3/ Day 3]&lt;br /&gt;
* [http://blog.bdesmet.be/?p=228 biertie&#039;s blogpost]&lt;br /&gt;
* Add a link to your blog post here&lt;br /&gt;
&lt;br /&gt;
===Videos===&lt;br /&gt;
&lt;br /&gt;
Please add videos that have been taken directly at the Summit (Talks, Interviews, etc..).&lt;br /&gt;
&lt;br /&gt;
* [http://www.youtube.com/watch?v=n7a2Vz9msq4 Quake 3 Presentation]&lt;br /&gt;
* [http://www.youtube.com/watch?v=-xzD7UrrP9w Intro Video (N900 room, Friday morning)]&lt;br /&gt;
* [http://vimeo.com/7109463 Mer: how the community innovates]&lt;br /&gt;
* [http://vimeo.com/7059150 Summit Finale] &lt;br /&gt;
* Add a link to your video here&lt;br /&gt;
&lt;br /&gt;
===Photos===&lt;br /&gt;
&lt;br /&gt;
Please add links to your photos, either as a Flickr photoset, Picasa album or personal website.&lt;br /&gt;
&lt;br /&gt;
* [http://www.flickr.com/photos/63684846@N00/sets/72157622451059219/ thp&#039;s photos on Flickr]&lt;br /&gt;
* [http://www.flickr.com/photos/43614522@N08/ rajesh lal&#039;s photos on Flickr]&lt;br /&gt;
* Add a link to your photos here&lt;br /&gt;
&lt;br /&gt;
== Old ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;font-size: 1em;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;sections&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;column&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;section&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;h2&amp;gt;Schedule&amp;lt;/h2&amp;gt;&lt;br /&gt;
&amp;lt;ul class=&amp;quot;document&amp;quot;&amp;gt;{{Summit 2009 Schedule}}&lt;br /&gt;
&amp;lt;/ul&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;section&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;h2&amp;gt;Location&amp;lt;/h2&amp;gt;&lt;br /&gt;
&amp;lt;ul class=&amp;quot;help&amp;quot;&amp;gt;{{Summit 2009 Location}}&lt;br /&gt;
&amp;lt;/ul&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;section&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;h2&amp;gt;Attendees&amp;lt;/h2&amp;gt;&lt;br /&gt;
&amp;lt;ul class=&amp;quot;help&amp;quot;&amp;gt;{{Summit 2009 Attendees}}&amp;lt;/ul&amp;gt;&lt;br /&gt;
* [[Maemo_Summit_2009/Speakers|Information for Speakers]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;column&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;section&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;h2&amp;gt;Organization&amp;lt;/h2&amp;gt;&lt;br /&gt;
&amp;lt;ul class=&amp;quot;help&amp;quot;&amp;gt;{{Summit 2009 Organization}}&lt;br /&gt;
&amp;lt;/ul&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Latest News ===&lt;br /&gt;
&amp;lt;rss title=&amp;quot;off&amp;quot; desc=&amp;quot;off&amp;quot; number=&amp;quot;10&amp;quot; time=&amp;quot;3600&amp;quot;&amp;gt;http://search.twitter.com/search.rss?q=%23maesum&amp;lt;/rss&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Community|Mer]]&lt;/div&gt;</summary>
		<author><name>192.100.124.219</name></author>
	</entry>
	<entry>
		<id>https://maemo.octonezd.me/index.php?title=Maemo.org_Sprints/October_09&amp;diff=17648</id>
		<title>Maemo.org Sprints/October 09</title>
		<link rel="alternate" type="text/html" href="https://maemo.octonezd.me/index.php?title=Maemo.org_Sprints/October_09&amp;diff=17648"/>
		<updated>2009-10-19T04:29:17Z</updated>

		<summary type="html">&lt;p&gt;192.100.124.219: /* Tasks */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== October 2009 Sprint planning ==&lt;br /&gt;
&lt;br /&gt;
* Planning meeting: [http://www.timeanddate.com/worldclock/fixedtime.html?month=10&amp;amp;day=6&amp;amp;year=2009&amp;amp;hour=13&amp;amp;min=30&amp;amp;sec=0 Tuesday, 6th October 13:30 UTC] in [[IRC|#maemo-meeting]].&lt;br /&gt;
* Follows [[maemo.org Sprints/September 09|September 09]]. Precedes [[maemo.org Sprints/November 09|November 09]].&lt;br /&gt;
* Main themes: New council; summit&lt;br /&gt;
&lt;br /&gt;
== Tasks ==&lt;br /&gt;
[[:Category:Ongoing|Ongoing]] tasks carried here from the previous sprint + New tasks committed by their owners in the sprint meeting. They come from the tasks in the [[Maemo.org_backlog|Backlog]] and the [[Maemo.org_proposals|Proposals]].&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
| style=&amp;quot;background:LightGreen&amp;quot; | Completed&lt;br /&gt;
| style=&amp;quot;background:LightBlue&amp;quot; | Good progress&lt;br /&gt;
| Just standing&lt;br /&gt;
| style=&amp;quot;background:Orange&amp;quot; | Some help needed!&lt;br /&gt;
| style=&amp;quot;background:Tomato&amp;quot; | Really stuck/delayed&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Task ID&lt;br /&gt;
! Task&lt;br /&gt;
! Sprint priority&lt;br /&gt;
! Owner&lt;br /&gt;
! Percentage complete&lt;br /&gt;
! Notes&lt;br /&gt;
|- style=&amp;quot;background:Orange&amp;quot;&lt;br /&gt;
| 9.04-05&lt;br /&gt;
| [[Task:Implement new maemo.org layout and style|Implement new maemo.org layout and style - Bugzilla]]&lt;br /&gt;
| Must&lt;br /&gt;
| [http://maemo.org/profile/view/andre/ Andre]&lt;br /&gt;
| 80%&lt;br /&gt;
| &lt;br /&gt;
|- style=&amp;quot;&amp;quot;&lt;br /&gt;
| 9.04-08&lt;br /&gt;
| [[ITP]] process/workflow around [http://test.maemo.org/cgi-bin/itp.cgi prototype]&lt;br /&gt;
| Must&lt;br /&gt;
| [http://maemo.org/profile/view/jeremiah/ Jeremiah]&lt;br /&gt;
| 90%&lt;br /&gt;
|&lt;br /&gt;
|- style=&amp;quot;&amp;quot;&lt;br /&gt;
| 9.08-04&lt;br /&gt;
| Integrate [http://wiki.maemo.org/Extras-testing#Maemian.2FMinimae_checks_after_builds minimae] into package promotion to get infrastructure &amp;amp; UI in place&lt;br /&gt;
| Must&lt;br /&gt;
| [http://maemo.org/profile/view/jeremiah/ Jeremiah]&lt;br /&gt;
| 90%&lt;br /&gt;
|&lt;br /&gt;
|- style=&amp;quot;&amp;quot;&lt;br /&gt;
| 9.08-11&lt;br /&gt;
| Document &amp;amp; communicate packages interface to testers&lt;br /&gt;
| Must&lt;br /&gt;
| [http://maemo.org/profile/view/jaffa/ Jaffa]&lt;br /&gt;
| 0%&lt;br /&gt;
| Not done.&lt;br /&gt;
|- style=&amp;quot;&amp;quot;&lt;br /&gt;
| 9.09-01&lt;br /&gt;
| Push packaging policy updates&lt;br /&gt;
| Must&lt;br /&gt;
| [http://maemo.org/profile/view/xfade/ X-Fade], [http://maemo.org/profile/view/danielwilms/ danielwilms]&lt;br /&gt;
| 40%&lt;br /&gt;
| Make some changes, waiting for Daniel to pass it to Nokia internal team.&lt;br /&gt;
|- style=&amp;quot;&amp;quot;&lt;br /&gt;
| 9.10-01&lt;br /&gt;
| Discuss [[Token_based_access_restriction | Token based access restriction]] at Summit&lt;br /&gt;
| Must&lt;br /&gt;
| [http://maemo.org/profile/view/stskeeps/ Stskeeps], [http://maemo.org/profile/view/xfade/ X-Fade]&lt;br /&gt;
| 0%&lt;br /&gt;
| &lt;br /&gt;
|- style=&amp;quot;background:LightGreen&amp;quot;&lt;br /&gt;
| 9.10-02&lt;br /&gt;
| Define docmaster priorities&lt;br /&gt;
| Must&lt;br /&gt;
| [http://maemo.org/profile/view/dneary/ dneary]&lt;br /&gt;
| DONE&lt;br /&gt;
| Done as part of preparation for summit, and discussions before, during &amp;amp; after summit. First big job: Getting the [[Maemowiki Action Group]] working effectively.&lt;br /&gt;
|- style=&amp;quot;&amp;quot;&lt;br /&gt;
| 9.10-03&lt;br /&gt;
| Implement SSO backend&lt;br /&gt;
| Must&lt;br /&gt;
| [http://maemo.org/profile/view/indeyets/ indeyets]&lt;br /&gt;
| 0%&lt;br /&gt;
| &lt;br /&gt;
|- style=&amp;quot;&amp;quot;&lt;br /&gt;
| 9.10-04&lt;br /&gt;
| Brainstorm: bug fixes and new features&lt;br /&gt;
| Must&lt;br /&gt;
| [http://maemo.org/profile/view/netblade/ NetBlade]&lt;br /&gt;
| 0%&lt;br /&gt;
| [https://bugs.maemo.org/show_bug.cgi?id=5282 Related bug]&lt;br /&gt;
|- style=&amp;quot;&amp;quot;&lt;br /&gt;
| 9.10-05&lt;br /&gt;
| Brainstorm: better categories view&lt;br /&gt;
| Must&lt;br /&gt;
| [http://maemo.org/profile/view/netblade/ NetBlade]&lt;br /&gt;
| 0%&lt;br /&gt;
| &lt;br /&gt;
|- style=&amp;quot;&amp;quot;&lt;br /&gt;
| 9.10-06&lt;br /&gt;
| Brainstorm: automoderation from sandbox to under consideration&lt;br /&gt;
| Must&lt;br /&gt;
| [http://maemo.org/profile/view/netblade/ NetBlade]&lt;br /&gt;
| 0%&lt;br /&gt;
| &lt;br /&gt;
|- style=&amp;quot;&amp;quot;&lt;br /&gt;
| 9.10-07&lt;br /&gt;
| Server migration&lt;br /&gt;
| Must&lt;br /&gt;
| [http://maemo.org/profile/view/feri/ Ferenc]&lt;br /&gt;
| 0%&lt;br /&gt;
| &lt;br /&gt;
|- style=&amp;quot;&amp;quot;&lt;br /&gt;
| 9.10-08&lt;br /&gt;
| Maemo Summit council meeting agenda&lt;br /&gt;
| Must&lt;br /&gt;
| new &amp;amp; old council &amp;amp; maemo.org staff&lt;br /&gt;
| 0%&lt;br /&gt;
| &lt;br /&gt;
|- style=&amp;quot;&amp;quot;&lt;br /&gt;
| 9.08-10&lt;br /&gt;
| Draft [http://wiki.maemo.org/Extras_repository_process_definition#Quality_Assurance quality guidelines] for extras-testing to extras promotion&lt;br /&gt;
| Should&lt;br /&gt;
| [http://maemo.org/profile/view/qgil/ qgil]&lt;br /&gt;
| 10%&lt;br /&gt;
| Drafting at [[Extras-testing#Quality_criteria|Extras-testing Quality_criteria]] + [http://talk.maemo.org/showthread.php?t=30541 tmo discussion].&lt;br /&gt;
|- style=&amp;quot;&amp;quot;&lt;br /&gt;
| 9.10-09&lt;br /&gt;
| Prototype [[Task:Publishing_API_docs | library.maemo.org]]&lt;br /&gt;
| Should&lt;br /&gt;
| [http://maemo.org/profile/view/dneary/ dneary]&lt;br /&gt;
| 0%&lt;br /&gt;
| &lt;br /&gt;
|- style=&amp;quot;background:LightGreen&amp;quot;&lt;br /&gt;
| 9.06-14&lt;br /&gt;
| Plan for the OMAP2 acceleration [[Drivers justification|drivers]]&lt;br /&gt;
| Could&lt;br /&gt;
| [http://maemo.org/profile/view/qgil/ qgil]&lt;br /&gt;
| DONE&lt;br /&gt;
| My part has been done after TI&#039;s commitment to release the drivers announced in the maemo Summit.&lt;br /&gt;
|- style=&amp;quot;&amp;quot;&lt;br /&gt;
| 9.08-12&lt;br /&gt;
| Improve reporting feed appearance on sprint page&lt;br /&gt;
| Could&lt;br /&gt;
| [http://maemo.org/profile/view/feri/ Ferenc]&lt;br /&gt;
| 0%&lt;br /&gt;
| To liaise with [http://maemo.org/profile/view/jaffa/ Jaffa]&lt;br /&gt;
|- style=&amp;quot;&amp;quot;&lt;br /&gt;
| 9.09-10&lt;br /&gt;
| Implement SSO sync-API endpoint for garage&lt;br /&gt;
| Could&lt;br /&gt;
| [http://maemo.org/profile/view/danielwilms/ danielwilms]&lt;br /&gt;
| 0%&lt;br /&gt;
| &lt;br /&gt;
|- style=&amp;quot;&amp;quot;&lt;br /&gt;
| 9.10-10&lt;br /&gt;
| Add extra info fields from control files to interface - Changelog&lt;br /&gt;
| Could&lt;br /&gt;
| [http://maemo.org/profile/view/xfade/ X-Fade]&lt;br /&gt;
| 0% &lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Actions ==&lt;br /&gt;
&#039;&#039;None yet&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
== Activity log ==&lt;br /&gt;
Latest activity report goes on top. Activity will be reported here, [http://www.qaiku.com/channels/show/maemork/ Qaiku #maemork channel] ([http://www.qaiku.com/feeds/channels/maemork Atom feed]) or talk.maemo.org.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;rss title=&amp;quot;off&amp;quot; desc=&amp;quot;off&amp;quot; number=&amp;quot;40&amp;quot; time=&amp;quot;3600&amp;quot;&amp;gt;http://pipes.yahoo.com/pipes/pipe.run?_id=mvdCJrB_3hGfIDijIDfpSg&amp;amp;_render=rss&amp;lt;/rss&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Community]]&lt;br /&gt;
[[Category:maemo.org]]&lt;/div&gt;</summary>
		<author><name>192.100.124.219</name></author>
	</entry>
	<entry>
		<id>https://maemo.octonezd.me/index.php?title=Talk:Maemo_security&amp;diff=45589</id>
		<title>Talk:Maemo security</title>
		<link rel="alternate" type="text/html" href="https://maemo.octonezd.me/index.php?title=Talk:Maemo_security&amp;diff=45589"/>
		<updated>2009-10-15T08:43:22Z</updated>

		<summary type="html">&lt;p&gt;192.100.124.219: /* Can network operators restrict you switching to Open mode? */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Suggested questions:&lt;br /&gt;
&lt;br /&gt;
===Is there a diagram showing the security framework and components?===&lt;br /&gt;
There were some diagrams in the presentation - can we see them.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Elena Reshetova: The presentation was uploaded, and currently it is the only information, which I can share.&lt;br /&gt;
&lt;br /&gt;
===What is &amp;quot;Open Mode&amp;quot; and can it be revoked remotely?===&lt;br /&gt;
Is that the right terminology?&lt;br /&gt;
Essentially can Nokia reach out the the 2nd stage bootloader and  tell it to stop running unsigned kernels.&lt;br /&gt;
Maybe this should be 2 questions.&lt;br /&gt;
&lt;br /&gt;
===What does closed mode restrict you from doing?===&lt;br /&gt;
&lt;br /&gt;
* Terminal?&lt;br /&gt;
* Root?&lt;br /&gt;
** If the [http://aegis.sf.net Aegis AC] is used for the protected storage then root is probably disabled.&lt;br /&gt;
&lt;br /&gt;
** I don&#039;t think this Aegis has anything to do with Maemo&lt;br /&gt;
&lt;br /&gt;
Elena Reshetova: We don&#039;t have any connection to the Aegis Project, mentioned above. This is a collision of names, I am sorry about it. &lt;br /&gt;
In general &amp;quot;close&amp;quot; mode has its own security policy, which user won&#039;t be able to change. &lt;br /&gt;
&lt;br /&gt;
* Cellular is marked as a protected ressource in the slide. Can one still use it (phone, data, sms etc.) while running in open mode? While runnin a rebuilt kernel?&lt;br /&gt;
&lt;br /&gt;
Elena Reshetova: If you use your own kernel, you are the one to set the security policy for the device, meaning that your SW in this case can make calls, send sms and so on (for example). Please note that the list of protected resources on the slide is given just as example (to show the possible granularity level), so it doesn&#039;t mean that we would have exactly these resources.&lt;br /&gt;
&lt;br /&gt;
===How easy is it to switch between Open and Closed modes?===&lt;br /&gt;
&lt;br /&gt;
Is it so trivial that you would want to and be able to do it several times a day and on the go (without restart)?&lt;br /&gt;
&lt;br /&gt;
Elena Reshetova: I should be able to tell the exact procedure in the future, but for now I can say that it won&#039;t be so trivial (like press the GUI button :-)), and the restart is needed. The checks for the SW image are done by the Loader, and during the boot time, so you do need to restart.&lt;br /&gt;
&lt;br /&gt;
===Can network operators restrict you switching to Open mode?===&lt;br /&gt;
Like if a device is sim-locked to a particular network, does the device get locked down in closed DRM mode only too? Can you always switch to open mode?&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Elena Reshetova: If the device is SIM-locked, operator can restrict you to the usage of one particular kernel (slide 5), for example the one, which was shipped with a device. However, it is up to you to decide to buy the device from the operator or form the Nokia store.&lt;br /&gt;
&lt;br /&gt;
===How granular is the encryption?===&lt;br /&gt;
If my app creates content in the closed mode can I see it in open mode?&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Elena Reshetova: If your application uses the Protected Storage for encryption (slide 8) in the initial mode, and after you switch to another mode, the application won&#039;t be able to get decrypted data. If your application just stores the data in the filesystem, after switching to your own kernel, you will be able to access the data (because they are just plain files in the filesystem).&lt;br /&gt;
&lt;br /&gt;
===Can open applications use the privilege mechanisms in the Open and Closed modes?===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Elena Reshetova: I guess the question is &amp;quot;Can the applications access protected resources in both modes?&amp;quot; I hope I got the question correctly. The answer is that the Device Security Policy (slide 7) defines the resources can be potentially granted to the SW coming from a particular SW source. When one uses the Nokia signed kernel, the device security policy is defined, and user can&#039;t change it. If one uses its own kernel (or community kernel for example), he (or community) is the one to define/change the device policy. This means that one can, for example, change the policy in the way that the SW coming from the maemo.org gets access to all protected resources (of course some content becomes unavailable when one switch to its own kernel, for example DRM). However, again, it is possible only while using your own kernel.&lt;br /&gt;
&lt;br /&gt;
===Can open applications use the DRM encryption mechanisms in the Open and Closed modes?===&lt;br /&gt;
I can see that this could be useful. Maybe.&lt;br /&gt;
&lt;br /&gt;
===Will community extensions to the kernel (modules) be permitted in Open/Closed modes?===&lt;br /&gt;
I can&#039;t see how - which leads to the question: How do community &#039;enhancements&#039; to the kernel get adopted?&lt;br /&gt;
&lt;br /&gt;
Elena Reshetova: In the &amp;quot;Open&amp;quot; mode any changes of the kernel are allowed. Regarding the &amp;quot;closed&amp;quot; mode, unfortunately I am not the right person to answer this question.&lt;br /&gt;
&lt;br /&gt;
===Is there any GPLv3 software impacted?===&lt;br /&gt;
Please have a license discussion somewhere and let us know when you have consensus.&lt;br /&gt;
What is Nokias position? Peter made a statement at the talk - can someone transcribe it and/or get Nokia to clarify.&lt;br /&gt;
&lt;br /&gt;
===What exactly is available to the end user?===&lt;br /&gt;
&lt;br /&gt;
* storage encryption ?&lt;br /&gt;
* PIM data encryption ?&lt;br /&gt;
* encrypted/signed communications (phone, sms/mms, mails, IM) ?&lt;br /&gt;
&lt;br /&gt;
=== How does closed mode affect on-device debugging? ===&lt;br /&gt;
&lt;br /&gt;
For example, will ptrace(2) still work (eg gdb, strace &amp;amp; ltrace)?  Will we be able to produce code dumps?&lt;br /&gt;
&lt;br /&gt;
===Will DRM-free data and DRM-free applications be accessible from both modes once they&#039;re installed/created in either of the two modes?===&lt;br /&gt;
&lt;br /&gt;
E.g.: I start in DRM-mode, install DRM-free applications from Extras, take 3 pictures, add some contacts. Then I switch to DRM-free mode: Will I be able to run the applications installed in DRM-free mode, view and edit my contacts and view and edit my own pictures? (And the other way round, of course, starting from DRM-free mode and switching to DRM afterwards.)&lt;br /&gt;
&lt;br /&gt;
===What is open mode good for at all?===&lt;br /&gt;
&lt;br /&gt;
Provided you don&#039;t consume digitally restricted media and don&#039;t purchase applications that in any way rely on DRM: You don&#039;t need DRM-mode then, but on the other hand why would you want DRM-free mode? What is it you cannot do in DRM-mode in such a scenario?  Use case?&lt;br /&gt;
&lt;br /&gt;
===What is ARM&#039;s TrustZone?===&lt;br /&gt;
The official ARM TrustZone page:&lt;br /&gt;
http://www.arm.com/products/security/trustzone/index.html&lt;br /&gt;
&lt;br /&gt;
===Can the Trusted Execution Environment (TrEE) be used as a kill switch for the device even if it runs in open mode?===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Maintaining the discussion ==&lt;br /&gt;
&lt;br /&gt;
On the [http://talk.maemo.org/showthread.php?p=344427#post344427 talk.maemo.org thread], I suggest that end-users are kept at arms&#039; length from this page and we use it as a proper communication mechanism between the community and Elena et al. --[[User:jaffa|Jaffa]] 10:43, 13 October 2009 (UTC)&lt;br /&gt;
&lt;br /&gt;
More discussion in the [http://mg.pov.lt/maemo-irclog/%23maemo.2009-10-11.log.html#t2009-10-11T12:50:36 #maemo chat] which was going on concurrently with the talk and a [http://www.flickr.com/photos/30863507@N02/4007518495/ few] [http://www.flickr.com/photos/30863507@N02/4008286892/ flickr] [http://www.flickr.com/photos/30863507@N02/4007522767/ photos]. --[[User:jaffa|Jaffa]] 11:20, 13 October 2009 (UTC)&lt;/div&gt;</summary>
		<author><name>192.100.124.219</name></author>
	</entry>
	<entry>
		<id>https://maemo.octonezd.me/index.php?title=Talk:Maemo_security&amp;diff=45590</id>
		<title>Talk:Maemo security</title>
		<link rel="alternate" type="text/html" href="https://maemo.octonezd.me/index.php?title=Talk:Maemo_security&amp;diff=45590"/>
		<updated>2009-10-15T08:06:35Z</updated>

		<summary type="html">&lt;p&gt;192.100.124.219: /* Will community extensions to the kernel (modules) be permitted in Open/Closed modes? */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Suggested questions:&lt;br /&gt;
&lt;br /&gt;
===Is there a diagram showing the security framework and components?===&lt;br /&gt;
There were some diagrams in the presentation - can we see them.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Elena Reshetova: The presentation was uploaded, and currently it is the only information, which I can share.&lt;br /&gt;
&lt;br /&gt;
===What is &amp;quot;Open Mode&amp;quot; and can it be revoked remotely?===&lt;br /&gt;
Is that the right terminology?&lt;br /&gt;
Essentially can Nokia reach out the the 2nd stage bootloader and  tell it to stop running unsigned kernels.&lt;br /&gt;
Maybe this should be 2 questions.&lt;br /&gt;
&lt;br /&gt;
===What does closed mode restrict you from doing?===&lt;br /&gt;
&lt;br /&gt;
* Terminal?&lt;br /&gt;
* Root?&lt;br /&gt;
** If the [http://aegis.sf.net Aegis AC] is used for the protected storage then root is probably disabled.&lt;br /&gt;
&lt;br /&gt;
** I don&#039;t think this Aegis has anything to do with Maemo&lt;br /&gt;
&lt;br /&gt;
Elena Reshetova: We don&#039;t have any connection to the Aegis Project, mentioned above. This is a collision of names, I am sorry about it. &lt;br /&gt;
In general &amp;quot;close&amp;quot; mode has its own security policy, which user won&#039;t be able to change. &lt;br /&gt;
&lt;br /&gt;
* Cellular is marked as a protected ressource in the slide. Can one still use it (phone, data, sms etc.) while running in open mode? While runnin a rebuilt kernel?&lt;br /&gt;
&lt;br /&gt;
Elena Reshetova: If you use your own kernel, you are the one to set the security policy for the device, meaning that your SW in this case can make calls, send sms and so on (for example). Please note that the list of protected resources on the slide is given just as example (to show the possible granularity level), so it doesn&#039;t mean that we would have exactly these resources.&lt;br /&gt;
&lt;br /&gt;
===How easy is it to switch between Open and Closed modes?===&lt;br /&gt;
&lt;br /&gt;
Is it so trivial that you would want to and be able to do it several times a day and on the go (without restart)?&lt;br /&gt;
&lt;br /&gt;
Elena Reshetova: I should be able to tell the exact procedure in the future, but for now I can say that it won&#039;t be so trivial (like press the GUI button :-)), and the restart is needed. The checks for the SW image are done by the Loader, and during the boot time, so you do need to restart.&lt;br /&gt;
&lt;br /&gt;
===Can network operators restrict you switching to Open mode?===&lt;br /&gt;
Like if a device is sim-locked to a particular network, does the device get locked down in closed DRM mode only too? Can you always switch to open mode?&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Elena Reshetova: If device is SIM-locked (slide 5 of the presentation), you aren&#039;t allowed to use your own kernel. The only kernel, which will be allowed, is the kernel, which is shipped with the device, when you buy it from the operator. The reasons for this are simple, and I hope understandable: if we allowed to change the kernel, we can&#039;t be sure about security of the SIM-lock. Moreover, it is your choice to buy the device from the operator or from Nokia stores.&lt;br /&gt;
&lt;br /&gt;
===How granular is the encryption?===&lt;br /&gt;
If my app creates content in the closed mode can I see it in open mode?&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Elena Reshetova: If your application uses the Protected Storage for encryption (slide 8) in the initial mode, and after you switch to another mode, the application won&#039;t be able to get decrypted data. If your application just stores the data in the filesystem, after switching to your own kernel, you will be able to access the data (because they are just plain files in the filesystem).&lt;br /&gt;
&lt;br /&gt;
===Can open applications use the privilege mechanisms in the Open and Closed modes?===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Elena Reshetova: I guess the question is &amp;quot;Can the applications access protected resources in both modes?&amp;quot; I hope I got the question correctly. The answer is that the Device Security Policy (slide 7) defines the resources can be potentially granted to the SW coming from a particular SW source. When one uses the Nokia signed kernel, the device security policy is defined, and user can&#039;t change it. If one uses its own kernel (or community kernel for example), he (or community) is the one to define/change the device policy. This means that one can, for example, change the policy in the way that the SW coming from the maemo.org gets access to all protected resources (of course some content becomes unavailable when one switch to its own kernel, for example DRM). However, again, it is possible only while using your own kernel.&lt;br /&gt;
&lt;br /&gt;
===Can open applications use the DRM encryption mechanisms in the Open and Closed modes?===&lt;br /&gt;
I can see that this could be useful. Maybe.&lt;br /&gt;
&lt;br /&gt;
===Will community extensions to the kernel (modules) be permitted in Open/Closed modes?===&lt;br /&gt;
I can&#039;t see how - which leads to the question: How do community &#039;enhancements&#039; to the kernel get adopted?&lt;br /&gt;
&lt;br /&gt;
Elena Reshetova: In the &amp;quot;Open&amp;quot; mode any changes of the kernel are allowed. Regarding the &amp;quot;closed&amp;quot; mode, unfortunately I am not the right person to answer this question.&lt;br /&gt;
&lt;br /&gt;
===Is there any GPLv3 software impacted?===&lt;br /&gt;
Please have a license discussion somewhere and let us know when you have consensus.&lt;br /&gt;
What is Nokias position? Peter made a statement at the talk - can someone transcribe it and/or get Nokia to clarify.&lt;br /&gt;
&lt;br /&gt;
===What exactly is available to the end user?===&lt;br /&gt;
&lt;br /&gt;
* storage encryption ?&lt;br /&gt;
* PIM data encryption ?&lt;br /&gt;
* encrypted/signed communications (phone, sms/mms, mails, IM) ?&lt;br /&gt;
&lt;br /&gt;
=== How does closed mode affect on-device debugging? ===&lt;br /&gt;
&lt;br /&gt;
For example, will ptrace(2) still work (eg gdb, strace &amp;amp; ltrace)?  Will we be able to produce code dumps?&lt;br /&gt;
&lt;br /&gt;
===Will DRM-free data and DRM-free applications be accessible from both modes once they&#039;re installed/created in either of the two modes?===&lt;br /&gt;
&lt;br /&gt;
E.g.: I start in DRM-mode, install DRM-free applications from Extras, take 3 pictures, add some contacts. Then I switch to DRM-free mode: Will I be able to run the applications installed in DRM-free mode, view and edit my contacts and view and edit my own pictures? (And the other way round, of course, starting from DRM-free mode and switching to DRM afterwards.)&lt;br /&gt;
&lt;br /&gt;
===What is open mode good for at all?===&lt;br /&gt;
&lt;br /&gt;
Provided you don&#039;t consume digitally restricted media and don&#039;t purchase applications that in any way rely on DRM: You don&#039;t need DRM-mode then, but on the other hand why would you want DRM-free mode? What is it you cannot do in DRM-mode in such a scenario?  Use case?&lt;br /&gt;
&lt;br /&gt;
===What is ARM&#039;s TrustZone?===&lt;br /&gt;
The official ARM TrustZone page:&lt;br /&gt;
http://www.arm.com/products/security/trustzone/index.html&lt;br /&gt;
&lt;br /&gt;
===Can the Trusted Execution Environment (TrEE) be used as a kill switch for the device even if it runs in open mode?===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Maintaining the discussion ==&lt;br /&gt;
&lt;br /&gt;
On the [http://talk.maemo.org/showthread.php?p=344427#post344427 talk.maemo.org thread], I suggest that end-users are kept at arms&#039; length from this page and we use it as a proper communication mechanism between the community and Elena et al. --[[User:jaffa|Jaffa]] 10:43, 13 October 2009 (UTC)&lt;br /&gt;
&lt;br /&gt;
More discussion in the [http://mg.pov.lt/maemo-irclog/%23maemo.2009-10-11.log.html#t2009-10-11T12:50:36 #maemo chat] which was going on concurrently with the talk and a [http://www.flickr.com/photos/30863507@N02/4007518495/ few] [http://www.flickr.com/photos/30863507@N02/4008286892/ flickr] [http://www.flickr.com/photos/30863507@N02/4007522767/ photos]. --[[User:jaffa|Jaffa]] 11:20, 13 October 2009 (UTC)&lt;/div&gt;</summary>
		<author><name>192.100.124.219</name></author>
	</entry>
	<entry>
		<id>https://maemo.octonezd.me/index.php?title=Talk:Maemo_security&amp;diff=45591</id>
		<title>Talk:Maemo security</title>
		<link rel="alternate" type="text/html" href="https://maemo.octonezd.me/index.php?title=Talk:Maemo_security&amp;diff=45591"/>
		<updated>2009-10-15T07:53:06Z</updated>

		<summary type="html">&lt;p&gt;192.100.124.219: /* Can open applications use the privilege mechanisms in the Open and Closed modes? */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Suggested questions:&lt;br /&gt;
&lt;br /&gt;
===Is there a diagram showing the security framework and components?===&lt;br /&gt;
There were some diagrams in the presentation - can we see them.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Elena Reshetova: The presentation was uploaded, and currently it is the only information, which I can share.&lt;br /&gt;
&lt;br /&gt;
===What is &amp;quot;Open Mode&amp;quot; and can it be revoked remotely?===&lt;br /&gt;
Is that the right terminology?&lt;br /&gt;
Essentially can Nokia reach out the the 2nd stage bootloader and  tell it to stop running unsigned kernels.&lt;br /&gt;
Maybe this should be 2 questions.&lt;br /&gt;
&lt;br /&gt;
===What does closed mode restrict you from doing?===&lt;br /&gt;
&lt;br /&gt;
* Terminal?&lt;br /&gt;
* Root?&lt;br /&gt;
** If the [http://aegis.sf.net Aegis AC] is used for the protected storage then root is probably disabled.&lt;br /&gt;
&lt;br /&gt;
** I don&#039;t think this Aegis has anything to do with Maemo&lt;br /&gt;
&lt;br /&gt;
Elena Reshetova: We don&#039;t have any connection to the Aegis Project, mentioned above. This is a collision of names, I am sorry about it. &lt;br /&gt;
In general &amp;quot;close&amp;quot; mode has its own security policy, which user won&#039;t be able to change. &lt;br /&gt;
&lt;br /&gt;
* Cellular is marked as a protected ressource in the slide. Can one still use it (phone, data, sms etc.) while running in open mode? While runnin a rebuilt kernel?&lt;br /&gt;
&lt;br /&gt;
Elena Reshetova: If you use your own kernel, you are the one to set the security policy for the device, meaning that your SW in this case can make calls, send sms and so on (for example). Please note that the list of protected resources on the slide is given just as example (to show the possible granularity level), so it doesn&#039;t mean that we would have exactly these resources.&lt;br /&gt;
&lt;br /&gt;
===How easy is it to switch between Open and Closed modes?===&lt;br /&gt;
&lt;br /&gt;
Is it so trivial that you would want to and be able to do it several times a day and on the go (without restart)?&lt;br /&gt;
&lt;br /&gt;
Elena Reshetova: I should be able to tell the exact procedure in the future, but for now I can say that it won&#039;t be so trivial (like press the GUI button :-)), and the restart is needed. The checks for the SW image are done by the Loader, and during the boot time, so you do need to restart.&lt;br /&gt;
&lt;br /&gt;
===Can network operators restrict you switching to Open mode?===&lt;br /&gt;
Like if a device is sim-locked to a particular network, does the device get locked down in closed DRM mode only too? Can you always switch to open mode?&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Elena Reshetova: If device is SIM-locked (slide 5 of the presentation), you aren&#039;t allowed to use your own kernel. The only kernel, which will be allowed, is the kernel, which is shipped with the device, when you buy it from the operator. The reasons for this are simple, and I hope understandable: if we allowed to change the kernel, we can&#039;t be sure about security of the SIM-lock. Moreover, it is your choice to buy the device from the operator or from Nokia stores.&lt;br /&gt;
&lt;br /&gt;
===How granular is the encryption?===&lt;br /&gt;
If my app creates content in the closed mode can I see it in open mode?&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Elena Reshetova: If your application uses the Protected Storage for encryption (slide 8) in the initial mode, and after you switch to another mode, the application won&#039;t be able to get decrypted data. If your application just stores the data in the filesystem, after switching to your own kernel, you will be able to access the data (because they are just plain files in the filesystem).&lt;br /&gt;
&lt;br /&gt;
===Can open applications use the privilege mechanisms in the Open and Closed modes?===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Elena Reshetova: I guess the question is &amp;quot;Can the applications access protected resources in both modes?&amp;quot; I hope I got the question correctly. The answer is that the Device Security Policy (slide 7) defines the resources can be potentially granted to the SW coming from a particular SW source. When one uses the Nokia signed kernel, the device security policy is defined, and user can&#039;t change it. If one uses its own kernel (or community kernel for example), he (or community) is the one to define/change the device policy. This means that one can, for example, change the policy in the way that the SW coming from the maemo.org gets access to all protected resources (of course some content becomes unavailable when one switch to its own kernel, for example DRM). However, again, it is possible only while using your own kernel.&lt;br /&gt;
&lt;br /&gt;
===Can open applications use the DRM encryption mechanisms in the Open and Closed modes?===&lt;br /&gt;
I can see that this could be useful. Maybe.&lt;br /&gt;
&lt;br /&gt;
===Will community extensions to the kernel (modules) be permitted in Open/Closed modes?===&lt;br /&gt;
I can&#039;t see how - which leads to the question: How do community &#039;enhancements&#039; to the kernel get adopted?&lt;br /&gt;
&lt;br /&gt;
===Is there any GPLv3 software impacted?===&lt;br /&gt;
Please have a license discussion somewhere and let us know when you have consensus.&lt;br /&gt;
What is Nokias position? Peter made a statement at the talk - can someone transcribe it and/or get Nokia to clarify.&lt;br /&gt;
&lt;br /&gt;
===What exactly is available to the end user?===&lt;br /&gt;
&lt;br /&gt;
* storage encryption ?&lt;br /&gt;
* PIM data encryption ?&lt;br /&gt;
* encrypted/signed communications (phone, sms/mms, mails, IM) ?&lt;br /&gt;
&lt;br /&gt;
=== How does closed mode affect on-device debugging? ===&lt;br /&gt;
&lt;br /&gt;
For example, will ptrace(2) still work (eg gdb, strace &amp;amp; ltrace)?  Will we be able to produce code dumps?&lt;br /&gt;
&lt;br /&gt;
===Will DRM-free data and DRM-free applications be accessible from both modes once they&#039;re installed/created in either of the two modes?===&lt;br /&gt;
&lt;br /&gt;
E.g.: I start in DRM-mode, install DRM-free applications from Extras, take 3 pictures, add some contacts. Then I switch to DRM-free mode: Will I be able to run the applications installed in DRM-free mode, view and edit my contacts and view and edit my own pictures? (And the other way round, of course, starting from DRM-free mode and switching to DRM afterwards.)&lt;br /&gt;
&lt;br /&gt;
===What is open mode good for at all?===&lt;br /&gt;
&lt;br /&gt;
Provided you don&#039;t consume digitally restricted media and don&#039;t purchase applications that in any way rely on DRM: You don&#039;t need DRM-mode then, but on the other hand why would you want DRM-free mode? What is it you cannot do in DRM-mode in such a scenario?  Use case?&lt;br /&gt;
&lt;br /&gt;
===What is ARM&#039;s TrustZone?===&lt;br /&gt;
The official ARM TrustZone page:&lt;br /&gt;
http://www.arm.com/products/security/trustzone/index.html&lt;br /&gt;
&lt;br /&gt;
===Can the Trusted Execution Environment (TrEE) be used as a kill switch for the device even if it runs in open mode?===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Maintaining the discussion ==&lt;br /&gt;
&lt;br /&gt;
On the [http://talk.maemo.org/showthread.php?p=344427#post344427 talk.maemo.org thread], I suggest that end-users are kept at arms&#039; length from this page and we use it as a proper communication mechanism between the community and Elena et al. --[[User:jaffa|Jaffa]] 10:43, 13 October 2009 (UTC)&lt;br /&gt;
&lt;br /&gt;
More discussion in the [http://mg.pov.lt/maemo-irclog/%23maemo.2009-10-11.log.html#t2009-10-11T12:50:36 #maemo chat] which was going on concurrently with the talk and a [http://www.flickr.com/photos/30863507@N02/4007518495/ few] [http://www.flickr.com/photos/30863507@N02/4008286892/ flickr] [http://www.flickr.com/photos/30863507@N02/4007522767/ photos]. --[[User:jaffa|Jaffa]] 11:20, 13 October 2009 (UTC)&lt;/div&gt;</summary>
		<author><name>192.100.124.219</name></author>
	</entry>
	<entry>
		<id>https://maemo.octonezd.me/index.php?title=Talk:Maemo_security&amp;diff=45592</id>
		<title>Talk:Maemo security</title>
		<link rel="alternate" type="text/html" href="https://maemo.octonezd.me/index.php?title=Talk:Maemo_security&amp;diff=45592"/>
		<updated>2009-10-15T07:43:54Z</updated>

		<summary type="html">&lt;p&gt;192.100.124.219: /* How granular is the encryption? */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Suggested questions:&lt;br /&gt;
&lt;br /&gt;
===Is there a diagram showing the security framework and components?===&lt;br /&gt;
There were some diagrams in the presentation - can we see them.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Elena Reshetova: The presentation was uploaded, and currently it is the only information, which I can share.&lt;br /&gt;
&lt;br /&gt;
===What is &amp;quot;Open Mode&amp;quot; and can it be revoked remotely?===&lt;br /&gt;
Is that the right terminology?&lt;br /&gt;
Essentially can Nokia reach out the the 2nd stage bootloader and  tell it to stop running unsigned kernels.&lt;br /&gt;
Maybe this should be 2 questions.&lt;br /&gt;
&lt;br /&gt;
===What does closed mode restrict you from doing?===&lt;br /&gt;
&lt;br /&gt;
* Terminal?&lt;br /&gt;
* Root?&lt;br /&gt;
** If the [http://aegis.sf.net Aegis AC] is used for the protected storage then root is probably disabled.&lt;br /&gt;
&lt;br /&gt;
** I don&#039;t think this Aegis has anything to do with Maemo&lt;br /&gt;
&lt;br /&gt;
Elena Reshetova: We don&#039;t have any connection to the Aegis Project, mentioned above. This is a collision of names, I am sorry about it. &lt;br /&gt;
In general &amp;quot;close&amp;quot; mode has its own security policy, which user won&#039;t be able to change. &lt;br /&gt;
&lt;br /&gt;
* Cellular is marked as a protected ressource in the slide. Can one still use it (phone, data, sms etc.) while running in open mode? While runnin a rebuilt kernel?&lt;br /&gt;
&lt;br /&gt;
Elena Reshetova: If you use your own kernel, you are the one to set the security policy for the device, meaning that your SW in this case can make calls, send sms and so on (for example). Please note that the list of protected resources on the slide is given just as example (to show the possible granularity level), so it doesn&#039;t mean that we would have exactly these resources.&lt;br /&gt;
&lt;br /&gt;
===How easy is it to switch between Open and Closed modes?===&lt;br /&gt;
&lt;br /&gt;
Is it so trivial that you would want to and be able to do it several times a day and on the go (without restart)?&lt;br /&gt;
&lt;br /&gt;
Elena Reshetova: I should be able to tell the exact procedure in the future, but for now I can say that it won&#039;t be so trivial (like press the GUI button :-)), and the restart is needed. The checks for the SW image are done by the Loader, and during the boot time, so you do need to restart.&lt;br /&gt;
&lt;br /&gt;
===Can network operators restrict you switching to Open mode?===&lt;br /&gt;
Like if a device is sim-locked to a particular network, does the device get locked down in closed DRM mode only too? Can you always switch to open mode?&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Elena Reshetova: If device is SIM-locked (slide 5 of the presentation), you aren&#039;t allowed to use your own kernel. The only kernel, which will be allowed, is the kernel, which is shipped with the device, when you buy it from the operator. The reasons for this are simple, and I hope understandable: if we allowed to change the kernel, we can&#039;t be sure about security of the SIM-lock. Moreover, it is your choice to buy the device from the operator or from Nokia stores.&lt;br /&gt;
&lt;br /&gt;
===How granular is the encryption?===&lt;br /&gt;
If my app creates content in the closed mode can I see it in open mode?&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Elena Reshetova: If your application uses the Protected Storage for encryption (slide 8) in the initial mode, and after you switch to another mode, the application won&#039;t be able to get decrypted data. If your application just stores the data in the filesystem, after switching to your own kernel, you will be able to access the data (because they are just plain files in the filesystem).&lt;br /&gt;
&lt;br /&gt;
===Can open applications use the privilege mechanisms in the Open and Closed modes?===&lt;br /&gt;
&lt;br /&gt;
===Can open applications use the DRM encryption mechanisms in the Open and Closed modes?===&lt;br /&gt;
I can see that this could be useful. Maybe.&lt;br /&gt;
&lt;br /&gt;
===Will community extensions to the kernel (modules) be permitted in Open/Closed modes?===&lt;br /&gt;
I can&#039;t see how - which leads to the question: How do community &#039;enhancements&#039; to the kernel get adopted?&lt;br /&gt;
&lt;br /&gt;
===Is there any GPLv3 software impacted?===&lt;br /&gt;
Please have a license discussion somewhere and let us know when you have consensus.&lt;br /&gt;
What is Nokias position? Peter made a statement at the talk - can someone transcribe it and/or get Nokia to clarify.&lt;br /&gt;
&lt;br /&gt;
===What exactly is available to the end user?===&lt;br /&gt;
&lt;br /&gt;
* storage encryption ?&lt;br /&gt;
* PIM data encryption ?&lt;br /&gt;
* encrypted/signed communications (phone, sms/mms, mails, IM) ?&lt;br /&gt;
&lt;br /&gt;
=== How does closed mode affect on-device debugging? ===&lt;br /&gt;
&lt;br /&gt;
For example, will ptrace(2) still work (eg gdb, strace &amp;amp; ltrace)?  Will we be able to produce code dumps?&lt;br /&gt;
&lt;br /&gt;
===Will DRM-free data and DRM-free applications be accessible from both modes once they&#039;re installed/created in either of the two modes?===&lt;br /&gt;
&lt;br /&gt;
E.g.: I start in DRM-mode, install DRM-free applications from Extras, take 3 pictures, add some contacts. Then I switch to DRM-free mode: Will I be able to run the applications installed in DRM-free mode, view and edit my contacts and view and edit my own pictures? (And the other way round, of course, starting from DRM-free mode and switching to DRM afterwards.)&lt;br /&gt;
&lt;br /&gt;
===What is open mode good for at all?===&lt;br /&gt;
&lt;br /&gt;
Provided you don&#039;t consume digitally restricted media and don&#039;t purchase applications that in any way rely on DRM: You don&#039;t need DRM-mode then, but on the other hand why would you want DRM-free mode? What is it you cannot do in DRM-mode in such a scenario?  Use case?&lt;br /&gt;
&lt;br /&gt;
===What is ARM&#039;s TrustZone?===&lt;br /&gt;
The official ARM TrustZone page:&lt;br /&gt;
http://www.arm.com/products/security/trustzone/index.html&lt;br /&gt;
&lt;br /&gt;
===Can the Trusted Execution Environment (TrEE) be used as a kill switch for the device even if it runs in open mode?===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Maintaining the discussion ==&lt;br /&gt;
&lt;br /&gt;
On the [http://talk.maemo.org/showthread.php?p=344427#post344427 talk.maemo.org thread], I suggest that end-users are kept at arms&#039; length from this page and we use it as a proper communication mechanism between the community and Elena et al. --[[User:jaffa|Jaffa]] 10:43, 13 October 2009 (UTC)&lt;br /&gt;
&lt;br /&gt;
More discussion in the [http://mg.pov.lt/maemo-irclog/%23maemo.2009-10-11.log.html#t2009-10-11T12:50:36 #maemo chat] which was going on concurrently with the talk and a [http://www.flickr.com/photos/30863507@N02/4007518495/ few] [http://www.flickr.com/photos/30863507@N02/4008286892/ flickr] [http://www.flickr.com/photos/30863507@N02/4007522767/ photos]. --[[User:jaffa|Jaffa]] 11:20, 13 October 2009 (UTC)&lt;/div&gt;</summary>
		<author><name>192.100.124.219</name></author>
	</entry>
	<entry>
		<id>https://maemo.octonezd.me/index.php?title=Talk:Maemo_security&amp;diff=45593</id>
		<title>Talk:Maemo security</title>
		<link rel="alternate" type="text/html" href="https://maemo.octonezd.me/index.php?title=Talk:Maemo_security&amp;diff=45593"/>
		<updated>2009-10-15T07:36:48Z</updated>

		<summary type="html">&lt;p&gt;192.100.124.219: /* Can network operators restrict you switching to Open mode? */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Suggested questions:&lt;br /&gt;
&lt;br /&gt;
===Is there a diagram showing the security framework and components?===&lt;br /&gt;
There were some diagrams in the presentation - can we see them.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Elena Reshetova: The presentation was uploaded, and currently it is the only information, which I can share.&lt;br /&gt;
&lt;br /&gt;
===What is &amp;quot;Open Mode&amp;quot; and can it be revoked remotely?===&lt;br /&gt;
Is that the right terminology?&lt;br /&gt;
Essentially can Nokia reach out the the 2nd stage bootloader and  tell it to stop running unsigned kernels.&lt;br /&gt;
Maybe this should be 2 questions.&lt;br /&gt;
&lt;br /&gt;
===What does closed mode restrict you from doing?===&lt;br /&gt;
&lt;br /&gt;
* Terminal?&lt;br /&gt;
* Root?&lt;br /&gt;
** If the [http://aegis.sf.net Aegis AC] is used for the protected storage then root is probably disabled.&lt;br /&gt;
&lt;br /&gt;
** I don&#039;t think this Aegis has anything to do with Maemo&lt;br /&gt;
&lt;br /&gt;
Elena Reshetova: We don&#039;t have any connection to the Aegis Project, mentioned above. This is a collision of names, I am sorry about it. &lt;br /&gt;
In general &amp;quot;close&amp;quot; mode has its own security policy, which user won&#039;t be able to change. &lt;br /&gt;
&lt;br /&gt;
* Cellular is marked as a protected ressource in the slide. Can one still use it (phone, data, sms etc.) while running in open mode? While runnin a rebuilt kernel?&lt;br /&gt;
&lt;br /&gt;
Elena Reshetova: If you use your own kernel, you are the one to set the security policy for the device, meaning that your SW in this case can make calls, send sms and so on (for example). Please note that the list of protected resources on the slide is given just as example (to show the possible granularity level), so it doesn&#039;t mean that we would have exactly these resources.&lt;br /&gt;
&lt;br /&gt;
===How easy is it to switch between Open and Closed modes?===&lt;br /&gt;
&lt;br /&gt;
Is it so trivial that you would want to and be able to do it several times a day and on the go (without restart)?&lt;br /&gt;
&lt;br /&gt;
Elena Reshetova: I should be able to tell the exact procedure in the future, but for now I can say that it won&#039;t be so trivial (like press the GUI button :-)), and the restart is needed. The checks for the SW image are done by the Loader, and during the boot time, so you do need to restart.&lt;br /&gt;
&lt;br /&gt;
===Can network operators restrict you switching to Open mode?===&lt;br /&gt;
Like if a device is sim-locked to a particular network, does the device get locked down in closed DRM mode only too? Can you always switch to open mode?&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Elena Reshetova: If device is SIM-locked (slide 5 of the presentation), you aren&#039;t allowed to use your own kernel. The only kernel, which will be allowed, is the kernel, which is shipped with the device, when you buy it from the operator. The reasons for this are simple, and I hope understandable: if we allowed to change the kernel, we can&#039;t be sure about security of the SIM-lock. Moreover, it is your choice to buy the device from the operator or from Nokia stores.&lt;br /&gt;
&lt;br /&gt;
===How granular is the encryption?===&lt;br /&gt;
If my app creates content in the closed mode can I see it in open mode?&lt;br /&gt;
&lt;br /&gt;
===Can open applications use the privilege mechanisms in the Open and Closed modes?===&lt;br /&gt;
&lt;br /&gt;
===Can open applications use the DRM encryption mechanisms in the Open and Closed modes?===&lt;br /&gt;
I can see that this could be useful. Maybe.&lt;br /&gt;
&lt;br /&gt;
===Will community extensions to the kernel (modules) be permitted in Open/Closed modes?===&lt;br /&gt;
I can&#039;t see how - which leads to the question: How do community &#039;enhancements&#039; to the kernel get adopted?&lt;br /&gt;
&lt;br /&gt;
===Is there any GPLv3 software impacted?===&lt;br /&gt;
Please have a license discussion somewhere and let us know when you have consensus.&lt;br /&gt;
What is Nokias position? Peter made a statement at the talk - can someone transcribe it and/or get Nokia to clarify.&lt;br /&gt;
&lt;br /&gt;
===What exactly is available to the end user?===&lt;br /&gt;
&lt;br /&gt;
* storage encryption ?&lt;br /&gt;
* PIM data encryption ?&lt;br /&gt;
* encrypted/signed communications (phone, sms/mms, mails, IM) ?&lt;br /&gt;
&lt;br /&gt;
=== How does closed mode affect on-device debugging? ===&lt;br /&gt;
&lt;br /&gt;
For example, will ptrace(2) still work (eg gdb, strace &amp;amp; ltrace)?  Will we be able to produce code dumps?&lt;br /&gt;
&lt;br /&gt;
===Will DRM-free data and DRM-free applications be accessible from both modes once they&#039;re installed/created in either of the two modes?===&lt;br /&gt;
&lt;br /&gt;
E.g.: I start in DRM-mode, install DRM-free applications from Extras, take 3 pictures, add some contacts. Then I switch to DRM-free mode: Will I be able to run the applications installed in DRM-free mode, view and edit my contacts and view and edit my own pictures? (And the other way round, of course, starting from DRM-free mode and switching to DRM afterwards.)&lt;br /&gt;
&lt;br /&gt;
===What is open mode good for at all?===&lt;br /&gt;
&lt;br /&gt;
Provided you don&#039;t consume digitally restricted media and don&#039;t purchase applications that in any way rely on DRM: You don&#039;t need DRM-mode then, but on the other hand why would you want DRM-free mode? What is it you cannot do in DRM-mode in such a scenario?  Use case?&lt;br /&gt;
&lt;br /&gt;
===What is ARM&#039;s TrustZone?===&lt;br /&gt;
The official ARM TrustZone page:&lt;br /&gt;
http://www.arm.com/products/security/trustzone/index.html&lt;br /&gt;
&lt;br /&gt;
===Can the Trusted Execution Environment (TrEE) be used as a kill switch for the device even if it runs in open mode?===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Maintaining the discussion ==&lt;br /&gt;
&lt;br /&gt;
On the [http://talk.maemo.org/showthread.php?p=344427#post344427 talk.maemo.org thread], I suggest that end-users are kept at arms&#039; length from this page and we use it as a proper communication mechanism between the community and Elena et al. --[[User:jaffa|Jaffa]] 10:43, 13 October 2009 (UTC)&lt;br /&gt;
&lt;br /&gt;
More discussion in the [http://mg.pov.lt/maemo-irclog/%23maemo.2009-10-11.log.html#t2009-10-11T12:50:36 #maemo chat] which was going on concurrently with the talk and a [http://www.flickr.com/photos/30863507@N02/4007518495/ few] [http://www.flickr.com/photos/30863507@N02/4008286892/ flickr] [http://www.flickr.com/photos/30863507@N02/4007522767/ photos]. --[[User:jaffa|Jaffa]] 11:20, 13 October 2009 (UTC)&lt;/div&gt;</summary>
		<author><name>192.100.124.219</name></author>
	</entry>
	<entry>
		<id>https://maemo.octonezd.me/index.php?title=Talk:Maemo_security&amp;diff=45594</id>
		<title>Talk:Maemo security</title>
		<link rel="alternate" type="text/html" href="https://maemo.octonezd.me/index.php?title=Talk:Maemo_security&amp;diff=45594"/>
		<updated>2009-10-15T07:31:35Z</updated>

		<summary type="html">&lt;p&gt;192.100.124.219: /* How easy is it to switch between Open and Closed modes? */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Suggested questions:&lt;br /&gt;
&lt;br /&gt;
===Is there a diagram showing the security framework and components?===&lt;br /&gt;
There were some diagrams in the presentation - can we see them.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Elena Reshetova: The presentation was uploaded, and currently it is the only information, which I can share.&lt;br /&gt;
&lt;br /&gt;
===What is &amp;quot;Open Mode&amp;quot; and can it be revoked remotely?===&lt;br /&gt;
Is that the right terminology?&lt;br /&gt;
Essentially can Nokia reach out the the 2nd stage bootloader and  tell it to stop running unsigned kernels.&lt;br /&gt;
Maybe this should be 2 questions.&lt;br /&gt;
&lt;br /&gt;
===What does closed mode restrict you from doing?===&lt;br /&gt;
&lt;br /&gt;
* Terminal?&lt;br /&gt;
* Root?&lt;br /&gt;
** If the [http://aegis.sf.net Aegis AC] is used for the protected storage then root is probably disabled.&lt;br /&gt;
&lt;br /&gt;
** I don&#039;t think this Aegis has anything to do with Maemo&lt;br /&gt;
&lt;br /&gt;
Elena Reshetova: We don&#039;t have any connection to the Aegis Project, mentioned above. This is a collision of names, I am sorry about it. &lt;br /&gt;
In general &amp;quot;close&amp;quot; mode has its own security policy, which user won&#039;t be able to change. &lt;br /&gt;
&lt;br /&gt;
* Cellular is marked as a protected ressource in the slide. Can one still use it (phone, data, sms etc.) while running in open mode? While runnin a rebuilt kernel?&lt;br /&gt;
&lt;br /&gt;
Elena Reshetova: If you use your own kernel, you are the one to set the security policy for the device, meaning that your SW in this case can make calls, send sms and so on (for example). Please note that the list of protected resources on the slide is given just as example (to show the possible granularity level), so it doesn&#039;t mean that we would have exactly these resources.&lt;br /&gt;
&lt;br /&gt;
===How easy is it to switch between Open and Closed modes?===&lt;br /&gt;
&lt;br /&gt;
Is it so trivial that you would want to and be able to do it several times a day and on the go (without restart)?&lt;br /&gt;
&lt;br /&gt;
Elena Reshetova: I should be able to tell the exact procedure in the future, but for now I can say that it won&#039;t be so trivial (like press the GUI button :-)), and the restart is needed. The checks for the SW image are done by the Loader, and during the boot time, so you do need to restart.&lt;br /&gt;
&lt;br /&gt;
===Can network operators restrict you switching to Open mode?===&lt;br /&gt;
Like if a device is sim-locked to a particular network, does the device get locked down in closed DRM mode only too? Can you always switch to open mode? &lt;br /&gt;
&lt;br /&gt;
===How granular is the encryption?===&lt;br /&gt;
If my app creates content in the closed mode can I see it in open mode?&lt;br /&gt;
&lt;br /&gt;
===Can open applications use the privilege mechanisms in the Open and Closed modes?===&lt;br /&gt;
&lt;br /&gt;
===Can open applications use the DRM encryption mechanisms in the Open and Closed modes?===&lt;br /&gt;
I can see that this could be useful. Maybe.&lt;br /&gt;
&lt;br /&gt;
===Will community extensions to the kernel (modules) be permitted in Open/Closed modes?===&lt;br /&gt;
I can&#039;t see how - which leads to the question: How do community &#039;enhancements&#039; to the kernel get adopted?&lt;br /&gt;
&lt;br /&gt;
===Is there any GPLv3 software impacted?===&lt;br /&gt;
Please have a license discussion somewhere and let us know when you have consensus.&lt;br /&gt;
What is Nokias position? Peter made a statement at the talk - can someone transcribe it and/or get Nokia to clarify.&lt;br /&gt;
&lt;br /&gt;
===What exactly is available to the end user?===&lt;br /&gt;
&lt;br /&gt;
* storage encryption ?&lt;br /&gt;
* PIM data encryption ?&lt;br /&gt;
* encrypted/signed communications (phone, sms/mms, mails, IM) ?&lt;br /&gt;
&lt;br /&gt;
=== How does closed mode affect on-device debugging? ===&lt;br /&gt;
&lt;br /&gt;
For example, will ptrace(2) still work (eg gdb, strace &amp;amp; ltrace)?  Will we be able to produce code dumps?&lt;br /&gt;
&lt;br /&gt;
===Will DRM-free data and DRM-free applications be accessible from both modes once they&#039;re installed/created in either of the two modes?===&lt;br /&gt;
&lt;br /&gt;
E.g.: I start in DRM-mode, install DRM-free applications from Extras, take 3 pictures, add some contacts. Then I switch to DRM-free mode: Will I be able to run the applications installed in DRM-free mode, view and edit my contacts and view and edit my own pictures? (And the other way round, of course, starting from DRM-free mode and switching to DRM afterwards.)&lt;br /&gt;
&lt;br /&gt;
===What is open mode good for at all?===&lt;br /&gt;
&lt;br /&gt;
Provided you don&#039;t consume digitally restricted media and don&#039;t purchase applications that in any way rely on DRM: You don&#039;t need DRM-mode then, but on the other hand why would you want DRM-free mode? What is it you cannot do in DRM-mode in such a scenario?  Use case?&lt;br /&gt;
&lt;br /&gt;
===What is ARM&#039;s TrustZone?===&lt;br /&gt;
The official ARM TrustZone page:&lt;br /&gt;
http://www.arm.com/products/security/trustzone/index.html&lt;br /&gt;
&lt;br /&gt;
===Can the Trusted Execution Environment (TrEE) be used as a kill switch for the device even if it runs in open mode?===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Maintaining the discussion ==&lt;br /&gt;
&lt;br /&gt;
On the [http://talk.maemo.org/showthread.php?p=344427#post344427 talk.maemo.org thread], I suggest that end-users are kept at arms&#039; length from this page and we use it as a proper communication mechanism between the community and Elena et al. --[[User:jaffa|Jaffa]] 10:43, 13 October 2009 (UTC)&lt;br /&gt;
&lt;br /&gt;
More discussion in the [http://mg.pov.lt/maemo-irclog/%23maemo.2009-10-11.log.html#t2009-10-11T12:50:36 #maemo chat] which was going on concurrently with the talk and a [http://www.flickr.com/photos/30863507@N02/4007518495/ few] [http://www.flickr.com/photos/30863507@N02/4008286892/ flickr] [http://www.flickr.com/photos/30863507@N02/4007522767/ photos]. --[[User:jaffa|Jaffa]] 11:20, 13 October 2009 (UTC)&lt;/div&gt;</summary>
		<author><name>192.100.124.219</name></author>
	</entry>
	<entry>
		<id>https://maemo.octonezd.me/index.php?title=Talk:Maemo_security&amp;diff=45595</id>
		<title>Talk:Maemo security</title>
		<link rel="alternate" type="text/html" href="https://maemo.octonezd.me/index.php?title=Talk:Maemo_security&amp;diff=45595"/>
		<updated>2009-10-14T14:39:24Z</updated>

		<summary type="html">&lt;p&gt;192.100.124.219: /* Is there a diagram showing the security framework and components? */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Suggested questions:&lt;br /&gt;
&lt;br /&gt;
===Is there a diagram showing the security framework and components?===&lt;br /&gt;
There were some diagrams in the presentation - can we see them.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Elena Reshetova: The presentation was uploaded, and currently it is the only information, which I can share.&lt;br /&gt;
&lt;br /&gt;
===What is &amp;quot;Open Mode&amp;quot; and can it be revoked remotely?===&lt;br /&gt;
Is that the right terminology?&lt;br /&gt;
Essentially can Nokia reach out the the 2nd stage bootloader and  tell it to stop running unsigned kernels.&lt;br /&gt;
Maybe this should be 2 questions.&lt;br /&gt;
&lt;br /&gt;
===What does closed mode restrict you from doing?===&lt;br /&gt;
&lt;br /&gt;
* Terminal?&lt;br /&gt;
* Root?&lt;br /&gt;
** If the [http://aegis.sf.net Aegis AC] is used for the protected storage then root is probably disabled.&lt;br /&gt;
&lt;br /&gt;
** I don&#039;t think this Aegis has anything to do with Maemo&lt;br /&gt;
&lt;br /&gt;
Elena Reshetova: We don&#039;t have any connection to the Aegis Project, mentioned above. This is a collision of names, I am sorry about it. &lt;br /&gt;
In general &amp;quot;close&amp;quot; mode has its own security policy, which user won&#039;t be able to change. &lt;br /&gt;
&lt;br /&gt;
* Cellular is marked as a protected ressource in the slide. Can one still use it (phone, data, sms etc.) while running in open mode? While runnin a rebuilt kernel?&lt;br /&gt;
&lt;br /&gt;
Elena Reshetova: If you use your own kernel, you are the one to set the security policy for the device, meaning that your SW in this case can make calls, send sms and so on (for example). Please note that the list of protected resources on the slide is given just as example (to show the possible granularity level), so it doesn&#039;t mean that we would have exactly these resources.&lt;br /&gt;
&lt;br /&gt;
===How easy is it to switch between Open and Closed modes?===&lt;br /&gt;
&lt;br /&gt;
Is it so trivial that you would want to and be able to do it several times a day and on the go (without restart)?&lt;br /&gt;
&lt;br /&gt;
===Can network operators restrict you switching to Open mode?===&lt;br /&gt;
Like if a device is sim-locked to a particular network, does the device get locked down in closed DRM mode only too? Can you always switch to open mode? &lt;br /&gt;
&lt;br /&gt;
===How granular is the encryption?===&lt;br /&gt;
If my app creates content in the closed mode can I see it in open mode?&lt;br /&gt;
&lt;br /&gt;
===Can open applications use the privilege mechanisms in the Open and Closed modes?===&lt;br /&gt;
&lt;br /&gt;
===Can open applications use the DRM encryption mechanisms in the Open and Closed modes?===&lt;br /&gt;
I can see that this could be useful. Maybe.&lt;br /&gt;
&lt;br /&gt;
===Will community extensions to the kernel (modules) be permitted in Open/Closed modes?===&lt;br /&gt;
I can&#039;t see how - which leads to the question: How do community &#039;enhancements&#039; to the kernel get adopted?&lt;br /&gt;
&lt;br /&gt;
===Is there any GPLv3 software impacted?===&lt;br /&gt;
Please have a license discussion somewhere and let us know when you have consensus.&lt;br /&gt;
What is Nokias position? Peter made a statement at the talk - can someone transcribe it and/or get Nokia to clarify.&lt;br /&gt;
&lt;br /&gt;
===What exactly is available to the end user?===&lt;br /&gt;
&lt;br /&gt;
* storage encryption ?&lt;br /&gt;
* PIM data encryption ?&lt;br /&gt;
* encrypted/signed communications (phone, sms/mms, mails, IM) ?&lt;br /&gt;
&lt;br /&gt;
=== How does closed mode affect on-device debugging? ===&lt;br /&gt;
&lt;br /&gt;
For example, will ptrace(2) still work (eg gdb, strace &amp;amp; ltrace)?  Will we be able to produce code dumps?&lt;br /&gt;
&lt;br /&gt;
===Will DRM-free data and DRM-free applications be accessible from both modes once they&#039;re installed/created in either of the two modes?===&lt;br /&gt;
&lt;br /&gt;
E.g.: I start in DRM-mode, install DRM-free applications from Extras, take 3 pictures, add some contacts. Then I switch to DRM-free mode: Will I be able to run the applications installed in DRM-free mode, view and edit my contacts and view and edit my own pictures? (And the other way round, of course, starting from DRM-free mode and switching to DRM afterwards.)&lt;br /&gt;
&lt;br /&gt;
===What is open mode good for at all?===&lt;br /&gt;
&lt;br /&gt;
Provided you don&#039;t consume digitally restricted media and don&#039;t purchase applications that in any way rely on DRM: You don&#039;t need DRM-mode then, but on the other hand why would you want DRM-free mode? What is it you cannot do in DRM-mode in such a scenario?  Use case?&lt;br /&gt;
&lt;br /&gt;
===What is ARM&#039;s TrustZone?===&lt;br /&gt;
The official ARM TrustZone page:&lt;br /&gt;
http://www.arm.com/products/security/trustzone/index.html&lt;br /&gt;
&lt;br /&gt;
===Can the Trusted Execution Environment (TrEE) be used as a kill switch for the device even if it runs in open mode?===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Maintaining the discussion ==&lt;br /&gt;
&lt;br /&gt;
On the [http://talk.maemo.org/showthread.php?p=344427#post344427 talk.maemo.org thread], I suggest that end-users are kept at arms&#039; length from this page and we use it as a proper communication mechanism between the community and Elena et al. --[[User:jaffa|Jaffa]] 10:43, 13 October 2009 (UTC)&lt;br /&gt;
&lt;br /&gt;
More discussion in the [http://mg.pov.lt/maemo-irclog/%23maemo.2009-10-11.log.html#t2009-10-11T12:50:36 #maemo chat] which was going on concurrently with the talk and a [http://www.flickr.com/photos/30863507@N02/4007518495/ few] [http://www.flickr.com/photos/30863507@N02/4008286892/ flickr] [http://www.flickr.com/photos/30863507@N02/4007522767/ photos]. --[[User:jaffa|Jaffa]] 11:20, 13 October 2009 (UTC)&lt;/div&gt;</summary>
		<author><name>192.100.124.219</name></author>
	</entry>
</feed>