<?xml version="1.0"?>
<?xml-stylesheet type="text/css" href="http://techbase.kde.org/skins/common/feed.css?0.2"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
		<id>http://techbase.kde.org/api.php?action=feedcontributions&amp;user=Bernhard&amp;feedformat=atom</id>
		<title>KDE TechBase - User contributions [en]</title>
		<link rel="self" type="application/atom+xml" href="http://techbase.kde.org/api.php?action=feedcontributions&amp;user=Bernhard&amp;feedformat=atom"/>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Special:Contributions/Bernhard"/>
		<updated>2013-06-19T18:54:16Z</updated>
		<subtitle>User contributions</subtitle>
		<generator>MediaWiki 1.20.2</generator>

	<entry>
		<id>http://techbase.kde.org/Thread:Talk:Development/Languages/Python/PyKDE_Homepage_gone%3F</id>
		<title>Thread:Talk:Development/Languages/Python/PyKDE Homepage gone?</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Thread:Talk:Development/Languages/Python/PyKDE_Homepage_gone%3F"/>
				<updated>2013-01-31T19:08:17Z</updated>
		
		<summary type="html">&lt;p&gt;Bernhard: New thread: PyKDE Homepage gone?&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The link to the PyKDE Homepage at http://www.riverbankcomputing.co.uk/software/pykde/intro is gone.&lt;br /&gt;
There is no trace of PyKDE4 at riverbankcomputing, so this cannot be fixed I guess. What happened to it?&lt;br /&gt;
How could it be fixed?&lt;/div&gt;</summary>
		<author><name>Bernhard</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Talk:Development/Languages/Python</id>
		<title>Talk:Development/Languages/Python</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Talk:Development/Languages/Python"/>
				<updated>2013-01-31T19:08:17Z</updated>
		
		<summary type="html">&lt;p&gt;Bernhard: Talk page autocreated when first thread was posted&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Bernhard</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Development/Languages/Python</id>
		<title>Development/Languages/Python</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Development/Languages/Python"/>
				<updated>2013-01-31T19:05:56Z</updated>
		
		<summary type="html">&lt;p&gt;Bernhard: /* Applications using PyKDE */ Adding synaptiks&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
Python is a powerful object oriented, dynamic language. You can find out more about the language itself on the Python website at http://www.python.org/.&lt;br /&gt;
&lt;br /&gt;
Two important pieces of software are needed to develop KDE applications using Python, [http://www.riverbankcomputing.co.uk/software/pyqt/intro PyQt] and PyKDE. PyQt provides Python support for the Qt library which KDE is built on. PyQt can be obtained at http://www.riverbankcomputing.co.uk/software/pyqt/ . Riverbank Computing has a lot of good documentation about how to use PyQt to create pure Qt applications. If you are new to KDE / Python development, then learning how to use PyQt is the best first step.&lt;br /&gt;
&lt;br /&gt;
PyKDE builds on top of PyQt and adds Python support for KDE's libraries and technologies.&lt;br /&gt;
&lt;br /&gt;
PyKDE is distributed as part of the kdebindings module. Stable releases can be downloaded from the normal [http://kde.org/download/ KDE download page], although it is usually easier to install pre-built packages from your operating system distribution. You can also obtain PyKDE from KDE's subversion repository:&lt;br /&gt;
&lt;br /&gt;
 svn co svn://anonsvn.kde.org/home/kde/trunk/KDE/kdebindings/python/pykde4&lt;br /&gt;
&lt;br /&gt;
The code in subversion can be browsed online via http://websvn.kde.org/trunk/KDE/kdebindings/python/pykde4/.&lt;br /&gt;
&lt;br /&gt;
Or from KDE's git repository:&lt;br /&gt;
&lt;br /&gt;
git clone git://anongit.kde.org/pykde4&lt;br /&gt;
&lt;br /&gt;
==Documentation and Tutorials==&lt;br /&gt;
* [http://www.riverbankcomputing.co.uk/software/pyqt/intro PyQt home page and documentation]&lt;br /&gt;
* [[/Using PyKDE 4|Using PyKDE 4]]&lt;br /&gt;
* [http://api.kde.org/pykde-4.3-api/toc.html PyKDE 4.3 Documentation]&lt;br /&gt;
* [http://api.kde.org/pykde-4.3-api/modules.html PyKDE 4.3 API class reference]&lt;br /&gt;
* [http://api.kde.org/pykde-4.2-api/ PyKDE 4.2 API class reference]&lt;br /&gt;
* [[/PyKDE_WebKit_Tutorial|PyKDE WebKit Tutorial]], a simple web browser application in PyKDE&lt;br /&gt;
* [[Development/Tutorials/Python introduction to signals and slots|introduction to signals and slots]]&lt;br /&gt;
* [[Development/Tutorials/Python-hello world|Hello world]]. An example that you can also use as a starting point for your development.&lt;br /&gt;
* [http://www.rkblog.rk.edu.pl/w/p/introduction-pyqt4/ Introduction article about PyQt4]&lt;br /&gt;
* [http://lateral.netmanagers.com.ar/stories/BBS47.html PyQt by Example]&lt;br /&gt;
* [[/PyKDE_DBus_Tutorial|Python DBus Tutorial]]. See how to call dbus methods from PyKDE.&lt;br /&gt;
* [[/PyKDE_Knotify_Tutorial|Python KNotify Tutorial]]. How to use Notification and Jobs in your Applications&lt;br /&gt;
* [[Development/Tutorials/Phonon/Introduction/Python|Phonon Example]]&lt;br /&gt;
* [[Development/Tutorials/Plasma#Plasma_Programming_with_Python|Plasma tutorials]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===KDE 3 and PyKDE 3===&lt;br /&gt;
Documentation and tutorials for the older PyQt and PyKDE 3.&lt;br /&gt;
* [http://vizzzion.org/?id=pyqt Python-Qt tutorial]&amp;lt;br /&amp;gt;''&amp;lt;font size=&amp;quot;-1&amp;quot;&amp;gt; In this tutorial, the basic steps of creating a Qt-based application with PyQt are explained. &amp;lt;/font&amp;gt;''&lt;br /&gt;
&lt;br /&gt;
==Further reading and information==&lt;br /&gt;
*[http://www.riverbankcomputing.com/mailman/listinfo/pyqt PyQt and PyKDE mailing list]&lt;br /&gt;
*[http://www.riverbankcomputing.co.uk/software/pykde/intro PyKDE Homepage]&lt;br /&gt;
*[http://www.diotavelli.net/PyQtWiki The PyQt and PyKDE community Wiki]&lt;br /&gt;
*The book [http://www.qtrac.eu/pyqtbook.html Rapid GUI Programming with Python and Qt] is available and covers Qt 4 programming with Python.&lt;br /&gt;
*The IRC channel ''#kubuntu-devel'' on freenode often has PyKDE programmers in it.&lt;br /&gt;
*The IRC channel ''#pyqt'' on freenode is used by some PyQt application developers.&lt;br /&gt;
&lt;br /&gt;
==Applications using PyKDE==&lt;br /&gt;
*[http://utils.kde.org/projects/printer-applet/ printer-applet]&lt;br /&gt;
*[http://websvn.kde.org/trunk/KDE/kdeadmin/system-config-printer-kde/ system-config-printer-kde]&lt;br /&gt;
*[http://websvn.kde.org/trunk/extragear/utils/guidance-power-manager/ Guidance Power Manager], a battery applet&lt;br /&gt;
*[https://code.launchpad.net/ubiquity/trunk Ubiquity], installer for Kubuntu&lt;br /&gt;
*[https://code.launchpad.net/~ubuntu-core-dev/gdebi/ubuntu GDebi], .deb package installer&lt;br /&gt;
*[https://code.launchpad.net/~jr/install-package/trunk install-package], graphical apt-get&lt;br /&gt;
*[http://draketo.de/light/english/pyrad pyRad], wheel type command interface&lt;br /&gt;
*[https://projects.kde.org/projects/kde/kdebindings/pykde4/repository/revisions/master/show/examples/ some examples are in the PyKDE source]&lt;br /&gt;
*[https://projects.kde.org/projects/kde/kdeexamples/repository/revisions/master/show/bindings/python/ there are also python examples in the kdeexamples project]&lt;br /&gt;
*[http://websvn.kde.org/trunk/KDE/kdegames/kajongg/ Kajongg], a board game&lt;br /&gt;
*[http://synaptiks.readthedocs.org Synaptiks], a touchpad configuration and management tool.&lt;br /&gt;
[[Category:Python]]&lt;/div&gt;</summary>
		<author><name>Bernhard</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Schedules/KDE4/4.7_Feature_Plan</id>
		<title>Schedules/KDE4/4.7 Feature Plan</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Schedules/KDE4/4.7_Feature_Plan"/>
				<updated>2011-08-31T15:14:55Z</updated>
		
		<summary type="html">&lt;p&gt;Bernhard: /* kdelibs */ added credits for the klockfile change&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This is a list of planned features for the SC 4.7 release. &lt;br /&gt;
&lt;br /&gt;
See also: &lt;br /&gt;
&lt;br /&gt;
*[[Schedules/KDE4/4.7 Release Schedule]] &lt;br /&gt;
*[[Schedules/KDE4/4.7 Release Goals]] &lt;br /&gt;
*[[Schedules/KDE4/4.6 Feature Plan]] (previous major release)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; Legend: &lt;br /&gt;
&lt;br /&gt;
*todo =&amp;amp;gt; not started yet &lt;br /&gt;
*in-progress =&amp;amp;gt; started, but not completed yet &lt;br /&gt;
*done =&amp;amp;gt; completed&lt;br /&gt;
&lt;br /&gt;
__TOC__ &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= kdelibs  =&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; border=&amp;quot;1&amp;quot; style=&amp;quot;border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;&amp;quot;&lt;br /&gt;
&lt;br /&gt;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact &lt;br /&gt;
&lt;br /&gt;
{{FeatureDone&lt;br /&gt;
|KLocale&lt;br /&gt;
|Number grouping support&lt;br /&gt;
|john@layt.net|John Layt}}&lt;br /&gt;
&lt;br /&gt;
{{FeatureDone&lt;br /&gt;
|KLocale&lt;br /&gt;
|Narrow date name format support&lt;br /&gt;
|john@layt.net|John Layt}}&lt;br /&gt;
&lt;br /&gt;
{{FeatureDone&lt;br /&gt;
|KLocale&lt;br /&gt;
|Week Numbers support&lt;br /&gt;
|john@layt.net|John Layt}}&lt;br /&gt;
&lt;br /&gt;
{{FeatureDone&lt;br /&gt;
|kdecore/io/klockfile&lt;br /&gt;
|For 4.7.1: Implement locking on non-NFS systems using O_EXCL. Good for VFAT, CFIS and other filesystems, as it makes KConfig work and thus many KDE Applications. Details in #203554. Conducted by KDAB and Intevation; funded by IT Services of ETH Zurich.&lt;br /&gt;
|faure@kde.org|David Faure}}&lt;br /&gt;
&lt;br /&gt;
{{FeatureInProgress&lt;br /&gt;
|KLocale&lt;br /&gt;
|Windows Backend&lt;br /&gt;
|john@layt.net|John Layt}}&lt;br /&gt;
&lt;br /&gt;
{{FeatureInProgress&lt;br /&gt;
|kdeui&lt;br /&gt;
|New date/time edit widgets from kdepim&lt;br /&gt;
|john@layt.net|John Layt}}&lt;br /&gt;
&lt;br /&gt;
{{FeatureInProgress&lt;br /&gt;
|KHelpMenu&lt;br /&gt;
|Fast action searching&lt;br /&gt;
|afiestas@kde.org|Alex Fiestas}}&lt;br /&gt;
&lt;br /&gt;
{{FeatureInProgress&lt;br /&gt;
|KFilePlaces&lt;br /&gt;
|Activity-specific Places&lt;br /&gt;
|j.maceachern@gmail.com|Jeffery MacEachern}}&lt;br /&gt;
&lt;br /&gt;
{{FeatureInProgress&lt;br /&gt;
|KCookieJar&lt;br /&gt;
|Storing cookies in KWallet&lt;br /&gt;
|fid@gpul.org|José Millán Soto}}&lt;br /&gt;
&lt;br /&gt;
{{FeatureInProgress&lt;br /&gt;
|KHTML&lt;br /&gt;
|WebIDL usage&lt;br /&gt;
|maksim@kde.org|Maksim Orlovich}}&lt;br /&gt;
&lt;br /&gt;
{{FeatureTodo&lt;br /&gt;
|KHTML&lt;br /&gt;
|Accessibility improvements&lt;br /&gt;
|maksim@kde.org|Maksim Orlovich}}&lt;br /&gt;
&lt;br /&gt;
{{FeatureTodo&lt;br /&gt;
|Nepomuk&lt;br /&gt;
|Query term class to query graph meta data&lt;br /&gt;
|trueg@kde.org|Sebastian Trueg}}&lt;br /&gt;
&lt;br /&gt;
{{FeatureTodo&lt;br /&gt;
|Plasma&lt;br /&gt;
|Preconfigurable plasmoids&lt;br /&gt;
|dpalacio@orbitalibre.org|David Palacio}}&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= kde-baseapps  =&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; border=&amp;quot;1&amp;quot; style=&amp;quot;border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;&amp;quot;&lt;br /&gt;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact &lt;br /&gt;
{{FeatureTodo|Dolphin|Support Fwd/Back Mouse Buttons|sebastian@sebastian-doerner.de|Sebastian Dörner}}&lt;br /&gt;
{{FeatureDone|Dolphin|Polish the default user interface to minimize visual clutter (see http://ppenz.blogspot.com/2011/03/menu-bars.html)|peter.penz19@gmail.com|Peter Penz}}&lt;br /&gt;
{{FeatureDone|Dolphin|Improve user interface for searching files and metadata|peter.penz19@gmail.com|Peter Penz}}&lt;br /&gt;
{{FeatureTodo|Settings|Improve proxy configuration dialog|adawit@kde.org|Dawit Alemayehu}}&lt;br /&gt;
&lt;br /&gt;
{{FeatureInProgress&lt;br /&gt;
|Locale KCM&lt;br /&gt;
|Support for Number Grouping, Windows Backend, Country Subdivsions&lt;br /&gt;
|john@layt.net|John Layt}}&lt;br /&gt;
&lt;br /&gt;
{{FeatureInProgress&lt;br /&gt;
|nspluginviewer&lt;br /&gt;
|npruntime support improvements&lt;br /&gt;
|maksim@kde.org|Maksim Orlovich}}&lt;br /&gt;
&lt;br /&gt;
{{FeatureTodo&lt;br /&gt;
|Dolphin&lt;br /&gt;
|Popup menu for advanced queries on the metadata display&lt;br /&gt;
|trueg@kde.org|Sebastian Trueg}}&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= kde-runtime  =&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; border=&amp;quot;1&amp;quot; style=&amp;quot;border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;&amp;quot;&lt;br /&gt;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact &lt;br /&gt;
{{FeatureInProgress|kio_sftp|async download support|asn@cryptomilk.org|Andreas Schneider}}&lt;br /&gt;
{{FeatureInProgress&lt;br /&gt;
|Locale definition files&lt;br /&gt;
|Migrate Country and Currency Codes to xml/po formats, re-arrange l10n files including settings and flags, add Subdivision code files.&lt;br /&gt;
|john@layt.net|John Layt}}&lt;br /&gt;
{{FeatureTodo|kio-upnp-ms|Merge from playground (https://projects.kde.org/projects/playground/base/kio-upnp-ms/) into kde-runtime|nsm.nikhil@gmail.com|Nikhil Marathe}}&lt;br /&gt;
{{FeatureDone|network:/ kio-slave|port to Cagibi 0.2|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureDone|Nepomuk Datamanagement Service|Merge it into the master branch|handa.vish@gmail.com|Vishesh Handa &amp;amp; Sebastian Trueg}}&lt;br /&gt;
{{FeatureDone|Port Strigi Service to DMS|The Strigi Service needs to use the DMS API|handa.vish@gmail.com|Vishesh Handa &amp;amp; Sebastian Trueg}}&lt;br /&gt;
&lt;br /&gt;
{{FeatureDone&lt;br /&gt;
|Nepomuk&lt;br /&gt;
|KCM to manage the removable storages to index&lt;br /&gt;
|trueg@kde.org|Sebastian Trueg}}&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= kde-workspace  =&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; border=&amp;quot;1&amp;quot; style=&amp;quot;border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;&amp;quot;&lt;br /&gt;
&lt;br /&gt;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact &lt;br /&gt;
&lt;br /&gt;
{{FeatureDone|System Settings/keyboard|Allow a shortcut per keyboard layout (bug 224489)|arysin@mail.com|Andriy Rysin}}&lt;br /&gt;
{{FeatureDone|System Settings/keyboard|Session management for keyboard layouts (bug 52095, 174948)|arysin@mail.com|Andriy Rysin}}&lt;br /&gt;
{{FeatureDone|klipper|Support qrcode as well as datamatrix for mobile barcodes|sune@vuorela.dk|Sune Vuorela}}&lt;br /&gt;
{{FeatureDone|weather|Support debian weather|sune@vuorela.dk|Sune Vuorela}}&lt;br /&gt;
{{FeatureDone|Oxygen|Various widgets polishing (scrollbars, progressbars, sliders, toolbuttons, menu and menubar selection, etc.)|hugo@oxygen-icons.org|Hugo Pereira Da Costa}}&lt;br /&gt;
{{FeatureDone|Oxygen|Implement kwin's new shadow system for menus, drop-downlists, etc.|hugo@oxygen-icons.org|Hugo Pereira Da Costa}}&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
! style=&amp;quot;text-align: center;&amp;quot; colspan=&amp;quot;4&amp;quot; | Plasma&lt;br /&gt;
{{FeatureInProgress&lt;br /&gt;
|Plasma Clock/Calendar&lt;br /&gt;
|improve usability, settings, akonadi and holiday data.  See Plasma wiki.&lt;br /&gt;
|john@layt.net|John Layt}}&lt;br /&gt;
{{FeatureDone&lt;br /&gt;
|Plasma Desktop&lt;br /&gt;
|launch krunner when the user starts typing&lt;br /&gt;
|vitorboschi@gmail.com|Vitor Boschi}}&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
! style=&amp;quot;text-align: center;&amp;quot; colspan=&amp;quot;4&amp;quot; | KDM&lt;br /&gt;
{{FeatureDone&lt;br /&gt;
|KDM&lt;br /&gt;
|GRUB2 support for KDM (see http://ksmanis.wordpress.com/2011/04/21/hello-planet-and-grub2-support-for-kdm/)&lt;br /&gt;
|konstantinos.smanis@gmail.com|Konstantinos Smanis}}&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
! style=&amp;quot;text-align: center;&amp;quot; colspan=&amp;quot;4&amp;quot; | KWin&lt;br /&gt;
{{FeatureDone|Compositor|OpenGL 2.x/OpenGL ES 2.0 compositing backend (see http://www.kdenews.org/2011/02/18/kwin-embraces-new-platforms-opengl-es-20-support)|mgraesslin@kde.org|Martin Gräßlin}}&lt;br /&gt;
{{FeatureDone|Compositor|New Shadow System (see http://blog.martin-graesslin.com/blog/2011/03/new-kwin-shadows/)|mgraesslin@kde.org|Martin Gräßlin}}&lt;br /&gt;
{{FeatureDone|Effects|Effect to render outlines|mgraesslin@kde.org|Martin Gräßlin}}&lt;br /&gt;
{{FeatureDone|Decorations|Do not require a decoration|mgraesslin@kde.org|Martin Gräßlin}}&lt;br /&gt;
{{FeatureInProgress|Core|Export most recently used windows to an X property|mgraesslin@kde.org|Martin Gräßlin}}&lt;br /&gt;
{{FeatureInProgress|BoxSwitch Effect|Animated Selection (see http://blog.martin-graesslin.com/blog/2011/02/is-kwin-rocket-science/)|mgraesslin@kde.org|Martin Gräßlin}}&lt;br /&gt;
{{FeatureInProgress|libkwineffects|API cleanup|mgraesslin@kde.org|Martin Gräßlin}}&lt;br /&gt;
{{FeatureTodo|libkwineffects|JavaScript bindings for writing Effects|mgraesslin@kde.org|Martin Gräßlin}}&lt;br /&gt;
{{FeatureInProgress|Mouse Emulation|Better accessibility support in mouse emulation|mgraesslin@kde.org|Martin Gräßlin}}&lt;br /&gt;
{{FeatureDone|kwin|Add multi head support|alberto@mattea.info|Alberto Mattea}}&lt;br /&gt;
{{FeatureInProgress|kwin|DBusMenu in Windeco|megabigbug@yahoo.fr|Lionel Chauvin}}&lt;br /&gt;
{{FeatureDone|ksplashx|Add multi head support|alberto@mattea.info|Alberto Mattea}}&lt;br /&gt;
{{FeatureTodo|krunner|Add multi head support|alberto@mattea.info|Alberto Mattea}}&lt;br /&gt;
{{FeatureInProgress|kwinrules kcm|UI cleanup (see https://git.reviewboard.kde.org/r/101041/)|thomas.luebking@gmail.com|Thomas Lübking}}&lt;br /&gt;
{{FeatureInProgress|kwincompositing kcm|Rearm unsafe OpenGL precheck (see https://git.reviewboard.kde.org/r/101061/)|thomas.luebking@gmail.com|Thomas Lübking}}&lt;br /&gt;
{{FeatureInProgress|PresentWindows Effect|Better highlight indication &amp;amp; close button handling)|thomas.luebking@gmail.com|Thomas Lübking}}&lt;br /&gt;
{{FeatureInProgress|general|Remove jargon from user interface.  Remove all instances of Akonadi/Nepomuk related jargon from the desktop, replace with meaningful text where needed.|wstephenson@kde.org|Will Stephenson}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= kdeedu  =&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; border=&amp;quot;1&amp;quot; style=&amp;quot;border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;&amp;quot;&lt;br /&gt;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact &lt;br /&gt;
{{FeatureDone|Marble|Bookmark Manager|earthwings@gentoo.org|Dennis Nienhüser, Thibaut Gridel}}&lt;br /&gt;
{{FeatureDone|Marble|QML Bindings: GPS Tracking|earthwings@gentoo.org|Dennis Nienhüser}}&lt;br /&gt;
{{FeatureInProgress|Marble|Routing API|earthwings@gentoo.org|Dennis Nienhüser}}&lt;br /&gt;
{{FeatureDone|Marble|Offline Address Search|earthwings@gentoo.org|Dennis Nienhüser}}&lt;br /&gt;
{{FeatureDone|Marble|Support monav version 0.3|earthwings@gentoo.org|Dennis Nienhüser}}&lt;br /&gt;
{{FeatureDone|Marble|Polish the Map Wizard: simpler UI, comprehensive validation of user input immediately on each page|bbeschow@cs.tu-berlin.de|Bernhard Beschow}}&lt;br /&gt;
{{FeatureInProgress|Marble|Reduce memory footprint of cached tiles|bbeschow@cs.tu-berlin.de|Bernhard Beschow}}&lt;br /&gt;
{{FeatureTodo|Marble|Separate thread for tile loading and texture blending (not texture mapping at the moment) for more smooth browsing|jmho@c-xx.com|Jens-Michael Hoffmann, Bernhard Beschow}}&lt;br /&gt;
{{FeatureTodo|Marble|Tile loading &amp;quot;read ahead&amp;quot; when idle, prerequisite: threaded tile loading|jmho@c-xx.com|Jens-Michael Hoffmann}}&lt;br /&gt;
{{FeatureDone|Marble|Multi threaded texture mapping|bbeschow@cs.tu-berlin.de|Bernhard Beschow}}&lt;br /&gt;
{{FeatureTodo|Marble|Implement mouse cursor wrapping a la Okular or Gwenview|bbeschow@cs.tu-berlin.de|Bernhard Beschow}}&lt;br /&gt;
{{FeatureInProgress|Marble|Manipulate Gps track data|tgridel@freedotfr|Thibaut Gridel}}&lt;br /&gt;
{{FeatureInProgress|Cantor|Integrate the Qalculate backend|agostinelli@gmail.com|Matteo Agostinelli}}&lt;br /&gt;
{{FeatureDone|Kalzium|Use KUnitConversion for all the Unit handling|etienne.rebetez@oberwallisch|Etienne Rebetez}}&lt;br /&gt;
{{FeatureDone|KTurtle|Add getdirection command&lt;br /&gt;
|nielsslot@gmaildotcom|Niels Slot}}&lt;br /&gt;
{{FeatureTodo|KTurtle|Add modulo command&lt;br /&gt;
|nielsslot@gmaildotcom|Niels Slot}}&lt;br /&gt;
{{FeatureDone|Step|Copy-and-Paste of items|kde@voecking.net|Sebastian Vöcking}}&lt;br /&gt;
{{FeatureDone|Step|Zoom on mouse wheel|kde@voecking.net|Sebastian Vöcking}}&lt;br /&gt;
{{FeatureDone|Step|Automatic expanding canvas|kde@voecking.net|Sebastian Vöcking}}&lt;br /&gt;
{{FeatureInProgress|Rocs|Auto - Handling of the Canvas|tcanabrava@kde.org|Tomaz Canabrava}}&lt;br /&gt;
{{FeatureDone|Rocs|Remove the thread for QtConcurrent on he core|tcanabrava@kde.org|Tomaz Canabrava}}&lt;br /&gt;
{{FeatureInProgress|Rocs|Polish the User Interface|tcanabrava@kde.org|Tomaz Canabrava}}&lt;br /&gt;
{{FeatureDone|Rocs|New Plugin for Automaticaly Graph Generation|tcanabrava@kde.org|Tomaz Canabrava}}&lt;br /&gt;
{{FeatureInProgress|Rocs|Bugfixes in the List Plugin|tcanabrava@kde.org|Tomaz Canabrava}}&lt;br /&gt;
{{FeatureInProgress|Rocs|Speedup in the drawing code|tcanabrava@kde.org|Tomaz Canabrava}}&lt;br /&gt;
{{FeatureInProgress|Rocs|Kalgebra backend|tcanabrava@kde.org|Tomaz Canabrava}}&lt;br /&gt;
{{FeatureDone|Rocs|Transform graph edges plugin|cola@uni-paderborn.de|Andreas Cord-Landwehr}}&lt;br /&gt;
{{FeatureDone|Rocs|Assign values to edges/nodes plugin|cola@uni-paderborn.de|Andreas Cord-Landwehr}}&lt;br /&gt;
{{FeatureDone|Kalzium|Titration calculator|TRINGALINVENT@libero.it|Luca Tringali}}&lt;br /&gt;
{{FeatureInProgress|KStars|SQLite Database of NGC Objects|victor.carbune@kdemail.net|Victor Carbune|}}&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= kdepim  =&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; border=&amp;quot;1&amp;quot; style=&amp;quot;border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;&amp;quot;&lt;br /&gt;
&lt;br /&gt;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact &lt;br /&gt;
&lt;br /&gt;
{{FeatureInProgress|KAlarm|Port to Akonadi|djarvie@kde.org|David Jarvie}}&lt;br /&gt;
{{FeatureDone|KAlarm|Allow reminders after the main alarm|djarvie@kde.org|David Jarvie}}&lt;br /&gt;
{{FeatureDone|KAlarm|Provide wake-from-suspend option for alarms|djarvie@kde.org|David Jarvie}}&lt;br /&gt;
&lt;br /&gt;
{{FeatureInProgress&lt;br /&gt;
|KHolidays&lt;br /&gt;
|Add support for Holiday Types and Observance Types&lt;br /&gt;
|john@layt.net|John Layt}}&lt;br /&gt;
&lt;br /&gt;
{{FeatureDone|Akonadi-contacts/kaddressbook|Show 2d barcodes of contact data|sune@vuorela.dk|Sune Vuorela}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= kdeplasma-addons =&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; border=&amp;quot;1&amp;quot; style=&amp;quot;border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;&amp;quot;&lt;br /&gt;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact &lt;br /&gt;
{{FeatureInProgress|Adjustable Clock|Plasmoid for displaying date and time in very customizable way|emdeck@gmail.com|Michał Dutkiewicz}}&lt;br /&gt;
{{FeatureInProgress|Comic Plasmoid|Support random comic strips|mat69@gmx.net|Matthias Fuchs}}&lt;br /&gt;
{{FeatureDone|Comic Plasmoid|Support creation of comic Comic Book Archive files|mat69@gmx.net|Matthias Fuchs}}&lt;br /&gt;
{{FeatureDone|Comic Plasmoid|Highlight comics that have a new comic strip|mat69@gmx.net|Matthias Fuchs}}&lt;br /&gt;
{{FeatureTodo|Events Runner|Support parsing weekdays (e.g. &amp;quot;in next monday&amp;quot;|alexey.noskov@gmail.com|Alexey Noskov}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= kdetoys  =&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; border=&amp;quot;1&amp;quot; style=&amp;quot;border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;&amp;quot;&lt;br /&gt;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact &lt;br /&gt;
{{FeatureDone|KTeaTime|Port to KStatusNotifierItem|miha@noughmad.eu|Miha Čančula}}&lt;br /&gt;
{{FeatureInProgress|KTeaTime|New svg based status icons|kde@hilefoks.org|Stefan Böhmann}}&lt;br /&gt;
{{FeatureInProgress|KTeaTime|Support categories|kde@hilefoks.org|Stefan Böhmann}}&lt;br /&gt;
{{FeatureTodo|KTeaTime|Improved command line|kde@hilefoks.org|Stefan Böhmann}}&lt;br /&gt;
{{FeatureTodo|KTeaTime|Tea runner|kde@hilefoks.org|Stefan Böhmann}}&lt;br /&gt;
{{FeatureTodo|KTeaTime|Port to KConfigXT|kde@hilefoks.org|Stefan Böhmann}} &lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= kdesdk  =&lt;br /&gt;
&lt;br /&gt;
{| cellspa/cing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; border=&amp;quot;1&amp;quot; style=&amp;quot;border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;&amp;quot;&lt;br /&gt;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact &lt;br /&gt;
{{FeatureInProgress|Lokalize|Remote translation memories|shafff@NOSPAMukr.net|Nick Shaforostoff}} &lt;br /&gt;
{{FeatureInProgress|Lokalize|QA: translation checks against user-specified regex-based rules|shafff@NOSPAMukr.net|Nick Shaforostoff}} &lt;br /&gt;
{{FeatureTodo|Lokalize|Integrate snowball stemmer for glossary|shafff@NOSPAMukr.net|Nick Shaforostoff}} &lt;br /&gt;
{{FeatureTodo|Lokalize|Continue implementing XLIFF spec|shafff@NOSPAMukr.net|Nick Shaforostoff}} &lt;br /&gt;
{{FeatureTodo|Lokalize|Segmentation [editing] functionality|shafff@NOSPAMukr.net |Nick Shaforostoff}} &lt;br /&gt;
{{FeatureTodo|Lokalize|Integrate with nepomuk (fast stats retrieval, tag cloud - incl sharing!)|shafff@NOSPAMukr.net|Nick Shaforostoff}} &lt;br /&gt;
{{FeatureTodo|Lokalize|loading compressed files and then saving them back in the original compression format (bug 65518)|shafff@NOSPAMukr.net|Nick Shaforostoff}} &lt;br /&gt;
{{FeatureInProgress|Okteta|Properly support strings (various Unicode encodings) in structures tool|alex.richardson@gmx.de|Alex Richardson}} &lt;br /&gt;
{{FeatureTodo|Okteta|Add custom datatypes to structures tool|alex.richardson@gmx.de|Alex Richardson}} &lt;br /&gt;
{{FeatureInProgress|Okteta|Add tool to convert between char encodings|kossebau@kde.org|Friedrich W. H. Kossebau}} &lt;br /&gt;
{{FeatureInProgress|Umbrello|QDockWidget based interface|elv1313@gmail.com|Emmanuel Lepage Vallee}} &lt;br /&gt;
{{FeatureInProgress|Umbrello|KDE4 icon theme and eye candies|elv1313@gmail.com|Emmanuel Lepage Vallee}}&lt;br /&gt;
{{FeatureTodo|Umbrello|Replace the current code viewer with katepart|elv1313@gmail.com|Emmanuel Lepage Vallee}} &lt;br /&gt;
{{FeatureDone|Umbrello|Add a zoom widget in the statusbar|elv1313@gmail.com|Emmanuel Lepage Vallee}}&lt;br /&gt;
{{FeatureDone|Kate|Add a new search in files plugin|kare.sars@iki.fi|K&amp;amp;aring;re S&amp;amp;auml;rs}}&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= kdegames =&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; border=&amp;quot;1&amp;quot; style=&amp;quot;border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;&amp;quot;&lt;br /&gt;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact &lt;br /&gt;
{{FeatureInProgress|KBreakout|Level editor|julian.helfferich@gmail.com|Julian Helfferich}}&lt;br /&gt;
{{FeatureInProgress|KBreakout|Load levelset option + 2 new levelsets|julian.helfferich@gmail.com|Julian Helfferich}}&lt;br /&gt;
{{FeatureTodo|KBreakout|Port to QGraphicsView|julian.helfferich@gmail.com|Julian Helfferich}}&lt;br /&gt;
{{FeatureInProgress|KPat|Create new saved game format that stores undo/redo history|parker.coates@gmail.com|Parker Coates}}&lt;br /&gt;
{{FeatureInProgress|libtagaro|Move first version into the kdegames module|majewsky@gmx.net|Stefan Majewsky}}&lt;br /&gt;
{{FeatureTodo|libtagaro|Use the new library: at least in Granatier and Kolf (to replace existing static source copies) and KDiamond|majewsky@gmx.net|Stefan Majewsky}}&lt;br /&gt;
{{FeatureInProgress|Palapeli|Cleanup interface|majewsky@gmx.net|Stefan Majewsky}}&lt;br /&gt;
{{FeatureDone|Palapeli|Reduce memory consumption for big puzzles|majewsky@gmx.net|Stefan Majewsky}}&lt;br /&gt;
{{FeatureInProgress|all games|Add useful fullscreen mode + option to switch between fullscreen/window|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= kdenetwork =&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; border=&amp;quot;1&amp;quot; style=&amp;quot;border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;&amp;quot;&lt;br /&gt;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact &lt;br /&gt;
{{FeatureDone|KGet|Working Mms plugin|eortiz@uci.cu|Ernesto Rodriguez Ortiz}}&lt;br /&gt;
{{FeatureInProgress|KGet|Support for connection limit to servers|mat69@gmx.net|Matthias Fuchs}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= kdegraphics =&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; border=&amp;quot;1&amp;quot; style=&amp;quot;border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;&amp;quot;&lt;br /&gt;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact &lt;br /&gt;
{{FeatureInProgress|Okular|Directory support in Comic Book Generator|dpalacio@orbitalibre.org|David Palacio}}&lt;br /&gt;
{{FeatureInProgress|Okular|7zip support in Comic Book Generator|dpalacio@orbitalibre.org|David Palacio}}&lt;br /&gt;
{{FeatureDone|libksane|Enable gui less operation|kare.sars@iki.fi|K&amp;amp;aring;re S&amp;amp;auml;rs}}&lt;br /&gt;
{{FeatureDone|libksane|Add a way to get scanner device list|kare.sars@iki.fi|K&amp;amp;aring;re S&amp;amp;auml;rs}}&lt;br /&gt;
{{FeatureInProgress|Gwenview|Compare mode|agateau@kde.org|Aurélien Gâteau}}&lt;br /&gt;
{{FeatureTodo|Gwenview|Merge &amp;quot;Semantic Information&amp;quot; and &amp;quot;Meta Information&amp;quot; sidebar groups|agateau@kde.org|Aurélien Gâteau}}&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;/div&gt;</summary>
		<author><name>Bernhard</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Projects/PIM/Akonadi/Database</id>
		<title>Projects/PIM/Akonadi/Database</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Projects/PIM/Akonadi/Database"/>
				<updated>2011-08-25T10:05:25Z</updated>
		
		<summary type="html">&lt;p&gt;Bernhard: /* Sqlite */ one more link about sqlite concurrency&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Akonadi Server Database Internals =&lt;br /&gt;
&lt;br /&gt;
This page contains information about how the Akonadi server uses its internal SQL database. This is purely for Akonadi server developers, you are NOT supposed to use the database yourself, by-passing Akonadi!&lt;br /&gt;
&lt;br /&gt;
== Database Schema ==&lt;br /&gt;
&lt;br /&gt;
* [http://api.kde.org/kdesupport-api/kdesupport-apidocs/akonadi/html/akonadi_server_database.html Visualization]&lt;br /&gt;
* Code is in server/src/storage&lt;br /&gt;
** akonadidb.xml contains the schema in an XML format&lt;br /&gt;
** dbinitializer* contains the code to create tables out of that&lt;br /&gt;
**updatedb.xml contains schema update instructions&lt;br /&gt;
** dbupdater.* executes those&lt;br /&gt;
&lt;br /&gt;
== Backends ==&lt;br /&gt;
&lt;br /&gt;
Akonadi can use different SQL backends. The following documents backend-specific details.&lt;br /&gt;
&lt;br /&gt;
In general, backend specific configuration and setup code can be found in server/src/storage/dbconfig*.&lt;br /&gt;
&lt;br /&gt;
There are three possible operation modes for backends, most only support a subset:&lt;br /&gt;
* Embedded: No server process, database is completely integrated into the Akonadi process&lt;br /&gt;
* Internal server: Akonadi manages the database server process itself, taking care of starting/stopping and configuring it.&lt;br /&gt;
* External server: Akonadi connects to an already running database server.&lt;br /&gt;
&lt;br /&gt;
Selecting and configuring the different backends can be done in ~/.config/akonadi/akonadiserverrc, details on the available options can be found here: [http://api.kde.org/kdesupport-api/kdesupport-apidocs/akonadi/html/classAkonadi_1_1DataStore.html akonadiserverrc options]&lt;br /&gt;
&lt;br /&gt;
=== MySQL ===&lt;br /&gt;
&lt;br /&gt;
Status: working, default backend for desktop systems&lt;br /&gt;
&lt;br /&gt;
Supported modes: Internal, External&lt;br /&gt;
&lt;br /&gt;
MySQL server configuration files for the internal mode can be found here: server/src/storage/mysql-global*.conf.&lt;br /&gt;
&lt;br /&gt;
=== Sqlite ===&lt;br /&gt;
&lt;br /&gt;
Status: working with limitations, default backend for mobile systems&lt;br /&gt;
&lt;br /&gt;
Supported modes: Embedded&lt;br /&gt;
&lt;br /&gt;
Known issues:&lt;br /&gt;
* Requires newer version than the default Qt one.&lt;br /&gt;
* Requires patched QtSql driver to fix concurrency issues (Akonadi ships a fork of the driver with the necessary changes)&lt;br /&gt;
* Slower than MySQL (see e.g. http://bertjan.broeksemaatjes.nl/node/53), based on our measurments about 2-5x on the query level, but still in the milliseconds range, so that's probably not a big issue.&lt;br /&gt;
* Mutex-based transaction serialization in Akonadi (required because SQlite's support of concurrency might not be enough) can block clients while background operations such as a IMAP sync are going on. This is the real killer here, the more clients (including background processes like indexing) are accessing the data, the more blocking you experience. Background http://www.sqlite.org/faq.html#q5 ,  http://www.somacon.com/p369.php , http://www.sqlite.org/lockingv3.html , http://www.mail-archive.com/sqlite-users%40sqlite.org/msg43873.html&lt;br /&gt;
&lt;br /&gt;
=== PostgreSQL ===&lt;br /&gt;
&lt;br /&gt;
Status: unknown&lt;br /&gt;
&lt;br /&gt;
Supported modes: Internal, External&lt;br /&gt;
&lt;br /&gt;
TODO&lt;br /&gt;
&lt;br /&gt;
=== Virtuoso ===&lt;br /&gt;
&lt;br /&gt;
Status: not working&lt;br /&gt;
&lt;br /&gt;
Supported modes: External&lt;br /&gt;
&lt;br /&gt;
Proof-of-concept work was done during Akademy 2010, up to the point where the database could be created successfully. Known issues:&lt;br /&gt;
&lt;br /&gt;
* Some column names used by Akonadi are Virtuoso keywords&lt;br /&gt;
* Some of the first INSERT query fails with a signed vs. unsigned int mismatch/overflow.&lt;br /&gt;
&lt;br /&gt;
Completion of Virtuoso support is considered non-trivial and probably requires a lot of work on the Akonadi side, the SQL dialect is too different from what we support so far.&lt;br /&gt;
&lt;br /&gt;
=== MySQL/Embedded ===&lt;br /&gt;
&lt;br /&gt;
Status: not working&lt;br /&gt;
&lt;br /&gt;
Supported modes: Embedded&lt;br /&gt;
&lt;br /&gt;
Development stopped, MySQL/Embedded does not support transactions.&lt;br /&gt;
&lt;br /&gt;
== Tools ==&lt;br /&gt;
&lt;br /&gt;
=== Generic ===&lt;br /&gt;
&lt;br /&gt;
''akonadiconsole'' has support for browsing the database and run arbitrary SQL queries. See [[Development/Tutorials/Akonadi/Application]].&lt;br /&gt;
&lt;br /&gt;
=== MySQL ===&lt;br /&gt;
&lt;br /&gt;
There are convenience scripts for running mysqld in the configuration used by Akonadi as well as (and probably more useful) running the MySQL command line client connected to the Akonadi database. See server/src/storage/akonadi-mysql-[client|server].sh.&lt;br /&gt;
&lt;br /&gt;
[[Category:Akonadi]]&lt;/div&gt;</summary>
		<author><name>Bernhard</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Projects/PIM/Akonadi/Database</id>
		<title>Projects/PIM/Akonadi/Database</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Projects/PIM/Akonadi/Database"/>
				<updated>2011-08-25T09:56:48Z</updated>
		
		<summary type="html">&lt;p&gt;Bernhard: /* Sqlite */ adding link about SQlite's concurrency support and its limitations&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Akonadi Server Database Internals =&lt;br /&gt;
&lt;br /&gt;
This page contains information about how the Akonadi server uses its internal SQL database. This is purely for Akonadi server developers, you are NOT supposed to use the database yourself, by-passing Akonadi!&lt;br /&gt;
&lt;br /&gt;
== Database Schema ==&lt;br /&gt;
&lt;br /&gt;
* [http://api.kde.org/kdesupport-api/kdesupport-apidocs/akonadi/html/akonadi_server_database.html Visualization]&lt;br /&gt;
* Code is in server/src/storage&lt;br /&gt;
** akonadidb.xml contains the schema in an XML format&lt;br /&gt;
** dbinitializer* contains the code to create tables out of that&lt;br /&gt;
**updatedb.xml contains schema update instructions&lt;br /&gt;
** dbupdater.* executes those&lt;br /&gt;
&lt;br /&gt;
== Backends ==&lt;br /&gt;
&lt;br /&gt;
Akonadi can use different SQL backends. The following documents backend-specific details.&lt;br /&gt;
&lt;br /&gt;
In general, backend specific configuration and setup code can be found in server/src/storage/dbconfig*.&lt;br /&gt;
&lt;br /&gt;
There are three possible operation modes for backends, most only support a subset:&lt;br /&gt;
* Embedded: No server process, database is completely integrated into the Akonadi process&lt;br /&gt;
* Internal server: Akonadi manages the database server process itself, taking care of starting/stopping and configuring it.&lt;br /&gt;
* External server: Akonadi connects to an already running database server.&lt;br /&gt;
&lt;br /&gt;
Selecting and configuring the different backends can be done in ~/.config/akonadi/akonadiserverrc, details on the available options can be found here: [http://api.kde.org/kdesupport-api/kdesupport-apidocs/akonadi/html/classAkonadi_1_1DataStore.html akonadiserverrc options]&lt;br /&gt;
&lt;br /&gt;
=== MySQL ===&lt;br /&gt;
&lt;br /&gt;
Status: working, default backend for desktop systems&lt;br /&gt;
&lt;br /&gt;
Supported modes: Internal, External&lt;br /&gt;
&lt;br /&gt;
MySQL server configuration files for the internal mode can be found here: server/src/storage/mysql-global*.conf.&lt;br /&gt;
&lt;br /&gt;
=== Sqlite ===&lt;br /&gt;
&lt;br /&gt;
Status: working with limitations, default backend for mobile systems&lt;br /&gt;
&lt;br /&gt;
Supported modes: Embedded&lt;br /&gt;
&lt;br /&gt;
Known issues:&lt;br /&gt;
* Requires newer version than the default Qt one.&lt;br /&gt;
* Requires patched QtSql driver to fix concurrency issues (Akonadi ships a fork of the driver with the necessary changes)&lt;br /&gt;
* Slower than MySQL (see e.g. http://bertjan.broeksemaatjes.nl/node/53), based on our measurments about 2-5x on the query level, but still in the milliseconds range, so that's probably not a big issue.&lt;br /&gt;
* Mutex-based transaction serialization in Akonadi (required because SQlite's support of concurrency might not be enough) can block clients while background operations such as a IMAP sync are going on. This is the real killer here, the more clients (including background processes like indexing) are accessing the data, the more blocking you experience. Background http://www.sqlite.org/faq.html#q5 ,  http://www.somacon.com/p369.php , http://www.sqlite.org/lockingv3.html&lt;br /&gt;
&lt;br /&gt;
=== PostgreSQL ===&lt;br /&gt;
&lt;br /&gt;
Status: unknown&lt;br /&gt;
&lt;br /&gt;
Supported modes: Internal, External&lt;br /&gt;
&lt;br /&gt;
TODO&lt;br /&gt;
&lt;br /&gt;
=== Virtuoso ===&lt;br /&gt;
&lt;br /&gt;
Status: not working&lt;br /&gt;
&lt;br /&gt;
Supported modes: External&lt;br /&gt;
&lt;br /&gt;
Proof-of-concept work was done during Akademy 2010, up to the point where the database could be created successfully. Known issues:&lt;br /&gt;
&lt;br /&gt;
* Some column names used by Akonadi are Virtuoso keywords&lt;br /&gt;
* Some of the first INSERT query fails with a signed vs. unsigned int mismatch/overflow.&lt;br /&gt;
&lt;br /&gt;
Completion of Virtuoso support is considered non-trivial and probably requires a lot of work on the Akonadi side, the SQL dialect is too different from what we support so far.&lt;br /&gt;
&lt;br /&gt;
=== MySQL/Embedded ===&lt;br /&gt;
&lt;br /&gt;
Status: not working&lt;br /&gt;
&lt;br /&gt;
Supported modes: Embedded&lt;br /&gt;
&lt;br /&gt;
Development stopped, MySQL/Embedded does not support transactions.&lt;br /&gt;
&lt;br /&gt;
== Tools ==&lt;br /&gt;
&lt;br /&gt;
=== Generic ===&lt;br /&gt;
&lt;br /&gt;
''akonadiconsole'' has support for browsing the database and run arbitrary SQL queries. See [[Development/Tutorials/Akonadi/Application]].&lt;br /&gt;
&lt;br /&gt;
=== MySQL ===&lt;br /&gt;
&lt;br /&gt;
There are convenience scripts for running mysqld in the configuration used by Akonadi as well as (and probably more useful) running the MySQL command line client connected to the Akonadi database. See server/src/storage/akonadi-mysql-[client|server].sh.&lt;br /&gt;
&lt;br /&gt;
[[Category:Akonadi]]&lt;/div&gt;</summary>
		<author><name>Bernhard</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Schedules/KDE4/4.7_Feature_Plan</id>
		<title>Schedules/KDE4/4.7 Feature Plan</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Schedules/KDE4/4.7_Feature_Plan"/>
				<updated>2011-08-24T09:38:18Z</updated>
		
		<summary type="html">&lt;p&gt;Bernhard: /* kdelibs */ Adding issue number. To the KLockFile improvement.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This is a list of planned features for the SC 4.7 release. &lt;br /&gt;
&lt;br /&gt;
See also: &lt;br /&gt;
&lt;br /&gt;
*[[Schedules/KDE4/4.7 Release Schedule]] &lt;br /&gt;
*[[Schedules/KDE4/4.7 Release Goals]] &lt;br /&gt;
*[[Schedules/KDE4/4.6 Feature Plan]] (previous major release)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; Legend: &lt;br /&gt;
&lt;br /&gt;
*todo =&amp;amp;gt; not started yet &lt;br /&gt;
*in-progress =&amp;amp;gt; started, but not completed yet &lt;br /&gt;
*done =&amp;amp;gt; completed&lt;br /&gt;
&lt;br /&gt;
__TOC__ &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= kdelibs  =&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; border=&amp;quot;1&amp;quot; style=&amp;quot;border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;&amp;quot;&lt;br /&gt;
&lt;br /&gt;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact &lt;br /&gt;
&lt;br /&gt;
{{FeatureDone&lt;br /&gt;
|KLocale&lt;br /&gt;
|Number grouping support&lt;br /&gt;
|john@layt.net|John Layt}}&lt;br /&gt;
&lt;br /&gt;
{{FeatureDone&lt;br /&gt;
|KLocale&lt;br /&gt;
|Narrow date name format support&lt;br /&gt;
|john@layt.net|John Layt}}&lt;br /&gt;
&lt;br /&gt;
{{FeatureDone&lt;br /&gt;
|KLocale&lt;br /&gt;
|Week Numbers support&lt;br /&gt;
|john@layt.net|John Layt}}&lt;br /&gt;
&lt;br /&gt;
{{FeatureDone&lt;br /&gt;
|kdecore/io/klockfile&lt;br /&gt;
|For 4.7.1: Implement locking on non-NFS systems using O_EXCL. Good for VFAT, CFIS and other filesystems, as it makes KConfig work and thus many KDE Applications. Details in #203554.&lt;br /&gt;
|faure@kde.org|David Faure}}&lt;br /&gt;
&lt;br /&gt;
{{FeatureInProgress&lt;br /&gt;
|KLocale&lt;br /&gt;
|Windows Backend&lt;br /&gt;
|john@layt.net|John Layt}}&lt;br /&gt;
&lt;br /&gt;
{{FeatureInProgress&lt;br /&gt;
|kdeui&lt;br /&gt;
|New date/time edit widgets from kdepim&lt;br /&gt;
|john@layt.net|John Layt}}&lt;br /&gt;
&lt;br /&gt;
{{FeatureInProgress&lt;br /&gt;
|KHelpMenu&lt;br /&gt;
|Fast action searching&lt;br /&gt;
|afiestas@kde.org|Alex Fiestas}}&lt;br /&gt;
&lt;br /&gt;
{{FeatureInProgress&lt;br /&gt;
|KFilePlaces&lt;br /&gt;
|Activity-specific Places&lt;br /&gt;
|j.maceachern@gmail.com|Jeffery MacEachern}}&lt;br /&gt;
&lt;br /&gt;
{{FeatureInProgress&lt;br /&gt;
|KCookieJar&lt;br /&gt;
|Storing cookies in KWallet&lt;br /&gt;
|fid@gpul.org|José Millán Soto}}&lt;br /&gt;
&lt;br /&gt;
{{FeatureInProgress&lt;br /&gt;
|KHTML&lt;br /&gt;
|WebIDL usage&lt;br /&gt;
|maksim@kde.org|Maksim Orlovich}}&lt;br /&gt;
&lt;br /&gt;
{{FeatureTodo&lt;br /&gt;
|KHTML&lt;br /&gt;
|Accessibility improvements&lt;br /&gt;
|maksim@kde.org|Maksim Orlovich}}&lt;br /&gt;
&lt;br /&gt;
{{FeatureTodo&lt;br /&gt;
|Nepomuk&lt;br /&gt;
|Query term class to query graph meta data&lt;br /&gt;
|trueg@kde.org|Sebastian Trueg}}&lt;br /&gt;
&lt;br /&gt;
{{FeatureTodo&lt;br /&gt;
|Plasma&lt;br /&gt;
|Preconfigurable plasmoids&lt;br /&gt;
|dpalacio@orbitalibre.org|David Palacio}}&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= kde-baseapps  =&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; border=&amp;quot;1&amp;quot; style=&amp;quot;border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;&amp;quot;&lt;br /&gt;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact &lt;br /&gt;
{{FeatureTodo|Dolphin|Support Fwd/Back Mouse Buttons|sebastian@sebastian-doerner.de|Sebastian Dörner}}&lt;br /&gt;
{{FeatureDone|Dolphin|Polish the default user interface to minimize visual clutter (see http://ppenz.blogspot.com/2011/03/menu-bars.html)|peter.penz19@gmail.com|Peter Penz}}&lt;br /&gt;
{{FeatureDone|Dolphin|Improve user interface for searching files and metadata|peter.penz19@gmail.com|Peter Penz}}&lt;br /&gt;
{{FeatureTodo|Settings|Improve proxy configuration dialog|adawit@kde.org|Dawit Alemayehu}}&lt;br /&gt;
&lt;br /&gt;
{{FeatureInProgress&lt;br /&gt;
|Locale KCM&lt;br /&gt;
|Support for Number Grouping, Windows Backend, Country Subdivsions&lt;br /&gt;
|john@layt.net|John Layt}}&lt;br /&gt;
&lt;br /&gt;
{{FeatureInProgress&lt;br /&gt;
|nspluginviewer&lt;br /&gt;
|npruntime support improvements&lt;br /&gt;
|maksim@kde.org|Maksim Orlovich}}&lt;br /&gt;
&lt;br /&gt;
{{FeatureTodo&lt;br /&gt;
|Dolphin&lt;br /&gt;
|Popup menu for advanced queries on the metadata display&lt;br /&gt;
|trueg@kde.org|Sebastian Trueg}}&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= kde-runtime  =&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; border=&amp;quot;1&amp;quot; style=&amp;quot;border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;&amp;quot;&lt;br /&gt;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact &lt;br /&gt;
{{FeatureInProgress|kio_sftp|async download support|asn@cryptomilk.org|Andreas Schneider}}&lt;br /&gt;
{{FeatureInProgress&lt;br /&gt;
|Locale definition files&lt;br /&gt;
|Migrate Country and Currency Codes to xml/po formats, re-arrange l10n files including settings and flags, add Subdivision code files.&lt;br /&gt;
|john@layt.net|John Layt}}&lt;br /&gt;
{{FeatureTodo|kio-upnp-ms|Merge from playground (https://projects.kde.org/projects/playground/base/kio-upnp-ms/) into kde-runtime|nsm.nikhil@gmail.com|Nikhil Marathe}}&lt;br /&gt;
{{FeatureDone|network:/ kio-slave|port to Cagibi 0.2|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureDone|Nepomuk Datamanagement Service|Merge it into the master branch|handa.vish@gmail.com|Vishesh Handa &amp;amp; Sebastian Trueg}}&lt;br /&gt;
{{FeatureDone|Port Strigi Service to DMS|The Strigi Service needs to use the DMS API|handa.vish@gmail.com|Vishesh Handa &amp;amp; Sebastian Trueg}}&lt;br /&gt;
&lt;br /&gt;
{{FeatureDone&lt;br /&gt;
|Nepomuk&lt;br /&gt;
|KCM to manage the removable storages to index&lt;br /&gt;
|trueg@kde.org|Sebastian Trueg}}&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= kde-workspace  =&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; border=&amp;quot;1&amp;quot; style=&amp;quot;border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;&amp;quot;&lt;br /&gt;
&lt;br /&gt;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact &lt;br /&gt;
&lt;br /&gt;
{{FeatureDone|System Settings/keyboard|Allow a shortcut per keyboard layout (bug 224489)|arysin@mail.com|Andriy Rysin}}&lt;br /&gt;
{{FeatureDone|System Settings/keyboard|Session management for keyboard layouts (bug 52095, 174948)|arysin@mail.com|Andriy Rysin}}&lt;br /&gt;
{{FeatureDone|klipper|Support qrcode as well as datamatrix for mobile barcodes|sune@vuorela.dk|Sune Vuorela}}&lt;br /&gt;
{{FeatureDone|weather|Support debian weather|sune@vuorela.dk|Sune Vuorela}}&lt;br /&gt;
{{FeatureDone|Oxygen|Various widgets polishing (scrollbars, progressbars, sliders, toolbuttons, menu and menubar selection, etc.)|hugo@oxygen-icons.org|Hugo Pereira Da Costa}}&lt;br /&gt;
{{FeatureDone|Oxygen|Implement kwin's new shadow system for menus, drop-downlists, etc.|hugo@oxygen-icons.org|Hugo Pereira Da Costa}}&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
! style=&amp;quot;text-align: center;&amp;quot; colspan=&amp;quot;4&amp;quot; | Plasma&lt;br /&gt;
{{FeatureInProgress&lt;br /&gt;
|Plasma Clock/Calendar&lt;br /&gt;
|improve usability, settings, akonadi and holiday data.  See Plasma wiki.&lt;br /&gt;
|john@layt.net|John Layt}}&lt;br /&gt;
{{FeatureDone&lt;br /&gt;
|Plasma Desktop&lt;br /&gt;
|launch krunner when the user starts typing&lt;br /&gt;
|vitorboschi@gmail.com|Vitor Boschi}}&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
! style=&amp;quot;text-align: center;&amp;quot; colspan=&amp;quot;4&amp;quot; | KDM&lt;br /&gt;
{{FeatureDone&lt;br /&gt;
|KDM&lt;br /&gt;
|GRUB2 support for KDM (see http://ksmanis.wordpress.com/2011/04/21/hello-planet-and-grub2-support-for-kdm/)&lt;br /&gt;
|konstantinos.smanis@gmail.com|Konstantinos Smanis}}&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
! style=&amp;quot;text-align: center;&amp;quot; colspan=&amp;quot;4&amp;quot; | KWin&lt;br /&gt;
{{FeatureDone|Compositor|OpenGL 2.x/OpenGL ES 2.0 compositing backend (see http://www.kdenews.org/2011/02/18/kwin-embraces-new-platforms-opengl-es-20-support)|mgraesslin@kde.org|Martin Gräßlin}}&lt;br /&gt;
{{FeatureDone|Compositor|New Shadow System (see http://blog.martin-graesslin.com/blog/2011/03/new-kwin-shadows/)|mgraesslin@kde.org|Martin Gräßlin}}&lt;br /&gt;
{{FeatureDone|Effects|Effect to render outlines|mgraesslin@kde.org|Martin Gräßlin}}&lt;br /&gt;
{{FeatureDone|Decorations|Do not require a decoration|mgraesslin@kde.org|Martin Gräßlin}}&lt;br /&gt;
{{FeatureInProgress|Core|Export most recently used windows to an X property|mgraesslin@kde.org|Martin Gräßlin}}&lt;br /&gt;
{{FeatureInProgress|BoxSwitch Effect|Animated Selection (see http://blog.martin-graesslin.com/blog/2011/02/is-kwin-rocket-science/)|mgraesslin@kde.org|Martin Gräßlin}}&lt;br /&gt;
{{FeatureInProgress|libkwineffects|API cleanup|mgraesslin@kde.org|Martin Gräßlin}}&lt;br /&gt;
{{FeatureTodo|libkwineffects|JavaScript bindings for writing Effects|mgraesslin@kde.org|Martin Gräßlin}}&lt;br /&gt;
{{FeatureInProgress|Mouse Emulation|Better accessibility support in mouse emulation|mgraesslin@kde.org|Martin Gräßlin}}&lt;br /&gt;
{{FeatureDone|kwin|Add multi head support|alberto@mattea.info|Alberto Mattea}}&lt;br /&gt;
{{FeatureInProgress|kwin|DBusMenu in Windeco|megabigbug@yahoo.fr|Lionel Chauvin}}&lt;br /&gt;
{{FeatureDone|ksplashx|Add multi head support|alberto@mattea.info|Alberto Mattea}}&lt;br /&gt;
{{FeatureTodo|krunner|Add multi head support|alberto@mattea.info|Alberto Mattea}}&lt;br /&gt;
{{FeatureInProgress|kwinrules kcm|UI cleanup (see https://git.reviewboard.kde.org/r/101041/)|thomas.luebking@gmail.com|Thomas Lübking}}&lt;br /&gt;
{{FeatureInProgress|kwincompositing kcm|Rearm unsafe OpenGL precheck (see https://git.reviewboard.kde.org/r/101061/)|thomas.luebking@gmail.com|Thomas Lübking}}&lt;br /&gt;
{{FeatureInProgress|PresentWindows Effect|Better highlight indication &amp;amp; close button handling)|thomas.luebking@gmail.com|Thomas Lübking}}&lt;br /&gt;
{{FeatureInProgress|general|Remove jargon from user interface.  Remove all instances of Akonadi/Nepomuk related jargon from the desktop, replace with meaningful text where needed.|wstephenson@kde.org|Will Stephenson}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= kdeedu  =&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; border=&amp;quot;1&amp;quot; style=&amp;quot;border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;&amp;quot;&lt;br /&gt;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact &lt;br /&gt;
{{FeatureDone|Marble|Bookmark Manager|earthwings@gentoo.org|Dennis Nienhüser, Thibaut Gridel}}&lt;br /&gt;
{{FeatureDone|Marble|QML Bindings: GPS Tracking|earthwings@gentoo.org|Dennis Nienhüser}}&lt;br /&gt;
{{FeatureInProgress|Marble|Routing API|earthwings@gentoo.org|Dennis Nienhüser}}&lt;br /&gt;
{{FeatureDone|Marble|Offline Address Search|earthwings@gentoo.org|Dennis Nienhüser}}&lt;br /&gt;
{{FeatureDone|Marble|Support monav version 0.3|earthwings@gentoo.org|Dennis Nienhüser}}&lt;br /&gt;
{{FeatureDone|Marble|Polish the Map Wizard: simpler UI, comprehensive validation of user input immediately on each page|bbeschow@cs.tu-berlin.de|Bernhard Beschow}}&lt;br /&gt;
{{FeatureInProgress|Marble|Reduce memory footprint of cached tiles|bbeschow@cs.tu-berlin.de|Bernhard Beschow}}&lt;br /&gt;
{{FeatureTodo|Marble|Separate thread for tile loading and texture blending (not texture mapping at the moment) for more smooth browsing|jmho@c-xx.com|Jens-Michael Hoffmann, Bernhard Beschow}}&lt;br /&gt;
{{FeatureTodo|Marble|Tile loading &amp;quot;read ahead&amp;quot; when idle, prerequisite: threaded tile loading|jmho@c-xx.com|Jens-Michael Hoffmann}}&lt;br /&gt;
{{FeatureDone|Marble|Multi threaded texture mapping|bbeschow@cs.tu-berlin.de|Bernhard Beschow}}&lt;br /&gt;
{{FeatureTodo|Marble|Implement mouse cursor wrapping a la Okular or Gwenview|bbeschow@cs.tu-berlin.de|Bernhard Beschow}}&lt;br /&gt;
{{FeatureInProgress|Marble|Manipulate Gps track data|tgridel@freedotfr|Thibaut Gridel}}&lt;br /&gt;
{{FeatureInProgress|Cantor|Integrate the Qalculate backend|agostinelli@gmail.com|Matteo Agostinelli}}&lt;br /&gt;
{{FeatureDone|Kalzium|Use KUnitConversion for all the Unit handling|etienne.rebetez@oberwallisch|Etienne Rebetez}}&lt;br /&gt;
{{FeatureDone|KTurtle|Add getdirection command&lt;br /&gt;
|nielsslot@gmaildotcom|Niels Slot}}&lt;br /&gt;
{{FeatureTodo|KTurtle|Add modulo command&lt;br /&gt;
|nielsslot@gmaildotcom|Niels Slot}}&lt;br /&gt;
{{FeatureDone|Step|Copy-and-Paste of items|kde@voecking.net|Sebastian Vöcking}}&lt;br /&gt;
{{FeatureDone|Step|Zoom on mouse wheel|kde@voecking.net|Sebastian Vöcking}}&lt;br /&gt;
{{FeatureDone|Step|Automatic expanding canvas|kde@voecking.net|Sebastian Vöcking}}&lt;br /&gt;
{{FeatureInProgress|Rocs|Auto - Handling of the Canvas|tcanabrava@kde.org|Tomaz Canabrava}}&lt;br /&gt;
{{FeatureDone|Rocs|Remove the thread for QtConcurrent on he core|tcanabrava@kde.org|Tomaz Canabrava}}&lt;br /&gt;
{{FeatureInProgress|Rocs|Polish the User Interface|tcanabrava@kde.org|Tomaz Canabrava}}&lt;br /&gt;
{{FeatureDone|Rocs|New Plugin for Automaticaly Graph Generation|tcanabrava@kde.org|Tomaz Canabrava}}&lt;br /&gt;
{{FeatureInProgress|Rocs|Bugfixes in the List Plugin|tcanabrava@kde.org|Tomaz Canabrava}}&lt;br /&gt;
{{FeatureInProgress|Rocs|Speedup in the drawing code|tcanabrava@kde.org|Tomaz Canabrava}}&lt;br /&gt;
{{FeatureInProgress|Rocs|Kalgebra backend|tcanabrava@kde.org|Tomaz Canabrava}}&lt;br /&gt;
{{FeatureDone|Rocs|Transform graph edges plugin|cola@uni-paderborn.de|Andreas Cord-Landwehr}}&lt;br /&gt;
{{FeatureDone|Rocs|Assign values to edges/nodes plugin|cola@uni-paderborn.de|Andreas Cord-Landwehr}}&lt;br /&gt;
{{FeatureDone|Kalzium|Titration calculator|TRINGALINVENT@libero.it|Luca Tringali}}&lt;br /&gt;
{{FeatureInProgress|KStars|SQLite Database of NGC Objects|victor.carbune@kdemail.net|Victor Carbune|}}&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= kdepim  =&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; border=&amp;quot;1&amp;quot; style=&amp;quot;border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;&amp;quot;&lt;br /&gt;
&lt;br /&gt;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact &lt;br /&gt;
&lt;br /&gt;
{{FeatureInProgress|KAlarm|Port to Akonadi|djarvie@kde.org|David Jarvie}}&lt;br /&gt;
{{FeatureDone|KAlarm|Allow reminders after the main alarm|djarvie@kde.org|David Jarvie}}&lt;br /&gt;
{{FeatureDone|KAlarm|Provide wake-from-suspend option for alarms|djarvie@kde.org|David Jarvie}}&lt;br /&gt;
&lt;br /&gt;
{{FeatureInProgress&lt;br /&gt;
|KHolidays&lt;br /&gt;
|Add support for Holiday Types and Observance Types&lt;br /&gt;
|john@layt.net|John Layt}}&lt;br /&gt;
&lt;br /&gt;
{{FeatureDone|Akonadi-contacts/kaddressbook|Show 2d barcodes of contact data|sune@vuorela.dk|Sune Vuorela}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= kdeplasma-addons =&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; border=&amp;quot;1&amp;quot; style=&amp;quot;border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;&amp;quot;&lt;br /&gt;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact &lt;br /&gt;
{{FeatureInProgress|Adjustable Clock|Plasmoid for displaying date and time in very customizable way|emdeck@gmail.com|Michał Dutkiewicz}}&lt;br /&gt;
{{FeatureInProgress|Comic Plasmoid|Support random comic strips|mat69@gmx.net|Matthias Fuchs}}&lt;br /&gt;
{{FeatureDone|Comic Plasmoid|Support creation of comic Comic Book Archive files|mat69@gmx.net|Matthias Fuchs}}&lt;br /&gt;
{{FeatureDone|Comic Plasmoid|Highlight comics that have a new comic strip|mat69@gmx.net|Matthias Fuchs}}&lt;br /&gt;
{{FeatureTodo|Events Runner|Support parsing weekdays (e.g. &amp;quot;in next monday&amp;quot;|alexey.noskov@gmail.com|Alexey Noskov}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= kdetoys  =&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; border=&amp;quot;1&amp;quot; style=&amp;quot;border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;&amp;quot;&lt;br /&gt;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact &lt;br /&gt;
{{FeatureDone|KTeaTime|Port to KStatusNotifierItem|miha@noughmad.eu|Miha Čančula}}&lt;br /&gt;
{{FeatureInProgress|KTeaTime|New svg based status icons|kde@hilefoks.org|Stefan Böhmann}}&lt;br /&gt;
{{FeatureInProgress|KTeaTime|Support categories|kde@hilefoks.org|Stefan Böhmann}}&lt;br /&gt;
{{FeatureTodo|KTeaTime|Improved command line|kde@hilefoks.org|Stefan Böhmann}}&lt;br /&gt;
{{FeatureTodo|KTeaTime|Tea runner|kde@hilefoks.org|Stefan Böhmann}}&lt;br /&gt;
{{FeatureTodo|KTeaTime|Port to KConfigXT|kde@hilefoks.org|Stefan Böhmann}} &lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= kdesdk  =&lt;br /&gt;
&lt;br /&gt;
{| cellspa/cing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; border=&amp;quot;1&amp;quot; style=&amp;quot;border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;&amp;quot;&lt;br /&gt;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact &lt;br /&gt;
{{FeatureInProgress|Lokalize|Remote translation memories|shafff@NOSPAMukr.net|Nick Shaforostoff}} &lt;br /&gt;
{{FeatureInProgress|Lokalize|QA: translation checks against user-specified regex-based rules|shafff@NOSPAMukr.net|Nick Shaforostoff}} &lt;br /&gt;
{{FeatureTodo|Lokalize|Integrate snowball stemmer for glossary|shafff@NOSPAMukr.net|Nick Shaforostoff}} &lt;br /&gt;
{{FeatureTodo|Lokalize|Continue implementing XLIFF spec|shafff@NOSPAMukr.net|Nick Shaforostoff}} &lt;br /&gt;
{{FeatureTodo|Lokalize|Segmentation [editing] functionality|shafff@NOSPAMukr.net |Nick Shaforostoff}} &lt;br /&gt;
{{FeatureTodo|Lokalize|Integrate with nepomuk (fast stats retrieval, tag cloud - incl sharing!)|shafff@NOSPAMukr.net|Nick Shaforostoff}} &lt;br /&gt;
{{FeatureTodo|Lokalize|loading compressed files and then saving them back in the original compression format (bug 65518)|shafff@NOSPAMukr.net|Nick Shaforostoff}} &lt;br /&gt;
{{FeatureInProgress|Okteta|Properly support strings (various Unicode encodings) in structures tool|alex.richardson@gmx.de|Alex Richardson}} &lt;br /&gt;
{{FeatureTodo|Okteta|Add custom datatypes to structures tool|alex.richardson@gmx.de|Alex Richardson}} &lt;br /&gt;
{{FeatureInProgress|Okteta|Add tool to convert between char encodings|kossebau@kde.org|Friedrich W. H. Kossebau}} &lt;br /&gt;
{{FeatureInProgress|Umbrello|QDockWidget based interface|elv1313@gmail.com|Emmanuel Lepage Vallee}} &lt;br /&gt;
{{FeatureInProgress|Umbrello|KDE4 icon theme and eye candies|elv1313@gmail.com|Emmanuel Lepage Vallee}}&lt;br /&gt;
{{FeatureTodo|Umbrello|Replace the current code viewer with katepart|elv1313@gmail.com|Emmanuel Lepage Vallee}} &lt;br /&gt;
{{FeatureDone|Umbrello|Add a zoom widget in the statusbar|elv1313@gmail.com|Emmanuel Lepage Vallee}}&lt;br /&gt;
{{FeatureDone|Kate|Add a new search in files plugin|kare.sars@iki.fi|K&amp;amp;aring;re S&amp;amp;auml;rs}}&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= kdegames =&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; border=&amp;quot;1&amp;quot; style=&amp;quot;border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;&amp;quot;&lt;br /&gt;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact &lt;br /&gt;
{{FeatureInProgress|KBreakout|Level editor|julian.helfferich@gmail.com|Julian Helfferich}}&lt;br /&gt;
{{FeatureInProgress|KBreakout|Load levelset option + 2 new levelsets|julian.helfferich@gmail.com|Julian Helfferich}}&lt;br /&gt;
{{FeatureTodo|KBreakout|Port to QGraphicsView|julian.helfferich@gmail.com|Julian Helfferich}}&lt;br /&gt;
{{FeatureInProgress|KPat|Create new saved game format that stores undo/redo history|parker.coates@gmail.com|Parker Coates}}&lt;br /&gt;
{{FeatureInProgress|libtagaro|Move first version into the kdegames module|majewsky@gmx.net|Stefan Majewsky}}&lt;br /&gt;
{{FeatureTodo|libtagaro|Use the new library: at least in Granatier and Kolf (to replace existing static source copies) and KDiamond|majewsky@gmx.net|Stefan Majewsky}}&lt;br /&gt;
{{FeatureInProgress|Palapeli|Cleanup interface|majewsky@gmx.net|Stefan Majewsky}}&lt;br /&gt;
{{FeatureDone|Palapeli|Reduce memory consumption for big puzzles|majewsky@gmx.net|Stefan Majewsky}}&lt;br /&gt;
{{FeatureInProgress|all games|Add useful fullscreen mode + option to switch between fullscreen/window|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= kdenetwork =&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; border=&amp;quot;1&amp;quot; style=&amp;quot;border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;&amp;quot;&lt;br /&gt;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact &lt;br /&gt;
{{FeatureDone|KGet|Working Mms plugin|eortiz@uci.cu|Ernesto Rodriguez Ortiz}}&lt;br /&gt;
{{FeatureInProgress|KGet|Support for connection limit to servers|mat69@gmx.net|Matthias Fuchs}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= kdegraphics =&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; border=&amp;quot;1&amp;quot; style=&amp;quot;border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;&amp;quot;&lt;br /&gt;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact &lt;br /&gt;
{{FeatureInProgress|Okular|Directory support in Comic Book Generator|dpalacio@orbitalibre.org|David Palacio}}&lt;br /&gt;
{{FeatureInProgress|Okular|7zip support in Comic Book Generator|dpalacio@orbitalibre.org|David Palacio}}&lt;br /&gt;
{{FeatureDone|libksane|Enable gui less operation|kare.sars@iki.fi|K&amp;amp;aring;re S&amp;amp;auml;rs}}&lt;br /&gt;
{{FeatureDone|libksane|Add a way to get scanner device list|kare.sars@iki.fi|K&amp;amp;aring;re S&amp;amp;auml;rs}}&lt;br /&gt;
{{FeatureInProgress|Gwenview|Compare mode|agateau@kde.org|Aurélien Gâteau}}&lt;br /&gt;
{{FeatureTodo|Gwenview|Merge &amp;quot;Semantic Information&amp;quot; and &amp;quot;Meta Information&amp;quot; sidebar groups|agateau@kde.org|Aurélien Gâteau}}&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;/div&gt;</summary>
		<author><name>Bernhard</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Schedules/KDE4/4.7_Feature_Plan</id>
		<title>Schedules/KDE4/4.7 Feature Plan</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Schedules/KDE4/4.7_Feature_Plan"/>
				<updated>2011-08-24T09:33:15Z</updated>
		
		<summary type="html">&lt;p&gt;Bernhard: /* kdelibs */ Adding improvement for kdecore/io/&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This is a list of planned features for the SC 4.7 release. &lt;br /&gt;
&lt;br /&gt;
See also: &lt;br /&gt;
&lt;br /&gt;
*[[Schedules/KDE4/4.7 Release Schedule]] &lt;br /&gt;
*[[Schedules/KDE4/4.7 Release Goals]] &lt;br /&gt;
*[[Schedules/KDE4/4.6 Feature Plan]] (previous major release)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; Legend: &lt;br /&gt;
&lt;br /&gt;
*todo =&amp;amp;gt; not started yet &lt;br /&gt;
*in-progress =&amp;amp;gt; started, but not completed yet &lt;br /&gt;
*done =&amp;amp;gt; completed&lt;br /&gt;
&lt;br /&gt;
__TOC__ &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= kdelibs  =&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; border=&amp;quot;1&amp;quot; style=&amp;quot;border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;&amp;quot;&lt;br /&gt;
&lt;br /&gt;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact &lt;br /&gt;
&lt;br /&gt;
{{FeatureDone&lt;br /&gt;
|KLocale&lt;br /&gt;
|Number grouping support&lt;br /&gt;
|john@layt.net|John Layt}}&lt;br /&gt;
&lt;br /&gt;
{{FeatureDone&lt;br /&gt;
|KLocale&lt;br /&gt;
|Narrow date name format support&lt;br /&gt;
|john@layt.net|John Layt}}&lt;br /&gt;
&lt;br /&gt;
{{FeatureDone&lt;br /&gt;
|KLocale&lt;br /&gt;
|Week Numbers support&lt;br /&gt;
|john@layt.net|John Layt}}&lt;br /&gt;
&lt;br /&gt;
{{FeatureDone&lt;br /&gt;
|kdecore/io/klockfile&lt;br /&gt;
|For 4.7.1: Implement locking on non-NFS systems using O_EXCL. Good for VFAT, CFIS and other filesystems, as it makes KConfig work and thus many KDE Applications.&lt;br /&gt;
|faure@kde.org|David Faure}}&lt;br /&gt;
&lt;br /&gt;
{{FeatureInProgress&lt;br /&gt;
|KLocale&lt;br /&gt;
|Windows Backend&lt;br /&gt;
|john@layt.net|John Layt}}&lt;br /&gt;
&lt;br /&gt;
{{FeatureInProgress&lt;br /&gt;
|kdeui&lt;br /&gt;
|New date/time edit widgets from kdepim&lt;br /&gt;
|john@layt.net|John Layt}}&lt;br /&gt;
&lt;br /&gt;
{{FeatureInProgress&lt;br /&gt;
|KHelpMenu&lt;br /&gt;
|Fast action searching&lt;br /&gt;
|afiestas@kde.org|Alex Fiestas}}&lt;br /&gt;
&lt;br /&gt;
{{FeatureInProgress&lt;br /&gt;
|KFilePlaces&lt;br /&gt;
|Activity-specific Places&lt;br /&gt;
|j.maceachern@gmail.com|Jeffery MacEachern}}&lt;br /&gt;
&lt;br /&gt;
{{FeatureInProgress&lt;br /&gt;
|KCookieJar&lt;br /&gt;
|Storing cookies in KWallet&lt;br /&gt;
|fid@gpul.org|José Millán Soto}}&lt;br /&gt;
&lt;br /&gt;
{{FeatureInProgress&lt;br /&gt;
|KHTML&lt;br /&gt;
|WebIDL usage&lt;br /&gt;
|maksim@kde.org|Maksim Orlovich}}&lt;br /&gt;
&lt;br /&gt;
{{FeatureTodo&lt;br /&gt;
|KHTML&lt;br /&gt;
|Accessibility improvements&lt;br /&gt;
|maksim@kde.org|Maksim Orlovich}}&lt;br /&gt;
&lt;br /&gt;
{{FeatureTodo&lt;br /&gt;
|Nepomuk&lt;br /&gt;
|Query term class to query graph meta data&lt;br /&gt;
|trueg@kde.org|Sebastian Trueg}}&lt;br /&gt;
&lt;br /&gt;
{{FeatureTodo&lt;br /&gt;
|Plasma&lt;br /&gt;
|Preconfigurable plasmoids&lt;br /&gt;
|dpalacio@orbitalibre.org|David Palacio}}&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= kde-baseapps  =&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; border=&amp;quot;1&amp;quot; style=&amp;quot;border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;&amp;quot;&lt;br /&gt;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact &lt;br /&gt;
{{FeatureTodo|Dolphin|Support Fwd/Back Mouse Buttons|sebastian@sebastian-doerner.de|Sebastian Dörner}}&lt;br /&gt;
{{FeatureDone|Dolphin|Polish the default user interface to minimize visual clutter (see http://ppenz.blogspot.com/2011/03/menu-bars.html)|peter.penz19@gmail.com|Peter Penz}}&lt;br /&gt;
{{FeatureDone|Dolphin|Improve user interface for searching files and metadata|peter.penz19@gmail.com|Peter Penz}}&lt;br /&gt;
{{FeatureTodo|Settings|Improve proxy configuration dialog|adawit@kde.org|Dawit Alemayehu}}&lt;br /&gt;
&lt;br /&gt;
{{FeatureInProgress&lt;br /&gt;
|Locale KCM&lt;br /&gt;
|Support for Number Grouping, Windows Backend, Country Subdivsions&lt;br /&gt;
|john@layt.net|John Layt}}&lt;br /&gt;
&lt;br /&gt;
{{FeatureInProgress&lt;br /&gt;
|nspluginviewer&lt;br /&gt;
|npruntime support improvements&lt;br /&gt;
|maksim@kde.org|Maksim Orlovich}}&lt;br /&gt;
&lt;br /&gt;
{{FeatureTodo&lt;br /&gt;
|Dolphin&lt;br /&gt;
|Popup menu for advanced queries on the metadata display&lt;br /&gt;
|trueg@kde.org|Sebastian Trueg}}&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= kde-runtime  =&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; border=&amp;quot;1&amp;quot; style=&amp;quot;border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;&amp;quot;&lt;br /&gt;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact &lt;br /&gt;
{{FeatureInProgress|kio_sftp|async download support|asn@cryptomilk.org|Andreas Schneider}}&lt;br /&gt;
{{FeatureInProgress&lt;br /&gt;
|Locale definition files&lt;br /&gt;
|Migrate Country and Currency Codes to xml/po formats, re-arrange l10n files including settings and flags, add Subdivision code files.&lt;br /&gt;
|john@layt.net|John Layt}}&lt;br /&gt;
{{FeatureTodo|kio-upnp-ms|Merge from playground (https://projects.kde.org/projects/playground/base/kio-upnp-ms/) into kde-runtime|nsm.nikhil@gmail.com|Nikhil Marathe}}&lt;br /&gt;
{{FeatureDone|network:/ kio-slave|port to Cagibi 0.2|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureDone|Nepomuk Datamanagement Service|Merge it into the master branch|handa.vish@gmail.com|Vishesh Handa &amp;amp; Sebastian Trueg}}&lt;br /&gt;
{{FeatureDone|Port Strigi Service to DMS|The Strigi Service needs to use the DMS API|handa.vish@gmail.com|Vishesh Handa &amp;amp; Sebastian Trueg}}&lt;br /&gt;
&lt;br /&gt;
{{FeatureDone&lt;br /&gt;
|Nepomuk&lt;br /&gt;
|KCM to manage the removable storages to index&lt;br /&gt;
|trueg@kde.org|Sebastian Trueg}}&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= kde-workspace  =&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; border=&amp;quot;1&amp;quot; style=&amp;quot;border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;&amp;quot;&lt;br /&gt;
&lt;br /&gt;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact &lt;br /&gt;
&lt;br /&gt;
{{FeatureDone|System Settings/keyboard|Allow a shortcut per keyboard layout (bug 224489)|arysin@mail.com|Andriy Rysin}}&lt;br /&gt;
{{FeatureDone|System Settings/keyboard|Session management for keyboard layouts (bug 52095, 174948)|arysin@mail.com|Andriy Rysin}}&lt;br /&gt;
{{FeatureDone|klipper|Support qrcode as well as datamatrix for mobile barcodes|sune@vuorela.dk|Sune Vuorela}}&lt;br /&gt;
{{FeatureDone|weather|Support debian weather|sune@vuorela.dk|Sune Vuorela}}&lt;br /&gt;
{{FeatureDone|Oxygen|Various widgets polishing (scrollbars, progressbars, sliders, toolbuttons, menu and menubar selection, etc.)|hugo@oxygen-icons.org|Hugo Pereira Da Costa}}&lt;br /&gt;
{{FeatureDone|Oxygen|Implement kwin's new shadow system for menus, drop-downlists, etc.|hugo@oxygen-icons.org|Hugo Pereira Da Costa}}&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
! style=&amp;quot;text-align: center;&amp;quot; colspan=&amp;quot;4&amp;quot; | Plasma&lt;br /&gt;
{{FeatureInProgress&lt;br /&gt;
|Plasma Clock/Calendar&lt;br /&gt;
|improve usability, settings, akonadi and holiday data.  See Plasma wiki.&lt;br /&gt;
|john@layt.net|John Layt}}&lt;br /&gt;
{{FeatureDone&lt;br /&gt;
|Plasma Desktop&lt;br /&gt;
|launch krunner when the user starts typing&lt;br /&gt;
|vitorboschi@gmail.com|Vitor Boschi}}&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
! style=&amp;quot;text-align: center;&amp;quot; colspan=&amp;quot;4&amp;quot; | KDM&lt;br /&gt;
{{FeatureDone&lt;br /&gt;
|KDM&lt;br /&gt;
|GRUB2 support for KDM (see http://ksmanis.wordpress.com/2011/04/21/hello-planet-and-grub2-support-for-kdm/)&lt;br /&gt;
|konstantinos.smanis@gmail.com|Konstantinos Smanis}}&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
! style=&amp;quot;text-align: center;&amp;quot; colspan=&amp;quot;4&amp;quot; | KWin&lt;br /&gt;
{{FeatureDone|Compositor|OpenGL 2.x/OpenGL ES 2.0 compositing backend (see http://www.kdenews.org/2011/02/18/kwin-embraces-new-platforms-opengl-es-20-support)|mgraesslin@kde.org|Martin Gräßlin}}&lt;br /&gt;
{{FeatureDone|Compositor|New Shadow System (see http://blog.martin-graesslin.com/blog/2011/03/new-kwin-shadows/)|mgraesslin@kde.org|Martin Gräßlin}}&lt;br /&gt;
{{FeatureDone|Effects|Effect to render outlines|mgraesslin@kde.org|Martin Gräßlin}}&lt;br /&gt;
{{FeatureDone|Decorations|Do not require a decoration|mgraesslin@kde.org|Martin Gräßlin}}&lt;br /&gt;
{{FeatureInProgress|Core|Export most recently used windows to an X property|mgraesslin@kde.org|Martin Gräßlin}}&lt;br /&gt;
{{FeatureInProgress|BoxSwitch Effect|Animated Selection (see http://blog.martin-graesslin.com/blog/2011/02/is-kwin-rocket-science/)|mgraesslin@kde.org|Martin Gräßlin}}&lt;br /&gt;
{{FeatureInProgress|libkwineffects|API cleanup|mgraesslin@kde.org|Martin Gräßlin}}&lt;br /&gt;
{{FeatureTodo|libkwineffects|JavaScript bindings for writing Effects|mgraesslin@kde.org|Martin Gräßlin}}&lt;br /&gt;
{{FeatureInProgress|Mouse Emulation|Better accessibility support in mouse emulation|mgraesslin@kde.org|Martin Gräßlin}}&lt;br /&gt;
{{FeatureDone|kwin|Add multi head support|alberto@mattea.info|Alberto Mattea}}&lt;br /&gt;
{{FeatureInProgress|kwin|DBusMenu in Windeco|megabigbug@yahoo.fr|Lionel Chauvin}}&lt;br /&gt;
{{FeatureDone|ksplashx|Add multi head support|alberto@mattea.info|Alberto Mattea}}&lt;br /&gt;
{{FeatureTodo|krunner|Add multi head support|alberto@mattea.info|Alberto Mattea}}&lt;br /&gt;
{{FeatureInProgress|kwinrules kcm|UI cleanup (see https://git.reviewboard.kde.org/r/101041/)|thomas.luebking@gmail.com|Thomas Lübking}}&lt;br /&gt;
{{FeatureInProgress|kwincompositing kcm|Rearm unsafe OpenGL precheck (see https://git.reviewboard.kde.org/r/101061/)|thomas.luebking@gmail.com|Thomas Lübking}}&lt;br /&gt;
{{FeatureInProgress|PresentWindows Effect|Better highlight indication &amp;amp; close button handling)|thomas.luebking@gmail.com|Thomas Lübking}}&lt;br /&gt;
{{FeatureInProgress|general|Remove jargon from user interface.  Remove all instances of Akonadi/Nepomuk related jargon from the desktop, replace with meaningful text where needed.|wstephenson@kde.org|Will Stephenson}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= kdeedu  =&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; border=&amp;quot;1&amp;quot; style=&amp;quot;border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;&amp;quot;&lt;br /&gt;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact &lt;br /&gt;
{{FeatureDone|Marble|Bookmark Manager|earthwings@gentoo.org|Dennis Nienhüser, Thibaut Gridel}}&lt;br /&gt;
{{FeatureDone|Marble|QML Bindings: GPS Tracking|earthwings@gentoo.org|Dennis Nienhüser}}&lt;br /&gt;
{{FeatureInProgress|Marble|Routing API|earthwings@gentoo.org|Dennis Nienhüser}}&lt;br /&gt;
{{FeatureDone|Marble|Offline Address Search|earthwings@gentoo.org|Dennis Nienhüser}}&lt;br /&gt;
{{FeatureDone|Marble|Support monav version 0.3|earthwings@gentoo.org|Dennis Nienhüser}}&lt;br /&gt;
{{FeatureDone|Marble|Polish the Map Wizard: simpler UI, comprehensive validation of user input immediately on each page|bbeschow@cs.tu-berlin.de|Bernhard Beschow}}&lt;br /&gt;
{{FeatureInProgress|Marble|Reduce memory footprint of cached tiles|bbeschow@cs.tu-berlin.de|Bernhard Beschow}}&lt;br /&gt;
{{FeatureTodo|Marble|Separate thread for tile loading and texture blending (not texture mapping at the moment) for more smooth browsing|jmho@c-xx.com|Jens-Michael Hoffmann, Bernhard Beschow}}&lt;br /&gt;
{{FeatureTodo|Marble|Tile loading &amp;quot;read ahead&amp;quot; when idle, prerequisite: threaded tile loading|jmho@c-xx.com|Jens-Michael Hoffmann}}&lt;br /&gt;
{{FeatureDone|Marble|Multi threaded texture mapping|bbeschow@cs.tu-berlin.de|Bernhard Beschow}}&lt;br /&gt;
{{FeatureTodo|Marble|Implement mouse cursor wrapping a la Okular or Gwenview|bbeschow@cs.tu-berlin.de|Bernhard Beschow}}&lt;br /&gt;
{{FeatureInProgress|Marble|Manipulate Gps track data|tgridel@freedotfr|Thibaut Gridel}}&lt;br /&gt;
{{FeatureInProgress|Cantor|Integrate the Qalculate backend|agostinelli@gmail.com|Matteo Agostinelli}}&lt;br /&gt;
{{FeatureDone|Kalzium|Use KUnitConversion for all the Unit handling|etienne.rebetez@oberwallisch|Etienne Rebetez}}&lt;br /&gt;
{{FeatureDone|KTurtle|Add getdirection command&lt;br /&gt;
|nielsslot@gmaildotcom|Niels Slot}}&lt;br /&gt;
{{FeatureTodo|KTurtle|Add modulo command&lt;br /&gt;
|nielsslot@gmaildotcom|Niels Slot}}&lt;br /&gt;
{{FeatureDone|Step|Copy-and-Paste of items|kde@voecking.net|Sebastian Vöcking}}&lt;br /&gt;
{{FeatureDone|Step|Zoom on mouse wheel|kde@voecking.net|Sebastian Vöcking}}&lt;br /&gt;
{{FeatureDone|Step|Automatic expanding canvas|kde@voecking.net|Sebastian Vöcking}}&lt;br /&gt;
{{FeatureInProgress|Rocs|Auto - Handling of the Canvas|tcanabrava@kde.org|Tomaz Canabrava}}&lt;br /&gt;
{{FeatureDone|Rocs|Remove the thread for QtConcurrent on he core|tcanabrava@kde.org|Tomaz Canabrava}}&lt;br /&gt;
{{FeatureInProgress|Rocs|Polish the User Interface|tcanabrava@kde.org|Tomaz Canabrava}}&lt;br /&gt;
{{FeatureDone|Rocs|New Plugin for Automaticaly Graph Generation|tcanabrava@kde.org|Tomaz Canabrava}}&lt;br /&gt;
{{FeatureInProgress|Rocs|Bugfixes in the List Plugin|tcanabrava@kde.org|Tomaz Canabrava}}&lt;br /&gt;
{{FeatureInProgress|Rocs|Speedup in the drawing code|tcanabrava@kde.org|Tomaz Canabrava}}&lt;br /&gt;
{{FeatureInProgress|Rocs|Kalgebra backend|tcanabrava@kde.org|Tomaz Canabrava}}&lt;br /&gt;
{{FeatureDone|Rocs|Transform graph edges plugin|cola@uni-paderborn.de|Andreas Cord-Landwehr}}&lt;br /&gt;
{{FeatureDone|Rocs|Assign values to edges/nodes plugin|cola@uni-paderborn.de|Andreas Cord-Landwehr}}&lt;br /&gt;
{{FeatureDone|Kalzium|Titration calculator|TRINGALINVENT@libero.it|Luca Tringali}}&lt;br /&gt;
{{FeatureInProgress|KStars|SQLite Database of NGC Objects|victor.carbune@kdemail.net|Victor Carbune|}}&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= kdepim  =&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; border=&amp;quot;1&amp;quot; style=&amp;quot;border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;&amp;quot;&lt;br /&gt;
&lt;br /&gt;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact &lt;br /&gt;
&lt;br /&gt;
{{FeatureInProgress|KAlarm|Port to Akonadi|djarvie@kde.org|David Jarvie}}&lt;br /&gt;
{{FeatureDone|KAlarm|Allow reminders after the main alarm|djarvie@kde.org|David Jarvie}}&lt;br /&gt;
{{FeatureDone|KAlarm|Provide wake-from-suspend option for alarms|djarvie@kde.org|David Jarvie}}&lt;br /&gt;
&lt;br /&gt;
{{FeatureInProgress&lt;br /&gt;
|KHolidays&lt;br /&gt;
|Add support for Holiday Types and Observance Types&lt;br /&gt;
|john@layt.net|John Layt}}&lt;br /&gt;
&lt;br /&gt;
{{FeatureDone|Akonadi-contacts/kaddressbook|Show 2d barcodes of contact data|sune@vuorela.dk|Sune Vuorela}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= kdeplasma-addons =&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; border=&amp;quot;1&amp;quot; style=&amp;quot;border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;&amp;quot;&lt;br /&gt;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact &lt;br /&gt;
{{FeatureInProgress|Adjustable Clock|Plasmoid for displaying date and time in very customizable way|emdeck@gmail.com|Michał Dutkiewicz}}&lt;br /&gt;
{{FeatureInProgress|Comic Plasmoid|Support random comic strips|mat69@gmx.net|Matthias Fuchs}}&lt;br /&gt;
{{FeatureDone|Comic Plasmoid|Support creation of comic Comic Book Archive files|mat69@gmx.net|Matthias Fuchs}}&lt;br /&gt;
{{FeatureDone|Comic Plasmoid|Highlight comics that have a new comic strip|mat69@gmx.net|Matthias Fuchs}}&lt;br /&gt;
{{FeatureTodo|Events Runner|Support parsing weekdays (e.g. &amp;quot;in next monday&amp;quot;|alexey.noskov@gmail.com|Alexey Noskov}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= kdetoys  =&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; border=&amp;quot;1&amp;quot; style=&amp;quot;border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;&amp;quot;&lt;br /&gt;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact &lt;br /&gt;
{{FeatureDone|KTeaTime|Port to KStatusNotifierItem|miha@noughmad.eu|Miha Čančula}}&lt;br /&gt;
{{FeatureInProgress|KTeaTime|New svg based status icons|kde@hilefoks.org|Stefan Böhmann}}&lt;br /&gt;
{{FeatureInProgress|KTeaTime|Support categories|kde@hilefoks.org|Stefan Böhmann}}&lt;br /&gt;
{{FeatureTodo|KTeaTime|Improved command line|kde@hilefoks.org|Stefan Böhmann}}&lt;br /&gt;
{{FeatureTodo|KTeaTime|Tea runner|kde@hilefoks.org|Stefan Böhmann}}&lt;br /&gt;
{{FeatureTodo|KTeaTime|Port to KConfigXT|kde@hilefoks.org|Stefan Böhmann}} &lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= kdesdk  =&lt;br /&gt;
&lt;br /&gt;
{| cellspa/cing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; border=&amp;quot;1&amp;quot; style=&amp;quot;border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;&amp;quot;&lt;br /&gt;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact &lt;br /&gt;
{{FeatureInProgress|Lokalize|Remote translation memories|shafff@NOSPAMukr.net|Nick Shaforostoff}} &lt;br /&gt;
{{FeatureInProgress|Lokalize|QA: translation checks against user-specified regex-based rules|shafff@NOSPAMukr.net|Nick Shaforostoff}} &lt;br /&gt;
{{FeatureTodo|Lokalize|Integrate snowball stemmer for glossary|shafff@NOSPAMukr.net|Nick Shaforostoff}} &lt;br /&gt;
{{FeatureTodo|Lokalize|Continue implementing XLIFF spec|shafff@NOSPAMukr.net|Nick Shaforostoff}} &lt;br /&gt;
{{FeatureTodo|Lokalize|Segmentation [editing] functionality|shafff@NOSPAMukr.net |Nick Shaforostoff}} &lt;br /&gt;
{{FeatureTodo|Lokalize|Integrate with nepomuk (fast stats retrieval, tag cloud - incl sharing!)|shafff@NOSPAMukr.net|Nick Shaforostoff}} &lt;br /&gt;
{{FeatureTodo|Lokalize|loading compressed files and then saving them back in the original compression format (bug 65518)|shafff@NOSPAMukr.net|Nick Shaforostoff}} &lt;br /&gt;
{{FeatureInProgress|Okteta|Properly support strings (various Unicode encodings) in structures tool|alex.richardson@gmx.de|Alex Richardson}} &lt;br /&gt;
{{FeatureTodo|Okteta|Add custom datatypes to structures tool|alex.richardson@gmx.de|Alex Richardson}} &lt;br /&gt;
{{FeatureInProgress|Okteta|Add tool to convert between char encodings|kossebau@kde.org|Friedrich W. H. Kossebau}} &lt;br /&gt;
{{FeatureInProgress|Umbrello|QDockWidget based interface|elv1313@gmail.com|Emmanuel Lepage Vallee}} &lt;br /&gt;
{{FeatureInProgress|Umbrello|KDE4 icon theme and eye candies|elv1313@gmail.com|Emmanuel Lepage Vallee}}&lt;br /&gt;
{{FeatureTodo|Umbrello|Replace the current code viewer with katepart|elv1313@gmail.com|Emmanuel Lepage Vallee}} &lt;br /&gt;
{{FeatureDone|Umbrello|Add a zoom widget in the statusbar|elv1313@gmail.com|Emmanuel Lepage Vallee}}&lt;br /&gt;
{{FeatureDone|Kate|Add a new search in files plugin|kare.sars@iki.fi|K&amp;amp;aring;re S&amp;amp;auml;rs}}&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= kdegames =&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; border=&amp;quot;1&amp;quot; style=&amp;quot;border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;&amp;quot;&lt;br /&gt;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact &lt;br /&gt;
{{FeatureInProgress|KBreakout|Level editor|julian.helfferich@gmail.com|Julian Helfferich}}&lt;br /&gt;
{{FeatureInProgress|KBreakout|Load levelset option + 2 new levelsets|julian.helfferich@gmail.com|Julian Helfferich}}&lt;br /&gt;
{{FeatureTodo|KBreakout|Port to QGraphicsView|julian.helfferich@gmail.com|Julian Helfferich}}&lt;br /&gt;
{{FeatureInProgress|KPat|Create new saved game format that stores undo/redo history|parker.coates@gmail.com|Parker Coates}}&lt;br /&gt;
{{FeatureInProgress|libtagaro|Move first version into the kdegames module|majewsky@gmx.net|Stefan Majewsky}}&lt;br /&gt;
{{FeatureTodo|libtagaro|Use the new library: at least in Granatier and Kolf (to replace existing static source copies) and KDiamond|majewsky@gmx.net|Stefan Majewsky}}&lt;br /&gt;
{{FeatureInProgress|Palapeli|Cleanup interface|majewsky@gmx.net|Stefan Majewsky}}&lt;br /&gt;
{{FeatureDone|Palapeli|Reduce memory consumption for big puzzles|majewsky@gmx.net|Stefan Majewsky}}&lt;br /&gt;
{{FeatureInProgress|all games|Add useful fullscreen mode + option to switch between fullscreen/window|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= kdenetwork =&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; border=&amp;quot;1&amp;quot; style=&amp;quot;border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;&amp;quot;&lt;br /&gt;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact &lt;br /&gt;
{{FeatureDone|KGet|Working Mms plugin|eortiz@uci.cu|Ernesto Rodriguez Ortiz}}&lt;br /&gt;
{{FeatureInProgress|KGet|Support for connection limit to servers|mat69@gmx.net|Matthias Fuchs}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= kdegraphics =&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; border=&amp;quot;1&amp;quot; style=&amp;quot;border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;&amp;quot;&lt;br /&gt;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact &lt;br /&gt;
{{FeatureInProgress|Okular|Directory support in Comic Book Generator|dpalacio@orbitalibre.org|David Palacio}}&lt;br /&gt;
{{FeatureInProgress|Okular|7zip support in Comic Book Generator|dpalacio@orbitalibre.org|David Palacio}}&lt;br /&gt;
{{FeatureDone|libksane|Enable gui less operation|kare.sars@iki.fi|K&amp;amp;aring;re S&amp;amp;auml;rs}}&lt;br /&gt;
{{FeatureDone|libksane|Add a way to get scanner device list|kare.sars@iki.fi|K&amp;amp;aring;re S&amp;amp;auml;rs}}&lt;br /&gt;
{{FeatureInProgress|Gwenview|Compare mode|agateau@kde.org|Aurélien Gâteau}}&lt;br /&gt;
{{FeatureTodo|Gwenview|Merge &amp;quot;Semantic Information&amp;quot; and &amp;quot;Meta Information&amp;quot; sidebar groups|agateau@kde.org|Aurélien Gâteau}}&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;/div&gt;</summary>
		<author><name>Bernhard</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Projects/PIM/MS_Windows</id>
		<title>Projects/PIM/MS Windows</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Projects/PIM/MS_Windows"/>
				<updated>2011-06-23T12:02:00Z</updated>
		
		<summary type="html">&lt;p&gt;Bernhard: /* LDAP Support */ rephrased the two options trying to be more clear&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page covers topics related to the KDE PIM Suite on MS Windows NT kernel (which means running on Windows Desktop versions NT or newer like XP, Vista or 7).&lt;br /&gt;
&lt;br /&gt;
==Building==&lt;br /&gt;
&lt;br /&gt;
To build KDE PIM for Windows use emerge.&lt;br /&gt;
For documentation about emerge please see [http://techbase.kde.org/Getting_Started/Build/KDE4/Windows]&lt;br /&gt;
&lt;br /&gt;
You should be able to get executables just by calling emerge kdepim.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Bugs ==&lt;br /&gt;
For a list of open, Windows specific, bugs please see: [http://bugs.kde.org/buglist.cgi?query_format=advanced&amp;amp;short_desc_type=allwordssubstr&amp;amp;short_desc=&amp;amp;product=akregator&amp;amp;product=kaddressbook&amp;amp;product=kdepim&amp;amp;product=kdepimlibs&amp;amp;product=kmail2&amp;amp;product=kontact&amp;amp;product=korganizer&amp;amp;long_desc_type=allwordssubstr&amp;amp;long_desc=&amp;amp;bug_file_loc_type=allwordssubstr&amp;amp;bug_file_loc=&amp;amp;keywords_type=allwords&amp;amp;keywords=&amp;amp;bug_status=UNCONFIRMED&amp;amp;bug_status=NEW&amp;amp;bug_status=ASSIGNED&amp;amp;bug_status=REOPENED&amp;amp;bug_status=NEEDSINFO&amp;amp;op_sys=MS+Windows&amp;amp;emailassigned_to1=1&amp;amp;emailtype1=substring&amp;amp;email1=&amp;amp;emailassigned_to2=1&amp;amp;emailreporter2=1&amp;amp;emailcc2=1&amp;amp;emailtype2=substring&amp;amp;email2=&amp;amp;bugidtype=include&amp;amp;bug_id=&amp;amp;votes=&amp;amp;chfieldfrom=&amp;amp;chfieldto=Now&amp;amp;chfieldvalue=&amp;amp;cmdtype=doit&amp;amp;order=Reuse+same+sort+as+last+time&amp;amp;field0-0-0=noop&amp;amp;type0-0-0=noop&amp;amp;value0-0-0= bugs.kde.org]&lt;br /&gt;
&lt;br /&gt;
== Problem points ==&lt;br /&gt;
{| class=&amp;quot;sortable&amp;quot; border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border: gray solid 1px; border-collapse: collapse; text-align: left; width: 100%;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: #ececec; white-space:nowrap;&amp;quot;&lt;br /&gt;
! Status !! Feature !! Description !! Contact&lt;br /&gt;
&lt;br /&gt;
{{FeatureDone | [[#Documentation_of_KDE|Documentation of KDE]] | Due to meinproc4 crashes documentation build is turned off from all kde products.| }}&lt;br /&gt;
&lt;br /&gt;
{{FeatureTodo|[[#LDAP_Support|LDAP Support]]| Enabling KLdap |aheinecke@intevation.de| Andre Heinecke }}&lt;br /&gt;
&lt;br /&gt;
{{FeatureDone|[[#Akonadi_Notifications|Akonadi Notifications]]| Akonadi Notifications are not communicated correctly to the GUI |}}&lt;br /&gt;
&lt;br /&gt;
{{FeatureDone|[[#Search|Search]]|Provide a search backend|aheinecke@intevation.de| Andre Heinecke }}&lt;br /&gt;
&lt;br /&gt;
{{FeatureDone|[[#Nepomuk|Nepomuk]]|Provide a working Nepomuk|aheinecke@intevation.de| Andre Heinecke }}&lt;br /&gt;
&lt;br /&gt;
{{FeatureDone|[[#Akonadi_Start_Stop|Akonadi startup/shutdown]]|Decide how akonadi should be started/stopped on Windows (There is now a&lt;br /&gt;
Full Shudown button in Kontact that also kills akonadi||}}&lt;br /&gt;
&lt;br /&gt;
{{FeatureTodo|[[#Multiuser_Support|Multiuser Support]]|Make it possible&lt;br /&gt;
to deploy KDEPIM in multiuser environments||}}&lt;br /&gt;
&lt;br /&gt;
{{FeatureDone|Image view in Mailviewer|Images in the Mailviewer are not shown correctly||}}&lt;br /&gt;
&lt;br /&gt;
{{FeatureTodo|Configuration dialog asks for save every time|The configuration dialog asks the user to confirm his changes even if no changes were made||}}&lt;br /&gt;
&lt;br /&gt;
{{FeatureDone|[[#Design|Design]]|Make KDEPIM feel native on Windows||}}&lt;br /&gt;
&lt;br /&gt;
{{FeatureTodo|[[#GPG4Win_Integration|Integrate with GPG4Win]]| GnuPG is&lt;br /&gt;
currently not supported |aheinecke@intevation.de| Andre Heinecke}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Multiuser Support===&lt;br /&gt;
Kontact on Windows currently not able to handle multiple users running it in parallel because of several bugs.&lt;br /&gt;
&lt;br /&gt;
===Documentation of KDE ===&lt;br /&gt;
For more details about the problem check the bug report: [https://bugs.kde.org/show_bug.cgi?id=263828 BUG263828] &lt;br /&gt;
&lt;br /&gt;
There is a workaround and documentation can be built.&lt;br /&gt;
&lt;br /&gt;
===LDAP Support===&lt;br /&gt;
There are two options to get LDAP support for PIM on Windows:&lt;br /&gt;
&lt;br /&gt;
====OpenLDAP====&lt;br /&gt;
* Pro: &lt;br /&gt;
** Would offer the same API as on GNU/Linux&lt;br /&gt;
** Is proven to work on Windows with KDEPIM&lt;br /&gt;
** If just a binary is take, the effort is small.&lt;br /&gt;
&lt;br /&gt;
* Contra:&lt;br /&gt;
** Current Openldap is not ported to be buildable natively on Windows. So far it would need to be cross compiled, or cygwin compiled or the binaries taken. &lt;br /&gt;
** More effort to do a good port to a decent buildsystem which fits the toolchain like cmake/emerge to be build with msvc or mingw-w64 on Windows. &lt;br /&gt;
** Can not be debugged with msvc for above reasons&lt;br /&gt;
** Is another dependency we have to take care of, which increasing code and complexety, more chance for security issues and the port needs to be maintained.&lt;br /&gt;
&lt;br /&gt;
====WinLDAP====&lt;br /&gt;
Windows has native LDAP support with winldap: &lt;br /&gt;
&lt;br /&gt;
* Pro:&lt;br /&gt;
** Integrated into the platform, maintained by Microsoft&lt;br /&gt;
** API differences should be Minimal so kldap calls could stay the same&lt;br /&gt;
** Behaviour consistent with other LDAP client behaviour on Windows.&lt;br /&gt;
&lt;br /&gt;
* Contra:&lt;br /&gt;
** Efforts comparable to OpenLDAP with initally ported build system. In particular higher than the simple &amp;quot;take binary&amp;quot; approach.&lt;br /&gt;
** kdepimlibs is build with -DUNICODE, but expects LDAP system calls o return ascii, so this needs conversion. There is a bit code in kdepimlibs/kldap/w32ldaphelp.h which works fo WindowsCE, but now Windows&amp;gt;=NT.&lt;br /&gt;
** Is propietary we do not know the implementation details and cannot debug it.&lt;br /&gt;
** Might show slightly different behavior than OpenLDAP, which raises potential testing and support costs when Kontact behaves differently here.&lt;br /&gt;
** Might not implement all functions used by kldap so working around it in kldap would be necessary.&lt;br /&gt;
&lt;br /&gt;
===Search===&lt;br /&gt;
Search is available over Nepomuk&lt;br /&gt;
&lt;br /&gt;
===Nepomuk===&lt;br /&gt;
For a virtuoso installation to work regsvr32 has to be called on the virtuoso odbc driver at the moment. Soprano has to be fixed so that it checks if that driver is availble and if not registers it. The NSIS installer does this currently&lt;br /&gt;
&lt;br /&gt;
===Akonadi Notifications===&lt;br /&gt;
DBus problem that has been fixed in newer versions of DBus &amp;gt; 1.4.1&lt;br /&gt;
&lt;br /&gt;
===Design===&lt;br /&gt;
Oxygen Theme looks strange and alien on Windows 7 default style but ok on Windows XP style&lt;br /&gt;
Currently the Packaged Style in the Enterprise 5 package is optimzed for&lt;br /&gt;
XP and Vista/7 looks.&lt;br /&gt;
&lt;br /&gt;
Best solution would be to check what the System Style is or package the KDE-Systemsettings to customize that style.&lt;br /&gt;
&lt;br /&gt;
===Akonadi Start Stop===&lt;br /&gt;
Akonadi startup can take a while on slow systems which delays the first Kontact&lt;br /&gt;
startup.&lt;br /&gt;
&lt;br /&gt;
Once akonadi is running it can not be stopped from the UI&lt;br /&gt;
&lt;br /&gt;
===GPG4Win Integration===&lt;br /&gt;
Currently crypto operations appearently corrupts the stack, causing Kontact&lt;br /&gt;
to crash in unrelated operations. For this reason GnuPG support has been&lt;br /&gt;
completly disabled since 2011.04.11. Crypto integration is one of the most&lt;br /&gt;
important features of Kontact on Windows and we need a way to integrate it&lt;br /&gt;
properly.&lt;br /&gt;
&lt;br /&gt;
== General Hints ==&lt;br /&gt;
&lt;br /&gt;
=== Shutdown everything from KDE ===&lt;br /&gt;
Either run killkde.bat in your installation\bin directory or run&lt;br /&gt;
kdeinit4 --terminate to shut down everything.&lt;br /&gt;
&lt;br /&gt;
==== Delete all configuration ====&lt;br /&gt;
&lt;br /&gt;
To delete all configuration files remove the folders .local .config .kde in&lt;br /&gt;
your userdata directory. &lt;br /&gt;
(e.g. c:\documents and settings\testuser\ on xp c:\users\testuser on win7)&lt;br /&gt;
Also delete .kde in your application data directory&lt;br /&gt;
(e.g. c:\documents and settings\testuser\Applicationdata on xp c:\users\testuser\Applicationdata\roaming on win7)&lt;br /&gt;
&lt;br /&gt;
==== Switch to English ====&lt;br /&gt;
&lt;br /&gt;
To change the application '''language''' of Kontact from German '''to English''' please&lt;br /&gt;
use a text editor and change the locale settings in the file 'kdeglobals' to:&lt;br /&gt;
  Country=en&lt;br /&gt;
  Language=en_US&lt;br /&gt;
and restart all KDE processes (esp. logout, login).&lt;br /&gt;
You'll find this file usually under the installed directory&lt;br /&gt;
in 'Kontact\share\config' (e.g. c:\Program Files\Kontact\share\config\kdeglobals).&lt;br /&gt;
&lt;br /&gt;
Or goto: help -&amp;gt; change application language&lt;br /&gt;
&lt;br /&gt;
==== Backtrace for Crash reporting ====&lt;br /&gt;
&lt;br /&gt;
If you encounter crashes, a backtrace might help the developers to find&lt;br /&gt;
the defect faster. There are some hints doing a backtrace with gdb on windows&lt;br /&gt;
in  http://techbase.kde.org/Development/Tutorials/Debugging/Debugging_on_MS_Windows#MinGW_debugging_hints&lt;br /&gt;
&lt;br /&gt;
==== Diagnostics ====&lt;br /&gt;
General debugging techniques of KDEPIM Software are also available on Windows.&lt;br /&gt;
There is akonadiconsole installed as a tool to debug akonadi, as well as qdbusviewer.&lt;br /&gt;
&lt;br /&gt;
DebugView and some other tools from the following URL can be useful to diagnose problems:&lt;br /&gt;
http://techbase.kde.org/Projects/KDE_on_Windows/Tools&lt;br /&gt;
&lt;br /&gt;
DebugView will let you see the message of the KDE runtime system, which on GNU/Linux you can see on stdout or stderr.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Some notes from the original porting project==&lt;br /&gt;
&lt;br /&gt;
===Integration into the Windows Explorer &amp;amp; Desktop===&lt;br /&gt;
{{Note|[[User:Jstaniek|jstaniek]] 22:01, 14 January 2008 (CET): [http://tortoisesvn.tigris.org/ TortoiseSVN] is GPLed SVN client which is nicely integrated with Windows Explorer. Perhaps we can use its source code as a reference...}}&lt;br /&gt;
&lt;br /&gt;
====Registry settings for default apps and services====&lt;br /&gt;
'''Introduction:''' We can detect whether KMail is the default e-mail client. If set as default, KMail should act as a default mailer, and thus be invoked automatically for actions like RMB &amp;quot;Send To -&amp;gt; E-mail Recipient&amp;quot;. This shall be also reused by others for KOrganizer and Konqueror. The solution is relatively simple modifications to the Windows Registry. See [http://members.toast.net/4pf/Protocol.html Mozilla's solution].&lt;br /&gt;
&lt;br /&gt;
First, we can use HKLM node for system-global settings or HKCU node for current-user-only settings. If the attempt to set the value in HKLM fails, usually because of unsufficient permissions, HKCU should be used. As expected, HKCU overrides HKLM settings. See [http://support.microsoft.com/kb/297878 KB297878]. Below we'll use HKCU.&lt;br /&gt;
&lt;br /&gt;
*HKCU\Software\Clients\StartMenuInternet key is used to specify default web browser; could be set to Konqueror&lt;br /&gt;
*HKCU\Software\Clients\StartMenuInternet\app.exe\shell\open\command key is used for &amp;quot;Internet&amp;quot; start menu shortcut, can be set to Konqueror. Note from the KB - &amp;lt;tt&amp;gt;&amp;quot;The command might open the browser on the users home page, for example. However, it might launch some other introductory user interface that the ISV feels is appropriate.&amp;quot;&amp;lt;/tt&amp;gt; So this is not the same as 'default browser' setting.&lt;br /&gt;
&lt;br /&gt;
*HKCU\Software\Clients\Mail\Appname - registered email client, there can be more entries within the 'Mail' node. Adding KMail here makes it available for users to select as a default browser using 'Set Default Programs' system window.&lt;br /&gt;
*HKCU\Software\Clients\Mail - default email client,  'Windows Mail' by default; could be set to KMail.&lt;br /&gt;
&lt;br /&gt;
*HKCU\Software\Clients\Calendar\Appname - registered calendar application, there can be more entries within the 'Calendar' node. See the note for HKCU\Software\Clients\Mail\Appname.&lt;br /&gt;
*HKCU\Software\Clients\Calendar - default calendar application, 'Windows Calendar' on Vista; could be set to KOrganizer.&lt;br /&gt;
&lt;br /&gt;
*HKCU\Software\Clients\Contacts\Appname - registered contacts client, there can be more entries within the 'Contacts' node. See the note for HKCU\Software\Clients\Mail\Appname.&lt;br /&gt;
*HKCU\Software\Clients\Contacts - default contacts application, 'Address Book' by default; could be set to KAddressBook.&lt;br /&gt;
&lt;br /&gt;
*HKCU\Software\Clients\News\Appname - registered newsgroup client, there can be more entries within the 'News' node. See the note for HKCU\Software\Clients\Mail\Appname.&lt;br /&gt;
*HKCU\Software\Clients\News - default newsgroup application, 'Windows Mail' by default; could be set to KNode.&lt;br /&gt;
&lt;br /&gt;
From the KB: &amp;lt;tt&amp;gt;After updating the registry keys, the application broadcasts the WM_SETTINGCHANGE message with wParam = 0 and lParam pointing to the null-terminated string &amp;quot;Software\Clients\StartMenuInternet&amp;quot; to notify the operating system that the default client has changed.&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Using MAPI=====&lt;br /&gt;
HKLM\Software\Clients\AppName\DllPath points to a dll implementing [http://en.wikipedia.org/wiki/MAPI MAPI] interface. Internet Explorer uses Windows Messaging by default to invoke a mailer on a mailto: link. Only if the MAPI install is misconfigured will it resort to directly accessing the mailto association key.[http://members.toast.net/4pf/Protocol.html] &lt;br /&gt;
Example implementation of MAPI services is Thundebird's mozMapi32.dll (the key is usualle equal to C:\Program Files\Mozilla Thunderbird\mozMapi32.dll).&lt;br /&gt;
&lt;br /&gt;
=====KDE-related notes=====&lt;br /&gt;
*KDElibs execute default web browser or email client for protocols like http(s): and &amp;lt;nowiki&amp;gt;mailto:&amp;lt;/nowiki&amp;gt; via {{Qt|QDesktopServices}}::openUrl(), which in turn uses ShellExecute(). openUrl() is widely used in Qt e.g. for hyperlinks in text boxes and label widgets.&lt;br /&gt;
*A general rule of KDE/win: not to duplicate registry settings in any rc file and use default applications if possible, to avoid changing behaviour expected by users.&lt;br /&gt;
*[[User:Jstaniek|jstaniek]] 12:06, 18 June 2008 (CEST): Before LinuxTag I've performed some tests of setting default clients, and looks like it's is not possible to set onlt writing registry entries. Some API calls may be needed, especially because locked at least one registry key is locked for writing during the session.&lt;br /&gt;
&lt;br /&gt;
== Links ==&lt;br /&gt;
* [[Projects/KDE_on_Windows|The KDE on Windows]] Project&lt;br /&gt;
* [[Projects/KDE on Windows/Missing features of kdelibs|Missing features of kdelibs on Windows]] - KDE PIM may depend on them&lt;br /&gt;
&lt;br /&gt;
[[Category:PIM]]&lt;br /&gt;
[[Category:MS Windows]]&lt;/div&gt;</summary>
		<author><name>Bernhard</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Projects/PIM/MS_Windows</id>
		<title>Projects/PIM/MS Windows</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Projects/PIM/MS_Windows"/>
				<updated>2011-03-23T15:40:36Z</updated>
		
		<summary type="html">&lt;p&gt;Bernhard: /* Documentation of KDE */ better phrasing&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page covers topics related to the KDE PIM Suite on MS Windows NT kernel (which means running on Windows Desktop versions NT or newer like XP, Vista or 7).&lt;br /&gt;
&lt;br /&gt;
==Building==&lt;br /&gt;
&lt;br /&gt;
To build KDE PIM for Windows use emerge.&lt;br /&gt;
For documentation about emerge please see [http://techbase.kde.org/Getting_Started/Build/KDE4/Windows]&lt;br /&gt;
&lt;br /&gt;
You should be able to get executables just by calling emerge kdepim.&lt;br /&gt;
&lt;br /&gt;
== Problem points ==&lt;br /&gt;
{| class=&amp;quot;sortable&amp;quot; border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border: gray solid 1px; border-collapse: collapse; text-align: left; width: 100%;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: #ececec; white-space:nowrap;&amp;quot;&lt;br /&gt;
! Status !! Feature !! Description !! Contact&lt;br /&gt;
&lt;br /&gt;
{{FeatureDone | [[#Documentation_of_KDE|Documentation of KDE]] | Due to meinproc4 crashes documentation build is turned off from all kde products.| }}&lt;br /&gt;
&lt;br /&gt;
{{FeatureTodo|[[#LDAP_Support|LDAP Support]]| Enabling KLdap |aheinecke@intevation.de| Andre Heinecke }}&lt;br /&gt;
&lt;br /&gt;
{{FeatureDone|[[#Akonadi_Notifications|Akonadi Notifications]]| Akonadi Notifications are not communicated correctly to the GUI |}}&lt;br /&gt;
&lt;br /&gt;
{{FeatureInProgress|[[#Search|Search]]|Provide a search backend|aheinecke@intevation.de| Andre Heinecke }}&lt;br /&gt;
&lt;br /&gt;
{{FeatureInProgress|[[#Nepomuk|Nepomuk]]|Provide a working Nepomuk|aheinecke@intevation.de| Andre Heinecke }}&lt;br /&gt;
&lt;br /&gt;
{{FeatureTodo|[[#Akonadi_Start_Stop|Akonadi startup/shutdown]]|Decide how akonadi should be started/stopped on Windows||}}&lt;br /&gt;
&lt;br /&gt;
{{FeatureTodo|Image view in Mailviewer|Images in the Mailviewer are not shown correctly||}}&lt;br /&gt;
&lt;br /&gt;
{{FeatureTodo|Configuration dialog asks for save every time|The configuration dialog asks the user to confirm his changes even if no changes were made||}}&lt;br /&gt;
&lt;br /&gt;
{{FeatureTodo|[[#Design|Design]]|Make KDEPIM feel native on Windows||}}&lt;br /&gt;
&lt;br /&gt;
{{FeatureTodo|[[#GPG4Win_Integration|Integrate with GPG4Win]]|Use GPG4Win to provide Crypto support on Windows |aheinecke@intevation.de| Andre Heinecke}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Documentation of KDE ===&lt;br /&gt;
For more details about the problem check the bug report: [https://bugs.kde.org/show_bug.cgi?id=263828 BUG263828] &lt;br /&gt;
&lt;br /&gt;
There is a workaround and documentation can be built.&lt;br /&gt;
&lt;br /&gt;
===LDAP Support===&lt;br /&gt;
OpenLDAP does not build well for Windows on Windows, for this reason there is no working OpenLDAP-src target in emerge, if you want LDAP Support you have to manually install OpenLDAP into your KDE Enviornment before building kdepimlibs.&lt;br /&gt;
&lt;br /&gt;
Since Windows has native LDAP support with winldap it is easily possible to use that, an Obstacle for this is that also kdepimlibs is built with -DUNICODE it expects all system LDAP calls to return ASCII so you would have to do some conversions mappings there. A bit code for that is already in kdepimlibs/kldap/w32ldaphelp.h but it is only finished for WinCE not for WinNT.&lt;br /&gt;
&lt;br /&gt;
===Search===&lt;br /&gt;
Strigideamon does not compile for Windows NT at the moment, so apart from Virtuoso/Nepomuk there is no Search for KDE PIM Software available. &lt;br /&gt;
Currently Virtuoso gets started in the Enterprise 5 Package on some systems and on others not. There might be a packaging problem or timeouts that are reached.&lt;br /&gt;
Strigi indexing complains that it is disabled, so even with a running Nepomuk there is no search available at the moment.&lt;br /&gt;
&lt;br /&gt;
===Nepomuk===&lt;br /&gt;
Nepomuk only supports Virtuoso as Database backend.&lt;br /&gt;
For a virtuoso installation to work regsvr32 has to be called on the virtuoso odbc driver at the moment. Soprano has to be fixed so that it checks if that driver is availble and if not registers it.&lt;br /&gt;
&lt;br /&gt;
===Akonadi Notifications===&lt;br /&gt;
DBus problem that has been fixed in newer versions of DBus &amp;gt; 1.4.1&lt;br /&gt;
&lt;br /&gt;
===Design===&lt;br /&gt;
Oxygen Theme looks strange and alien on Windows 7 default style but ok on Windows XP style&lt;br /&gt;
Currently the Packaged Style in the Enterprise 5 package is optimzed for windows 7&lt;br /&gt;
&lt;br /&gt;
Best solution would be to check what the System Style is or package the KDE-Systemsettings to customize that style&lt;br /&gt;
&lt;br /&gt;
===Akonadi Start Stop===&lt;br /&gt;
Akonadi startup can take a while on slow systems which delays the first Kontact&lt;br /&gt;
startup.&lt;br /&gt;
&lt;br /&gt;
Once akonadi is running it can not be stopped from the UI&lt;br /&gt;
&lt;br /&gt;
===GPG4Win Integration===&lt;br /&gt;
To integrate with gpg4win one has to copy the gpg2.exe in the gpg4win/bin directory to gpg.exe in the same directory. Otherwise no backends will be found.&lt;br /&gt;
This can be fixed by packaging a better gpg4win-dev package.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Some notes from the original porting project==&lt;br /&gt;
&lt;br /&gt;
===Integration into the Windows Explorer &amp;amp; Desktop===&lt;br /&gt;
{{Note|[[User:Jstaniek|jstaniek]] 22:01, 14 January 2008 (CET): [http://tortoisesvn.tigris.org/ TortoiseSVN] is GPLed SVN client which is nicely integrated with Windows Explorer. Perhaps we can use its source code as a reference...}}&lt;br /&gt;
&lt;br /&gt;
====Registry settings for default apps and services====&lt;br /&gt;
'''Introduction:''' We can detect whether KMail is the default e-mail client. If set as default, KMail should act as a default mailer, and thus be invoked automatically for actions like RMB &amp;quot;Send To -&amp;gt; E-mail Recipient&amp;quot;. This shall be also reused by others for KOrganizer and Konqueror. The solution is relatively simple modifications to the Windows Registry. See [http://members.toast.net/4pf/Protocol.html Mozilla's solution].&lt;br /&gt;
&lt;br /&gt;
First, we can use HKLM node for system-global settings or HKCU node for current-user-only settings. If the attempt to set the value in HKLM fails, usually because of unsufficient permissions, HKCU should be used. As expected, HKCU overrides HKLM settings. See [http://support.microsoft.com/kb/297878 KB297878]. Below we'll use HKCU.&lt;br /&gt;
&lt;br /&gt;
*HKCU\Software\Clients\StartMenuInternet key is used to specify default web browser; could be set to Konqueror&lt;br /&gt;
*HKCU\Software\Clients\StartMenuInternet\app.exe\shell\open\command key is used for &amp;quot;Internet&amp;quot; start menu shortcut, can be set to Konqueror. Note from the KB - &amp;lt;tt&amp;gt;&amp;quot;The command might open the browser on the users home page, for example. However, it might launch some other introductory user interface that the ISV feels is appropriate.&amp;quot;&amp;lt;/tt&amp;gt; So this is not the same as 'default browser' setting.&lt;br /&gt;
&lt;br /&gt;
*HKCU\Software\Clients\Mail\Appname - registered email client, there can be more entries within the 'Mail' node. Adding KMail here makes it available for users to select as a default browser using 'Set Default Programs' system window.&lt;br /&gt;
*HKCU\Software\Clients\Mail - default email client,  'Windows Mail' by default; could be set to KMail.&lt;br /&gt;
&lt;br /&gt;
*HKCU\Software\Clients\Calendar\Appname - registered calendar application, there can be more entries within the 'Calendar' node. See the note for HKCU\Software\Clients\Mail\Appname.&lt;br /&gt;
*HKCU\Software\Clients\Calendar - default calendar application, 'Windows Calendar' on Vista; could be set to KOrganizer.&lt;br /&gt;
&lt;br /&gt;
*HKCU\Software\Clients\Contacts\Appname - registered contacts client, there can be more entries within the 'Contacts' node. See the note for HKCU\Software\Clients\Mail\Appname.&lt;br /&gt;
*HKCU\Software\Clients\Contacts - default contacts application, 'Address Book' by default; could be set to KAddressBook.&lt;br /&gt;
&lt;br /&gt;
*HKCU\Software\Clients\News\Appname - registered newsgroup client, there can be more entries within the 'News' node. See the note for HKCU\Software\Clients\Mail\Appname.&lt;br /&gt;
*HKCU\Software\Clients\News - default newsgroup application, 'Windows Mail' by default; could be set to KNode.&lt;br /&gt;
&lt;br /&gt;
From the KB: &amp;lt;tt&amp;gt;After updating the registry keys, the application broadcasts the WM_SETTINGCHANGE message with wParam = 0 and lParam pointing to the null-terminated string &amp;quot;Software\Clients\StartMenuInternet&amp;quot; to notify the operating system that the default client has changed.&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Using MAPI=====&lt;br /&gt;
HKLM\Software\Clients\AppName\DllPath points to a dll implementing [http://en.wikipedia.org/wiki/MAPI MAPI] interface. Internet Explorer uses Windows Messaging by default to invoke a mailer on a mailto: link. Only if the MAPI install is misconfigured will it resort to directly accessing the mailto association key.[http://members.toast.net/4pf/Protocol.html] &lt;br /&gt;
Example implementation of MAPI services is Thundebird's mozMapi32.dll (the key is usualle equal to C:\Program Files\Mozilla Thunderbird\mozMapi32.dll).&lt;br /&gt;
&lt;br /&gt;
=====KDE-related notes=====&lt;br /&gt;
*KDElibs execute default web browser or email client for protocols like http(s): and &amp;lt;nowiki&amp;gt;mailto:&amp;lt;/nowiki&amp;gt; via {{Qt|QDesktopServices}}::openUrl(), which in turn uses ShellExecute(). openUrl() is widely used in Qt e.g. for hyperlinks in text boxes and label widgets.&lt;br /&gt;
*A general rule of KDE/win: not to duplicate registry settings in any rc file and use default applications if possible, to avoid changing behaviour expected by users.&lt;br /&gt;
*[[User:Jstaniek|jstaniek]] 12:06, 18 June 2008 (CEST): Before LinuxTag I've performed some tests of setting default clients, and looks like it's is not possible to set onlt writing registry entries. Some API calls may be needed, especially because locked at least one registry key is locked for writing during the session.&lt;br /&gt;
&lt;br /&gt;
== Links ==&lt;br /&gt;
* [[Projects/KDE_on_Windows|The KDE on Windows]] Project&lt;br /&gt;
* [[Projects/KDE on Windows/Missing features of kdelibs|Missing features of kdelibs on Windows]] - KDE PIM may depend on them&lt;br /&gt;
&lt;br /&gt;
[[Category:PIM]]&lt;br /&gt;
[[Category:MS Windows]]&lt;/div&gt;</summary>
		<author><name>Bernhard</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Projects/PIM/MS_Windows</id>
		<title>Projects/PIM/MS Windows</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Projects/PIM/MS_Windows"/>
				<updated>2011-03-23T15:37:56Z</updated>
		
		<summary type="html">&lt;p&gt;Bernhard: explaining Windows NT Kernel&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page covers topics related to the KDE PIM Suite on MS Windows NT kernel (which means running on Windows Desktop versions NT or newer like XP, Vista or 7).&lt;br /&gt;
&lt;br /&gt;
==Building==&lt;br /&gt;
&lt;br /&gt;
To build KDE PIM for Windows use emerge.&lt;br /&gt;
For documentation about emerge please see [http://techbase.kde.org/Getting_Started/Build/KDE4/Windows]&lt;br /&gt;
&lt;br /&gt;
You should be able to get executables just by calling emerge kdepim.&lt;br /&gt;
&lt;br /&gt;
== Problem points ==&lt;br /&gt;
{| class=&amp;quot;sortable&amp;quot; border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border: gray solid 1px; border-collapse: collapse; text-align: left; width: 100%;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: #ececec; white-space:nowrap;&amp;quot;&lt;br /&gt;
! Status !! Feature !! Description !! Contact&lt;br /&gt;
&lt;br /&gt;
{{FeatureDone | [[#Documentation_of_KDE|Documentation of KDE]] | Due to meinproc4 crashes documentation build is turned off from all kde products.| }}&lt;br /&gt;
&lt;br /&gt;
{{FeatureTodo|[[#LDAP_Support|LDAP Support]]| Enabling KLdap |aheinecke@intevation.de| Andre Heinecke }}&lt;br /&gt;
&lt;br /&gt;
{{FeatureDone|[[#Akonadi_Notifications|Akonadi Notifications]]| Akonadi Notifications are not communicated correctly to the GUI |}}&lt;br /&gt;
&lt;br /&gt;
{{FeatureInProgress|[[#Search|Search]]|Provide a search backend|aheinecke@intevation.de| Andre Heinecke }}&lt;br /&gt;
&lt;br /&gt;
{{FeatureInProgress|[[#Nepomuk|Nepomuk]]|Provide a working Nepomuk|aheinecke@intevation.de| Andre Heinecke }}&lt;br /&gt;
&lt;br /&gt;
{{FeatureTodo|[[#Akonadi_Start_Stop|Akonadi startup/shutdown]]|Decide how akonadi should be started/stopped on Windows||}}&lt;br /&gt;
&lt;br /&gt;
{{FeatureTodo|Image view in Mailviewer|Images in the Mailviewer are not shown correctly||}}&lt;br /&gt;
&lt;br /&gt;
{{FeatureTodo|Configuration dialog asks for save every time|The configuration dialog asks the user to confirm his changes even if no changes were made||}}&lt;br /&gt;
&lt;br /&gt;
{{FeatureTodo|[[#Design|Design]]|Make KDEPIM feel native on Windows||}}&lt;br /&gt;
&lt;br /&gt;
{{FeatureTodo|[[#GPG4Win_Integration|Integrate with GPG4Win]]|Use GPG4Win to provide Crypto support on Windows |aheinecke@intevation.de| Andre Heinecke}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Documentation of KDE ===&lt;br /&gt;
For more details about the problem check the bug report: [https://bugs.kde.org/show_bug.cgi?id=263828 BUG263828] &lt;br /&gt;
&lt;br /&gt;
It is no longer an acute problem and documentation can be built.&lt;br /&gt;
&lt;br /&gt;
===LDAP Support===&lt;br /&gt;
OpenLDAP does not build well for Windows on Windows, for this reason there is no working OpenLDAP-src target in emerge, if you want LDAP Support you have to manually install OpenLDAP into your KDE Enviornment before building kdepimlibs.&lt;br /&gt;
&lt;br /&gt;
Since Windows has native LDAP support with winldap it is easily possible to use that, an Obstacle for this is that also kdepimlibs is built with -DUNICODE it expects all system LDAP calls to return ASCII so you would have to do some conversions mappings there. A bit code for that is already in kdepimlibs/kldap/w32ldaphelp.h but it is only finished for WinCE not for WinNT.&lt;br /&gt;
&lt;br /&gt;
===Search===&lt;br /&gt;
Strigideamon does not compile for Windows NT at the moment, so apart from Virtuoso/Nepomuk there is no Search for KDE PIM Software available. &lt;br /&gt;
Currently Virtuoso gets started in the Enterprise 5 Package on some systems and on others not. There might be a packaging problem or timeouts that are reached.&lt;br /&gt;
Strigi indexing complains that it is disabled, so even with a running Nepomuk there is no search available at the moment.&lt;br /&gt;
&lt;br /&gt;
===Nepomuk===&lt;br /&gt;
Nepomuk only supports Virtuoso as Database backend.&lt;br /&gt;
For a virtuoso installation to work regsvr32 has to be called on the virtuoso odbc driver at the moment. Soprano has to be fixed so that it checks if that driver is availble and if not registers it.&lt;br /&gt;
&lt;br /&gt;
===Akonadi Notifications===&lt;br /&gt;
DBus problem that has been fixed in newer versions of DBus &amp;gt; 1.4.1&lt;br /&gt;
&lt;br /&gt;
===Design===&lt;br /&gt;
Oxygen Theme looks strange and alien on Windows 7 default style but ok on Windows XP style&lt;br /&gt;
Currently the Packaged Style in the Enterprise 5 package is optimzed for windows 7&lt;br /&gt;
&lt;br /&gt;
Best solution would be to check what the System Style is or package the KDE-Systemsettings to customize that style&lt;br /&gt;
&lt;br /&gt;
===Akonadi Start Stop===&lt;br /&gt;
Akonadi startup can take a while on slow systems which delays the first Kontact&lt;br /&gt;
startup.&lt;br /&gt;
&lt;br /&gt;
Once akonadi is running it can not be stopped from the UI&lt;br /&gt;
&lt;br /&gt;
===GPG4Win Integration===&lt;br /&gt;
To integrate with gpg4win one has to copy the gpg2.exe in the gpg4win/bin directory to gpg.exe in the same directory. Otherwise no backends will be found.&lt;br /&gt;
This can be fixed by packaging a better gpg4win-dev package.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Some notes from the original porting project==&lt;br /&gt;
&lt;br /&gt;
===Integration into the Windows Explorer &amp;amp; Desktop===&lt;br /&gt;
{{Note|[[User:Jstaniek|jstaniek]] 22:01, 14 January 2008 (CET): [http://tortoisesvn.tigris.org/ TortoiseSVN] is GPLed SVN client which is nicely integrated with Windows Explorer. Perhaps we can use its source code as a reference...}}&lt;br /&gt;
&lt;br /&gt;
====Registry settings for default apps and services====&lt;br /&gt;
'''Introduction:''' We can detect whether KMail is the default e-mail client. If set as default, KMail should act as a default mailer, and thus be invoked automatically for actions like RMB &amp;quot;Send To -&amp;gt; E-mail Recipient&amp;quot;. This shall be also reused by others for KOrganizer and Konqueror. The solution is relatively simple modifications to the Windows Registry. See [http://members.toast.net/4pf/Protocol.html Mozilla's solution].&lt;br /&gt;
&lt;br /&gt;
First, we can use HKLM node for system-global settings or HKCU node for current-user-only settings. If the attempt to set the value in HKLM fails, usually because of unsufficient permissions, HKCU should be used. As expected, HKCU overrides HKLM settings. See [http://support.microsoft.com/kb/297878 KB297878]. Below we'll use HKCU.&lt;br /&gt;
&lt;br /&gt;
*HKCU\Software\Clients\StartMenuInternet key is used to specify default web browser; could be set to Konqueror&lt;br /&gt;
*HKCU\Software\Clients\StartMenuInternet\app.exe\shell\open\command key is used for &amp;quot;Internet&amp;quot; start menu shortcut, can be set to Konqueror. Note from the KB - &amp;lt;tt&amp;gt;&amp;quot;The command might open the browser on the users home page, for example. However, it might launch some other introductory user interface that the ISV feels is appropriate.&amp;quot;&amp;lt;/tt&amp;gt; So this is not the same as 'default browser' setting.&lt;br /&gt;
&lt;br /&gt;
*HKCU\Software\Clients\Mail\Appname - registered email client, there can be more entries within the 'Mail' node. Adding KMail here makes it available for users to select as a default browser using 'Set Default Programs' system window.&lt;br /&gt;
*HKCU\Software\Clients\Mail - default email client,  'Windows Mail' by default; could be set to KMail.&lt;br /&gt;
&lt;br /&gt;
*HKCU\Software\Clients\Calendar\Appname - registered calendar application, there can be more entries within the 'Calendar' node. See the note for HKCU\Software\Clients\Mail\Appname.&lt;br /&gt;
*HKCU\Software\Clients\Calendar - default calendar application, 'Windows Calendar' on Vista; could be set to KOrganizer.&lt;br /&gt;
&lt;br /&gt;
*HKCU\Software\Clients\Contacts\Appname - registered contacts client, there can be more entries within the 'Contacts' node. See the note for HKCU\Software\Clients\Mail\Appname.&lt;br /&gt;
*HKCU\Software\Clients\Contacts - default contacts application, 'Address Book' by default; could be set to KAddressBook.&lt;br /&gt;
&lt;br /&gt;
*HKCU\Software\Clients\News\Appname - registered newsgroup client, there can be more entries within the 'News' node. See the note for HKCU\Software\Clients\Mail\Appname.&lt;br /&gt;
*HKCU\Software\Clients\News - default newsgroup application, 'Windows Mail' by default; could be set to KNode.&lt;br /&gt;
&lt;br /&gt;
From the KB: &amp;lt;tt&amp;gt;After updating the registry keys, the application broadcasts the WM_SETTINGCHANGE message with wParam = 0 and lParam pointing to the null-terminated string &amp;quot;Software\Clients\StartMenuInternet&amp;quot; to notify the operating system that the default client has changed.&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Using MAPI=====&lt;br /&gt;
HKLM\Software\Clients\AppName\DllPath points to a dll implementing [http://en.wikipedia.org/wiki/MAPI MAPI] interface. Internet Explorer uses Windows Messaging by default to invoke a mailer on a mailto: link. Only if the MAPI install is misconfigured will it resort to directly accessing the mailto association key.[http://members.toast.net/4pf/Protocol.html] &lt;br /&gt;
Example implementation of MAPI services is Thundebird's mozMapi32.dll (the key is usualle equal to C:\Program Files\Mozilla Thunderbird\mozMapi32.dll).&lt;br /&gt;
&lt;br /&gt;
=====KDE-related notes=====&lt;br /&gt;
*KDElibs execute default web browser or email client for protocols like http(s): and &amp;lt;nowiki&amp;gt;mailto:&amp;lt;/nowiki&amp;gt; via {{Qt|QDesktopServices}}::openUrl(), which in turn uses ShellExecute(). openUrl() is widely used in Qt e.g. for hyperlinks in text boxes and label widgets.&lt;br /&gt;
*A general rule of KDE/win: not to duplicate registry settings in any rc file and use default applications if possible, to avoid changing behaviour expected by users.&lt;br /&gt;
*[[User:Jstaniek|jstaniek]] 12:06, 18 June 2008 (CEST): Before LinuxTag I've performed some tests of setting default clients, and looks like it's is not possible to set onlt writing registry entries. Some API calls may be needed, especially because locked at least one registry key is locked for writing during the session.&lt;br /&gt;
&lt;br /&gt;
== Links ==&lt;br /&gt;
* [[Projects/KDE_on_Windows|The KDE on Windows]] Project&lt;br /&gt;
* [[Projects/KDE on Windows/Missing features of kdelibs|Missing features of kdelibs on Windows]] - KDE PIM may depend on them&lt;br /&gt;
&lt;br /&gt;
[[Category:PIM]]&lt;br /&gt;
[[Category:MS Windows]]&lt;/div&gt;</summary>
		<author><name>Bernhard</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Getting_Started/Sources</id>
		<title>Getting Started/Sources</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Getting_Started/Sources"/>
				<updated>2011-03-23T13:10:27Z</updated>
		
		<summary type="html">&lt;p&gt;Bernhard: adding bullet point for KDE Playground&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Source Repositories and Revision Control ==&lt;br /&gt;
&lt;br /&gt;
[TODO more background to revision control]&lt;br /&gt;
&lt;br /&gt;
KDE uses a central online repository to store our Source Code and to track changes made to the code.  Currently, KDE is in the middle of migrating our main repository from [[/Subversion|Subversion (svn)]] to [[Development/Git|Git]], so some software modules currently live in Git while others are still only available from Subversion.  This means you will need to become familiar with both systems.&lt;br /&gt;
&lt;br /&gt;
== Obtaining The Source Code ==&lt;br /&gt;
&lt;br /&gt;
There are three main ways of doing this:&lt;br /&gt;
&lt;br /&gt;
* Directly access the KDE Source Repository using either Git or Subversion to copy the source code as it currently is with a full history of all changes.  In Git this is know as Cloning the repository, in Subversion it is Checking-Out the code.  This is most commonly done if you want to actively develop the code.&lt;br /&gt;
* Download a tarball snapshot of the Source Repository to bootstrap a Git clone or Subversion checkout.  This is a good option if you have a slow or unreliable internet connection.  See the [[/Snapshots|Source Snapshots]] page for more details.&lt;br /&gt;
* Download a tarball snapshot of just the code as at a given time or release.  This is most commonly done if you do not want to develop the code itself but just want to use it for a stable system installation, testing a release, or developing applications outside of the KDE SC.&lt;br /&gt;
&lt;br /&gt;
Note that Checkout has a different meaning in Git than it does in Subversion.&lt;br /&gt;
&lt;br /&gt;
== KDE Software Modules ==&lt;br /&gt;
&lt;br /&gt;
Within the KDE Source Repository the code is organized in Projects and Modules.  There are also a number of high-level groupings of the Modules.&lt;br /&gt;
&lt;br /&gt;
=== Qt KDE ===&lt;br /&gt;
&lt;br /&gt;
* Qt KDE (qt-kde) git&lt;br /&gt;
&lt;br /&gt;
=== KDE Support ===&lt;br /&gt;
&lt;br /&gt;
The '''KDE Support''' group is a set of tools and libraries that have been developed by KDE and that various KDE modules depend upon but are not themselves dependent on the KDE Development Platform.  These libraries can thus be used by non-KDE applications without having to rely on KDE as well.&lt;br /&gt;
&lt;br /&gt;
=== KDE Software Compilation ===&lt;br /&gt;
&lt;br /&gt;
The '''KDE Software Compilation''' (aka KDE SC) is an informal term covering all the KDE Software which is released together on the regular KDE Release Cycle.&lt;br /&gt;
&lt;br /&gt;
==== KDE Development Platform ====&lt;br /&gt;
&lt;br /&gt;
The '''KDE Development Platform''' group is defined as those KDE Modules that are required to run a KDE Application, i.e. the core libraries and runtime dependencies.&lt;br /&gt;
&lt;br /&gt;
* KDE Libraries (kdelibs) Git&lt;br /&gt;
* KDE PIM Libraries (kdepimlibs) Git&lt;br /&gt;
* KDE Runtime (kde-runtime) Git&lt;br /&gt;
&lt;br /&gt;
==== KDE Workspace ====&lt;br /&gt;
&lt;br /&gt;
The '''KDE Workspace''' group (aka '''Plasma''') is defined as those KDE Modules that are needed to run a workspace, such as the Desktop or Netbook.  This group is not needed to run a KDE Application under another workspace such as Gnome or Windows.&lt;br /&gt;
&lt;br /&gt;
* KDE Workspace (kde-workspace) Git&lt;br /&gt;
* KDE Base (kde-baseapps) Git&lt;br /&gt;
&lt;br /&gt;
==== KDE Applications ====&lt;br /&gt;
&lt;br /&gt;
The '''KDE Applications''' group is defined as those KDE modules built on the KDE Development Platform that are hosted by the KDE infrastructure and are released as part of the regular KDE Release Cycle, i.e. they are part of the KDE SC.&lt;br /&gt;
&lt;br /&gt;
* KDE Accessibility (kdeaccessibility) svn&lt;br /&gt;
* KDE Admin (kdeadmin) svn&lt;br /&gt;
* KDE Artwork (kdeartwork) svn&lt;br /&gt;
* KDE Bindings (kdebindings) git/svn&lt;br /&gt;
* KDE Examples (kdeexamples) git&lt;br /&gt;
* KDE Education (kdeedu) svn&lt;br /&gt;
* KDE Games (kdegames) svn&lt;br /&gt;
* KDE Graphics (kdegraphics) git/svn&lt;br /&gt;
* KDE Network (kdenetwork) svn&lt;br /&gt;
* KDE Multimedia (kdemultimedia) svn&lt;br /&gt;
* Plasma Addons (kdeplasma-addons) git&lt;br /&gt;
* KDE PIM Runtime (kdepim-runtime) Git&lt;br /&gt;
* '''Kontact''' and Kontact Touch as part of KDE PIM (kdepim) Git&lt;br /&gt;
* KDE SDK (kdesdk) svn&lt;br /&gt;
* KDE Toys (kdetoys) svn&lt;br /&gt;
* KDE Utilities (kdeutils) svn&lt;br /&gt;
* KDE Web Development (kdewebdev) svn&lt;br /&gt;
&lt;br /&gt;
=== KDE Extragear ===&lt;br /&gt;
&lt;br /&gt;
The '''KDE Extragear''' group is defined as those applications built on the KDE Development Platform that are hosted by the KDE infrastructure and have a stable release but are not part of a KDE Module and are not released as part of the regular KDE Release Cycle, i.e. they are not part of the KDE SC.&lt;br /&gt;
&lt;br /&gt;
* KDE Extragear (extragear) Git/svn&lt;br /&gt;
&lt;br /&gt;
=== KDE Playground ===&lt;br /&gt;
&lt;br /&gt;
The '''KDE Playground''' group is defined as those applications built on the KDE Development Platform that are hosted by the KDE infrastructure but have not yet had a stable release and may never be released.&lt;br /&gt;
&lt;br /&gt;
* KDE Playground (playground) git/svn&lt;br /&gt;
&lt;br /&gt;
=== KDE Review ===&lt;br /&gt;
&lt;br /&gt;
The '''KDE Review''' group is defined as those applications that are being reviewed for inclusion in a KDE Module or KDE Extragear, usually moving over from KDE Playground.&lt;br /&gt;
&lt;br /&gt;
=== KDE Translations ===&lt;br /&gt;
&lt;br /&gt;
* KDE Translations (i18n) svn&lt;br /&gt;
&lt;br /&gt;
=== KDE Websites ===&lt;br /&gt;
&lt;br /&gt;
* KDE Websites (websites/www) git/svn&lt;br /&gt;
&lt;br /&gt;
=== KOffice ===&lt;br /&gt;
&lt;br /&gt;
* KOffice (koffice) git, stable in svn&lt;br /&gt;
&lt;br /&gt;
=== Calligra ===&lt;br /&gt;
&lt;br /&gt;
* '''Calligra''' (calligra) git&lt;/div&gt;</summary>
		<author><name>Bernhard</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Getting_Started/Sources</id>
		<title>Getting Started/Sources</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Getting_Started/Sources"/>
				<updated>2011-03-23T11:29:49Z</updated>
		
		<summary type="html">&lt;p&gt;Bernhard: highlighting all active &amp;quot;new brand&amp;quot; names that people might look for to better visual matching.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Source Repositories and Revision Control ==&lt;br /&gt;
&lt;br /&gt;
[TODO more background to revision control]&lt;br /&gt;
&lt;br /&gt;
KDE uses a central online repository to store our Source Code and to track changes made to the code.  Currently, KDE is in the middle of migrating our main repository from [[/Subversion|Subversion (svn)]] to [[Development/Git|Git]], so some software modules currently live in Git while others are still only available from Subversion.  This means you will need to become familiar with both systems.&lt;br /&gt;
&lt;br /&gt;
== Obtaining The Source Code ==&lt;br /&gt;
&lt;br /&gt;
There are three main ways of doing this:&lt;br /&gt;
&lt;br /&gt;
* Directly access the KDE Source Repository using either Git or Subversion to copy the source code as it currently is with a full history of all changes.  In Git this is know as Cloning the repository, in Subversion it is Checking-Out the code.  This is most commonly done if you want to actively develop the code.&lt;br /&gt;
* Download a tarball snapshot of the Source Repository to bootstrap a Git clone or Subversion checkout.  This is a good option if you have a slow or unreliable internet connection.  See the [[/Snapshots|Source Snapshots]] page for more details.&lt;br /&gt;
* Download a tarball snapshot of just the code as at a given time or release.  This is most commonly done if you do not want to develop the code itself but just want to use it for a stable system installation, testing a release, or developing applications outside of the KDE SC.&lt;br /&gt;
&lt;br /&gt;
Note that Checkout has a different meaning in Git than it does in Subversion.&lt;br /&gt;
&lt;br /&gt;
== KDE Software Modules ==&lt;br /&gt;
&lt;br /&gt;
Within the KDE Source Repository the code is organized in Projects and Modules.  There are also a number of high-level groupings of the Modules.&lt;br /&gt;
&lt;br /&gt;
=== Qt KDE ===&lt;br /&gt;
&lt;br /&gt;
* Qt KDE (qt-kde) git&lt;br /&gt;
&lt;br /&gt;
=== KDE Support ===&lt;br /&gt;
&lt;br /&gt;
The '''KDE Support''' group is a set of tools and libraries that have been developed by KDE and that various KDE modules depend upon but are not themselves dependent on the KDE Development Platform.  These libraries can thus be used by non-KDE applications without having to rely on KDE as well.&lt;br /&gt;
&lt;br /&gt;
=== KDE Software Compilation ===&lt;br /&gt;
&lt;br /&gt;
The '''KDE Software Compilation''' (aka KDE SC) is an informal term covering all the KDE Software which is released together on the regular KDE Release Cycle.&lt;br /&gt;
&lt;br /&gt;
==== KDE Development Platform ====&lt;br /&gt;
&lt;br /&gt;
The '''KDE Development Platform''' group is defined as those KDE Modules that are required to run a KDE Application, i.e. the core libraries and runtime dependencies.&lt;br /&gt;
&lt;br /&gt;
* KDE Libraries (kdelibs) Git&lt;br /&gt;
* KDE PIM Libraries (kdepimlibs) Git&lt;br /&gt;
* KDE Runtime (kde-runtime) Git&lt;br /&gt;
&lt;br /&gt;
==== KDE Workspace ====&lt;br /&gt;
&lt;br /&gt;
The '''KDE Workspace''' group (aka '''Plasma''') is defined as those KDE Modules that are needed to run a workspace, such as the Desktop or Netbook.  This group is not needed to run a KDE Application under another workspace such as Gnome or Windows.&lt;br /&gt;
&lt;br /&gt;
* KDE Workspace (kde-workspace) Git&lt;br /&gt;
* KDE Base (kde-baseapps) Git&lt;br /&gt;
&lt;br /&gt;
==== KDE Applications ====&lt;br /&gt;
&lt;br /&gt;
The '''KDE Applications''' group is defined as those KDE modules built on the KDE Development Platform that are hosted by the KDE infrastructure and are released as part of the regular KDE Release Cycle, i.e. they are part of the KDE SC.&lt;br /&gt;
&lt;br /&gt;
* KDE Accessibility (kdeaccessibility) svn&lt;br /&gt;
* KDE Admin (kdeadmin) svn&lt;br /&gt;
* KDE Artwork (kdeartwork) svn&lt;br /&gt;
* KDE Bindings (kdebindings) git/svn&lt;br /&gt;
* KDE Examples (kdeexamples) git&lt;br /&gt;
* KDE Education (kdeedu) svn&lt;br /&gt;
* KDE Games (kdegames) svn&lt;br /&gt;
* KDE Graphics (kdegraphics) git/svn&lt;br /&gt;
* KDE Network (kdenetwork) svn&lt;br /&gt;
* KDE Multimedia (kdemultimedia) svn&lt;br /&gt;
* Plasma Addons (kdeplasma-addons) git&lt;br /&gt;
* KDE PIM Runtime (kdepim-runtime) Git&lt;br /&gt;
* '''Kontact''' and Kontact Touch as part of KDE PIM (kdepim) Git&lt;br /&gt;
* KDE SDK (kdesdk) svn&lt;br /&gt;
* KDE Toys (kdetoys) svn&lt;br /&gt;
* KDE Utilities (kdeutils) svn&lt;br /&gt;
* KDE Web Development (kdewebdev) svn&lt;br /&gt;
&lt;br /&gt;
=== KDE Extragear ===&lt;br /&gt;
&lt;br /&gt;
The '''KDE Extragear''' group is defined as those applications built on the KDE Development Platform that are hosted by the KDE infrastructure and have a stable release but are not part of a KDE Module and are not released as part of the regular KDE Release Cycle, i.e. they are not part of the KDE SC.&lt;br /&gt;
&lt;br /&gt;
* KDE Extragear (extragear) Git/svn&lt;br /&gt;
&lt;br /&gt;
=== KDE Playground ===&lt;br /&gt;
&lt;br /&gt;
The '''KDE Playground''' group is defined as those applications built on the KDE Development Platform that are hosted by the KDE infrastructure but have not yet had a stable release and may never be released.&lt;br /&gt;
&lt;br /&gt;
=== KDE Review ===&lt;br /&gt;
&lt;br /&gt;
The '''KDE Review''' group is defined as those applications that are being reviewed for inclusion in a KDE Module or KDE Extragear, usually moving over from KDE Playground.&lt;br /&gt;
&lt;br /&gt;
=== KDE Translations ===&lt;br /&gt;
&lt;br /&gt;
* KDE Translations (i18n) svn&lt;br /&gt;
&lt;br /&gt;
=== KDE Websites ===&lt;br /&gt;
&lt;br /&gt;
* KDE Websites (websites/www) git/svn&lt;br /&gt;
&lt;br /&gt;
=== KOffice ===&lt;br /&gt;
&lt;br /&gt;
* KOffice (koffice) git, stable in svn&lt;br /&gt;
&lt;br /&gt;
=== Calligra ===&lt;br /&gt;
&lt;br /&gt;
* '''Calligra''' (calligra) git&lt;/div&gt;</summary>
		<author><name>Bernhard</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Getting_Started/Sources</id>
		<title>Getting Started/Sources</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Getting_Started/Sources"/>
				<updated>2011-03-23T11:27:05Z</updated>
		
		<summary type="html">&lt;p&gt;Bernhard: /* KDE Applications */ Explicitely mentioned Kontact, because some people might match on the name.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Source Repositories and Revision Control ==&lt;br /&gt;
&lt;br /&gt;
[TODO more background to revision control]&lt;br /&gt;
&lt;br /&gt;
KDE uses a central online repository to store our Source Code and to track changes made to the code.  Currently, KDE is in the middle of migrating our main repository from [[/Subversion|Subversion (svn)]] to [[Development/Git|Git]], so some software modules currently live in Git while others are still only available from Subversion.  This means you will need to become familiar with both systems.&lt;br /&gt;
&lt;br /&gt;
== Obtaining The Source Code ==&lt;br /&gt;
&lt;br /&gt;
There are three main ways of doing this:&lt;br /&gt;
&lt;br /&gt;
* Directly access the KDE Source Repository using either Git or Subversion to copy the source code as it currently is with a full history of all changes.  In Git this is know as Cloning the repository, in Subversion it is Checking-Out the code.  This is most commonly done if you want to actively develop the code.&lt;br /&gt;
* Download a tarball snapshot of the Source Repository to bootstrap a Git clone or Subversion checkout.  This is a good option if you have a slow or unreliable internet connection.  See the [[/Snapshots|Source Snapshots]] page for more details.&lt;br /&gt;
* Download a tarball snapshot of just the code as at a given time or release.  This is most commonly done if you do not want to develop the code itself but just want to use it for a stable system installation, testing a release, or developing applications outside of the KDE SC.&lt;br /&gt;
&lt;br /&gt;
Note that Checkout has a different meaning in Git than it does in Subversion.&lt;br /&gt;
&lt;br /&gt;
== KDE Software Modules ==&lt;br /&gt;
&lt;br /&gt;
Within the KDE Source Repository the code is organized in Projects and Modules.  There are also a number of high-level groupings of the Modules.&lt;br /&gt;
&lt;br /&gt;
=== Qt KDE ===&lt;br /&gt;
&lt;br /&gt;
* Qt KDE (qt-kde) git&lt;br /&gt;
&lt;br /&gt;
=== KDE Support ===&lt;br /&gt;
&lt;br /&gt;
The '''KDE Support''' group is a set of tools and libraries that have been developed by KDE and that various KDE modules depend upon but are not themselves dependent on the KDE Development Platform.  These libraries can thus be used by non-KDE applications without having to rely on KDE as well.&lt;br /&gt;
&lt;br /&gt;
=== KDE Software Compilation ===&lt;br /&gt;
&lt;br /&gt;
The '''KDE Software Compilation''' (aka KDE SC) is an informal term covering all the KDE Software which is released together on the regular KDE Release Cycle.&lt;br /&gt;
&lt;br /&gt;
==== KDE Development Platform ====&lt;br /&gt;
&lt;br /&gt;
The '''KDE Development Platform''' group is defined as those KDE Modules that are required to run a KDE Application, i.e. the core libraries and runtime dependencies.&lt;br /&gt;
&lt;br /&gt;
* KDE Libraries (kdelibs) Git&lt;br /&gt;
* KDE PIM Libraries (kdepimlibs) Git&lt;br /&gt;
* KDE Runtime (kde-runtime) Git&lt;br /&gt;
&lt;br /&gt;
==== KDE Workspace ====&lt;br /&gt;
&lt;br /&gt;
The '''KDE Workspace''' group (aka Plasma) is defined as those KDE Modules that are needed to run a workspace, such as the Desktop or Netbook.  This group is not needed to run a KDE Application under another workspace such as Gnome or Windows.&lt;br /&gt;
&lt;br /&gt;
* KDE Workspace (kde-workspace) Git&lt;br /&gt;
* KDE Base (kde-baseapps) Git&lt;br /&gt;
&lt;br /&gt;
==== KDE Applications ====&lt;br /&gt;
&lt;br /&gt;
The '''KDE Applications''' group is defined as those KDE modules built on the KDE Development Platform that are hosted by the KDE infrastructure and are released as part of the regular KDE Release Cycle, i.e. they are part of the KDE SC.&lt;br /&gt;
&lt;br /&gt;
* KDE Accessibility (kdeaccessibility) svn&lt;br /&gt;
* KDE Admin (kdeadmin) svn&lt;br /&gt;
* KDE Artwork (kdeartwork) svn&lt;br /&gt;
* KDE Bindings (kdebindings) git/svn&lt;br /&gt;
* KDE Examples (kdeexamples) git&lt;br /&gt;
* KDE Education (kdeedu) svn&lt;br /&gt;
* KDE Games (kdegames) svn&lt;br /&gt;
* KDE Graphics (kdegraphics) git/svn&lt;br /&gt;
* KDE Network (kdenetwork) svn&lt;br /&gt;
* KDE Multimedia (kdemultimedia) svn&lt;br /&gt;
* Plasma Addons (kdeplasma-addons) git&lt;br /&gt;
* KDE PIM Runtime (kdepim-runtime) Git&lt;br /&gt;
* Kontact and Kontact Touch as part of KDE PIM (kdepim) Git&lt;br /&gt;
* KDE SDK (kdesdk) svn&lt;br /&gt;
* KDE Toys (kdetoys) svn&lt;br /&gt;
* KDE Utilities (kdeutils) svn&lt;br /&gt;
* KDE Web Development (kdewebdev) svn&lt;br /&gt;
&lt;br /&gt;
=== KDE Extragear ===&lt;br /&gt;
&lt;br /&gt;
The '''KDE Extragear''' group is defined as those applications built on the KDE Development Platform that are hosted by the KDE infrastructure and have a stable release but are not part of a KDE Module and are not released as part of the regular KDE Release Cycle, i.e. they are not part of the KDE SC.&lt;br /&gt;
&lt;br /&gt;
* KDE Extragear (extragear) Git/svn&lt;br /&gt;
&lt;br /&gt;
=== KDE Playground ===&lt;br /&gt;
&lt;br /&gt;
The '''KDE Playground''' group is defined as those applications built on the KDE Development Platform that are hosted by the KDE infrastructure but have not yet had a stable release and may never be released.&lt;br /&gt;
&lt;br /&gt;
=== KDE Review ===&lt;br /&gt;
&lt;br /&gt;
The '''KDE Review''' group is defined as those applications that are being reviewed for inclusion in a KDE Module or KDE Extragear, usually moving over from KDE Playground.&lt;br /&gt;
&lt;br /&gt;
=== KDE Translations ===&lt;br /&gt;
&lt;br /&gt;
* KDE Translations (i18n) svn&lt;br /&gt;
&lt;br /&gt;
=== KDE Websites ===&lt;br /&gt;
&lt;br /&gt;
* KDE Websites (websites/www) git/svn&lt;br /&gt;
&lt;br /&gt;
=== KOffice ===&lt;br /&gt;
&lt;br /&gt;
* KOffice (koffice) git, stable in svn&lt;br /&gt;
&lt;br /&gt;
=== Calligra ===&lt;br /&gt;
&lt;br /&gt;
* Calligra (calligra) git&lt;/div&gt;</summary>
		<author><name>Bernhard</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Projects/PIM/MS_Windows</id>
		<title>Projects/PIM/MS Windows</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Projects/PIM/MS_Windows"/>
				<updated>2011-02-25T11:52:38Z</updated>
		
		<summary type="html">&lt;p&gt;Bernhard: /* Problem points */ meinproc point improved.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page covers topics related to the KDE PIM Suite on MS Windows NT.&lt;br /&gt;
&lt;br /&gt;
==Building==&lt;br /&gt;
&lt;br /&gt;
To build KDE PIM for Windows use [Getting_Started/Build/KDE4/Windows/emerge emerge]]&lt;br /&gt;
&lt;br /&gt;
You should be able to get executables just by calling emerge kdepim.&lt;br /&gt;
&lt;br /&gt;
== Problem points ==&lt;br /&gt;
{| class=&amp;quot;sortable&amp;quot; border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border: gray solid 1px; border-collapse: collapse; text-align: left; width: 100%;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: #ececec; white-space:nowrap;&amp;quot;&lt;br /&gt;
! Status !! Feature !! Description !! Contact&lt;br /&gt;
&lt;br /&gt;
{{FeatureTodo | [[#Documentation_of_KDE|Documentation of KDE]] | Due to meinproc4 crashes documentation build is turned off from all kde products. The underlying defect could affect running products as well. |  }}&lt;br /&gt;
&lt;br /&gt;
{{FeatureTodo|[[#LDAP_Support|LDAP Support]]| Enabling KLdap |aheinecke@intevation.de| Andre Heinecke }}&lt;br /&gt;
&lt;br /&gt;
{{FeatureTodo|[[#Search|Search]]|Provide a search backend| }}&lt;br /&gt;
&lt;br /&gt;
{{FeatureTodo|[[#Nepomuk|Nepomuk]]|Provide a working Nepomuk| }}&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Documentation of KDE ===&lt;br /&gt;
Currently as of 22.2.2010 in all KDE builds for Windows Documentation build is turned off because of [https://bugs.kde.org/show_bug.cgi?id=263828 BUG263828] Meinproc4 crashes.&lt;br /&gt;
&lt;br /&gt;
If this is a defect in libxml2 or iconv, this could affect other KDE products&lt;br /&gt;
during runtime as well. Meinproc4 is just an XSLT processor.&lt;br /&gt;
&lt;br /&gt;
===LDAP Support===&lt;br /&gt;
OpenLDAP does not build well for Windows on Windows, for this reason there is no working OpenLDAP-src target in emerge, if you want LDAP Support you have to manually install OpenLDAP into your KDE Enviornment before building kdepimlibs.&lt;br /&gt;
&lt;br /&gt;
Since Windows has native LDAP support with winldap it is easily possible to use that, an Obstacle for this is that also kdepimlibs is built with -DUNICODE it expects all system LDAP calls to return ASCII so you would have to do some conversions mappings there. A bit code for that is already in kdepimlibs/kldap/w32ldaphelp.h but it is only finished for WinCE not for WinNT.&lt;br /&gt;
&lt;br /&gt;
===Search===&lt;br /&gt;
Strigideamon does not compile for Windows NT at the moment, so apart from Virtuoso/Nepomuk there is no Search for KDE PIM Software available.&lt;br /&gt;
&lt;br /&gt;
===Nepomuk===&lt;br /&gt;
Nepomuk only supports Virtuoso as Database backend. Virtuoso can not be installed through the KDE-Windows installer, so Nepomuk is currently not availabe for Windows with a working backend.&lt;br /&gt;
&lt;br /&gt;
==Some notes from the original porting project==&lt;br /&gt;
&lt;br /&gt;
===Integration into the Windows Explorer &amp;amp; Desktop===&lt;br /&gt;
{{Note|[[User:Jstaniek|jstaniek]] 22:01, 14 January 2008 (CET): [http://tortoisesvn.tigris.org/ TortoiseSVN] is GPLed SVN client which is nicely integrated with Windows Explorer. Perhaps we can use its source code as a reference...}}&lt;br /&gt;
&lt;br /&gt;
====Registry settings for default apps and services====&lt;br /&gt;
'''Introduction:''' We can detect whether KMail is the default e-mail client. If set as default, KMail should act as a default mailer, and thus be invoked automatically for actions like RMB &amp;quot;Send To -&amp;gt; E-mail Recipient&amp;quot;. This shall be also reused by others for KOrganizer and Konqueror. The solution is relatively simple modifications to the Windows Registry. See [http://members.toast.net/4pf/Protocol.html Mozilla's solution].&lt;br /&gt;
&lt;br /&gt;
First, we can use HKLM node for system-global settings or HKCU node for current-user-only settings. If the attempt to set the value in HKLM fails, usually because of unsufficient permissions, HKCU should be used. As expected, HKCU overrides HKLM settings. See [http://support.microsoft.com/kb/297878 KB297878]. Below we'll use HKCU.&lt;br /&gt;
&lt;br /&gt;
*HKCU\Software\Clients\StartMenuInternet key is used to specify default web browser; could be set to Konqueror&lt;br /&gt;
*HKCU\Software\Clients\StartMenuInternet\app.exe\shell\open\command key is used for &amp;quot;Internet&amp;quot; start menu shortcut, can be set to Konqueror. Note from the KB - &amp;lt;tt&amp;gt;&amp;quot;The command might open the browser on the users home page, for example. However, it might launch some other introductory user interface that the ISV feels is appropriate.&amp;quot;&amp;lt;/tt&amp;gt; So this is not the same as 'default browser' setting.&lt;br /&gt;
&lt;br /&gt;
*HKCU\Software\Clients\Mail\Appname - registered email client, there can be more entries within the 'Mail' node. Adding KMail here makes it available for users to select as a default browser using 'Set Default Programs' system window.&lt;br /&gt;
*HKCU\Software\Clients\Mail - default email client,  'Windows Mail' by default; could be set to KMail.&lt;br /&gt;
&lt;br /&gt;
*HKCU\Software\Clients\Calendar\Appname - registered calendar application, there can be more entries within the 'Calendar' node. See the note for HKCU\Software\Clients\Mail\Appname.&lt;br /&gt;
*HKCU\Software\Clients\Calendar - default calendar application, 'Windows Calendar' on Vista; could be set to KOrganizer.&lt;br /&gt;
&lt;br /&gt;
*HKCU\Software\Clients\Contacts\Appname - registered contacts client, there can be more entries within the 'Contacts' node. See the note for HKCU\Software\Clients\Mail\Appname.&lt;br /&gt;
*HKCU\Software\Clients\Contacts - default contacts application, 'Address Book' by default; could be set to KAddressBook.&lt;br /&gt;
&lt;br /&gt;
*HKCU\Software\Clients\News\Appname - registered newsgroup client, there can be more entries within the 'News' node. See the note for HKCU\Software\Clients\Mail\Appname.&lt;br /&gt;
*HKCU\Software\Clients\News - default newsgroup application, 'Windows Mail' by default; could be set to KNode.&lt;br /&gt;
&lt;br /&gt;
From the KB: &amp;lt;tt&amp;gt;After updating the registry keys, the application broadcasts the WM_SETTINGCHANGE message with wParam = 0 and lParam pointing to the null-terminated string &amp;quot;Software\Clients\StartMenuInternet&amp;quot; to notify the operating system that the default client has changed.&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Using MAPI=====&lt;br /&gt;
HKLM\Software\Clients\AppName\DllPath points to a dll implementing [http://en.wikipedia.org/wiki/MAPI MAPI] interface. Internet Explorer uses Windows Messaging by default to invoke a mailer on a mailto: link. Only if the MAPI install is misconfigured will it resort to directly accessing the mailto association key.[http://members.toast.net/4pf/Protocol.html] &lt;br /&gt;
Example implementation of MAPI services is Thundebird's mozMapi32.dll (the key is usualle equal to C:\Program Files\Mozilla Thunderbird\mozMapi32.dll).&lt;br /&gt;
&lt;br /&gt;
=====KDE-related notes=====&lt;br /&gt;
*KDElibs execute default web browser or email client for protocols like http(s): and &amp;lt;nowiki&amp;gt;mailto:&amp;lt;/nowiki&amp;gt; via {{Qt|QDesktopServices}}::openUrl(), which in turn uses ShellExecute(). openUrl() is widely used in Qt e.g. for hyperlinks in text boxes and label widgets.&lt;br /&gt;
*A general rule of KDE/win: not to duplicate registry settings in any rc file and use default applications if possible, to avoid changing behaviour expected by users.&lt;br /&gt;
*[[User:Jstaniek|jstaniek]] 12:06, 18 June 2008 (CEST): Before LinuxTag I've performed some tests of setting default clients, and looks like it's is not possible to set onlt writing registry entries. Some API calls may be needed, especially because locked at least one registry key is locked for writing during the session.&lt;br /&gt;
&lt;br /&gt;
== Links ==&lt;br /&gt;
* [[Projects/KDE_on_Windows|The KDE on Windows]] Project&lt;br /&gt;
* [[Projects/KDE on Windows/Missing features of kdelibs|Missing features of kdelibs on Windows]] - KDE PIM may depend on them&lt;br /&gt;
&lt;br /&gt;
[[Category:PIM]]&lt;br /&gt;
[[Category:MS Windows]]&lt;/div&gt;</summary>
		<author><name>Bernhard</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Projects/KDE_PIM/Development/Mobile/ResourcesCESearch</id>
		<title>Projects/KDE PIM/Development/Mobile/ResourcesCESearch</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Projects/KDE_PIM/Development/Mobile/ResourcesCESearch"/>
				<updated>2011-02-09T15:36:05Z</updated>
		
		<summary type="html">&lt;p&gt;Bernhard: smaller updates&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;On Windows Mobile 6.5 (CE) Kontact Touch has a resource problem,&lt;br /&gt;
the searching and indexing is done via strigifeeder and strigidaemon.&lt;br /&gt;
&lt;br /&gt;
Next steps:&lt;br /&gt;
* find all places where search is needed&lt;br /&gt;
:# real search dialog (_not_ quicksearch)&lt;br /&gt;
:# to-field autocompletion&lt;br /&gt;
:# MemoryCalendarMemento (could be replaced with IncidenceFetchJob though)&lt;br /&gt;
* how much memory does strigidaemon actually use? (Can be found with taskmanager, 1936kb here on an empty device, says Andre)&lt;br /&gt;
* how much memory does strigiindexer use (sees more on the desktop)&lt;br /&gt;
* check if clucene used by strigidaemon cannot be tuned to use less memory&lt;br /&gt;
* implement a display of the last index run, e.g on the search page&lt;br /&gt;
* implement a button to trigger a manual index, e.g. on the search page (both can be reused once we come up with an idea when the indexer should run.)&lt;br /&gt;
* Can we reliably see if the device is under low load, e.g. if only one or no frontend is running?&lt;br /&gt;
&lt;br /&gt;
Options as tokoe saw them 2011020914:32:&lt;br /&gt;
 1) A UI option to switch strigi_feeder between online/offline mode&lt;br /&gt;
&lt;br /&gt;
  pro: The strigi_feeder in offline mode wouldn't index anything until it&lt;br /&gt;
       is switched back to online mode. So it would take away pressure on the&lt;br /&gt;
       device during initial sync, since CPU and I/O usage is reduced.&lt;br /&gt;
&lt;br /&gt;
  contra: Since recent data are not indexed with strigi_feeder in offline            &lt;br /&gt;
          mode, some internal searches might not return the correct, or better &lt;br /&gt;
          said 'expected', data. Switching the strigi_feeder to online mode&lt;br /&gt;
          automatically when a search is started is not really an option,         &lt;br /&gt;
          because feeding the new data to strigidaemon takes a while, so they&lt;br /&gt;
          won't be included in the current search results.&lt;br /&gt;
&lt;br /&gt;
  costs: We have to extend strigi_feeder to correctly record actions during  &lt;br /&gt;
         offline mode and replay them when switched to online mode.&lt;br /&gt;
         Furthermore we need options in the UI to switch the mode of the &lt;br /&gt;
         strigifeeder (Ideas from Björn Balazs?).&lt;br /&gt;
&lt;br /&gt;
 2) IDLE detection in strigidaemon with automatic shutdown&lt;br /&gt;
&lt;br /&gt;
  pro: Afaik strigidaemon uses lots of memory when running, so&lt;br /&gt;
       stopping strigidaemon whenever no indexing or search is done,&lt;br /&gt;
       should provide some free memory on the device.&lt;br /&gt;
&lt;br /&gt;
  contra: Searches are done quite often (e.g. the autocompletion in mail        &lt;br /&gt;
          composer) and strigi_feeder will index data as soon as something &lt;br /&gt;
          changes (e.g. read flags in emails), so I doubt that strigidaemon&lt;br /&gt;
          will have long idle sessions. Strigidaemon might cause additional     &lt;br /&gt;
          costs during its startup/shutdown phase.&lt;br /&gt;
&lt;br /&gt;
  costs: We have to implement an idle detection in strigidaemon&lt;br /&gt;
         (non qt-based!) and a clean shutdown procedure.&lt;br /&gt;
         Furthermore we have to extend akonadiserver to handle the      &lt;br /&gt;
         disappearance of strigi dbus interface gracefully and restart the &lt;br /&gt;
         strigidaemon on demand. This needs a lot of testing!&lt;br /&gt;
&lt;br /&gt;
 It would be possible to combine 1) and 2), but this will increase the number&lt;br /&gt;
 of side effects, so much more testing is needed.&lt;/div&gt;</summary>
		<author><name>Bernhard</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Projects/KDE_PIM/Development/Mobile/ResourcesCESearch</id>
		<title>Projects/KDE PIM/Development/Mobile/ResourcesCESearch</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Projects/KDE_PIM/Development/Mobile/ResourcesCESearch"/>
				<updated>2011-02-09T15:11:05Z</updated>
		
		<summary type="html">&lt;p&gt;Bernhard: first keywords to next steps&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;On Windows Mobile 6.5 (CE) Kontact Touch has a resource problem,&lt;br /&gt;
the searching and indexing is done via strigifeeder and strigidaemon.&lt;br /&gt;
&lt;br /&gt;
Next steps:&lt;br /&gt;
* find all places where search is needed&lt;br /&gt;
:# real search dialog (_not_ quicksearch)&lt;br /&gt;
:# to-field autocompletion&lt;br /&gt;
:# ? Calendar?&lt;br /&gt;
* how much memory does strigidaemon actually use?&lt;br /&gt;
* check if clucene used by strigidaemon cannot be tuned to use less memory&lt;br /&gt;
* implement a display of the last index run, e.g on the search page&lt;br /&gt;
* implement a button to trigger a manual index, e.g. on the search page (both can be reused once we come up with an idea when the indexer should run.)&lt;br /&gt;
* Can we reliably see if the device is under low load, e.g. if only one or no frontend is running?&lt;br /&gt;
&lt;br /&gt;
Options as tokoe saw them 2011020914:32:&lt;br /&gt;
 1) A UI option to switch strigi_feeder between online/offline mode&lt;br /&gt;
&lt;br /&gt;
  pro: The strigi_feeder in offline mode wouldn't index anything until it&lt;br /&gt;
       is switched back to online mode. So it would take away pressure on the&lt;br /&gt;
       device during initial sync, since CPU and I/O usage is reduced.&lt;br /&gt;
&lt;br /&gt;
  contra: Since recent data are not indexed with strigi_feeder in offline            &lt;br /&gt;
          mode, some internal searches might not return the correct, or better &lt;br /&gt;
          said 'expected', data. Switching the strigi_feeder to online mode&lt;br /&gt;
          automatically when a search is started is not really an option,         &lt;br /&gt;
          because feeding the new data to strigidaemon takes a while, so they&lt;br /&gt;
          won't be included in the current search results.&lt;br /&gt;
&lt;br /&gt;
  costs: We have to extend strigi_feeder to correctly record actions during  &lt;br /&gt;
         offline mode and replay them when switched to online mode.&lt;br /&gt;
         Furthermore we need options in the UI to switch the mode of the &lt;br /&gt;
         strigifeeder (Ideas from Björn Balazs?).&lt;br /&gt;
&lt;br /&gt;
 2) IDLE detection in strigidaemon with automatic shutdown&lt;br /&gt;
&lt;br /&gt;
  pro: Afaik strigidaemon uses lots of memory when running, so&lt;br /&gt;
       stopping strigidaemon whenever no indexing or search is done,&lt;br /&gt;
       should provide some free memory on the device.&lt;br /&gt;
&lt;br /&gt;
  contra: Searches are done quite often (e.g. the autocompletion in mail        &lt;br /&gt;
          composer) and strigi_feeder will index data as soon as something &lt;br /&gt;
          changes (e.g. read flags in emails), so I doubt that strigidaemon&lt;br /&gt;
          will have long idle sessions. Strigidaemon might cause additional     &lt;br /&gt;
          costs during its startup/shutdown phase.&lt;br /&gt;
&lt;br /&gt;
  costs: We have to implement an idle detection in strigidaemon&lt;br /&gt;
         (non qt-based!) and a clean shutdown procedure.&lt;br /&gt;
         Furthermore we have to extend akonadiserver to handle the      &lt;br /&gt;
         disappearance of strigi dbus interface gracefully and restart the &lt;br /&gt;
         strigidaemon on demand. This needs a lot of testing!&lt;br /&gt;
&lt;br /&gt;
 It would be possible to combine 1) and 2), but this will increase the number&lt;br /&gt;
 of side effects, so much more testing is needed.&lt;/div&gt;</summary>
		<author><name>Bernhard</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Projects/KDE_PIM/Development/Mobile/ResourcesCESearch</id>
		<title>Projects/KDE PIM/Development/Mobile/ResourcesCESearch</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Projects/KDE_PIM/Development/Mobile/ResourcesCESearch"/>
				<updated>2011-02-09T15:04:14Z</updated>
		
		<summary type="html">&lt;p&gt;Bernhard: created&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;On Windows Mobile 6.5 (CE) Kontact Touch has a resource problem,&lt;br /&gt;
the searching and indexing is done via strigifeeder and strigidaemon.&lt;br /&gt;
&lt;br /&gt;
Options as tokoe saw them 2011020914:32:&lt;br /&gt;
 1) A UI option to switch strigi_feeder between online/offline mode&lt;br /&gt;
&lt;br /&gt;
  pro: The strigi_feeder in offline mode wouldn't index anything until it&lt;br /&gt;
       is switched back to online mode. So it would take away pressure on the&lt;br /&gt;
       device during initial sync, since CPU and I/O usage is reduced.&lt;br /&gt;
&lt;br /&gt;
  contra: Since recent data are not indexed with strigi_feeder in offline            &lt;br /&gt;
          mode, some internal searches might not return the correct, or better &lt;br /&gt;
          said 'expected', data. Switching the strigi_feeder to online mode&lt;br /&gt;
          automatically when a search is started is not really an option,         &lt;br /&gt;
          because feeding the new data to strigidaemon takes a while, so they&lt;br /&gt;
          won't be included in the current search results.&lt;br /&gt;
&lt;br /&gt;
  costs: We have to extend strigi_feeder to correctly record actions during  &lt;br /&gt;
         offline mode and replay them when switched to online mode.&lt;br /&gt;
         Furthermore we need options in the UI to switch the mode of the &lt;br /&gt;
         strigifeeder (Ideas from Björn Balazs?).&lt;br /&gt;
&lt;br /&gt;
 2) IDLE detection in strigidaemon with automatic shutdown&lt;br /&gt;
&lt;br /&gt;
  pro: Afaik strigidaemon uses lots of memory when running, so&lt;br /&gt;
       stopping strigidaemon whenever no indexing or search is done,&lt;br /&gt;
       should provide some free memory on the device.&lt;br /&gt;
&lt;br /&gt;
  contra: Searches are done quite often (e.g. the autocompletion in mail        &lt;br /&gt;
          composer) and strigi_feeder will index data as soon as something &lt;br /&gt;
          changes (e.g. read flags in emails), so I doubt that strigidaemon&lt;br /&gt;
          will have long idle sessions. Strigidaemon might cause additional     &lt;br /&gt;
          costs during its startup/shutdown phase.&lt;br /&gt;
&lt;br /&gt;
  costs: We have to implement an idle detection in strigidaemon&lt;br /&gt;
         (non qt-based!) and a clean shutdown procedure.&lt;br /&gt;
         Furthermore we have to extend akonadiserver to handle the      &lt;br /&gt;
         disappearance of strigi dbus interface gracefully and restart the &lt;br /&gt;
         strigidaemon on demand. This needs a lot of testing!&lt;br /&gt;
&lt;br /&gt;
 It would be possible to combine 1) and 2), but this will increase the number&lt;br /&gt;
 of side effects, so much more testing is needed.&lt;/div&gt;</summary>
		<author><name>Bernhard</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Projects/KDE_PIM/Development/Mobile</id>
		<title>Projects/KDE PIM/Development/Mobile</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Projects/KDE_PIM/Development/Mobile"/>
				<updated>2011-02-09T15:00:57Z</updated>
		
		<summary type="html">&lt;p&gt;Bernhard: added dev item section with first entry&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== About Kontact Touch ==&lt;br /&gt;
&lt;br /&gt;
Kontact Touch brings the power of the KDE desktop appliction 'Kontact' to the  world of touch screen devices.&lt;br /&gt;
&lt;br /&gt;
[http://userbase.kde.org/Kontact_Touch More information about this product on userbase.kde.org]&lt;br /&gt;
&lt;br /&gt;
== Defining the functional scope ==&lt;br /&gt;
The following pages contain the functional scope of the different Kontact Touch frontends:&lt;br /&gt;
&lt;br /&gt;
* [[Projects/KDE_PIM/Development/Mobile/KMail_FunctionalScope|Mail]]&lt;br /&gt;
* [[Projects/KDE_PIM/Development/Mobile/Kalendar_FunctionalScope|Calendar]]&lt;br /&gt;
* [[Projects/KDE_PIM/Development/Mobile/KTasks_FunctionalScope|Tasks]]&lt;br /&gt;
* [[Projects/KDE_PIM/Development/Mobile/KAddressbook_FunctionalScope|Contacts]]&lt;br /&gt;
* [[Projects/KDE_PIM/Development/Mobile/KJots_FunctionalScope|Notes]]&lt;br /&gt;
&lt;br /&gt;
== Development topics ==&lt;br /&gt;
* [[Projects/KDE_PIM/Development/Mobile/ResourcesCESearch|Resources use of searching for CE]]&lt;/div&gt;</summary>
		<author><name>Bernhard</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Projects/KDE_PIM/Development/Mobile</id>
		<title>Projects/KDE PIM/Development/Mobile</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Projects/KDE_PIM/Development/Mobile"/>
				<updated>2011-02-09T14:59:14Z</updated>
		
		<summary type="html">&lt;p&gt;Bernhard: Using the frontend names&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== About Kontact Touch ==&lt;br /&gt;
&lt;br /&gt;
Kontact Touch brings the power of the KDE desktop appliction 'Kontact' to the  world of touch screen devices.&lt;br /&gt;
&lt;br /&gt;
[http://userbase.kde.org/Kontact_Touch More information about this product on userbase.kde.org]&lt;br /&gt;
&lt;br /&gt;
== Defining the functional scope ==&lt;br /&gt;
The following pages contain the functional scope of the different Kontact Touch frontends:&lt;br /&gt;
&lt;br /&gt;
* [[Projects/KDE_PIM/Development/Mobile/KMail_FunctionalScope|Mail]]&lt;br /&gt;
* [[Projects/KDE_PIM/Development/Mobile/Kalendar_FunctionalScope|Calendar]]&lt;br /&gt;
* [[Projects/KDE_PIM/Development/Mobile/KTasks_FunctionalScope|Tasks]]&lt;br /&gt;
* [[Projects/KDE_PIM/Development/Mobile/KAddressbook_FunctionalScope|Contacts]]&lt;br /&gt;
* [[Projects/KDE_PIM/Development/Mobile/KJots_FunctionalScope|Notes]]&lt;/div&gt;</summary>
		<author><name>Bernhard</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Projects/KDE_PIM/Development/Mobile</id>
		<title>Projects/KDE PIM/Development/Mobile</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Projects/KDE_PIM/Development/Mobile"/>
				<updated>2011-02-09T14:57:31Z</updated>
		
		<summary type="html">&lt;p&gt;Bernhard: /* About Kontact-Mobile */ It is &amp;quot;Kontact Touch&amp;quot; now.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== About Kontact Touch ==&lt;br /&gt;
&lt;br /&gt;
Kontact Touch brings the power of the KDE desktop appliction 'Kontact' to the  world of touch screen devices.&lt;br /&gt;
&lt;br /&gt;
[http://userbase.kde.org/Kontact_Touch More information about this product on userbase.kde.org]&lt;br /&gt;
&lt;br /&gt;
== Defining the functional scope ==&lt;br /&gt;
The following pages contain the functional scope of the different Kontact Mobile frontends:&lt;br /&gt;
&lt;br /&gt;
* [[Projects/KDE_PIM/Development/Mobile/KMail_FunctionalScope|KMail]]&lt;br /&gt;
* [[Projects/KDE_PIM/Development/Mobile/Kalendar_FunctionalScope|Kalendar]]&lt;br /&gt;
* [[Projects/KDE_PIM/Development/Mobile/KTasks_FunctionalScope|KTasks]]&lt;br /&gt;
* [[Projects/KDE_PIM/Development/Mobile/KAddressbook_FunctionalScope|KAddressbook]]&lt;br /&gt;
* [[Projects/KDE_PIM/Development/Mobile/KJots_FunctionalScope|KJots]]&lt;/div&gt;</summary>
		<author><name>Bernhard</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Projects/KDE_PIM/Development/Mobile/Calendar_FunctionalScope</id>
		<title>Projects/KDE PIM/Development/Mobile/Calendar FunctionalScope</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Projects/KDE_PIM/Development/Mobile/Calendar_FunctionalScope"/>
				<updated>2010-09-27T13:12:43Z</updated>
		
		<summary type="html">&lt;p&gt;Bernhard: moved Projects/KDE PIM/Development/Mobile/Kalendar FunctionalScope to Projects/KDE PIM/Development/Mobile/Calendar FunctionalScope:&amp;amp;#32;Type fixed&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Functional Scope of Kontact Mobile - Calendar  ==&lt;br /&gt;
&lt;br /&gt;
Following you will find a set contaxtual actions available in the different views &lt;br /&gt;
Kontact Mobile - Calendar offers. This way the functional scope is defined.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Always available ===&lt;br /&gt;
Elements of this section are always visible. This section is always the last section displayed in the contextual menu.&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Category&lt;br /&gt;
! Action&lt;br /&gt;
! Status&lt;br /&gt;
! Comment&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;7&amp;quot; valign=&amp;quot;top&amp;quot;| Kontact Mobile - Calendar&lt;br /&gt;
| Quit Kalender&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Open Task Switcher&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Add new event&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Find event&lt;br /&gt;
| Defered&lt;br /&gt;
| Opens Search Dialogue - behaves excactly the same as Multiple selection - so results can altered by going back to selection, Search+View can be saved as favorite (Search targets: summary, categories, date range, maybe location)&lt;br /&gt;
|-&lt;br /&gt;
| Work offline&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Configure Kalender&lt;br /&gt;
| Defered&lt;br /&gt;
| timezones, holiday regions, tasks, working period, current timezone&lt;br /&gt;
|-&lt;br /&gt;
| About Kalender&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Home ===&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Category&lt;br /&gt;
! Action&lt;br /&gt;
! Status&lt;br /&gt;
! Comment&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; valign=&amp;quot;top&amp;quot;|Home&lt;br /&gt;
| Sync all events&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Select multiple folders&lt;br /&gt;
| OK&lt;br /&gt;
| Initiate multiple selection&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;3&amp;quot; valign=&amp;quot;top&amp;quot;| Favorites (OrderFlap)&lt;br /&gt;
| Reorder&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Make / Remove default&lt;br /&gt;
| Under Discussion&lt;br /&gt;
| Default Favorite should be loaded when application starts / Only one default is possible / it must be possible to remove a default and have none - then app is starting with homepage -&amp;gt; Actually right now the application loads the last opend folder on startup, which doesn't seem unreasonable either&lt;br /&gt;
|-&lt;br /&gt;
| Delete&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; valign=&amp;quot;top&amp;quot;| Accounts (OrderFlap)&lt;br /&gt;
| Reorder&lt;br /&gt;
| Under Discussion&lt;br /&gt;
| Reordering is not available on the desktop either&lt;br /&gt;
|-&lt;br /&gt;
| Edit&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Delete&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Add&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Account ===&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Category&lt;br /&gt;
! Action&lt;br /&gt;
! Status&lt;br /&gt;
! Comment&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;3&amp;quot; valign=&amp;quot;top&amp;quot;| Account&lt;br /&gt;
| Sync events in account&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Edit account&lt;br /&gt;
| OK&lt;br /&gt;
| Edit dialogue for account configuration, should contain possibility for Renaming&lt;br /&gt;
|-&lt;br /&gt;
| Add subfolder&lt;br /&gt;
| OK&lt;br /&gt;
| Detailed Dialogue for new folder. Parent is prefilled&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Single folder view ===&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Category&lt;br /&gt;
! Action&lt;br /&gt;
! Status&lt;br /&gt;
! Comment&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; valign=&amp;quot;top&amp;quot;| Folder&lt;br /&gt;
| Sync events in folder&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;5&amp;quot; valign=&amp;quot;top&amp;quot;| Edit&lt;br /&gt;
| Edit folder&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Add Subfolder&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Move folder to&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Copy folder to&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Delete folder&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;3&amp;quot; valign=&amp;quot;top&amp;quot;| View&lt;br /&gt;
| Start maintainence mode&lt;br /&gt;
| OK&lt;br /&gt;
| Starts Bulk-Action dialogue (Move, Copy, Delete, Toggle Reminders / Alarms)&lt;br /&gt;
|-&lt;br /&gt;
| Filter view&lt;br /&gt;
| Under discussion&lt;br /&gt;
| Possibility to filter the mails in the folder (e.g. by name, subject etc.)&lt;br /&gt;
|-&lt;br /&gt;
| View options&lt;br /&gt;
| Under discussion&lt;br /&gt;
| View option address sorting of items etc.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Multiple folder view ===&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Category&lt;br /&gt;
! Action&lt;br /&gt;
! Status&lt;br /&gt;
! Comment&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; valign=&amp;quot;top&amp;quot;| Folders&lt;br /&gt;
| Sync events in selected folders&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; valign=&amp;quot;top&amp;quot;| View&lt;br /&gt;
| Change folder selection&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Start maintainence mode&lt;br /&gt;
| OK&lt;br /&gt;
| Starts Bulk-Action dialogue (Move, Copy, Delete, Toggle Reminders / Alarms)&lt;br /&gt;
|-&lt;br /&gt;
| Filter view&lt;br /&gt;
| Under discussion&lt;br /&gt;
| Possibility to filter the mails in the folder (e.g. by name, subject etc.)&lt;br /&gt;
|-&lt;br /&gt;
| View options&lt;br /&gt;
| Under discussion&lt;br /&gt;
| View option address sorting of items etc.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Single calender view ===&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Category&lt;br /&gt;
! Action&lt;br /&gt;
! Status&lt;br /&gt;
! Comment&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;6&amp;quot; valign=&amp;quot;top&amp;quot;| Calender&lt;br /&gt;
| Sync events in calender&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Show today&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Day layout&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Week layout&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Month layout&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Other&lt;br /&gt;
| Under Discussion&lt;br /&gt;
| We need to define which other views we want to integrate here (e.g. Journal,...)&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; valign=&amp;quot;top&amp;quot;| View&lt;br /&gt;
| Add as favorite / Rename favorite&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Back to folder selection&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Filter view&lt;br /&gt;
| Under discussion&lt;br /&gt;
| Anything needed here?&lt;br /&gt;
|-&lt;br /&gt;
| View options&lt;br /&gt;
| Under discussion&lt;br /&gt;
| Anything needed here?&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Multiple calender view ===&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Category&lt;br /&gt;
! Action&lt;br /&gt;
! Status&lt;br /&gt;
! Comment&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;6&amp;quot; valign=&amp;quot;top&amp;quot;| Calenders&lt;br /&gt;
| Sync events in selected calenders&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Show today&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Day layout&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Week layout&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Month layout&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Other&lt;br /&gt;
| Under Discussion&lt;br /&gt;
| We need to define which other views we want to integrate here (e.g. Journal,...)&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; valign=&amp;quot;top&amp;quot;| View&lt;br /&gt;
| Add as favorite / Rename favorite&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Back to folder selection&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Filter view&lt;br /&gt;
| Under discussion&lt;br /&gt;
| Anything needed here?&lt;br /&gt;
|-&lt;br /&gt;
| View options&lt;br /&gt;
| Under discussion&lt;br /&gt;
| Anything needed here?&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Event viewer ===&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Category&lt;br /&gt;
! Action&lt;br /&gt;
! Status&lt;br /&gt;
! Comment&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;10&amp;quot; valign=&amp;quot;top&amp;quot;| Event&lt;br /&gt;
| Detach event&lt;br /&gt;
| &lt;br /&gt;
| Detaches a nested event - only show if possible&lt;br /&gt;
|-&lt;br /&gt;
| Publish Item Information&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Send invitations to attendees&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Send status update&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Send cancellation to attendees&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Request update&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Request change&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Send as iCalender&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Mail free busy information&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Upload free busy information&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Attachments&lt;br /&gt;
| Save (all)&lt;br /&gt;
| Under Discussion&lt;br /&gt;
| Show only if attachments exists / View tbd&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; valign=&amp;quot;top&amp;quot;| Edit&lt;br /&gt;
| Edit event&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Copy event to calender&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Move event to calender&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Delete event&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Open ===&lt;br /&gt;
Here you can find functionallity that still needs to be discussed, wether it makes sense to add it to the mobile version of KDE PIM.&lt;br /&gt;
&lt;br /&gt;
==== We do not need this ====&lt;br /&gt;
* Print&lt;br /&gt;
* Publish (Webpage, vCalender, hot new stuff)&lt;br /&gt;
 &lt;br /&gt;
==== We need to discuss this ====&lt;br /&gt;
&lt;br /&gt;
==== We need to integrate this ====&lt;br /&gt;
* Export/Import, we should support one standard format, iCalender.&lt;br /&gt;
* &amp;quot;Disassociate from recurrence&amp;quot; should be solved as part of handling recurrent appointments (including acceptence of invitations and exceptions for single dates).&lt;/div&gt;</summary>
		<author><name>Bernhard</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Projects/KDE_PIM/Development/Mobile/Kalendar_FunctionalScope</id>
		<title>Projects/KDE PIM/Development/Mobile/Kalendar FunctionalScope</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Projects/KDE_PIM/Development/Mobile/Kalendar_FunctionalScope"/>
				<updated>2010-09-27T13:12:43Z</updated>
		
		<summary type="html">&lt;p&gt;Bernhard: moved Projects/KDE PIM/Development/Mobile/Kalendar FunctionalScope to Projects/KDE PIM/Development/Mobile/Calendar FunctionalScope:&amp;amp;#32;Type fixed&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;#REDIRECT [[Projects/KDE PIM/Development/Mobile/Calendar FunctionalScope]]&lt;/div&gt;</summary>
		<author><name>Bernhard</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Projects/KDE_PIM/Development/Mobile/Calendar_FunctionalScope</id>
		<title>Projects/KDE PIM/Development/Mobile/Calendar FunctionalScope</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Projects/KDE_PIM/Development/Mobile/Calendar_FunctionalScope"/>
				<updated>2010-09-27T13:12:19Z</updated>
		
		<summary type="html">&lt;p&gt;Bernhard: /* Functional Scope of Kontact Mobile - Kalender */ Kalender -&amp;gt; Calendar&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Functional Scope of Kontact Mobile - Calendar  ==&lt;br /&gt;
&lt;br /&gt;
Following you will find a set contaxtual actions available in the different views &lt;br /&gt;
Kontact Mobile - Calendar offers. This way the functional scope is defined.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Always available ===&lt;br /&gt;
Elements of this section are always visible. This section is always the last section displayed in the contextual menu.&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Category&lt;br /&gt;
! Action&lt;br /&gt;
! Status&lt;br /&gt;
! Comment&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;7&amp;quot; valign=&amp;quot;top&amp;quot;| Kontact Mobile - Calendar&lt;br /&gt;
| Quit Kalender&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Open Task Switcher&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Add new event&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Find event&lt;br /&gt;
| Defered&lt;br /&gt;
| Opens Search Dialogue - behaves excactly the same as Multiple selection - so results can altered by going back to selection, Search+View can be saved as favorite (Search targets: summary, categories, date range, maybe location)&lt;br /&gt;
|-&lt;br /&gt;
| Work offline&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Configure Kalender&lt;br /&gt;
| Defered&lt;br /&gt;
| timezones, holiday regions, tasks, working period, current timezone&lt;br /&gt;
|-&lt;br /&gt;
| About Kalender&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Home ===&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Category&lt;br /&gt;
! Action&lt;br /&gt;
! Status&lt;br /&gt;
! Comment&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; valign=&amp;quot;top&amp;quot;|Home&lt;br /&gt;
| Sync all events&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Select multiple folders&lt;br /&gt;
| OK&lt;br /&gt;
| Initiate multiple selection&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;3&amp;quot; valign=&amp;quot;top&amp;quot;| Favorites (OrderFlap)&lt;br /&gt;
| Reorder&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Make / Remove default&lt;br /&gt;
| Under Discussion&lt;br /&gt;
| Default Favorite should be loaded when application starts / Only one default is possible / it must be possible to remove a default and have none - then app is starting with homepage -&amp;gt; Actually right now the application loads the last opend folder on startup, which doesn't seem unreasonable either&lt;br /&gt;
|-&lt;br /&gt;
| Delete&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; valign=&amp;quot;top&amp;quot;| Accounts (OrderFlap)&lt;br /&gt;
| Reorder&lt;br /&gt;
| Under Discussion&lt;br /&gt;
| Reordering is not available on the desktop either&lt;br /&gt;
|-&lt;br /&gt;
| Edit&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Delete&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Add&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Account ===&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Category&lt;br /&gt;
! Action&lt;br /&gt;
! Status&lt;br /&gt;
! Comment&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;3&amp;quot; valign=&amp;quot;top&amp;quot;| Account&lt;br /&gt;
| Sync events in account&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Edit account&lt;br /&gt;
| OK&lt;br /&gt;
| Edit dialogue for account configuration, should contain possibility for Renaming&lt;br /&gt;
|-&lt;br /&gt;
| Add subfolder&lt;br /&gt;
| OK&lt;br /&gt;
| Detailed Dialogue for new folder. Parent is prefilled&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Single folder view ===&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Category&lt;br /&gt;
! Action&lt;br /&gt;
! Status&lt;br /&gt;
! Comment&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; valign=&amp;quot;top&amp;quot;| Folder&lt;br /&gt;
| Sync events in folder&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;5&amp;quot; valign=&amp;quot;top&amp;quot;| Edit&lt;br /&gt;
| Edit folder&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Add Subfolder&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Move folder to&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Copy folder to&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Delete folder&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;3&amp;quot; valign=&amp;quot;top&amp;quot;| View&lt;br /&gt;
| Start maintainence mode&lt;br /&gt;
| OK&lt;br /&gt;
| Starts Bulk-Action dialogue (Move, Copy, Delete, Toggle Reminders / Alarms)&lt;br /&gt;
|-&lt;br /&gt;
| Filter view&lt;br /&gt;
| Under discussion&lt;br /&gt;
| Possibility to filter the mails in the folder (e.g. by name, subject etc.)&lt;br /&gt;
|-&lt;br /&gt;
| View options&lt;br /&gt;
| Under discussion&lt;br /&gt;
| View option address sorting of items etc.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Multiple folder view ===&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Category&lt;br /&gt;
! Action&lt;br /&gt;
! Status&lt;br /&gt;
! Comment&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; valign=&amp;quot;top&amp;quot;| Folders&lt;br /&gt;
| Sync events in selected folders&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; valign=&amp;quot;top&amp;quot;| View&lt;br /&gt;
| Change folder selection&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Start maintainence mode&lt;br /&gt;
| OK&lt;br /&gt;
| Starts Bulk-Action dialogue (Move, Copy, Delete, Toggle Reminders / Alarms)&lt;br /&gt;
|-&lt;br /&gt;
| Filter view&lt;br /&gt;
| Under discussion&lt;br /&gt;
| Possibility to filter the mails in the folder (e.g. by name, subject etc.)&lt;br /&gt;
|-&lt;br /&gt;
| View options&lt;br /&gt;
| Under discussion&lt;br /&gt;
| View option address sorting of items etc.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Single calender view ===&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Category&lt;br /&gt;
! Action&lt;br /&gt;
! Status&lt;br /&gt;
! Comment&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;6&amp;quot; valign=&amp;quot;top&amp;quot;| Calender&lt;br /&gt;
| Sync events in calender&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Show today&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Day layout&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Week layout&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Month layout&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Other&lt;br /&gt;
| Under Discussion&lt;br /&gt;
| We need to define which other views we want to integrate here (e.g. Journal,...)&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; valign=&amp;quot;top&amp;quot;| View&lt;br /&gt;
| Add as favorite / Rename favorite&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Back to folder selection&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Filter view&lt;br /&gt;
| Under discussion&lt;br /&gt;
| Anything needed here?&lt;br /&gt;
|-&lt;br /&gt;
| View options&lt;br /&gt;
| Under discussion&lt;br /&gt;
| Anything needed here?&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Multiple calender view ===&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Category&lt;br /&gt;
! Action&lt;br /&gt;
! Status&lt;br /&gt;
! Comment&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;6&amp;quot; valign=&amp;quot;top&amp;quot;| Calenders&lt;br /&gt;
| Sync events in selected calenders&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Show today&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Day layout&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Week layout&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Month layout&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Other&lt;br /&gt;
| Under Discussion&lt;br /&gt;
| We need to define which other views we want to integrate here (e.g. Journal,...)&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; valign=&amp;quot;top&amp;quot;| View&lt;br /&gt;
| Add as favorite / Rename favorite&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Back to folder selection&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Filter view&lt;br /&gt;
| Under discussion&lt;br /&gt;
| Anything needed here?&lt;br /&gt;
|-&lt;br /&gt;
| View options&lt;br /&gt;
| Under discussion&lt;br /&gt;
| Anything needed here?&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Event viewer ===&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Category&lt;br /&gt;
! Action&lt;br /&gt;
! Status&lt;br /&gt;
! Comment&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;10&amp;quot; valign=&amp;quot;top&amp;quot;| Event&lt;br /&gt;
| Detach event&lt;br /&gt;
| &lt;br /&gt;
| Detaches a nested event - only show if possible&lt;br /&gt;
|-&lt;br /&gt;
| Publish Item Information&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Send invitations to attendees&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Send status update&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Send cancellation to attendees&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Request update&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Request change&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Send as iCalender&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Mail free busy information&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Upload free busy information&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Attachments&lt;br /&gt;
| Save (all)&lt;br /&gt;
| Under Discussion&lt;br /&gt;
| Show only if attachments exists / View tbd&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; valign=&amp;quot;top&amp;quot;| Edit&lt;br /&gt;
| Edit event&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Copy event to calender&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Move event to calender&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Delete event&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Open ===&lt;br /&gt;
Here you can find functionallity that still needs to be discussed, wether it makes sense to add it to the mobile version of KDE PIM.&lt;br /&gt;
&lt;br /&gt;
==== We do not need this ====&lt;br /&gt;
* Print&lt;br /&gt;
* Publish (Webpage, vCalender, hot new stuff)&lt;br /&gt;
 &lt;br /&gt;
==== We need to discuss this ====&lt;br /&gt;
&lt;br /&gt;
==== We need to integrate this ====&lt;br /&gt;
* Export/Import, we should support one standard format, iCalender.&lt;br /&gt;
* &amp;quot;Disassociate from recurrence&amp;quot; should be solved as part of handling recurrent appointments (including acceptence of invitations and exceptions for single dates).&lt;/div&gt;</summary>
		<author><name>Bernhard</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Projects/KDE_PIM/Development/Mobile</id>
		<title>Projects/KDE PIM/Development/Mobile</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Projects/KDE_PIM/Development/Mobile"/>
				<updated>2010-08-27T14:07:38Z</updated>
		
		<summary type="html">&lt;p&gt;Bernhard: /* Defining the functional scope */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== About Kontact-Mobile ==&lt;br /&gt;
&lt;br /&gt;
Kontact-Mobile brings the power of the KDE desktop appliction 'Kontact' to the mobile world. First phones to be supported are:&lt;br /&gt;
&lt;br /&gt;
* Nokia N900&lt;br /&gt;
* HTC Touch Pro 2&lt;br /&gt;
&lt;br /&gt;
[http://userbase.kde.org/Kontact_Mobile More information about this project on userbase.kde.org]&lt;br /&gt;
&lt;br /&gt;
== Defining the functional scope ==&lt;br /&gt;
The following pages contain the functional scope of the different Kontact Mobile frontends:&lt;br /&gt;
&lt;br /&gt;
* [[Projects/KDE_PIM/Development/Mobile/KMail_FunctionalScope|KMail]]&lt;br /&gt;
* [[Projects/KDE_PIM/Development/Mobile/Kalendar_FunctionalScope|Kalendar]]&lt;br /&gt;
* [[Projects/KDE_PIM/Development/Mobile/KTasks_FunctionalScope|KTasks]]&lt;br /&gt;
* [[Projects/KDE_PIM/Development/Mobile/KAddressbook_FunctionalScope|KAddressbook]]&lt;br /&gt;
* [[Projects/KDE_PIM/Development/Mobile/KJots_FunctionalScope|KJots]]&lt;/div&gt;</summary>
		<author><name>Bernhard</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Projects/KDE_PIM/Development/Mobile</id>
		<title>Projects/KDE PIM/Development/Mobile</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Projects/KDE_PIM/Development/Mobile"/>
				<updated>2010-08-27T14:07:19Z</updated>
		
		<summary type="html">&lt;p&gt;Bernhard: /* About KDE PIM Mobile */ More consistent with branding.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== About Kontact-Mobile ==&lt;br /&gt;
&lt;br /&gt;
Kontact-Mobile brings the power of the KDE desktop appliction 'Kontact' to the mobile world. First phones to be supported are:&lt;br /&gt;
&lt;br /&gt;
* Nokia N900&lt;br /&gt;
* HTC Touch Pro 2&lt;br /&gt;
&lt;br /&gt;
[http://userbase.kde.org/Kontact_Mobile More information about this project on userbase.kde.org]&lt;br /&gt;
&lt;br /&gt;
== Defining the functional scope ==&lt;br /&gt;
The following pages contain the functional scope of the different Kontact Mobile applications:&lt;br /&gt;
&lt;br /&gt;
* [[Projects/KDE_PIM/Development/Mobile/KMail_FunctionalScope|KMail]]&lt;br /&gt;
* [[Projects/KDE_PIM/Development/Mobile/Kalendar_FunctionalScope|Kalendar]]&lt;br /&gt;
* [[Projects/KDE_PIM/Development/Mobile/KTasks_FunctionalScope|KTasks]]&lt;br /&gt;
* [[Projects/KDE_PIM/Development/Mobile/KAddressbook_FunctionalScope|KAddressbook]]&lt;br /&gt;
* [[Projects/KDE_PIM/Development/Mobile/KJots_FunctionalScope|KJots]]&lt;/div&gt;</summary>
		<author><name>Bernhard</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Projects/KDE_PIM/Development/Mobile/KTasks_FunctionalScope</id>
		<title>Projects/KDE PIM/Development/Mobile/KTasks FunctionalScope</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Projects/KDE_PIM/Development/Mobile/KTasks_FunctionalScope"/>
				<updated>2010-08-26T12:56:24Z</updated>
		
		<summary type="html">&lt;p&gt;Bernhard: /* Open */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Functional Scope of Kontact Mobile - KTasks  ==&lt;br /&gt;
&lt;br /&gt;
Following you will find a set contaxtual actions available in the different views Kontact Mobile - KTasks offers. This way the functional scope is defined.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Always available ===&lt;br /&gt;
Elements of this section are always visible. This section is always the last section displayed in the contextual menu.&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Category&lt;br /&gt;
! Action&lt;br /&gt;
! Status&lt;br /&gt;
! Comment&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;7&amp;quot; valign=&amp;quot;top&amp;quot;| Kontact Mobile - KTasks&lt;br /&gt;
| Quit KTasks&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Open Task Switcher&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Add new ToDo&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Find ToDo&lt;br /&gt;
| &lt;br /&gt;
| Opens Search Dialogue - behaves excactly the same as Multiple selection - so results can altered by going back to selection, Search+View can be saved as favorite (Search targets: summary, categories, date range, maybe location)&lt;br /&gt;
|-&lt;br /&gt;
| Work offline&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Configure KTasks&lt;br /&gt;
| Under discussion&lt;br /&gt;
| Do we need a configuration dialogue for KTasks?&lt;br /&gt;
|-&lt;br /&gt;
| About KTasks&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Home ===&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Category&lt;br /&gt;
! Action&lt;br /&gt;
! Status&lt;br /&gt;
! Comment&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;3&amp;quot; valign=&amp;quot;top&amp;quot;|Home&lt;br /&gt;
| Sync all ToDos&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Select multiple folders&lt;br /&gt;
| OK&lt;br /&gt;
| Initiate multiple selection&lt;br /&gt;
|-&lt;br /&gt;
| Purge completed ToDos&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;3&amp;quot; valign=&amp;quot;top&amp;quot;| Favorites (OrderFlap)&lt;br /&gt;
| Reorder&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Make / Remove default&lt;br /&gt;
| Under Discussion&lt;br /&gt;
| Default Favorite should be loaded when application starts / Only one default is possible / it must be possible to remove a default and have none - then app is starting with homepage -&amp;gt; Actually right now the application loads the last opend folder on startup, which doesn't seem unreasonable either&lt;br /&gt;
|-&lt;br /&gt;
| Delete&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; valign=&amp;quot;top&amp;quot;| Accounts (OrderFlap)&lt;br /&gt;
| Reorder&lt;br /&gt;
| Under Discussion&lt;br /&gt;
| Reordering is not available on the desktop either&lt;br /&gt;
|-&lt;br /&gt;
| Edit&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Delete&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Add&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Account ===&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Category&lt;br /&gt;
! Action&lt;br /&gt;
! Status&lt;br /&gt;
! Comment&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;3&amp;quot; valign=&amp;quot;top&amp;quot;| Account&lt;br /&gt;
| Sync ToDos in account&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Edit account&lt;br /&gt;
| OK&lt;br /&gt;
| Edit dialogue for account configuration, should contain possibility for Renaming&lt;br /&gt;
|-&lt;br /&gt;
| Add subfolder&lt;br /&gt;
| OK&lt;br /&gt;
| Detailed Dialogue for new folder. Parent is prefilled&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Single folder view ===&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Category&lt;br /&gt;
! Action&lt;br /&gt;
! Status&lt;br /&gt;
! Comment&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; valign=&amp;quot;top&amp;quot;| Folder&lt;br /&gt;
| Sync ToDos in folder&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Purge completed&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;5&amp;quot; valign=&amp;quot;top&amp;quot;| Edit&lt;br /&gt;
| Edit folder&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Add subfolder&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Move folder to&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Copy folder to&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Delete folder&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; valign=&amp;quot;top&amp;quot;| View&lt;br /&gt;
| Add as favorite / Rename favorite&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Start maintainence mode&lt;br /&gt;
| &lt;br /&gt;
| Starts Bulk-Action dialogue (Move, Copy, Delete, Toggle Reminders / Alarms)&lt;br /&gt;
|-&lt;br /&gt;
| Filter view&lt;br /&gt;
| Under discussion&lt;br /&gt;
| Possibility to filter the mails in the folder (e.g. by name, subject etc.)&lt;br /&gt;
|-&lt;br /&gt;
| View options&lt;br /&gt;
| Under discussion&lt;br /&gt;
| View option address sorting of items etc.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Multiple folder view ===&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Category&lt;br /&gt;
! Action&lt;br /&gt;
! Status&lt;br /&gt;
! Comment&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; valign=&amp;quot;top&amp;quot;| Folder&lt;br /&gt;
| Sync ToDos in selected folder&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Purge comleted ToDos&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;5&amp;quot; valign=&amp;quot;top&amp;quot;| View&lt;br /&gt;
| Add as favorite / Rename favorite&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Change folder selection&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Start maintainence mode&lt;br /&gt;
| &lt;br /&gt;
| Starts Bulk-Action dialogue (Move, Copy, Delete, Toggle Reminders / Alarms)&lt;br /&gt;
|-&lt;br /&gt;
| Filter view&lt;br /&gt;
| Under discussion&lt;br /&gt;
| Possibility to filter the mails in the folder (e.g. by name, subject etc.)&lt;br /&gt;
|-&lt;br /&gt;
| View options&lt;br /&gt;
| Under discussion&lt;br /&gt;
| View option address sorting of items etc.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== ToDo viewer ===&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Category&lt;br /&gt;
! Action&lt;br /&gt;
! Status&lt;br /&gt;
! Comment&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;3&amp;quot; valign=&amp;quot;top&amp;quot;| ToDo&lt;br /&gt;
| New Sub-ToDo&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Make this Sub ToDo independent&lt;br /&gt;
| &lt;br /&gt;
| Only show if aplicable&lt;br /&gt;
|-&lt;br /&gt;
| Make all Sub ToDo independent&lt;br /&gt;
| &lt;br /&gt;
| Only show if aplicable&lt;br /&gt;
|-&lt;br /&gt;
| Attachments&lt;br /&gt;
| Save (all)&lt;br /&gt;
| Under Discussion&lt;br /&gt;
| Show only if attachments exists / View tbd&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; valign=&amp;quot;top&amp;quot;| Edit&lt;br /&gt;
| Edit ToDo&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Copy ToDo to folder&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Move ToDo to folder&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Delete ToDo&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Open ===&lt;br /&gt;
Here you can find functionallity that still needs to be discussed, wether it makes sense to add it to the mobile version of KDE PIM.&lt;br /&gt;
&lt;br /&gt;
==== We do not need this ====&lt;br /&gt;
* Print&lt;br /&gt;
* Configure date &amp;amp; Time&lt;br /&gt;
* Archive (better replaced by combining &amp;quot;expire and move&amp;quot; in a single folder with &amp;quot;export&amp;quot; a folder)&lt;br /&gt;
&lt;br /&gt;
==== We need to discuss this ====&lt;br /&gt;
&lt;br /&gt;
==== We need to integrate this ====&lt;br /&gt;
* Export/Import, we should support one standard format, iCalender. Should be able to exprot a single folder.&lt;br /&gt;
* &amp;quot;Disassociate from recurrence&amp;quot; should be solved as part of handling&lt;br /&gt;
* Category handling (simple version)&lt;br /&gt;
* Expire X days after last occurrance of appointments, either delete or move to a different folder.&lt;/div&gt;</summary>
		<author><name>Bernhard</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Projects/KDE_PIM/Development/Mobile/Calendar_FunctionalScope</id>
		<title>Projects/KDE PIM/Development/Mobile/Calendar FunctionalScope</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Projects/KDE_PIM/Development/Mobile/Calendar_FunctionalScope"/>
				<updated>2010-08-26T12:42:03Z</updated>
		
		<summary type="html">&lt;p&gt;Bernhard: /* Open */ preselected by Björn B and Bernhard E R.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Functional Scope of Kontact Mobile - Kalender  ==&lt;br /&gt;
&lt;br /&gt;
Following you will find a set contaxtual actions available in the different views &lt;br /&gt;
Kontact Mobile - Kalender offers. This way the functional scope is defined.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Always available ===&lt;br /&gt;
Elements of this section are always visible. This section is always the last section displayed in the contextual menu.&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Category&lt;br /&gt;
! Action&lt;br /&gt;
! Status&lt;br /&gt;
! Comment&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;7&amp;quot; valign=&amp;quot;top&amp;quot;| Kontact Mobile - Kalender&lt;br /&gt;
| Quit Kalender&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Open Task Switcher&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Add new event&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Find event&lt;br /&gt;
| &lt;br /&gt;
| Opens Search Dialogue - behaves excactly the same as Multiple selection - so results can altered by going back to selection, Search+View can be saved as favorite (Search targets: summary, categories, date range, maybe location)&lt;br /&gt;
|-&lt;br /&gt;
| Work offline&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Configure Kalender&lt;br /&gt;
| &lt;br /&gt;
| timezones, holiday regions, tasks, working period, current timezone&lt;br /&gt;
|-&lt;br /&gt;
| About Kalender&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Home ===&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Category&lt;br /&gt;
! Action&lt;br /&gt;
! Status&lt;br /&gt;
! Comment&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; valign=&amp;quot;top&amp;quot;|Home&lt;br /&gt;
| Sync all events&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Select multiple folders&lt;br /&gt;
| OK&lt;br /&gt;
| Initiate multiple selection&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;3&amp;quot; valign=&amp;quot;top&amp;quot;| Favorites (OrderFlap)&lt;br /&gt;
| Reorder&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Make / Remove default&lt;br /&gt;
| Under Discussion&lt;br /&gt;
| Default Favorite should be loaded when application starts / Only one default is possible / it must be possible to remove a default and have none - then app is starting with homepage -&amp;gt; Actually right now the application loads the last opend folder on startup, which doesn't seem unreasonable either&lt;br /&gt;
|-&lt;br /&gt;
| Delete&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; valign=&amp;quot;top&amp;quot;| Accounts (OrderFlap)&lt;br /&gt;
| Reorder&lt;br /&gt;
| Under Discussion&lt;br /&gt;
| Reordering is not available on the desktop either&lt;br /&gt;
|-&lt;br /&gt;
| Edit&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Delete&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Add&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Account ===&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Category&lt;br /&gt;
! Action&lt;br /&gt;
! Status&lt;br /&gt;
! Comment&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;3&amp;quot; valign=&amp;quot;top&amp;quot;| Account&lt;br /&gt;
| Sync events in account&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Edit account&lt;br /&gt;
| OK&lt;br /&gt;
| Edit dialogue for account configuration, should contain possibility for Renaming&lt;br /&gt;
|-&lt;br /&gt;
| Add subfolder&lt;br /&gt;
| OK&lt;br /&gt;
| Detailed Dialogue for new folder. Parent is prefilled&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Single folder view ===&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Category&lt;br /&gt;
! Action&lt;br /&gt;
! Status&lt;br /&gt;
! Comment&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; valign=&amp;quot;top&amp;quot;| Folder&lt;br /&gt;
| Sync events in folder&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;5&amp;quot; valign=&amp;quot;top&amp;quot;| Edit&lt;br /&gt;
| Edit folder&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Add Subfolder&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Move folder to&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Copy folder to&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Delete folder&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;3&amp;quot; valign=&amp;quot;top&amp;quot;| View&lt;br /&gt;
| Start maintainence mode&lt;br /&gt;
| &lt;br /&gt;
| Starts Bulk-Action dialogue (Move, Copy, Delete, Toggle Reminders / Alarms)&lt;br /&gt;
|-&lt;br /&gt;
| Filter view&lt;br /&gt;
| Under discussion&lt;br /&gt;
| Possibility to filter the mails in the folder (e.g. by name, subject etc.)&lt;br /&gt;
|-&lt;br /&gt;
| View options&lt;br /&gt;
| Under discussion&lt;br /&gt;
| View option address sorting of items etc.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Multiple folder view ===&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Category&lt;br /&gt;
! Action&lt;br /&gt;
! Status&lt;br /&gt;
! Comment&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; valign=&amp;quot;top&amp;quot;| Folders&lt;br /&gt;
| Sync events in selected folders&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; valign=&amp;quot;top&amp;quot;| View&lt;br /&gt;
| Change folder selection&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Start maintainence mode&lt;br /&gt;
| &lt;br /&gt;
| Starts Bulk-Action dialogue (Move, Copy, Delete, Toggle Reminders / Alarms)&lt;br /&gt;
|-&lt;br /&gt;
| Filter view&lt;br /&gt;
| Under discussion&lt;br /&gt;
| Possibility to filter the mails in the folder (e.g. by name, subject etc.)&lt;br /&gt;
|-&lt;br /&gt;
| View options&lt;br /&gt;
| Under discussion&lt;br /&gt;
| View option address sorting of items etc.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Single calender view ===&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Category&lt;br /&gt;
! Action&lt;br /&gt;
! Status&lt;br /&gt;
! Comment&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;6&amp;quot; valign=&amp;quot;top&amp;quot;| Calender&lt;br /&gt;
| Sync events in calender&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Show today&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Day layout&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Week layout&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Month layout&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Other&lt;br /&gt;
| Under Discussion&lt;br /&gt;
| We need to define which other views we want to integrate here (e.g. Journal,...)&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; valign=&amp;quot;top&amp;quot;| View&lt;br /&gt;
| Add as favorite / Rename favorite&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Back to folder selection&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Filter view&lt;br /&gt;
| Under discussion&lt;br /&gt;
| Anything needed here?&lt;br /&gt;
|-&lt;br /&gt;
| View options&lt;br /&gt;
| Under discussion&lt;br /&gt;
| Anything needed here?&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Multiple calender view ===&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Category&lt;br /&gt;
! Action&lt;br /&gt;
! Status&lt;br /&gt;
! Comment&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;6&amp;quot; valign=&amp;quot;top&amp;quot;| Calenders&lt;br /&gt;
| Sync events in selected calenders&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Show today&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Day layout&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Week layout&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Month layout&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Other&lt;br /&gt;
| Under Discussion&lt;br /&gt;
| We need to define which other views we want to integrate here (e.g. Journal,...)&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; valign=&amp;quot;top&amp;quot;| View&lt;br /&gt;
| Add as favorite / Rename favorite&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Back to folder selection&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Filter view&lt;br /&gt;
| Under discussion&lt;br /&gt;
| Anything needed here?&lt;br /&gt;
|-&lt;br /&gt;
| View options&lt;br /&gt;
| Under discussion&lt;br /&gt;
| Anything needed here?&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Event viewer ===&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Category&lt;br /&gt;
! Action&lt;br /&gt;
! Status&lt;br /&gt;
! Comment&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;10&amp;quot; valign=&amp;quot;top&amp;quot;| Event&lt;br /&gt;
| Detach event&lt;br /&gt;
| &lt;br /&gt;
| Detaches a nested event - only show if possible&lt;br /&gt;
|-&lt;br /&gt;
| Publish Item Information&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Send invitations to attendees&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Send status update&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Send cancellation to attendees&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Request update&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Request change&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Send as iCalender&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Mail free busy information&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Upload free busy information&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Attachments&lt;br /&gt;
| Save (all)&lt;br /&gt;
| Under Discussion&lt;br /&gt;
| Show only if attachments exists / View tbd&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; valign=&amp;quot;top&amp;quot;| Edit&lt;br /&gt;
| Edit event&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Copy event to calender&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Move event to calender&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Delete event&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Open ===&lt;br /&gt;
Here you can find functionallity that still needs to be discussed, wether it makes sense to add it to the mobile version of KDE PIM.&lt;br /&gt;
&lt;br /&gt;
==== We do not need this ====&lt;br /&gt;
* Print&lt;br /&gt;
* Publish (Webpage, vCalender, hot new stuff)&lt;br /&gt;
 &lt;br /&gt;
==== We need to discuss this ====&lt;br /&gt;
&lt;br /&gt;
==== We need to integrate this ====&lt;br /&gt;
* Export/Import, we should support one standard format, iCalender.&lt;br /&gt;
* &amp;quot;Disassociate from recurrence&amp;quot; should be solved as part of handling recurrent appointments (including acceptence of invitations and exceptions for single dates).&lt;/div&gt;</summary>
		<author><name>Bernhard</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Projects/KDE_PIM/Development/Mobile/Calendar_FunctionalScope</id>
		<title>Projects/KDE PIM/Development/Mobile/Calendar FunctionalScope</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Projects/KDE_PIM/Development/Mobile/Calendar_FunctionalScope"/>
				<updated>2010-08-26T12:36:09Z</updated>
		
		<summary type="html">&lt;p&gt;Bernhard: /* Open */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Functional Scope of Kontact Mobile - Kalender  ==&lt;br /&gt;
&lt;br /&gt;
Following you will find a set contaxtual actions available in the different views &lt;br /&gt;
Kontact Mobile - Kalender offers. This way the functional scope is defined.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Always available ===&lt;br /&gt;
Elements of this section are always visible. This section is always the last section displayed in the contextual menu.&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Category&lt;br /&gt;
! Action&lt;br /&gt;
! Status&lt;br /&gt;
! Comment&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;7&amp;quot; valign=&amp;quot;top&amp;quot;| Kontact Mobile - Kalender&lt;br /&gt;
| Quit Kalender&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Open Task Switcher&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Add new event&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Find event&lt;br /&gt;
| &lt;br /&gt;
| Opens Search Dialogue - behaves excactly the same as Multiple selection - so results can altered by going back to selection, Search+View can be saved as favorite (Search targets: summary, categories, date range, maybe location)&lt;br /&gt;
|-&lt;br /&gt;
| Work offline&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Configure Kalender&lt;br /&gt;
| &lt;br /&gt;
| timezones, holiday regions, tasks, working period, current timezone&lt;br /&gt;
|-&lt;br /&gt;
| About Kalender&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Home ===&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Category&lt;br /&gt;
! Action&lt;br /&gt;
! Status&lt;br /&gt;
! Comment&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; valign=&amp;quot;top&amp;quot;|Home&lt;br /&gt;
| Sync all events&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Select multiple folders&lt;br /&gt;
| OK&lt;br /&gt;
| Initiate multiple selection&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;3&amp;quot; valign=&amp;quot;top&amp;quot;| Favorites (OrderFlap)&lt;br /&gt;
| Reorder&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Make / Remove default&lt;br /&gt;
| Under Discussion&lt;br /&gt;
| Default Favorite should be loaded when application starts / Only one default is possible / it must be possible to remove a default and have none - then app is starting with homepage -&amp;gt; Actually right now the application loads the last opend folder on startup, which doesn't seem unreasonable either&lt;br /&gt;
|-&lt;br /&gt;
| Delete&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; valign=&amp;quot;top&amp;quot;| Accounts (OrderFlap)&lt;br /&gt;
| Reorder&lt;br /&gt;
| Under Discussion&lt;br /&gt;
| Reordering is not available on the desktop either&lt;br /&gt;
|-&lt;br /&gt;
| Edit&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Delete&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Add&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Account ===&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Category&lt;br /&gt;
! Action&lt;br /&gt;
! Status&lt;br /&gt;
! Comment&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;3&amp;quot; valign=&amp;quot;top&amp;quot;| Account&lt;br /&gt;
| Sync events in account&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Edit account&lt;br /&gt;
| OK&lt;br /&gt;
| Edit dialogue for account configuration, should contain possibility for Renaming&lt;br /&gt;
|-&lt;br /&gt;
| Add subfolder&lt;br /&gt;
| OK&lt;br /&gt;
| Detailed Dialogue for new folder. Parent is prefilled&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Single folder view ===&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Category&lt;br /&gt;
! Action&lt;br /&gt;
! Status&lt;br /&gt;
! Comment&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; valign=&amp;quot;top&amp;quot;| Folder&lt;br /&gt;
| Sync events in folder&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;5&amp;quot; valign=&amp;quot;top&amp;quot;| Edit&lt;br /&gt;
| Edit folder&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Add Subfolder&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Move folder to&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Copy folder to&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Delete folder&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;3&amp;quot; valign=&amp;quot;top&amp;quot;| View&lt;br /&gt;
| Start maintainence mode&lt;br /&gt;
| &lt;br /&gt;
| Starts Bulk-Action dialogue (Move, Copy, Delete, Toggle Reminders / Alarms)&lt;br /&gt;
|-&lt;br /&gt;
| Filter view&lt;br /&gt;
| Under discussion&lt;br /&gt;
| Possibility to filter the mails in the folder (e.g. by name, subject etc.)&lt;br /&gt;
|-&lt;br /&gt;
| View options&lt;br /&gt;
| Under discussion&lt;br /&gt;
| View option address sorting of items etc.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Multiple folder view ===&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Category&lt;br /&gt;
! Action&lt;br /&gt;
! Status&lt;br /&gt;
! Comment&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; valign=&amp;quot;top&amp;quot;| Folders&lt;br /&gt;
| Sync events in selected folders&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; valign=&amp;quot;top&amp;quot;| View&lt;br /&gt;
| Change folder selection&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Start maintainence mode&lt;br /&gt;
| &lt;br /&gt;
| Starts Bulk-Action dialogue (Move, Copy, Delete, Toggle Reminders / Alarms)&lt;br /&gt;
|-&lt;br /&gt;
| Filter view&lt;br /&gt;
| Under discussion&lt;br /&gt;
| Possibility to filter the mails in the folder (e.g. by name, subject etc.)&lt;br /&gt;
|-&lt;br /&gt;
| View options&lt;br /&gt;
| Under discussion&lt;br /&gt;
| View option address sorting of items etc.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Single calender view ===&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Category&lt;br /&gt;
! Action&lt;br /&gt;
! Status&lt;br /&gt;
! Comment&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;6&amp;quot; valign=&amp;quot;top&amp;quot;| Calender&lt;br /&gt;
| Sync events in calender&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Show today&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Day layout&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Week layout&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Month layout&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Other&lt;br /&gt;
| Under Discussion&lt;br /&gt;
| We need to define which other views we want to integrate here (e.g. Journal,...)&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; valign=&amp;quot;top&amp;quot;| View&lt;br /&gt;
| Add as favorite / Rename favorite&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Back to folder selection&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Filter view&lt;br /&gt;
| Under discussion&lt;br /&gt;
| Anything needed here?&lt;br /&gt;
|-&lt;br /&gt;
| View options&lt;br /&gt;
| Under discussion&lt;br /&gt;
| Anything needed here?&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Multiple calender view ===&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Category&lt;br /&gt;
! Action&lt;br /&gt;
! Status&lt;br /&gt;
! Comment&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;6&amp;quot; valign=&amp;quot;top&amp;quot;| Calenders&lt;br /&gt;
| Sync events in selected calenders&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Show today&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Day layout&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Week layout&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Month layout&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Other&lt;br /&gt;
| Under Discussion&lt;br /&gt;
| We need to define which other views we want to integrate here (e.g. Journal,...)&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; valign=&amp;quot;top&amp;quot;| View&lt;br /&gt;
| Add as favorite / Rename favorite&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Back to folder selection&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Filter view&lt;br /&gt;
| Under discussion&lt;br /&gt;
| Anything needed here?&lt;br /&gt;
|-&lt;br /&gt;
| View options&lt;br /&gt;
| Under discussion&lt;br /&gt;
| Anything needed here?&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Event viewer ===&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Category&lt;br /&gt;
! Action&lt;br /&gt;
! Status&lt;br /&gt;
! Comment&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;10&amp;quot; valign=&amp;quot;top&amp;quot;| Event&lt;br /&gt;
| Detach event&lt;br /&gt;
| &lt;br /&gt;
| Detaches a nested event - only show if possible&lt;br /&gt;
|-&lt;br /&gt;
| Publish Item Information&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Send invitations to attendees&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Send status update&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Send cancellation to attendees&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Request update&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Request change&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Send as iCalender&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Mail free busy information&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Upload free busy information&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Attachments&lt;br /&gt;
| Save (all)&lt;br /&gt;
| Under Discussion&lt;br /&gt;
| Show only if attachments exists / View tbd&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; valign=&amp;quot;top&amp;quot;| Edit&lt;br /&gt;
| Edit event&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Copy event to calender&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Move event to calender&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Delete event&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Open ===&lt;br /&gt;
Here you can find functionallity that still needs to be discussed, wether it makes sense to add it to the mobile version of KDE PIM.&lt;br /&gt;
&lt;br /&gt;
==== We do not need this ====&lt;br /&gt;
* Print&lt;br /&gt;
==== We need to discuss this ====&lt;br /&gt;
* Publish (Webpage, iCalender, vCalender)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== We need to integrate this ====&lt;br /&gt;
* Export/Import, we should support one standard format, iCalender.&lt;br /&gt;
* &amp;quot;Disassociate from recurrence&amp;quot; should be solved as part of handling recurrent appointments (including acceptence of invitations and exceptions for single dates).&lt;/div&gt;</summary>
		<author><name>Bernhard</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Projects/KDE_PIM/Development/Mobile/Calendar_FunctionalScope</id>
		<title>Projects/KDE PIM/Development/Mobile/Calendar FunctionalScope</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Projects/KDE_PIM/Development/Mobile/Calendar_FunctionalScope"/>
				<updated>2010-08-26T12:35:16Z</updated>
		
		<summary type="html">&lt;p&gt;Bernhard: /* Open */ preselected by Björn B and Bernhard E R.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Functional Scope of Kontact Mobile - Kalender  ==&lt;br /&gt;
&lt;br /&gt;
Following you will find a set contaxtual actions available in the different views &lt;br /&gt;
Kontact Mobile - Kalender offers. This way the functional scope is defined.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Always available ===&lt;br /&gt;
Elements of this section are always visible. This section is always the last section displayed in the contextual menu.&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Category&lt;br /&gt;
! Action&lt;br /&gt;
! Status&lt;br /&gt;
! Comment&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;7&amp;quot; valign=&amp;quot;top&amp;quot;| Kontact Mobile - Kalender&lt;br /&gt;
| Quit Kalender&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Open Task Switcher&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Add new event&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Find event&lt;br /&gt;
| &lt;br /&gt;
| Opens Search Dialogue - behaves excactly the same as Multiple selection - so results can altered by going back to selection, Search+View can be saved as favorite (Search targets: summary, categories, date range, maybe location)&lt;br /&gt;
|-&lt;br /&gt;
| Work offline&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Configure Kalender&lt;br /&gt;
| &lt;br /&gt;
| timezones, holiday regions, tasks, working period, current timezone&lt;br /&gt;
|-&lt;br /&gt;
| About Kalender&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Home ===&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Category&lt;br /&gt;
! Action&lt;br /&gt;
! Status&lt;br /&gt;
! Comment&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; valign=&amp;quot;top&amp;quot;|Home&lt;br /&gt;
| Sync all events&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Select multiple folders&lt;br /&gt;
| OK&lt;br /&gt;
| Initiate multiple selection&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;3&amp;quot; valign=&amp;quot;top&amp;quot;| Favorites (OrderFlap)&lt;br /&gt;
| Reorder&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Make / Remove default&lt;br /&gt;
| Under Discussion&lt;br /&gt;
| Default Favorite should be loaded when application starts / Only one default is possible / it must be possible to remove a default and have none - then app is starting with homepage -&amp;gt; Actually right now the application loads the last opend folder on startup, which doesn't seem unreasonable either&lt;br /&gt;
|-&lt;br /&gt;
| Delete&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; valign=&amp;quot;top&amp;quot;| Accounts (OrderFlap)&lt;br /&gt;
| Reorder&lt;br /&gt;
| Under Discussion&lt;br /&gt;
| Reordering is not available on the desktop either&lt;br /&gt;
|-&lt;br /&gt;
| Edit&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Delete&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Add&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Account ===&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Category&lt;br /&gt;
! Action&lt;br /&gt;
! Status&lt;br /&gt;
! Comment&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;3&amp;quot; valign=&amp;quot;top&amp;quot;| Account&lt;br /&gt;
| Sync events in account&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Edit account&lt;br /&gt;
| OK&lt;br /&gt;
| Edit dialogue for account configuration, should contain possibility for Renaming&lt;br /&gt;
|-&lt;br /&gt;
| Add subfolder&lt;br /&gt;
| OK&lt;br /&gt;
| Detailed Dialogue for new folder. Parent is prefilled&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Single folder view ===&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Category&lt;br /&gt;
! Action&lt;br /&gt;
! Status&lt;br /&gt;
! Comment&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; valign=&amp;quot;top&amp;quot;| Folder&lt;br /&gt;
| Sync events in folder&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;5&amp;quot; valign=&amp;quot;top&amp;quot;| Edit&lt;br /&gt;
| Edit folder&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Add Subfolder&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Move folder to&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Copy folder to&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Delete folder&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;3&amp;quot; valign=&amp;quot;top&amp;quot;| View&lt;br /&gt;
| Start maintainence mode&lt;br /&gt;
| &lt;br /&gt;
| Starts Bulk-Action dialogue (Move, Copy, Delete, Toggle Reminders / Alarms)&lt;br /&gt;
|-&lt;br /&gt;
| Filter view&lt;br /&gt;
| Under discussion&lt;br /&gt;
| Possibility to filter the mails in the folder (e.g. by name, subject etc.)&lt;br /&gt;
|-&lt;br /&gt;
| View options&lt;br /&gt;
| Under discussion&lt;br /&gt;
| View option address sorting of items etc.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Multiple folder view ===&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Category&lt;br /&gt;
! Action&lt;br /&gt;
! Status&lt;br /&gt;
! Comment&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; valign=&amp;quot;top&amp;quot;| Folders&lt;br /&gt;
| Sync events in selected folders&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; valign=&amp;quot;top&amp;quot;| View&lt;br /&gt;
| Change folder selection&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Start maintainence mode&lt;br /&gt;
| &lt;br /&gt;
| Starts Bulk-Action dialogue (Move, Copy, Delete, Toggle Reminders / Alarms)&lt;br /&gt;
|-&lt;br /&gt;
| Filter view&lt;br /&gt;
| Under discussion&lt;br /&gt;
| Possibility to filter the mails in the folder (e.g. by name, subject etc.)&lt;br /&gt;
|-&lt;br /&gt;
| View options&lt;br /&gt;
| Under discussion&lt;br /&gt;
| View option address sorting of items etc.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Single calender view ===&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Category&lt;br /&gt;
! Action&lt;br /&gt;
! Status&lt;br /&gt;
! Comment&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;6&amp;quot; valign=&amp;quot;top&amp;quot;| Calender&lt;br /&gt;
| Sync events in calender&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Show today&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Day layout&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Week layout&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Month layout&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Other&lt;br /&gt;
| Under Discussion&lt;br /&gt;
| We need to define which other views we want to integrate here (e.g. Journal,...)&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; valign=&amp;quot;top&amp;quot;| View&lt;br /&gt;
| Add as favorite / Rename favorite&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Back to folder selection&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Filter view&lt;br /&gt;
| Under discussion&lt;br /&gt;
| Anything needed here?&lt;br /&gt;
|-&lt;br /&gt;
| View options&lt;br /&gt;
| Under discussion&lt;br /&gt;
| Anything needed here?&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Multiple calender view ===&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Category&lt;br /&gt;
! Action&lt;br /&gt;
! Status&lt;br /&gt;
! Comment&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;6&amp;quot; valign=&amp;quot;top&amp;quot;| Calenders&lt;br /&gt;
| Sync events in selected calenders&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Show today&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Day layout&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Week layout&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Month layout&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Other&lt;br /&gt;
| Under Discussion&lt;br /&gt;
| We need to define which other views we want to integrate here (e.g. Journal,...)&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; valign=&amp;quot;top&amp;quot;| View&lt;br /&gt;
| Add as favorite / Rename favorite&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Back to folder selection&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Filter view&lt;br /&gt;
| Under discussion&lt;br /&gt;
| Anything needed here?&lt;br /&gt;
|-&lt;br /&gt;
| View options&lt;br /&gt;
| Under discussion&lt;br /&gt;
| Anything needed here?&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Event viewer ===&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Category&lt;br /&gt;
! Action&lt;br /&gt;
! Status&lt;br /&gt;
! Comment&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;10&amp;quot; valign=&amp;quot;top&amp;quot;| Event&lt;br /&gt;
| Detach event&lt;br /&gt;
| &lt;br /&gt;
| Detaches a nested event - only show if possible&lt;br /&gt;
|-&lt;br /&gt;
| Publish Item Information&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Send invitations to attendees&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Send status update&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Send cancellation to attendees&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Request update&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Request change&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Send as iCalender&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Mail free busy information&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Upload free busy information&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Attachments&lt;br /&gt;
| Save (all)&lt;br /&gt;
| Under Discussion&lt;br /&gt;
| Show only if attachments exists / View tbd&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; valign=&amp;quot;top&amp;quot;| Edit&lt;br /&gt;
| Edit event&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Copy event to calender&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Move event to calender&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Delete event&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Open ===&lt;br /&gt;
Here you can find functionallity that still needs to be discussed, wether it makes sense to add it to the mobile version of KDE PIM.&lt;br /&gt;
&lt;br /&gt;
==== We do not need this ====&lt;br /&gt;
* Print&lt;br /&gt;
==== We need to discuss this ====&lt;br /&gt;
* Publish (Webpage, iCalender, vCalender)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== We need to integrate this ====&lt;br /&gt;
* Export/Import, we should support one standard format, iCalender.&lt;br /&gt;
* &amp;quot;Disassociate from recurrence&amp;quot; should be solved as part of handling &lt;br /&gt;
recurrent appointments (including acceptence of invitations and exceptions&lt;br /&gt;
for single dates).&lt;/div&gt;</summary>
		<author><name>Bernhard</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Projects/KDE_PIM/Development/Mobile/KMail_FunctionalScope</id>
		<title>Projects/KDE PIM/Development/Mobile/KMail FunctionalScope</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Projects/KDE_PIM/Development/Mobile/KMail_FunctionalScope"/>
				<updated>2010-08-26T09:16:46Z</updated>
		
		<summary type="html">&lt;p&gt;Bernhard: /* We need to integrate this */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Functional Scope of Kontact Mobile - KMail  ==&lt;br /&gt;
&lt;br /&gt;
Following you will find a set contaxtual actions available in the different views Kontact Mobile - KMail offers. This way the functional scope is defined.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Always available ===&lt;br /&gt;
Elements of this section are always visible. This section is always the last section displayed in the contextual menu.&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Category&lt;br /&gt;
! Action&lt;br /&gt;
! Status&lt;br /&gt;
! Comment&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;8&amp;quot; valign=&amp;quot;top&amp;quot;| Kontact Mobile - KMail&lt;br /&gt;
| Quit KMail&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Open Task Switcher&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Write new email&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Find message&lt;br /&gt;
| &lt;br /&gt;
| Opens Search Dialogue - behaves excactly the same as Multiple selection - so results can altered by going back to selection, Search+View can be saved as favorite&lt;br /&gt;
|-&lt;br /&gt;
| Work offline&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Configure KMail &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Configure notifications &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| About KMail&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Home ===&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Category&lt;br /&gt;
! Action&lt;br /&gt;
! Status&lt;br /&gt;
! Comment&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;5&amp;quot; valign=&amp;quot;top&amp;quot;| Home&lt;br /&gt;
| Sync all emails&lt;br /&gt;
| Under discusssion&lt;br /&gt;
| Send and recieve mails (VK: very confusing to have sync and check mail, even I wouldn't know the difference)&lt;br /&gt;
|-&lt;br /&gt;
| Check emails&lt;br /&gt;
|&lt;br /&gt;
| Long press offers dialogue to specify account - Thought to be only fetching mails, not sending them - that is how I understood the functionallity in desktop version &lt;br /&gt;
|-&lt;br /&gt;
| Send queued emails&lt;br /&gt;
| &lt;br /&gt;
| Long press offers dialogue to specify &amp;quot;via...&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| Select multiple folders&lt;br /&gt;
| &lt;br /&gt;
| Initiate multiple selection&lt;br /&gt;
|-&lt;br /&gt;
| Empty all trash folders&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;3&amp;quot; valign=&amp;quot;top&amp;quot;| Favorites (OrderFlap)&lt;br /&gt;
| Reorder&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Make / Remove default&lt;br /&gt;
| Under Discussion&lt;br /&gt;
| Default Favorite should be loaded when application starts / Only one default is possible / it must be possible to remove a default and have none - then app is starting with homepage -&amp;gt; Actually right now the application loads the last opend folder on startup, which doesn't seem unreasonable either&lt;br /&gt;
|-&lt;br /&gt;
| Delete&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; valign=&amp;quot;top&amp;quot;| Accounts (OrderFlap)&lt;br /&gt;
| Reorder&lt;br /&gt;
| Under Discussion&lt;br /&gt;
| Reordering is not available on the desktop either&lt;br /&gt;
|-&lt;br /&gt;
| Edit&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Delete&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Add&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; valign=&amp;quot;top&amp;quot;| Identities (OrderFlap)&lt;br /&gt;
| Edit&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Make Default&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Delete&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Add&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Account ===&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Category&lt;br /&gt;
! Action&lt;br /&gt;
! Status&lt;br /&gt;
! Comment&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;5&amp;quot; valign=&amp;quot;top&amp;quot;| Account&lt;br /&gt;
| Check mail in account&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Serverside subscription...&lt;br /&gt;
| Not implemented&lt;br /&gt;
| Nowadays both on desktop and mobile, the server side subscription dialog is accessible from the account configuration dialog.&lt;br /&gt;
|-&lt;br /&gt;
| Local subscription...&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Edit account&lt;br /&gt;
| OK&lt;br /&gt;
| Edit dialogue for account configuration, should contain possibility for Renaming&lt;br /&gt;
|-&lt;br /&gt;
| Add subfolder&lt;br /&gt;
| OK&lt;br /&gt;
| Detailed Dialogue for new folder. Parent is prefilled&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Single folder view ===&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Category&lt;br /&gt;
! Action&lt;br /&gt;
! Status&lt;br /&gt;
! Comment&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;8&amp;quot; valign=&amp;quot;top&amp;quot;| Folder&lt;br /&gt;
| Check emails in folder&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Mark all emails as read&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Move all emails to trash&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Remove duplicate emails&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Archive folder&lt;br /&gt;
| Under Discussion&lt;br /&gt;
| Is that really something you do on a phone?&lt;br /&gt;
|-&lt;br /&gt;
| Expire rules&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Mailing-list management&lt;br /&gt;
| Under discussion&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Empty trash&lt;br /&gt;
| &lt;br /&gt;
| only if folder is a trash folder&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;5&amp;quot; valign=&amp;quot;top&amp;quot;| Edit&lt;br /&gt;
| Edit folder&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Add subfolder&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Move folder to&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Copy folder to&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Delete folder&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;6&amp;quot; valign=&amp;quot;top&amp;quot;| View&lt;br /&gt;
| Add as favorite / Rename favorite&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Start maintainence mode&lt;br /&gt;
| &lt;br /&gt;
| Starts Bulk-Action dialogue (Move, Copy, Delete, Toggle Reminders / Alarms)&lt;br /&gt;
|-&lt;br /&gt;
| Prefer HTML to plain text&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Load external references&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Filter view&lt;br /&gt;
| Under discussion&lt;br /&gt;
| Possibility to filter the mails in the folder (e.g. by name, subject etc.)&lt;br /&gt;
|-&lt;br /&gt;
| View options&lt;br /&gt;
| Under discussion&lt;br /&gt;
| View option address sorting of items etc.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Multiple folder view ===&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Category&lt;br /&gt;
! Action&lt;br /&gt;
! Status&lt;br /&gt;
! Comment&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;5&amp;quot; valign=&amp;quot;top&amp;quot;| Folders&lt;br /&gt;
| Check emails in selected folders&lt;br /&gt;
|&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Mark all emails as read&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Move all emails to trash&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Remove dublicate emails&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Archive selected folders&lt;br /&gt;
| Under Discussion&lt;br /&gt;
| Is that really something you do on a phone?&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;7&amp;quot; valign=&amp;quot;top&amp;quot;| View&lt;br /&gt;
| Add as favorite / Rename favorite&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Change folder selection&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Start maintainence mode&lt;br /&gt;
| &lt;br /&gt;
| Starts Bulk-Action dialogue (Move, Copy, Delete, Toggle Reminders / Alarms)&lt;br /&gt;
|-&lt;br /&gt;
| Prefer HTML to plain text&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Load external references&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Filter view&lt;br /&gt;
| Under discussion&lt;br /&gt;
| Possibility to filter the mails in the folder (e.g. by name, subject etc.)&lt;br /&gt;
|-&lt;br /&gt;
| View options&lt;br /&gt;
| Under discussion&lt;br /&gt;
| View option address sorting of items etc.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Message viewer ===&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Category&lt;br /&gt;
! Action&lt;br /&gt;
! Status&lt;br /&gt;
! Comment&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;7&amp;quot; valign=&amp;quot;top&amp;quot;| Email&lt;br /&gt;
| Reply&lt;br /&gt;
| &lt;br /&gt;
| long press offers dialogue to choose non-standard reply&lt;br /&gt;
|-&lt;br /&gt;
| Forward&lt;br /&gt;
| &lt;br /&gt;
| long press offers dialogue to choose non-standard reply&lt;br /&gt;
|-&lt;br /&gt;
| Mark email as...&lt;br /&gt;
| OK&lt;br /&gt;
| unread / read / important,... Works, but not as a submenu of Email.&lt;br /&gt;
|-&lt;br /&gt;
| Send again&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Create to-do reminder&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Find in email&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Save as&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Attachments&lt;br /&gt;
| Save (all)&lt;br /&gt;
| Under Discussion&lt;br /&gt;
| Show only if attachments exists / View tbd&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; valign=&amp;quot;top&amp;quot;| Edit&lt;br /&gt;
| Edit email&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Copy email to folder&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Move email to folder&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Delete email&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Open ===&lt;br /&gt;
Here you can find functionallity that still needs to be discussed, wether it makes sense to add it to the mobile version of KDE PIM.&lt;br /&gt;
&lt;br /&gt;
==== We do not need this ====&lt;br /&gt;
* Print, Rationale: not practical from a handheld decive, most have no printer connection&lt;br /&gt;
* Shortcuts (keyboard &amp;quot;accellerators&amp;quot;), Rationale: not needed in a touch screen handheld&lt;br /&gt;
* General Sieve Skripts&lt;br /&gt;
* Out of office replies - use web-interface if needed&lt;br /&gt;
* Multiple views - substituted by favorites concepts&lt;br /&gt;
* Copy&lt;br /&gt;
* Select all text&lt;br /&gt;
* Log viewer&lt;br /&gt;
&lt;br /&gt;
==== We need to discuss this ====&lt;br /&gt;
* Templates&lt;br /&gt;
* Expire all folders&lt;br /&gt;
* Refresh local imap cache&lt;br /&gt;
* Undo&lt;br /&gt;
* Threads&lt;br /&gt;
* Move thread to trash&lt;br /&gt;
* Mark thread as...&lt;br /&gt;
* select all messages&lt;br /&gt;
* Go options&lt;br /&gt;
* Anti-Spam&lt;br /&gt;
* Anti-Virus&lt;br /&gt;
* Certificate Manager&lt;br /&gt;
* GnuPG log viewer&lt;br /&gt;
* What does subscription actually do? Does it belong to account or to folder level?&lt;br /&gt;
* View source - how expensive is this?&lt;br /&gt;
* Use fixed font - how expensive is this?&lt;br /&gt;
&lt;br /&gt;
==== We need to integrate this ====&lt;br /&gt;
* Show message structure - we need some smart solution to handle multiple attachement and enbedded mails and to include parts of other objects into object (e.g. mail - to substitute drag&amp;amp;drop)&lt;br /&gt;
* Import messages / Open... / Save / Export - only provide basic import functionality (e.g. mbox and maildir)&lt;/div&gt;</summary>
		<author><name>Bernhard</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Projects/KDE_PIM/Development/Mobile/KMail_FunctionalScope</id>
		<title>Projects/KDE PIM/Development/Mobile/KMail FunctionalScope</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Projects/KDE_PIM/Development/Mobile/KMail_FunctionalScope"/>
				<updated>2010-08-26T08:25:04Z</updated>
		
		<summary type="html">&lt;p&gt;Bernhard: /* We do not need this */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Functional Scope of Kontact Mobile - KMail  ==&lt;br /&gt;
&lt;br /&gt;
Following you will find a set contaxtual actions available in the different views Kontact Mobile - KMail offers. This way the functional scope is defined.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Always available ===&lt;br /&gt;
Elements of this section are always visible. This section is always the last section displayed in the contextual menu.&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Category&lt;br /&gt;
! Action&lt;br /&gt;
! Status&lt;br /&gt;
! Comment&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;8&amp;quot; valign=&amp;quot;top&amp;quot;| Kontact Mobile - KMail&lt;br /&gt;
| Quit KMail&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Open Task Switcher&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Write new email&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Find message&lt;br /&gt;
| &lt;br /&gt;
| Opens Search Dialogue - behaves excactly the same as Multiple selection - so results can altered by going back to selection, Search+View can be saved as favorite&lt;br /&gt;
|-&lt;br /&gt;
| Work offline&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Configure KMail &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Configure notifications &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| About KMail&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Home ===&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Category&lt;br /&gt;
! Action&lt;br /&gt;
! Status&lt;br /&gt;
! Comment&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;5&amp;quot; valign=&amp;quot;top&amp;quot;| Home&lt;br /&gt;
| Sync all emails&lt;br /&gt;
| Under discusssion&lt;br /&gt;
| Send and recieve mails (VK: very confusing to have sync and check mail, even I wouldn't know the difference)&lt;br /&gt;
|-&lt;br /&gt;
| Check emails&lt;br /&gt;
|&lt;br /&gt;
| Long press offers dialogue to specify account - Thought to be only fetching mails, not sending them - that is how I understood the functionallity in desktop version &lt;br /&gt;
|-&lt;br /&gt;
| Send queued emails&lt;br /&gt;
| &lt;br /&gt;
| Long press offers dialogue to specify &amp;quot;via...&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| Select multiple folders&lt;br /&gt;
| &lt;br /&gt;
| Initiate multiple selection&lt;br /&gt;
|-&lt;br /&gt;
| Empty all trash folders&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;3&amp;quot; valign=&amp;quot;top&amp;quot;| Favorites (OrderFlap)&lt;br /&gt;
| Reorder&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Make / Remove default&lt;br /&gt;
| Under Discussion&lt;br /&gt;
| Default Favorite should be loaded when application starts / Only one default is possible / it must be possible to remove a default and have none - then app is starting with homepage -&amp;gt; Actually right now the application loads the last opend folder on startup, which doesn't seem unreasonable either&lt;br /&gt;
|-&lt;br /&gt;
| Delete&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; valign=&amp;quot;top&amp;quot;| Accounts (OrderFlap)&lt;br /&gt;
| Reorder&lt;br /&gt;
| Under Discussion&lt;br /&gt;
| Reordering is not available on the desktop either&lt;br /&gt;
|-&lt;br /&gt;
| Edit&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Delete&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Add&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; valign=&amp;quot;top&amp;quot;| Identities (OrderFlap)&lt;br /&gt;
| Edit&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Make Default&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Delete&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Add&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Account ===&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Category&lt;br /&gt;
! Action&lt;br /&gt;
! Status&lt;br /&gt;
! Comment&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;5&amp;quot; valign=&amp;quot;top&amp;quot;| Account&lt;br /&gt;
| Check mail in account&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Serverside subscription...&lt;br /&gt;
| Not implemented&lt;br /&gt;
| Nowadays both on desktop and mobile, the server side subscription dialog is accessible from the account configuration dialog.&lt;br /&gt;
|-&lt;br /&gt;
| Local subscription...&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Edit account&lt;br /&gt;
| OK&lt;br /&gt;
| Edit dialogue for account configuration, should contain possibility for Renaming&lt;br /&gt;
|-&lt;br /&gt;
| Add subfolder&lt;br /&gt;
| OK&lt;br /&gt;
| Detailed Dialogue for new folder. Parent is prefilled&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Single folder view ===&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Category&lt;br /&gt;
! Action&lt;br /&gt;
! Status&lt;br /&gt;
! Comment&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;8&amp;quot; valign=&amp;quot;top&amp;quot;| Folder&lt;br /&gt;
| Check emails in folder&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Mark all emails as read&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Move all emails to trash&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Remove duplicate emails&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Archive folder&lt;br /&gt;
| Under Discussion&lt;br /&gt;
| Is that really something you do on a phone?&lt;br /&gt;
|-&lt;br /&gt;
| Expire rules&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Mailing-list management&lt;br /&gt;
| Under discussion&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Empty trash&lt;br /&gt;
| &lt;br /&gt;
| only if folder is a trash folder&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;5&amp;quot; valign=&amp;quot;top&amp;quot;| Edit&lt;br /&gt;
| Edit folder&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Add subfolder&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Move folder to&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Copy folder to&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Delete folder&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;6&amp;quot; valign=&amp;quot;top&amp;quot;| View&lt;br /&gt;
| Add as favorite / Rename favorite&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Start maintainence mode&lt;br /&gt;
| &lt;br /&gt;
| Starts Bulk-Action dialogue (Move, Copy, Delete, Toggle Reminders / Alarms)&lt;br /&gt;
|-&lt;br /&gt;
| Prefer HTML to plain text&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Load external references&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Filter view&lt;br /&gt;
| Under discussion&lt;br /&gt;
| Possibility to filter the mails in the folder (e.g. by name, subject etc.)&lt;br /&gt;
|-&lt;br /&gt;
| View options&lt;br /&gt;
| Under discussion&lt;br /&gt;
| View option address sorting of items etc.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Multiple folder view ===&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Category&lt;br /&gt;
! Action&lt;br /&gt;
! Status&lt;br /&gt;
! Comment&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;5&amp;quot; valign=&amp;quot;top&amp;quot;| Folders&lt;br /&gt;
| Check emails in selected folders&lt;br /&gt;
|&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Mark all emails as read&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Move all emails to trash&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Remove dublicate emails&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Archive selected folders&lt;br /&gt;
| Under Discussion&lt;br /&gt;
| Is that really something you do on a phone?&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;7&amp;quot; valign=&amp;quot;top&amp;quot;| View&lt;br /&gt;
| Add as favorite / Rename favorite&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Change folder selection&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Start maintainence mode&lt;br /&gt;
| &lt;br /&gt;
| Starts Bulk-Action dialogue (Move, Copy, Delete, Toggle Reminders / Alarms)&lt;br /&gt;
|-&lt;br /&gt;
| Prefer HTML to plain text&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Load external references&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Filter view&lt;br /&gt;
| Under discussion&lt;br /&gt;
| Possibility to filter the mails in the folder (e.g. by name, subject etc.)&lt;br /&gt;
|-&lt;br /&gt;
| View options&lt;br /&gt;
| Under discussion&lt;br /&gt;
| View option address sorting of items etc.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Message viewer ===&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Category&lt;br /&gt;
! Action&lt;br /&gt;
! Status&lt;br /&gt;
! Comment&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;7&amp;quot; valign=&amp;quot;top&amp;quot;| Email&lt;br /&gt;
| Reply&lt;br /&gt;
| &lt;br /&gt;
| long press offers dialogue to choose non-standard reply&lt;br /&gt;
|-&lt;br /&gt;
| Forward&lt;br /&gt;
| &lt;br /&gt;
| long press offers dialogue to choose non-standard reply&lt;br /&gt;
|-&lt;br /&gt;
| Mark email as...&lt;br /&gt;
| OK&lt;br /&gt;
| unread / read / important,... Works, but not as a submenu of Email.&lt;br /&gt;
|-&lt;br /&gt;
| Send again&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Create to-do reminder&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Find in email&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Save as&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Attachments&lt;br /&gt;
| Save (all)&lt;br /&gt;
| Under Discussion&lt;br /&gt;
| Show only if attachments exists / View tbd&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; valign=&amp;quot;top&amp;quot;| Edit&lt;br /&gt;
| Edit email&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Copy email to folder&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Move email to folder&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Delete email&lt;br /&gt;
| OK&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Open ===&lt;br /&gt;
Here you can find functionallity that still needs to be discussed, wether it makes sense to add it to the mobile version of KDE PIM.&lt;br /&gt;
&lt;br /&gt;
==== We do not need this ====&lt;br /&gt;
* Print, Rationale: not practical from a handheld decive, most have no printer connection&lt;br /&gt;
* Shortcuts (keyboard &amp;quot;accellerators&amp;quot;), Rationale: not needed in a touch screen handheld&lt;br /&gt;
* Sieve&lt;br /&gt;
* View source&lt;br /&gt;
* Use fixed font&lt;br /&gt;
* Show message structure&lt;br /&gt;
* Multiple views&lt;br /&gt;
* Import messages&lt;br /&gt;
* Open...&lt;br /&gt;
* Copy&lt;br /&gt;
* Select all text&lt;br /&gt;
* Log viewer&lt;br /&gt;
&lt;br /&gt;
==== We need to discuss this ====&lt;br /&gt;
* Templates&lt;br /&gt;
* Expire all folders&lt;br /&gt;
* Refresh local imap cache&lt;br /&gt;
* Undo&lt;br /&gt;
* Out of office replies&lt;br /&gt;
* Threads&lt;br /&gt;
* Move thread to trash&lt;br /&gt;
* Mark thread as...&lt;br /&gt;
* select all messages&lt;br /&gt;
* Go options&lt;br /&gt;
* Anti-Spam&lt;br /&gt;
* Anti-Virus&lt;br /&gt;
* Certificate Manager&lt;br /&gt;
* GnuPG log viewer&lt;br /&gt;
* What does subscription actually do? Does it belong to account or to folder level?&lt;br /&gt;
&lt;br /&gt;
==== We need to integrate this ====&lt;/div&gt;</summary>
		<author><name>Bernhard</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Projects/PIM/Akonadi/Development_Tools</id>
		<title>Projects/PIM/Akonadi/Development Tools</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Projects/PIM/Akonadi/Development_Tools"/>
				<updated>2010-08-24T15:11:52Z</updated>
		
		<summary type="html">&lt;p&gt;Bernhard: /* Limitations */ Stressing the UID point.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Akonadi Developer Tools =&lt;br /&gt;
&lt;br /&gt;
== Akonadi Console ==&lt;br /&gt;
&lt;br /&gt;
Akonadi Console is a tool for developers working with Akonadi or on Akonadi itself.&lt;br /&gt;
&lt;br /&gt;
It provides GUI for&lt;br /&gt;
&lt;br /&gt;
* managing agents and resources&lt;br /&gt;
* retrieving, checking and even manipulating data&lt;br /&gt;
* monitoring communication between Akonadi server and its clients&lt;br /&gt;
* convenience access to the database used by the server&lt;br /&gt;
&lt;br /&gt;
=== Managing Agents ===&lt;br /&gt;
&lt;br /&gt;
[[Image:AkonadiConsoleTabAgents.png]]&lt;br /&gt;
&lt;br /&gt;
This facility is basically a GUI for [http://api.kde.org/4.x-api/kdepimlibs-apidocs/akonadi/html/classAkonadi_1_1AgentManager.html Akonadi::AgentManager] and [http://api.kde.org/4.x-api/kdepimlibs-apidocs/akonadi/html/classAkonadi_1_1AgentInstance.html Akonadi::AgentInstance].&lt;br /&gt;
&lt;br /&gt;
It enables the developer to quickly add or remove agents from the currently running Akonadi system, to check an agent's basic properties and status, etc.&lt;br /&gt;
&lt;br /&gt;
While most of these actions can also be performed through end user GUI, e.g. KDE's Systemsettings, this is usually quicker and it provides more detailed information.&lt;br /&gt;
&lt;br /&gt;
{{tip|The '''Synchronize''' action menu can be used to just synchronize the collection tree, basically a convenient way for a resource developer to call just the '''retrieveCollections()''' method.}}&lt;br /&gt;
&lt;br /&gt;
=== Collections and Items ===&lt;br /&gt;
&lt;br /&gt;
[[Image:AkonadiConsoleTabBrowser.png]]&lt;br /&gt;
&lt;br /&gt;
This facility shows all Akonadi collections, how they are organized as a tree and their items and enables the developer to perform actions on these entities.&lt;br /&gt;
&lt;br /&gt;
Developers working on agents can use this perform the most common tasks such as&lt;br /&gt;
* retrieving items: see the context menu of collection entries, basically a call to the respective resource's '''retrieveItems()''' method&lt;br /&gt;
* retrieve item payloads: either by clicking on an item or, for certain type such as contacts by switching the item view's mode to the respective data type.&lt;br /&gt;
* copy and delete items: see the context menu of item entries&lt;br /&gt;
* modify items: e.g. by changing the serialized form of the item on the '''Raw Payload''' tab&lt;br /&gt;
without having to go through an end user application.&lt;br /&gt;
&lt;br /&gt;
Developers working on end user applications can use this to simulate respective changes by other clients and to check whether changes done by the application itself are correctly applied to the shared data.&lt;br /&gt;
&lt;br /&gt;
{{tip|If a newly added resource's collections do not show up in the collection tree, it might be necessary to explicitly synchronize it. This functionality is available on the '''Agents''' tab.}}}&lt;br /&gt;
&lt;br /&gt;
=== Monitoring Akonadi Communication ===&lt;br /&gt;
&lt;br /&gt;
[[Image:AkonadiConsoleTabDebugger.png]]&lt;br /&gt;
&lt;br /&gt;
This facility allows to monitor the Akonadi data protocol based communication between client sessions and the server. It contains commands, responses and the data transported between the two sides.&lt;br /&gt;
&lt;br /&gt;
{{note|Since this can slow down operations it is disabled by default and has to be enabled manually when needed.}}&lt;br /&gt;
&lt;br /&gt;
=== Access to the Server Database ===&lt;br /&gt;
&lt;br /&gt;
Akonadi uses a SQL database for keeping relations such as which collection an item is in, properties such as MIME types, etc. as well as cached item payload data.&lt;br /&gt;
&lt;br /&gt;
Since this is quite internal to the Akonadi server, it will most likely only be interesting to people working on Akonadi, not for developers working with Akonadi.&lt;br /&gt;
&lt;br /&gt;
[[Image:AkonadiConsoleTabDBBrowser.png]]&lt;br /&gt;
&lt;br /&gt;
The database browser can query and display the database tables used by Akonadi.&lt;br /&gt;
&lt;br /&gt;
[[Image:AkonadiConsoleDBConsole.png]]&lt;br /&gt;
&lt;br /&gt;
The database console enables developers to directly send commands to the database engine.&lt;br /&gt;
&lt;br /&gt;
= Debugging Akonadi Agents =&lt;br /&gt;
&lt;br /&gt;
Agents are automatically started by the Akonadi server and thus are not debugable from the start on by the usual methods. A similar problem is known from KIO slaves, the solution is similar as well.&lt;br /&gt;
&lt;br /&gt;
== Attaching gdb at startup ==&lt;br /&gt;
&lt;br /&gt;
Export the environment variable '''AKONADI_DEBUG_WAIT''' and put the agent type in there you want to debug. You only need to specify a part of the agent type, not the whole one. Example:&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
export AKONADI_DEBUG_WAIT=knut&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
When starting an agent of this type, you'll see the following debug output by the Akonadi server which is pretty much self-explanatory.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
============================================================&lt;br /&gt;
ProcessControl: Suspending process akonadi_knut_resouce&lt;br /&gt;
'gdb -pid 1234' to debug&lt;br /&gt;
'kill -SIGCONT 1234' to continue&lt;br /&gt;
============================================================&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Running an agent in valgrind ==&lt;br /&gt;
&lt;br /&gt;
Running an agent in valgrind is done in a similar way, you need to export '''AKONADI_VALGRIND''' and put the agent type in there.&lt;br /&gt;
&lt;br /&gt;
To specify the valgrind tool to use by exporting '''AKONADI_VALGRIND_SKIN''', the default is memcheck.&lt;br /&gt;
&lt;br /&gt;
Additional config options can be given using '''AKONADI_VALGRIND_OPTIONS'''.&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
&lt;br /&gt;
valgrind akonadi_cpntacs_resource using memcheck:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
export AKONADI_VALGRIND=akonadi_contacts_resource&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
To get the name of a resource, open akonadiconsole, select your resource and use the identifier being displayed at the bottom, but stip the _0 or similar from the end.&lt;br /&gt;
&lt;br /&gt;
Profile the persons resource using callgrind, disabling instrumentation on start for faster startup, and dumping the callgrind output to a custom file:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
export AKONADI_VALGRIND=akonadi_contacts_resource&lt;br /&gt;
export AKONADI_VALGRIND_SKIN=callgrind&lt;br /&gt;
export AKONADI_VALGRIND_OPTIONS=&amp;quot;--instr-atstart=no --callgrind-out-file=$HOME/callgrind-vcard.%p&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Akonadi Testing and Benchmark Infrastructure =&lt;br /&gt;
&lt;br /&gt;
The [[Projects/PIM/Akonadi/Testing|Akonadi Test]] project provides tools to run Akonadi tests in self-contained environments, i.e. separated from the developer's personal setup, as well as running automated tests, e.g. as part of a unit test suite.&lt;br /&gt;
&lt;br /&gt;
= Remote Debugging =&lt;br /&gt;
&lt;br /&gt;
When running Akonadi on embedded devices or on a non-UI system, it can be useful to connect to it with clients such as akonadiconsole from a remote system. However, the Akonadi server uses local sockets for communication and therefore does not allow this directly. Same for D-Bus, which is essential for Akonadi client-server communication as well as the various debugging features in akonadiconsole.&lt;br /&gt;
&lt;br /&gt;
The solution for this is the Akonadi Remote Debugging Server (Akonadi RDS), a small tunnel server that runs next to the Akonadi server. Starting it is trivial:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
$ akonadi_rds&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Now you need to tell your client how to connect to the remote instance. This is done by setting the following environment variables:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
$ export AKONADI_SERVER_ADDRESS=tcp:host=&amp;lt;server ip&amp;gt;,port=31415&lt;br /&gt;
$ export DBUS_SESSION_BUS_ADDRESS=tcp:host=&amp;lt;server ip&amp;gt;,port=31416&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Afterwards, just start your client as usual. Obviously, this is not limited to Akonadi but will just as well work for pure D-Bus connections with any D-Bus client, which can be quite useful by itself already.&lt;br /&gt;
&lt;br /&gt;
When using akonadiconsole, this can be done even easier by the following command, without the need of setting up the environment variables:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
$ akonadiconsole --remote &amp;lt;server ip&amp;gt;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Limitations ==&lt;br /&gt;
&lt;br /&gt;
There are currently a few limitations when using akonadi_rds (which at the same time can be seen as a TODO list ;) ):&lt;br /&gt;
&lt;br /&gt;
* External payload transfer is not supported. If you use Akonadi server with an enabled FS store, payloads greater than the configured threshold will not be transferred correctly. This is fixable in libakonadi with limited effort by not requesting external transfer when using TCP transfer.&lt;br /&gt;
* Remote access to Nepomuk is not yet support. Effort unknown, probably requires tunneling the Nepomuk socket in the same way as we do it for Akonadi and D-Bus, as well as adjustments in the Nepomuk library to support TCP sockets.&lt;br /&gt;
* Remote access to the underlying database is not yet support in akonadiconsole. Should be relatively easy to do for external DB servers which likely can be forwarded in the same way as Akonadi and D-Bus, no idea about Sqlite.&lt;br /&gt;
* '''D-Bus remote connections only work if server and client have the same UID. That for example means to connect to a Maemo5 N900 you need to use UID 29999 on the client.''' Possible fixes involve D-Bus protocol parsing, ie. unreasonable effort.&lt;br /&gt;
* The raw socket console in akonadiconsole does not work yet. Easily fixable by honoring the environment variable.&lt;br /&gt;
* (Re-)Starting Akonadi remotely does not work.&lt;br /&gt;
&lt;br /&gt;
[[Category:Akonadi]]&lt;br /&gt;
[[Category:PIM]]&lt;/div&gt;</summary>
		<author><name>Bernhard</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Projects/KDE_on_Windows/Meetings/Berlin_Meeting_September_2007</id>
		<title>Projects/KDE on Windows/Meetings/Berlin Meeting September 2007</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Projects/KDE_on_Windows/Meetings/Berlin_Meeting_September_2007"/>
				<updated>2010-01-28T11:03:52Z</updated>
		
		<summary type="html">&lt;p&gt;Bernhard: Fixed link to the dot story.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;During the last weekend, the KDE on Windows developers conducted their second real life meeting in the Trolltech offices in Berlin Adlershof, incorporating new developers and improving infrastructure. [http://dot.kde.org/2007/09/18/windows-developers-meet-berlin Read the dot story for details].&lt;br /&gt;
&lt;br /&gt;
Started: [[User:Jstaniek|jstaniek]] 11:40, 15 September 2007 (CEST)&lt;br /&gt;
&lt;br /&gt;
== Topics ==&lt;br /&gt;
*mirror related&lt;br /&gt;
#having two or more main directories on the server: one for current stable release, one for 'unstable/testing' one &lt;br /&gt;
#*we need unstable releases to get people test software early and often and on Windows -&amp;gt; there are snapshots available &lt;br /&gt;
#*'unstable' is the term for base system (kdewin32, kdelibs, kdebase); note that in turn, unstable _applications_ could be installed in a stable base system as it's the case on Linux&lt;br /&gt;
*installer related&lt;br /&gt;
#development installation requires tools having own installers -&amp;gt; rhabacker: The installer is able to handle different installation roots, so one install root can be used for development and one for end-user. There is no need for additional installers. &lt;br /&gt;
#*ideally this should not be the case for end-user installation, otherwise updating would be hard (user would be forced to uninstall prev. version of an external app and install a new one in the same place...) &lt;br /&gt;
#define directory format of the kde mirrors --&amp;gt; rhabacker: there is a directory structure available on the currently used mirrors, which is usable by the installer.&lt;br /&gt;
#USB memory sticks/CDs: it would be possible to run kde apps/infrastructure installed on the stick/CD in two ways:&lt;br /&gt;
##If the user's machine already contains KDE 4 runtime installed, it could be reused to run apps from the stick, and settings placed on the host computer could be reused&lt;br /&gt;
##If the user's computer contains no KDE-related stuff at all, default settings and .kde directory is used&lt;br /&gt;
#*In either case the default user expectation is that after plugging off the stick, no settings or files remain on the machine's filesystem &amp;lt;-really like that???&lt;br /&gt;
# extend the installer with the following features:&lt;br /&gt;
#** integrity checks (md5 package and file checks)  --&amp;gt; rhabacker: not started yet&lt;br /&gt;
#** install from cd/dvd --&amp;gt; rhabacker: kde can run directly from a cd or dvd by installing KDE on a harddisc or usb stick and then burning the installation directory complety to a cd/dvd &lt;br /&gt;
#** usb stick installation --&amp;gt; rhabacker: fixed&lt;br /&gt;
&lt;br /&gt;
*package related&lt;br /&gt;
#&amp;lt;del&amp;gt;Insert compiler name into package and manifest file name (msvc, gcc) --&amp;gt; chehrlic: Should be fixed now&amp;lt;/del&amp;gt;&lt;br /&gt;
* dbus related&lt;br /&gt;
#dbus for win32 is working mostly for recent kde applications, although there are some issues:&lt;br /&gt;
#*A service registered in dbus is not removed in case the related application crashes. This was detected with klauncher on msvc. &lt;br /&gt;
#*if dbus-daemon is killed, the related tcp port is blocked for reusage for some time and prevents that the dbus-daemon can be started again. The solution is documented in http://support.microsoft.com/?scid=kb%3Ben-us%3B177074&amp;amp;x=7&amp;amp;y=11&lt;br /&gt;
#*Efforts to implement win32 named pipe transport protocol were canceled because its need refactoring of the internal dbus api which was to much work yet.&lt;br /&gt;
#*There is a bug in dbus which prevents to list anonymous connections. This behavior can be verified with qdbusviewer. &lt;br /&gt;
#*There are some efforts required to merge the windows port into the dbus cvs, especialy refactoring the internal api. TODO: more details  &lt;br /&gt;
*build system related &lt;br /&gt;
# KDELibsDependencies.cmake contains absolute file pathes. They have to be variabled to be evaluated on configure time using kdelibs installation. The same belongs to KDEPimLibsDependencies.cmake &lt;br /&gt;
saroengels: possibly fixed&lt;br /&gt;
* source code related&lt;br /&gt;
# missing or not working parts in kdelibs&lt;br /&gt;
#* phonon needs a win32 implementation maybe using directx with uses a COM interface &lt;br /&gt;
saroengels: hopefully within qt 4.4&lt;br /&gt;
#* kioslaves are only working partially --&amp;gt; chehrlic: file, http and ftp are working better now, maybe we still have some unicode problems there.&lt;br /&gt;
# kde application state&lt;br /&gt;
#* kate - '@' could not be typed in --&amp;gt; chehrlic: fixed for msvc (don't know why it does not work with mingw)&lt;br /&gt;
#* konqueror - crashes --&amp;gt; chehrlic: fixed some of them recently&lt;br /&gt;
#* dolphin - error messages with could not display root and home dir, problems to contact nepomukdaemon &lt;br /&gt;
#* &amp;lt;del&amp;gt;umbrello - writing and printing does not work --&amp;gt; rhabacker: fixed&amp;lt;/del&amp;gt;&lt;br /&gt;
*compiler tools chain issues&lt;br /&gt;
# loading kde applications into gdb needs a long time to load and start when libraries are compiled with debug symbols. This makes it hard to debug. &lt;br /&gt;
# There are problems mixing msvc debug and release libraries resulting in runtime errors. One problem seems to be that the FILE structure differs between debug and release libraries. It has to be checked if there are workarounds for all developers.&lt;br /&gt;
# The update-mime-database step was taken out for make install DESTDIR builds according to pino toscano; there are two possibilities: try to convince the people to revert the changes or add a post-install script to the packages (I would append the informations into the emerge scripts myself).&lt;br /&gt;
&lt;br /&gt;
=== FAQ === &lt;br /&gt;
#Question: snapshot releases with debugging information - New developers may want to get the core libraries without a need for compilation from scratch, while still being able to step deeply into the its source code while debugging. This helps to enter into the project faster by fixing bugs, discovering structure of a given source code or extending features&lt;br /&gt;
#* Answer rhabacker: saroengels has provided mingw snapshot releases with debug informations on http://www.saroengels.net/kde-windows/. Msvc snapshots are probably not possible because the debug msvc runtime isn't distributable. &lt;br /&gt;
#Question: Could we have release versions with debug information? On msvc, this could help to achieve the goal mentioned in the above point while it is still possible to link release binaries with and without debug information. &lt;br /&gt;
#* Answer chehrlic: the official releases are now build in Release mode with debug informations&lt;br /&gt;
#Question: Should not the distribution of the file be reduced by keeping a snapshot of all required files on our server(s) - this would make mirroring possible&lt;br /&gt;
#* Answer rhabacker: mirroring is possible already now because the installer is able to fetch package online from external sites. If those external packages would not be available in the future it could be easily added to the mirrors. &lt;br /&gt;
#Question: is there a central list of mirrors available ? &lt;br /&gt;
#* Answer rhabacker: Yes a list of all available mirrors is located on the main kde on windows mirror http://www.winkde.org/pub/kde/ports/win32/mirrors.lst. This file is used by the installer to let the user choosing a mirror. &lt;br /&gt;
#Question: We need someone using Vista on daily basis to test kdeinstaller. Until then Vista is not supported? &lt;br /&gt;
#* Answer chehrlic: I got a vista license from Adriaan de Groot and after a system upgrade vista will be supported. Until now we should deny any vista support&lt;br /&gt;
#* Answer saroengels: we have several users on vista, probably shakes was one of them, I cannot remember though.&lt;br /&gt;
&lt;br /&gt;
=== KDE on Windows can be called the first official KDE-own distribution ===&lt;br /&gt;
&lt;br /&gt;
[[Category:MS Windows]]&lt;br /&gt;
[[Category:Meetings]]&lt;/div&gt;</summary>
		<author><name>Bernhard</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Contribute/Get_a_Contributor_Account</id>
		<title>Contribute/Get a Contributor Account</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Contribute/Get_a_Contributor_Account"/>
				<updated>2009-12-23T14:24:52Z</updated>
		
		<summary type="html">&lt;p&gt;Bernhard: /* Who Can Apply For a KDE SVN Account? */ Typo fixed.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Template:I18n/Language Navigation Bar|Contribute/Get a SVN Account}}&lt;br /&gt;
This tutorial is about how to apply for a SVN account for KDE.&lt;br /&gt;
&lt;br /&gt;
Note: if you only need a GIT account but no SVN account, simply request that your gitorious account to be added to the kde-developers group, by filing a [https://bugs.kde.org/enter_sysadmin_request.cgi sysadmin request], using the component &amp;quot;gitorious&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
== Notations ==&lt;br /&gt;
&lt;br /&gt;
* The word ''SVN'' applies to all SVN servers.&lt;br /&gt;
* The phrase ''KDE SVN'' refers only to KDE's SVN server.&lt;br /&gt;
* The phrase ''anonymous SVN'' means KDE's anonymous SVN mirrors.&lt;br /&gt;
&lt;br /&gt;
== What is KDE SVN? ==&lt;br /&gt;
&lt;br /&gt;
To have write access to KDE SVN, you have to use the main SVN server of KDE. (Anonymous SVN uses mirrors of this server. SVN does not allow you to read from one server and write to another.)&lt;br /&gt;
&lt;br /&gt;
To be able to use the main KDE SVN server, you need an account there. An account is made up of a ''username'' (normally your family name), a password and an email address. The username is for getting in, the password for authenticating and the email address for knowing who to contact if another developer wants to contact the account holder. (The username is sometimes known also as the ''login''.)&lt;br /&gt;
&lt;br /&gt;
A KDE SVN account allows you to write to nearly anywhere in the KDE SVN. However, there are exceptions:&lt;br /&gt;
* the KDE SVN internals&lt;br /&gt;
* the admin directory&lt;br /&gt;
* the www module (exceptions can be made for this.)&lt;br /&gt;
&lt;br /&gt;
'''Note''': you can see the accounts in [http://websvn.kde.org/trunk/kde-common/accounts kde-common/accounts]. That is the list of all accounts. Yes, '''the account list is public''', for example on [http://websvn.kde.org WebSVN].&lt;br /&gt;
&lt;br /&gt;
To access the main KDE SVN, you have two possibilities, with different ways (protocols) to encrypt transmitted data:&lt;br /&gt;
* using HTTPS-protocol&lt;br /&gt;
* using SSH-protocol&lt;br /&gt;
If you are behind a firewall, you need to use the HTTPS-protocol, you can't use the SSH-protocol.&lt;br /&gt;
&lt;br /&gt;
If you have never used ssh before, you might prefer ''HTTPS'', it's a bit simpler to set up. &lt;br /&gt;
&lt;br /&gt;
However it seems that currently svn-over-ssh is really much faster than svn-over-https, so that is a good reason for using ssh.&lt;br /&gt;
&lt;br /&gt;
The password you will need to create depends on the above:&lt;br /&gt;
* a normal password for accessing by HTTPS, or&lt;br /&gt;
* a SSH public key for accessing by SSH&lt;br /&gt;
&lt;br /&gt;
== Who Can Apply For a KDE SVN Account? ==&lt;br /&gt;
&lt;br /&gt;
Normally, any developer who has done some work on KDE can apply for a KDE SVN account.&lt;br /&gt;
&lt;br /&gt;
Translators should get approval from their team leader so that they can organize how the work is being done in his/her team. Please mention the approval from the team leader when requesting the account.&lt;br /&gt;
&lt;br /&gt;
Please also [[Policies/SVN Commit Policy|read the KDE SVN commit policy]]. You must accept these rules when using your future KDE SVN account. Please also familiarize yourself with the [http://www.kde.org/code-of-conduct/ KDE Code of Conduct] which describes the social foundations within KDE.&lt;br /&gt;
&lt;br /&gt;
Also please apply for an account only if you think that you will work on KDE for a somewhat longer time. If you know that you will only work for a couple of weeks and then never again, please consider not applying for a KDE SVN account but still, do continue to send patches.&lt;br /&gt;
&lt;br /&gt;
The limitations are not there to exclude anyone - they are there to ensure that the maintenance of accounts remains reasonable.&lt;br /&gt;
&lt;br /&gt;
Of course, to be clear: ''the [mailto:sysadmin@kde.org KDE's sysadmins] have the last word about whether or not to create a KDE SVN account for somebody''.&lt;br /&gt;
&lt;br /&gt;
== Access via HTTPS ==&lt;br /&gt;
&lt;br /&gt;
=== Choosing a Password ===&lt;br /&gt;
&lt;br /&gt;
First of all, you have to choose a password. If possible, one that you do not use for anything else on your computer (as the SVN account has nothing to do with any other account on your computer.)&lt;br /&gt;
&lt;br /&gt;
In any case, please use ''common precautions'' about passwords.&lt;br /&gt;
&lt;br /&gt;
Strong passwords:&lt;br /&gt;
* have both upper and lower case letters.&lt;br /&gt;
* have digits and/or punctuation characters as well as letters.&lt;br /&gt;
* are easy to remember, so they do not have to be written down.&lt;br /&gt;
* are at least eight characters long.&lt;br /&gt;
&lt;br /&gt;
A strong password is '''not''':&lt;br /&gt;
&lt;br /&gt;
* Personal information such as your name, phone number, social security number, birth date or address. Even names of acquaintances and the like should not be used.&lt;br /&gt;
* Any word in the dictionary, or based closely on such a word (such as a word spelled backwards).&lt;br /&gt;
* A word with letters simply replaced by digits. For example, bl0wf1sh is not a strong password.&lt;br /&gt;
* Easy to spot while you're typing them in. Passwords like 12345, qwerty (i.e., all keys right next to each other), or nnnnnn should be avoided.&lt;br /&gt;
&lt;br /&gt;
All the rules are not here to annoy you but to guarantee a certain level of security for the KDE SVN server.&lt;br /&gt;
&lt;br /&gt;
=== Getting the Encoded Password ===&lt;br /&gt;
&lt;br /&gt;
Now that you have your password, you need to encode it, not to have to send it in clear. (Note: this encryption is the same type of encryption used by many Linux distributions for their {{path|/etc/shadow}} file.)&lt;br /&gt;
&lt;br /&gt;
If your password is 8 characters long, one way to do this would be using Perl: &amp;lt;!-- &amp;lt;code&amp;gt;perl -e &amp;quot;print crypt('&amp;amp;lt;your password&amp;amp;gt;','xy'),\&amp;quot;\n\&amp;quot;;&amp;quot;&amp;lt;/code&amp;gt; --&amp;gt;&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;perl -e 'print crypt(&amp;quot;&amp;lt;your password&amp;gt;&amp;quot;,&amp;quot;\$1\$xyz\$&amp;quot;).&amp;quot;\n&amp;quot;;'&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
where &amp;amp;lt;your password&amp;amp;gt; has to be replaced with your password and ''xyz'' with 3 to 8 random characters of your choice. Leave the \$1\$ before it and the \$ after it.&lt;br /&gt;
&lt;br /&gt;
(Hint: $ must be &amp;quot;escaped&amp;quot; with a backslash. For instance: If your password is &amp;quot;abc$123&amp;quot; you have to replace &amp;amp;lt;your password&amp;amp;gt; with &amp;quot;abc\$123&amp;quot;. )&lt;br /&gt;
&lt;br /&gt;
'''Note''': do not worry to find your choice of &amp;amp;lt;xyz&amp;amp;gt; at the start of the encoded password, it is meant to be so.&lt;br /&gt;
&lt;br /&gt;
Another solution is to create a dummy account on a Unix system where you have administrator access. You can use the built-in user management programs of your distribution and search for the account in your file {{path|/etc/shadow}} or you can use the following code:&lt;br /&gt;
 useradd dummy; passwd dummy; grep dummy /etc/passwd /etc/shadow; userdel dummy&lt;br /&gt;
&lt;br /&gt;
In any case, the password is then the part between the first ':' and the second ':'. (Note: not a star! (*) That means that it is not the password!)&lt;br /&gt;
&lt;br /&gt;
'''Note''': This might not work anymore with newer systems because they encrypt the password with a hash algorithm that is not (yet) supported by the kde server. To be save, use the perl script&lt;br /&gt;
&lt;br /&gt;
Save the encoded password so that you can use it later in the application.&lt;br /&gt;
&lt;br /&gt;
== Access via SSH ==&lt;br /&gt;
&lt;br /&gt;
You need a SSH public key in order to access your KDE SVN account with SSH. If you already have one, you can skip the next subsection and go to [[#Setting up the SVN+SSH protocol|Setting up the SVN+SSH protocol]].&lt;br /&gt;
&lt;br /&gt;
=== Generating the SSH keys ===&lt;br /&gt;
&lt;br /&gt;
To be able to use your KDE SVN account with SSH, you need a SSH public key. Please notice that it is '''not''' a GPG (OpenPGP) key, which is completely unrelated!&lt;br /&gt;
&lt;br /&gt;
The password in the sense of this documentation is the '''public key''' that you are creating.&lt;br /&gt;
&lt;br /&gt;
For more information on how to create a pair o SSH keys, please refer to a [http://www.openbsd.org/cgi-bin/man.cgi?query=ssh-keygen SSH documentation] or book.&lt;br /&gt;
&lt;br /&gt;
In short, the command to create a pair of keys is '''ssh-keygen''' and it requires the type of key you will create, either DSA or RSA - both are fine.&lt;br /&gt;
&lt;br /&gt;
To create a new pair of keys, use &amp;lt;code bash&amp;gt;ssh-keygen -t dsa&amp;lt;/code&amp;gt; or &amp;lt;code bash&amp;gt;ssh-keygen -t rsa&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
There is also a type called RSA1 which was used in version 1 of the SSH protocol. See the [http://www.openbsd.org/cgi-bin/man.cgi?query=ssh-keygen ssh documentation] for more details.&lt;br /&gt;
&lt;br /&gt;
You can then accept the default filename for your key (either {{path|$HOME/.ssh/id_dsa}} or {{path|$HOME/.ssh/id_rsa}}, depending on the type of key you have chosen). After that, a passphrase is asked. It is recommended that you do not leave it blank.&lt;br /&gt;
&lt;br /&gt;
Now that you are finished generating your key pair, you will have two files: a private key and a public key. If you have accepted the default filename, they will be respectively {{path|$HOME/.ssh/id_dsa}} and {{path|$HOME/.ssh/id_dsa.pub}} or {{path|$HOME/.ssh/id_rsa}} and {{path|$HOME/.ssh/id_rsa.pub}}, depending on the type of key you have specified.&lt;br /&gt;
&lt;br /&gt;
The private key '''must''' remain secret, do not publish it to anyone under any circumstance.&lt;br /&gt;
&lt;br /&gt;
The public key can be published and shall be sent when you are applying for a KDE SVN account.&lt;br /&gt;
&lt;br /&gt;
You should also set up &amp;lt;tt&amp;gt;ssh-agent&amp;lt;/tt&amp;gt; so you do not have to type the password every time you connect via SSH. There are several tutorials available explaining how to do this, for example [http://mah.everybody.org/docs/ssh this one]. [http://www.gentoo.org/proj/en/keychain Keychain] is a program that makes this task easier.&lt;br /&gt;
&lt;br /&gt;
'''Note''': if you already have an ssh key, you can just use the existing key instead of creating a new one.&lt;br /&gt;
&lt;br /&gt;
{{tip|&lt;br /&gt;
If you want to use SVN with SSH with another user than the one who created the keys, you need to copy &amp;lt;tt&amp;gt;$HOME/.ssh/id_dsa.pub&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;$HOME/.ssh/id_dsa&amp;lt;/tt&amp;gt; or &amp;lt;tt&amp;gt;$HOME/.ssh/id_rsa.pub&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;$HOME/.ssh/id_rsa&amp;lt;/tt&amp;gt; to the other user's &amp;lt;tt&amp;gt;$HOME/.ssh&amp;lt;/tt&amp;gt; directory.&lt;br /&gt;
&lt;br /&gt;
You should probably also backup those files.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Setting up the SVN+SSH protocol ===&lt;br /&gt;
&lt;br /&gt;
Once you created your key, you'll have to tell SSH that this one should be used for all connections to KDE sites. Add the following lines to the &amp;lt;tt&amp;gt;~/.ssh/config&amp;lt;/tt&amp;gt; file. Replace USERNAME with yours.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Host *.kde.org&lt;br /&gt;
        User USERNAME&lt;br /&gt;
        IdentityFile ~/.ssh/id_dsa&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The linked IdentityFile must belong to the public key you send in when applying for the SVN account. But it is ''not'' the public key (&amp;lt;tt&amp;gt;*.pub&amp;lt;/tt&amp;gt;).&lt;br /&gt;
&lt;br /&gt;
== Apply for an account ==&lt;br /&gt;
&lt;br /&gt;
Now you are ready to apply for for a KDE SVN account. Go to [https://sysadmin.kde.org/svnaccount/ https://sysadmin.kde.org/svnaccount/] and fill out the form.&lt;br /&gt;
&lt;br /&gt;
You will need to enter your name and an e-mail address, which has to be your own (a normal address or a KDE Mail address). Of course, do not forget that '''this email address becomes public''' (at least by [http://websvn.kde.org WebSVN]) so you will unfortunately get spam.&lt;br /&gt;
&lt;br /&gt;
Also note that this email address should be the same one that you use on [http://bugs.kde.org bugs.kde.org]. If you don't have an account in [http://bugs.kde.org bugs.kde.org], please create one so that it can be given usual developer rights. Closing bug reports with keywords in commit comments only works if the email address of your Subversion and [http://bugs.kde.org bugs.kde.org] accounts match.&lt;br /&gt;
&lt;br /&gt;
After that, you must choose a username for your KDE SVN account between the suggestions presented to you. Please notice it is not possible to propose something else such as a nickname, as the username must be as close as possible to someone's real name.&lt;br /&gt;
&lt;br /&gt;
If you ask for a KDE email address one day, this will be the base for your address. For example: &amp;lt;tt&amp;gt;username@kde.org&amp;lt;/tt&amp;gt;. (Note, however, that KDE email addresses are not granted so easily anymore, as too many people have ranted with a KDE address and other people thought that it was the official position of the KDE Team. In the meantime, [http://www.kdemail.net KDE Mail] was created for if you need a permanent address.)&lt;br /&gt;
&lt;br /&gt;
Then you have to specify the password that you will use. If you will prefer SSH access, provide your public key; if you want HTTPS access, enter your encrypted password.&lt;br /&gt;
&lt;br /&gt;
The form also holds a field ''Why do you want an account?'', where you can explain what you want to do with your future KDE SVN account, like for example developing a certain application, making documentations or being the team leader of a translation.&lt;br /&gt;
&lt;br /&gt;
After filling out the form, you will receive an email with a link to click on. This is done to verify your email address. The application is not complete before you click on it. &lt;br /&gt;
&lt;br /&gt;
Also note that the form will ask you who has encouraged you to apply. He or she will also get an email to verify your request.&lt;br /&gt;
&lt;br /&gt;
== Updating Existing Account ==&lt;br /&gt;
&lt;br /&gt;
If you already have a KDE SVN account but want to update the ssh key or https password, [https://bugs.kde.org/enter_sysadmin_request.cgi send a request] to the sysadmins, selecting the &amp;quot;svn account&amp;quot; component and attaching your ssh key or mentioning your new password.&lt;br /&gt;
&lt;br /&gt;
== And Now? ==&lt;br /&gt;
&lt;br /&gt;
After having sent the form and clicking the link in the email, you have to wait for the answer (typically within two or three days).&lt;br /&gt;
&lt;br /&gt;
Once you have confirmation that your account has been created, you need to adapt your local copy to the new server. See the [[Contribute/First Steps with your KDE SVN Account|next tutorial]] for your first steps with your new account.&lt;br /&gt;
&lt;br /&gt;
Please add your geographical location (what country are you in?) and other details at the [http://commit-digest.org/data/ Commit Digest data page] so that the Commit Digest can accurately reflect who is working where.&lt;/div&gt;</summary>
		<author><name>Bernhard</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Projects/Mobile</id>
		<title>Projects/Mobile</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Projects/Mobile"/>
				<updated>2009-10-26T20:29:58Z</updated>
		
		<summary type="html">&lt;p&gt;Bernhard: Removed the wikipedia hint as there are not articles for all mentioned keywords. (e.g. diablo or garage), added the new kde-maemo@ mailinglist.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Overview ==&lt;br /&gt;
* ''garage'' is where the projects for maemo are hosted. Compare it with sourceforge.&lt;br /&gt;
* ''diablo'' is the version of maemo. Compare it with lenny.&lt;br /&gt;
* [http://maemo.org/intro/platform/ '''maemo'''] is the core software stack that runs on mobile devices like Nokia's N810 or N900&lt;br /&gt;
* ''scratchbox'' is a cross-compiling environment to enable you to create software for maemo on an i386.&lt;br /&gt;
* ''busybox'' is a single binary that allows you to run commands like ls, cat and bunzip2&lt;br /&gt;
* ''hildon'' is a desktop like plasma&lt;br /&gt;
&lt;br /&gt;
There is a [https://mail.kde.org/mailman/listinfo/kde-maemo kde-maemo mailinglist].&lt;br /&gt;
&lt;br /&gt;
== KDE on Maemo ==&lt;br /&gt;
&lt;br /&gt;
This page is for collecting information about getting KDE running on the Maemo platform used by the Nokia mobile devices N800, N810 and N900.&lt;br /&gt;
&lt;br /&gt;
* Instructions on getting a Maemo development environment on openSuSE http://en.opensuse.org/Maemo&lt;br /&gt;
* There is also a KDE on maemo project at http://kde.garage.maemo.org/&lt;br /&gt;
* [http://www.forwardbias.in/data/articles/qt_on_maemo.txt Tutorial how to get Qt installed on maemo]&lt;br /&gt;
* [[Projects/Maemo/kdepim|Tutorial how to compile KDEPIM on maemo]]&lt;br /&gt;
* [[Projects/Maemo/KDE4_on_n810|Tutorial how to get KDE installed on Maemo]]&lt;br /&gt;
* [[Projects/Maemo/KDE4_on_Mer|Tutorial how to get KDE installed on Mer]]&lt;br /&gt;
&lt;br /&gt;
=== Some blogs entries about KDE on Maemo ===&lt;br /&gt;
&lt;br /&gt;
''Most recent on top''&lt;br /&gt;
&lt;br /&gt;
* [http://www.kdedevelopers.org/node/3672 Marijn Kruisselbrink: Having fun with qemu]&lt;br /&gt;
* [http://www.kdedevelopers.org/node/3662 Marijn Kruisselbrink: KOffice on Maemo]&lt;br /&gt;
* [http://blog.forwardbias.in/2008/08/n810-is-awesome.html Girish Ramakrishnan: N810 is awesome]&lt;br /&gt;
* [http://www.kdedevelopers.org/node/3628 Fredrik Gladhorn: Various Qt apps]&lt;br /&gt;
* [http://www.kdedevelopers.org/node/3624 Marijn Kruisselbrink: KDE packages for maemo]&lt;br /&gt;
* [http://www.notmart.org/index.php/Software/Misc_plasmoids_on_n810 Marco Martin: Misc plasmoids on n810]&lt;br /&gt;
* [http://www.notmart.org/index.php/BlaBla/Akademy,_810_and_stuffs Marco Martin: Akademy, 810 and stuffs]&lt;br /&gt;
* [http://www.kdedevelopers.org/node/3623 Richard Dale: Building Ruby on the N810]&lt;br /&gt;
* [http://www.fredemmott.co.uk/blog_156 Fred Emmott: Ogg/Vorbis on N810]&lt;br /&gt;
* [http://www.omat.nl/drupal/content/N810-and-OpenStreetMap-and-toma Tom Albers: N810 and OpenStreetMap and toma]&lt;br /&gt;
* [http://tsdgeos.blogspot.com/2008/08/maemo-scratchbox-on-amd64.html Albert Astals Cid: Maemo scratchbox on amd64]&lt;br /&gt;
* [http://blogs.forum.nokia.com/blog/kate-alholas-forum-nokia-blog/maemo/2008/08/13/akademy-2008-embedded-day Kate Alhola: Akademy 2008 Embedded day] &lt;br /&gt;
* [http://www.gnuton.org/blog/2008/07/qt-4-maemo-the-new-experience/ Antonio Aloisio: Qt 4 Maemo: the new experience.]&lt;br /&gt;
* [http://www.kdedevelopers.org/node/3605 Marijn Kruisselbrink: Getting KDE on an n810.]&lt;br /&gt;
* [http://www.kdedevelopers.org/node/3575 Marijn Kruisselbrink: Sound on Maemo]&lt;br /&gt;
* [http://www.kdedevelopers.org/node/3546 Marijn Kruisselbrink: Plasma on Maemo]&lt;/div&gt;</summary>
		<author><name>Bernhard</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Projects/Mobile</id>
		<title>Projects/Mobile</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Projects/Mobile"/>
				<updated>2009-10-26T20:26:11Z</updated>
		
		<summary type="html">&lt;p&gt;Bernhard: Added the N900. Clarified the explanation of Maemo a bit and linked maemo.org&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Overview ==&lt;br /&gt;
* ''garage'' is where the projects for maemo are hosted. Compare it with sourceforge.&lt;br /&gt;
* ''diablo'' is the version of maemo. Compare it with lenny.&lt;br /&gt;
* [http://maemo.org/intro/platform/ '''maemo'''] is the core software stack that runs on mobile devices like Nokia's N810 or N900&lt;br /&gt;
* ''scratchbox'' is a cross-compiling environment to enable you to create software for maemo on an i386.&lt;br /&gt;
* ''busybox'' is a single binary that allows you to run commands like ls, cat and bunzip2&lt;br /&gt;
* ''hildon'' is a desktop like plasma&lt;br /&gt;
&lt;br /&gt;
For more information see wikipedia.&lt;br /&gt;
&lt;br /&gt;
== KDE on Maemo ==&lt;br /&gt;
&lt;br /&gt;
This page is for collecting information about getting KDE running on the Maemo platform used by the Nokia mobile devices N800, N810 and N900.&lt;br /&gt;
&lt;br /&gt;
* Instructions on getting a Maemo development environment on openSuSE http://en.opensuse.org/Maemo&lt;br /&gt;
* There is also a KDE on maemo project at http://kde.garage.maemo.org/&lt;br /&gt;
* [http://www.forwardbias.in/data/articles/qt_on_maemo.txt Tutorial how to get Qt installed on maemo]&lt;br /&gt;
* [[Projects/Maemo/kdepim|Tutorial how to compile KDEPIM on maemo]]&lt;br /&gt;
* [[Projects/Maemo/KDE4_on_n810|Tutorial how to get KDE installed on Maemo]]&lt;br /&gt;
* [[Projects/Maemo/KDE4_on_Mer|Tutorial how to get KDE installed on Mer]]&lt;br /&gt;
&lt;br /&gt;
=== Some blogs entries about KDE on Maemo ===&lt;br /&gt;
&lt;br /&gt;
''Most recent on top''&lt;br /&gt;
&lt;br /&gt;
* [http://www.kdedevelopers.org/node/3672 Marijn Kruisselbrink: Having fun with qemu]&lt;br /&gt;
* [http://www.kdedevelopers.org/node/3662 Marijn Kruisselbrink: KOffice on Maemo]&lt;br /&gt;
* [http://blog.forwardbias.in/2008/08/n810-is-awesome.html Girish Ramakrishnan: N810 is awesome]&lt;br /&gt;
* [http://www.kdedevelopers.org/node/3628 Fredrik Gladhorn: Various Qt apps]&lt;br /&gt;
* [http://www.kdedevelopers.org/node/3624 Marijn Kruisselbrink: KDE packages for maemo]&lt;br /&gt;
* [http://www.notmart.org/index.php/Software/Misc_plasmoids_on_n810 Marco Martin: Misc plasmoids on n810]&lt;br /&gt;
* [http://www.notmart.org/index.php/BlaBla/Akademy,_810_and_stuffs Marco Martin: Akademy, 810 and stuffs]&lt;br /&gt;
* [http://www.kdedevelopers.org/node/3623 Richard Dale: Building Ruby on the N810]&lt;br /&gt;
* [http://www.fredemmott.co.uk/blog_156 Fred Emmott: Ogg/Vorbis on N810]&lt;br /&gt;
* [http://www.omat.nl/drupal/content/N810-and-OpenStreetMap-and-toma Tom Albers: N810 and OpenStreetMap and toma]&lt;br /&gt;
* [http://tsdgeos.blogspot.com/2008/08/maemo-scratchbox-on-amd64.html Albert Astals Cid: Maemo scratchbox on amd64]&lt;br /&gt;
* [http://blogs.forum.nokia.com/blog/kate-alholas-forum-nokia-blog/maemo/2008/08/13/akademy-2008-embedded-day Kate Alhola: Akademy 2008 Embedded day] &lt;br /&gt;
* [http://www.gnuton.org/blog/2008/07/qt-4-maemo-the-new-experience/ Antonio Aloisio: Qt 4 Maemo: the new experience.]&lt;br /&gt;
* [http://www.kdedevelopers.org/node/3605 Marijn Kruisselbrink: Getting KDE on an n810.]&lt;br /&gt;
* [http://www.kdedevelopers.org/node/3575 Marijn Kruisselbrink: Sound on Maemo]&lt;br /&gt;
* [http://www.kdedevelopers.org/node/3546 Marijn Kruisselbrink: Plasma on Maemo]&lt;/div&gt;</summary>
		<author><name>Bernhard</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Development/Tutorials/Debugging/Debugging_on_MS_Windows</id>
		<title>Development/Tutorials/Debugging/Debugging on MS Windows</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Development/Tutorials/Debugging/Debugging_on_MS_Windows"/>
				<updated>2009-07-09T20:51:11Z</updated>
		
		<summary type="html">&lt;p&gt;Bernhard: /* MinGW debugging hints */ Added the hint that continue is needed after and attach.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=General Hints=&lt;br /&gt;
==Debugging with WinDbg==&lt;br /&gt;
WinDbg, distributed as a part of ''Debugging Tools for Windows'', is a user-mode and kernel-mode debugger with a graphical interface. It can also be used to debug user-mode crash dumps.  It uses the Microsoft Visual Studio debug symbol formats for source-level debugging. [[Projects/KDE_on_Windows/Tools#WinDbg|more...]]&lt;br /&gt;
&lt;br /&gt;
==Debugging with DebugView==&lt;br /&gt;
Debug messages (logs) generated by kDebug() and kWarning() are not visible on MS Windows unless application is compiled in so-called CONSOLE subsystem. To show these messages also in WINDOWS subsystem, you can use DebugView tool, coming from SysInternals (currently acquired by Microsoft). [[Projects/KDE_on_Windows/Tools#DebugView|more...]]&lt;br /&gt;
&lt;br /&gt;
==Debugging kioslaves==&lt;br /&gt;
kioslaves on windows are started by klauncher (or kio) as separate kioslave processes. The kioslave executable then loads the related kioslave dll dynamically. &lt;br /&gt;
&lt;br /&gt;
=== Using KDE_SLAVE_DEBUG_WAIT variable ===&lt;br /&gt;
To debug kioslaves:&lt;br /&gt;
#Set the KDE_SLAVE_DEBUG_WAIT environment variable in a current cmd.exe shell to the name of the kioslave's protocol (the first parameter of KIO::SlaveBase() constructor), e.g.&amp;lt;pre&amp;gt;set KDE_SLAVE_DEBUG_WAIT=file&amp;lt;/pre&amp;gt;&lt;br /&gt;
#Terminate &amp;lt;tt&amp;gt;klauncher&amp;lt;/tt&amp;gt; process so it can be restarted.&lt;br /&gt;
#Any application you want to debug at kioslave level have to be executed within the scope of the current environment (cmd.exe), what also means that if you want to use development environment, you have to do that in the environment as well, e.g. for MSVC Express, by typing &amp;lt;tt&amp;gt;vcexpress&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
If the kioslave is requested the next time, a debugger will be started and attached to the kioslave process immediatly before the kioslave's kdemain() function. &lt;br /&gt;
&lt;br /&gt;
On mingw platform gdb is launched and connected to the kioslave process. On msvc platforms the currently installed just-in-time debugger is used. This may be msvc's IDE or the [[Projects/KDE_on_Windows/Tools#WinDbg|WinDbg debugger]].  The latter could be set as jit-debugger by running 'windbg -I' command (capital -I like ICE, see [http://msdn2.microsoft.com/en-us/library/cc266343.aspx]).&lt;br /&gt;
&lt;br /&gt;
=== Using KDE_SLAVE_DEBUG_POPUP variable ===&lt;br /&gt;
Alternatively, you can set &amp;lt;tt&amp;gt;KDE_SLAVE_DEBUG_POPUP&amp;lt;/tt&amp;gt; variable instead of &amp;lt;tt&amp;gt;KDE_SLAVE_DEBUG_WAIT&amp;lt;/tt&amp;gt;. This will display a native message box so developer you can attach the debugger to the KIO slave process and click OK. No DebugBreak() is invoked. Just click OK without attaching to continue using the KIO slave without debugging.&lt;br /&gt;
&lt;br /&gt;
=== Notes ===&lt;br /&gt;
*You can set, say, the variable to 'file' for the kio_file slave, '''but''' set it to 'smtps' for the kio_smtp is you want to debug smtp protocol secured with SSL.&lt;br /&gt;
*(Vista only): ''kioslave.exe has stopped working'' message dialog can appear instead of offer for starting the debugger. Reason: Just-In-Time (JIT) Debugging of an elevated process will fail ([http://msdn2.microsoft.com/en-us/vstudio/aa964140.aspx#question20a msdn link]) apparently for security reasons. Either:&lt;br /&gt;
**Use &amp;lt;tt&amp;gt;KDE_SLAVE_DEBUG_POPUP&amp;lt;/tt&amp;gt; instead of &amp;lt;tt&amp;gt;KDE_SLAVE_DEBUG_WAIT&amp;lt;/tt&amp;gt;. See the [[#Using_KDE_SLAVE_DEBUG_POPUP_variable|Using KDE_SLAVE_DEBUG_POPUP variable]] above for more info.&lt;br /&gt;
**(not possible under msvc 2005): start applications and klauncher without administration permissions or attach the debugger manually before the debugger catches unhandled exceptions or an user-defined breakpoint (DebugBreak()). &lt;br /&gt;
*You may want to inspect kioslave sources [http://lxr.kde.org/source/KDE/kdelibs/kinit/kioslave.cpp] for more informations.&lt;br /&gt;
&lt;br /&gt;
== Checking dependency of shared libraries ==&lt;br /&gt;
Dependency Walker is a free utility that scans any 32-bit or 64-bit Windows module (exe, dll, ocx, sys, etc.) and builds a hierarchical tree diagram of all dependent modules. [[Projects/KDE_on_Windows/Tools#Dependency_Walker|more...]]&lt;br /&gt;
&lt;br /&gt;
= MS Visual Studio hints =&lt;br /&gt;
&lt;br /&gt;
== Using MS Visual Studio environment for just debugging ==&lt;br /&gt;
&lt;br /&gt;
Let's assume you're using command line tools (typically CMake) and want to use MS Visual Studio environment for just debugging. You don't need to create msvc project for your KDE application to be able to start debugging. &lt;br /&gt;
&lt;br /&gt;
* compile and working executable version of your appliation (compiled in debug mode)&lt;br /&gt;
* run msvc environment&lt;br /&gt;
* execute ''File-&amp;gt;Open project''&lt;br /&gt;
* pick your exe file in the file window&lt;br /&gt;
* you can set command line arguments as usual, by pick ''Project-&amp;gt;...Properties'' command and enter all of them it in ''Command Arguments'' field&lt;br /&gt;
* if you have libraries placed in other directories than your application's .exe file, and you want to step into these libraries' source code while debugging, pick ''Project-&amp;gt;...Properties'' command and enter paths to these directories in ''Symbol Path'' field&lt;br /&gt;
* hit F5 to run the application start the application or F10 to start step by step&lt;br /&gt;
* all debugging functions like setting breakpoints will be available, so you can open source code in the integrated editor and press F9 where needed&lt;br /&gt;
* you can even edit your source code but to compile it, do it with your external, command line tools. You cannot compile the application in the msvc environment because you have not defined a project file&lt;br /&gt;
* before compiling your application, stop debugging session to unlock binaries; no need to close msvc window&lt;br /&gt;
* after compilation you can start debugging again&lt;br /&gt;
* on exit you will be asked to save .sln file (so-called ''solution file'') with your debugging session -- do it and you will be able just to click the .sln file to start your debugging again&lt;br /&gt;
* it's recommended to save the .sln file in the .exe file directory&lt;br /&gt;
* next time you will run msvc environment, you can see name of your application's .sln file in ''File-&amp;gt;Recent Projects'' submenu - you can click it to load your debugging session&lt;br /&gt;
&lt;br /&gt;
== Attaching to running application ==&lt;br /&gt;
&lt;br /&gt;
If you have your application is already running, you can attach to it and then start debugging. &lt;br /&gt;
&lt;br /&gt;
* run msvc environment&lt;br /&gt;
* execute ''Debug-&amp;gt;processes''&lt;br /&gt;
* select your from the processes list and click &amp;quot;Attach...&amp;quot;&lt;br /&gt;
* msvc environment will load your .sln file if it exists in the same directory as the .exe file, so your breakpoints set in previous session will be active again&lt;br /&gt;
* your program will stop on any breakpoint you have set&lt;br /&gt;
&lt;br /&gt;
== One-step attaching to running application ==&lt;br /&gt;
You can create a macro that automates the task. See [http://blogs.msdn.com/jimgries/archive/2005/11/30/498264.aspx].&lt;br /&gt;
&lt;br /&gt;
== Memory Values ==&lt;br /&gt;
If you are using the debug heap, memory is initialized and cleared with special values. Most interesting values are: &lt;br /&gt;
* 0xCDCDCDCD - Allocated in heap, but not initialized&lt;br /&gt;
* 0xDDDDDDDD - Released heap memory.&lt;br /&gt;
* 0xFDFDFDFD - &amp;quot;NoMansLand&amp;quot; fences automatically placed at boundary of heap memory. Should never be overwritten. If you do overwrite one, you're probably walking off the end of an array.&lt;br /&gt;
* 0xCCCCCCCC - Allocated on stack, but not initialized&lt;br /&gt;
See also: [http://www.samblackburn.com/wfc/technotes/WTN006.htm]&lt;br /&gt;
&lt;br /&gt;
==How to Not Step Into Functions in the Debugger==&lt;br /&gt;
You'll probably want to avoind stepping into lower-level functions like QString constructors or operators while debugging step-by-step. Here's the detailed (unofficial) [http://blogs.msdn.com/andypennell/archive/2004/02/06/69004.aspx instruction] for various msvc versions.&lt;br /&gt;
&lt;br /&gt;
==Enable automatic expanding of Qt data structures==&lt;br /&gt;
From the msvc docs: &amp;quot;While debugging, Data Tips and items in the Watch and Variable windows are automatically expanded to show their most important elements. The expansion follows the format given by the rules in this file. You can add rules for your types or change the predefined rules.&amp;quot; ([http://www.thedatafarm.com/blog/content/binary/datatips2.jpg example screen])&lt;br /&gt;
&lt;br /&gt;
MSVC 2005: To add support for expanding Qt data structures like QString of QRect, edit {msvc_installation_directory}\Common7\Packages\Debugger\autoexp.dat file and paste [[/Automatic expanding of Qt data structures|definitions]] after [AutoExpand] line.&lt;br /&gt;
==WINDOWS and CONSOLE subsystems==&lt;br /&gt;
CONSOLE subsystem is the one that displays console window (used for standard output and error streams) in addition to application's windows. WINDOWS subsystem redirects standard output and error streams to system debugging subsystem that can be displayed if needed in [[Projects/KDE_on_Windows/Tools#DebugView|DebugView]] or debuggers like msvc or [[Projects/KDE_on_Windows/Tools#WinDbg|WinDbg]].&lt;br /&gt;
Hint: To remove CONSOLE subsystem from already built .exe file, type &amp;lt;code&amp;gt;editbin /subsystem:windows file.exe&amp;lt;/code&amp;gt;&lt;br /&gt;
Note: Qt's qmake syntax supports ''console'' and ''windows'' parameters of the ''CONFIG'' variable, so CONSOLE subsystem can be enabled by specifying &amp;lt;tt&amp;gt;CONFIG += console&amp;lt;/tt&amp;gt; in the .pro file, windows subsystem can be enabled with &amp;lt;tt&amp;gt;CONFIG += windows&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
==Deployment==&lt;br /&gt;
Running a VC++2005 SP1 app on another computer: manifest files are needed. See [http://www.codeproject.com/KB/cpp/vcredists_x86.aspx] and [http://blogs.msdn.com/nikolad/archive/2005/09/02/460368.aspx].&lt;br /&gt;
&lt;br /&gt;
===Note on debug builds===&lt;br /&gt;
The hints above are for release builds (or ReleaseWithDebugInfo). Moving Debug versions of binaries to other computers is only allowed (and technicallu possible) if you have Express Edition installed there, as there is no redistributable package for Debug versions provided and even the license disallows distribution of any debug binaries (even your own).&lt;br /&gt;
&lt;br /&gt;
= MinGW debugging hints =&lt;br /&gt;
&lt;br /&gt;
There are gdb binaries you can directly run after unpacking them, e.g. from &lt;br /&gt;
[http://sourceforge.net/project/showfiles.php?group_id=2435&amp;amp;package_id=20507 mingw's gdb downloads on sourceforge]. &lt;br /&gt;
&lt;br /&gt;
To get a backtrace for a crash you can reproduce: Start the gdb binary with the full path to the executable on the command line, for example like&lt;br /&gt;
&amp;lt;code&amp;gt;..\gdb\gdb.exe c:\programme\kontact\bin\kontact.exe&amp;lt;/code&amp;gt;. When getting&lt;br /&gt;
the command prompt use the run command with the arguments for your application, e.g &amp;lt;code&amp;gt;run --nofork&amp;lt;/code&amp;gt;. Now wait until your applications starts and go on reproducing the crash. Once you encounter the crash, gdb will be in control&lt;br /&gt;
in the command line again. &amp;lt;code&amp;gt;bt&amp;lt;/code&amp;gt; will get you the backtrace.&lt;br /&gt;
&lt;br /&gt;
Instead of running gdb from the beginning, you can also attach to a running process. Use the regular &amp;quot;task-manager&amp;quot; to see which process. Enable the process id columns so you can see the number. Now you can start gdb (still give it the path to the application executable if you can) and use the &amp;lt;code&amp;gt;attach&amp;lt;/code&amp;gt; command with the process id you want to attach to from the&lt;br /&gt;
gdb prompt. Gdb will stop the process it attached to, so you can say &amp;lt;code&amp;gt;continue&amp;lt;/code&amp;gt; and then try to produce the crash.&lt;br /&gt;
&lt;br /&gt;
* Dr. Mingw - Just in Time Debugger [http://jrfonseca.planetaclix.pt/projects/gnu-win32/software/drmingw/]&lt;br /&gt;
* Debugging Qt programs on Windows [http://lists.trolltech.com/qt-interest/2005-08/thread01124-0.html]&lt;br /&gt;
&lt;br /&gt;
'''''WARNING''''': If you are having crashes when starting applications via gdb beware of certain applications (mostly anti-virus software) that could cause problems like &amp;quot;Embassy Trust Suite&amp;quot;, for example. See this [http://www.cygwin.com/ml/cygwin/2007-06/msg00405.html post]. &lt;br /&gt;
&lt;br /&gt;
[[Category:MS Windows]]&lt;/div&gt;</summary>
		<author><name>Bernhard</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Development/Tutorials/Debugging/Debugging_on_MS_Windows</id>
		<title>Development/Tutorials/Debugging/Debugging on MS Windows</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Development/Tutorials/Debugging/Debugging_on_MS_Windows"/>
				<updated>2009-01-19T14:40:55Z</updated>
		
		<summary type="html">&lt;p&gt;Bernhard: /* MinGW debugging hints */ how to create backtrace with gdb&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=General Hints=&lt;br /&gt;
==Debugging with WinDbg==&lt;br /&gt;
WinDbg, distributed as a part of ''Debugging Tools for Windows'', is a user-mode and kernel-mode debugger with a graphical interface. It can also be used to debug user-mode crash dumps.  It uses the Microsoft Visual Studio debug symbol formats for source-level debugging. [[Projects/KDE_on_Windows/Tools#WinDbg|more...]]&lt;br /&gt;
&lt;br /&gt;
==Debugging with DebugView==&lt;br /&gt;
Debug messages (logs) generated by kDebug() and kWarning() are not visible on MS Windows unless application is compiled in so-called CONSOLE subsystem. To show these messages also in WINDOWS subsystem, you can use DebugView tool, coming from SysInternals (currently acquired by Microsoft). [[Projects/KDE_on_Windows/Tools#DebugView|more...]]&lt;br /&gt;
&lt;br /&gt;
==Debugging kioslaves==&lt;br /&gt;
kioslaves on windows are started by klauncher (or kio) as separate kioslave processes. The kioslave executable then loads the related kioslave dll dynamically. &lt;br /&gt;
&lt;br /&gt;
=== Using KDE_SLAVE_DEBUG_WAIT variable ===&lt;br /&gt;
To debug kioslaves:&lt;br /&gt;
#Set the KDE_SLAVE_DEBUG_WAIT environment variable in a current cmd.exe shell to the name of the kioslave's protocol (the first parameter of KIO::SlaveBase() constructor), e.g.&amp;lt;pre&amp;gt;set KDE_SLAVE_DEBUG_WAIT=file&amp;lt;/pre&amp;gt;&lt;br /&gt;
#Terminate &amp;lt;tt&amp;gt;klauncher&amp;lt;/tt&amp;gt; process so it can be restarted.&lt;br /&gt;
#Any application you want to debug at kioslave level have to be executed within the scope of the current environment (cmd.exe), what also means that if you want to use development environment, you have to do that in the environment as well, e.g. for MSVC Express, by typing &amp;lt;tt&amp;gt;vcepress&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
If the kioslave is requested the next time, a debugger will be started and attached to the kioslave process immediatly before the kioslave's kdemain() function. &lt;br /&gt;
&lt;br /&gt;
On mingw platform gdb is launched and connected to the kioslave process. On msvc platforms the currently installed just-in-time debugger is used. This may be msvc's IDE or the [[Projects/KDE_on_Windows/Tools#WinDbg|WinDbg debugger]].  The latter could be set as jit-debugger by running 'windbg -I' command (capital -I like ICE, see [http://msdn2.microsoft.com/en-us/library/cc266343.aspx]).&lt;br /&gt;
&lt;br /&gt;
=== Using KDE_SLAVE_DEBUG_POPUP variable ===&lt;br /&gt;
Alternatively, you can set &amp;lt;tt&amp;gt;KDE_SLAVE_DEBUG_POPUP&amp;lt;/tt&amp;gt; variable instead of &amp;lt;tt&amp;gt;KDE_SLAVE_DEBUG_WAIT&amp;lt;/tt&amp;gt;. This will display a native message box so developer you can attach the debugger to the KIO slave process and click OK. No DebugBreak() is invoked. Just click OK without attaching to continue using the KIO slave without debugging.&lt;br /&gt;
&lt;br /&gt;
=== Notes ===&lt;br /&gt;
*You can set, say, the variable to 'file' for the kio_file slave, '''but''' set it to 'smtps' for the kio_smtp is you want to debug smtp protocol secured with SSL.&lt;br /&gt;
*(Vista only): ''kioslave.exe has stopped working'' message dialog can appear instead of offer for starting the debugger. Reason: Just-In-Time (JIT) Debugging of an elevated process will fail ([http://msdn2.microsoft.com/en-us/vstudio/aa964140.aspx#question20a msdn link]) apparently for security reasons. Either:&lt;br /&gt;
**Use &amp;lt;tt&amp;gt;KDE_SLAVE_DEBUG_POPUP&amp;lt;/tt&amp;gt; instead of &amp;lt;tt&amp;gt;KDE_SLAVE_DEBUG_WAIT&amp;lt;/tt&amp;gt;. See the [[#Using_KDE_SLAVE_DEBUG_POPUP_variable|Using KDE_SLAVE_DEBUG_POPUP variable]] above for more info.&lt;br /&gt;
**(not possible under msvc 2005): start applications and klauncher without administration permissions or attach the debugger manually before the debugger catches unhandled exceptions or an user-defined breakpoint (DebugBreak()). &lt;br /&gt;
*You may want to inspect kioslave sources [http://lxr.kde.org/source/KDE/kdelibs/kinit/kioslave.cpp] for more informations.&lt;br /&gt;
&lt;br /&gt;
== Checking dependency of shared libraries ==&lt;br /&gt;
Dependency Walker is a free utility that scans any 32-bit or 64-bit Windows module (exe, dll, ocx, sys, etc.) and builds a hierarchical tree diagram of all dependent modules. [[Projects/KDE_on_Windows/Tools#Dependency_Walker|more...]]&lt;br /&gt;
&lt;br /&gt;
= MS Visual Studio hints =&lt;br /&gt;
&lt;br /&gt;
== Using MS Visual Studio environment for just debugging ==&lt;br /&gt;
&lt;br /&gt;
Let's assume you're using command line tools (typically CMake) and want to use MS Visual Studio environment for just debugging. You don't need to create msvc project for your KDE application to be able to start debugging. &lt;br /&gt;
&lt;br /&gt;
* compile and working executable version of your appliation (compiled in debug mode)&lt;br /&gt;
* run msvc environment&lt;br /&gt;
* execute ''File-&amp;gt;Open project''&lt;br /&gt;
* pick your exe file in the file window&lt;br /&gt;
* you can set command line arguments as usual, by pick ''Project-&amp;gt;...Properties'' command and enter all of them it in ''Command Arguments'' field&lt;br /&gt;
* if you have libraries placed in other directories than your application's .exe file, and you want to step into these libraries' source code while debugging, pick ''Project-&amp;gt;...Properties'' command and enter paths to these directories in ''Symbol Path'' field&lt;br /&gt;
* hit F5 to run the application start the application or F10 to start step by step&lt;br /&gt;
* all debugging functions like setting breakpoints will be available, so you can open source code in the integrated editor and press F9 where needed&lt;br /&gt;
* you can even edit your source code but to compile it, do it with your external, command line tools. You cannot compile the application in the msvc environment because you have not defined a project file&lt;br /&gt;
* before compiling your application, stop debugging session to unlock binaries; no need to close msvc window&lt;br /&gt;
* after compilation you can start debugging again&lt;br /&gt;
* on exit you will be asked to save .sln file (so-called ''solution file'') with your debugging session -- do it and you will be able just to click the .sln file to start your debugging again&lt;br /&gt;
* it's recommended to save the .sln file in the .exe file directory&lt;br /&gt;
* next time you will run msvc environment, you can see name of your application's .sln file in ''File-&amp;gt;Recent Projects'' submenu - you can click it to load your debugging session&lt;br /&gt;
&lt;br /&gt;
== Attaching to running application ==&lt;br /&gt;
&lt;br /&gt;
If you have your application is already running, you can attach to it and then start debugging. &lt;br /&gt;
&lt;br /&gt;
* run msvc environment&lt;br /&gt;
* execute ''Debug-&amp;gt;processes''&lt;br /&gt;
* select your from the processes list and click &amp;quot;Attach...&amp;quot;&lt;br /&gt;
* msvc environment will load your .sln file if it exists in the same directory as the .exe file, so your breakpoints set in previous session will be active again&lt;br /&gt;
* your program will stop on any breakpoint you have set&lt;br /&gt;
&lt;br /&gt;
== One-step attaching to running application ==&lt;br /&gt;
You can create a macro that automates the task. See [http://blogs.msdn.com/jimgries/archive/2005/11/30/498264.aspx].&lt;br /&gt;
&lt;br /&gt;
== Memory Values ==&lt;br /&gt;
If you are using the debug heap, memory is initialized and cleared with special values. Most interesting values are: &lt;br /&gt;
* 0xCDCDCDCD - Allocated in heap, but not initialized&lt;br /&gt;
* 0xDDDDDDDD - Released heap memory.&lt;br /&gt;
* 0xFDFDFDFD - &amp;quot;NoMansLand&amp;quot; fences automatically placed at boundary of heap memory. Should never be overwritten. If you do overwrite one, you're probably walking off the end of an array.&lt;br /&gt;
* 0xCCCCCCCC - Allocated on stack, but not initialized&lt;br /&gt;
See also: [http://www.samblackburn.com/wfc/technotes/WTN006.htm]&lt;br /&gt;
&lt;br /&gt;
==How to Not Step Into Functions in the Debugger==&lt;br /&gt;
You'll probably want to avoind stepping into lower-level functions like QString constructors or operators while debugging step-by-step. Here's the detailed (unofficial) [http://blogs.msdn.com/andypennell/archive/2004/02/06/69004.aspx instruction] for various msvc versions.&lt;br /&gt;
&lt;br /&gt;
==Enable automatic expanding of Qt data structures==&lt;br /&gt;
From the msvc docs: &amp;quot;While debugging, Data Tips and items in the Watch and Variable windows are automatically expanded to show their most important elements. The expansion follows the format given by the rules in this file. You can add rules for your types or change the predefined rules.&amp;quot; ([http://www.thedatafarm.com/blog/content/binary/datatips2.jpg example screen])&lt;br /&gt;
&lt;br /&gt;
MSVC 2005: To add support for expanding Qt data structures like QString of QRect, edit {msvc_installation_directory}\Common7\Packages\Debugger\autoexp.dat file and paste [[/Automatic expanding of Qt data structures|definitions]] after [AutoExpand] line.&lt;br /&gt;
==WINDOWS and CONSOLE subsystems==&lt;br /&gt;
CONSOLE subsystem is the one that displays console window (used for standard output and error streams) in addition to application's windows. WINDOWS subsystem redirects standard output and error streams to system debugging subsystem that can be displayed if needed in [[Projects/KDE_on_Windows/Tools#DebugView|DebugView]] or debuggers like msvc or [[Projects/KDE_on_Windows/Tools#WinDbg|WinDbg]].&lt;br /&gt;
Hint: To remove CONSOLE subsystem from already built .exe file, type &amp;lt;code&amp;gt;editbin /subsystem:windows file.exe&amp;lt;/code&amp;gt;&lt;br /&gt;
Note: Qt's qmake syntax supports ''console'' and ''windows'' parameters of the ''CONFIG'' variable, so CONSOLE subsystem can be enabled by specifying &amp;lt;tt&amp;gt;CONFIG += console&amp;lt;/tt&amp;gt; in the .pro file, windows subsystem can be enabled with &amp;lt;tt&amp;gt;CONFIG += windows&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
==Deployment==&lt;br /&gt;
Running a VC++2005 SP1 app on another computer: manifest files are needed. See [http://www.codeproject.com/KB/cpp/vcredists_x86.aspx] and [http://blogs.msdn.com/nikolad/archive/2005/09/02/460368.aspx].&lt;br /&gt;
&lt;br /&gt;
===Note on debug builds===&lt;br /&gt;
The hints above are for release builds (or ReleaseWithDebugInfo). Moving Debug versions of binaries to other computers is only allowed (and technicallu possible) if you have Express Edition installed there, as there is no redistributable package for Debug versions provided and even the license disallows distribution of any debug binaries (even your own).&lt;br /&gt;
&lt;br /&gt;
= MinGW debugging hints =&lt;br /&gt;
&lt;br /&gt;
There are gdb binaries you can directly run after unpacking them, e.g. from &lt;br /&gt;
[http://sourceforge.net/project/showfiles.php?group_id=2435&amp;amp;package_id=20507 mingw's gdb downloads on sourceforge]. &lt;br /&gt;
&lt;br /&gt;
To get a backtrace for a crash you can reproduce: Start the gdb binary with the full path to the executable on the command line, for example like&lt;br /&gt;
&amp;lt;code&amp;gt;..\gdb\gdb.exe c:\programme\kontact\bin\kontact.exe&amp;lt;/code&amp;gt;. When getting&lt;br /&gt;
the command prompt use the run command with the arguments for your application, e.g &amp;lt;code&amp;gt;run --nofork&amp;lt;/code&amp;gt;. Now wait until your applications starts and go on reproducing the crash. Once you encounter the crash, gdb will be in control&lt;br /&gt;
in the command line again. &amp;lt;code&amp;gt;bt&amp;lt;/code&amp;gt; will get you the backtrace.&lt;br /&gt;
&lt;br /&gt;
Instead of running gdb from the beginning, you can also attach to a running process. Use the regular &amp;quot;task-manager&amp;quot; to see which process. Enable the process id so you have the number. Now you can start gdb and use the &amp;lt;code&amp;gt;attach&amp;lt;/code&amp;gt; command with the process id you want to attach to.&lt;br /&gt;
&lt;br /&gt;
* Dr. Mingw - Just in Time Debugger [http://jrfonseca.planetaclix.pt/projects/gnu-win32/software/drmingw/]&lt;br /&gt;
* Debugging Qt programs on Windows [http://lists.trolltech.com/qt-interest/2005-08/thread01124-0.html]&lt;br /&gt;
&lt;br /&gt;
'''''WARNING''''': If you are having crashes when starting applications via gdb beware of certain applications (mostly anti-virus software) that could cause problems like &amp;quot;Embassy Trust Suite&amp;quot;, for example. See this [http://www.cygwin.com/ml/cygwin/2007-06/msg00405.html post]. &lt;br /&gt;
&lt;br /&gt;
[[Category:MS Windows]]&lt;/div&gt;</summary>
		<author><name>Bernhard</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Development/Tutorials/Debugging/Debugging_on_MS_Windows</id>
		<title>Development/Tutorials/Debugging/Debugging on MS Windows</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Development/Tutorials/Debugging/Debugging_on_MS_Windows"/>
				<updated>2009-01-19T14:32:47Z</updated>
		
		<summary type="html">&lt;p&gt;Bernhard: /* MinGW debugging hints */ adding link to gdb downloads as mingw&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=General Hints=&lt;br /&gt;
==Debugging with WinDbg==&lt;br /&gt;
WinDbg, distributed as a part of ''Debugging Tools for Windows'', is a user-mode and kernel-mode debugger with a graphical interface. It can also be used to debug user-mode crash dumps.  It uses the Microsoft Visual Studio debug symbol formats for source-level debugging. [[Projects/KDE_on_Windows/Tools#WinDbg|more...]]&lt;br /&gt;
&lt;br /&gt;
==Debugging with DebugView==&lt;br /&gt;
Debug messages (logs) generated by kDebug() and kWarning() are not visible on MS Windows unless application is compiled in so-called CONSOLE subsystem. To show these messages also in WINDOWS subsystem, you can use DebugView tool, coming from SysInternals (currently acquired by Microsoft). [[Projects/KDE_on_Windows/Tools#DebugView|more...]]&lt;br /&gt;
&lt;br /&gt;
==Debugging kioslaves==&lt;br /&gt;
kioslaves on windows are started by klauncher (or kio) as separate kioslave processes. The kioslave executable then loads the related kioslave dll dynamically. &lt;br /&gt;
&lt;br /&gt;
=== Using KDE_SLAVE_DEBUG_WAIT variable ===&lt;br /&gt;
To debug kioslaves:&lt;br /&gt;
#Set the KDE_SLAVE_DEBUG_WAIT environment variable in a current cmd.exe shell to the name of the kioslave's protocol (the first parameter of KIO::SlaveBase() constructor), e.g.&amp;lt;pre&amp;gt;set KDE_SLAVE_DEBUG_WAIT=file&amp;lt;/pre&amp;gt;&lt;br /&gt;
#Terminate &amp;lt;tt&amp;gt;klauncher&amp;lt;/tt&amp;gt; process so it can be restarted.&lt;br /&gt;
#Any application you want to debug at kioslave level have to be executed within the scope of the current environment (cmd.exe), what also means that if you want to use development environment, you have to do that in the environment as well, e.g. for MSVC Express, by typing &amp;lt;tt&amp;gt;vcepress&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
If the kioslave is requested the next time, a debugger will be started and attached to the kioslave process immediatly before the kioslave's kdemain() function. &lt;br /&gt;
&lt;br /&gt;
On mingw platform gdb is launched and connected to the kioslave process. On msvc platforms the currently installed just-in-time debugger is used. This may be msvc's IDE or the [[Projects/KDE_on_Windows/Tools#WinDbg|WinDbg debugger]].  The latter could be set as jit-debugger by running 'windbg -I' command (capital -I like ICE, see [http://msdn2.microsoft.com/en-us/library/cc266343.aspx]).&lt;br /&gt;
&lt;br /&gt;
=== Using KDE_SLAVE_DEBUG_POPUP variable ===&lt;br /&gt;
Alternatively, you can set &amp;lt;tt&amp;gt;KDE_SLAVE_DEBUG_POPUP&amp;lt;/tt&amp;gt; variable instead of &amp;lt;tt&amp;gt;KDE_SLAVE_DEBUG_WAIT&amp;lt;/tt&amp;gt;. This will display a native message box so developer you can attach the debugger to the KIO slave process and click OK. No DebugBreak() is invoked. Just click OK without attaching to continue using the KIO slave without debugging.&lt;br /&gt;
&lt;br /&gt;
=== Notes ===&lt;br /&gt;
*You can set, say, the variable to 'file' for the kio_file slave, '''but''' set it to 'smtps' for the kio_smtp is you want to debug smtp protocol secured with SSL.&lt;br /&gt;
*(Vista only): ''kioslave.exe has stopped working'' message dialog can appear instead of offer for starting the debugger. Reason: Just-In-Time (JIT) Debugging of an elevated process will fail ([http://msdn2.microsoft.com/en-us/vstudio/aa964140.aspx#question20a msdn link]) apparently for security reasons. Either:&lt;br /&gt;
**Use &amp;lt;tt&amp;gt;KDE_SLAVE_DEBUG_POPUP&amp;lt;/tt&amp;gt; instead of &amp;lt;tt&amp;gt;KDE_SLAVE_DEBUG_WAIT&amp;lt;/tt&amp;gt;. See the [[#Using_KDE_SLAVE_DEBUG_POPUP_variable|Using KDE_SLAVE_DEBUG_POPUP variable]] above for more info.&lt;br /&gt;
**(not possible under msvc 2005): start applications and klauncher without administration permissions or attach the debugger manually before the debugger catches unhandled exceptions or an user-defined breakpoint (DebugBreak()). &lt;br /&gt;
*You may want to inspect kioslave sources [http://lxr.kde.org/source/KDE/kdelibs/kinit/kioslave.cpp] for more informations.&lt;br /&gt;
&lt;br /&gt;
== Checking dependency of shared libraries ==&lt;br /&gt;
Dependency Walker is a free utility that scans any 32-bit or 64-bit Windows module (exe, dll, ocx, sys, etc.) and builds a hierarchical tree diagram of all dependent modules. [[Projects/KDE_on_Windows/Tools#Dependency_Walker|more...]]&lt;br /&gt;
&lt;br /&gt;
= MS Visual Studio hints =&lt;br /&gt;
&lt;br /&gt;
== Using MS Visual Studio environment for just debugging ==&lt;br /&gt;
&lt;br /&gt;
Let's assume you're using command line tools (typically CMake) and want to use MS Visual Studio environment for just debugging. You don't need to create msvc project for your KDE application to be able to start debugging. &lt;br /&gt;
&lt;br /&gt;
* compile and working executable version of your appliation (compiled in debug mode)&lt;br /&gt;
* run msvc environment&lt;br /&gt;
* execute ''File-&amp;gt;Open project''&lt;br /&gt;
* pick your exe file in the file window&lt;br /&gt;
* you can set command line arguments as usual, by pick ''Project-&amp;gt;...Properties'' command and enter all of them it in ''Command Arguments'' field&lt;br /&gt;
* if you have libraries placed in other directories than your application's .exe file, and you want to step into these libraries' source code while debugging, pick ''Project-&amp;gt;...Properties'' command and enter paths to these directories in ''Symbol Path'' field&lt;br /&gt;
* hit F5 to run the application start the application or F10 to start step by step&lt;br /&gt;
* all debugging functions like setting breakpoints will be available, so you can open source code in the integrated editor and press F9 where needed&lt;br /&gt;
* you can even edit your source code but to compile it, do it with your external, command line tools. You cannot compile the application in the msvc environment because you have not defined a project file&lt;br /&gt;
* before compiling your application, stop debugging session to unlock binaries; no need to close msvc window&lt;br /&gt;
* after compilation you can start debugging again&lt;br /&gt;
* on exit you will be asked to save .sln file (so-called ''solution file'') with your debugging session -- do it and you will be able just to click the .sln file to start your debugging again&lt;br /&gt;
* it's recommended to save the .sln file in the .exe file directory&lt;br /&gt;
* next time you will run msvc environment, you can see name of your application's .sln file in ''File-&amp;gt;Recent Projects'' submenu - you can click it to load your debugging session&lt;br /&gt;
&lt;br /&gt;
== Attaching to running application ==&lt;br /&gt;
&lt;br /&gt;
If you have your application is already running, you can attach to it and then start debugging. &lt;br /&gt;
&lt;br /&gt;
* run msvc environment&lt;br /&gt;
* execute ''Debug-&amp;gt;processes''&lt;br /&gt;
* select your from the processes list and click &amp;quot;Attach...&amp;quot;&lt;br /&gt;
* msvc environment will load your .sln file if it exists in the same directory as the .exe file, so your breakpoints set in previous session will be active again&lt;br /&gt;
* your program will stop on any breakpoint you have set&lt;br /&gt;
&lt;br /&gt;
== One-step attaching to running application ==&lt;br /&gt;
You can create a macro that automates the task. See [http://blogs.msdn.com/jimgries/archive/2005/11/30/498264.aspx].&lt;br /&gt;
&lt;br /&gt;
== Memory Values ==&lt;br /&gt;
If you are using the debug heap, memory is initialized and cleared with special values. Most interesting values are: &lt;br /&gt;
* 0xCDCDCDCD - Allocated in heap, but not initialized&lt;br /&gt;
* 0xDDDDDDDD - Released heap memory.&lt;br /&gt;
* 0xFDFDFDFD - &amp;quot;NoMansLand&amp;quot; fences automatically placed at boundary of heap memory. Should never be overwritten. If you do overwrite one, you're probably walking off the end of an array.&lt;br /&gt;
* 0xCCCCCCCC - Allocated on stack, but not initialized&lt;br /&gt;
See also: [http://www.samblackburn.com/wfc/technotes/WTN006.htm]&lt;br /&gt;
&lt;br /&gt;
==How to Not Step Into Functions in the Debugger==&lt;br /&gt;
You'll probably want to avoind stepping into lower-level functions like QString constructors or operators while debugging step-by-step. Here's the detailed (unofficial) [http://blogs.msdn.com/andypennell/archive/2004/02/06/69004.aspx instruction] for various msvc versions.&lt;br /&gt;
&lt;br /&gt;
==Enable automatic expanding of Qt data structures==&lt;br /&gt;
From the msvc docs: &amp;quot;While debugging, Data Tips and items in the Watch and Variable windows are automatically expanded to show their most important elements. The expansion follows the format given by the rules in this file. You can add rules for your types or change the predefined rules.&amp;quot; ([http://www.thedatafarm.com/blog/content/binary/datatips2.jpg example screen])&lt;br /&gt;
&lt;br /&gt;
MSVC 2005: To add support for expanding Qt data structures like QString of QRect, edit {msvc_installation_directory}\Common7\Packages\Debugger\autoexp.dat file and paste [[/Automatic expanding of Qt data structures|definitions]] after [AutoExpand] line.&lt;br /&gt;
==WINDOWS and CONSOLE subsystems==&lt;br /&gt;
CONSOLE subsystem is the one that displays console window (used for standard output and error streams) in addition to application's windows. WINDOWS subsystem redirects standard output and error streams to system debugging subsystem that can be displayed if needed in [[Projects/KDE_on_Windows/Tools#DebugView|DebugView]] or debuggers like msvc or [[Projects/KDE_on_Windows/Tools#WinDbg|WinDbg]].&lt;br /&gt;
Hint: To remove CONSOLE subsystem from already built .exe file, type &amp;lt;code&amp;gt;editbin /subsystem:windows file.exe&amp;lt;/code&amp;gt;&lt;br /&gt;
Note: Qt's qmake syntax supports ''console'' and ''windows'' parameters of the ''CONFIG'' variable, so CONSOLE subsystem can be enabled by specifying &amp;lt;tt&amp;gt;CONFIG += console&amp;lt;/tt&amp;gt; in the .pro file, windows subsystem can be enabled with &amp;lt;tt&amp;gt;CONFIG += windows&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
==Deployment==&lt;br /&gt;
Running a VC++2005 SP1 app on another computer: manifest files are needed. See [http://www.codeproject.com/KB/cpp/vcredists_x86.aspx] and [http://blogs.msdn.com/nikolad/archive/2005/09/02/460368.aspx].&lt;br /&gt;
&lt;br /&gt;
===Note on debug builds===&lt;br /&gt;
The hints above are for release builds (or ReleaseWithDebugInfo). Moving Debug versions of binaries to other computers is only allowed (and technicallu possible) if you have Express Edition installed there, as there is no redistributable package for Debug versions provided and even the license disallows distribution of any debug binaries (even your own).&lt;br /&gt;
&lt;br /&gt;
= MinGW debugging hints =&lt;br /&gt;
&lt;br /&gt;
To get a backtrace, you can just use a gdb binary. E.g. from &lt;br /&gt;
[http://sourceforge.net/project/showfiles.php?group_id=2435&amp;amp;package_id=20507 mingw's gdb downloads on sourceforge]. Start the binary with the full path to the executable on the command line. &lt;br /&gt;
&lt;br /&gt;
* Dr. Mingw - Just in Time Debugger [http://jrfonseca.planetaclix.pt/projects/gnu-win32/software/drmingw/]&lt;br /&gt;
* Debugging Qt programs on Windows [http://lists.trolltech.com/qt-interest/2005-08/thread01124-0.html]&lt;br /&gt;
&lt;br /&gt;
'''''WARNING''''': If you are having crashes when starting applications via gdb beware of certain applications (mostly anti-virus software) that could cause problems like &amp;quot;Embassy Trust Suite&amp;quot;, for example. See this [http://www.cygwin.com/ml/cygwin/2007-06/msg00405.html post]. &lt;br /&gt;
&lt;br /&gt;
[[Category:MS Windows]]&lt;/div&gt;</summary>
		<author><name>Bernhard</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Getting_Started/Sources/Anonymous_SVN</id>
		<title>Getting Started/Sources/Anonymous SVN</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Getting_Started/Sources/Anonymous_SVN"/>
				<updated>2008-06-03T07:29:09Z</updated>
		
		<summary type="html">&lt;p&gt;Bernhard: Slight rewrite to note that anonsvn.kde.org is a round robin dns and only  subset of mirrors is listed.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Template:I18n/Language Navigation Bar|Getting Started/Sources/Anonymous SVN}}&lt;br /&gt;
{{TutorialBrowser|&lt;br /&gt;
&lt;br /&gt;
series=Getting Started|&lt;br /&gt;
&lt;br /&gt;
name=Getting KDE Sources Using Anonymous Subversion (SVN)|&lt;br /&gt;
&lt;br /&gt;
next=[[../../Build/KDE4|Building KDE4]]|&lt;br /&gt;
&lt;br /&gt;
reading=[http://svnbook.red-bean.com/ Version Control with Subversion]|&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Abstract ==&lt;br /&gt;
&lt;br /&gt;
For those of us that like to stay on the &amp;quot;bleeding edge&amp;quot; there's an easy way to keep a local copy of the KDE sources up-to-date — anonymous SVN.&lt;br /&gt;
&lt;br /&gt;
Alternatively, install [[Getting_Started/Distribution_Packages|KDE SVN packages from your distribution]].&lt;br /&gt;
&lt;br /&gt;
== Anonymous SVN ==&lt;br /&gt;
&lt;br /&gt;
=== Setup Subversion ===&lt;br /&gt;
&lt;br /&gt;
First, install the subversion (svn) binary if it isn't already on your computer. Your operating system should have a package for it. Alternatively you can download and compile it yourself via the [http://subversion.tigris.org/project_packages.html svn project download page]. Please read the [[Getting_Started/Sources/Using_Subversion_with_KDE|KDE Subversion tutorial]] if you are interested in how to use Subversion.&lt;br /&gt;
&lt;br /&gt;
=== Checkout KDE ===&lt;br /&gt;
&lt;br /&gt;
'''/trunk/''' is where the Qt4-based KDE 4 is being developed. The following is the minimal set of modules you will need to check out to build KDE and KDE software:&lt;br /&gt;
      &lt;br /&gt;
 svn co svn://anonsvn.kde.org/home/kde/trunk/KDE/kdelibs&lt;br /&gt;
 svn co svn://anonsvn.kde.org/home/kde/trunk/KDE/kdebase&lt;br /&gt;
&lt;br /&gt;
{{tip|If your firewall doesn't allow access to arbitrary ports, substitute '''svn://anonsvn.kde.org/''' with '''svn://websvn.kde.org:443/''' above.}}&lt;br /&gt;
&lt;br /&gt;
{{tip|The kdebase module has an external dependency, using svn:externals. The problem is, at this time, the externals property is set with an absolute path, pointing to anonsvn. For those using behind a firewall, this is a problem. You can change the property for your workspace, using two commands:&lt;br /&gt;
 cs KDE&lt;br /&gt;
 svn propset svn:externals &amp;quot;lib svn://websvn.kde.org:443/home/kde/trunk/KDE/kdebase/runtime/kstyles/oxygen/lib&amp;quot; kdebase/workspace/kwin/clients/oxygen &lt;br /&gt;
 This way the external property will look for the additional files in the websvn repository.}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''qt-copy''' is a copy of the latest stable [http://www.trolltech.com Qt] release which works with KDE, put into SVN for convenience. It also contains patches by KDE developers that haven't found their way to Qt yet. They are recommended for those working with KDE from '''trunk'''. Instructions on how to get and configure it can be found [[Getting_Started/Build/KDE4/Prerequisites#Qt |here]].&lt;br /&gt;
&lt;br /&gt;
If you wish to have a complete copy of the KDE distribution, you can simply check out the entire source tree with one command:&lt;br /&gt;
&lt;br /&gt;
 svn co svn://anonsvn.kde.org/home/kde/trunk/KDE&lt;br /&gt;
&lt;br /&gt;
{{note|It is smarter to first use [http://websvn.kde.org/trunk/KDE The KDE Source Repository Web Viewer]. Use it to choose which modules to download. This way KDE will be quicker to install and try out.}}&lt;br /&gt;
&lt;br /&gt;
If you want additional software packages you can check out the following modules within '''trunk/''' as well:&lt;br /&gt;
&lt;br /&gt;
 koffice&lt;br /&gt;
 extragear&lt;br /&gt;
 playground&lt;br /&gt;
 kdereview&lt;br /&gt;
&lt;br /&gt;
So, for example, if you want to check out koffice trunk, you can use: &lt;br /&gt;
&lt;br /&gt;
 svn co svn://anonsvn.kde.org/home/kde/trunk/koffice&lt;br /&gt;
&lt;br /&gt;
=== Checking out trunk using snapshots ===&lt;br /&gt;
&lt;br /&gt;
If you are checking out modules from '''trunk/''' you may be able to save time by using snapshots.  Using Subversion trunk snapshots is described at [[../Snapshots|the Subversion snapshots tutorial page]].&lt;br /&gt;
&lt;br /&gt;
=== Checking out KDE 3 instead ===&lt;br /&gt;
&lt;br /&gt;
If you want to track KDE 3 rather than the bleeding edge, you may retrieve the KDE 3.5 sources using:&lt;br /&gt;
&lt;br /&gt;
 svn co svn://anonsvn.kde.org/home/kde/branches/arts/1.5/arts&lt;br /&gt;
 svn co svn://anonsvn.kde.org/home/kde/branches/KDE/3.5/&lt;br /&gt;
&lt;br /&gt;
And if you want the matching qt-copy:&lt;br /&gt;
 svn co svn://anonsvn.kde.org/home/kde/branches/qt/3.3/qt-copy&lt;br /&gt;
&lt;br /&gt;
=== Checking out specific releases ===&lt;br /&gt;
&lt;br /&gt;
KDE modules are also tagged at each release so that it is possible to get a specific release of KDE. Most KDE modules have a tag name in the format '''tags/KDE/X.Y.Z''' (where X, Y and Z represent the exact version). The arts module (only needed for KDE 2 and KDE 3) has a different format of tag name, '''tags/arts/X.Y.Z'''. For instance to get kdelibs as it was shipped in KDE 3.5.0, do: &lt;br /&gt;
&lt;br /&gt;
 svn co svn://anonsvn.kde.org/home/kde/tags/KDE/3.5.0/kdelibs/&lt;br /&gt;
&lt;br /&gt;
If you then want to update this checkout to KDE 3.5.5, use this command:&lt;br /&gt;
&lt;br /&gt;
 svn switch svn://anonsvn.kde.org/home/kde/tags/KDE/3.5.5/kdelibs&lt;br /&gt;
&lt;br /&gt;
{{tip|If you used a '''/branch/''' or '''/trunk/''' path, then there is no need to switch, just run '''svn update'''.}}&lt;br /&gt;
&lt;br /&gt;
=== Checking out translations ===&lt;br /&gt;
If you are looking for translations and other localizations, check out the appropriate language from the appropriate module: [http://websvn.kde.org/trunk/l10n-kde4 l10n-kde4] (KDE4) or [http://websvn.kde.org/trunk/l10n-kde3 l10n-kde3] (KDE3). &lt;br /&gt;
&lt;br /&gt;
{{Warning|The l10n module is ''extremely'' large. Be sure you have lots of time and disk space on hand before checking out the entire l10n module. Most people only check out specific language subdirectories rather than the entire l10n module.}}&lt;br /&gt;
&lt;br /&gt;
You are now ready to start building KDE! Visit [[Getting_Started/Build/KDE4|this page]] for instructions on building trunk or [[Getting_Started/Build/Stable_Version|this page]] for instruction on compiling the last stable release.&lt;br /&gt;
&lt;br /&gt;
=== Checkout from behind a proxy ===&lt;br /&gt;
&lt;br /&gt;
If the tip above didn't help you, and you've realized that the only way to go seems to be with http://anonsvn.kde.org/.. , then you will have to jump through a few hoops to get an svn checkout. Since http:// access is open only to developers, you will have to use svn://. Transconnect is a small piece of software that can tunnel all the traffic through your friendly neigbourhood proxy server. Get the transconnect sources from http://transconnect.sourceforge.net/ , compile it, and edit ~/.tconn/tconn.conf to point to your proxy server. Export the LD_PRELOAD variable as per the README from transconnect, and you're set to go. &lt;br /&gt;
&lt;br /&gt;
== Also of interest ==&lt;br /&gt;
* anonsvn.kde.org is a round robin DNS entry, which will resolve to one out of several anonsvn mirrors. It is operated in Tuebingen, Germany, maintained by [mailto:dirk@kde.org Dirk Mueller] However, it might be desireable to choose a local mirror explicitely. Some mirrors are listed below, sorted by performance:&lt;br /&gt;
** kde.mneisen.org is located near Nuernberg, Germany, maintained by [mailto:martin.eisenhardt@mneisen.org Martin Eisenhardt]&lt;br /&gt;
** www.englishbreakfastnetwork.org also hosts an anonymous SVN mirror, at the University of Nijmegen, Netherlands. Maintained by [mailto:groot@kde.org Adriaan de Groot]&lt;br /&gt;
&lt;br /&gt;
: Be careful when switching between mirrors. SVN remembers the server in the working copy, so to switch you have to run&lt;br /&gt;
 svn switch --relocate svn://anonsvn.kde.org/ svn://kde.mneisen.org/&lt;br /&gt;
: in all your checkouts.&lt;br /&gt;
If you're interested in setting up a svn mirror, please contact [mailto:mueller@kde.org Dirk Mueller].&lt;br /&gt;
&lt;br /&gt;
[[Category:Build KDE]]&lt;/div&gt;</summary>
		<author><name>Bernhard</name></author>	</entry>

	</feed>