<?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=Shaforostoff&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=Shaforostoff&amp;feedformat=atom"/>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Special:Contributions/Shaforostoff"/>
		<updated>2013-06-19T10:00:19Z</updated>
		<subtitle>User contributions</subtitle>
		<generator>MediaWiki 1.20.2</generator>

	<entry>
		<id>http://techbase.kde.org/Schedules/KDE4/4.9_Feature_Plan</id>
		<title>Schedules/KDE4/4.9 Feature Plan</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Schedules/KDE4/4.9_Feature_Plan"/>
				<updated>2012-06-19T15:03:54Z</updated>
		
		<summary type="html">&lt;p&gt;Shaforostoff: /* kdesdk */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This is a list of planned features for the SC 4.9 release. &lt;br /&gt;
&lt;br /&gt;
See also: &lt;br /&gt;
&lt;br /&gt;
*[[Schedules/KDE4/4.9 Release Schedule]] &lt;br /&gt;
*[[Schedules/KDE4/4.8 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;
{{FeatureDone|KGlobalSettings|Make KGlobalSettings reread locale settings before calling settingsChanged().|lamarque@kde.org|Lamarque V. Souza}}&lt;br /&gt;
{{FeatureDone|Kate Part|Reworked Color Configuration|dhaumann@kde.org|Dominik Haumann}}&lt;br /&gt;
{{FeatureDone|KActivities|Encryption for private activities (not available via UI).|ivan.cukic@kde.org|Ivan Čukić}}&lt;br /&gt;
{{FeatureDone|KActivities|Linking files to activities in Dolphin, Konqueror, Folder View.|ivan.cukic@kde.org|Ivan Čukić}}&lt;br /&gt;
{{FeatureDone|KActivities|Activities KIO.|ivan.cukic@kde.org|Ivan Čukić}}&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;
&lt;br /&gt;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact &lt;br /&gt;
&lt;br /&gt;
{{FeatureDone|Thumbnail|fix for bookmarks|sebas@kde.org|Sebastian Kügler}}&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;
{{FeatureDone|ksmserver|Port shutdown dialog to QML|lamarque@kde.org|Lamarque V. Souza}}&lt;br /&gt;
{{FeatureInProgress|ksmserver|Merge the new qml based screen locker|mart@kde.org|Marco Martin}}&lt;br /&gt;
{{FeatureDone|plasma|MPRIS2 dataengine|alex.merry@kdemail.net|Alex Merry}}&lt;br /&gt;
&amp;lt;!-- The following section of entries has been auto generated by ChangelogGenerator. Do not edit!&lt;br /&gt;
BEGIN GENERATED SECTION --&amp;gt;&lt;br /&gt;
{{FeatureTodo|kwin|windows that are moved to another desktop should be treated as sticky windows ({{bug |213847}})|kwin-bugs-null@kde.org}}&lt;br /&gt;
{{FeatureTodo|kwin|Fix fullscreen state handling: NETWM says it's bound to focus and not stacking order, also see bug #224600 ({{bug |296076}})|kwin-bugs-null@kde.org}}&lt;br /&gt;
{{FeatureTodo|kwin|Lanczos Filter broken after screen size changes ({{bug |296065}})|kwin-bugs-null@kde.org}}&lt;br /&gt;
{{FeatureInProgress|kwin|GHNS support for KWin Scripts ({{bug |296774}}, Review 104877)|kwin-bugs-null@kde.org}}&lt;br /&gt;
{{FeatureTodo|kwin|KConf Update Script for KWin 4.9 ({{bug |296775}})|kwin-bugs-null@kde.org}}&lt;br /&gt;
{{FeatureTodo|kwin|Request category for scripted KWin Effects on kde-(look&amp;lt;nowiki&amp;gt;|&amp;lt;/nowiki&amp;gt;app).org ({{bug |297634}})|kwin-bugs-null@kde.org}}&lt;br /&gt;
{{FeatureTodo|kwin|Request category for KWin Scripts on kde-(look&amp;lt;nowiki&amp;gt;|&amp;lt;/nowiki&amp;gt;app).org ({{bug |297635}})|kwin-bugs-null@kde.org}}&lt;br /&gt;
{{FeatureInProgress|kwin|GHNS support for Window Switching Layouts ({{bug |297636}}, Review 104894)|kwin-bugs-null@kde.org}}&lt;br /&gt;
{{FeatureTodo|kwin|Request category for Window Switcher Layouts on kde-(look&amp;lt;nowiki&amp;gt;|&amp;lt;/nowiki&amp;gt;app).org ({{bug |297637}})|kwin-bugs-null@kde.org}}&lt;br /&gt;
{{FeatureTodo|kwin|Update Documentation for Window Switcher Layouts ({{bug |297638}})|kwin-bugs-null@kde.org}}&lt;br /&gt;
{{FeatureTodo|kwin|ThumbnailItem allows upscaling of Windows ({{bug |297864}})|kwin-bugs-null@kde.org}}&lt;br /&gt;
{{FeatureTodo|kwin|Window Tab support for QML based Aurorae ({{bug |299138}})|kwin-bugs-null@kde.org}}&lt;br /&gt;
{{FeatureTodo|kwin|Increase ABI version for KDecorations ({{bug |299140}})|kwin-bugs-null@kde.org}}&lt;br /&gt;
{{FeatureTodo|kwin|Break NETWM to allow inner xinerama struts ({{bug |299247}})|kwin-bugs-null@kde.org}}&lt;br /&gt;
{{FeatureDone|kwin|Useraction menu closes when focus passes to another window ({{bug |81743}})|kwin-bugs-null@kde.org}}&lt;br /&gt;
{{FeatureDone|kwin|JJ: change focus only when moving mouse ({{bug |92290}})|kwin-bugs-null@kde.org}}&lt;br /&gt;
{{FeatureDone|kwin|JJ: kwin fulscreen / un-fullscreen system notifications ({{bug |124612}}, Review 104457)|kwin-bugs-null@kde.org}}&lt;br /&gt;
{{FeatureDone|kwin|Insufficient stacking order handling for deleted windows ({{bug |158262}}, Review 104519)|kwin-bugs-null@kde.org}}&lt;br /&gt;
{{FeatureDone|kwin|JJ: Use arrow keys to control cover switch. ({{bug |178595}}, Review 104438)|kwin-bugs-null@kde.org}}&lt;br /&gt;
{{FeatureDone|kwin|No reason given why some desktop effects cannot be activated ({{bug |209213}}, Review 104847)|kwin-bugs-null@kde.org}}&lt;br /&gt;
{{FeatureDone|kwin|Dragging a title bar against a bottom panel twice makes it go under the panel on the second time ({{bug |210926}})|kwin-bugs-null@kde.org}}                                                                                                                            &lt;br /&gt;
{{FeatureDone|kwin|Wobbly windows wobbles strange after quick-maximization ({{bug |222102}})|kwin-bugs-null@kde.org}}                        &lt;br /&gt;
{{FeatureDone|kwin|&amp;quot;Move&amp;quot; command should allow off-screen window moving same as Alt + click trick ({{bug |229942}})|kwin-bugs-null@kde.org}}&lt;br /&gt;
{{FeatureDone|kwin|Bug with shading always inactive windows ({{bug |242217}})|kwin-bugs-null@kde.org}}&lt;br /&gt;
{{FeatureDone|kwin|Change title of menu item &amp;quot;Configure window behaviour...&amp;quot; ({{bug |249486}})|kwin-bugs-null@kde.org}}&lt;br /&gt;
{{FeatureDone|kwin|Task switcher message when no windows looks ugly with stars ({{bug |260938}})|kwin-bugs-null@kde.org}}&lt;br /&gt;
{{FeatureDone|kwin|Placement Policy 'under mouse' ({{bug |272162}})|kwin-bugs-null@kde.org}}&lt;br /&gt;
{{FeatureDone|kwin|JJ: Synchronize Show Desktop wording in all tabbox effects ({{bug |273478}}, Review 104436)|kwin-bugs-null@kde.org}}&lt;br /&gt;
{{FeatureDone|kwin|closing session crash ({{bug |282933}}, Review 104690)|kwin-bugs-null@kde.org}}&lt;br /&gt;
{{FeatureDone|kwin|Window Specific Settings dialog has no help function ({{bug |286783}})|kwin-bugs-null@kde.org}}&lt;br /&gt;
{{FeatureDone|kwin|Add &amp;quot;Present Windows - Window Class&amp;quot; to &amp;quot;Screen Edges&amp;quot; functions ({{bug |288960}})|kwin-bugs-null@kde.org}}&lt;br /&gt;
{{FeatureDone|kwin|[JJ] Select next window with arrow key in Alt+Tab ({{bug |291916}})|kwin-bugs-null@kde.org}}&lt;br /&gt;
{{FeatureDone|kwin|KWin crashed when I was switching windows ({{bug |292614}})|kwin-bugs-null@kde.org}}&lt;br /&gt;
{{FeatureDone|kwin|Kill helper should be out of process ({{bug |295940}})|kwin-bugs-null@kde.org}}&lt;br /&gt;
{{FeatureDone|kwin|Synchronize user actions menu with libtaskmanager ({{bug |296056}})|kwin-bugs-null@kde.org}}&lt;br /&gt;
{{FeatureDone|kwin|Different binary name for KWin Active ({{bug |296084}})|kwin-bugs-null@kde.org}}&lt;br /&gt;
{{FeatureDone|kwin|Window Switcher KCM needs to be reworked ({{bug |297639}}, Review 104525)|kwin-bugs-null@kde.org}}&lt;br /&gt;
{{FeatureDone|kwin|Document global JavaScript methods in KWin Scripting API documentation ({{bug |297640}})|kwin-bugs-null@kde.org}}&lt;br /&gt;
{{FeatureDone|kwin|Elevate windows in addition to highlight ({{bug |297809}})|kwin-bugs-null@kde.org}}&lt;br /&gt;
{{FeatureDone|kwin|KWin crashes when interacting with Plasma ({{bug |298669}}, Review 104714)|kwin-bugs-null@kde.org}}&lt;br /&gt;
{{FeatureDone|kwin|Add ABI check to KDecorations ({{bug |299141}})|kwin-bugs-null@kde.org}}&lt;br /&gt;
{{FeatureDone|kwin|Effects cannot be configured ({{bug |299163}})|kwin-bugs-null@kde.org}}&lt;br /&gt;
{{FeatureDone|kwin|Adding proper window thumbnail clipping to the QML tabbox ({{bug |299198}})|kwin-bugs-null@kde.org}}&lt;br /&gt;
{{FeatureDone|kwin|Improve VSync strategy ({{bug |299274}})|kwin-bugs-null@kde.org}}&lt;br /&gt;
{{FeatureDone|kwin|Screen Edge bindings for KWin Scripting ({{bug |299275}}, Review 104904)|kwin-bugs-null@kde.org}}&lt;br /&gt;
{{FeatureDone|kwin|Better QML selection list for Window Switcher layout ({{bug |299278}})|kwin-bugs-null@kde.org}}&lt;br /&gt;
{{FeatureDone|kwin|Add layout specification to D-Bus call for invoking TabBox ({{bug |299279}}, Review 104838)|kwin-bugs-null@kde.org}}&lt;br /&gt;
{{FeatureDone|kwin|Default Bindings for Switching between Windows of current Application ({{bug |299308}}, Review 104730)|kwin-bugs-null@kde.org}}&lt;br /&gt;
{{FeatureDone|kwin|Make desktop focus chains activities aware ({{bug |299309}}, Review 104649)|kwin-bugs-null@kde.org}}&lt;br /&gt;
{{FeatureDone|kwin|Activity window rules (Review 104972) |ivan.cukic@kde.org}}&lt;br /&gt;
{{FeatureDone|kwin|Desktop Zoom should be saved between sessions ({{bug |189956}}, Review 104597)|kwin-bugs-null@kde.org}}&lt;br /&gt;
&amp;lt;!-- END GENERATED SECTION --&amp;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;
{| 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;
{{FeatureTodo|FolderView|Refactor into PopupApplet and Containment|ignat.semenov@blue-systems.com|Ignat Semenov}}&lt;br /&gt;
{{FeatureDone|FolderView|Show files related to an activity|ivan.cukic@kde.org|Ivan Cukic}}&lt;br /&gt;
{{FeatureDone|Dolphin|Allow to show any kind of metadata like ratings, tags, comments, image-sizes, music-artist, ... beside each item of the view (see http://ppenz.blogspot.co.at/2012/06/improved-views.html for details)|peter.penz19@gmail.com|Peter Penz}}&lt;br /&gt;
{{FeatureDone|Dolphin|Use KMessageWidget for information- and error-messages (see http://agateau.com/2011/04/21/kde-ux-2011/ for details)|peter.penz19@gmail.com|Peter Penz}}&lt;br /&gt;
{{FeatureDone|Dolphin|Optionally remember the column-widths of the details view|peter.penz19@gmail.com|Peter Penz}}&lt;br /&gt;
{{FeatureDone|Dolphin|Allow to disable the expandable folders of the details view|peter.penz19@gmail.com|Peter Penz}}&lt;br /&gt;
{{FeatureDone|Dolphin|Implement inline renaming for the new view-engine|peter.penz19@gmail.com|Peter Penz}}&lt;br /&gt;
{{FeatureDone|Dolphin|Allow to optionally set a maximum number of lines for the icons-view|peter.penz19@gmail.com|Peter Penz}}&lt;br /&gt;
{{FeatureDone|Dolphin|Implement support for back/forward mouse buttons|sebasti@n-doerner.de|Sebastian Dörner}}&lt;br /&gt;
{{FeatureTodo|Dolphin|Implement files quick preview feature (named Klook)  |evgeniy.augin@osinit.ru|Evgeniy Auzhin}}&lt;br /&gt;
{{FeatureDone|Konsole|Move menubar and tabbar settings out of profile and into &amp;quot;Configure Konsole&amp;quot;|adaptee@gmail.com|Jekyll Wu}}&lt;br /&gt;
{{FeatureDone|Konsole|Add command line options for controlling the visibility of menubar and tabbar|adaptee@gmail.com|Jekyll Wu}}&lt;br /&gt;
{{FeatureDone|Konsole|Allow dragging tab out of current window and into its own window|adaptee@gmail.com|Jekyll Wu}}&lt;br /&gt;
{{FeatureDone|Konsole|Add &amp;quot;Clone Tab&amp;quot; action for opening new tab using the same profile used by current tab |adaptee@gmail.com|Jekyll Wu}}&lt;br /&gt;
{{FeatureDone|Konsole|Add &amp;quot;Change Directory To&amp;quot; action in the popup menu of drag &amp;amp; drop operation |adaptee@gmail.com|Jekyll Wu}}&lt;br /&gt;
{{FeatureDone|Konsole|Allow action in the context menu for searching selected text using KDE WebShortcuts |adaptee@gmail.com|Jekyll Wu}}&lt;br /&gt;
{{FeatureDone|Konsole|Provide the searching ability in konsolepart|adaptee@gmail.com|Jekyll Wu}}&lt;br /&gt;
{{FeatureDone|Konsole|konsolepart can notify the hosting application(e.g, dolphin) of the changing of current directory |adaptee@gmail.com|Jekyll Wu}} &lt;br /&gt;
{{FeatureDone|Konsole|Allow changing tab title through escape sequence like &amp;quot;\e]30;Tab Title\a&amp;quot; |adaptee@gmail.com|Jekyll Wu}}&lt;br /&gt;
{{FeatureDone|Konsole|Allow users to have better control of the copy &amp;amp; paste behavior of mouse within Konsole|adaptee@gmail.com|Jekyll Wu}}&lt;br /&gt;
&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;
&lt;br /&gt;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact &lt;br /&gt;
&lt;br /&gt;
{{FeatureTodo|Marble|Satellite Map NG|rahn@kde.org|Torsten Rahn}}&lt;br /&gt;
{{FeatureTodo|Marble|Mars &amp;amp; Venus satellite plugin|rahn@kde.org|Torsten Rahn / Gerhard Holtkamp}}&lt;br /&gt;
{{FeatureTodo|Marble|Solar Eclipse Plugin|rahn@kde.org|Torsten Rahn / Gerhard Holtkamp}}&lt;br /&gt;
{{FeatureTodo|Marble|Help Menu polishing / Support page inclusion|rahn@kde.org|Torsten Rahn}}&lt;br /&gt;
{{FeatureTodo|Marble|Toolbar polishing/refactoring|rahn@kde.org|Torsten Rahn}}&lt;br /&gt;
{{FeatureTodo|Marble|Solar Eclipse Plugin|rahn@kde.org|Torsten Rahn}}&lt;br /&gt;
{{FeatureInProgress|Marble|Worldwide hillshading|earthwings@gentoo.org|Dennis Nienhüser}}&lt;br /&gt;
{{FeatureTodo|Marble|Extended library API (no MarbleWidget dependency for tasks like parsing, routing)|earthwings@gentoo.org|Dennis Nienhüser}}&lt;br /&gt;
{{FeatureTodo|Marble|Marble Touch on Plasma Active|earthwings@gentoo.org|Dennis Nienhüser}}&lt;br /&gt;
{{FeatureTodo|Marble|Marble Touch on Android|earthwings@gentoo.org|Dennis Nienhüser}}&lt;br /&gt;
{{FeatureTodo|Marble|Support for loading geolocated photos (e.g. in a Gallery activity in Marble Touch)|earthwings@gentoo.org|Dennis Nienhüser}}&lt;br /&gt;
{{FeatureTodo|Marble|Layer Management (by the user: Toggle layer visibility; maybe move layers from legend and layers in menus to one central place/tab)|earthwings@gentoo.org|Dennis Nienhüser}}&lt;br /&gt;
{{FeatureDone|Rocs|Project Files to combine graphs and algorithms|cola@uni-paderborn.de|Andreas Cord-Landwehr}}&lt;br /&gt;
{{FeatureDone|Rocs|Extend graph data structure to support overlay graphs|cola@uni-paderborn.de|Andreas Cord-Landwehr}}&lt;br /&gt;
{{FeatureDone|Rocs|Stepped execution of algorithms|cola@uni-paderborn.de|Andreas Cord-Landwehr}}&lt;br /&gt;
{{FeatureDone|Rocs|General unit test cleanup and overhauling|cola@uni-paderborn.de|Andreas Cord-Landwehr}}&lt;br /&gt;
{{FeatureDone|Rocs|Data types and pointer types|rocs-devel@kde.org|Andreas Cord-Landwehr}}&lt;br /&gt;
{{FeatureDone|Kig|Improve Cancel Construction and Undo actions|david.narvaez@computer.org|David E. Narváez}}&lt;br /&gt;
{{FeatureDone|Pairs|New memory game|aleixpol@kde.org|Aleix Pol Gonzalez}}&lt;br /&gt;
{{FeatureDone|KAlgebra Mobile|Many improvements, including Android and better Active support|aleixpol@kde.org|Aleix Pol Gonzalez}}&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;
&lt;br /&gt;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact &lt;br /&gt;
&lt;br /&gt;
{{FeatureInProgress|libkdegames|[http://community.kde.org/KDE_Games/API_cleanup Major cleanup and rewrite] (done, except for the new highscore classes)&amp;lt;br/&amp;gt;&amp;lt;br/&amp;gt;'''Release team:''' please link to the [[Projects/Games/Porting_to_libkdegames_v5|porting instructions]]  for third-party developers|stefan.majewsky@googlemail.com|Stefan Majewsky}}&lt;br /&gt;
{{FeatureDone|Granatier|improve config UI for player and arena selection|m-hias@gmx.de|Mathias Kraus}}&lt;br /&gt;
{{FeatureDone|Kajongg|tooltips giving playings hints|wolfgang@rohdewald.de|Wolfgang Rohdewald}}&lt;br /&gt;
{{FeatureDone|Kajongg|new config option: propose what to do|wolfgang@rohdewald.de|Wolfgang Rohdewald}}&lt;br /&gt;
{{FeatureDone|Kajongg|make it possible to replay a game from a screen shot (for better debugging)|wolfgang@rohdewald.de|Wolfgang Rohdewald}}&lt;br /&gt;
{{FeatureDone|Kajongg|improve Robot AI|wolfgang@rohdewald.de|Wolfgang Rohdewald}}&lt;br /&gt;
{{FeatureDone|Kajongg|Add default voices|wolfgang@rohdewald.de|Wolfgang Rohdewald}}&lt;br /&gt;
{{FeatureDone|Kajongg|Players can chat with each other from within kajongg|wolfgang@rohdewald.de|Wolfgang Rohdewald}}&lt;br /&gt;
{{FeatureDone|Kajongg|Define a central game server, making it easier to play over the internet (no more tweaking of firewalls for the server side)|wolfgang@rohdewald.de|Wolfgang Rohdewald}}&lt;br /&gt;
{{FeatureDone|KGoldrunner|Add the Gold Rush II championship game (20 levels), contributed by Gabriel Miltschitzky|iandw.au@gmail.com|Ian Wadham}}&lt;br /&gt;
{{FeatureDone|KGoldrunner|Add solution files to some KGoldrunner games|iandw.au@gmail.com|Ian Wadham}}&lt;br /&gt;
{{FeatureDone|KPatience|Saved game files now include the whole game history|coates@kde.org|Parker Coates}}&lt;br /&gt;
{{FeatureDone|KSudoku|Simplify the XML descriptions of puzzle shapes|iandw.au@gmail.com|Ian Wadham}}&lt;br /&gt;
{{FeatureDone|KSudoku|Add XML and Desktop files for seven new two-dimensional puzzle shapes|iandw.au@gmail.com|Ian Wadham}}&lt;br /&gt;
{{FeatureDone|KSudoku|Add XML and Desktop files for three new three-dimensional puzzle shapes|iandw.au@gmail.com|Ian Wadham}}&lt;br /&gt;
{{FeatureDone|KSudoku|Improve the quality and relevance of KSudoku hints|iandw.au@gmail.com|Ian Wadham}}&lt;br /&gt;
{{FeatureDone|KSudoku|Make Load and Save work correctly for all puzzle types, including display of small markers/notes and restart of the puzzle clock from a saved value|iandw.au@gmail.com|Ian Wadham}}&lt;br /&gt;
{{FeatureDone|KSudoku|Integrate the new generator/solver and the old KSudoku code more closely|iandw.au@gmail.com|Ian Wadham}}&lt;br /&gt;
{{FeatureDone|KSudoku|Make puzzle features easier to see and use by improving highlighting, control and settings in both 2-D and 3-D puzzles and adding keyboard input to 3-D puzzles|iandw.au@gmail.com|Ian Wadham}}&lt;br /&gt;
{{FeatureDone|KMahjongg|Make the BoardEditor running again|Coding@Christian-Krippendorf.de|Christian Krippendorf}}&lt;br /&gt;
{{FeatureDone|KMahjongg|Implement an option for random layouts|Coding@Christian-Krippendorf.de|Christian Krippendorf}}&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;
&lt;br /&gt;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact &lt;br /&gt;
&lt;br /&gt;
{{FeatureDone|Gwenview|Fullscreen browse|agateau@kde.org|Aurélien Gâteau}}&lt;br /&gt;
{{FeatureInProgress|Okular|Store annotations with documents {{bug |151614}}|okular-devel@kde.org|}}&lt;br /&gt;
{{FeatureInProgress|Okular|Print document with annotations {{bug |159005}}|okular-devel@kde.org|}}&lt;br /&gt;
{{FeatureDone|Okular|Annotations Screen support (embedded movies in PDF) {{bug |172847}}|okular-devel@kde.org|}}&lt;br /&gt;
{{FeatureDone|Okular|Aggressive page preloading {{bug |184196}}|okular-devel@kde.org|}}&lt;br /&gt;
{{FeatureDone|Okular|Hyphen-aware search {{bug |190433}}|okular-devel@kde.org|}}&lt;br /&gt;
{{FeatureDone|Okular|Multiple bookmarks per page {{bug |157198}}|okular-devel@kde.org|}}&lt;br /&gt;
{{FeatureDone|Okular|Allow the renaming of bookmark &amp;quot;parent&amp;quot; items|okular-devel@kde.org|}}&lt;br /&gt;
{{FeatureDone|Okular|Allow the page number selector to be added to the toolbar {{bug |279128}}|okular-devel@kde.org|}}&lt;br /&gt;
{{FeatureDone|Okular|Double click to select workds {{bug |187347}}|okular-devel@kde.org|}}&lt;br /&gt;
{{FeatureDone|Okular|Make Okular inhibit sleep and screen power management when in Presentation mode|okular-devel@kde.org|}}&lt;br /&gt;
{{FeatureDone|Okular|Behavior for left/right arrow keys (Review 104596)|okular-devel@kde.org|}}&lt;br /&gt;
{{FeatureDone|Okular|Remember the mouse mode on exit|okular-devel@kde.org|}}&lt;br /&gt;
{{FeatureDone|Okular|Make search from the current page the default|okular-devel@kde.org|}}&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= kdemultimedia =&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|JuK|last.fm scrobbling|martin.sandsmark@kde.org|Martin Sandsmark}}&lt;br /&gt;
{{FeatureDone|JuK|cover-fetching from last.fm|martin.sandsmark@kde.org|Martin Sandsmark}}&lt;br /&gt;
{{FeatureDone|JuK|MPRIS2 support|alex.merry@kmail.net|Alex Merry}}&lt;br /&gt;
{{FeatureDone|JuK|MPRIS2 support|hein@kde.org|Eike Hein}}&lt;br /&gt;
{{FeatureDone|Dragon|MPRIS2 support|hein@kde.org|Eike Hein}}&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;
&lt;br /&gt;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact &lt;br /&gt;
{{FeatureDone|Kopete|Add option to group all offline users into a &amp;quot;Offline Users&amp;quot; group|kopete-devel@kde.org|Kopete Developers}}&lt;br /&gt;
{{FeatureDone|Kopete|Show contact's status change in chat window|igor.poboiko@gmail.com|Igor Poboiko}}&lt;br /&gt;
{{FeatureDone|Kopete|Add context option &amp;quot;rename&amp;quot; to contacts and allow changing custom display name inline.|kopete-devel@kde.org|Kopete Developers}}&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;
{{FeatureDone|Akonadi Google Resources|Move contacts and calendars resources from Akonadi Google project to kdepim-runtime|dan@progdan.cz|Dan Vratil}}&lt;br /&gt;
&lt;br /&gt;
{{FeatureDone|KTnef|Bring back KTnef from the KDE3 days. KTnef is a standalone TNEF attachment viewer|winter@kde.org|Allen Winter}}&lt;br /&gt;
&lt;br /&gt;
{{FeatureDone|Akonadi Kolab Resources|Kolab resource using the Kolab libraries to kdepim-runtime|chrigi_1@fastmail.fm|Christian Mollekopf}}&lt;br /&gt;
&lt;br /&gt;
{{FeatureDone|Extend Akonotes Format|Extend the akonotes format to support features required by zanshin and kolab|chrigi_1@fastmail.fm|Christian Mollekopf}}&lt;br /&gt;
&lt;br /&gt;
{{FeatureDone|Import pim data|ImportWizard allows to import settings/mails/filters/calendar/addressbook from thunderbird/evolution/etc. when exists.|montel@kde.org|Laurent Montel}}&lt;br /&gt;
&lt;br /&gt;
{{FeatureDone|Archive Mail Agent|Archive Mail Agent archives your mail folders on a scheduled basis.|montel@kde.org|Laurent Montel}}&lt;br /&gt;
&lt;br /&gt;
{{FeatureDone|Backup Mail|Backup Mail saves/restores mail config/config (akonadi)/database nepomuk/resources etc.|montel@kde.org|Laurent Montel}}&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;
&lt;br /&gt;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact &lt;br /&gt;
{{FeatureDone|Now Playing|replace with QML version|alex.merry@kdemail.net|Alex Merry}}&lt;br /&gt;
{{FeatureInProgress|Microblog|replace with QML version|sebas@kde.org|Sebastian Kügler}}&lt;br /&gt;
{{FeatureInProgress|StackFolder|Add applet for quick browse the stack of folders|ural.mullabaev@rosalab.ru|Ural Mullabaev}}&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|Okteta|Add view profiles, incl. editor/manager|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|Add a general KPart adapter to Kasten, than finish port of Okteta KPart to Okteta Kasten|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|Add global toggle option for the offset display, hex or decimal|kossebau@kde.org|Friedrich W. H. Kossebau}} &lt;br /&gt;
{{FeatureTodo|Okteta|Add Kate-like combined dialogs to query for actions on files|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|add Kate-like search tool|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|Add Okular like embedded notifications|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|add support for import by drop, both url and data|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|add support for memory mapping of files and 64-bit addressing|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|add support for jobs like io, printing, string search or filter|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|copy again puts also a value or char variant of the data to clipboard|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|Improve the titels of the changes to the bytearray to be more descriptive, best using ids to avoid text string|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|Make all user interaction in the KastenCore managers plugin-based|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|Merge row and column widgets into one|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|Store bookmarks|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|Store bookmarks and other view settings for next load|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|Add custom datatypes to structures tool|alex.richardson@gmx.de|Alex Richardson}}&lt;br /&gt;
{{FeatureDone|Lokalize|Optimize TM fuzzy searching||Nick Shaforostoff}}&lt;br /&gt;
{{FeatureDone|Lokalize|File search tab||Nick Shaforostoff}}&lt;br /&gt;
{{FeatureDone|Lokalize|.ts support||Nick Shaforostoff}}&lt;br /&gt;
{{FeatureDone|Umbrello|diagram auto layout support|ralf.habacker@freenet.de|Ralf Habacker}}&lt;br /&gt;
{{FeatureDone|Umbrello|diagram graphviz dot export |ralf.habacker@freenet.de|Ralf Habacker}}&lt;br /&gt;
{{FeatureDone|Thumbnail|PO thumbnailer|shuizhuyuanluo@126.com|Ni Hui}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= kdeutils=&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;
|}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;/div&gt;</summary>
		<author><name>Shaforostoff</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Schedules/KDE4/4.9_Feature_Plan</id>
		<title>Schedules/KDE4/4.9 Feature Plan</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Schedules/KDE4/4.9_Feature_Plan"/>
				<updated>2012-03-01T02:35:56Z</updated>
		
		<summary type="html">&lt;p&gt;Shaforostoff: /* kdesdk */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This is a list of planned features for the SC 4.9 release. &lt;br /&gt;
&lt;br /&gt;
See also: &lt;br /&gt;
&lt;br /&gt;
*[[Schedules/KDE4/4.9 Release Schedule]] &lt;br /&gt;
*[[Schedules/KDE4/4.8 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;
|}&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;
&lt;br /&gt;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact &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;
|}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= kde-baseapps =&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;
{{FeatureTodo|FolderView|Refactor into PopupApplet and Containment|ignat.semenov@blue-systems.com|Ignat Semenov}}&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;
&lt;br /&gt;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact &lt;br /&gt;
&lt;br /&gt;
{{FeatureInProgress|Marble|Worldwide hillshading|earthwings@gentoo.org|Dennis Nienhüser}}&lt;br /&gt;
{{FeatureTodo|Marble|Extended library API (no MarbleWidget dependency for tasks like parsing, routing)|earthwings@gentoo.org|Dennis Nienhüser}}&lt;br /&gt;
{{FeatureTodo|Marble|Marble Touch on Plasma Active|earthwings@gentoo.org|Dennis Nienhüser}}&lt;br /&gt;
{{FeatureTodo|Marble|Marble Touch on Android|earthwings@gentoo.org|Dennis Nienhüser}}&lt;br /&gt;
{{FeatureTodo|Marble|Support for loading geolocated photos (e.g. in a Gallery activity in Marble Touch)|earthwings@gentoo.org|Dennis Nienhüser}}&lt;br /&gt;
{{FeatureTodo|Marble|Layer Management (by the user: Toggle layer visibility; maybe move layers from legend and layers in menus to one central place/tab)|earthwings@gentoo.org|Dennis Nienhüser}}&lt;br /&gt;
&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;
&lt;br /&gt;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact &lt;br /&gt;
&lt;br /&gt;
{{FeatureDone|Kajongg|tooltips giving playings hints|wolfgang@rohdewald.de|Wolfgang Rohdewald}}&lt;br /&gt;
{{FeatureDone|Kajongg|new config option: propose what to do|wolfgang@rohdewald.de|Wolfgang Rohdewald}}&lt;br /&gt;
{{FeatureDone|Kajongg|make it possible to replay a game from a screen shot (for better debugging)|wolfgang@rohdewald.de|Wolfgang Rohdewald}}&lt;br /&gt;
{{FeatureDone|Kajongg|improve Robot AI|wolfgang@rohdewald.de|Wolfgang Rohdewald}}&lt;br /&gt;
{{FeatureInProgress|Kajongg|Add default voices|wolfgang@rohdewald.de|Wolfgang Rohdewald}}&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;
&lt;br /&gt;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact &lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= kdemultimedia =&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|JuK|last.fm scrobbling|martin.sandsmark@kde.org|Martin Sandsmark}}&lt;br /&gt;
{{FeatureDone|JuK|cover-fetching from last.fm|martin.sandsmark@kde.org|Martin Sandsmark}}&lt;br /&gt;
&lt;br /&gt;
&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;
&lt;br /&gt;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact &lt;br /&gt;
&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;
{{FeatureTodo|Akonadi Google Resources|Move contacts and calendars resources from Akonadi Google project to kdepim-runtime|dan@progdan.cz|Dan Vratil}}&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;
&lt;br /&gt;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact &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;
{{FeatureTodo|Okteta|Add a general KPart adapter to Kasten, than finish port of Okteta KPart to Okteta Kasten|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|Add global toggle option for the offset display, hex or decimal|kossebau@kde.org|Friedrich W. H. Kossebau}} &lt;br /&gt;
{{FeatureTodo|Okteta|Add Kate-like combined dialogs to query for actions on files|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|add Kate-like search tool|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|Add Okular like embedded notifications|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|add support for import by drop, both url and data|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|add support for memory mapping of files and 64-bit addressing|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|add support for jobs like io, printing, string search or filter|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|Add view profiles, incl. editor/manager|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|copy again puts also a value or char variant of the data to clipboard|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|Improve the titels of the changes to the bytearray to be more descriptive, best using ids to avoid text string|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|Make all user interaction in the KastenCore managers plugin-based|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|Merge row and column widgets into one|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|Store bookmarks|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|Store bookmarks and other view settings for next load|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|Add custom datatypes to structures tool|alex.richardson@gmx.de|Alex Richardson}}&lt;br /&gt;
{{FeatureDone|Lokalize|Optimize TM fuzzy searching||Nick Shaforostoff}}&lt;br /&gt;
{{FeatureDone|Lokalize|File search tab||Nick Shaforostoff}}&lt;br /&gt;
{{FeatureTodo|Lokalize|.ts support||Nick Shaforostoff}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= kdeutils=&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;
|}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;/div&gt;</summary>
		<author><name>Shaforostoff</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Schedules/KDE4/4.9_Feature_Plan</id>
		<title>Schedules/KDE4/4.9 Feature Plan</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Schedules/KDE4/4.9_Feature_Plan"/>
				<updated>2012-02-29T21:59:20Z</updated>
		
		<summary type="html">&lt;p&gt;Shaforostoff: /* kdesdk */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This is a list of planned features for the SC 4.9 release. &lt;br /&gt;
&lt;br /&gt;
See also: &lt;br /&gt;
&lt;br /&gt;
*[[Schedules/KDE4/4.9 Release Schedule]] &lt;br /&gt;
*[[Schedules/KDE4/4.8 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;
|}&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;
&lt;br /&gt;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact &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;
|}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= kde-baseapps =&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;
{{FeatureTodo|FolderView|Refactor into PopupApplet and Containment|ignat.semenov@blue-systems.com|Ignat Semenov}}&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;
&lt;br /&gt;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact &lt;br /&gt;
&lt;br /&gt;
{{FeatureInProgress|Marble|Worldwide hillshading|earthwings@gentoo.org|Dennis Nienhüser}}&lt;br /&gt;
{{FeatureTodo|Marble|Extended library API (no MarbleWidget dependency for tasks like parsing, routing)|earthwings@gentoo.org|Dennis Nienhüser}}&lt;br /&gt;
{{FeatureTodo|Marble|Marble Touch on Plasma Active|earthwings@gentoo.org|Dennis Nienhüser}}&lt;br /&gt;
{{FeatureTodo|Marble|Marble Touch on Android|earthwings@gentoo.org|Dennis Nienhüser}}&lt;br /&gt;
{{FeatureTodo|Marble|Support for loading geolocated photos (e.g. in a Gallery activity in Marble Touch)|earthwings@gentoo.org|Dennis Nienhüser}}&lt;br /&gt;
{{FeatureTodo|Marble|Layer Management (by the user: Toggle layer visibility; maybe move layers from legend and layers in menus to one central place/tab)|earthwings@gentoo.org|Dennis Nienhüser}}&lt;br /&gt;
&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;
&lt;br /&gt;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact &lt;br /&gt;
&lt;br /&gt;
{{FeatureDone|Kajongg|tooltips giving playings hints|wolfgang@rohdewald.de|Wolfgang Rohdewald}}&lt;br /&gt;
{{FeatureDone|Kajongg|new config option: propose what to do|wolfgang@rohdewald.de|Wolfgang Rohdewald}}&lt;br /&gt;
{{FeatureDone|Kajongg|make it possible to replay a game from a screen shot (for better debugging)|wolfgang@rohdewald.de|Wolfgang Rohdewald}}&lt;br /&gt;
{{FeatureDone|Kajongg|improve Robot AI|wolfgang@rohdewald.de|Wolfgang Rohdewald}}&lt;br /&gt;
{{FeatureInProgress|Kajongg|Add default voices|wolfgang@rohdewald.de|Wolfgang Rohdewald}}&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;
&lt;br /&gt;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact &lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= kdemultimedia =&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|JuK|last.fm scrobbling|martin.sandsmark@kde.org|Martin Sandsmark}}&lt;br /&gt;
{{FeatureDone|JuK|cover-fetching from last.fm|martin.sandsmark@kde.org|Martin Sandsmark}}&lt;br /&gt;
&lt;br /&gt;
&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;
&lt;br /&gt;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact &lt;br /&gt;
&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;
{{FeatureTodo|Akonadi Google Resources|Move contacts and calendars resources from Akonadi Google project to kdepim-runtime|dan@progdan.cz|Dan Vratil}}&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;
&lt;br /&gt;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact &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;
{{FeatureTodo|Okteta|Add a general KPart adapter to Kasten, than finish port of Okteta KPart to Okteta Kasten|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|Add global toggle option for the offset display, hex or decimal|kossebau@kde.org|Friedrich W. H. Kossebau}} &lt;br /&gt;
{{FeatureTodo|Okteta|Add Kate-like combined dialogs to query for actions on files|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|add Kate-like search tool|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|Add Okular like embedded notifications|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|add support for import by drop, both url and data|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|add support for memory mapping of files and 64-bit addressing|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|add support for jobs like io, printing, string search or filter|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|Add view profiles, incl. editor/manager|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|copy again puts also a value or char variant of the data to clipboard|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|Improve the titels of the changes to the bytearray to be more descriptive, best using ids to avoid text string|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|Make all user interaction in the KastenCore managers plugin-based|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|Merge row and column widgets into one|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|Store bookmarks|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|Store bookmarks and other view settings for next load|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|Add custom datatypes to structures tool|alex.richardson@gmx.de|Alex Richardson}}&lt;br /&gt;
{{FeatureDone|Lokalize|Optimize TM fuzzy searching||Nick Shaforostoff}}&lt;br /&gt;
{{FeatureDone|Lokalize|File search tab||Nick Shaforostoff}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= kdeutils=&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;
|}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;/div&gt;</summary>
		<author><name>Shaforostoff</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Getting_Started/Build/Windows/DistributionBasedBuild</id>
		<title>Getting Started/Build/Windows/DistributionBasedBuild</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Getting_Started/Build/Windows/DistributionBasedBuild"/>
				<updated>2011-02-20T22:03:53Z</updated>
		
		<summary type="html">&lt;p&gt;Shaforostoff: add link to static automoc&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page describes (re)building of KDE binary packages using the kdewin distribution. &lt;br /&gt;
&lt;br /&gt;
Applications build in this way will not have debugging support because the packages build in release mode do not have any debug symbols. If you need debug symbols you should use the [[Getting Started/Build/KDE4/Windows/emerge|Windows ''emerge'' tool]] &lt;br /&gt;
&lt;br /&gt;
It is assumed that KDE is installed using the KDEWin gui or console installer in %PROGRAMFILES%\kde and a developer tries to recompile the kdeedu binary package. &lt;br /&gt;
It is also assumed that the KDE installation tree is empty or contains only packages for the related compiler.&lt;br /&gt;
&lt;br /&gt;
== (Re)building packages for MS Visual Studio C++ ==&lt;br /&gt;
&lt;br /&gt;
* download [http://www.winkde.org/pub/kde/ports/win32/installer/kdewin-installer-gui-latest.exe KDE windows installer]&lt;br /&gt;
&lt;br /&gt;
* run the installer in '''Package Manager Mode''' and select '''msvc compiler'''&lt;br /&gt;
&lt;br /&gt;
* choose the '''all''' category and select (at least) the following packages    &lt;br /&gt;
** kdeedu bin and source package - this will also select all depending packages&lt;br /&gt;
** automoc (or use [http://www.winkde.org/pub/kde/ports/win32/repository/other/automoc4.exe static version])&lt;br /&gt;
** cmake&lt;br /&gt;
** perl&lt;br /&gt;
** psdk-msvc &lt;br /&gt;
** one of the vcexpress-xx-msvc package &lt;br /&gt;
** the development packages required for building the requested package. In the Package Manager mode of the gui installer you can see the required package dependencies by clicking on the package name (only first level dependency yet). For the kdeedu package the development package for kdelibs-msvc, kdebase-runtime-msvc, phonon-msvc and qt-msvc are required. &lt;br /&gt;
&lt;br /&gt;
* install the selected packages using the installer. &lt;br /&gt;
&lt;br /&gt;
* open a Visual Studio command prompt&lt;br /&gt;
&lt;br /&gt;
* set the required environment for the MS Platform SDK e.g. if your are using the 2003 R2 Release of the Platform SDK the command line looks like that: &lt;br /&gt;
    &amp;quot;%PROGRAMFILES%\Microsoft Platform SDK for Windows Server 2003 R2\setenv.cmd&amp;quot;&lt;br /&gt;
&lt;br /&gt;
* add the bin subdirectory of the kde installation dir to the PATH environment variable: &lt;br /&gt;
   set PATH=%PROGRAMFILES%\kde\bin;%PATH%&lt;br /&gt;
&lt;br /&gt;
* enter src subdirectory of the kde installation root&lt;br /&gt;
   cd %PROGRAMFILES%\kde\src&lt;br /&gt;
&lt;br /&gt;
* create a build directory and enter it&lt;br /&gt;
   mkdir kdeedu-msvc-build &amp;amp;&amp;amp; cd kdeedu-msvc-build&lt;br /&gt;
&lt;br /&gt;
* run cmake&lt;br /&gt;
   cmake.exe -G &amp;quot;NMake Makefiles&amp;quot; ..\kdeedu-msvc-4.1.3 -DCMAKE_INCLUDE_PATH=%PROGRAMFILES%\kde\include -DCMAKE_LIBRARY_PATH=%PROGRAMFILES%\kde\lib -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=%PROGRAMFILES%\kde&lt;br /&gt;
&lt;br /&gt;
* build&lt;br /&gt;
    nmake&lt;br /&gt;
&lt;br /&gt;
* install the compiled package&lt;br /&gt;
    nmake install&lt;br /&gt;
&lt;br /&gt;
== (Re)building packages for the MinGW compiler ==&lt;br /&gt;
&lt;br /&gt;
* download [http://www.winkde.org/pub/kde/ports/win32/installer/kdewin-installer-gui-latest.exe KDE windows installer]&lt;br /&gt;
&lt;br /&gt;
* run the installer in '''Package Manager Mode''' and select '''mingw compiler'''&lt;br /&gt;
&lt;br /&gt;
* choose the '''all''' category and then select the following packages&lt;br /&gt;
** the kdeedu bin and source package - this will also select all depending packages&lt;br /&gt;
** automoc (or use [http://www.winkde.org/pub/kde/ports/win32/repository/other/automoc4.exe static version])&lt;br /&gt;
** cmake&lt;br /&gt;
** gcc-mingw&lt;br /&gt;
** perl &lt;br /&gt;
** the development packages required for building the requested package. In the Package Manager mode of the gui installer you can see the required package dependencies by clicking on the package name (only first level dependency yet). For the kdeedu package the development package for kdelibs-mingw, kdebase-runtime-mingw, phonon-mingw and qt-mingw are required. &lt;br /&gt;
&lt;br /&gt;
* install the selected packages using the installer. For the gcc-mingw package use \Mingw as installation root. &lt;br /&gt;
&lt;br /&gt;
* add bin subdirectory of the mingw installation dir to the PATH environment variable &lt;br /&gt;
    set PATH=\Mingw\bin;%PATH%&lt;br /&gt;
&lt;br /&gt;
* add bin subdirectory of the kde installation dir to the PATH environment variable &lt;br /&gt;
    set PATH=%PROGRAMFILES%\kde\bin;%PATH%&lt;br /&gt;
&lt;br /&gt;
* enter src subdirectory of the kde installation root e.g.&lt;br /&gt;
    cd %PROGRAMFILES%\kde\src&lt;br /&gt;
&lt;br /&gt;
* create a build directory and enter it&lt;br /&gt;
    mkdir kdeedu-mingw-build &amp;amp;&amp;amp; cd kdeedu-mingw-build&lt;br /&gt;
&lt;br /&gt;
* run cmake&lt;br /&gt;
    cmake.exe -G &amp;quot;MinGW Makefiles&amp;quot; ..\kdeedu-mingw-4.1.3 -DCMAKE_INCLUDE_PATH=%PROGRAMFILES%\kde\include -DCMAKE_LIBRARY_PATH=%PROGRAMFILES%\kde\lib -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=%PROGRAMFILES%\kde&lt;br /&gt;
&lt;br /&gt;
* build&lt;br /&gt;
    mingw32-make&lt;br /&gt;
&lt;br /&gt;
* install the compiled package&lt;br /&gt;
    mingw32-make install&lt;br /&gt;
&lt;br /&gt;
== Make a binary package for the KDE on windows distribution ==&lt;br /&gt;
&lt;br /&gt;
* run the installer in '''Package Manager Mode''' and select '''kdewin-installer(-mingw|-msvc) '''&lt;br /&gt;
&lt;br /&gt;
* install the above mentioned packages with &amp;lt;make-tool&amp;gt; install&lt;br /&gt;
&lt;br /&gt;
* run kdewin-packager from kde installation bin dir with the following options: &lt;br /&gt;
  - name &amp;lt;the name of the package&amp;gt;&lt;br /&gt;
  - version &amp;lt;the package version e.g. 1.2.3 or 20090312&lt;br /&gt;
  - type &amp;lt;msvc&amp;gt; or &amp;lt;mingw&amp;gt; depending on the type of used compiler&lt;br /&gt;
  - root &amp;lt;the install root where the package has been installed into&amp;gt;&lt;br /&gt;
  - srcroot &amp;lt;the root of the source package tree&amp;gt;&lt;br /&gt;
  - destdir &amp;lt;the directory where the package will be placed into&amp;gt;&lt;/div&gt;</summary>
		<author><name>Shaforostoff</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-01-27T12:44:29Z</updated>
		
		<summary type="html">&lt;p&gt;Shaforostoff: &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;
= 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;
{{FeatureTodo|Marble|Routing API|earthwings@gentoo.org|Dennis Nienhüser}}&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}}&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;
{{FeatureTodo|Marble|Multi threaded texture mapping|jmho@c-xx.com|Jens-Michael Hoffmann}}&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;
|}&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;
|}&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;
{{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;
= 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;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;/div&gt;</summary>
		<author><name>Shaforostoff</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Schedules/KDE4/4.6_Feature_Plan</id>
		<title>Schedules/KDE4/4.6 Feature Plan</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Schedules/KDE4/4.6_Feature_Plan"/>
				<updated>2010-05-28T09:21:57Z</updated>
		
		<summary type="html">&lt;p&gt;Shaforostoff: /* kdesdk */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This is a list of planned features for the SC 4.6 release. &lt;br /&gt;
&lt;br /&gt;
See also: &lt;br /&gt;
&lt;br /&gt;
*[[Schedules/KDE4/4.6 Release Schedule]] &lt;br /&gt;
*[[Schedules/KDE4/4.6 Release Goals]] &lt;br /&gt;
*[[Schedules/KDE4/4.5 Feature Plan]]&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;
= 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;
{{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|Remote translation memories|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;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;/div&gt;</summary>
		<author><name>Shaforostoff</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Schedules/KDE4/4.5_Feature_Plan</id>
		<title>Schedules/KDE4/4.5 Feature Plan</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Schedules/KDE4/4.5_Feature_Plan"/>
				<updated>2010-05-28T09:19:21Z</updated>
		
		<summary type="html">&lt;p&gt;Shaforostoff: /* kdelibs */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This is a list of planned features for the SC 4.5 release. &lt;br /&gt;
&lt;br /&gt;
See also: &lt;br /&gt;
&lt;br /&gt;
*[[Schedules/KDE4/4.5 Release Schedule]] &lt;br /&gt;
*[[Schedules/KDE4/4.5 Release Goals]] &lt;br /&gt;
*[[Schedules/KDE4/4.4 Feature Plan]]&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;
= kdeadmin  =&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|system-config-printer-kde|Restore feature parity with KDEPrint3 where possible.||Jonathan Riddell, John Layt}} &lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= kdeartwork  =&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;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= kdebase-apps  =&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|Konqueror|Improvements in session-management|edulix@gmail.com|Eduardo Robles Elvira}} &lt;br /&gt;
{{FeatureTodo|Konqueror|Improvements in tab-bar widget|edulix@gmail.com|Eduardo Robles Elvira}} &lt;br /&gt;
{{FeatureInProgress|Konqueror|New Konqueror bookmarks using Akonadi and Nepomuk, awesome bar|edulix@gmail.com|Eduardo Robles Elvira}} &lt;br /&gt;
{{FeatureInProgress|nspluginviewer|npruntime scripting support|maksim@kde.org|Maks Orlovich}}&lt;br /&gt;
{{FeatureTodo|Konqueror|Add speeddial/thumbnails-like start page|germain@ebooksfrance.org|Germain Garand}} &lt;br /&gt;
{{FeatureDone|Konsole|Finish implementing tab context menu|kurt.hindenburg@gmail.com|Kurt Hindenburg}}&lt;br /&gt;
{{FeatureDone|Konsole|Allow setting tab profile from file on command-line|kurt.hindenburg@gmail.com|Kurt Hindenburg}}&lt;br /&gt;
{{FeatureInProgress|Konsole|Adds support for SHELL_SESSION_ID|kurt.hindenburg@gmail.com|Kurt Hindenburg}}&lt;br /&gt;
{{FeatureDone|Konsole|Modernize menu layout|sasch.pe@gmx.de|Sascha Peilicke}}&lt;br /&gt;
{{FeatureInProgress|Konsole|Move to KTabWidget|sasch.pe@gmx.de|Sascha Peilicke}}&lt;br /&gt;
{{FeatureInProgress|print-manager|New Print manager KCM and applet replacement, using C++|dantti85-pk@yahoo.com.br|Daniel Nicoletti}} &lt;br /&gt;
{{FeatureDone|Dolphin|Drag and drop on tabs|toddrme2178@gmail.com|Todd}}&lt;br /&gt;
{{FeatureDone|Dolphin|Make menus like &amp;quot;View Mode&amp;quot;, &amp;quot;Additional Information&amp;quot; and &amp;quot;Sort By&amp;quot; available as toolbar buttons|toddrme2178@gmail.com|Todd}}&lt;br /&gt;
{{FeatureTodo|Dolphin|Smooth scrolling|fredrik@kde.org|Fredrik Höglund}}&lt;br /&gt;
{{FeatureTodo|Dolphin|Faceted browsing|peter.penz@gmx.at|Peter Penz}}&lt;br /&gt;
{{FeatureDone|Dolphin|Make use of additional columns (Symbolic Link Destination, Path or URL) in KFileItemDelegate|frank78@googlemail.com|Frank Reininghaus}} &lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= kdebase-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;
{{FeatureTodo|KWallet|Single Sign On using PAM|lemma@confuego.org|Michael Leupold}}&lt;br /&gt;
{{FeatureTodo|network kioslave|Backend for LISa|kossebau@kde.org|Friedrich Kossebau}}&lt;br /&gt;
{{FeatureTodo|network kioslave|Backend for SMB|kossebau@kde.org|Friedrich Kossebau}}&lt;br /&gt;
{{FeatureTodo|network kioslave|Integrate with remote and zeroconf kioslaves|kossebau@kde.org|Friedrich Kossebau}}&lt;br /&gt;
{{FeatureTodo|Locale KCM|Add support for new KLocale and KCalendarSystem features (see kdelibs section) including AM/PM, etc.  Improvements to usability of existing money display options.|john@layt.net|John Layt}}&lt;br /&gt;
{{FeatureDone|Locale KCM|Ability to select more Digit Sets (Bengali, Gujarati, Gurmukhi, Kannada, Khmer, Malayalam, Oriya, Tamil, Telugu and Thai).  Ability to set date formats to include Calendar Era.|john@layt.net|John Layt}}&lt;br /&gt;
{{FeatureInProgress|network kioslave|Backend for UPnP|kossebau@kde.org|Friedrich Kossebau}}&lt;br /&gt;
{{FeatureTodo|network kioslave| Backend to discover bluetooth devices and they services |edulix@gmail.com|Eduardo Robles Elvira}}&lt;br /&gt;
{{FeatureInProgress|bluetooth kioslave|Backend to browse bluetooth devices|edulix@gmail.com|Eduardo Robles Elvira}}&lt;br /&gt;
{{FeatureDone|Nepomuk|Monitor file system changes via inotify|trueg@kde.org|Sebastian Trueg}}&lt;br /&gt;
{{FeatureTodo|KNotify|Route solid errors via knotify to the device notifier|wilderkde@gmail.com|Jacopo De Simoi}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= kdebase-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;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact&lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;text-align: center;&amp;quot; colspan=&amp;quot;4&amp;quot; | Non-Plasma, Non-KWin &lt;br /&gt;
{{FeatureDone|KInfoCenter|Complete rewrite of KInfoCenter|hubnerd@ntlworld.com|David Hubner}} &lt;br /&gt;
{{FeatureDone|KInfoCenter|Add Export functionality into KInfoCenter|hubnerd@ntlworld.com|David Hubner}}&lt;br /&gt;
{{FeatureDone|DeviceInfo KCM|New DeviceInfo KCM for KInfoCenter|hubnerd@ntlworld.com|David Hubner}}&lt;br /&gt;
{{FeatureDone|Summary KCM|New Summary KCM for KInfoCenter|hubnerd@ntlworld.com|David Hubner}}     &lt;br /&gt;
{{FeatureTodo|Icons KCM|More configurable icon sizes|christoph@maxiom.de|Christoph Feck}} &lt;br /&gt;
{{FeatureTodo|Fonts KCM|More configurable fonts|christoph@maxiom.de|Christoph Feck}} &lt;br /&gt;
{{FeatureTodo|BlueDevil Wizard |Write a new Wizard to pair Bluetooth devices |alex@eyeos.org|Alex Fiestas}} &lt;br /&gt;
{{FeatureTodo|Bluetooth KCM|New KCM to manage all bluetooth configurations and devices|ereslibre@kde.org|Rafael Fernandez}}&lt;br /&gt;
{{FeatureTodo|Screenedges|Screenedges handling outside of kwin/plasma|kde@martin-graesslin.com|Martin Gräßlin}}&lt;br /&gt;
{{FeatureInProgress|Oxygen style|Move window using left-mouse button on windows' empty areas|hugo@oxygen-icons.org|Hugo Pereira Da Costa}}&lt;br /&gt;
{{FeatureDone|Oxygen configuration|Oxygen style and decoration standalone expert configuration tool|hugo@oxygen-icons.org|Hugo Pereira Da Costa}}&lt;br /&gt;
{{FeatureDone|Free Space Notifier Daemon|Small daemon that warns you when your home has almost no space left|knuckles@gmail.com|Ivo Anjo}}&lt;br /&gt;
{{FeatureInProgress|Activities Daemons|Daemons to handle info about activities (kded daemon and a nepomuk service)|ivan.cukic@kde.org|Ivan Cukic}}&lt;br /&gt;
{{FeatureInProgress|Systemsettings|driconf KCM|fredrik@kde.org|Fredrik Höglund}}&lt;br /&gt;
{{FeatureDone|PowerDevil|Display brightness OSD|debfx-kde@fobos.de|Felix Geyer}}&lt;br /&gt;
{{FeatureDone|Keyboard|Merge keyboard hardware and layouts configuration UI|arysin@gmail.com|Andriy Rysin}}&lt;br /&gt;
{{FeatureDone|Keyboard|Allow adding layouts by language|arysin@gmail.com|Andriy Rysin}}&lt;br /&gt;
{{FeatureDone|Keyboard|Add keyboard layout indicator plasma applet|arysin@gmail.com|Andriy Rysin}}&lt;br /&gt;
{{FeatureDone|Keyboard|Allow configuring keyboard model without configuring layouts|arysin@gmail.com|Andriy Rysin}}&lt;br /&gt;
{{FeatureDone|Keyboard|Allow by-window switching and KDE shortcut without configuring layouts|arysin@gmail.com|Andriy Rysin}}&lt;br /&gt;
{{FeatureDone|Keyboard|Rewrite keyboard layouts app into kded daemon|arysin@gmail.com|Andriy Rysin}}&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|systemtray/taskmanager|port the systray and tasks applet to windows|windows@kde.org|kde windows}}&lt;br /&gt;
{{FeatureInProgress|systemtray|monochrome statusnotifier based systray icons support|notmart@gmail.com|Marco Martin}}&lt;br /&gt;
{{FeatureTodo|systemtray|sort icons by category|notmart@gmail.com|Marco Martin}}&lt;br /&gt;
{{FeatureInProgress|systemtray|put hidden icons in a popup menu|notmart@gmail.com|Marco Martin}}&lt;br /&gt;
{{FeatureDone|tasks dataengine|export all informations needed to build an applet comparable to the current one|matthieu_gallien@yahoo.fr|Matthieu Gallien}}&lt;br /&gt;
{{FeatureDone|notifications|split systemtray and notifications applet|notmart@gmail.com|Marco Martin}}  &lt;br /&gt;
{{FeatureInProgress|notifications|new look and behaviour for notifications|notmart@gmail.com|Marco Martin}}&lt;br /&gt;
{{FeatureDone|notifications|support for remote applets for notifications|notmart@gmail.com|Marco Martin}}&lt;br /&gt;
{{FeatureDone|netbook/SAL|use QStandardModels|notmart@gmail.com|Marco Martin}}&lt;br /&gt;
{{FeatureInProgress|netbook/SAL|support for drag and drop of items|notmart@gmail.com|Marco Martin}}&lt;br /&gt;
{{FeatureTodo|netbook/SAL|package manager invocation from the toolbox|notmart@gmail.com|Marco Martin}}&lt;br /&gt;
{{FeatureTodo|netbook/Workspace KCM|New default options for KWin: tabbox as present windows, that will be set as regular grid|notmart@gmail.com|Marco Martin}}&lt;br /&gt;
{{FeatureTodo|libplasma/extenders|put extendergroups in scrollwidgets|notmart@gmail.com|Marco Martin}}&lt;br /&gt;
{{FeatureTodo|libplasma/extenders|possibility to detach exteneritems as standalone windows|notmart@gmail.com|Marco Martin}}&lt;br /&gt;
{{FeatureInProgress|libplasma/theme|more transparent dialogs when the blur effect is enabled|notmart@gmail.com|Marco Martin}}&lt;br /&gt;
{{FeatureInProgress|libplasma/desktop|Activity Manager UI|chani@kde.org|Chani}}&lt;br /&gt;
{{FeatureTodo|accounts applet|a plasma widget that is a central place to add accounts to social sites like identica and opendesktop, optimized for the netbook shell|notmart@gmail.com|Marco Martin}}&lt;br /&gt;
{{FeatureTodo|libplasma|Improvements to Calendar/Clock widgets. Improved config ui. Allow multiple holidays on same day. Allow multiple Holiday Regions. Weekends. etc.|john@layt.net|John Layt}} &lt;br /&gt;
{{FeatureTodo|folderview|&amp;quot;Open folder&amp;quot; icon to open folder into pop-up at request instead of automatically.|bigras.bruno@gmail.com|Bruno Bigras}}&lt;br /&gt;
{{FeatureTodo|folderview|Extend the configuration UI for nepomuksearch|fredrik@kde.org|Fredrik Höglund}}&lt;br /&gt;
{{FeatureInProgress|Extend Calendar DataEngine with Akonadi calendar incidents|Allows to query calendar events/todos from Akonadi in Plasma|gladhornKDEorg|Frederik Gladhorn}}&lt;br /&gt;
{{FeatureDone|calculator|Added optional libqalculate support in the calculator runner|agostinelli@gmail.com|Matteo Agostinelli}}&lt;br /&gt;
{{FeatureInProgress|KRunner|Add some advanced sorting to KRunner using Nepomuk|l.appelhans@gmx.de|Lukas Appelhans}}&lt;br /&gt;
{{FeatureTodo|KRunner|Improve keyboard navigation &amp;amp; command history interaction|wilderkde@gmail.com|Jacopo De Simoi}}&lt;br /&gt;
{{FeatureInProgress|device-notifier|Route all solid error notifications via knotify to the device notifier|wilderkde@gmail.com|Jacopo De Simoi}}&lt;br /&gt;
{{FeatureInProgress|device-notifier|Detailed (HAL) error notifications in the device notifier|wilderkde@gmail.com|Jacopo De Simoi}}&lt;br /&gt;
{{FeatureInProgress|Plasma::Theme|Themed CSS support|sebas@kde.org|Sebastian Kügler}}&lt;br /&gt;
{{FeatureTodo|battery|Weighted charge information for multiple batteries|sebas@kde.org|Sebastian Kügler}}&lt;br /&gt;
{{FeatureTodo|Plasma|Welcome plasmoid|riccardo@kde.org|Riccardo Iaconelli}}&lt;br /&gt;
{{FeatureInProgress|crystal|New desktop search widget|sebas@kde.org|Sebastian Kügler}}&lt;br /&gt;
{{FeatureInProgress|networkmanagement|Network management Plasmoid|sebas@kde.org|Sebastian Kügler}}&lt;br /&gt;
{{FeatureDone|quicklaunch|Improvements from Ingomar Wesp|l.appelhans@gmx.de|Lukas Appelhans}}&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|Tiling|Merge window tiling branch|kde@martin-graesslin.com|Martin Gräßlin}}&lt;br /&gt;
{{FeatureInProgress|KWin|New flag to exclude windows from switchers|kde@martin-graesslin.com|Martin Gräßlin}}&lt;br /&gt;
{{FeatureDone|KCM Decoration|New decoration kcm with previews and GHNS|kde@martin-graesslin.com|Martin Gräßlin}}&lt;br /&gt;
{{FeatureDone|Aurorae|Port Aurorae to GraphicsView and KDecoration|kde@martin-graesslin.com|Martin Gräßlin}}&lt;br /&gt;
{{FeatureDone|Aurorae|Better themeing support|kde@martin-graesslin.com|Martin Gräßlin}}&lt;br /&gt;
{{FeatureDone|Aurorae|Window tabbing support|kde@martin-graesslin.com|Martin Gräßlin}}&lt;br /&gt;
{{FeatureDone|Aurorae|Decorations on window sides|kde@martin-graesslin.com|Martin Gräßlin}}&lt;br /&gt;
{{FeatureTodo|Aurorae|Autohiding decoration for maximized windows|kde@martin-graesslin.com|Martin Gräßlin}}&lt;br /&gt;
{{FeatureInProgress|kwin|hide windows from other activities|chani@kde.org|Chani}}&lt;br /&gt;
{{FeatureTodo|Effects|Move features from present windows to libkwineffects to make them available in desktop grid|kde@martin-graesslin.com|Martin Gräßlin}}&lt;br /&gt;
{{FeatureTodo|Effects|Add close window button to each window in present windows/desktop grid|kde@martin-graesslin.com|Martin Gräßlin}}&lt;br /&gt;
{{FeatureTodo|Window Tabbing/libtaskmanager|Announce window groups to be used for grouping in tasks applet|kde@martin-graesslin.com|Martin Gräßlin}}&lt;br /&gt;
{{FeatureInProgress|KWin/plasma|New window type for Plasma dashboard|kde@martin-graesslin.com|Martin Gräßlin}}&lt;br /&gt;
{{FeatureDone|Effects|New blur effect|fredrik@kde.org|Fredrik Höglund}}&lt;br /&gt;
{{FeatureInProgress|Effects|High quality scaling shader for the taskbar thumbnails|fredrik@kde.org|Fredrik Höglund}}&lt;br /&gt;
{{FeatureTodo|KWin|Hint for defining the window snap rect|fredrik@kde.org|Fredrik Höglund}}&lt;br /&gt;
{{FeatureInProgress|Effects|Glide effect for opening and closing windows|iori.yagami.26979@gmail.com|Iori Yagami}}&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;
{{FeatureTodo|KStars|Display Comet Magnitudes whenever possible|akarshsimha@gmail.com|Akarsh Simha}} &lt;br /&gt;
{{FeatureTodo|KStars|Information links in-place for each technical term|akarshsimha@gmail.com|Akarsh Simha}} {{FeatureTodo|KStars|Tool to suggest star-hopping techniques???|akarshsimha@gmail.com|Akarsh Simha}} &lt;br /&gt;
{{FeatureTodo|KStars|Extend conjunction tool to have one object unspecified, but have a genre of objects specified instead|akarshsimha@gmail.com|Akarsh Simha}} &lt;br /&gt;
{{FeatureTodo|KStars|Simulate Lunar Eclipses|akarshsimha@gmail.com|Akarsh Simha}} &lt;br /&gt;
{{FeatureTodo|KStars|Simulate Satellites and Iridium Flares|akarshsimha@gmail.com|Akarsh Simha}} &lt;br /&gt;
{{FeatureTodo|KStars|Social and Geographical Integration for KStars|akarshsimha@gmail.com|Akarsh Simha}} &lt;br /&gt;
{{FeatureTodo|KStars|Marble widget for Geolocation tool|mboquien@free.fr|Médéric Boquien}} &lt;br /&gt;
{{FeatureTodo|KStars|Better printed star charts|kstars@30doradus.org|Jason Harris}} &lt;br /&gt;
{{FeatureTodo|KStars|Better rendering of comets/asteroids|kstars@30doradus.org|Jason Harris}} &lt;br /&gt;
{{FeatureTodo|KStars|Texture mapping of the skymap???|kstars@30doradus.org|Jason Harris}} &lt;br /&gt;
{{FeatureTodo|Kalzium|Port Kalzium to use QGV based periodic table widget|mhanwell@kde.org|Marcus D. Hanwell}}&lt;br /&gt;
{{FeatureTodo|Marble|Add proper support for GPX waypoints, tracks and routes display|anders@alweb.dk|Anders Lund}}&lt;br /&gt;
{{FeatureTodo|Marble|Export map to MxN pixel bitmap|inge@lysator.liu.se|Inge Wallin}}&lt;br /&gt;
{{FeatureTodo|Marble|Map Contents translation|tackat@kde.org|Torsten Rahn}}&lt;br /&gt;
{{FeatureDone|Marble|Support OpenStreetMap Nominatim as search backend (MarbleRunner)|earthwings@gentoo.org|Dennis Nienhüser}}&lt;br /&gt;
{{FeatureDone|Marble|Generalized Animations with GeoDataLookAt support|earthwings@gentoo.org|Dennis Nienhüser}}&lt;br /&gt;
{{FeatureDone|Marble|Online-Routing|earthwings@gentoo.org|Dennis Nienhüser}}&lt;br /&gt;
{{FeatureDone|Marble|GPS improvements|earthwings@gentoo.org|Dennis Nienhüser}}&lt;br /&gt;
{{FeatureInProgress|Marble|Maemo Support|earthwings@gentoo.org|Bastian Holst, Dennis Nienhüser}}&lt;br /&gt;
{{FeatureInProgress|Marble|GeoGraphicsScene for Online Service Plugins|bastianholst@gmx.de|Bastian Holst}}&lt;br /&gt;
{{FeatureInProgress|Marble|Follow XDG Base Directory Specification|bastianholst@gmx.de|Bastian Holst}}&lt;br /&gt;
{{FeatureDone|Marble|Download region|jmho@c-xx.com|Jens-Michael Hoffmann}}&lt;br /&gt;
{{FeatureInProgress|Marble|Implement sun locator blendings as derived classes of Marble::Blending|jmho@c-xx.com|Jens-Michael Hoffmann}}&lt;br /&gt;
{{FeatureInProgress|Marble|Configurable texture layer blending|jmho@c-xx.com|Jens-Michael Hoffmann}}&lt;br /&gt;
{{FeatureInProgress|Marble|Import geonames city data|sonu.itbhu@gmail.com|Harshit Jain}}&lt;br /&gt;
{{FeatureInProgress|Marble|Bookmark support|anik.varshney@gmail.com|Kumar Anik Varshney}}&lt;br /&gt;
{{FeatureInProgress|Marble|Various Marble speed improvements|rahn@kde.org|Torsten Rahn, Ariya Hidayat}}&lt;br /&gt;
{{FeatureInProgress|Marble|Plugin to display APRS data|hardaker@users.sourceforge.net|Wes Hardaker}}&lt;br /&gt;
{{FeatureDone|KAlgebra|Type checker for expressions to statically detect errors|aleixpol@kde.org|Aleix Pol}}&lt;br /&gt;
{{FeatureDone|KAlgebra|Support for drawing implicit curves|percy.camilo.ta@gmail.com|Percy Camilo Triveño Aucahuasi}}&lt;br /&gt;
{{FeatureInProgress|Parley|Parley practice mode rewritten|gladhornKDEorg|Daniel Laidig, Frederik Gladhorn}}&lt;br /&gt;
{{FeatureTodo|Parley|LaTeX support|laidig_kde.org|Daniel Laidig}}&lt;br /&gt;
{{FeatureTodo|Parley|Better support for entering synonyms|laidig_kde.org|Benjamin Schleinzer, Daniel Laidig}}&lt;br /&gt;
{{FeatureTodo|Cantor|import and polish Qalculate! backend|mail@milianw.de|Milian Wolff}}&lt;br /&gt;
{{FeatureDone|KTurtle|Implement GHNS download support|nielsslot@gmail.com|Niels Slot}}&lt;br /&gt;
{{FeatureTodo|KTurtle|Implement GHNS upload support|nielsslot@gmail.com|Niels Slot}}&lt;br /&gt;
{{FeatureDone|Rocs|Node beautification in SVG|tcanabrava@kde.org|Tomaz Canabrava}}&lt;br /&gt;
{{FeatureDone|Rocs|Threads for not blocking the UI|tcanabrava@kde.org|Tomaz Canabrava}}&lt;br /&gt;
{{FeatureDone|Rocs|Redesigned the UI for better usability|tcanabrava@kde.org|Tomaz Canabrava}}&lt;br /&gt;
{{FeatureDone|Rocs|Plugin System|wiglot@gmail.com|Wagner Reck}}&lt;br /&gt;
{{FeatureDone|Rocs|Small plugins as examples|wiglot@gmail.com|Wagner Reck}}&lt;br /&gt;
{{FeatureDone|Rocs|Multiple Script support|tcanabrava@kde.org|Tomaz Canabrava}}&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;
{{FeatureTodo|Granatier|Arena Editor|k.hias@gmx.de|Mathias Kraus}}&lt;br /&gt;
{{FeatureInProgress|Kajongg|New traditional Mahjongg for four players|wolfgang@rohdewald.de|Wolfang Rohdewald}}&lt;br /&gt;
{{FeatureTodo|Kajongg|Default voices for computer players|wolfgang@rohdewald.de|Wolfgang Rohdewald}}&lt;br /&gt;
{{FeatureDone|KBounce|Difficulty levels|ascherfy@gmail.com|Andreas Scherf}}&lt;br /&gt;
{{FeatureDone|KBounce|Random images as background|ascherfy@gmail.com|Andreas Scherf}}&lt;br /&gt;
{{FeatureTodo|KBreakOut|Level Sets|fela.kde@gmail.com|Fela Winkelmolen}} {{FeatureTodo|KBreakOut|Sound|fela.kde@gmail.com|Fela Winkelmolen}}&lt;br /&gt;
{{FeatureDone|KGoldrunner|Add the Demolition game (20 levels)|iandw.au@gmail.com|Ian Wadham}}&lt;br /&gt;
{{FeatureDone|Kigo|Load SGF games from command line and register to mimetype 'application/x-go-sgf'|sasch.pe@gmx.de|Sascha Peilicke}}&lt;br /&gt;
{{FeatureInProgress|Kigo|Fix KNewStuff provider issues|sasch.pe@gmx.de|Sascha Peilicke}}&lt;br /&gt;
{{FeatureInProgress|Kiriki|Hint|luizromario@gmail.com|Luiz Romário Santana Rios}}&lt;br /&gt;
{{FeatureTodo|Kolf|Replace with Kolf 2 (help on coding and artwork desired)|majewsky@gmx.net|Stefan Majewsky}}&lt;br /&gt;
{{FeatureDone|Konquest|Merge the patch by Sean D'Epagnier to implement many features like map editing|pinaraf@pinaraf.info|Pierre Ducroquet}}&lt;br /&gt;
{{FeatureDone|KPat|Add keyboard controls to allow playing without a mouse.|parker.coates@kdemail.net|Parker Coates}}&lt;br /&gt;
{{FeatureInProgress|KPat|Create a new LibKCardGame from KPat's card scene logic. Make it generic and friendly enough for use in other card games.|parker.coates@kdemail.net|Parker Coates}}&lt;br /&gt;
{{FeatureTodo|KsirK|rewrite AI code or at least correct most problems related in bug #170777. Volunteers wanted!|kleag@free.fr|Gaël de Chalendar}} &lt;br /&gt;
{{FeatureTodo|KsirK|Boost playing over Jabber|kleag@free.fr|Gaël de Chalendar}}&lt;br /&gt;
{{FeatureTodo|KSquares|Re-write computer player, make it act faster and more intelligent|ewoerner@kde.org|Eckhart Wörner}} &lt;br /&gt;
{{FeatureTodo|KSquares|Add more types of boards: hexagonal, triangular|ewoerner@kde.org|Eckhart Wörner}} &lt;br /&gt;
{{FeatureTodo|KSudoku|Import new engine|joselb@gmx.net|Johannes Bergmeier}} &lt;br /&gt;
{{FeatureTodo|KSudoku|Port game to new engine|joselb@gmx.net|Johannes Bergmeier}} &lt;br /&gt;
{{FeatureTodo|KSudoku|Adapt view to show information provided by engine|joselb@gmx.net|Johannes Bergmeier}} &lt;br /&gt;
{{FeatureTodo|KSudoku|Add new actions to GUI|joselb@gmx.net|Johannes Bergmeier}}&lt;br /&gt;
{{FeatureInProgress|KTuberling|A new &amp;quot;fast switch&amp;quot; between playgrounds|alex@eyeos.org|Alex Fiestas}}&lt;br /&gt;
{{FeatureDone|Palapeli|[https://bugs.kde.org/show_bug.cgi?id{{=}}233784 Optimize size of puzzle files in default collection] (temporarily fixed for this release cycle with an awful hack)|majewsky@gmx.net|Stefan Majewsky}} &lt;br /&gt;
{{FeatureTodo|Palapeli|[https://bugs.kde.org/show_bug.cgi?id{{=}}211859 Recieve new puzzles over KNewStuff]|majewsky@gmx.net|Stefan Majewsky}} &lt;br /&gt;
{{FeatureTodo|Palapeli|[https://bugs.kde.org/show_bug.cgi?id{{=}}211861 Introduce handicap as a means to configure difficulty]|majewsky@gmx.net|Stefan Majewsky}} &lt;br /&gt;
{{FeatureTodo|Palapeli|[https://bugs.kde.org/show_bug.cgi?id{{=}}211866 Implement puzzle piles to organize pieces]|majewsky@gmx.net|Stefan Majewsky}} &lt;br /&gt;
{{FeatureTodo|Palapeli|[https://bugs.kde.org/show_bug.cgi?id{{=}}212814 Quick piece grouping]|majewsky@gmx.net|Stefan Majewsky}} &lt;br /&gt;
{{FeatureTodo|Palapeli|[https://bugs.kde.org/show_bug.cgi?id{{=}}213774 Add magnifying glass]|majewsky@gmx.net|Stefan Majewsky}} &lt;br /&gt;
{{FeatureDone|Palapeli|Rewrite puzzle table mouse interaction stack|majewsky@gmx.net|Stefan Majewsky}}&lt;br /&gt;
{{FeatureDone|Palapeli|Cleanup config dialog code|majewsky@gmx.net|Stefan Majewsky}}&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;
{{FeatureTodo|libkdcraw|Make color management options more flexible|marcel.wiesweg@gmx.de|Marcel Wiesweg}} &lt;br /&gt;
{{FeatureDone|libksane|Improve auto-selection|kare.sars@iki.fi|K&amp;amp;aring;re S&amp;amp;auml;rs}} &lt;br /&gt;
{{FeatureDone|libksane|Highlight scanned area|kare.sars@iki.fi|K&amp;amp;aring;re S&amp;amp;auml;rs}} &lt;br /&gt;
{{FeatureTodo|libksane|Add public API for available devices|kare.sars@iki.fi|K&amp;amp;aring;re S&amp;amp;auml;rs}} &lt;br /&gt;
{{FeatureTodo|gwenview|Show Nepomuk info in image meta info|agateau@kde.org|Aurelien Gateau}} &lt;br /&gt;
{{FeatureTodo|gwenview|Persistent changes|agateau@kde.org|Aurelien Gateau}}&lt;br /&gt;
{{FeatureTodo|okular|Thumb creators via Okular Core|harsh@harshj.com|Harsh J}} &lt;br /&gt;
&lt;br /&gt;
|}&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;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact &lt;br /&gt;
{{FeatureDone|katepart|loading compressed files and then saving them back in the original compression format (bug 65518)&lt;br /&gt;
|cullmann@kde.org|Christoph Cullmann}}&lt;br /&gt;
{{FeatureTodo|katepart|Add visual block mode and make the basic commands support it|ehambergαgmail.com|Erlend Hamberg}}&lt;br /&gt;
{{FeatureTodo|katepart|context dependent indenters|mail@milianw.de|Milian Wolff}}&lt;br /&gt;
{{FeatureTodo|katepart|scripting configuration, esp. for indenters|mail@milianw.de|Milian Wolff}}&lt;br /&gt;
{{FeatureTodo|katepart|list of available scripts and indenters|mail@milianw.de|Milian Wolff}}&lt;br /&gt;
{{FeatureTodo|katepart|GHNS for scripts/indenters|mail@milianw.de|Milian Wolff}}&lt;br /&gt;
{{FeatureTodo|katepart|easier writing of indenters, esp. by automatically reloading them when changed|mail@milianw.de|Milian Wolff}}&lt;br /&gt;
{{FeatureTodo|katepart|extend list of available default styles for highlighting, remove hardcoded colors from existing XML files|mail@milianw.de|Milian Wolff}}&lt;br /&gt;
{{FeatureTodo|katepart|improve AutoBrace plugin|mail@milianw.de|Milian Wolff}}&lt;br /&gt;
{{FeatureInProgress|katepart/ktexteditor|defaultvalues, regular expressions, mirroring master, scripting of templates|jowenn(you_know)kde(here_too)org|Joseph Wenninger}}&lt;br /&gt;
{{FeatureInProgress|ktexteditor plugin|InsaneHTML_LE (zencoding like selector input (light edition)|jowenn(you_know)kde(here_too)org|Joseph Wenninger}}&lt;br /&gt;
{{FeatureTodo|katepart|replace smart cursor/ranges API|cullmann@kde.org|Christoph Cullmann}}&lt;br /&gt;
{{FeatureTodo|kdeui|API to integrate KStatusNotifierItem and KNotification: both as class api and DBus specification API|davide.bettio@kdemail.net|Davide Bettio}}&lt;br /&gt;
{{FeatureDone|KCalendarSystem|Add support for Date Difference calculations.|john@layt.net|John Layt}}&lt;br /&gt;
{{FeatureDone|KCalendarSystem|Add support for era based calendar systems.|john@layt.net|John Layt}}&lt;br /&gt;
{{FeatureDone|KCalendarSystem|Add new calendar systems: Japanese Era, Thai, Taiwanese.|john@layt.net|John Layt}}&lt;br /&gt;
{{FeatureDone|KCalendarSystem|Add support for Unicode format strings for Qt and cross-platform compatability (for output only, not input).|john@layt.net|John Layt}}&lt;br /&gt;
{{FeatureTodo|KCalendarSystem|Add new astronomical calculation support classes to be used in kdelibs to build new astronomically based calendar systems, and in kdepim to build new version of libkholiday.|john@layt.net|John Layt}} &lt;br /&gt;
{{FeatureTodo|KCalendarSystem|Add new calendar systems: Bahai'i, Chinese, Buddhist, etc.|john@layt.net|John Layt}}&lt;br /&gt;
{{FeatureTodo|KCalendarSystem|Add support for traditional/USA week numbering.|john@layt.net|John Layt}}&lt;br /&gt;
{{FeatureTodo|kdecore|Group policy (Windows) backend for KAuth|drf@kde.org|Dario Freddi}}&lt;br /&gt;
{{FeatureTodo|KDEPrint|Add framework for standard actions for 'Send to...' for e-mail, fax, etc by printing to PDF/PS.|john@layt.net|John Layt}} &lt;br /&gt;
{{FeatureTodo|kdeui|Implement caps-lock warning for password entry widgets|lemma@confuego.org|Michael Leupold}}&lt;br /&gt;
{{FeatureTodo|KLocale|Implement support for number grouping other than thousands using LC_NUMERIC and LC_MONETARY formats, e.g. India 00 00 000 and China 0000 0000.|john@layt.net|John Layt}} &lt;br /&gt;
{{FeatureTodo|KLocale|Add configuration for AM/PM symbols.|john@layt.net|John Layt}} &lt;br /&gt;
{{FeatureTodo|KLocale|Full POSIX compliant format support for date, time, numbers and money.|john@layt.net|John Layt}} &lt;br /&gt;
{{FeatureTodo|KLocale|Implement more 'named' date/time formats, e.g. ISO, UnixTimestamp, RFC3339, etc.|john@layt.net|John Layt}} &lt;br /&gt;
{{FeatureTodo|KLocale|Add Full date format in addition to existing short and long.|john@layt.net|John Layt}} &lt;br /&gt;
{{FeatureTodo|KLocale|Add default colour to optionally display negative numbers.|john@layt.net|John Layt}} &lt;br /&gt;
{{FeatureTodo|KLocale|Implement separate backends for each supported platform/desktop to use platform localisation in place of KDE locale.|john@layt.net|John Layt}} &lt;br /&gt;
{{FeatureTodo|KLocale|Implement support for additional Country Code standards: ISO Alpha 3, ISO Numeric 3, FIPS-10.|john@layt.net|John Layt}} &lt;br /&gt;
{{FeatureTodo|KLocale|Implement support for Country Code sub-regions, i.e. States/Provinces/etc. Needed for new KHolidays.|john@layt.net|John Layt}} &lt;br /&gt;
{{FeatureTodo|kdeui|Improvements to KDatePicker/KDateTable for feature parity with Plasma Calendar widget, i.e. holiday support, select calendar system, etc.|john@layt.net|John Layt}} &lt;br /&gt;
{{FeatureTodo|kdeui|DBus interface in StatusNotifierItem to connect it with freedesktop notifications instances|notmart@gmail.com|Marco Martin}}&lt;br /&gt;
{{FeatureTodo|khtml|Improvements in kwallet integration|edulix@gmail.com|Eduardo Robles Elvira}}&lt;br /&gt;
{{FeatureInProgress|khtml|Basic audio/video tag support|germain@ebooksfrance.org|Michael Howell and Germain Garand}} &lt;br /&gt;
{{FeatureInProgress|khtml|DOM3 XPath/XPath1 support|maksim@kde.org|Maks Orlovich}}&lt;br /&gt;
{{FeatureDone|khtml|Selectors API1|maksim@kde.org|Maks Orlovich}}&lt;br /&gt;
{{FeatureTodo|khtml and kparts|More general KPart scripting interfaces|maksim@kde.org|Maks Orlovich}}&lt;br /&gt;
{{FeatureTodo|khtml|Implement more of DOM3's CSSOM View module|germain@ebooksfrance.org|Germain Garand}}&lt;br /&gt;
{{FeatureInProgress|khtml|Implement missing parts of DOM3's Background and Borders module|germain@ebooksfrance.org|Germain Garand}}&lt;br /&gt;
{{FeatureTodo|khtml|add new form widgets defined in HTML5 draft|germain@ebooksfrance.org|Germain Garand}}&lt;br /&gt;
{{FeatureDone|KNewStuff|Improved Download Dialog, multiple previews, better integration of details, changelog is displayed|gladhornKDEorg|Frederik Gladhorn}}&lt;br /&gt;
{{FeatureInProgress|KNewStuff|Icon view mode|gladhornKDEorg|Reza Shah, Frederik Gladhorn}}&lt;br /&gt;
{{FeatureDone|KNewStuff|Upload dialog rewritten: It now supports updating of old uploads, previews, most data that can be entered on the website and allows direct login to the account|gladhornKDEorg|Frederik Gladhorn}}&lt;br /&gt;
{{FeatureTodo|KNewStuff|Support more than one payload|jmho@c-xx.com|Jens-Michael Hoffmann}}&lt;br /&gt;
{{FeatureTodo|kdeui|Social About Dialog|teo@kde.org|Téo Mrnjavac}}&lt;br /&gt;
{{FeatureTodo|kdeui|Generic find bar widget|sasch.pe@gmx.de|Sascha Peilicke}}&lt;br /&gt;
{{FeatureTodo|kio|SSL client certificate support|ahartmetz@gmail.com|Andreas Hartmetz}}&lt;br /&gt;
{{FeatureTodo|kio|SSL root certificate list GUI + backend|ahartmetz@gmail.com|Andreas Hartmetz}}&lt;br /&gt;
{{FeatureDone|kio|Add &amp;quot;apply to all&amp;quot; checkbox in renamedialog and allow for automatic renaming|toddrme2178@gmail.com|Todd}}&lt;br /&gt;
{{FeatureDone|kio|Port renamedialog to KFileMetaDataWidget|toddrme2178@gmail.com|Todd}}&lt;br /&gt;
{{FeatureDone|kio|Don't select extension in renamedialog|toddrme2178@gmail.com|Todd}}&lt;br /&gt;
{{FeatureDone|kio|Better listing of applications in file &amp;quot;open with&amp;quot; context menu|toddrme2178@gmail.com|Todd}}&lt;br /&gt;
{{FeatureDone|kio|Context menu entry to open all files in their default applications|toddrme2178@gmail.com|Todd}}&lt;br /&gt;
{{FeatureDone|kio|Add support for additional columns (e.g., smybolic link destination) in KFileItemDelegate|frank78ac@googlemail.com|Frank Reininghaus}}&lt;br /&gt;
{{FeatureDone|kfile|Scroll wheel support for breadcrumb bar|toddrme2178@gmail.com|Todd}}&lt;br /&gt;
{{FeatureDone|kfile|Show all sub-folders in breadcrumb bar|toddrme2178@gmail.com|Todd}}&lt;br /&gt;
{{FeatureDone|kfile|Middle-click on subfolder in the breadcrumb bar to open in a new tab|toddrme2178@gmail.com|Todd}}&lt;br /&gt;
{{FeatureDone|kfile|Easier access to protocols in breadcrumb bar|toddrme2178@gmail.com|Todd}}&lt;br /&gt;
{{FeatureTodo|kfile|Show sub-sub-folders (and so on) in breadcrumb bar|toddrme2178@gmail.com|Todd}}&lt;br /&gt;
{{FeatureInProgress|kdecore|Generic shared-memory cache|mpyne@kde.org|Michael Pyne}}&lt;br /&gt;
{{FeatureInProgress|kdeui|Redesigned icon cache|mpyne@kde.org|Michael Pyne}}&lt;br /&gt;
{{FeatureDone|kdeui|Support alpha channel in KColor classes|christoph@maxiom.de|Christoph Feck}}&lt;br /&gt;
{{FeatureDone|nepomuk|Redesigned Nepomuk::TagWidget which can now actually be used by applications|trueg@kde.org|Sebastian Trueg}}&lt;br /&gt;
{{FeatureDone|kio|Remember downloads via Nepomuk|trueg@kde.org|Sebastian Trueg}}&lt;br /&gt;
{{FeatureDone|solid|Broadcast mount/unmount messages across processes|wilderkde@gmail.com|Jacopo De Simoi}}&lt;br /&gt;
{{FeatureTodo|solid|Add parent matching to predicate parsing|wilderkde@gmail.com|Jacopo De Simoi}}&lt;br /&gt;
{{FeatureDone|kdeui|Add the KRecursiveFilterProxyModel to kdeui/itemviews|steveire@gmail.com|Stephen Kelly}}&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= kdemultimedia  =&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|Video Thumbnailer|Add ffmpegthumbnailer for faster video thumbnailing|ascherfy@gmail.com|Andreas Scherf}}&lt;br /&gt;
{{FeatureTodo|JuK|Remove Qt/KDE3 support lib requirements -- will move to KDE 4.5 feature plan|mpyne@kde.org|Michael Pyne}}&lt;br /&gt;
{{FeatureTodo|JuK|Allow setting covers directly from URLs supported by KIO - drag/drop already allows this however -- will move to KDE 4.5 feature plan|mpyne.org|Michael Pyne}}&lt;br /&gt;
&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;
{{FeatureTodo|Kopete|UPnp Support|mattr@kde.org|Matt Rogers}} &lt;br /&gt;
{{FeatureTodo|Kopete|Jabber Jingle video support|detlev.casanova@gmail.com|Detlev Casanova}} &lt;br /&gt;
{{FeatureTodo|Kopete|Jabber Jingle ICE support|detlev.casanova@gmail.com|Detlev Casanova}} &lt;br /&gt;
{{FeatureTodo|Kopete|Add support for urls to Bonjour plugin|kossebau@kde.org|Friedrich W. H. Kossebau}} &lt;br /&gt;
{{FeatureTodo|Kopete|Rich text support for ICQ|kedgedev@gmail.com|Roman Jarosz}} &lt;br /&gt;
{{FeatureDone|Kopete|Extended video controls|fschaefer.oss(at)googlemail.com|Frank Schaefer}} &lt;br /&gt;
{{FeatureTodo|Kopete|Akonadi History Plugin|roideuniverse@gmail.com|Kaushik Saurabh}} &lt;br /&gt;
{{FeatureTodo|Krdc|Connection status and reconnect screen|murraytony@gmail.com|Tony Murray}}&lt;br /&gt;
{{FeatureDone|Krdc|Much improved new connection screen: more info, sortable, interactive, and better use of space|murraytony@gmail.com|Tony Murray}}&lt;br /&gt;
{{FeatureInProgress|KGet|Use plasma notifications to show the progress|mat69@gmx.net|Matthias Fuchs}}&lt;br /&gt;
{{FeatureDone|KGet|Refaktor Torrent-Plugin to base on the newly created libktorrent from extragear|l.appelhans@gmx.de|Lukas Appelhans}}&lt;br /&gt;
{{FeatureInProgress|KGet|Better error handling|l.appelhans@gmx.de|Lukas Appelhans}}&lt;br /&gt;
|}&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;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact &lt;br /&gt;
{{FeatureTodo|KAlarm|Port to Akonadi|djarvie@kde.org|David Jarvie}}&lt;br /&gt;
{{FeatureInProgress|KMail|Port to Akonadi|kde-pim@kde.org|Thomas McGuire}}&lt;br /&gt;
{{FeatureInProgress|KOrganizer|Port to Akonadi|kde-pim@kde.org|Frank Osterfeld, Sebastian Sauer}}&lt;br /&gt;
{{FeatureInProgress|KJots|Port to Akonadi|kde-pim@kde.org|Stephen Kelly}}&lt;br /&gt;
{{FeatureTodo|KHolidays|Add support for holiday types and day-off types.|john@layt.net|John Layt}}&lt;br /&gt;
{{FeatureDone|KHolidays|Add support for alternative calendar systems, improved metadata, advanced holiday calculations, and improved API.|john@layt.net|John Layt}}&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;
{{FeatureTodo|knowledgebase|port knowledgebase plasmoid to new engine|ewoerner@kde.org|Eckhart Wörner}} &lt;br /&gt;
{{FeatureTodo|knowledgebase|Add categories|ewoerner@kde.org|Eckhart Wörner}} &lt;br /&gt;
{{FeatureDone|Bookmarks widget|New|kossebau@kde.org|Friedrich W. H. Kossebau}} &lt;br /&gt;
{{FeatureDone|Mandelbrot Wallpaper|Performance improvements|jacob.benoit.1@gmail.com|Benoit Jacob}} &lt;br /&gt;
{{FeatureDone|Mandelbrot Wallpaper|Rendering improvements (through dithering, extra iterations, and better/simpler formulas)|jacob.benoit.1@gmail.com|Benoit Jacob}}&lt;br /&gt;
{{FeatureDone|Mandelbrot Wallpaper|Allow to import/export parameters and to export to PNG images|jacob.benoit.1@gmail.com|Benoit Jacob}}&lt;br /&gt;
{{FeatureDone|Comic Applet|Add option to show &amp;quot;text&amp;quot;, &amp;quot;icons&amp;quot; or both &amp;quot;text and icons&amp;quot; for tabs|mat69@gmx.net|Matthias Fuchs}}&lt;br /&gt;
{{FeatureDone|Comic Applet|Prefetch next and previous comic strip (thx to Miha Cancula)|mat69@gmx.net|Matthias Fuchs}}&lt;br /&gt;
{{FeatureDone|Character Runner|New|akreuzkamp@web.de|Anton Kreuzkamp}}&lt;br /&gt;
{{FeatureDone|KDE Observatory|Performance improvements, new data engine|sandroandrade@kde.org|Sandro Andrade}}&lt;br /&gt;
{{FeatureDone|Plasmaboard|Completly rework the current onscreen keyboard and add key layouts for tablets and mids. Better performance, better useability, less memory usage. See: http://btux1984.wordpress.com/ |bjoern@ruberg-wegener.de|Björn Ruberg}}&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;
{{FeatureDone|Lokalize|Cache filestats to improve initial project scam time|shafff@NOSPAMukr.net|Nick Shaforostoff}} &lt;br /&gt;
{{FeatureDone|Lokalize|Support GNU PO file layout better by paying attention to the language specified in the PO file header (not the project-wide one)|shafff@NOSPAMukr.net|Nick Shaforostoff}} &lt;br /&gt;
{{FeatureDone|Lokalize|Rewrite glossary engine to use QDom|shafff@NOSPAMukr.net|Nick Shaforostoff}} &lt;br /&gt;
{{FeatureDone|Lokalize|Return simple [but reliable] project creation back|shafff@NOSPAMukr.net|Nick Shaforostoff}} &lt;br /&gt;
{{FeatureInProgress|Kate|Replace old snippet plugin through TNG plugin and enhance the usability of the new plugin|jowenn(you_know)kde(here_too)org|Joseph Wenninger}}&lt;br /&gt;
{{FeatureDone|Kate|Port the old XML completion plugin (xmltools)|tomastrnka@gmx.com|Tomáš Trnka}} &lt;br /&gt;
{{FeatureInProgress|Umbrello|Add a code importing wizzard|andi.fischer@NOSPAMhispeed.ch|Andi Fischer}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= kdeutils  =&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|Ark|Add an options dialog (maybe)|haraldhv@stud.ntnu.no|Harald Hvaal}}&lt;br /&gt;
{{FeatureTodo|Ark|Simplify Kerfuffle's API (jobs, interfaces etc) and try to make it stable|kubito@gmail.com|Raphael Kubo da Costa}}&lt;br /&gt;
{{FeatureTodo|Ark|Support for custom options from the compression interface (eg. a slider for selecting compression level for rar files)|haraldhv@stud.ntnu.no|Harald Hvaal}}&lt;br /&gt;
{{FeatureTodo|Ark|Add feedback for the latest operation in the status bar|kubito@gmail.com|Raphael Kubo da Costa}}&lt;br /&gt;
{{FeatureTodo|Ark|Try multiple plugins for each archive type before failing|kubito@gmail.com|Raphael Kubo da Costa}}&lt;br /&gt;
{{FeatureTodo|Ark|Make the internal previewer optional|kubito@gmail.com|Raphael Kubo da Costa}}&lt;br /&gt;
{{FeatureTodo|Ark|Add a &amp;quot;Preview with...&amp;quot; context menu item|kubito@gmail.com|Raphael Kubo da Costa}}&lt;br /&gt;
{{FeatureTodo|Ark|Make Kerfuffle really thread-safe (and use threads in less places)|kubito@gmail.com|Raphael Kubo da Costa}}&lt;br /&gt;
{{FeatureTodo|Ark|Get rid of the Observer code in Kerfuffle|kubito@gmail.com|Raphael Kubo da Costa}}&lt;br /&gt;
{{FeatureTodo|Ark|Make error reporting work as expected in Kerfuffle|kubito@gmail.com|Raphael Kubo da Costa}}&lt;br /&gt;
{{FeatureTodo|Okteta|add Kate-like search tool|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|add support for import by drop, both url and data|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|copy again puts also a value or char variant of the data to clipboard|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|add support for memory mapping of files and 64-bit addressing|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|add support for jobs like io, printing, string search or filter|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|Add Okular like embedded notifications|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|Store bookmarks and other view settings for next load|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|Add global toggle option for the offset display, hex or decimal|kossebau@kde.org|Friedrich W. H. Kossebau}} &lt;br /&gt;
{{FeatureTodo|Okteta|Add Kate-like combined dialogs to query for actions on files|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|Improve the titels of the changes to the bytearray to be more descriptive, best using ids to avoid text string|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|Merge row and column widgets into one|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|Add a general KPart adapter to Kasten, than finish port of Okteta KPart to Okteta Kasten|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|Make all user interaction in the KastenCore managers plugin-based|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|Store bookmarks|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|Add view profiles, incl. editor/manager|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|printer-applet|Restore feature parity with KDEPrint3 where possible.||Jonathon Riddell, John Layt}} &lt;br /&gt;
{{FeatureInProgress|Okteta|Allow writing structure definitions in JavaScript|alex.richardson@gmx.de|Alex Richardson}} &lt;br /&gt;
{{FeatureInProgress|Okteta|Add possibility to set count of bytes per line/group|kossebau@kde.org|Friedrich W. H. Kossebau}} &lt;br /&gt;
{{FeatureDone|kdelirc/kremotecontrol|Transition from KDELirc to KRemoteControl|michael_zanetti@gmx.net|Michael Zanetti}} &lt;br /&gt;
{{FeatureDone|KGpg|Add &amp;amp;quot;caff&amp;amp;quot; mode for keysigning|kde@opensource.sf-tec.de|Rolf Eike Beer}}&lt;br /&gt;
{{FeatureDone|Okteta|Add KNewStuff support to the structures tool|alex.richardson@gmx.de|Alex Richardson}} &lt;br /&gt;
{{FeatureDone|Okteta|Allow pinning structure beginning to a specific offset|alex.richardson@gmx.de|Alex Richardson}}&lt;br /&gt;
{{FeatureDone|Okteta|new export formats: S-Record, Intel Hex, Base32, Ascii85, Uuencoding, Xxencoding|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureDone|Okteta|add QIODevice for AbstractByteArrayModel and make mimetype detection use this instead of only filename |kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureDone|Okteta|Refactor mouse input to controllers for the bytearray widget|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;
= 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;
{{FeatureInProgress|kteatime|Port to KStatusNotifierItem|kde@hilefoks.org|Stefan Böhmann}} &lt;br /&gt;
{{FeatureInProgress|kteatime|Port to KConfigXT|kde@hilefoks.org|Stefan Böhmann}} &lt;br /&gt;
{{FeatureInProgress|kteatime|Support categories|kde@hilefoks.org|Stefan Böhmann}}&lt;br /&gt;
{{FeatureInProgress|kteatime|Improved indicator icon painting|kde@hilefoks.org|Stefan Böhmann}}&lt;br /&gt;
{{FeatureTodo|kteatime|Fork multiple instances for multiple timers|kde@hilefoks.org|Stefan Böhmann}}&lt;br /&gt;
{{FeatureTodo|kteatime|Tea runner|kde@hilefoks.org|Stefan Böhmann}}&lt;br /&gt;
{{FeatureTodo|kteatime|Improved command line|kde@hilefoks.org|Stefan Böhmann}}&lt;br /&gt;
{{FeatureTodo|amor|Do some refactoring in amor|kde@hilefoks.org|Stefan Böhmann}} &lt;br /&gt;
{{FeatureTodo|amor|Improve theme support|kde@hilefoks.org|Stefan Böhmann}} &lt;br /&gt;
{{FeatureTodo|amor|Implement KNewStuff support|kde@hilefoks.org|Stefan Böhmann}} &lt;br /&gt;
{{FeatureTodo|amor|Revamp configure dialog|kde@hilefoks.org|Stefan Böhmann}} {{FeatureTodo|amor|Sound support|kde@hilefoks.org|Stefan Böhmann}}&lt;br /&gt;
{{FeatureTodo|amor|Add KStatusNotifierItem support|kde@hilefoks.org|Stefan Böhmann}}&lt;br /&gt;
{{FeatureInProgress|ktux|Do some refactoring in ktux|kde@hilefoks.org|Stefan Böhmann}} &lt;br /&gt;
{{FeatureTodo|ktux|Revamp configure dialog|kde@hilefoks.org|Stefan Böhmann}} {{FeatureTodo|ktux|Sound support|kde@hilefoks.org|Stefan Böhmann}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Other  =&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;
&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Shaforostoff</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Schedules/KDE4/4.6_Feature_Plan</id>
		<title>Schedules/KDE4/4.6 Feature Plan</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Schedules/KDE4/4.6_Feature_Plan"/>
				<updated>2010-05-28T08:49:34Z</updated>
		
		<summary type="html">&lt;p&gt;Shaforostoff: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This is a list of planned features for the SC 4.6 release. &lt;br /&gt;
&lt;br /&gt;
See also: &lt;br /&gt;
&lt;br /&gt;
*[[Schedules/KDE4/4.6 Release Schedule]] &lt;br /&gt;
*[[Schedules/KDE4/4.6 Release Goals]] &lt;br /&gt;
*[[Schedules/KDE4/4.5 Feature Plan]]&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;
= 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;
{{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|Remote translation memories|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;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;/div&gt;</summary>
		<author><name>Shaforostoff</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Schedules/KDE4/4.6_Feature_Plan</id>
		<title>Schedules/KDE4/4.6 Feature Plan</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Schedules/KDE4/4.6_Feature_Plan"/>
				<updated>2010-05-28T08:48:51Z</updated>
		
		<summary type="html">&lt;p&gt;Shaforostoff: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This is a list of planned features for the SC 4.5 release. &lt;br /&gt;
&lt;br /&gt;
See also: &lt;br /&gt;
&lt;br /&gt;
*[[Schedules/KDE4/4.6 Release Schedule]] &lt;br /&gt;
*[[Schedules/KDE4/4.6 Release Goals]] &lt;br /&gt;
*[[Schedules/KDE4/4.5 Feature Plan]]&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;
= 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;
{{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|Remote translation memories|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;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;/div&gt;</summary>
		<author><name>Shaforostoff</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Schedules/KDE4/4.5_Feature_Plan</id>
		<title>Schedules/KDE4/4.5 Feature Plan</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Schedules/KDE4/4.5_Feature_Plan"/>
				<updated>2010-05-28T08:47:35Z</updated>
		
		<summary type="html">&lt;p&gt;Shaforostoff: /* kdesdk */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This is a list of planned features for the SC 4.5 release. &lt;br /&gt;
&lt;br /&gt;
See also: &lt;br /&gt;
&lt;br /&gt;
*[[Schedules/KDE4/4.5 Release Schedule]] &lt;br /&gt;
*[[Schedules/KDE4/4.5 Release Goals]] &lt;br /&gt;
*[[Schedules/KDE4/4.4 Feature Plan]]&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;
= kdeadmin  =&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|system-config-printer-kde|Restore feature parity with KDEPrint3 where possible.||Jonathan Riddell, John Layt}} &lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= kdeartwork  =&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;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= kdebase-apps  =&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|Konqueror|Improvements in session-management|edulix@gmail.com|Eduardo Robles Elvira}} &lt;br /&gt;
{{FeatureTodo|Konqueror|Improvements in tab-bar widget|edulix@gmail.com|Eduardo Robles Elvira}} &lt;br /&gt;
{{FeatureInProgress|Konqueror|New Konqueror bookmarks using Akonadi and Nepomuk, awesome bar|edulix@gmail.com|Eduardo Robles Elvira}} &lt;br /&gt;
{{FeatureInProgress|nspluginviewer|npruntime scripting support|maksim@kde.org|Maks Orlovich}}&lt;br /&gt;
{{FeatureTodo|Konqueror|Add speeddial/thumbnails-like start page|germain@ebooksfrance.org|Germain Garand}} &lt;br /&gt;
{{FeatureDone|Konsole|Finish implementing tab context menu|kurt.hindenburg@gmail.com|Kurt Hindenburg}}&lt;br /&gt;
{{FeatureDone|Konsole|Allow setting tab profile from file on command-line|kurt.hindenburg@gmail.com|Kurt Hindenburg}}&lt;br /&gt;
{{FeatureInProgress|Konsole|Adds support for SHELL_SESSION_ID|kurt.hindenburg@gmail.com|Kurt Hindenburg}}&lt;br /&gt;
{{FeatureDone|Konsole|Modernize menu layout|sasch.pe@gmx.de|Sascha Peilicke}}&lt;br /&gt;
{{FeatureInProgress|Konsole|Move to KTabWidget|sasch.pe@gmx.de|Sascha Peilicke}}&lt;br /&gt;
{{FeatureInProgress|print-manager|New Print manager KCM and applet replacement, using C++|dantti85-pk@yahoo.com.br|Daniel Nicoletti}} &lt;br /&gt;
{{FeatureDone|Dolphin|Drag and drop on tabs|toddrme2178@gmail.com|Todd}}&lt;br /&gt;
{{FeatureDone|Dolphin|Make menus like &amp;quot;View Mode&amp;quot;, &amp;quot;Additional Information&amp;quot; and &amp;quot;Sort By&amp;quot; available as toolbar buttons|toddrme2178@gmail.com|Todd}}&lt;br /&gt;
{{FeatureTodo|Dolphin|Smooth scrolling|fredrik@kde.org|Fredrik Höglund}}&lt;br /&gt;
{{FeatureTodo|Dolphin|Faceted browsing|peter.penz@gmx.at|Peter Penz}}&lt;br /&gt;
{{FeatureDone|Dolphin|Make use of additional columns (Symbolic Link Destination, Path or URL) in KFileItemDelegate|frank78@googlemail.com|Frank Reininghaus}} &lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= kdebase-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;
{{FeatureTodo|KWallet|Single Sign On using PAM|lemma@confuego.org|Michael Leupold}}&lt;br /&gt;
{{FeatureTodo|network kioslave|Backend for LISa|kossebau@kde.org|Friedrich Kossebau}}&lt;br /&gt;
{{FeatureTodo|network kioslave|Backend for SMB|kossebau@kde.org|Friedrich Kossebau}}&lt;br /&gt;
{{FeatureTodo|network kioslave|Integrate with remote and zeroconf kioslaves|kossebau@kde.org|Friedrich Kossebau}}&lt;br /&gt;
{{FeatureTodo|Locale KCM|Add support for new KLocale and KCalendarSystem features (see kdelibs section) including AM/PM, etc.  Improvements to usability of existing money display options.|john@layt.net|John Layt}}&lt;br /&gt;
{{FeatureDone|Locale KCM|Ability to select more Digit Sets (Bengali, Gujarati, Gurmukhi, Kannada, Khmer, Malayalam, Oriya, Tamil, Telugu and Thai).  Ability to set date formats to include Calendar Era.|john@layt.net|John Layt}}&lt;br /&gt;
{{FeatureInProgress|network kioslave|Backend for UPnP|kossebau@kde.org|Friedrich Kossebau}}&lt;br /&gt;
{{FeatureTodo|network kioslave| Backend to discover bluetooth devices and they services |edulix@gmail.com|Eduardo Robles Elvira}}&lt;br /&gt;
{{FeatureInProgress|bluetooth kioslave|Backend to browse bluetooth devices|edulix@gmail.com|Eduardo Robles Elvira}}&lt;br /&gt;
{{FeatureDone|Nepomuk|Monitor file system changes via inotify|trueg@kde.org|Sebastian Trueg}}&lt;br /&gt;
{{FeatureTodo|KNotify|Route solid errors via knotify to the device notifier|wilderkde@gmail.com|Jacopo De Simoi}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= kdebase-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;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact&lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;text-align: center;&amp;quot; colspan=&amp;quot;4&amp;quot; | Non-Plasma, Non-KWin &lt;br /&gt;
{{FeatureDone|KInfoCenter|Complete rewrite of KInfoCenter|hubnerd@ntlworld.com|David Hubner}} &lt;br /&gt;
{{FeatureDone|KInfoCenter|Add Export functionality into KInfoCenter|hubnerd@ntlworld.com|David Hubner}}&lt;br /&gt;
{{FeatureDone|DeviceInfo KCM|New DeviceInfo KCM for KInfoCenter|hubnerd@ntlworld.com|David Hubner}}&lt;br /&gt;
{{FeatureDone|Summary KCM|New Summary KCM for KInfoCenter|hubnerd@ntlworld.com|David Hubner}}     &lt;br /&gt;
{{FeatureTodo|Icons KCM|More configurable icon sizes|christoph@maxiom.de|Christoph Feck}} &lt;br /&gt;
{{FeatureTodo|Fonts KCM|More configurable fonts|christoph@maxiom.de|Christoph Feck}} &lt;br /&gt;
{{FeatureTodo|BlueDevil Wizard |Write a new Wizard to pair Bluetooth devices |alex@eyeos.org|Alex Fiestas}} &lt;br /&gt;
{{FeatureTodo|Bluetooth KCM|New KCM to manage all bluetooth configurations and devices|ereslibre@kde.org|Rafael Fernandez}}&lt;br /&gt;
{{FeatureTodo|Screenedges|Screenedges handling outside of kwin/plasma|kde@martin-graesslin.com|Martin Gräßlin}}&lt;br /&gt;
{{FeatureInProgress|Oxygen style|Move window using left-mouse button on windows' empty areas|hugo@oxygen-icons.org|Hugo Pereira Da Costa}}&lt;br /&gt;
{{FeatureDone|Oxygen configuration|Oxygen style and decoration standalone expert configuration tool|hugo@oxygen-icons.org|Hugo Pereira Da Costa}}&lt;br /&gt;
{{FeatureDone|Free Space Notifier Daemon|Small daemon that warns you when your home has almost no space left|knuckles@gmail.com|Ivo Anjo}}&lt;br /&gt;
{{FeatureInProgress|Activities Daemons|Daemons to handle info about activities (kded daemon and a nepomuk service)|ivan.cukic@kde.org|Ivan Cukic}}&lt;br /&gt;
{{FeatureInProgress|Systemsettings|driconf KCM|fredrik@kde.org|Fredrik Höglund}}&lt;br /&gt;
{{FeatureDone|PowerDevil|Display brightness OSD|debfx-kde@fobos.de|Felix Geyer}}&lt;br /&gt;
{{FeatureDone|Keyboard|Merge keyboard hardware and layouts configuration UI|arysin@gmail.com|Andriy Rysin}}&lt;br /&gt;
{{FeatureDone|Keyboard|Allow adding layouts by language|arysin@gmail.com|Andriy Rysin}}&lt;br /&gt;
{{FeatureDone|Keyboard|Add keyboard layout indicator plasma applet|arysin@gmail.com|Andriy Rysin}}&lt;br /&gt;
{{FeatureDone|Keyboard|Allow configuring keyboard model without configuring layouts|arysin@gmail.com|Andriy Rysin}}&lt;br /&gt;
{{FeatureDone|Keyboard|Allow by-window switching and KDE shortcut without configuring layouts|arysin@gmail.com|Andriy Rysin}}&lt;br /&gt;
{{FeatureDone|Keyboard|Rewrite keyboard layouts app into kded daemon|arysin@gmail.com|Andriy Rysin}}&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|systemtray/taskmanager|port the systray and tasks applet to windows|windows@kde.org|kde windows}}&lt;br /&gt;
{{FeatureInProgress|systemtray|monochrome statusnotifier based systray icons support|notmart@gmail.com|Marco Martin}}&lt;br /&gt;
{{FeatureTodo|systemtray|sort icons by category|notmart@gmail.com|Marco Martin}}&lt;br /&gt;
{{FeatureInProgress|systemtray|put hidden icons in a popup menu|notmart@gmail.com|Marco Martin}}&lt;br /&gt;
{{FeatureDone|tasks dataengine|export all informations needed to build an applet comparable to the current one|matthieu_gallien@yahoo.fr|Matthieu Gallien}}&lt;br /&gt;
{{FeatureDone|notifications|split systemtray and notifications applet|notmart@gmail.com|Marco Martin}}  &lt;br /&gt;
{{FeatureInProgress|notifications|new look and behaviour for notifications|notmart@gmail.com|Marco Martin}}&lt;br /&gt;
{{FeatureDone|notifications|support for remote applets for notifications|notmart@gmail.com|Marco Martin}}&lt;br /&gt;
{{FeatureDone|netbook/SAL|use QStandardModels|notmart@gmail.com|Marco Martin}}&lt;br /&gt;
{{FeatureInProgress|netbook/SAL|support for drag and drop of items|notmart@gmail.com|Marco Martin}}&lt;br /&gt;
{{FeatureTodo|netbook/SAL|package manager invocation from the toolbox|notmart@gmail.com|Marco Martin}}&lt;br /&gt;
{{FeatureTodo|netbook/Workspace KCM|New default options for KWin: tabbox as present windows, that will be set as regular grid|notmart@gmail.com|Marco Martin}}&lt;br /&gt;
{{FeatureTodo|libplasma/extenders|put extendergroups in scrollwidgets|notmart@gmail.com|Marco Martin}}&lt;br /&gt;
{{FeatureTodo|libplasma/extenders|possibility to detach exteneritems as standalone windows|notmart@gmail.com|Marco Martin}}&lt;br /&gt;
{{FeatureInProgress|libplasma/theme|more transparent dialogs when the blur effect is enabled|notmart@gmail.com|Marco Martin}}&lt;br /&gt;
{{FeatureInProgress|libplasma/desktop|Activity Manager UI|chani@kde.org|Chani}}&lt;br /&gt;
{{FeatureTodo|accounts applet|a plasma widget that is a central place to add accounts to social sites like identica and opendesktop, optimized for the netbook shell|notmart@gmail.com|Marco Martin}}&lt;br /&gt;
{{FeatureTodo|libplasma|Improvements to Calendar/Clock widgets. Improved config ui. Allow multiple holidays on same day. Allow multiple Holiday Regions. Weekends. etc.|john@layt.net|John Layt}} &lt;br /&gt;
{{FeatureTodo|folderview|&amp;quot;Open folder&amp;quot; icon to open folder into pop-up at request instead of automatically.|bigras.bruno@gmail.com|Bruno Bigras}}&lt;br /&gt;
{{FeatureTodo|folderview|Extend the configuration UI for nepomuksearch|fredrik@kde.org|Fredrik Höglund}}&lt;br /&gt;
{{FeatureInProgress|Extend Calendar DataEngine with Akonadi calendar incidents|Allows to query calendar events/todos from Akonadi in Plasma|gladhornKDEorg|Frederik Gladhorn}}&lt;br /&gt;
{{FeatureDone|calculator|Added optional libqalculate support in the calculator runner|agostinelli@gmail.com|Matteo Agostinelli}}&lt;br /&gt;
{{FeatureInProgress|KRunner|Add some advanced sorting to KRunner using Nepomuk|l.appelhans@gmx.de|Lukas Appelhans}}&lt;br /&gt;
{{FeatureTodo|KRunner|Improve keyboard navigation &amp;amp; command history interaction|wilderkde@gmail.com|Jacopo De Simoi}}&lt;br /&gt;
{{FeatureInProgress|device-notifier|Route all solid error notifications via knotify to the device notifier|wilderkde@gmail.com|Jacopo De Simoi}}&lt;br /&gt;
{{FeatureInProgress|device-notifier|Detailed (HAL) error notifications in the device notifier|wilderkde@gmail.com|Jacopo De Simoi}}&lt;br /&gt;
{{FeatureInProgress|Plasma::Theme|Themed CSS support|sebas@kde.org|Sebastian Kügler}}&lt;br /&gt;
{{FeatureTodo|battery|Weighted charge information for multiple batteries|sebas@kde.org|Sebastian Kügler}}&lt;br /&gt;
{{FeatureTodo|Plasma|Welcome plasmoid|riccardo@kde.org|Riccardo Iaconelli}}&lt;br /&gt;
{{FeatureInProgress|crystal|New desktop search widget|sebas@kde.org|Sebastian Kügler}}&lt;br /&gt;
{{FeatureInProgress|networkmanagement|Network management Plasmoid|sebas@kde.org|Sebastian Kügler}}&lt;br /&gt;
{{FeatureDone|quicklaunch|Improvements from Ingomar Wesp|l.appelhans@gmx.de|Lukas Appelhans}}&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|Tiling|Merge window tiling branch|kde@martin-graesslin.com|Martin Gräßlin}}&lt;br /&gt;
{{FeatureInProgress|KWin|New flag to exclude windows from switchers|kde@martin-graesslin.com|Martin Gräßlin}}&lt;br /&gt;
{{FeatureDone|KCM Decoration|New decoration kcm with previews and GHNS|kde@martin-graesslin.com|Martin Gräßlin}}&lt;br /&gt;
{{FeatureDone|Aurorae|Port Aurorae to GraphicsView and KDecoration|kde@martin-graesslin.com|Martin Gräßlin}}&lt;br /&gt;
{{FeatureDone|Aurorae|Better themeing support|kde@martin-graesslin.com|Martin Gräßlin}}&lt;br /&gt;
{{FeatureDone|Aurorae|Window tabbing support|kde@martin-graesslin.com|Martin Gräßlin}}&lt;br /&gt;
{{FeatureDone|Aurorae|Decorations on window sides|kde@martin-graesslin.com|Martin Gräßlin}}&lt;br /&gt;
{{FeatureTodo|Aurorae|Autohiding decoration for maximized windows|kde@martin-graesslin.com|Martin Gräßlin}}&lt;br /&gt;
{{FeatureInProgress|kwin|hide windows from other activities|chani@kde.org|Chani}}&lt;br /&gt;
{{FeatureTodo|Effects|Move features from present windows to libkwineffects to make them available in desktop grid|kde@martin-graesslin.com|Martin Gräßlin}}&lt;br /&gt;
{{FeatureTodo|Effects|Add close window button to each window in present windows/desktop grid|kde@martin-graesslin.com|Martin Gräßlin}}&lt;br /&gt;
{{FeatureTodo|Window Tabbing/libtaskmanager|Announce window groups to be used for grouping in tasks applet|kde@martin-graesslin.com|Martin Gräßlin}}&lt;br /&gt;
{{FeatureInProgress|KWin/plasma|New window type for Plasma dashboard|kde@martin-graesslin.com|Martin Gräßlin}}&lt;br /&gt;
{{FeatureDone|Effects|New blur effect|fredrik@kde.org|Fredrik Höglund}}&lt;br /&gt;
{{FeatureInProgress|Effects|High quality scaling shader for the taskbar thumbnails|fredrik@kde.org|Fredrik Höglund}}&lt;br /&gt;
{{FeatureTodo|KWin|Hint for defining the window snap rect|fredrik@kde.org|Fredrik Höglund}}&lt;br /&gt;
{{FeatureInProgress|Effects|Glide effect for opening and closing windows|iori.yagami.26979@gmail.com|Iori Yagami}}&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;
{{FeatureTodo|KStars|Display Comet Magnitudes whenever possible|akarshsimha@gmail.com|Akarsh Simha}} &lt;br /&gt;
{{FeatureTodo|KStars|Information links in-place for each technical term|akarshsimha@gmail.com|Akarsh Simha}} {{FeatureTodo|KStars|Tool to suggest star-hopping techniques???|akarshsimha@gmail.com|Akarsh Simha}} &lt;br /&gt;
{{FeatureTodo|KStars|Extend conjunction tool to have one object unspecified, but have a genre of objects specified instead|akarshsimha@gmail.com|Akarsh Simha}} &lt;br /&gt;
{{FeatureTodo|KStars|Simulate Lunar Eclipses|akarshsimha@gmail.com|Akarsh Simha}} &lt;br /&gt;
{{FeatureTodo|KStars|Simulate Satellites and Iridium Flares|akarshsimha@gmail.com|Akarsh Simha}} &lt;br /&gt;
{{FeatureTodo|KStars|Social and Geographical Integration for KStars|akarshsimha@gmail.com|Akarsh Simha}} &lt;br /&gt;
{{FeatureTodo|KStars|Marble widget for Geolocation tool|mboquien@free.fr|Médéric Boquien}} &lt;br /&gt;
{{FeatureTodo|KStars|Better printed star charts|kstars@30doradus.org|Jason Harris}} &lt;br /&gt;
{{FeatureTodo|KStars|Better rendering of comets/asteroids|kstars@30doradus.org|Jason Harris}} &lt;br /&gt;
{{FeatureTodo|KStars|Texture mapping of the skymap???|kstars@30doradus.org|Jason Harris}} &lt;br /&gt;
{{FeatureTodo|Kalzium|Port Kalzium to use QGV based periodic table widget|mhanwell@kde.org|Marcus D. Hanwell}}&lt;br /&gt;
{{FeatureTodo|Marble|Add proper support for GPX waypoints, tracks and routes display|anders@alweb.dk|Anders Lund}}&lt;br /&gt;
{{FeatureTodo|Marble|Export map to MxN pixel bitmap|inge@lysator.liu.se|Inge Wallin}}&lt;br /&gt;
{{FeatureTodo|Marble|Map Contents translation|tackat@kde.org|Torsten Rahn}}&lt;br /&gt;
{{FeatureDone|Marble|Support OpenStreetMap Nominatim as search backend (MarbleRunner)|earthwings@gentoo.org|Dennis Nienhüser}}&lt;br /&gt;
{{FeatureDone|Marble|Generalized Animations with GeoDataLookAt support|earthwings@gentoo.org|Dennis Nienhüser}}&lt;br /&gt;
{{FeatureDone|Marble|Online-Routing|earthwings@gentoo.org|Dennis Nienhüser}}&lt;br /&gt;
{{FeatureDone|Marble|GPS improvements|earthwings@gentoo.org|Dennis Nienhüser}}&lt;br /&gt;
{{FeatureInProgress|Marble|Maemo Support|earthwings@gentoo.org|Bastian Holst, Dennis Nienhüser}}&lt;br /&gt;
{{FeatureInProgress|Marble|GeoGraphicsScene for Online Service Plugins|bastianholst@gmx.de|Bastian Holst}}&lt;br /&gt;
{{FeatureInProgress|Marble|Follow XDG Base Directory Specification|bastianholst@gmx.de|Bastian Holst}}&lt;br /&gt;
{{FeatureDone|Marble|Download region|jmho@c-xx.com|Jens-Michael Hoffmann}}&lt;br /&gt;
{{FeatureInProgress|Marble|Implement sun locator blendings as derived classes of Marble::Blending|jmho@c-xx.com|Jens-Michael Hoffmann}}&lt;br /&gt;
{{FeatureInProgress|Marble|Configurable texture layer blending|jmho@c-xx.com|Jens-Michael Hoffmann}}&lt;br /&gt;
{{FeatureInProgress|Marble|Import geonames city data|sonu.itbhu@gmail.com|Harshit Jain}}&lt;br /&gt;
{{FeatureInProgress|Marble|Bookmark support|anik.varshney@gmail.com|Kumar Anik Varshney}}&lt;br /&gt;
{{FeatureInProgress|Marble|Various Marble speed improvements|rahn@kde.org|Torsten Rahn, Ariya Hidayat}}&lt;br /&gt;
{{FeatureInProgress|Marble|Plugin to display APRS data|hardaker@users.sourceforge.net|Wes Hardaker}}&lt;br /&gt;
{{FeatureDone|KAlgebra|Type checker for expressions to statically detect errors|aleixpol@kde.org|Aleix Pol}}&lt;br /&gt;
{{FeatureDone|KAlgebra|Support for drawing implicit curves|percy.camilo.ta@gmail.com|Percy Camilo Triveño Aucahuasi}}&lt;br /&gt;
{{FeatureInProgress|Parley|Parley practice mode rewritten|gladhornKDEorg|Daniel Laidig, Frederik Gladhorn}}&lt;br /&gt;
{{FeatureTodo|Parley|LaTeX support|laidig_kde.org|Daniel Laidig}}&lt;br /&gt;
{{FeatureTodo|Parley|Better support for entering synonyms|laidig_kde.org|Benjamin Schleinzer, Daniel Laidig}}&lt;br /&gt;
{{FeatureTodo|Cantor|import and polish Qalculate! backend|mail@milianw.de|Milian Wolff}}&lt;br /&gt;
{{FeatureDone|KTurtle|Implement GHNS download support|nielsslot@gmail.com|Niels Slot}}&lt;br /&gt;
{{FeatureTodo|KTurtle|Implement GHNS upload support|nielsslot@gmail.com|Niels Slot}}&lt;br /&gt;
{{FeatureDone|Rocs|Node beautification in SVG|tcanabrava@kde.org|Tomaz Canabrava}}&lt;br /&gt;
{{FeatureDone|Rocs|Threads for not blocking the UI|tcanabrava@kde.org|Tomaz Canabrava}}&lt;br /&gt;
{{FeatureDone|Rocs|Redesigned the UI for better usability|tcanabrava@kde.org|Tomaz Canabrava}}&lt;br /&gt;
{{FeatureDone|Rocs|Plugin System|wiglot@gmail.com|Wagner Reck}}&lt;br /&gt;
{{FeatureDone|Rocs|Small plugins as examples|wiglot@gmail.com|Wagner Reck}}&lt;br /&gt;
{{FeatureDone|Rocs|Multiple Script support|tcanabrava@kde.org|Tomaz Canabrava}}&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;
{{FeatureTodo|Granatier|Arena Editor|k.hias@gmx.de|Mathias Kraus}}&lt;br /&gt;
{{FeatureInProgress|Kajongg|New traditional Mahjongg for four players|wolfgang@rohdewald.de|Wolfang Rohdewald}}&lt;br /&gt;
{{FeatureTodo|Kajongg|Default voices for computer players|wolfgang@rohdewald.de|Wolfgang Rohdewald}}&lt;br /&gt;
{{FeatureDone|KBounce|Difficulty levels|ascherfy@gmail.com|Andreas Scherf}}&lt;br /&gt;
{{FeatureDone|KBounce|Random images as background|ascherfy@gmail.com|Andreas Scherf}}&lt;br /&gt;
{{FeatureTodo|KBreakOut|Level Sets|fela.kde@gmail.com|Fela Winkelmolen}} {{FeatureTodo|KBreakOut|Sound|fela.kde@gmail.com|Fela Winkelmolen}}&lt;br /&gt;
{{FeatureDone|KGoldrunner|Add the Demolition game (20 levels)|iandw.au@gmail.com|Ian Wadham}}&lt;br /&gt;
{{FeatureDone|Kigo|Load SGF games from command line and register to mimetype 'application/x-go-sgf'|sasch.pe@gmx.de|Sascha Peilicke}}&lt;br /&gt;
{{FeatureInProgress|Kigo|Fix KNewStuff provider issues|sasch.pe@gmx.de|Sascha Peilicke}}&lt;br /&gt;
{{FeatureInProgress|Kiriki|Hint|luizromario@gmail.com|Luiz Romário Santana Rios}}&lt;br /&gt;
{{FeatureTodo|Kolf|Replace with Kolf 2 (help on coding and artwork desired)|majewsky@gmx.net|Stefan Majewsky}}&lt;br /&gt;
{{FeatureDone|Konquest|Merge the patch by Sean D'Epagnier to implement many features like map editing|pinaraf@pinaraf.info|Pierre Ducroquet}}&lt;br /&gt;
{{FeatureDone|KPat|Add keyboard controls to allow playing without a mouse.|parker.coates@kdemail.net|Parker Coates}}&lt;br /&gt;
{{FeatureInProgress|KPat|Create a new LibKCardGame from KPat's card scene logic. Make it generic and friendly enough for use in other card games.|parker.coates@kdemail.net|Parker Coates}}&lt;br /&gt;
{{FeatureTodo|KsirK|rewrite AI code or at least correct most problems related in bug #170777. Volunteers wanted!|kleag@free.fr|Gaël de Chalendar}} &lt;br /&gt;
{{FeatureTodo|KsirK|Boost playing over Jabber|kleag@free.fr|Gaël de Chalendar}}&lt;br /&gt;
{{FeatureTodo|KSquares|Re-write computer player, make it act faster and more intelligent|ewoerner@kde.org|Eckhart Wörner}} &lt;br /&gt;
{{FeatureTodo|KSquares|Add more types of boards: hexagonal, triangular|ewoerner@kde.org|Eckhart Wörner}} &lt;br /&gt;
{{FeatureTodo|KSudoku|Import new engine|joselb@gmx.net|Johannes Bergmeier}} &lt;br /&gt;
{{FeatureTodo|KSudoku|Port game to new engine|joselb@gmx.net|Johannes Bergmeier}} &lt;br /&gt;
{{FeatureTodo|KSudoku|Adapt view to show information provided by engine|joselb@gmx.net|Johannes Bergmeier}} &lt;br /&gt;
{{FeatureTodo|KSudoku|Add new actions to GUI|joselb@gmx.net|Johannes Bergmeier}}&lt;br /&gt;
{{FeatureInProgress|KTuberling|A new &amp;quot;fast switch&amp;quot; between playgrounds|alex@eyeos.org|Alex Fiestas}}&lt;br /&gt;
{{FeatureDone|Palapeli|[https://bugs.kde.org/show_bug.cgi?id{{=}}233784 Optimize size of puzzle files in default collection] (temporarily fixed for this release cycle with an awful hack)|majewsky@gmx.net|Stefan Majewsky}} &lt;br /&gt;
{{FeatureTodo|Palapeli|[https://bugs.kde.org/show_bug.cgi?id{{=}}211859 Recieve new puzzles over KNewStuff]|majewsky@gmx.net|Stefan Majewsky}} &lt;br /&gt;
{{FeatureTodo|Palapeli|[https://bugs.kde.org/show_bug.cgi?id{{=}}211861 Introduce handicap as a means to configure difficulty]|majewsky@gmx.net|Stefan Majewsky}} &lt;br /&gt;
{{FeatureTodo|Palapeli|[https://bugs.kde.org/show_bug.cgi?id{{=}}211866 Implement puzzle piles to organize pieces]|majewsky@gmx.net|Stefan Majewsky}} &lt;br /&gt;
{{FeatureTodo|Palapeli|[https://bugs.kde.org/show_bug.cgi?id{{=}}212814 Quick piece grouping]|majewsky@gmx.net|Stefan Majewsky}} &lt;br /&gt;
{{FeatureTodo|Palapeli|[https://bugs.kde.org/show_bug.cgi?id{{=}}213774 Add magnifying glass]|majewsky@gmx.net|Stefan Majewsky}} &lt;br /&gt;
{{FeatureDone|Palapeli|Rewrite puzzle table mouse interaction stack|majewsky@gmx.net|Stefan Majewsky}}&lt;br /&gt;
{{FeatureDone|Palapeli|Cleanup config dialog code|majewsky@gmx.net|Stefan Majewsky}}&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;
{{FeatureTodo|libkdcraw|Make color management options more flexible|marcel.wiesweg@gmx.de|Marcel Wiesweg}} &lt;br /&gt;
{{FeatureDone|libksane|Improve auto-selection|kare.sars@iki.fi|K&amp;amp;aring;re S&amp;amp;auml;rs}} &lt;br /&gt;
{{FeatureDone|libksane|Highlight scanned area|kare.sars@iki.fi|K&amp;amp;aring;re S&amp;amp;auml;rs}} &lt;br /&gt;
{{FeatureTodo|libksane|Add public API for available devices|kare.sars@iki.fi|K&amp;amp;aring;re S&amp;amp;auml;rs}} &lt;br /&gt;
{{FeatureTodo|gwenview|Show Nepomuk info in image meta info|agateau@kde.org|Aurelien Gateau}} &lt;br /&gt;
{{FeatureTodo|gwenview|Persistent changes|agateau@kde.org|Aurelien Gateau}}&lt;br /&gt;
{{FeatureTodo|okular|Thumb creators via Okular Core|harsh@harshj.com|Harsh J}} &lt;br /&gt;
&lt;br /&gt;
|}&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;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact &lt;br /&gt;
{{FeatureTodo|katepart|Add visual block mode and make the basic commands support it|ehambergαgmail.com|Erlend Hamberg}}&lt;br /&gt;
{{FeatureTodo|katepart|context dependent indenters|mail@milianw.de|Milian Wolff}}&lt;br /&gt;
{{FeatureTodo|katepart|scripting configuration, esp. for indenters|mail@milianw.de|Milian Wolff}}&lt;br /&gt;
{{FeatureTodo|katepart|list of available scripts and indenters|mail@milianw.de|Milian Wolff}}&lt;br /&gt;
{{FeatureTodo|katepart|GHNS for scripts/indenters|mail@milianw.de|Milian Wolff}}&lt;br /&gt;
{{FeatureTodo|katepart|easier writing of indenters, esp. by automatically reloading them when changed|mail@milianw.de|Milian Wolff}}&lt;br /&gt;
{{FeatureTodo|katepart|extend list of available default styles for highlighting, remove hardcoded colors from existing XML files|mail@milianw.de|Milian Wolff}}&lt;br /&gt;
{{FeatureTodo|katepart|improve AutoBrace plugin|mail@milianw.de|Milian Wolff}}&lt;br /&gt;
{{FeatureInProgress|katepart/ktexteditor|defaultvalues, regular expressions, mirroring master, scripting of templates|jowenn(you_know)kde(here_too)org|Joseph Wenninger}}&lt;br /&gt;
{{FeatureInProgress|ktexteditor plugin|InsaneHTML_LE (zencoding like selector input (light edition)|jowenn(you_know)kde(here_too)org|Joseph Wenninger}}&lt;br /&gt;
{{FeatureTodo|katepart|replace smart cursor/ranges API|cullmann@kde.org|Christoph Cullmann}}&lt;br /&gt;
{{FeatureTodo|kdeui|API to integrate KStatusNotifierItem and KNotification: both as class api and DBus specification API|davide.bettio@kdemail.net|Davide Bettio}}&lt;br /&gt;
{{FeatureDone|KCalendarSystem|Add support for Date Difference calculations.|john@layt.net|John Layt}}&lt;br /&gt;
{{FeatureDone|KCalendarSystem|Add support for era based calendar systems.|john@layt.net|John Layt}}&lt;br /&gt;
{{FeatureDone|KCalendarSystem|Add new calendar systems: Japanese Era, Thai, Taiwanese.|john@layt.net|John Layt}}&lt;br /&gt;
{{FeatureDone|KCalendarSystem|Add support for Unicode format strings for Qt and cross-platform compatability (for output only, not input).|john@layt.net|John Layt}}&lt;br /&gt;
{{FeatureTodo|KCalendarSystem|Add new astronomical calculation support classes to be used in kdelibs to build new astronomically based calendar systems, and in kdepim to build new version of libkholiday.|john@layt.net|John Layt}} &lt;br /&gt;
{{FeatureTodo|KCalendarSystem|Add new calendar systems: Bahai'i, Chinese, Buddhist, etc.|john@layt.net|John Layt}}&lt;br /&gt;
{{FeatureTodo|KCalendarSystem|Add support for traditional/USA week numbering.|john@layt.net|John Layt}}&lt;br /&gt;
{{FeatureTodo|kdecore|Group policy (Windows) backend for KAuth|drf@kde.org|Dario Freddi}}&lt;br /&gt;
{{FeatureTodo|KDEPrint|Add framework for standard actions for 'Send to...' for e-mail, fax, etc by printing to PDF/PS.|john@layt.net|John Layt}} &lt;br /&gt;
{{FeatureTodo|kdeui|Implement caps-lock warning for password entry widgets|lemma@confuego.org|Michael Leupold}}&lt;br /&gt;
{{FeatureTodo|KLocale|Implement support for number grouping other than thousands using LC_NUMERIC and LC_MONETARY formats, e.g. India 00 00 000 and China 0000 0000.|john@layt.net|John Layt}} &lt;br /&gt;
{{FeatureTodo|KLocale|Add configuration for AM/PM symbols.|john@layt.net|John Layt}} &lt;br /&gt;
{{FeatureTodo|KLocale|Full POSIX compliant format support for date, time, numbers and money.|john@layt.net|John Layt}} &lt;br /&gt;
{{FeatureTodo|KLocale|Implement more 'named' date/time formats, e.g. ISO, UnixTimestamp, RFC3339, etc.|john@layt.net|John Layt}} &lt;br /&gt;
{{FeatureTodo|KLocale|Add Full date format in addition to existing short and long.|john@layt.net|John Layt}} &lt;br /&gt;
{{FeatureTodo|KLocale|Add default colour to optionally display negative numbers.|john@layt.net|John Layt}} &lt;br /&gt;
{{FeatureTodo|KLocale|Implement separate backends for each supported platform/desktop to use platform localisation in place of KDE locale.|john@layt.net|John Layt}} &lt;br /&gt;
{{FeatureTodo|KLocale|Implement support for additional Country Code standards: ISO Alpha 3, ISO Numeric 3, FIPS-10.|john@layt.net|John Layt}} &lt;br /&gt;
{{FeatureTodo|KLocale|Implement support for Country Code sub-regions, i.e. States/Provinces/etc. Needed for new KHolidays.|john@layt.net|John Layt}} &lt;br /&gt;
{{FeatureTodo|kdeui|Improvements to KDatePicker/KDateTable for feature parity with Plasma Calendar widget, i.e. holiday support, select calendar system, etc.|john@layt.net|John Layt}} &lt;br /&gt;
{{FeatureTodo|kdeui|DBus interface in StatusNotifierItem to connect it with freedesktop notifications instances|notmart@gmail.com|Marco Martin}}&lt;br /&gt;
{{FeatureTodo|khtml|Improvements in kwallet integration|edulix@gmail.com|Eduardo Robles Elvira}}&lt;br /&gt;
{{FeatureInProgress|khtml|Basic audio/video tag support|germain@ebooksfrance.org|Michael Howell and Germain Garand}} &lt;br /&gt;
{{FeatureInProgress|khtml|DOM3 XPath/XPath1 support|maksim@kde.org|Maks Orlovich}}&lt;br /&gt;
{{FeatureDone|khtml|Selectors API1|maksim@kde.org|Maks Orlovich}}&lt;br /&gt;
{{FeatureTodo|khtml and kparts|More general KPart scripting interfaces|maksim@kde.org|Maks Orlovich}}&lt;br /&gt;
{{FeatureTodo|khtml|Implement more of DOM3's CSSOM View module|germain@ebooksfrance.org|Germain Garand}}&lt;br /&gt;
{{FeatureInProgress|khtml|Implement missing parts of DOM3's Background and Borders module|germain@ebooksfrance.org|Germain Garand}}&lt;br /&gt;
{{FeatureTodo|khtml|add new form widgets defined in HTML5 draft|germain@ebooksfrance.org|Germain Garand}}&lt;br /&gt;
{{FeatureDone|KNewStuff|Improved Download Dialog, multiple previews, better integration of details, changelog is displayed|gladhornKDEorg|Frederik Gladhorn}}&lt;br /&gt;
{{FeatureInProgress|KNewStuff|Icon view mode|gladhornKDEorg|Reza Shah, Frederik Gladhorn}}&lt;br /&gt;
{{FeatureDone|KNewStuff|Upload dialog rewritten: It now supports updating of old uploads, previews, most data that can be entered on the website and allows direct login to the account|gladhornKDEorg|Frederik Gladhorn}}&lt;br /&gt;
{{FeatureTodo|KNewStuff|Support more than one payload|jmho@c-xx.com|Jens-Michael Hoffmann}}&lt;br /&gt;
{{FeatureTodo|kdeui|Social About Dialog|teo@kde.org|Téo Mrnjavac}}&lt;br /&gt;
{{FeatureTodo|kdeui|Generic find bar widget|sasch.pe@gmx.de|Sascha Peilicke}}&lt;br /&gt;
{{FeatureTodo|kio|SSL client certificate support|ahartmetz@gmail.com|Andreas Hartmetz}}&lt;br /&gt;
{{FeatureTodo|kio|SSL root certificate list GUI + backend|ahartmetz@gmail.com|Andreas Hartmetz}}&lt;br /&gt;
{{FeatureDone|kio|Add &amp;quot;apply to all&amp;quot; checkbox in renamedialog and allow for automatic renaming|toddrme2178@gmail.com|Todd}}&lt;br /&gt;
{{FeatureDone|kio|Port renamedialog to KFileMetaDataWidget|toddrme2178@gmail.com|Todd}}&lt;br /&gt;
{{FeatureDone|kio|Don't select extension in renamedialog|toddrme2178@gmail.com|Todd}}&lt;br /&gt;
{{FeatureDone|kio|Better listing of applications in file &amp;quot;open with&amp;quot; context menu|toddrme2178@gmail.com|Todd}}&lt;br /&gt;
{{FeatureDone|kio|Context menu entry to open all files in their default applications|toddrme2178@gmail.com|Todd}}&lt;br /&gt;
{{FeatureDone|kio|Add support for additional columns (e.g., smybolic link destination) in KFileItemDelegate|frank78ac@googlemail.com|Frank Reininghaus}}&lt;br /&gt;
{{FeatureDone|kfile|Scroll wheel support for breadcrumb bar|toddrme2178@gmail.com|Todd}}&lt;br /&gt;
{{FeatureDone|kfile|Show all sub-folders in breadcrumb bar|toddrme2178@gmail.com|Todd}}&lt;br /&gt;
{{FeatureDone|kfile|Middle-click on subfolder in the breadcrumb bar to open in a new tab|toddrme2178@gmail.com|Todd}}&lt;br /&gt;
{{FeatureDone|kfile|Easier access to protocols in breadcrumb bar|toddrme2178@gmail.com|Todd}}&lt;br /&gt;
{{FeatureTodo|kfile|Show sub-sub-folders (and so on) in breadcrumb bar|toddrme2178@gmail.com|Todd}}&lt;br /&gt;
{{FeatureInProgress|kdecore|Generic shared-memory cache|mpyne@kde.org|Michael Pyne}}&lt;br /&gt;
{{FeatureInProgress|kdeui|Redesigned icon cache|mpyne@kde.org|Michael Pyne}}&lt;br /&gt;
{{FeatureDone|kdeui|Support alpha channel in KColor classes|christoph@maxiom.de|Christoph Feck}}&lt;br /&gt;
{{FeatureDone|nepomuk|Redesigned Nepomuk::TagWidget which can now actually be used by applications|trueg@kde.org|Sebastian Trueg}}&lt;br /&gt;
{{FeatureDone|kio|Remember downloads via Nepomuk|trueg@kde.org|Sebastian Trueg}}&lt;br /&gt;
{{FeatureDone|solid|Broadcast mount/unmount messages across processes|wilderkde@gmail.com|Jacopo De Simoi}}&lt;br /&gt;
{{FeatureTodo|solid|Add parent matching to predicate parsing|wilderkde@gmail.com|Jacopo De Simoi}}&lt;br /&gt;
{{FeatureDone|kdeui|Add the KRecursiveFilterProxyModel to kdeui/itemviews|steveire@gmail.com|Stephen Kelly}}&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= kdemultimedia  =&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|Video Thumbnailer|Add ffmpegthumbnailer for faster video thumbnailing|ascherfy@gmail.com|Andreas Scherf}}&lt;br /&gt;
{{FeatureTodo|JuK|Remove Qt/KDE3 support lib requirements -- will move to KDE 4.5 feature plan|mpyne@kde.org|Michael Pyne}}&lt;br /&gt;
{{FeatureTodo|JuK|Allow setting covers directly from URLs supported by KIO - drag/drop already allows this however -- will move to KDE 4.5 feature plan|mpyne.org|Michael Pyne}}&lt;br /&gt;
&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;
{{FeatureTodo|Kopete|UPnp Support|mattr@kde.org|Matt Rogers}} &lt;br /&gt;
{{FeatureTodo|Kopete|Jabber Jingle video support|detlev.casanova@gmail.com|Detlev Casanova}} &lt;br /&gt;
{{FeatureTodo|Kopete|Jabber Jingle ICE support|detlev.casanova@gmail.com|Detlev Casanova}} &lt;br /&gt;
{{FeatureTodo|Kopete|Add support for urls to Bonjour plugin|kossebau@kde.org|Friedrich W. H. Kossebau}} &lt;br /&gt;
{{FeatureTodo|Kopete|Rich text support for ICQ|kedgedev@gmail.com|Roman Jarosz}} &lt;br /&gt;
{{FeatureDone|Kopete|Extended video controls|fschaefer.oss(at)googlemail.com|Frank Schaefer}} &lt;br /&gt;
{{FeatureTodo|Kopete|Akonadi History Plugin|roideuniverse@gmail.com|Kaushik Saurabh}} &lt;br /&gt;
{{FeatureTodo|Krdc|Connection status and reconnect screen|murraytony@gmail.com|Tony Murray}}&lt;br /&gt;
{{FeatureDone|Krdc|Much improved new connection screen: more info, sortable, interactive, and better use of space|murraytony@gmail.com|Tony Murray}}&lt;br /&gt;
{{FeatureInProgress|KGet|Use plasma notifications to show the progress|mat69@gmx.net|Matthias Fuchs}}&lt;br /&gt;
{{FeatureDone|KGet|Refaktor Torrent-Plugin to base on the newly created libktorrent from extragear|l.appelhans@gmx.de|Lukas Appelhans}}&lt;br /&gt;
{{FeatureInProgress|KGet|Better error handling|l.appelhans@gmx.de|Lukas Appelhans}}&lt;br /&gt;
|}&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;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact &lt;br /&gt;
{{FeatureTodo|KAlarm|Port to Akonadi|djarvie@kde.org|David Jarvie}}&lt;br /&gt;
{{FeatureInProgress|KMail|Port to Akonadi|kde-pim@kde.org|Thomas McGuire}}&lt;br /&gt;
{{FeatureInProgress|KOrganizer|Port to Akonadi|kde-pim@kde.org|Frank Osterfeld, Sebastian Sauer}}&lt;br /&gt;
{{FeatureInProgress|KJots|Port to Akonadi|kde-pim@kde.org|Stephen Kelly}}&lt;br /&gt;
{{FeatureTodo|KHolidays|Add support for holiday types and day-off types.|john@layt.net|John Layt}}&lt;br /&gt;
{{FeatureDone|KHolidays|Add support for alternative calendar systems, improved metadata, advanced holiday calculations, and improved API.|john@layt.net|John Layt}}&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;
{{FeatureTodo|knowledgebase|port knowledgebase plasmoid to new engine|ewoerner@kde.org|Eckhart Wörner}} &lt;br /&gt;
{{FeatureTodo|knowledgebase|Add categories|ewoerner@kde.org|Eckhart Wörner}} &lt;br /&gt;
{{FeatureDone|Bookmarks widget|New|kossebau@kde.org|Friedrich W. H. Kossebau}} &lt;br /&gt;
{{FeatureDone|Mandelbrot Wallpaper|Performance improvements|jacob.benoit.1@gmail.com|Benoit Jacob}} &lt;br /&gt;
{{FeatureDone|Mandelbrot Wallpaper|Rendering improvements (through dithering, extra iterations, and better/simpler formulas)|jacob.benoit.1@gmail.com|Benoit Jacob}}&lt;br /&gt;
{{FeatureDone|Mandelbrot Wallpaper|Allow to import/export parameters and to export to PNG images|jacob.benoit.1@gmail.com|Benoit Jacob}}&lt;br /&gt;
{{FeatureDone|Comic Applet|Add option to show &amp;quot;text&amp;quot;, &amp;quot;icons&amp;quot; or both &amp;quot;text and icons&amp;quot; for tabs|mat69@gmx.net|Matthias Fuchs}}&lt;br /&gt;
{{FeatureDone|Comic Applet|Prefetch next and previous comic strip (thx to Miha Cancula)|mat69@gmx.net|Matthias Fuchs}}&lt;br /&gt;
{{FeatureDone|Character Runner|New|akreuzkamp@web.de|Anton Kreuzkamp}}&lt;br /&gt;
{{FeatureDone|KDE Observatory|Performance improvements, new data engine|sandroandrade@kde.org|Sandro Andrade}}&lt;br /&gt;
{{FeatureDone|Plasmaboard|Completly rework the current onscreen keyboard and add key layouts for tablets and mids. Better performance, better useability, less memory usage. See: http://btux1984.wordpress.com/ |bjoern@ruberg-wegener.de|Björn Ruberg}}&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;
{{FeatureDone|Lokalize|Cache filestats to improve initial project scam time|shafff@NOSPAMukr.net|Nick Shaforostoff}} &lt;br /&gt;
{{FeatureDone|Lokalize|Support GNU PO file layout better by paying attention to the language specified in the PO file header (not the project-wide one)|shafff@NOSPAMukr.net|Nick Shaforostoff}} &lt;br /&gt;
{{FeatureDone|Lokalize|Rewrite glossary engine to use QDom|shafff@NOSPAMukr.net|Nick Shaforostoff}} &lt;br /&gt;
{{FeatureDone|Lokalize|Return simple [but reliable] project creation back|shafff@NOSPAMukr.net|Nick Shaforostoff}} &lt;br /&gt;
{{FeatureInProgress|Kate|Replace old snippet plugin through TNG plugin and enhance the usability of the new plugin|jowenn(you_know)kde(here_too)org|Joseph Wenninger}}&lt;br /&gt;
{{FeatureDone|Kate|Port the old XML completion plugin (xmltools)|tomastrnka@gmx.com|Tomáš Trnka}} &lt;br /&gt;
{{FeatureInProgress|Umbrello|Add a code importing wizzard|andi.fischer@NOSPAMhispeed.ch|Andi Fischer}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= kdeutils  =&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|Ark|Add an options dialog (maybe)|haraldhv@stud.ntnu.no|Harald Hvaal}}&lt;br /&gt;
{{FeatureTodo|Ark|Simplify Kerfuffle's API (jobs, interfaces etc) and try to make it stable|kubito@gmail.com|Raphael Kubo da Costa}}&lt;br /&gt;
{{FeatureTodo|Ark|Support for custom options from the compression interface (eg. a slider for selecting compression level for rar files)|haraldhv@stud.ntnu.no|Harald Hvaal}}&lt;br /&gt;
{{FeatureTodo|Ark|Add feedback for the latest operation in the status bar|kubito@gmail.com|Raphael Kubo da Costa}}&lt;br /&gt;
{{FeatureTodo|Ark|Try multiple plugins for each archive type before failing|kubito@gmail.com|Raphael Kubo da Costa}}&lt;br /&gt;
{{FeatureTodo|Ark|Make the internal previewer optional|kubito@gmail.com|Raphael Kubo da Costa}}&lt;br /&gt;
{{FeatureTodo|Ark|Add a &amp;quot;Preview with...&amp;quot; context menu item|kubito@gmail.com|Raphael Kubo da Costa}}&lt;br /&gt;
{{FeatureTodo|Ark|Make Kerfuffle really thread-safe (and use threads in less places)|kubito@gmail.com|Raphael Kubo da Costa}}&lt;br /&gt;
{{FeatureTodo|Ark|Get rid of the Observer code in Kerfuffle|kubito@gmail.com|Raphael Kubo da Costa}}&lt;br /&gt;
{{FeatureTodo|Ark|Make error reporting work as expected in Kerfuffle|kubito@gmail.com|Raphael Kubo da Costa}}&lt;br /&gt;
{{FeatureTodo|Okteta|add Kate-like search tool|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|add support for import by drop, both url and data|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|copy again puts also a value or char variant of the data to clipboard|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|add support for memory mapping of files and 64-bit addressing|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|add support for jobs like io, printing, string search or filter|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|Add Okular like embedded notifications|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|Store bookmarks and other view settings for next load|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|Add global toggle option for the offset display, hex or decimal|kossebau@kde.org|Friedrich W. H. Kossebau}} &lt;br /&gt;
{{FeatureTodo|Okteta|Add Kate-like combined dialogs to query for actions on files|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|Improve the titels of the changes to the bytearray to be more descriptive, best using ids to avoid text string|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|Merge row and column widgets into one|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|Add a general KPart adapter to Kasten, than finish port of Okteta KPart to Okteta Kasten|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|Make all user interaction in the KastenCore managers plugin-based|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|Store bookmarks|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|Add view profiles, incl. editor/manager|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|printer-applet|Restore feature parity with KDEPrint3 where possible.||Jonathon Riddell, John Layt}} &lt;br /&gt;
{{FeatureInProgress|Okteta|Allow writing structure definitions in JavaScript|alex.richardson@gmx.de|Alex Richardson}} &lt;br /&gt;
{{FeatureInProgress|Okteta|Add possibility to set count of bytes per line/group|kossebau@kde.org|Friedrich W. H. Kossebau}} &lt;br /&gt;
{{FeatureDone|kdelirc/kremotecontrol|Transition from KDELirc to KRemoteControl|michael_zanetti@gmx.net|Michael Zanetti}} &lt;br /&gt;
{{FeatureDone|KGpg|Add &amp;amp;quot;caff&amp;amp;quot; mode for keysigning|kde@opensource.sf-tec.de|Rolf Eike Beer}}&lt;br /&gt;
{{FeatureDone|Okteta|Add KNewStuff support to the structures tool|alex.richardson@gmx.de|Alex Richardson}} &lt;br /&gt;
{{FeatureDone|Okteta|Allow pinning structure beginning to a specific offset|alex.richardson@gmx.de|Alex Richardson}}&lt;br /&gt;
{{FeatureDone|Okteta|new export formats: S-Record, Intel Hex, Base32, Ascii85, Uuencoding, Xxencoding|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureDone|Okteta|add QIODevice for AbstractByteArrayModel and make mimetype detection use this instead of only filename |kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureDone|Okteta|Refactor mouse input to controllers for the bytearray widget|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;
= 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;
{{FeatureInProgress|kteatime|Port to KStatusNotifierItem|kde@hilefoks.org|Stefan Böhmann}} &lt;br /&gt;
{{FeatureInProgress|kteatime|Port to KConfigXT|kde@hilefoks.org|Stefan Böhmann}} &lt;br /&gt;
{{FeatureInProgress|kteatime|Support categories|kde@hilefoks.org|Stefan Böhmann}}&lt;br /&gt;
{{FeatureInProgress|kteatime|Improved indicator icon painting|kde@hilefoks.org|Stefan Böhmann}}&lt;br /&gt;
{{FeatureTodo|kteatime|Fork multiple instances for multiple timers|kde@hilefoks.org|Stefan Böhmann}}&lt;br /&gt;
{{FeatureTodo|kteatime|Tea runner|kde@hilefoks.org|Stefan Böhmann}}&lt;br /&gt;
{{FeatureTodo|kteatime|Improved command line|kde@hilefoks.org|Stefan Böhmann}}&lt;br /&gt;
{{FeatureTodo|amor|Do some refactoring in amor|kde@hilefoks.org|Stefan Böhmann}} &lt;br /&gt;
{{FeatureTodo|amor|Improve theme support|kde@hilefoks.org|Stefan Böhmann}} &lt;br /&gt;
{{FeatureTodo|amor|Implement KNewStuff support|kde@hilefoks.org|Stefan Böhmann}} &lt;br /&gt;
{{FeatureTodo|amor|Revamp configure dialog|kde@hilefoks.org|Stefan Böhmann}} {{FeatureTodo|amor|Sound support|kde@hilefoks.org|Stefan Böhmann}}&lt;br /&gt;
{{FeatureTodo|amor|Add KStatusNotifierItem support|kde@hilefoks.org|Stefan Böhmann}}&lt;br /&gt;
{{FeatureInProgress|ktux|Do some refactoring in ktux|kde@hilefoks.org|Stefan Böhmann}} &lt;br /&gt;
{{FeatureTodo|ktux|Revamp configure dialog|kde@hilefoks.org|Stefan Böhmann}} {{FeatureTodo|ktux|Sound support|kde@hilefoks.org|Stefan Böhmann}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Other  =&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;
&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Shaforostoff</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Schedules/KDE4/4.6_Feature_Plan</id>
		<title>Schedules/KDE4/4.6 Feature Plan</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Schedules/KDE4/4.6_Feature_Plan"/>
				<updated>2010-05-28T08:42:59Z</updated>
		
		<summary type="html">&lt;p&gt;Shaforostoff: Created page with '= kdesdk  =  {| 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; |- style=&amp;quot;b...'&lt;/p&gt;
&lt;hr /&gt;
&lt;div&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;
{{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|Remote translation memories|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;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;/div&gt;</summary>
		<author><name>Shaforostoff</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Projects/Nepomuk/QuickStart</id>
		<title>Projects/Nepomuk/QuickStart</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Projects/Nepomuk/QuickStart"/>
				<updated>2009-06-24T18:12:53Z</updated>
		
		<summary type="html">&lt;p&gt;Shaforostoff: /* Initializing the Resource Manager */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Template:I18n/Language Navigation Bar|Development/Tutorials/Metadata/Nepomuk/Quickstart}}&lt;br /&gt;
&lt;br /&gt;
{{TutorialBrowser|&lt;br /&gt;
series=[[../|Nepomuk]]|&lt;br /&gt;
name=Nepmuk Quickstart|&lt;br /&gt;
next=[[../Resources|Handle Resource Metadata with Nepomuk]]|&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Nepomuk Quickstart==&lt;br /&gt;
&lt;br /&gt;
Reading or setting simple metadata in your application with Nepomuk, can be very easy. However, keep in mind that the process described here may have performance drawbacks when changing a lot of metadata.&lt;br /&gt;
We will now take a look at a simple way to access a resource's metadata.&lt;br /&gt;
&lt;br /&gt;
===Initializing the Resource Manager===&lt;br /&gt;
&lt;br /&gt;
The ResourceManager is the central KMetaData configuration point. For KDE 4.2 and newer, we must explicitly initialize it in order to connect to the Nepomuk service.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code cppqt&amp;gt;&lt;br /&gt;
Nepomuk::ResourceManager::instance()-&amp;gt;init();&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This method returns a &amp;lt;i&amp;gt;bool&amp;lt;/i&amp;gt;. If it succeeds (returns 0), the connection to the Nepomuk service has been established and we can work with it. If it fails (returns negative integer), the Nepomuk service was unreachable and we can't continue working with any Nepomuk related code--this may occur if the user has disabled the Nepomuk service for his current session.&lt;br /&gt;
&lt;br /&gt;
===Retrieving Metadata===&lt;br /&gt;
&lt;br /&gt;
Let's get the metadata for a file, assuming the URL or the file is stored in &amp;lt;i&amp;gt;uri&amp;lt;/i&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code cppqt&amp;gt;&lt;br /&gt;
Nepomuk::Resource res( uri );&lt;br /&gt;
QHash&amp;lt;QUrl, Variant&amp;gt; properties = res.properties();&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This allows us to obtain all the properties assigned to the file.&lt;br /&gt;
&lt;br /&gt;
We can now use Nepomuk to get human-readable labels for the properties, and display the properties in a generic way:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code cppqt&amp;gt;&lt;br /&gt;
for( QHash&amp;lt;QUrl, Variant&amp;gt;::const_iterator it = properties.constBegin();&lt;br /&gt;
     it != properties.constEnd(); ++it ) {&lt;br /&gt;
   QUrl propertyUri = it.key();&lt;br /&gt;
   Variant value = it.value();&lt;br /&gt;
&lt;br /&gt;
   Nepomuk::Types::Class propertyType( propertyUri );&lt;br /&gt;
&lt;br /&gt;
   someList-&amp;gt;appendItem( propertyType.label() + &amp;quot;: &amp;quot; + value.toString() );&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Setting Metadata===&lt;br /&gt;
&lt;br /&gt;
Similarly, assume &amp;lt;i&amp;gt;uri&amp;lt;/i&amp;gt; is the URL of a file that we want to set some metadata to. This time we want to set a tag and a comment and will do this using two slightly different methods:&lt;br /&gt;
&lt;br /&gt;
Let's start with the tag and use the easy Nepomukish way:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code cppqt&amp;gt;&lt;br /&gt;
Nepomuk::Tag tag( &amp;quot;This is my nice tag name&amp;quot; );&lt;br /&gt;
Nepomuk::Resource res( uri );&lt;br /&gt;
res.addTag( tag );&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Simple! Actually, if the tag already exists, it will be reused.&lt;br /&gt;
&lt;br /&gt;
Now let's set a comment for the file without the use of the convenience methods in Nepomuk:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code cppqt&amp;gt;&lt;br /&gt;
Nepomuk::Resource res( uri );&lt;br /&gt;
QString comment = getFancyFileComment();&lt;br /&gt;
res.setProperty( Soprano::Vocabulary::NAO::description(), comment );&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
That's all. The comment is saved and will now be searchable via Nepomuk.&lt;/div&gt;</summary>
		<author><name>Shaforostoff</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Schedules/KDE4/4.4_Feature_Plan</id>
		<title>Schedules/KDE4/4.4 Feature Plan</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Schedules/KDE4/4.4_Feature_Plan"/>
				<updated>2009-05-19T20:19:29Z</updated>
		
		<summary type="html">&lt;p&gt;Shaforostoff: /* kdesdk */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This is a list of planned features for the 4.4 release.&lt;br /&gt;
&lt;br /&gt;
See also:&lt;br /&gt;
* [[Schedules/KDE4/4.4 Release Schedule]]&lt;br /&gt;
* [[Schedules/KDE4/4.4 Release Goals]]&lt;br /&gt;
* [[Schedules/KDE4/4.3 Feature Plan]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Legend:&lt;br /&gt;
* todo =&amp;gt; not started yet&lt;br /&gt;
* in-progress =&amp;gt; started, but not completed yet&lt;br /&gt;
* done =&amp;gt; completed&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
= Other =&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 !! Project !! Description !! Contact&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdelibs =&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 !! Project !! Description !! Contact&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdebase-workspace =&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 !! Project !! Description !! Contact&lt;br /&gt;
&lt;br /&gt;
|- border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; style=&amp;quot;text-align: center&amp;quot; |Non-Plasma, Non-KWin&lt;br /&gt;
&lt;br /&gt;
|- border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; style=&amp;quot;text-align: center&amp;quot; |KRunner&lt;br /&gt;
&lt;br /&gt;
|- border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; style=&amp;quot;text-align: center&amp;quot; |Plasma - Priority Features&lt;br /&gt;
&lt;br /&gt;
|- border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; style=&amp;quot;text-align: center&amp;quot; |Plasma&lt;br /&gt;
&lt;br /&gt;
|- border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; style=&amp;quot;text-align: center&amp;quot; |KWin - Core&lt;br /&gt;
&lt;br /&gt;
|- border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; style=&amp;quot;text-align: center&amp;quot; |KWin - Desktop Effects&lt;br /&gt;
&lt;br /&gt;
|- border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; style=&amp;quot;text-align: center&amp;quot; |KDM&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdepimlibs =&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 !! Project !! Description !! Contact&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdenetwork =&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 !! Project !! Description !! Contact&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdepim =&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 !! Project !! Description !! Contact&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdeutils =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureTodo|Okteta|add editing capability to Decoding table |kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|add Kate-like search tool|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|add support for import by drop, both url and data|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|copy again puts also a value or char variant of the data to clipboard|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|add support for memory mapping of files|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|add further export formats like s-record and intel 16|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|add support for jobs like io, printing, string search or filter|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|Make dialogs for Goto, Search &amp;amp; Replace embedded|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|Add Okular like embedded notifications|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|Store bookmarks and other view settings for next load|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|Add dialog to set selection range|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|Add global toggle option for the offset display, hex or decimal|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|Make the Okteta KPart use libkakao, and rename libkakao|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|KGpg|Make keyserver actions possible to use on multiple keyservers at once|kde@opensource.sf-tec.de|Rolf Eike Beer}}&lt;br /&gt;
{{FeatureTodo|KGpg|Add &amp;amp;quot;caff&amp;amp;quot; mode for keysigning|kde@opensource.sf-tec.de|Rolf Eike Beer}}&lt;br /&gt;
{{FeatureTodo|KGpg|Allow searching for trust path in keyring|kde@opensource.sf-tec.de|Rolf Eike Beer}}&lt;br /&gt;
{{FeatureTodo|KGpg|Add improved key import result window (with useful summary, filtering, reasonable default size etc.)|kde@opensource.sf-tec.de|Rolf Eike Beer}}&lt;br /&gt;
{{FeatureTodo|Ark|Add an options dialog (maybe)|haraldhv@stud.ntnu.no|Harald Hvaal}}&lt;br /&gt;
{{FeatureTodo|Ark|Support for custom options from the compression interface (eg. a slider for selecting compression level for rar files)|haraldhv@stud.ntnu.no|Harald Hvaal}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdebindings =&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 !! Project !! Description !! Contact&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdegames =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureTodo|KDiamond|Intelligent animation pre-caching|majewsky@gmx.net|Stefan Majewsky}}&lt;br /&gt;
{{FeatureTodo|KDiamond|Improve time display|majewsky@gmx.net|Stefan Majewsky}}&lt;br /&gt;
{{FeatureTodo|KDiamond|Refactor Board and Diamond classes|majewsky@gmx.net|Stefan Majewsky}}&lt;br /&gt;
{{FeatureTodo|Kolf|Replace with Kolf 2 (help on coding, artwork and level design desired)|majewsky@gmx.net|Stefan Majewsky}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdeadmin =&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 !! Project !! Description !! Contact&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdesdk =&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 !! Project !! Description !! Contact&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|Remote translation memories|shafff@NOSPAMukr.net|Nick Shaforostoff}}&lt;br /&gt;
{{FeatureTodo|Lokalize|Integrate with nupomuk (fast stats retrieval, tag cloud - incl sharing!)|shafff@NOSPAMukr.net|Nick Shaforostoff}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdeedu =&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 !! Project !! Description !! Contact&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdemultimedia =&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 !! Project !! Description !! Contact&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdeaccessibility =&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 !! Project !! Description !! Contact&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdegraphics =&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 !! Project !! Description !! Contact&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdebase-runtime =&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 !! Project !! Description !! Contact&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdebase-apps =&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 !! Project !! Description !! Contact&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdeplasma-addons =&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 !! Project !! Description !! Contact&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdeartwork =&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 !! Project !! Description !! Contact&lt;br /&gt;
&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Shaforostoff</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Schedules/KDE4/4.4_Feature_Plan</id>
		<title>Schedules/KDE4/4.4 Feature Plan</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Schedules/KDE4/4.4_Feature_Plan"/>
				<updated>2009-05-17T02:07:28Z</updated>
		
		<summary type="html">&lt;p&gt;Shaforostoff: /* kdesdk */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This is a list of planned features for the 4.4 release.&lt;br /&gt;
&lt;br /&gt;
See also:&lt;br /&gt;
* [[Schedules/KDE4/4.4 Release Schedule]]&lt;br /&gt;
* [[Schedules/KDE4/4.4 Release Goals]]&lt;br /&gt;
* [[Schedules/KDE4/4.3 Feature Plan]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Legend:&lt;br /&gt;
* todo =&amp;gt; not started yet&lt;br /&gt;
* in-progress =&amp;gt; started, but not completed yet&lt;br /&gt;
* done =&amp;gt; completed&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
= Other =&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 !! Project !! Description !! Contact&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdelibs =&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 !! Project !! Description !! Contact&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdebase-workspace =&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 !! Project !! Description !! Contact&lt;br /&gt;
&lt;br /&gt;
|- border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; style=&amp;quot;text-align: center&amp;quot; |Non-Plasma, Non-KWin&lt;br /&gt;
&lt;br /&gt;
|- border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; style=&amp;quot;text-align: center&amp;quot; |KRunner&lt;br /&gt;
&lt;br /&gt;
|- border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; style=&amp;quot;text-align: center&amp;quot; |Plasma - Priority Features&lt;br /&gt;
&lt;br /&gt;
|- border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; style=&amp;quot;text-align: center&amp;quot; |Plasma&lt;br /&gt;
&lt;br /&gt;
|- border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; style=&amp;quot;text-align: center&amp;quot; |KWin - Core&lt;br /&gt;
&lt;br /&gt;
|- border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; style=&amp;quot;text-align: center&amp;quot; |KWin - Desktop Effects&lt;br /&gt;
&lt;br /&gt;
|- border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; style=&amp;quot;text-align: center&amp;quot; |KDM&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdepimlibs =&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 !! Project !! Description !! Contact&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdenetwork =&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 !! Project !! Description !! Contact&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdepim =&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 !! Project !! Description !! Contact&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdeutils =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureTodo|Okteta|add editing capability to Decoding table |kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|add Kate-like search tool|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|add support for import by drop, both url and data|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|copy again puts also a value or char variant of the data to clipboard|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|add support for memory mapping of files|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|add further export formats like s-record and intel 16|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|add support for jobs like io, printing, string search or filter|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|Make dialogs for Goto, Search &amp;amp; Replace embedded|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|Add Okular like embedded notifications|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|Store bookmarks and other view settings for next load|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|Add dialog to set selection range|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|Add global toggle option for the offset display, hex or decimal|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|Make the Okteta KPart use libkakao, and rename libkakao|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|KGpg|Make keyserver actions possible to use on multiple keyservers at once|kde@opensource.sf-tec.de|Rolf Eike Beer}}&lt;br /&gt;
{{FeatureTodo|KGpg|Add &amp;amp;quot;caff&amp;amp;quot; mode for keysigning|kde@opensource.sf-tec.de|Rolf Eike Beer}}&lt;br /&gt;
{{FeatureTodo|KGpg|Allow searching for trust path in keyring|kde@opensource.sf-tec.de|Rolf Eike Beer}}&lt;br /&gt;
{{FeatureTodo|KGpg|Add improved key import result window (with useful summary, filtering, reasonable default size etc.)|kde@opensource.sf-tec.de|Rolf Eike Beer}}&lt;br /&gt;
{{FeatureTodo|Ark|Add an options dialog (maybe)|haraldhv@stud.ntnu.no|Harald Hvaal}}&lt;br /&gt;
{{FeatureTodo|Ark|Support for custom options from the compression interface (eg. a slider for selecting compression level for rar files)|haraldhv@stud.ntnu.no|Harald Hvaal}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdebindings =&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 !! Project !! Description !! Contact&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdegames =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureTodo|KDiamond|Intelligent animation pre-caching|majewsky@gmx.net|Stefan Majewsky}}&lt;br /&gt;
{{FeatureTodo|KDiamond|Improve time display|majewsky@gmx.net|Stefan Majewsky}}&lt;br /&gt;
{{FeatureTodo|Kolf|Replace with Kolf 2 (help on coding, artwork and level design desired)|majewsky@gmx.net|Stefan Majewsky}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdeadmin =&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 !! Project !! Description !! Contact&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdesdk =&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 !! Project !! Description !! Contact&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|Remote translation memories|shafff@NOSPAMukr.net|Nick Shaforostoff}}&lt;br /&gt;
{{FeatureTodo|Lokalize|Integrate with nupomuk (fast stats retrieval, tag cloud - incl sharing!)|shafff@NOSPAMukr.net|Nick Shaforostoff}}&lt;br /&gt;
{{FeatureTodo|Lokalize|use libgettext parser for strigi analyzer|shafff@NOSPAMukr.net|Nick Shaforostoff}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdeedu =&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 !! Project !! Description !! Contact&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdemultimedia =&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 !! Project !! Description !! Contact&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdeaccessibility =&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 !! Project !! Description !! Contact&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdegraphics =&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 !! Project !! Description !! Contact&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdebase-runtime =&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 !! Project !! Description !! Contact&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdebase-apps =&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 !! Project !! Description !! Contact&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdeplasma-addons =&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 !! Project !! Description !! Contact&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdeartwork =&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 !! Project !! Description !! Contact&lt;br /&gt;
&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Shaforostoff</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Schedules/KDE4/4.4_Feature_Plan</id>
		<title>Schedules/KDE4/4.4 Feature Plan</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Schedules/KDE4/4.4_Feature_Plan"/>
				<updated>2009-05-14T18:22:02Z</updated>
		
		<summary type="html">&lt;p&gt;Shaforostoff: /* kdesdk */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This is a list of planned features for the 4.4 release.&lt;br /&gt;
&lt;br /&gt;
See also:&lt;br /&gt;
* [[Schedules/KDE4/4.4 Release Schedule]]&lt;br /&gt;
* [[Schedules/KDE4/4.4 Release Goals]]&lt;br /&gt;
* [[Schedules/KDE4/4.3 Feature Plan]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Legend:&lt;br /&gt;
* todo =&amp;gt; not started yet&lt;br /&gt;
* in-progress =&amp;gt; started, but not completed yet&lt;br /&gt;
* done =&amp;gt; completed&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
= Other =&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 !! Project !! Description !! Contact&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdelibs =&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 !! Project !! Description !! Contact&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdebase-workspace =&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 !! Project !! Description !! Contact&lt;br /&gt;
&lt;br /&gt;
|- border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; style=&amp;quot;text-align: center&amp;quot; |Non-Plasma, Non-KWin&lt;br /&gt;
&lt;br /&gt;
|- border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; style=&amp;quot;text-align: center&amp;quot; |KRunner&lt;br /&gt;
&lt;br /&gt;
|- border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; style=&amp;quot;text-align: center&amp;quot; |Plasma - Priority Features&lt;br /&gt;
&lt;br /&gt;
|- border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; style=&amp;quot;text-align: center&amp;quot; |Plasma&lt;br /&gt;
&lt;br /&gt;
|- border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; style=&amp;quot;text-align: center&amp;quot; |KWin - Core&lt;br /&gt;
&lt;br /&gt;
|- border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; style=&amp;quot;text-align: center&amp;quot; |KWin - Desktop Effects&lt;br /&gt;
&lt;br /&gt;
|- border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; style=&amp;quot;text-align: center&amp;quot; |KDM&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdepimlibs =&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 !! Project !! Description !! Contact&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdenetwork =&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 !! Project !! Description !! Contact&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdepim =&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 !! Project !! Description !! Contact&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdeutils =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureTodo|Okteta|add editing capability to Decoding table |kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|add Kate-like search tool|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|add support for import by drop, both url and data|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|copy again puts also a value or char variant of the data to clipboard|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|add support for memory mapping of files|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|add further export formats like s-record and intel 16|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|add support for jobs like io, printing, string search or filter|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|Make dialogs for Goto, Search &amp;amp; Replace embedded|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|Add Okular like embedded notifications|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|Store bookmarks and other view settings for next load|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|Add dialog to set selection range|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|Add global toggle option for the offset display, hex or decimal|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|Make the Okteta KPart use libkakao, and rename libkakao|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|KGpg|Make keyserver actions possible to use on multiple keyservers at once|kde@opensource.sf-tec.de|Rolf Eike Beer}}&lt;br /&gt;
{{FeatureTodo|KGpg|Add &amp;amp;quot;caff&amp;amp;quot; mode for keysigning|kde@opensource.sf-tec.de|Rolf Eike Beer}}&lt;br /&gt;
{{FeatureTodo|KGpg|Allow searching for trust path in keyring|kde@opensource.sf-tec.de|Rolf Eike Beer}}&lt;br /&gt;
{{FeatureTodo|Ark|Add an options dialog (maybe)|haraldhv@stud.ntnu.no|Harald Hvaal}}&lt;br /&gt;
{{FeatureTodo|Ark|Support for custom options from the compression interface (eg. a slider for selecting compression level for rar files)|haraldhv@stud.ntnu.no|Harald Hvaal}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdebindings =&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 !! Project !! Description !! Contact&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdegames =&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 !! Project !! Description !! Contact&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdeadmin =&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 !! Project !! Description !! Contact&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdesdk =&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 !! Project !! Description !! Contact&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|Remote translation memories|shafff@NOSPAMukr.net|Nick Shaforostoff}}&lt;br /&gt;
{{FeatureTodo|Lokalize|Integrate with nupomuk|shafff@NOSPAMukr.net|Nick Shaforostoff}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdeedu =&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 !! Project !! Description !! Contact&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdemultimedia =&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 !! Project !! Description !! Contact&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdeaccessibility =&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 !! Project !! Description !! Contact&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdegraphics =&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 !! Project !! Description !! Contact&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdebase-runtime =&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 !! Project !! Description !! Contact&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdebase-apps =&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 !! Project !! Description !! Contact&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdeplasma-addons =&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 !! Project !! Description !! Contact&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdeartwork =&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 !! Project !! Description !! Contact&lt;br /&gt;
&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Shaforostoff</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Schedules/KDE4/4.4_Feature_Plan</id>
		<title>Schedules/KDE4/4.4 Feature Plan</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Schedules/KDE4/4.4_Feature_Plan"/>
				<updated>2009-05-09T16:40:54Z</updated>
		
		<summary type="html">&lt;p&gt;Shaforostoff: /* kdesdk */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This is a list of planned features for the 4.4 release.&lt;br /&gt;
&lt;br /&gt;
See also:&lt;br /&gt;
* [[Schedules/KDE4/4.4 Release Schedule]]&lt;br /&gt;
* [[Schedules/KDE4/4.4 Release Goals]]&lt;br /&gt;
* [[Schedules/KDE4/4.3 Feature Plan]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Legend:&lt;br /&gt;
* todo =&amp;gt; not started yet&lt;br /&gt;
* in-progress =&amp;gt; started, but not completed yet&lt;br /&gt;
* done =&amp;gt; completed&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
= Other =&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 !! Project !! Description !! Contact&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdelibs =&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 !! Project !! Description !! Contact&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdebase-workspace =&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 !! Project !! Description !! Contact&lt;br /&gt;
&lt;br /&gt;
|- border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; style=&amp;quot;text-align: center&amp;quot; |Non-Plasma, Non-KWin&lt;br /&gt;
&lt;br /&gt;
|- border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; style=&amp;quot;text-align: center&amp;quot; |KRunner&lt;br /&gt;
&lt;br /&gt;
|- border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; style=&amp;quot;text-align: center&amp;quot; |Plasma - Priority Features&lt;br /&gt;
&lt;br /&gt;
|- border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; style=&amp;quot;text-align: center&amp;quot; |Plasma&lt;br /&gt;
&lt;br /&gt;
|- border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; style=&amp;quot;text-align: center&amp;quot; |KWin - Core&lt;br /&gt;
&lt;br /&gt;
|- border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; style=&amp;quot;text-align: center&amp;quot; |KWin - Desktop Effects&lt;br /&gt;
&lt;br /&gt;
|- border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; style=&amp;quot;text-align: center&amp;quot; |KDM&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdepimlibs =&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 !! Project !! Description !! Contact&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdenetwork =&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 !! Project !! Description !! Contact&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdepim =&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 !! Project !! Description !! Contact&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdeutils =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureTodo|Okteta|add editing capability to Decoding table |kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|add Kate-like search tool|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|add support for import by drop, both url and data|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|copy again puts also a value or char variant of the data to clipboard|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|add support for memory mapping of files|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|add further export formats like s-record and intel 16|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|add support for jobs like io, printing, string search or filter|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|Make dialogs for Goto, Search &amp;amp; Replace embedded|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|Add Okular like embedded notifications|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|Store bookmarks and other view settings for next load|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|Add dialog to set selection range|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|Add global toggle option for the offset display, hex or decimal|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|Make the Okteta KPart use libkakao, and rename libkakao|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|KGpg|Make keyserver actions possible to use on multiple keyservers at once|kde@opensource.sf-tec.de|Rolf Eike Beer}}&lt;br /&gt;
{{FeatureTodo|KGpg|Add &amp;amp;quot;caff&amp;amp;quot; mode for keysigning|kde@opensource.sf-tec.de|Rolf Eike Beer}}&lt;br /&gt;
{{FeatureTodo|KGpg|Allow searching for trust path in keyring|kde@opensource.sf-tec.de|Rolf Eike Beer}}&lt;br /&gt;
{{FeatureTodo|Ark|Add an options dialog (maybe)|haraldhv@stud.ntnu.no|Harald Hvaal}}&lt;br /&gt;
{{FeatureTodo|Ark|Support for custom options from the compression interface (eg. a slider for selecting compression level for rar files)|haraldhv@stud.ntnu.no|Harald Hvaal}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdebindings =&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 !! Project !! Description !! Contact&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdegames =&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 !! Project !! Description !! Contact&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdeadmin =&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 !! Project !! Description !! Contact&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdesdk =&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 !! Project !! Description !! Contact&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|Remote translation memories|shafff@NOSPAMukr.net|Nick Shaforostoff}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdeedu =&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 !! Project !! Description !! Contact&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdemultimedia =&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 !! Project !! Description !! Contact&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdeaccessibility =&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 !! Project !! Description !! Contact&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdegraphics =&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 !! Project !! Description !! Contact&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdebase-runtime =&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 !! Project !! Description !! Contact&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdebase-apps =&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 !! Project !! Description !! Contact&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdeplasma-addons =&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 !! Project !! Description !! Contact&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdeartwork =&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 !! Project !! Description !! Contact&lt;br /&gt;
&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Shaforostoff</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Schedules/KDE4/4.4_Feature_Plan</id>
		<title>Schedules/KDE4/4.4 Feature Plan</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Schedules/KDE4/4.4_Feature_Plan"/>
				<updated>2009-05-09T16:39:26Z</updated>
		
		<summary type="html">&lt;p&gt;Shaforostoff: /* kdesdk */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This is a list of planned features for the 4.4 release.&lt;br /&gt;
&lt;br /&gt;
See also:&lt;br /&gt;
* [[Schedules/KDE4/4.4 Release Schedule]]&lt;br /&gt;
* [[Schedules/KDE4/4.4 Release Goals]]&lt;br /&gt;
* [[Schedules/KDE4/4.3 Feature Plan]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Legend:&lt;br /&gt;
* todo =&amp;gt; not started yet&lt;br /&gt;
* in-progress =&amp;gt; started, but not completed yet&lt;br /&gt;
* done =&amp;gt; completed&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
= Other =&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 !! Project !! Description !! Contact&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdelibs =&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 !! Project !! Description !! Contact&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdebase-workspace =&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 !! Project !! Description !! Contact&lt;br /&gt;
&lt;br /&gt;
|- border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; style=&amp;quot;text-align: center&amp;quot; |Non-Plasma, Non-KWin&lt;br /&gt;
&lt;br /&gt;
|- border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; style=&amp;quot;text-align: center&amp;quot; |KRunner&lt;br /&gt;
&lt;br /&gt;
|- border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; style=&amp;quot;text-align: center&amp;quot; |Plasma - Priority Features&lt;br /&gt;
&lt;br /&gt;
|- border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; style=&amp;quot;text-align: center&amp;quot; |Plasma&lt;br /&gt;
&lt;br /&gt;
|- border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; style=&amp;quot;text-align: center&amp;quot; |KWin - Core&lt;br /&gt;
&lt;br /&gt;
|- border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; style=&amp;quot;text-align: center&amp;quot; |KWin - Desktop Effects&lt;br /&gt;
&lt;br /&gt;
|- border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; style=&amp;quot;text-align: center&amp;quot; |KDM&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdepimlibs =&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 !! Project !! Description !! Contact&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdenetwork =&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 !! Project !! Description !! Contact&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdepim =&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 !! Project !! Description !! Contact&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdeutils =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureTodo|Okteta|add editing capability to Decoding table |kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|add Kate-like search tool|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|add support for import by drop, both url and data|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|copy again puts also a value or char variant of the data to clipboard|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|add support for memory mapping of files|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|add further export formats like s-record and intel 16|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|add support for jobs like io, printing, string search or filter|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|Make dialogs for Goto, Search &amp;amp; Replace embedded|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|Add Okular like embedded notifications|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|Store bookmarks and other view settings for next load|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|Add dialog to set selection range|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|Add global toggle option for the offset display, hex or decimal|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|Make the Okteta KPart use libkakao, and rename libkakao|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|KGpg|Make keyserver actions possible to use on multiple keyservers at once|kde@opensource.sf-tec.de|Rolf Eike Beer}}&lt;br /&gt;
{{FeatureTodo|KGpg|Add &amp;amp;quot;caff&amp;amp;quot; mode for keysigning|kde@opensource.sf-tec.de|Rolf Eike Beer}}&lt;br /&gt;
{{FeatureTodo|KGpg|Allow searching for trust path in keyring|kde@opensource.sf-tec.de|Rolf Eike Beer}}&lt;br /&gt;
{{FeatureTodo|Ark|Add an options dialog (maybe)|haraldhv@stud.ntnu.no|Harald Hvaal}}&lt;br /&gt;
{{FeatureTodo|Ark|Support for custom options from the compression interface (eg. a slider for selecting compression level for rar files)|haraldhv@stud.ntnu.no|Harald Hvaal}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdebindings =&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 !! Project !! Description !! Contact&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdegames =&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 !! Project !! Description !! Contact&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdeadmin =&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 !! Project !! Description !! Contact&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdesdk =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureTodo|Lokalize|Integrate snowball stemmer for glossary|shafff at ukr.net|Nick Shaforostoff}}&lt;br /&gt;
{{FeatureTodo|Lokalize|Continue implementing XLIFF spec|shafff at ukr.net|Nick Shaforostoff}}&lt;br /&gt;
{{FeatureTodo|Lokalize|Segmentation [editing] functionality|shafff at ukr.net|Nick Shaforostoff}}&lt;br /&gt;
{{FeatureTodo|Lokalize|Remote translation memories|shafff at ukr.net|Nick Shaforostoff}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdeedu =&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 !! Project !! Description !! Contact&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdemultimedia =&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 !! Project !! Description !! Contact&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdeaccessibility =&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 !! Project !! Description !! Contact&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdegraphics =&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 !! Project !! Description !! Contact&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdebase-runtime =&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 !! Project !! Description !! Contact&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdebase-apps =&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 !! Project !! Description !! Contact&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdeplasma-addons =&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 !! Project !! Description !! Contact&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdeartwork =&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 !! Project !! Description !! Contact&lt;br /&gt;
&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Shaforostoff</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Projects/Summer_of_Code/2007/Projects/KAider</id>
		<title>Projects/Summer of Code/2007/Projects/KAider</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Projects/Summer_of_Code/2007/Projects/KAider"/>
				<updated>2009-05-08T23:16:53Z</updated>
		
		<summary type="html">&lt;p&gt;Shaforostoff: /* KBabel features to be implemented */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;''' WARNING ''' KAider was renamed to '''[http://userbase.kde.org/Lokalize Lokalize]''' and will be included in kdesdk package for KDE 4.1&lt;br /&gt;
&lt;br /&gt;
Lokalize is a computer-aided translation system that focuses on productivity and performance. Translator does only creative work (of delivering message in his/her mother language in laconic and easy to understand form). Lokalize implies paragraph-by-paragraph translation approach (when translating documentation) and message-by-message approach (when translating GUI).&lt;br /&gt;
See [[Projects/Summer_of_Code/2007/Projects/KAider/Introduction|KAider/Introduction]]&lt;br /&gt;
&lt;br /&gt;
==Current state==&lt;br /&gt;
Already has:&lt;br /&gt;
* syntax highlighting&lt;br /&gt;
* spellcheck (sonnet needs improvement)&lt;br /&gt;
* search-n-replace, ignoring accel marks&lt;br /&gt;
* formats .po file output better so less diff is generated by scripty&lt;br /&gt;
* small features like quick tag insert, placing text cursor right after the tag in the beginning (e.g. '&amp;lt;qt&amp;gt;|foobar&amp;lt;/qt&amp;gt;' where &amp;quot;|&amp;quot; is a cursor), entry bookmarks&lt;br /&gt;
* viewer of the difference between current msgid and previous one (i.e. msgid translation of which current msgstr really is -- for fuzzies generated with --previous gettext option)&lt;br /&gt;
* merge mode for editors (QA) or when several translators work on the same file [http://kv-53.narod.ru/kaider2.png screenshot]&lt;br /&gt;
* basic projectmanager functionality [http://kv-53.narod.ru/kaider1.png screenshot]&lt;br /&gt;
* Translation Memory (threaded) with shortcuts for inserting suggestions into current 'msgstr', scores are computed based on common/total length ratio, removed+added length, and count of removed+added parts [http://kv-53.narod.ru/kaider_tm.png screenshot]&lt;br /&gt;
* for difference representation in all places word-by-word algorithm is used (based on the Longest Common Sequence o(n*n) algorithm and my own experience)&lt;br /&gt;
* glossary with basic [http://www.lisa.org/standards/tbx/ tbx] format support. Lokalize displays relevant entries on-the-fly and provides shortcuts to insert them. also, you can add new glossary terms via context menu of the glossary. [http://kv-53.narod.ru/kaider3.png screenshot 1] [http://kv-53.narod.ru/kaider4.png screenshot 2]&lt;br /&gt;
* Search/Replace functions in multiple files at once.&lt;br /&gt;
* Spellchecking of multiple files at once.&lt;br /&gt;
* beginnings of XLIFF support&lt;br /&gt;
&lt;br /&gt;
==Compiling==&lt;br /&gt;
After you [[Getting_Started/Build/KDE4|set kde env up]] (compiling kdelibs+kdebase is enough):&lt;br /&gt;
 svn checkout -N svn://anonsvn.kde.org/home/kde/trunk/KDE/kdesdk/&lt;br /&gt;
 cd kdesdk &amp;amp;&amp;amp; svn up cmake doc lokalize&lt;br /&gt;
 mkdir kdesdk/build &amp;amp;&amp;amp; chmod a+w kdesdk/build&lt;br /&gt;
 su kde-devel&lt;br /&gt;
 cd kdesdk/build&lt;br /&gt;
 cmakekde ..&lt;br /&gt;
&lt;br /&gt;
as a root, run sshd and then from the usual shell:&lt;br /&gt;
 ssh -XC kde-devel@localhost&lt;br /&gt;
 lokalize &lt;br /&gt;
&lt;br /&gt;
you can get catalogmanager by specifying --project option&lt;br /&gt;
 lokalize --project /path/to/index.ktp&lt;br /&gt;
&lt;br /&gt;
See [[Projects/Summer_of_Code/2007/Projects/KAider#Setup]].&lt;br /&gt;
&lt;br /&gt;
===Debian users===&lt;br /&gt;
You can install the latest version of lokalize from experimental repository: [http://packages.debian.org/experimental/lokalize]&lt;br /&gt;
&lt;br /&gt;
==Setup==&lt;br /&gt;
* Create project, saving *.ktp file to l10n-kde4/&amp;lt;LangCode&amp;gt;/ dir&lt;br /&gt;
* Populate Glossary via GlossaryView context menu (.tbx file will be created automatically for you on the first entry addition).&lt;br /&gt;
* Populate Translation Memory by dropping .po files onto TM View&lt;br /&gt;
&lt;br /&gt;
See [http://websvn.kde.org/trunk/l10n-kde4/ru/] for an example project structure&lt;br /&gt;
&lt;br /&gt;
==Maxims==&lt;br /&gt;
* Majority of actions must be accessible via keyboard (because it is faster to press a shotcut than to be frustrated with a mouse)&lt;br /&gt;
* Do automatization _everywhere_ possible&lt;br /&gt;
* Focus on translation quality. This is open source -- so source code is available (for change)&lt;br /&gt;
&lt;br /&gt;
==Further work==&lt;br /&gt;
*WebQuery for twin languages (like Ukrainian and Russian)&lt;br /&gt;
*xliff+qt-linguist support (see [[#KBabel features to be implemented|KBabel features to be implemented]])&lt;br /&gt;
* Glossary checklists: check for forbidden terms in new translation&lt;br /&gt;
* project-wise and program-wise: webquery scripts, glossaries, TMs&lt;br /&gt;
* check for different translations of the same msgid (use strigi?)&lt;br /&gt;
* back-checking, to see whether a term/string in the target language has been used as translation for different things, not just that one source has the same translation everywhere.&lt;br /&gt;
* Tighten SVN support: svn diff-like feature&lt;br /&gt;
* Automatic Glossary building&lt;br /&gt;
* Research on dividing into sentences rules (e.g. srx)&lt;br /&gt;
* Automate submitting translation suggestions to translate.google.com [Kross action]&lt;br /&gt;
* fill TM with content of /usr/share/locale/&amp;lt;lang&amp;gt;/LC_MESSAGES/*.mo [Kross action]&lt;br /&gt;
&lt;br /&gt;
Not for KDE:&lt;br /&gt;
* Be complete computer-aided translation system by providing e.g. actions to import+export openoffice, txt and documents of other formats by calling appropriate scripts/commands. Define for that general kross actions interface.&lt;br /&gt;
* Make nice windoze package for the windowzerz&lt;br /&gt;
&lt;br /&gt;
Competitors (ideas):&lt;br /&gt;
* [http://www.triplespin.com/en/products/locfactoryeditor.html#whatsnew locfactoryeditor] --Mac only&lt;br /&gt;
* [http://www.heartsome.net/EN/downloads.html Heartsome] --multiplatform, costs money&lt;br /&gt;
* Go over [http://sourceforge.net/tracker/?atid=520350&amp;amp;group_id=68187&amp;amp;func=browse OmegaT wishlist] and ensure every sane wish is implemented&lt;br /&gt;
&lt;br /&gt;
Converters (use, acting as a front-end):&lt;br /&gt;
* [http://file2xliff4j.sourceforge.net/javadoc/file2xliff4j/package-summary.html file2xliff4j] --java-based&lt;br /&gt;
* [https://open-language-tools.dev.java.net] --java-based&lt;br /&gt;
* [http://translate.sourceforge.net/wiki/toolkit/index Translate Toolkit] --python-based, checks, other goodness&lt;br /&gt;
&lt;br /&gt;
==KBabel features to be implemented==&lt;br /&gt;
...in a smarter way :)&lt;br /&gt;
* persistent bookmarks for messages in a file saved in the project&lt;br /&gt;
* extended marking of .po and .pot files (e.g. translator that currently works on the file and cince when) saved in the project&lt;br /&gt;
* A plugin framework for validation tools for consistency checks [Kross action triggered on saving]&lt;br /&gt;
* Sending the file using email [Kross (project) action]&lt;br /&gt;
* Automatic syntax check with msgfmt when saving and, if an error occured, easy navigation to messages, which contain errors. == Syntax check (msgfmt --statistics) for existing files to control if the translated files will compile and, accordingly, work when distributed [Kross (project) action]&lt;br /&gt;
* PO File Header change [Kross action (+triggered on saving)]&lt;br /&gt;
* Printing of selected messages (eg fuzzy ) [Kross action]&lt;br /&gt;
Also:&lt;br /&gt;
* msgid-diff-msgstr from [http://lichota.net/~krzysiek/projects/msgtools/] (features for all other commands are already implemented, if you haven't noticed this)&lt;br /&gt;
&lt;br /&gt;
==KBabel features NOT to be implemented==&lt;br /&gt;
* Character selection tool integration, sort by the frequency&lt;br /&gt;
Why? Better improve system-wide charselect tool, OR...&lt;br /&gt;
modify your xorg keyboard layout!&lt;/div&gt;</summary>
		<author><name>Shaforostoff</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Projects/Summer_of_Code/2007/Projects/KAider</id>
		<title>Projects/Summer of Code/2007/Projects/KAider</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Projects/Summer_of_Code/2007/Projects/KAider"/>
				<updated>2009-05-08T23:09:54Z</updated>
		
		<summary type="html">&lt;p&gt;Shaforostoff: /* Further work */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;''' WARNING ''' KAider was renamed to '''[http://userbase.kde.org/Lokalize Lokalize]''' and will be included in kdesdk package for KDE 4.1&lt;br /&gt;
&lt;br /&gt;
Lokalize is a computer-aided translation system that focuses on productivity and performance. Translator does only creative work (of delivering message in his/her mother language in laconic and easy to understand form). Lokalize implies paragraph-by-paragraph translation approach (when translating documentation) and message-by-message approach (when translating GUI).&lt;br /&gt;
See [[Projects/Summer_of_Code/2007/Projects/KAider/Introduction|KAider/Introduction]]&lt;br /&gt;
&lt;br /&gt;
==Current state==&lt;br /&gt;
Already has:&lt;br /&gt;
* syntax highlighting&lt;br /&gt;
* spellcheck (sonnet needs improvement)&lt;br /&gt;
* search-n-replace, ignoring accel marks&lt;br /&gt;
* formats .po file output better so less diff is generated by scripty&lt;br /&gt;
* small features like quick tag insert, placing text cursor right after the tag in the beginning (e.g. '&amp;lt;qt&amp;gt;|foobar&amp;lt;/qt&amp;gt;' where &amp;quot;|&amp;quot; is a cursor), entry bookmarks&lt;br /&gt;
* viewer of the difference between current msgid and previous one (i.e. msgid translation of which current msgstr really is -- for fuzzies generated with --previous gettext option)&lt;br /&gt;
* merge mode for editors (QA) or when several translators work on the same file [http://kv-53.narod.ru/kaider2.png screenshot]&lt;br /&gt;
* basic projectmanager functionality [http://kv-53.narod.ru/kaider1.png screenshot]&lt;br /&gt;
* Translation Memory (threaded) with shortcuts for inserting suggestions into current 'msgstr', scores are computed based on common/total length ratio, removed+added length, and count of removed+added parts [http://kv-53.narod.ru/kaider_tm.png screenshot]&lt;br /&gt;
* for difference representation in all places word-by-word algorithm is used (based on the Longest Common Sequence o(n*n) algorithm and my own experience)&lt;br /&gt;
* glossary with basic [http://www.lisa.org/standards/tbx/ tbx] format support. Lokalize displays relevant entries on-the-fly and provides shortcuts to insert them. also, you can add new glossary terms via context menu of the glossary. [http://kv-53.narod.ru/kaider3.png screenshot 1] [http://kv-53.narod.ru/kaider4.png screenshot 2]&lt;br /&gt;
* Search/Replace functions in multiple files at once.&lt;br /&gt;
* Spellchecking of multiple files at once.&lt;br /&gt;
* beginnings of XLIFF support&lt;br /&gt;
&lt;br /&gt;
==Compiling==&lt;br /&gt;
After you [[Getting_Started/Build/KDE4|set kde env up]] (compiling kdelibs+kdebase is enough):&lt;br /&gt;
 svn checkout -N svn://anonsvn.kde.org/home/kde/trunk/KDE/kdesdk/&lt;br /&gt;
 cd kdesdk &amp;amp;&amp;amp; svn up cmake doc lokalize&lt;br /&gt;
 mkdir kdesdk/build &amp;amp;&amp;amp; chmod a+w kdesdk/build&lt;br /&gt;
 su kde-devel&lt;br /&gt;
 cd kdesdk/build&lt;br /&gt;
 cmakekde ..&lt;br /&gt;
&lt;br /&gt;
as a root, run sshd and then from the usual shell:&lt;br /&gt;
 ssh -XC kde-devel@localhost&lt;br /&gt;
 lokalize &lt;br /&gt;
&lt;br /&gt;
you can get catalogmanager by specifying --project option&lt;br /&gt;
 lokalize --project /path/to/index.ktp&lt;br /&gt;
&lt;br /&gt;
See [[Projects/Summer_of_Code/2007/Projects/KAider#Setup]].&lt;br /&gt;
&lt;br /&gt;
===Debian users===&lt;br /&gt;
You can install the latest version of lokalize from experimental repository: [http://packages.debian.org/experimental/lokalize]&lt;br /&gt;
&lt;br /&gt;
==Setup==&lt;br /&gt;
* Create project, saving *.ktp file to l10n-kde4/&amp;lt;LangCode&amp;gt;/ dir&lt;br /&gt;
* Populate Glossary via GlossaryView context menu (.tbx file will be created automatically for you on the first entry addition).&lt;br /&gt;
* Populate Translation Memory by dropping .po files onto TM View&lt;br /&gt;
&lt;br /&gt;
See [http://websvn.kde.org/trunk/l10n-kde4/ru/] for an example project structure&lt;br /&gt;
&lt;br /&gt;
==Maxims==&lt;br /&gt;
* Majority of actions must be accessible via keyboard (because it is faster to press a shotcut than to be frustrated with a mouse)&lt;br /&gt;
* Do automatization _everywhere_ possible&lt;br /&gt;
* Focus on translation quality. This is open source -- so source code is available (for change)&lt;br /&gt;
&lt;br /&gt;
==Further work==&lt;br /&gt;
*WebQuery for twin languages (like Ukrainian and Russian)&lt;br /&gt;
*xliff+qt-linguist support (see [[#KBabel features to be implemented|KBabel features to be implemented]])&lt;br /&gt;
* Glossary checklists: check for forbidden terms in new translation&lt;br /&gt;
* project-wise and program-wise: webquery scripts, glossaries, TMs&lt;br /&gt;
* check for different translations of the same msgid (use strigi?)&lt;br /&gt;
* back-checking, to see whether a term/string in the target language has been used as translation for different things, not just that one source has the same translation everywhere.&lt;br /&gt;
* Tighten SVN support: svn diff-like feature&lt;br /&gt;
* Automatic Glossary building&lt;br /&gt;
* Research on dividing into sentences rules (e.g. srx)&lt;br /&gt;
* Automate submitting translation suggestions to translate.google.com [Kross action]&lt;br /&gt;
* fill TM with content of /usr/share/locale/&amp;lt;lang&amp;gt;/LC_MESSAGES/*.mo [Kross action]&lt;br /&gt;
&lt;br /&gt;
Not for KDE:&lt;br /&gt;
* Be complete computer-aided translation system by providing e.g. actions to import+export openoffice, txt and documents of other formats by calling appropriate scripts/commands. Define for that general kross actions interface.&lt;br /&gt;
* Make nice windoze package for the windowzerz&lt;br /&gt;
&lt;br /&gt;
Competitors (ideas):&lt;br /&gt;
* [http://www.triplespin.com/en/products/locfactoryeditor.html#whatsnew locfactoryeditor] --Mac only&lt;br /&gt;
* [http://www.heartsome.net/EN/downloads.html Heartsome] --multiplatform, costs money&lt;br /&gt;
* Go over [http://sourceforge.net/tracker/?atid=520350&amp;amp;group_id=68187&amp;amp;func=browse OmegaT wishlist] and ensure every sane wish is implemented&lt;br /&gt;
&lt;br /&gt;
Converters (use, acting as a front-end):&lt;br /&gt;
* [http://file2xliff4j.sourceforge.net/javadoc/file2xliff4j/package-summary.html file2xliff4j] --java-based&lt;br /&gt;
* [https://open-language-tools.dev.java.net] --java-based&lt;br /&gt;
* [http://translate.sourceforge.net/wiki/toolkit/index Translate Toolkit] --python-based, checks, other goodness&lt;br /&gt;
&lt;br /&gt;
==KBabel features to be implemented==&lt;br /&gt;
...in a smarter way :)&lt;br /&gt;
* persistent bookmarks for messages in a file saved in the project&lt;br /&gt;
* extended marking of .po and .pot files (e.g. translator that currently works on the file and cince when) saved in the project&lt;br /&gt;
* Opening source code by references in message comments [Kross action]&lt;br /&gt;
* A plugin framework for validation tools for consistency checks [Kross action triggered on saving]&lt;br /&gt;
* Sending the file using email [Kross (project) action]&lt;br /&gt;
* Automatic syntax check with msgfmt when saving and, if an error occured, easy navigation to messages, which contain errors. == Syntax check (msgfmt --statistics) for existing files to control if the translated files will compile and, accordingly, work when distributed [Kross (project) action]&lt;br /&gt;
* CVS and SVN support [Kross project action] (is 'svn ci' so hard?)&lt;br /&gt;
* statistics&lt;br /&gt;
* PO File Header change [Kross action (+triggered on saving)]&lt;br /&gt;
* Printing of selected messages (eg fuzzy ) [Kross action]&lt;br /&gt;
Also:&lt;br /&gt;
* msgid-diff-msgstr from [http://lichota.net/~krzysiek/projects/msgtools/] (features for all other commands are already implemented, if you haven't noticed this)&lt;br /&gt;
&lt;br /&gt;
==KBabel features NOT to be implemented==&lt;br /&gt;
* Character selection tool integration, sort by the frequency&lt;br /&gt;
Why? Better improve system-wide charselect tool, OR...&lt;br /&gt;
modify your xorg keyboard layout!&lt;/div&gt;</summary>
		<author><name>Shaforostoff</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Development/Tutorials/Kross/Script-Actions</id>
		<title>Development/Tutorials/Kross/Script-Actions</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Development/Tutorials/Kross/Script-Actions"/>
				<updated>2009-05-03T22:18:52Z</updated>
		
		<summary type="html">&lt;p&gt;Shaforostoff: /* The code */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Introduction==&lt;br /&gt;
&lt;br /&gt;
This tutorial uses the script plugin technique explained in [http://techbase.kde.org/index.php?title=Development/Tutorials/Kross/Introduction#The_Module_plugins The Module Plugins] and explains how to code your application in order to easily add new script actions into menus. Two typical scenarios are:&lt;br /&gt;
&lt;br /&gt;
- scripts shipped by default by the application developer&amp;lt;br&amp;gt;&lt;br /&gt;
- custom scripts added by the user&lt;br /&gt;
&lt;br /&gt;
This facility is targeted for both cases.&lt;br /&gt;
&lt;br /&gt;
See also...&lt;br /&gt;
* [[Development/Tutorials/Kross/Introduction#The_Module_plugins|The Module Plugins]]&lt;br /&gt;
&lt;br /&gt;
==The code==&lt;br /&gt;
&lt;br /&gt;
The client Part Plugin class should extend Kross::ScriptingPlugin which will automatically load script actions stored in Kross rc files.&lt;br /&gt;
&lt;br /&gt;
An example of such Kross rc file could be:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code xml&amp;gt;&lt;br /&gt;
&amp;lt;!DOCTYPE KrossScripting SYSTEM &amp;quot;kpartgui.dtd&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;KrossScripting&amp;gt;&lt;br /&gt;
    &amp;lt;collection name=&amp;quot;tools&amp;quot; text=&amp;quot;Tools&amp;quot;&amp;gt;&lt;br /&gt;
        &amp;lt;script text=&amp;quot;Dummy Script&amp;quot; comment=&amp;quot;Dummy Script&amp;quot;&lt;br /&gt;
            name=&amp;quot;dummy_script&amp;quot;&lt;br /&gt;
            interpreter=&amp;quot;python&amp;quot;&lt;br /&gt;
            file=&amp;quot;dummy_script.py&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;/collection&amp;gt;&lt;br /&gt;
&amp;lt;/KrossScripting&amp;gt;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The effect of such description will be the creation of a new menu item called &amp;quot;Dummy Script&amp;quot; in the &amp;quot;Tools&amp;quot; menu. The action associated to the new menu item will execute the script defined in the &amp;quot;file&amp;quot; path.&lt;br /&gt;
&lt;br /&gt;
Placing text and comment attributes on the same line with tag name is important for extractattr script that extracts strings for i18n.&lt;br /&gt;
&lt;br /&gt;
Kross rc files are searched in the appdata &amp;quot;scripts&amp;quot; subdirectory, e.g.:&lt;br /&gt;
&lt;br /&gt;
$KDEDIR/share/apps/myapplication/scripts/*.rc&amp;lt;br&amp;gt;&lt;br /&gt;
$KDEHOME/share/apps/myapplication/scripts/*.rc&lt;br /&gt;
&lt;br /&gt;
It will be explained later how can a final user override the actions found in the default rc files.&lt;br /&gt;
&lt;br /&gt;
===The KParts Plugin class===&lt;br /&gt;
&lt;br /&gt;
In this example we show the scripting plugin class which inherits a Kross::ScriptingPlugin.&lt;br /&gt;
&lt;br /&gt;
Header:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code cppqt&amp;gt;&lt;br /&gt;
#include &amp;lt;kross/ui/plugin.h&amp;gt;&lt;br /&gt;
&lt;br /&gt;
class ScriptingModule;&lt;br /&gt;
&lt;br /&gt;
class ScriptingPart : public Kross::ScriptingPlugin&lt;br /&gt;
{&lt;br /&gt;
public:&lt;br /&gt;
    ScriptingPart(QObject* parent, const QStringList&amp;amp; list);&lt;br /&gt;
    ~ScriptingPart();&lt;br /&gt;
&lt;br /&gt;
    ScriptingModule* module() const;&lt;br /&gt;
&lt;br /&gt;
private:&lt;br /&gt;
    void initActions();&lt;br /&gt;
&lt;br /&gt;
private:&lt;br /&gt;
    Q_DISABLE_COPY(ScriptingPart)&lt;br /&gt;
&lt;br /&gt;
    class Private;&lt;br /&gt;
    Private* const d;&lt;br /&gt;
};&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Implementation:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code cppqt&amp;gt;&lt;br /&gt;
#include &amp;quot;scriptingpart.h&amp;quot;&lt;br /&gt;
&lt;br /&gt;
#include &amp;lt;kgenericfactory.h&amp;gt;&lt;br /&gt;
#include &amp;lt;kstandarddirs.h&amp;gt;&lt;br /&gt;
#include &amp;lt;kactioncollection.h&amp;gt;&lt;br /&gt;
#include &amp;lt;kcmdlineargs.h&amp;gt;&lt;br /&gt;
#include &amp;lt;kurl.h&amp;gt;&lt;br /&gt;
#include &amp;lt;klocale.h&amp;gt;&lt;br /&gt;
&lt;br /&gt;
#include &amp;quot;scriptingmodule.h&amp;quot;&lt;br /&gt;
&lt;br /&gt;
typedef KGenericFactory&amp;lt;ScriptingPart&amp;gt; MyApplicationScriptingFactory;&lt;br /&gt;
K_EXPORT_COMPONENT_FACTORY(krossmodulemyapplication, MyApplicationScriptingFactory(&amp;quot;krossmodulemyapplication&amp;quot;))&lt;br /&gt;
&lt;br /&gt;
class ScriptingPart::Private&lt;br /&gt;
{&lt;br /&gt;
public:&lt;br /&gt;
    QPointer&amp;lt;ScriptingModule&amp;gt; module;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
ScriptingPart::ScriptingPart(QObject* parent, const QStringList&amp;amp;)&lt;br /&gt;
    : Kross::ScriptingPlugin(parent)&lt;br /&gt;
    , d(new Private())&lt;br /&gt;
{&lt;br /&gt;
    d-&amp;gt;module = new ScriptingModule(parent);&lt;br /&gt;
    addObject(d-&amp;gt;module, &amp;quot;MyApplication&amp;quot;);&lt;br /&gt;
&lt;br /&gt;
    setComponentData(ScriptingPart::componentData());&lt;br /&gt;
    setXMLFile(KStandardDirs::locate(&amp;quot;data&amp;quot;, &amp;quot;myapplication/kpartplugins/scripting.rc&amp;quot;), true);&lt;br /&gt;
    kDebug(23100) &amp;lt;&amp;lt;&amp;quot;Scripting plugin. Class:&amp;quot; &amp;lt;&amp;lt; metaObject()-&amp;gt;className() &lt;br /&gt;
        &amp;lt;&amp;lt;&amp;quot;, Parent:&amp;quot; &amp;lt;&amp;lt; parent-&amp;gt;metaObject()-&amp;gt;className();&lt;br /&gt;
&lt;br /&gt;
    initActions();&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
ScriptingPart::~ScriptingPart()&lt;br /&gt;
{&lt;br /&gt;
    delete d;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
void ScriptingPart::initActions()&lt;br /&gt;
{&lt;br /&gt;
    KAction* action  = new KAction(i18n(&amp;quot;Edit Script Actions...&amp;quot;), this);&lt;br /&gt;
    actionCollection()-&amp;gt;addAction(&amp;quot;edit_script_actions&amp;quot;, action);&lt;br /&gt;
    connect(action, SIGNAL(triggered(bool)), this, SLOT(slotEditScriptActions()));&lt;br /&gt;
&lt;br /&gt;
    action  = new KAction(i18n(&amp;quot;Reset Script Actions...&amp;quot;), this);&lt;br /&gt;
    actionCollection()-&amp;gt;addAction(&amp;quot;reset_script_actions&amp;quot;, action);&lt;br /&gt;
    connect(action, SIGNAL(triggered(bool)), this, SLOT(slotResetScriptActions()));&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Kross::ScriptingPlugin have two additional slots that can be useful for applications to use:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code cppqt&amp;gt;&lt;br /&gt;
    /**&lt;br /&gt;
     * This slot will open/create a scriptactions.rc file at $KDEHOME/share/apps/application/scripts/&lt;br /&gt;
     * which will override other kross rc files. This allows a user to extend existing menus with new actions.&lt;br /&gt;
    */&lt;br /&gt;
    virtual void slotEditScriptActions();&lt;br /&gt;
&lt;br /&gt;
    /**&lt;br /&gt;
     * Deletes the user rc file, which has the effect of falling back to the default script actions (if any).&lt;br /&gt;
    */&lt;br /&gt;
    virtual void slotResetScriptActions();&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===The KPart plugin rc file===&lt;br /&gt;
&lt;br /&gt;
Suggestion on how to use the edit and reset script actions (respective slots provided by Kross::ScriptingPlugin class):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code xml&amp;gt;&lt;br /&gt;
&amp;lt;!DOCTYPE kpartgui SYSTEM &amp;quot;kpartgui.dtd&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;kpartgui name=&amp;quot;MyApplicationPluginScripting&amp;quot; library=&amp;quot;krossmodulemyapplication&amp;quot; version=&amp;quot;1&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;MenuBar&amp;gt;&lt;br /&gt;
    &amp;lt;Menu name=&amp;quot;tools&amp;quot;&amp;gt;&amp;lt;text&amp;gt;&amp;amp;amp;Tools&amp;lt;/text&amp;gt;&lt;br /&gt;
        &amp;lt;Separator/&amp;gt;&lt;br /&gt;
        &amp;lt;Action name=&amp;quot;edit_script_actions&amp;quot;/&amp;gt;&lt;br /&gt;
        &amp;lt;Action name=&amp;quot;reset_script_actions&amp;quot;/&amp;gt;&lt;br /&gt;
        &amp;lt;Separator/&amp;gt;&lt;br /&gt;
    &amp;lt;/Menu&amp;gt;&lt;br /&gt;
&amp;lt;/MenuBar&amp;gt;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;/div&gt;</summary>
		<author><name>Shaforostoff</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Development/Tutorials/Kross/Script-Actions</id>
		<title>Development/Tutorials/Kross/Script-Actions</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Development/Tutorials/Kross/Script-Actions"/>
				<updated>2009-05-03T22:17:02Z</updated>
		
		<summary type="html">&lt;p&gt;Shaforostoff: /* The code */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Introduction==&lt;br /&gt;
&lt;br /&gt;
This tutorial uses the script plugin technique explained in [http://techbase.kde.org/index.php?title=Development/Tutorials/Kross/Introduction#The_Module_plugins The Module Plugins] and explains how to code your application in order to easily add new script actions into menus. Two typical scenarios are:&lt;br /&gt;
&lt;br /&gt;
- scripts shipped by default by the application developer&amp;lt;br&amp;gt;&lt;br /&gt;
- custom scripts added by the user&lt;br /&gt;
&lt;br /&gt;
This facility is targeted for both cases.&lt;br /&gt;
&lt;br /&gt;
See also...&lt;br /&gt;
* [[Development/Tutorials/Kross/Introduction#The_Module_plugins|The Module Plugins]]&lt;br /&gt;
&lt;br /&gt;
==The code==&lt;br /&gt;
&lt;br /&gt;
The client Part Plugin class should extend Kross::ScriptingPlugin which will automatically load script actions stored in Kross rc files.&lt;br /&gt;
&lt;br /&gt;
An example of such Kross rc file could be:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code xml&amp;gt;&lt;br /&gt;
&amp;lt;!DOCTYPE KrossScripting SYSTEM &amp;quot;kpartgui.dtd&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;KrossScripting&amp;gt;&lt;br /&gt;
    &amp;lt;collection name=&amp;quot;tools&amp;quot; text=&amp;quot;Tools&amp;quot;&amp;gt;&lt;br /&gt;
        &amp;lt;script&lt;br /&gt;
            name=&amp;quot;dummy_script&amp;quot;&lt;br /&gt;
            text=&amp;quot;Dummy Script&amp;quot;&lt;br /&gt;
            comment=&amp;quot;Dummy Script&amp;quot;&lt;br /&gt;
            interpreter=&amp;quot;python&amp;quot;&lt;br /&gt;
            file=&amp;quot;dummy_script.py&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;/collection&amp;gt;&lt;br /&gt;
&amp;lt;/KrossScripting&amp;gt;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The effect of such description will be the creation of a new menu item called &amp;quot;Dummy Script&amp;quot; in the &amp;quot;Tools&amp;quot; menu. The action associated to the new menu item will execute the script defined in the &amp;quot;file&amp;quot; path.&lt;br /&gt;
&lt;br /&gt;
Kross rc files are searched in the appdata &amp;quot;scripts&amp;quot; subdirectory, e.g.:&lt;br /&gt;
&lt;br /&gt;
$KDEDIR/share/apps/myapplication/scripts/*.rc&amp;lt;br&amp;gt;&lt;br /&gt;
$KDEHOME/share/apps/myapplication/scripts/*.rc&lt;br /&gt;
&lt;br /&gt;
It will be explained later how can a final user override the actions found in the default rc files.&lt;br /&gt;
&lt;br /&gt;
===The KParts Plugin class===&lt;br /&gt;
&lt;br /&gt;
In this example we show the scripting plugin class which inherits a Kross::ScriptingPlugin.&lt;br /&gt;
&lt;br /&gt;
Header:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code cppqt&amp;gt;&lt;br /&gt;
#include &amp;lt;kross/ui/plugin.h&amp;gt;&lt;br /&gt;
&lt;br /&gt;
class ScriptingModule;&lt;br /&gt;
&lt;br /&gt;
class ScriptingPart : public Kross::ScriptingPlugin&lt;br /&gt;
{&lt;br /&gt;
public:&lt;br /&gt;
    ScriptingPart(QObject* parent, const QStringList&amp;amp; list);&lt;br /&gt;
    ~ScriptingPart();&lt;br /&gt;
&lt;br /&gt;
    ScriptingModule* module() const;&lt;br /&gt;
&lt;br /&gt;
private:&lt;br /&gt;
    void initActions();&lt;br /&gt;
&lt;br /&gt;
private:&lt;br /&gt;
    Q_DISABLE_COPY(ScriptingPart)&lt;br /&gt;
&lt;br /&gt;
    class Private;&lt;br /&gt;
    Private* const d;&lt;br /&gt;
};&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Implementation:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code cppqt&amp;gt;&lt;br /&gt;
#include &amp;quot;scriptingpart.h&amp;quot;&lt;br /&gt;
&lt;br /&gt;
#include &amp;lt;kgenericfactory.h&amp;gt;&lt;br /&gt;
#include &amp;lt;kstandarddirs.h&amp;gt;&lt;br /&gt;
#include &amp;lt;kactioncollection.h&amp;gt;&lt;br /&gt;
#include &amp;lt;kcmdlineargs.h&amp;gt;&lt;br /&gt;
#include &amp;lt;kurl.h&amp;gt;&lt;br /&gt;
#include &amp;lt;klocale.h&amp;gt;&lt;br /&gt;
&lt;br /&gt;
#include &amp;quot;scriptingmodule.h&amp;quot;&lt;br /&gt;
&lt;br /&gt;
typedef KGenericFactory&amp;lt;ScriptingPart&amp;gt; MyApplicationScriptingFactory;&lt;br /&gt;
K_EXPORT_COMPONENT_FACTORY(krossmodulemyapplication, MyApplicationScriptingFactory(&amp;quot;krossmodulemyapplication&amp;quot;))&lt;br /&gt;
&lt;br /&gt;
class ScriptingPart::Private&lt;br /&gt;
{&lt;br /&gt;
public:&lt;br /&gt;
    QPointer&amp;lt;ScriptingModule&amp;gt; module;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
ScriptingPart::ScriptingPart(QObject* parent, const QStringList&amp;amp;)&lt;br /&gt;
    : Kross::ScriptingPlugin(parent)&lt;br /&gt;
    , d(new Private())&lt;br /&gt;
{&lt;br /&gt;
    d-&amp;gt;module = new ScriptingModule(parent);&lt;br /&gt;
    addObject(d-&amp;gt;module, &amp;quot;MyApplication&amp;quot;);&lt;br /&gt;
&lt;br /&gt;
    setComponentData(ScriptingPart::componentData());&lt;br /&gt;
    setXMLFile(KStandardDirs::locate(&amp;quot;data&amp;quot;, &amp;quot;myapplication/kpartplugins/scripting.rc&amp;quot;), true);&lt;br /&gt;
    kDebug(23100) &amp;lt;&amp;lt;&amp;quot;Scripting plugin. Class:&amp;quot; &amp;lt;&amp;lt; metaObject()-&amp;gt;className() &lt;br /&gt;
        &amp;lt;&amp;lt;&amp;quot;, Parent:&amp;quot; &amp;lt;&amp;lt; parent-&amp;gt;metaObject()-&amp;gt;className();&lt;br /&gt;
&lt;br /&gt;
    initActions();&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
ScriptingPart::~ScriptingPart()&lt;br /&gt;
{&lt;br /&gt;
    delete d;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
void ScriptingPart::initActions()&lt;br /&gt;
{&lt;br /&gt;
    KAction* action  = new KAction(i18n(&amp;quot;Edit Script Actions...&amp;quot;), this);&lt;br /&gt;
    actionCollection()-&amp;gt;addAction(&amp;quot;edit_script_actions&amp;quot;, action);&lt;br /&gt;
    connect(action, SIGNAL(triggered(bool)), this, SLOT(slotEditScriptActions()));&lt;br /&gt;
&lt;br /&gt;
    action  = new KAction(i18n(&amp;quot;Reset Script Actions...&amp;quot;), this);&lt;br /&gt;
    actionCollection()-&amp;gt;addAction(&amp;quot;reset_script_actions&amp;quot;, action);&lt;br /&gt;
    connect(action, SIGNAL(triggered(bool)), this, SLOT(slotResetScriptActions()));&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Kross::ScriptingPlugin have two additional slots that can be useful for applications to use:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code cppqt&amp;gt;&lt;br /&gt;
    /**&lt;br /&gt;
     * This slot will open/create a scriptactions.rc file at $KDEHOME/share/apps/application/scripts/&lt;br /&gt;
     * which will override other kross rc files. This allows a user to extend existing menus with new actions.&lt;br /&gt;
    */&lt;br /&gt;
    virtual void slotEditScriptActions();&lt;br /&gt;
&lt;br /&gt;
    /**&lt;br /&gt;
     * Deletes the user rc file, which has the effect of falling back to the default script actions (if any).&lt;br /&gt;
    */&lt;br /&gt;
    virtual void slotResetScriptActions();&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===The KPart plugin rc file===&lt;br /&gt;
&lt;br /&gt;
Suggestion on how to use the edit and reset script actions (respective slots provided by Kross::ScriptingPlugin class):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code xml&amp;gt;&lt;br /&gt;
&amp;lt;!DOCTYPE kpartgui SYSTEM &amp;quot;kpartgui.dtd&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;kpartgui name=&amp;quot;MyApplicationPluginScripting&amp;quot; library=&amp;quot;krossmodulemyapplication&amp;quot; version=&amp;quot;1&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;MenuBar&amp;gt;&lt;br /&gt;
    &amp;lt;Menu name=&amp;quot;tools&amp;quot;&amp;gt;&amp;lt;text&amp;gt;&amp;amp;amp;Tools&amp;lt;/text&amp;gt;&lt;br /&gt;
        &amp;lt;Separator/&amp;gt;&lt;br /&gt;
        &amp;lt;Action name=&amp;quot;edit_script_actions&amp;quot;/&amp;gt;&lt;br /&gt;
        &amp;lt;Action name=&amp;quot;reset_script_actions&amp;quot;/&amp;gt;&lt;br /&gt;
        &amp;lt;Separator/&amp;gt;&lt;br /&gt;
    &amp;lt;/Menu&amp;gt;&lt;br /&gt;
&amp;lt;/MenuBar&amp;gt;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;/div&gt;</summary>
		<author><name>Shaforostoff</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Development/Tutorials/Unittests</id>
		<title>Development/Tutorials/Unittests</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Development/Tutorials/Unittests"/>
				<updated>2009-02-24T21:18:58Z</updated>
		
		<summary type="html">&lt;p&gt;Shaforostoff: /* Configuring for Testing */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Template:I18n/Language Navigation Bar|Development/Tutorials/Unittests}}&lt;br /&gt;
&lt;br /&gt;
'''Author:''' Brad Hards, Sigma Bravo Pty Limited&lt;br /&gt;
&lt;br /&gt;
== Abstract ==&lt;br /&gt;
&lt;br /&gt;
This article provides guidance on writing unittests for Qt4 and KDE4, based on the QtTestLib framework provided starting with Qt4.1. It provides an introduction to the ideas behind unit testing, tutorial material on the QtTestLib framework, and suggestions for getting the most value for your effort. &lt;br /&gt;
This document is matched to Qt 4.1 and KDE 4.&lt;br /&gt;
&lt;br /&gt;
== About Unit Testing ==&lt;br /&gt;
&lt;br /&gt;
A unit test is a test that checks the functionality, behaviour and correctness of a single software component. In Qt4 code (including KDE4 code) unit tests are almost always used to test a single C++ class (although testing a macro or C function is also possible).&lt;br /&gt;
&lt;br /&gt;
Unit tests are a key part of Test Driven Development, however they are useful for all software development processes. It is not essential that all of the code is covered by unit tests (although that is obviously very desirable!). Even a single test is a useful step to improving code quality. &lt;br /&gt;
&lt;br /&gt;
Note that unit tests are dynamic tests (i.e. they run, using the compiled code) rather than static analysis tests (which operate on the source or some intermediate representation). &lt;br /&gt;
&lt;br /&gt;
Even if they don't call them &amp;quot;unit tests&amp;quot;, most programmers have written some &amp;quot;throwaway&amp;quot; code that they use to check an implementation. If that code was cleaned up a little, and built into the development system, then it could be used over and over to check that the implementation is still OK. To make that work a little easier, we can use test frameworks. &lt;br /&gt;
&lt;br /&gt;
Note that it is sometimes tempting to treat the unit test as a pure verification tool. While it is true that unit tests do help to ensure correct functionality and behaviour, they also assist with other aspects of code quality. Writing a unit test requires a slightly different approach to coding up a class, and thinking about what inputs need to be tested can help to identify logic flaws in the code (even before the tests get run). In addition, the need to make the code testable is a very useful driver to ensure that classes do not suffer from close coupling. &lt;br /&gt;
&lt;br /&gt;
Anyway, enough of the conceptual stuff - lets talk about a specific tool that can reduce some of the effort and let us get on with the job.&lt;br /&gt;
&lt;br /&gt;
==About QtTestLib==&lt;br /&gt;
&lt;br /&gt;
QtTestlib is a lightweight testing library developed by Trolltech and released under the GPL (a commercial version is also available, for those who need alternative licensing). It is written in C++, and is cross-platform. It is provided as part of the tools included in Qt 4.1, and earlier versions were provided separately. Note that earlier versions had a different API, and the examples will not work with that earlier version. &lt;br /&gt;
&lt;br /&gt;
In addition to normal unit testing capabilities, QtTestLib also offers basic GUI testing, based on sending QEvents. This allows you to test GUI widgets, but is not generally suitable for testing full applications. &lt;br /&gt;
&lt;br /&gt;
Each testcase is a standalone test application. Unlike CppUnit or JUnit, there is no Runner type class. Instead, each testcase is an executable which is simply run.&lt;br /&gt;
&lt;br /&gt;
== Tutorial 1: A simple test of a date class ==&lt;br /&gt;
&lt;br /&gt;
In this tutorial, we will build a simple test for a class that represents a date, using QtTestLib as the test framework. To avoid too much detail on how the date class works, we'll just use the  QDate. class that comes with Qt. In a normal unittest, you would more likely be testing code that you've written yourself.&lt;br /&gt;
&lt;br /&gt;
The code below is the entire testcase.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Example 1. QDate test code'''&lt;br /&gt;
&amp;lt;code cppqt n&amp;gt;&lt;br /&gt;
#include &amp;lt;QtTest&amp;gt;&lt;br /&gt;
#include &amp;lt;QtCore&amp;gt;&lt;br /&gt;
&lt;br /&gt;
class testDate: public QObject&lt;br /&gt;
{&lt;br /&gt;
    Q_OBJECT&lt;br /&gt;
private slots:&lt;br /&gt;
    void testValidity();&lt;br /&gt;
    void testMonth();&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
void testDate::testValidity()&lt;br /&gt;
{&lt;br /&gt;
    // 11 March 1967&lt;br /&gt;
    QDate date( 1967, 3, 11 );&lt;br /&gt;
    QVERIFY( date.isValid() );&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
void testDate::testMonth()&lt;br /&gt;
{&lt;br /&gt;
    // 11 March 1967&lt;br /&gt;
    QDate date;&lt;br /&gt;
    date.setYMD( 1967, 3, 11 );&lt;br /&gt;
    QCOMPARE( date.month(), 3 );&lt;br /&gt;
    QCOMPARE( QDate::longMonthName(date.month()),&lt;br /&gt;
              QString(&amp;quot;March&amp;quot;) );&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
QTEST_MAIN(testDate)&lt;br /&gt;
#include &amp;quot;tutorial1.moc&amp;quot;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
Save as tutorial1.cpp&lt;br /&gt;
&lt;br /&gt;
Stepping through the code, the first line imports the header files for the QtTest namespace. The second line imports the headers for the QtCore namespace (not strictly necessary, since QtTest also imports it, but it is robust and safe). Lines 4 to 10 give us the test class, testData. Note that testDate inherits from QObject and has the Q_OBJECT macro - QtTestLib requires specific Qt functionality that is present in  QObject. &lt;br /&gt;
&lt;br /&gt;
Lines 12 to 17 provide our first test, which checks that a date is valid. Note the use of the QVERIFY macro, which checks that the condition is true. So if date.isValid() returns true, then the test will pass, otherwise the test will fail. QVERIFY is similar to ASSERT in other test suites.&lt;br /&gt;
&lt;br /&gt;
Similarly, lines 19 to 27 provide another test, which checks a setter, and a couple of accessor routines. In this case, we are using QCOMPARE, which checks that the conditions are equal. So if date.month() returns 3, then that part of that test will pass, otherwise the test will fail. &lt;br /&gt;
&lt;br /&gt;
{{Warning|As soon as a QVERIFY evaluates to false or a QCOMPARE does not have two equal values, the whole test is marked as failed and the next test will be stated. So in the example above, if the check at line 24 fails, then the check at lines 25 and 26 will not be run.}}&lt;br /&gt;
&lt;br /&gt;
In a later tutorial we will see how to work around problems that this behaviour can cause.&lt;br /&gt;
&lt;br /&gt;
Line 30 uses the QTEST_MAIN which creates an entry point routine for us, with appropriate calls to invoke the testDate unit test class. &lt;br /&gt;
&lt;br /&gt;
Line 31 includes the Meta-Object compiler output, so we can make use of our  QObject functionality. &lt;br /&gt;
&lt;br /&gt;
The qmake project file that corresponds to that code is shown below. You would then use qmake to turn this into a Makefile and then compile it with make.&lt;br /&gt;
&lt;br /&gt;
'''Example 2. QDate unit test project'''&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
CONFIG += qtestlib&lt;br /&gt;
TEMPLATE = app&lt;br /&gt;
TARGET += &lt;br /&gt;
DEPENDPATH += .&lt;br /&gt;
INCLUDEPATH += .&lt;br /&gt;
&lt;br /&gt;
# Input&lt;br /&gt;
SOURCES += tutorial1.cpp&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
Save as tutorial1.pro&lt;br /&gt;
&lt;br /&gt;
This is a fairly normal project file, except for the addition of the &amp;lt;code&amp;gt;CONFIG += qtestlib&amp;lt;/code&amp;gt;. This adds the right header and library setup to the Makefile. &lt;br /&gt;
&lt;br /&gt;
Create an empty file called tutorial1.h and compile with &amp;lt;code&amp;gt;qmake; make&amp;lt;/code&amp;gt; The output looks like the following:&lt;br /&gt;
&lt;br /&gt;
'''Example 3. QDate unit test output'''&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
$ ./tutorial1&lt;br /&gt;
********* Start testing of testDate *********&lt;br /&gt;
Config: Using QTest library 4.1.0, Qt 4.1.0-snapshot-20051003&lt;br /&gt;
PASS   : testDate::initTestCase()&lt;br /&gt;
PASS   : testDate::testValidity()&lt;br /&gt;
PASS   : testDate::testMonth()&lt;br /&gt;
PASS   : testDate::cleanupTestCase()&lt;br /&gt;
Totals: 4 passed, 0 failed, 0 skipped&lt;br /&gt;
********* Finished testing of testDate *********&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Looking at the output above, you can see that the output includes the version of the test library and Qt itself, and then the status of each test that is run. In addition to the testValidity and testMonth tests that we defined, there is also a setup routine (initTestCase) and a teardown routine (cleanupTestCase) that can be used to do additional configuration if required.&lt;br /&gt;
&lt;br /&gt;
===Failing tests===&lt;br /&gt;
&lt;br /&gt;
If we had made an error in either the production code or the unit test code, then the results would show an error. An example is shown below:&lt;br /&gt;
&lt;br /&gt;
'''Example 4. QDate unit test output showing failure'''&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
$ ./tutorial1&lt;br /&gt;
********* Start testing of testDate *********&lt;br /&gt;
Config: Using QTest library 4.1.0, Qt 4.1.0-snapshot-20051003&lt;br /&gt;
PASS   : testDate::initTestCase()&lt;br /&gt;
PASS   : testDate::testValidity()&lt;br /&gt;
FAIL!  : testDate::testMonth() Compared values are not the same&lt;br /&gt;
   Actual (date.month()): 4&lt;br /&gt;
   Expected (3): 3&lt;br /&gt;
    Loc: [tutorial1.cpp(25)]&lt;br /&gt;
PASS   : testDate::cleanupTestCase()&lt;br /&gt;
Totals: 3 passed, 1 failed, 0 skipped&lt;br /&gt;
********* Finished testing of testDate *********&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Running selected tests===&lt;br /&gt;
&lt;br /&gt;
When the number of test functions increases, and some of the functions take a long time to run, it can be useful to only run a selected function. For example, if you only want to run the testMonth function, then you just specify that on the command line, as shown below:&lt;br /&gt;
&lt;br /&gt;
'''Example 5. QDate unit test output - selected function'''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
$ ./tutorial1 testValidity&lt;br /&gt;
********* Start testing of testDate *********&lt;br /&gt;
Config: Using QTest library 4.1.0, Qt 4.1.0-snapshot-20051003&lt;br /&gt;
PASS   : testDate::initTestCase()&lt;br /&gt;
PASS   : testDate::testValidity()&lt;br /&gt;
PASS   : testDate::cleanupTestCase()&lt;br /&gt;
Totals: 3 passed, 0 failed, 0 skipped&lt;br /&gt;
********* Finished testing of testDate *********        &lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Note that the initTestCase and cleanupTestCase routines are always run, so that any necessary setup and cleanup will still be done. &lt;br /&gt;
&lt;br /&gt;
You can get a list of the available functions by passing the -functions option, as shown below: &lt;br /&gt;
&lt;br /&gt;
'''Example 6. QDate unit test output - listing functions'''&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
$ ./tutorial1 -functions&lt;br /&gt;
testValidity()&lt;br /&gt;
testMonth()&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Verbose output options===&lt;br /&gt;
&lt;br /&gt;
You can get more verbose output by using the -v1, -v2 and -vs options. -v1 produces a message on entering each test function. I found this is useful when it looks like a test is hanging. This is shown below:&lt;br /&gt;
&lt;br /&gt;
'''Example 7. QDate unit test output - verbose output'''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
$ ./tutorial1 -v1&lt;br /&gt;
********* Start testing of testDate *********&lt;br /&gt;
Config: Using QTest library 4.1.0, Qt 4.1.0-snapshot-20051003&lt;br /&gt;
INFO   : testDate::initTestCase() entering&lt;br /&gt;
PASS   : testDate::initTestCase()&lt;br /&gt;
INFO   : testDate::testValidity() entering&lt;br /&gt;
PASS   : testDate::testValidity()&lt;br /&gt;
INFO   : testDate::testMonth() entering&lt;br /&gt;
PASS   : testDate::testMonth()&lt;br /&gt;
INFO   : testDate::cleanupTestCase() entering&lt;br /&gt;
PASS   : testDate::cleanupTestCase()&lt;br /&gt;
Totals: 4 passed, 0 failed, 0 skipped&lt;br /&gt;
********* Finished testing of testDate *********&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The -v2 option shows each QVERIFY, QCOMPARE and QTEST, as well as the message on entering each test function. I found this useful for verifying that a particular step is being run. This is shown below: &lt;br /&gt;
&lt;br /&gt;
''''Example 8. QDate unit test output - more verbose output'''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
$ ./tutorial1 -v2&lt;br /&gt;
********* Start testing of testDate *********&lt;br /&gt;
Config: Using QTest library 4.1.0, Qt 4.1.0-snapshot-20051003&lt;br /&gt;
INFO   : testDate::initTestCase() entering&lt;br /&gt;
PASS   : testDate::initTestCase()&lt;br /&gt;
INFO   : testDate::testValidity() entering&lt;br /&gt;
INFO   : testDate::testValidity() QVERIFY(date.isValid())&lt;br /&gt;
    Loc: [tutorial1.cpp(17)]&lt;br /&gt;
PASS   : testDate::testValidity()&lt;br /&gt;
INFO   : testDate::testMonth() entering&lt;br /&gt;
INFO   : testDate::testMonth() COMPARE()&lt;br /&gt;
    Loc: [tutorial1.cpp(25)]&lt;br /&gt;
INFO   : testDate::testMonth() COMPARE()&lt;br /&gt;
    Loc: [tutorial1.cpp(27)]&lt;br /&gt;
PASS   : testDate::testMonth()&lt;br /&gt;
INFO   : testDate::cleanupTestCase() entering&lt;br /&gt;
PASS   : testDate::cleanupTestCase()&lt;br /&gt;
Totals: 4 passed, 0 failed, 0 skipped&lt;br /&gt;
********* Finished testing of testDate *********        &lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The -vs option shows each signal that is emitted. In our example, there are no signals, so -vs has no effect. Getting a list of signals is useful for debugging failing tests, especially GUI tests which we will see in the third tutorial. &lt;br /&gt;
&lt;br /&gt;
===Output to a file===&lt;br /&gt;
&lt;br /&gt;
If you want to output the results of your testing to a file, you can use the -o filename, where you replace filename with the name of the file you want to save output to.&lt;br /&gt;
&lt;br /&gt;
==Tutorial 2: Data driven testing of a date class==&lt;br /&gt;
&lt;br /&gt;
In the previous example, we looked at how we can test a date class. If we decided that we really needed to test a lot more dates, then we'd be cutting and pasting a lot of code. If we subsequently changed the name of a function, then it has to be changed in a lot of places. As an alternative to introducing these types of maintenance problems into our tests, QtTestLib offers support for data driven testing. &lt;br /&gt;
&lt;br /&gt;
The easiest way to understand data driven testing is by an example, as shown below:&lt;br /&gt;
&lt;br /&gt;
'''Example 9. QDate test code, data driven version'''&lt;br /&gt;
&amp;lt;code cppqt n&amp;gt;&lt;br /&gt;
#include &amp;lt;QtTest&amp;gt;&lt;br /&gt;
#include &amp;lt;QtCore&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
class testDate: public QObject&lt;br /&gt;
{&lt;br /&gt;
    Q_OBJECT&lt;br /&gt;
private slots:&lt;br /&gt;
    void testValidity();&lt;br /&gt;
    void testMonth_data();&lt;br /&gt;
    void testMonth();&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
void testDate::testValidity()&lt;br /&gt;
{&lt;br /&gt;
    // 12 March 1967&lt;br /&gt;
    QDate date( 1967, 3, 12 );&lt;br /&gt;
    QVERIFY( date.isValid() );&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
void testDate::testMonth_data()&lt;br /&gt;
{&lt;br /&gt;
    QTest::addColumn&amp;lt;int&amp;gt;(&amp;quot;year&amp;quot;);  // the year we are testing&lt;br /&gt;
    QTest::addColumn&amp;lt;int&amp;gt;(&amp;quot;month&amp;quot;); // the month we are testing&lt;br /&gt;
    QTest::addColumn&amp;lt;int&amp;gt;(&amp;quot;day&amp;quot;);   // the day we are testing&lt;br /&gt;
    QTest::addColumn&amp;lt;QString&amp;gt;(&amp;quot;monthName&amp;quot;);   // the name of the month&lt;br /&gt;
&lt;br /&gt;
    QTest::newRow(&amp;quot;1967/3/11&amp;quot;) &amp;lt;&amp;lt; 1967 &amp;lt;&amp;lt; 3 &amp;lt;&amp;lt; 11 &amp;lt;&amp;lt; QString(&amp;quot;March&amp;quot;);&lt;br /&gt;
    QTest::newRow(&amp;quot;1966/1/10&amp;quot;) &amp;lt;&amp;lt; 1966 &amp;lt;&amp;lt; 1 &amp;lt;&amp;lt; 10 &amp;lt;&amp;lt; QString(&amp;quot;January&amp;quot;);&lt;br /&gt;
    QTest::newRow(&amp;quot;1999/9/19&amp;quot;) &amp;lt;&amp;lt; 1999 &amp;lt;&amp;lt; 9 &amp;lt;&amp;lt; 19 &amp;lt;&amp;lt; QString(&amp;quot;September&amp;quot;);&lt;br /&gt;
    // more rows of dates can go in here...&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
void testDate::testMonth()&lt;br /&gt;
{&lt;br /&gt;
    QFETCH(int, year);&lt;br /&gt;
    QFETCH(int, month);&lt;br /&gt;
    QFETCH(int, day);&lt;br /&gt;
    QFETCH(QString, monthName);&lt;br /&gt;
&lt;br /&gt;
    QDate date;&lt;br /&gt;
    date.setYMD( year, month, day);&lt;br /&gt;
    QCOMPARE( date.month(), month );&lt;br /&gt;
    QCOMPARE( QDate::longMonthName(date.month()), monthName );&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
QTEST_MAIN(testDate)&lt;br /&gt;
#include &amp;quot;tutorial2.moc&amp;quot;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
As you can see, we've introduced a new method - testMonth_data, and moved the specific test date out of testMonth. We've had to add some more code (which will be explained soon), but the result is a separation of the data we are testing, and the code we are using to test it. &lt;br /&gt;
The names of the functions are important - you must use the _data suffix for the data setup routine, and the first part of the data setup routine must match the name of the driver routine. &lt;br /&gt;
&lt;br /&gt;
It is useful to visualise the data as being a table, where the columns are the various data values required for a single run through the driver, and the rows are different runs. In our example, there are four columns (three integers, one for each part of the date; and one  QString ), added in lines 19 through 22. The addColumn template obviously requires the type of variable to be added, and also requires a variable name argument. We then add as many rows as required using the newRow function, as shown in lines 23 through 26. The string argument to newRow is a label, which is handy for determining what is going on with failing tests, but doesn't have any effect on the test itself. &lt;br /&gt;
&lt;br /&gt;
To use the data, we simply use QFETCH to obtain the appropriate data from each row. The arguments to QFETCH are the type of the variable to fetch, and the name of the column (which is also the local name of the variable it gets fetched into). You can then use this data in a QCOMPARE or QVERIFY check. The code is run for each row, which you can see below:&lt;br /&gt;
&lt;br /&gt;
'''Example 10. Results of data driven testing, showing QFETCH'''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
$ ./tutorial2 -v2&lt;br /&gt;
********* Start testing of testDate *********&lt;br /&gt;
Config: Using QTest library 4.1.0, Qt 4.1.0-snapshot-20051020&lt;br /&gt;
INFO   : testDate::initTestCase() entering&lt;br /&gt;
PASS   : testDate::initTestCase()&lt;br /&gt;
INFO   : testDate::testValidity() entering&lt;br /&gt;
INFO   : testDate::testValidity() QVERIFY(date.isValid())&lt;br /&gt;
   Loc: [tutorial2.cpp(19)]&lt;br /&gt;
PASS   : testDate::testValidity()&lt;br /&gt;
INFO   : testDate::testMonth() entering&lt;br /&gt;
INFO   : testDate::testMonth(1967/3/11) COMPARE()&lt;br /&gt;
   Loc: [tutorial2.cpp(44)]&lt;br /&gt;
INFO   : testDate::testMonth(1967/3/11) COMPARE()&lt;br /&gt;
   Loc: [tutorial2.cpp(45)]&lt;br /&gt;
INFO   : testDate::testMonth(1966/1/10) COMPARE()&lt;br /&gt;
   Loc: [tutorial2.cpp(44)]&lt;br /&gt;
INFO   : testDate::testMonth(1966/1/10) COMPARE()&lt;br /&gt;
   Loc: [tutorial2.cpp(45)]&lt;br /&gt;
INFO   : testDate::testMonth(1999/9/19) COMPARE()&lt;br /&gt;
   Loc: [tutorial2.cpp(44)]&lt;br /&gt;
INFO   : testDate::testMonth(1999/9/19) COMPARE()&lt;br /&gt;
   Loc: [tutorial2.cpp(45)]&lt;br /&gt;
PASS   : testDate::testMonth()&lt;br /&gt;
INFO   : testDate::cleanupTestCase() entering&lt;br /&gt;
PASS   : testDate::cleanupTestCase()&lt;br /&gt;
Totals: 4 passed, 0 failed, 0 skipped&lt;br /&gt;
********* Finished testing of testDate *********&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== The QTEST macro ===&lt;br /&gt;
&lt;br /&gt;
As an alternative to using QFETCH and QCOMPARE, you may be able to use the QTEST macro instead. QTEST takes two arguments, and if one is a string, it looks up that string as an argument in the current row. You can see how this can be used below, which is equivalent to the testMonth() code in the previous example. &lt;br /&gt;
&lt;br /&gt;
'''Example 11. QDate test code, data driven version using QTEST'''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code cppqt n&amp;gt;&lt;br /&gt;
void testDate::testMonth()&lt;br /&gt;
{&lt;br /&gt;
    QFETCH(int, year);&lt;br /&gt;
    QFETCH(int, month);&lt;br /&gt;
    QFETCH(int, day);&lt;br /&gt;
&lt;br /&gt;
    QDate date;&lt;br /&gt;
    date.setYMD( year, month, day);&lt;br /&gt;
    QCOMPARE( date.month(), month );&lt;br /&gt;
    QTEST( QDate::longMonthName(date.month()), &amp;quot;monthName&amp;quot; );&lt;br /&gt;
}      &lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In the example above, note that monthname is enclosed in quotes, and we no longer have a QFETCH call for monthname. &lt;br /&gt;
&lt;br /&gt;
The other QCOMPARE could also have been converted to use QTEST, however this would be less efficient, because we already needed to use QFETCH to get month for the setYMD in the line above. &lt;br /&gt;
&lt;br /&gt;
===Running selected tests with selected data===&lt;br /&gt;
&lt;br /&gt;
In the previous tutorial, we saw how to run a specific test by specifying the name of the test as a command line argument. In data driven testing, you can select which data you want the test run with, by adding a colon and the label for the data row. For example, if we just want to run the testMonth test for the first row, we would use &amp;lt;pre&amp;gt;./tutorial2 -v2 testMonth:1967/3/11&amp;lt;/pre&amp;gt;. The result of this is shown below.&lt;br /&gt;
&lt;br /&gt;
'''Example 12. QDate unit test output - selected function and data'''&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
$ ./tutorial2 -v2 testMonth:1967/3/11&lt;br /&gt;
********* Start testing of testDate *********&lt;br /&gt;
Config: Using QTest library 4.1.0, Qt 4.1.0-snapshot-20051020&lt;br /&gt;
INFO   : testDate::initTestCase() entering&lt;br /&gt;
PASS   : testDate::initTestCase()&lt;br /&gt;
INFO   : testDate::testMonth() entering&lt;br /&gt;
INFO   : testDate::testMonth(1967/3/11) COMPARE()&lt;br /&gt;
   Loc: [tutorial2.cpp(44)]&lt;br /&gt;
INFO   : testDate::testMonth(1967/3/11) COMPARE()&lt;br /&gt;
   Loc: [tutorial2.cpp(45)]&lt;br /&gt;
PASS   : testDate::testMonth()&lt;br /&gt;
INFO   : testDate::cleanupTestCase() entering&lt;br /&gt;
PASS   : testDate::cleanupTestCase()&lt;br /&gt;
Totals: 3 passed, 0 failed, 0 skipped&lt;br /&gt;
********* Finished testing of testDate *********&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tutorial 3: Testing Graphical User Interfaces==&lt;br /&gt;
&lt;br /&gt;
In the previous two tutorials, we've tested a date management class. This is an pretty typical use of unit testing. However Qt and KDE applications will make use graphical classes that take user input (typically from a keyboard and mouse). QtTestLib offers support for testing these classes, which we'll see in this tutorial. &lt;br /&gt;
&lt;br /&gt;
Again, we'll use an existing class as our test environment, and again it will be date related - the standard Qt {{qt|QDateEdit}} class. For those not familiar with this class, it is a simple date entry widget (although with some powerful back end capabilities). A picture of the widget is shown below. &lt;br /&gt;
&lt;br /&gt;
[[Image:Qdateedit_dlg.png|thumb|'''Figure 1. QDateEdit widget screenshot''']]&lt;br /&gt;
&lt;br /&gt;
The way QtTestLib provides GUI testing is by injecting {{qt|QInputEvent}} events. To the application, these input events appear the same as normal key press/release and mouse clicks/drags. However the mouse and keyboard are unaffected, so that you can continue to use the machine normally while tests are being run. &lt;br /&gt;
&lt;br /&gt;
An example of how you can use the GUI functionality of QtTestLib is shown below.&lt;br /&gt;
&lt;br /&gt;
'''Example 13. QDateEdit test code'''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code cppqt n&amp;gt;&lt;br /&gt;
#include &amp;lt;QtTest&amp;gt;&lt;br /&gt;
#include &amp;lt;QtCore&amp;gt;&lt;br /&gt;
#include &amp;lt;QtGui&amp;gt;&lt;br /&gt;
Q_DECLARE_METATYPE(QDate)&lt;br /&gt;
&lt;br /&gt;
class testDateEdit: public QObject&lt;br /&gt;
{&lt;br /&gt;
    Q_OBJECT&lt;br /&gt;
private slots:&lt;br /&gt;
    void testChanges();&lt;br /&gt;
    void testValidator_data();&lt;br /&gt;
    void testValidator();&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
void testDateEdit::testChanges()&lt;br /&gt;
{&lt;br /&gt;
    // 11 March 1967&lt;br /&gt;
    QDate date( 1967, 3, 11 );&lt;br /&gt;
    QDateEdit dateEdit( date );&lt;br /&gt;
&lt;br /&gt;
    // up-arrow should increase day by one&lt;br /&gt;
    QTest::keyClick( &amp;amp;dateEdit, Qt::Key_Up );&lt;br /&gt;
    QCOMPARE( dateEdit.date(), date.addDays(1) );&lt;br /&gt;
&lt;br /&gt;
    // we click twice on the &amp;quot;reduce&amp;quot; arrow at the bottom RH corner&lt;br /&gt;
    // first we need the widget size to know where to click&lt;br /&gt;
    QSize editWidgetSize = dateEdit.size();&lt;br /&gt;
    QPoint clickPoint(editWidgetSize.rwidth()-2, editWidgetSize.rheight()-2);&lt;br /&gt;
    // issue two clicks&lt;br /&gt;
    QTest::mouseClick( &amp;amp;dateEdit, Qt::LeftButton, 0, clickPoint);&lt;br /&gt;
    QTest::mouseClick( &amp;amp;dateEdit, Qt::LeftButton, 0, clickPoint);&lt;br /&gt;
    // and we should have decreased day by two (one less than original)&lt;br /&gt;
    QCOMPARE( dateEdit.date(), date.addDays(-1) );&lt;br /&gt;
&lt;br /&gt;
    QTest::keyClicks( &amp;amp;dateEdit, &amp;quot;25122005&amp;quot; );&lt;br /&gt;
    QCOMPARE( dateEdit.date(), QDate( 2005, 12, 25 ) );&lt;br /&gt;
&lt;br /&gt;
    QTest::keyClick( &amp;amp;dateEdit, Qt::Key_Tab, Qt::ShiftModifier );&lt;br /&gt;
    QTest::keyClicks( &amp;amp;dateEdit, &amp;quot;08&amp;quot; );&lt;br /&gt;
    QCOMPARE( dateEdit.date(), QDate( 2005, 8, 25 ) );&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
void testDateEdit::testValidator_data()&lt;br /&gt;
{&lt;br /&gt;
    qRegisterMetaType&amp;lt;QDate&amp;gt;(&amp;quot;QDate&amp;quot;);&lt;br /&gt;
&lt;br /&gt;
    QTest::addColumn&amp;lt;QDate&amp;gt;( &amp;quot;initialDate&amp;quot; );&lt;br /&gt;
    QTest::addColumn&amp;lt;QString&amp;gt;( &amp;quot;keyclicks&amp;quot; );&lt;br /&gt;
    QTest::addColumn&amp;lt;QDate&amp;gt;( &amp;quot;finalDate&amp;quot; );&lt;br /&gt;
&lt;br /&gt;
    QTest::newRow( &amp;quot;1968/4/12&amp;quot; ) &amp;lt;&amp;lt; QDate( 1967, 3, 11 )&lt;br /&gt;
                                 &amp;lt;&amp;lt; QString( &amp;quot;12041968&amp;quot; )&lt;br /&gt;
                                 &amp;lt;&amp;lt; QDate( 1968, 4, 12 );&lt;br /&gt;
&lt;br /&gt;
    QTest::newRow( &amp;quot;1967/3/14&amp;quot; ) &amp;lt;&amp;lt; QDate( 1967, 3, 11 )&lt;br /&gt;
                                 &amp;lt;&amp;lt; QString( &amp;quot;140abcdef[&amp;quot; )&lt;br /&gt;
                                 &amp;lt;&amp;lt; QDate( 1967, 3, 14 );&lt;br /&gt;
    // more rows can go in here&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
void testDateEdit::testValidator()&lt;br /&gt;
{&lt;br /&gt;
    QFETCH( QDate, initialDate );&lt;br /&gt;
    QFETCH( QString, keyclicks );&lt;br /&gt;
    QFETCH( QDate, finalDate );&lt;br /&gt;
&lt;br /&gt;
    QDateEdit dateEdit( initialDate );&lt;br /&gt;
    // this next line is just to start editing&lt;br /&gt;
    QTest::keyClick( &amp;amp;dateEdit, Qt::Key_Enter );&lt;br /&gt;
    QTest::keyClicks( &amp;amp;dateEdit, keyclicks );&lt;br /&gt;
    QCOMPARE( dateEdit.date(), finalDate );&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
QTEST_MAIN(testDateEdit)&lt;br /&gt;
#include &amp;quot;tutorial3.moc&amp;quot;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Much of this code is common with previous examples, so I'll focus on the new elements and the more important changes as we work through the code line-by-line. &lt;br /&gt;
&lt;br /&gt;
Lines 1 to 3 import the various Qt declarations, as before. &lt;br /&gt;
&lt;br /&gt;
Line 4 is a macro that is required for the data-driven part of this test, which I'll come to soon. &lt;br /&gt;
&lt;br /&gt;
Lines 5 to 12 declare the test class - while the names have changed, it is pretty similar to the previous example. Note the testValidator and testValidator_data functions - we will be using data driven testing again in this example. &lt;br /&gt;
&lt;br /&gt;
Our first real test starts in line 13. Line 16 creates a QDate, and line 17 uses that date as the initial value for a QDateEdit widget. &lt;br /&gt;
&lt;br /&gt;
Lines 19 and 20 show how we can test what happens when we press the up-arrow key. The QTest::keyClick function takes a pointer to a widget, and a symbolic key name (a char or a Qt::Key). At line 20, we check that the effect of that event was to increment the date by a day. The QTest:keyClick function also takes an optional keyboard modifier (such as Qt::ShiftModifier for the shift key) and an optional delay value (in milliseconds). As an alternative to using QTest::keyClick, you can use QTest::keyPress and QTest::keyRelease to construct more complex keyboard sequences. &lt;br /&gt;
&lt;br /&gt;
Lines 23 to 29 show a similar test to the previous one, but in this case we are simulating a mouse click. We need to click in the lower right hand part of the widget (to hit the decrement arrow - see Figure 1), and that requires knowing how large the widget is. So lines 23 and 24 calculate the correct point based off the size of the widget. Line 26 (and the identical line 27) simulates clicking with the left-hand mouse button at the calculated point. The arguments to Qt::mouseClick are:&lt;br /&gt;
&lt;br /&gt;
*a pointer to the widget that the click event should be sent to.&lt;br /&gt;
*the mouse button that is being clicked.&lt;br /&gt;
*an optional keyboard modifier (such a Qt::ShiftModifier), or 0 for no modifiers.&lt;br /&gt;
*an optional click point - this defaults to the middle of the widget if not specified.&lt;br /&gt;
*an optional mouse delay.&lt;br /&gt;
&lt;br /&gt;
In addition to QTest::mouseClick, there is also QTest::mousePress, QTest::mouseRelease, QTest::mouseDClick (providing double-click) and QTest::mouseMove. The first three are used in the same way as QTest::mouseClick. The last takes a point to move the mouse to. You can use these functions in combination to simulate dragging with the mouse. &lt;br /&gt;
&lt;br /&gt;
Lines 30 and 31 show another approach to keyboard entry, using the QTest::keyClicks. Where QTest::keyClick sends a single key press, QTest::keyClicks takes a QString (or something equivalent, in line 30 a character array) that represents a sequence of key clicks to send. The other arguments are the same. &lt;br /&gt;
&lt;br /&gt;
Lines 32 to 34 show how you may need to use a combination of functions. After we've entered a new date in line 30, the cursor is at the end of the widget. At line 32, we use a Shift-Tab combination to move the cursor back to the month value. Then at line 33 we enter a new month value. Of course we could have used individual calls to QTest::keyClick, however that wouldn't have been as clear, and would also have required more code.&lt;br /&gt;
&lt;br /&gt;
=== Data-driven GUI testing ===&lt;br /&gt;
&lt;br /&gt;
Lines 50 to 60 show a data-driven test - in this case we are checking that the validator on QDateEdit is performing as expected. This is a case where data-driven testing can really help to ensure that things are working the way they should. &lt;br /&gt;
&lt;br /&gt;
At lines 52 to 54, we fetch in an initial value, a series of key-clicks, and an expected result. These are the columns that are set up in lines 39 to 41. However note that we are now pulling in a QDate, where in previous examples we used three integers and then build the QDate from those. However QDate isn't a registered type for {{qt|QMetaType}}, and so we need to register it before we can use it in our data-driven testing. This is done using the Q_DECLARE_METATYPE macro in line 4 and the qRegisterMetaType function in line 38. &lt;br /&gt;
&lt;br /&gt;
Lines 42 to 47 add in a couple of sample rows. Lines 42 to 44 represent a case where the input is valid, and lines 45 to 47 are a case where the input is only partly valid (the day part). A real test will obviously contain far more combinations than this. &lt;br /&gt;
&lt;br /&gt;
Those test rows are actually tested in lines 55 to 59. We construct the QDateEdit widget in line 55, using the initial value. We then send an Enter key click in line 57, which is required to get the widget into edit mode. At line 58 we simulate the data entry, and at line 59 we check whether the results are what was expected. &lt;br /&gt;
&lt;br /&gt;
Lines 61 and 62 are the same as we've seen in previous examples.&lt;br /&gt;
&lt;br /&gt;
=== Re-using test elements ===&lt;br /&gt;
&lt;br /&gt;
If you are re-using a set of events a number of times, then it may be an advantage to build a list of events, and then just replay them. This can improve maintainability and clarity of a set of tests, especially for mouse movements. &lt;br /&gt;
&lt;br /&gt;
The key class for building a list of test events is imaginatively known as QTestEventList. It is a QList of QTestEvents. The normal approach is to create the list, and then use various member functions to add key and mouse events. The normal functions that you'll need are addKeyClick and addMouseClick, which are very similar to the QTest::keyClick and QTest::mouseClick functions we used earlier in this tutorial. For finer grained operations, you can also use addKeyPress, addKeyRelease, addKeyEvent, addMousePress, addMouseRelease, addMouseDClick and addMouseMove to build up more complex event lists. You can also use addDelay to add a specified delay between events. When the list has been built up, you just call simulate on each widget. &lt;br /&gt;
&lt;br /&gt;
You can see how this works in the example below, which is the QDateEdit example (from above) converted to use QTestEventList.&lt;br /&gt;
&lt;br /&gt;
'''Example 14. QDateEdit test code, using QTestEventList'''&lt;br /&gt;
&amp;lt;code cppqt n&amp;gt;       &lt;br /&gt;
#include &amp;lt;QtTest&amp;gt;&lt;br /&gt;
#include &amp;lt;QtCore&amp;gt;&lt;br /&gt;
#include &amp;lt;QtGui&amp;gt;&lt;br /&gt;
Q_DECLARE_METATYPE(QDate)&lt;br /&gt;
&lt;br /&gt;
class testDateEdit: public QObject&lt;br /&gt;
{&lt;br /&gt;
    Q_OBJECT&lt;br /&gt;
private slots:&lt;br /&gt;
    void testChanges();&lt;br /&gt;
    void testValidator_data();&lt;br /&gt;
    void testValidator();&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
void testDateEdit::testChanges()&lt;br /&gt;
{&lt;br /&gt;
    // 11 March 1967&lt;br /&gt;
    QDate date( 1967, 3, 11 );&lt;br /&gt;
    QDateEdit dateEdit( date );&lt;br /&gt;
&lt;br /&gt;
    // up-arrow should increase day by one&lt;br /&gt;
    QTest::keyClick( &amp;amp;dateEdit, Qt::Key_Up );&lt;br /&gt;
    QCOMPARE( dateEdit.date(), date.addDays(1) );&lt;br /&gt;
&lt;br /&gt;
    // we click twice on the &amp;quot;reduce&amp;quot; arrow at the bottom RH corner&lt;br /&gt;
    // first we need the widget size to know where to click&lt;br /&gt;
    QSize editWidgetSize = dateEdit.size();&lt;br /&gt;
    QPoint clickPoint(editWidgetSize.rwidth()-2, editWidgetSize.rheight()-2);&lt;br /&gt;
    // build a list that contains two clicks&lt;br /&gt;
    QTestEventList list1;&lt;br /&gt;
    list1.addMouseClick( Qt::LeftButton, 0, clickPoint);&lt;br /&gt;
    list1.addMouseClick( Qt::LeftButton, 0, clickPoint);&lt;br /&gt;
    // call that list on the widget&lt;br /&gt;
    list1.simulate( &amp;amp;dateEdit );&lt;br /&gt;
    // and we should have decreased day by two (one less than original)&lt;br /&gt;
    QCOMPARE( dateEdit.date(), date.addDays(-1) );&lt;br /&gt;
&lt;br /&gt;
    QTest::keyClicks( &amp;amp;dateEdit, &amp;quot;25122005&amp;quot; );&lt;br /&gt;
    QCOMPARE( dateEdit.date(), QDate( 2005, 12, 25 ) );&lt;br /&gt;
&lt;br /&gt;
    QTestEventList list2;&lt;br /&gt;
    list2.addKeyClick( Qt::Key_Tab, Qt::ShiftModifier );&lt;br /&gt;
    list2.addKeyClicks( &amp;quot;08&amp;quot; );&lt;br /&gt;
    list2.simulate( &amp;amp;dateEdit );&lt;br /&gt;
    QCOMPARE( dateEdit.date(), QDate( 2005, 8, 25 ) );&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
void testDateEdit::testValidator_data()&lt;br /&gt;
{&lt;br /&gt;
    qRegisterMetaType&amp;lt;QDate&amp;gt;(&amp;quot;QDate&amp;quot;);&lt;br /&gt;
&lt;br /&gt;
    QTest::addColumn&amp;lt;QDate&amp;gt;( &amp;quot;initialDate&amp;quot; );&lt;br /&gt;
    QTest::addColumn&amp;lt;QTestEventList&amp;gt;( &amp;quot;events&amp;quot; );&lt;br /&gt;
    QTest::addColumn&amp;lt;QDate&amp;gt;( &amp;quot;finalDate&amp;quot; );&lt;br /&gt;
&lt;br /&gt;
    QTestEventList eventsList1;&lt;br /&gt;
    // this next line is just to start editing&lt;br /&gt;
    eventsList1.addKeyClick( Qt::Key_Enter );&lt;br /&gt;
    eventsList1.addKeyClicks( &amp;quot;12041968&amp;quot; );&lt;br /&gt;
&lt;br /&gt;
    QTest::newRow( &amp;quot;1968/4/12&amp;quot; ) &amp;lt;&amp;lt; QDate( 1967, 3, 11 )&lt;br /&gt;
                                 &amp;lt;&amp;lt; eventsList1&lt;br /&gt;
                                 &amp;lt;&amp;lt; QDate( 1968, 4, 12 );&lt;br /&gt;
&lt;br /&gt;
    QTestEventList eventsList2;&lt;br /&gt;
    eventsList2.addKeyClick( Qt::Key_Enter );&lt;br /&gt;
    eventsList2.addKeyClicks( &amp;quot;140abcdef[&amp;quot; );&lt;br /&gt;
&lt;br /&gt;
    QTest::newRow( &amp;quot;1967/3/14&amp;quot; ) &amp;lt;&amp;lt; QDate( 1967, 3, 11 )&lt;br /&gt;
                                 &amp;lt;&amp;lt; eventsList2&lt;br /&gt;
                                 &amp;lt;&amp;lt; QDate( 1967, 3, 14 );&lt;br /&gt;
    // more rows can go in here&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
void testDateEdit::testValidator()&lt;br /&gt;
{&lt;br /&gt;
    QFETCH( QDate, initialDate );&lt;br /&gt;
    QFETCH( QTestEventList, events );&lt;br /&gt;
    QFETCH( QDate, finalDate );&lt;br /&gt;
&lt;br /&gt;
    QDateEdit dateEdit( initialDate );&lt;br /&gt;
&lt;br /&gt;
    events.simulate( &amp;amp;dateEdit);&lt;br /&gt;
&lt;br /&gt;
    QCOMPARE( dateEdit.date(), finalDate );&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
QTEST_MAIN(testDateEdit)&lt;br /&gt;
#include &amp;quot;tutorial3a.moc&amp;quot;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This example is pretty much the same as the previous version, up to line 25. In line 26, we create a QTestEventList. We add events to the list in lines 27 and 28 - note that we don't specify the widget we are calling them on at this stage. In line 30, we simulate each event on the widget. If we had multiple widgets, we could call simulate using the same set of events. &lt;br /&gt;
&lt;br /&gt;
Lines 31 to 34 are as per the previous example. &lt;br /&gt;
&lt;br /&gt;
We create another list in lines 35 to 37, although this time we are using addKeyClick and addKeyClicks instead of adding mouse events. Note that an event list can contain combinations of mouse and keyboard events - it just didn't make sense in this test to have such a combination. We use the second list at line 38, and check the results in line 39. &lt;br /&gt;
&lt;br /&gt;
You can also build lists of events in data driven testing as well, as shown in lines 41 to 70. The key difference is that instead of fetching a QString in each row, we are fetching a QTestEventList. This requires that we add a column of QTestEventList, rather than QString (see line 45). At lines 47 to 50, we create a list of events. At line 52 we add those events to the applicable row. We create a second list at lines 54 to 56, and add that second list to the applicable row in line 58. &lt;br /&gt;
&lt;br /&gt;
We fetch the events in line 65, and use them in line 68. If we had multiple widgets, then we could use the same event list several times.&lt;br /&gt;
&lt;br /&gt;
==Tutorial 4 - Testing for failure and avoiding tests==&lt;br /&gt;
&lt;br /&gt;
Under some conditions, it is impossible to avoid tests failing. In this section, we'll see how to deal with these cases. &lt;br /&gt;
&lt;br /&gt;
===Skipping tests===&lt;br /&gt;
&lt;br /&gt;
Where a test doesn't make sense to run (for example, if the required test files aren't available, or the feature is architecture or operating system dependent), the cleanest solution is to skip the test. &lt;br /&gt;
&lt;br /&gt;
Tests are skipped using the QSKIP macro. QSKIP takes two arguments - a label string that should be used to describe why the test is being skipped, and a enumerated constant that controls how much of the test is skipped. If you pass SkipSingle, and the test is data driven, then only the current row is skipped. If you pass SkipAll and the test is data driven, then all following rows are skipped. If the test is not data driven, then it doesn't matter which one is used. &lt;br /&gt;
&lt;br /&gt;
You can see how QSKIP works in the example below:&lt;br /&gt;
&lt;br /&gt;
'''Example 15. Unit test showing skipped tests'''&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
void testDate::testSkip_data()&lt;br /&gt;
{&lt;br /&gt;
    QTest::addColumn&amp;lt;int&amp;gt;(&amp;quot;val1&amp;quot;);&lt;br /&gt;
    QTest::addColumn&amp;lt;int&amp;gt;(&amp;quot;val2&amp;quot;);&lt;br /&gt;
&lt;br /&gt;
    QTest::newRow(&amp;quot;1&amp;quot;) &amp;lt;&amp;lt; 1 &amp;lt;&amp;lt; 1;&lt;br /&gt;
    QTest::newRow(&amp;quot;2&amp;quot;) &amp;lt;&amp;lt; 1 &amp;lt;&amp;lt; 2;&lt;br /&gt;
    QTest::newRow(&amp;quot;3&amp;quot;) &amp;lt;&amp;lt; 3 &amp;lt;&amp;lt; 3;&lt;br /&gt;
    QTest::newRow(&amp;quot;5&amp;quot;) &amp;lt;&amp;lt; 5 &amp;lt;&amp;lt; 5;&lt;br /&gt;
    QTest::newRow(&amp;quot;4&amp;quot;) &amp;lt;&amp;lt; 4 &amp;lt;&amp;lt; 5;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
void testDate::testSkip()&lt;br /&gt;
{&lt;br /&gt;
    QFETCH(int, val1);&lt;br /&gt;
    QFETCH(int, val2);&lt;br /&gt;
&lt;br /&gt;
    if ( val2 == 2 ) &lt;br /&gt;
        QSKIP(&amp;quot;Two isn't good, not doing it&amp;quot;, SkipSingle);&lt;br /&gt;
    if ( val1 == 5 )&lt;br /&gt;
        QSKIP(&amp;quot;Five! I've had enough, bailing here&amp;quot;, SkipAll);&lt;br /&gt;
    QCOMPARE( val1, val2 );&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Example 16. Output of unit test showing skipped tests'''&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
$ ./tutorial4 testSkip -v2&lt;br /&gt;
********* Start testing of testDate *********&lt;br /&gt;
Config: Using QTest library 4.1.0, Qt 4.1.0-snapshot-20051107&lt;br /&gt;
INFO   : testDate::initTestCase() entering&lt;br /&gt;
PASS   : testDate::initTestCase()&lt;br /&gt;
INFO   : testDate::testSkip() entering&lt;br /&gt;
INFO   : testDate::testSkip(1) COMPARE()&lt;br /&gt;
   Loc: [tutorial4.cpp(82)]&lt;br /&gt;
SKIP   : testDate::testSkip(2) Two isn't good, not doing it&lt;br /&gt;
   Loc: [tutorial4.cpp(79)]&lt;br /&gt;
INFO   : testDate::testSkip(3) COMPARE()&lt;br /&gt;
   Loc: [tutorial4.cpp(82)]&lt;br /&gt;
SKIP   : testDate::testSkip(5) Five! I've had enough, bailing here&lt;br /&gt;
   Loc: [tutorial4.cpp(81)]&lt;br /&gt;
PASS   : testDate::testSkip()&lt;br /&gt;
INFO   : testDate::cleanupTestCase() entering&lt;br /&gt;
PASS   : testDate::cleanupTestCase()&lt;br /&gt;
Totals: 3 passed, 0 failed, 2 skipped&lt;br /&gt;
********* Finished testing of testDate *********&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
from the verbose output, you can see that the test was run on the first and third rows. The second row wasn't run because of the QSKIP call with a SkipSingle argument. Similarly, the fourth and fifth rows weren't run because the fourth row triggered a QSKIP call with a SkipAll argument. &lt;br /&gt;
&lt;br /&gt;
Also note that the test didn't fail, even though there were two calls to QSKIP. Conceptually, a skipped test is a test that didn't make sense to run for test validity reasons, rather than a test that is valid but will fail because of bugs or lack of features in the code being tested. &lt;br /&gt;
&lt;br /&gt;
===Handling expected failures===&lt;br /&gt;
&lt;br /&gt;
If you have valid tests, but the code that you are testing doesn't pass them, then ideally you fix the code you are testing. However sometimes that isn't possible in the time that you have available, or because of a need to avoid binary incompatible changes. In this case, it is undesirable to delete or modify the unit tests - it is better to flag the test as &amp;quot;expected to fail&amp;quot;, using the QEXPECT_FAIL macro. An example of this is shown below: &lt;br /&gt;
&lt;br /&gt;
'''Example 17. Unit test showing expected failures'''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code cppqt n&amp;gt;&lt;br /&gt;
void testDate::testExpectedFail()&lt;br /&gt;
{&lt;br /&gt;
    QEXPECT_FAIL(&amp;quot;&amp;quot;, &amp;quot;1 is not 2, even for very large 1&amp;quot;, Continue);&lt;br /&gt;
    QCOMPARE( 1, 2 );&lt;br /&gt;
    QCOMPARE( 2, 2 );&lt;br /&gt;
&lt;br /&gt;
    QEXPECT_FAIL(&amp;quot;&amp;quot;, &amp;quot;1 is not 2, even for very small 2&amp;quot;, Abort);&lt;br /&gt;
    QCOMPARE( 1, 2 );&lt;br /&gt;
    // The next line will not be run, because we Abort on previous failure&lt;br /&gt;
    QCOMPARE( 3, 3 );&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Example 18. Output of unit test showing expected failures'''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
$ ./tutorial4/tutorial4 testExpectedFail -v2&lt;br /&gt;
********* Start testing of testDate *********&lt;br /&gt;
Config: Using QTest library 4.1.0, Qt 4.1.0-snapshot-20051107&lt;br /&gt;
INFO   : testDate::initTestCase() entering&lt;br /&gt;
PASS   : testDate::initTestCase()&lt;br /&gt;
INFO   : testDate::testExpectedFail() entering&lt;br /&gt;
INFO   : testDate::testExpectedFail() Compared values are not the same&lt;br /&gt;
   Actual (1): 1&lt;br /&gt;
   Expected (2): 2&lt;br /&gt;
   Loc: [tutorial4.cpp(41)]&lt;br /&gt;
XFAIL  : testDate::testExpectedFail() 1 is not 2, even for very large 1&lt;br /&gt;
   Loc: [tutorial4.cpp(41)]&lt;br /&gt;
INFO   : testDate::testExpectedFail() COMPARE()&lt;br /&gt;
   Loc: [tutorial4.cpp(42)]&lt;br /&gt;
INFO   : testDate::testExpectedFail() Compared values are not the same&lt;br /&gt;
   Actual (1): 1&lt;br /&gt;
   Expected (2): 2&lt;br /&gt;
   Loc: [tutorial4.cpp(45)]&lt;br /&gt;
XFAIL  : testDate::testExpectedFail() 1 is not 2, even for very small 2&lt;br /&gt;
   Loc: [tutorial4.cpp(45)]&lt;br /&gt;
PASS   : testDate::testExpectedFail()&lt;br /&gt;
INFO   : testDate::cleanupTestCase() entering&lt;br /&gt;
PASS   : testDate::cleanupTestCase()&lt;br /&gt;
Totals: 3 passed, 0 failed, 0 skipped&lt;br /&gt;
********* Finished testing of testDate *********&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
As you can see from the verbose output, we expect a failure from each time we do a QCOMPARE( 1, 2);. In the first call to QEXPECT_FAIL, we use the Continue argument, so the rest of the tests will still be run. However in the second call to QEXPECT_FAILwe use the Abort and the test bails at this point. Generally it is better to use Continue unless you have a lot of closely related tests that would each need a QEXPECT_FAIL entry. &lt;br /&gt;
&lt;br /&gt;
Also note that tests that are marked as expected failures are not considered to be failures, so the test function above is considered to be a pass. &lt;br /&gt;
&lt;br /&gt;
If a test that is marked to be an expected failure, and it unexpectedly passes, then that is flagged as an error, as shown below: &lt;br /&gt;
&lt;br /&gt;
'''Example 19. Unit test showing unexpected pass'''&lt;br /&gt;
&amp;lt;code cppqt n&amp;gt;&lt;br /&gt;
void testDate::testUnexpectedPass()&lt;br /&gt;
{&lt;br /&gt;
    QEXPECT_FAIL(&amp;quot;&amp;quot;, &amp;quot;1 is not 2, even for very large 1&amp;quot;, Continue);&lt;br /&gt;
    QCOMPARE( 1, 1 );&lt;br /&gt;
    QCOMPARE( 2, 2 );&lt;br /&gt;
&lt;br /&gt;
    QEXPECT_FAIL(&amp;quot;&amp;quot;, &amp;quot;1 is not 2, even for very small 2&amp;quot;, Abort);&lt;br /&gt;
    QCOMPARE( 1, 1 );&lt;br /&gt;
    QCOMPARE( 3, 3 );&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Example 20. Output of unit test showing unexpected pass'''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
$ ./tutorial4/tutorial4 testUnexpectedPass -v2&lt;br /&gt;
********* Start testing of testDate *********&lt;br /&gt;
Config: Using QTest library 4.1.0, Qt 4.1.0-snapshot-20051107&lt;br /&gt;
INFO   : testDate::initTestCase() entering&lt;br /&gt;
PASS   : testDate::initTestCase()&lt;br /&gt;
INFO   : testDate::testUnexpectedPass() entering&lt;br /&gt;
INFO   : testDate::testUnexpectedPass() COMPARE()&lt;br /&gt;
   Loc: [tutorial4.cpp(53)]&lt;br /&gt;
XPASS  : testDate::testUnexpectedPass() COMPARE()&lt;br /&gt;
   Loc: [tutorial4.cpp(53)]&lt;br /&gt;
INFO   : testDate::testUnexpectedPass() COMPARE()&lt;br /&gt;
   Loc: [tutorial4.cpp(54)]&lt;br /&gt;
INFO   : testDate::testUnexpectedPass() COMPARE()&lt;br /&gt;
   Loc: [tutorial4.cpp(57)]&lt;br /&gt;
XPASS  : testDate::testUnexpectedPass() COMPARE()&lt;br /&gt;
   Loc: [tutorial4.cpp(57)]&lt;br /&gt;
INFO   : testDate::cleanupTestCase() entering&lt;br /&gt;
PASS   : testDate::cleanupTestCase()&lt;br /&gt;
Totals: 2 passed, 2 failed, 0 skipped&lt;br /&gt;
********* Finished testing of testDate *********&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The effect of unexpected passes on the running of the test is controlled by the second argument to QEXPECT_FAIL. If the argument is Continue and the test unexpectedly passes, then the rest of the test function will be run. If the argument is Abort, then the test will stop.&lt;br /&gt;
&lt;br /&gt;
===Checking debug messages and warnings===&lt;br /&gt;
&lt;br /&gt;
If you are testing border cases, you will likely run across the case where some kind of message will be produced using the qDebug or qWarning functions. Where a test produces a debug or warning message, that message will be logged in the test output (although it will still be considered a pass unless some other check fails), as shown in the example below: &lt;br /&gt;
&lt;br /&gt;
Example 21. Unit test producing warning and debug messages&lt;br /&gt;
&amp;lt;code cppqt n&amp;gt;&lt;br /&gt;
void testDate::testQdebug()&lt;br /&gt;
{&lt;br /&gt;
    qWarning(&amp;quot;warning&amp;quot;);&lt;br /&gt;
    qDebug(&amp;quot;debug&amp;quot;);&lt;br /&gt;
    qCritical(&amp;quot;critical&amp;quot;);&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/code&amp;gt;   &lt;br /&gt;
&lt;br /&gt;
'''Example 22. Output of unit test producing warning and debug messages'''&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
$ ./tutorial4 testQdebug&lt;br /&gt;
********* Start testing of testDate *********&lt;br /&gt;
Config: Using QTest library 4.1.0, Qt 4.1.0-snapshot-20051107&lt;br /&gt;
PASS   : testDate::initTestCase()&lt;br /&gt;
QWARN  : testDate::testQdebug() warning&lt;br /&gt;
QDEBUG : testDate::testQdebug() debug&lt;br /&gt;
QSYSTEM: testDate::testQdebug() critical&lt;br /&gt;
PASS   : testDate::testQdebug()&lt;br /&gt;
PASS   : testDate::cleanupTestCase()&lt;br /&gt;
Totals: 3 passed, 0 failed, 0 skipped&lt;br /&gt;
********* Finished testing of testDate *********&lt;br /&gt;
&amp;lt;/code&amp;gt;        &lt;br /&gt;
&lt;br /&gt;
Note that while this example produces the debug and warning messages within the test function (testQdebug), those messages would normally be propagated up from the code being tested. However the source of the messages does not make any difference to how they are handled. &lt;br /&gt;
&lt;br /&gt;
If your test needs include either a clean output, or verification that appropriate messages are generated, then you will probably need the QtTest::ignoreMessage function. &lt;br /&gt;
&lt;br /&gt;
{{Tip|'''Note:''' The ignoreMessage function can be used to ignore a message, however it might be clearer to think of this function as checking for the presence of an expected message. In particular, it is a test failure if you call ignoreMessage and the message is not generated.}}&lt;br /&gt;
&lt;br /&gt;
An example of how ignoreMessage works is shown below. &lt;br /&gt;
&lt;br /&gt;
'''Example 23. Example of using ignoreMessage'''&lt;br /&gt;
&amp;lt;code cppqt n&amp;gt;&lt;br /&gt;
void testDate::testValidity()&lt;br /&gt;
{&lt;br /&gt;
    QTest::ignoreMessage(QtWarningMsg, &amp;quot;validity warning&amp;quot;);&lt;br /&gt;
    qWarning(&amp;quot;validity warning&amp;quot;);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
void testDate::testValiditi()&lt;br /&gt;
{&lt;br /&gt;
    QTest::ignoreMessage(QtWarningMsg, &amp;quot;validity warning&amp;quot;);&lt;br /&gt;
    qWarning(&amp;quot;validiti warning&amp;quot;);&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
        &lt;br /&gt;
'''Example 24. Output of ignoreMessage example'''&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
$ ./tutorial4 testValidity testValiditi&lt;br /&gt;
********* Start testing of testDate *********&lt;br /&gt;
Config: Using QTest library 4.1.0, Qt 4.1.0-snapshot-20051107&lt;br /&gt;
PASS   : testDate::initTestCase()&lt;br /&gt;
PASS   : testDate::testValidity()&lt;br /&gt;
QWARN  : testDate::testValiditi() validiti warning&lt;br /&gt;
INFO   : testDate::testValiditi() Did not receive message: &amp;quot;validity warning&amp;quot;&lt;br /&gt;
FAIL!  : testDate::testValiditi() Not all expected messages were received&lt;br /&gt;
PASS   : testDate::cleanupTestCase()&lt;br /&gt;
Totals: 3 passed, 1 failed, 0 skipped&lt;br /&gt;
********* Finished testing of testDate *********&lt;br /&gt;
&amp;lt;/code&amp;gt;   &lt;br /&gt;
&lt;br /&gt;
Note that the warning message in testDate::testValidity has been &amp;quot;swallowed&amp;quot; by the the call to ignoreMessage. &lt;br /&gt;
&lt;br /&gt;
By contrast, the warning message in testDate::testValiditi still causes a warning to be logged, because the ignoreMessage call does not match the text in the warning message. In addition, because a we expected a particular warning message and it wasn't received, the testDate::testValiditi test function fails.&lt;br /&gt;
&lt;br /&gt;
==Tutorial 5: Testing Qt slots and signals==&lt;br /&gt;
&lt;br /&gt;
An important part of Qt programming is the use of signals and slots. This section covers the support for testing of these features. &lt;br /&gt;
&lt;br /&gt;
{{Tip|'''Note:''' If you are not familiar with Qt signals and slots, you probably should review the introduction to this feature provided in your Qt documentation. It is also available at http://doc.trolltech.com/latest/signalsandslots.html. You also might like to review Tutorial 5 in your Qt documentation. This tutorial is also available at http://doc.trolltech.com/latest/tutorial-t5.html.}}&lt;br /&gt;
&lt;br /&gt;
===Testing slots===&lt;br /&gt;
&lt;br /&gt;
Testing slots is very easy, because a slot is just a specially annotated method. You can call slots just like any other method you'd like to test, as shown below: &lt;br /&gt;
&lt;br /&gt;
'''Example 25. QLabel test code, showing testing of a couple of slots'''&lt;br /&gt;
&amp;lt;code cppqt n&amp;gt;&lt;br /&gt;
#include &amp;lt;QtTest&amp;gt;&lt;br /&gt;
#include &amp;lt;QtCore&amp;gt;&lt;br /&gt;
#include &amp;lt;QtGui&amp;gt;&lt;br /&gt;
&lt;br /&gt;
class testLabel: public QObject&lt;br /&gt;
{&lt;br /&gt;
    Q_OBJECT&lt;br /&gt;
private slots:&lt;br /&gt;
    void testChanges();&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
void testLabel::testChanges()&lt;br /&gt;
{&lt;br /&gt;
    QLabel label;&lt;br /&gt;
&lt;br /&gt;
    // setNum() is a QLabel slot, but we can just call it like any&lt;br /&gt;
    // other method.&lt;br /&gt;
    label.setNum( 3 );&lt;br /&gt;
    QCOMPARE( label.text(), QString(&amp;quot;3&amp;quot;) );&lt;br /&gt;
&lt;br /&gt;
    // clear() is also a slot.&lt;br /&gt;
    label.clear();&lt;br /&gt;
    QVERIFY( label.text().isEmpty() );&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
QTEST_MAIN(testLabel)&lt;br /&gt;
#include &amp;quot;tutorial5.moc&amp;quot;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Testing signals===&lt;br /&gt;
Testing of signals is a little more difficult than testing of slots, however Qt offers a very useful class called QSignalSpy that helps a lot. &lt;br /&gt;
&lt;br /&gt;
{{qt|QSignalSpy}} is a class provided with Qt that allows you to record the signals that have been emitted from a particular QObject subclass object. You can then check that the right number of signals have been emitted, and that the right kind of signals were emitted. You can find more information on the QSignalSpy class in your Qt documentation.&lt;br /&gt;
&lt;br /&gt;
An example of how you can use QSignalSpy to test a class that has signals is shown below. &lt;br /&gt;
&lt;br /&gt;
'''Example 26. QCheckBox test code, showing testing of signals'''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code cppqt n&amp;gt;&lt;br /&gt;
#include &amp;lt;QtTest&amp;gt;&lt;br /&gt;
#include &amp;lt;QtCore&amp;gt;&lt;br /&gt;
#include &amp;lt;QtGui&amp;gt;&lt;br /&gt;
&lt;br /&gt;
class testCheckBox: public QObject&lt;br /&gt;
{&lt;br /&gt;
    Q_OBJECT&lt;br /&gt;
private slots:&lt;br /&gt;
    void testSignals();&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
void testCheckBox::testSignals()&lt;br /&gt;
{&lt;br /&gt;
    // You don't need to use an object created with &amp;quot;new&amp;quot; for&lt;br /&gt;
    // QSignalSpy, I just needed in in this case to test the emission&lt;br /&gt;
    // of a destroyed() signal.&lt;br /&gt;
    QCheckBox *xbox = new QCheckBox;&lt;br /&gt;
&lt;br /&gt;
    // We are going to have two signal monitoring classes in use for&lt;br /&gt;
    // this test.&lt;br /&gt;
    // The first monitors the stateChanged() signal. &lt;br /&gt;
    // Also note that QSignalSpy takes a pointer to the object.&lt;br /&gt;
    QSignalSpy stateSpy( xbox, SIGNAL( stateChanged(int) ) );&lt;br /&gt;
    &lt;br /&gt;
    // Not strictly necessary, but I like to check that I have set up&lt;br /&gt;
    // my QSignalSpy correctly.&lt;br /&gt;
    QVERIFY( stateSpy.isValid() );&lt;br /&gt;
&lt;br /&gt;
    // Now we check to make sure we don't have any signals already&lt;br /&gt;
    QCOMPARE( stateSpy.count(), 0 );&lt;br /&gt;
&lt;br /&gt;
    // Here is a second monitoring class - this one for the&lt;br /&gt;
    // destroyed() signal.&lt;br /&gt;
    QSignalSpy destroyedSpy( xbox, SIGNAL( destroyed() ) );&lt;br /&gt;
    QVERIFY( destroyedSpy.isValid() );&lt;br /&gt;
&lt;br /&gt;
    // A sanity check to verify the initial state&lt;br /&gt;
    // This also shows that you can mix normal method checks with&lt;br /&gt;
    // signal checks.&lt;br /&gt;
    QCOMPARE( xbox-&amp;gt;checkState(), Qt::Unchecked );&lt;br /&gt;
&lt;br /&gt;
    // Shouldn't already have any signals&lt;br /&gt;
    QCOMPARE( destroyedSpy.count(), 0 );&lt;br /&gt;
&lt;br /&gt;
    // If we change the state, we should get a signal.&lt;br /&gt;
    xbox-&amp;gt;setCheckState( Qt::Checked );&lt;br /&gt;
    QCOMPARE( stateSpy.count(), 1 );&lt;br /&gt;
&lt;br /&gt;
    xbox-&amp;gt;setCheckState( Qt::Unchecked );&lt;br /&gt;
    QCOMPARE( stateSpy.count(), 2 );&lt;br /&gt;
&lt;br /&gt;
    xbox-&amp;gt;setCheckState( Qt::PartiallyChecked );&lt;br /&gt;
    QCOMPARE( stateSpy.count(), 3 );&lt;br /&gt;
&lt;br /&gt;
    // If we destroy the object, the signal should be emitted.&lt;br /&gt;
    delete xbox;&lt;br /&gt;
&lt;br /&gt;
    // So the count of objects should increase.&lt;br /&gt;
    QCOMPARE( destroyedSpy.count(), 1 );&lt;br /&gt;
&lt;br /&gt;
    // We can also review the signals that we collected&lt;br /&gt;
    // QSignalSpy is really a QList of QLists, so we take the first&lt;br /&gt;
    // list, which corresponds to the arguments for the first signal&lt;br /&gt;
    // we caught.&lt;br /&gt;
    QList&amp;lt;QVariant&amp;gt; firstSignalArgs = stateSpy.takeFirst();&lt;br /&gt;
    // stateChanged() only has one argument - an enumerated type (int)&lt;br /&gt;
    // So we take that argument from the list, and turn it into an integer.&lt;br /&gt;
    int firstSignalState = firstSignalArgs.at(0).toInt();&lt;br /&gt;
    // We can then check we got the right kind of signal.&lt;br /&gt;
    QCOMPARE( firstSignalState, static_cast&amp;lt;int&amp;gt;(Qt::Checked) );&lt;br /&gt;
&lt;br /&gt;
    // check the next signal - note that takeFirst() removes from the list&lt;br /&gt;
    QList&amp;lt;QVariant&amp;gt; nextSignalArgs = stateSpy.takeFirst();&lt;br /&gt;
    // this shows another way of fudging the argument types&lt;br /&gt;
    Qt::CheckState nextSignalState = (Qt::CheckState)nextSignalArgs.at(0).toInt();&lt;br /&gt;
    QCOMPARE( nextSignalState, Qt::Unchecked );&lt;br /&gt;
&lt;br /&gt;
    // and again for the third signal&lt;br /&gt;
    nextSignalArgs = stateSpy.takeFirst();&lt;br /&gt;
    nextSignalState = (Qt::CheckState)nextSignalArgs.at(0).toInt();&lt;br /&gt;
    QCOMPARE( nextSignalState, Qt::PartiallyChecked );&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
QTEST_MAIN(testCheckBox)&lt;br /&gt;
#include &amp;quot;tutorial5a.moc&amp;quot;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The first 11 lines are essentially unchanged from previous examples that we've seen. Line 15 creates the object that will be tested - as noted in the comments in lines 12-14, the only reason that I'm creating it with new is because I need to delete it in line 45 to cause the destroyed() signal to be emitted. &lt;br /&gt;
&lt;br /&gt;
Line 20 sets up the first of our two QSignalSpy instances. The one in line 20 monitors the stateChanged(int) signal, and the one in line 29 monitors the destroyed() signal. If you get the name or signature of the signal wrong (for example, if you use stateChanged() instead of stateChanged(int)), then this will not be caught at compile time, but will result in a runtime failure. You can test if things were set up correctly using the isValid(), as shown in lines 24 and 30. &lt;br /&gt;
&lt;br /&gt;
As shown in line 34, there is no reason why you cannot test normal methods, signals and slots in the same test. &lt;br /&gt;
&lt;br /&gt;
Line 38 changes the state of the object under test, which is supposed to result in a stateChanged(int) signal being emitted. Line 39 checks that the number of signals increases from zero to one. Lines 40 and 41 repeat the process, and again in lines 42 and 43. &lt;br /&gt;
&lt;br /&gt;
Line 45 deletes the object under test, and line 47 tests that the destroyed() signal has been emitted. &lt;br /&gt;
&lt;br /&gt;
For signals that have arguments (such as our stateChanged(int) signal), you may also wish to check that the arguments were correct. You can do this by looking at the list of signal arguments. Exactly how you do this is fairly flexible, however for simple tests like the one in the example, you can manually work through the list using takeFirst() and check that each argument is correct. This is shown in line 52, 55 and 57 for the first signal. The same approach is shown in lines 59, 61 and 62 for the second signal, and the in lines 64 to 66 for the third signal. For a more complex set of tests, you may wish to apply some data driven techniques. &lt;br /&gt;
&lt;br /&gt;
{{Tip|'''Note:''' You should be aware that, for some class implementations, you may need to return control to the event loop to have signals emitted. If you need this, try using the {{qt|QTest}}::qWait() function.}}&lt;br /&gt;
&lt;br /&gt;
==Tutorial 6: Integrating with CMake==&lt;br /&gt;
&lt;br /&gt;
The KDE4 build tool is [http://www.cmake.org CMake], and I assume that you are familiar with the use of CMake. If not, you should review the [[Development/Tutorials/CMake|CMake Tutorial]] first.&lt;br /&gt;
&lt;br /&gt;
CMake offers quite good support for unit testing, and QTestLib tests can be easily integrated into any CMake build system.&lt;br /&gt;
&lt;br /&gt;
=== Configuring for Testing ===&lt;br /&gt;
&lt;br /&gt;
Tests are not built by default - you have to enable the test system, and build the tests.&lt;br /&gt;
&lt;br /&gt;
You enable tests by adding an '''ENABLE_TESTING()''' line to the top of your CMakeLists.txt file.&lt;br /&gt;
&lt;br /&gt;
In some configurations, there may be a build system option to turn on (or off) the compilation of tests. At this stage, you have to enable the '''BUILD_TESTING''' option in KDE4 modules, however this may go away in the near future, as later version of CMake can build the test applications on demand.&lt;br /&gt;
&lt;br /&gt;
If the tests are still not building, you might want to issue make buildtests in tests directory.&lt;br /&gt;
&lt;br /&gt;
=== Adding Tests ===&lt;br /&gt;
&lt;br /&gt;
You add a single test to the list of all tests that can be run by using &lt;br /&gt;
'''ADD_TEST''', which takes a number of arguments:&lt;br /&gt;
* The first argument is a display name for the test. This is required.&lt;br /&gt;
* The second argument is the name of the executable to be run (including the path to that executable, if required). This is required.&lt;br /&gt;
* Any following arguments are passed to the executable. These are optional, and are usually omitted for QTestLib tests.&lt;br /&gt;
&lt;br /&gt;
Note that '''ADD_TEST''' does nothing if '''ENABLE_TESTING()''' has not been run.&lt;br /&gt;
&lt;br /&gt;
When choosing a display name, you should adopt a similar convention to the existing tests (e.g. in kdelibs/kdecore, all the display names start with kdecore-, which makes it easy to find the failing test if you run all the tests in kdelibs). If there are no existing tests, using a submodule prefix is probably a good idea.&lt;br /&gt;
&lt;br /&gt;
The executable doesn't need to be something you build, but it will be for QTestLib, and many other tests. Remember that you need to specify the path, so this normally looks something like &amp;quot;${EXECUTABLE_OUTPUT_PATH}/testapp&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
=== KDE4 CMake Recipe for QTestLib ===&lt;br /&gt;
&lt;br /&gt;
If you are working in a KDE4 environment, then it is pretty easy to get CMake set up to build and run a test on demand.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
set( kwhatevertest_SRCS kwhateverest.cpp )&lt;br /&gt;
&lt;br /&gt;
kde4_add_unit_test( kwhatevertest&lt;br /&gt;
  TESTNAME ksubmodule-kwhatevertest&lt;br /&gt;
  ${kwhatevertest_SRCS}&lt;br /&gt;
)&lt;br /&gt;
&lt;br /&gt;
target_link_libraries( kwhatevertest&lt;br /&gt;
  ${KDE4_KDECORE_LIBS}&lt;br /&gt;
  ${QT_QTTEST_LIBRARY}&lt;br /&gt;
)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You are meant to replace &amp;quot;kwhatevertest&amp;quot; with the name of your test application. The target_link_libraries() line will need to contain whatever libraries are needed for the feature you are testing, so if it is a GUI feature, you'll likely need to use &amp;quot;${KDE4_KDEUI_LIBS}.&lt;br /&gt;
&lt;br /&gt;
=== Running the Tests ===&lt;br /&gt;
To run all tests, you can just &amp;quot;make test&amp;quot;. This will work through each of the tests that have been added (at any lower level) using '''kde4_add_unit_test''', provided that you have '''include(KDE4Defaults)''' in your CMakeLists.txt.&lt;br /&gt;
&lt;br /&gt;
This is equivalent to running the &amp;quot;ctest&amp;quot; executable with no arguments. If you want finer grained control over which tests are run or the output format, you can use additional arguments. These are explained in the ctest man page (&amp;quot;man ctest&amp;quot; on a *nix system, or run &amp;quot;ctest --help-full&amp;quot;).&lt;br /&gt;
&lt;br /&gt;
To run a single test, use '''./tutorial1.shell''' rather than just '''./tutorial1''', this will make it use the locally-built version of the shared libraries you're testing, rather than the installed ones.&lt;br /&gt;
&lt;br /&gt;
=== Further Reading ===&lt;br /&gt;
&lt;br /&gt;
Chapter 8 of the [http://www.kitware.com/products/cmakebook.html  CMake Book] provides a detailed description of how to do testing with CMake. Also see Appendix B for more on CTest and the special commands you can use.&lt;br /&gt;
&lt;br /&gt;
Various sections of the CMake Wiki, especially [http://www.cmake.org/Wiki/CMake_Testing_With_CTest CTest testing]&lt;br /&gt;
&lt;br /&gt;
==Tutorial 7: Integrating with qmake==&lt;br /&gt;
&lt;br /&gt;
TODO&lt;br /&gt;
&lt;br /&gt;
==Tutorial 8: XML output==&lt;br /&gt;
TODO&lt;br /&gt;
&lt;br /&gt;
==Tutorial 9: KDE specifics ==&lt;br /&gt;
For KDE specific enhancements see [http://api.kde.org/4.0-api/kdelibs-apidocs/kdecore/html/qtest__kde_8h.html API dox]&lt;br /&gt;
&lt;br /&gt;
TODO&lt;br /&gt;
&lt;br /&gt;
== Alternative tools for testing ==&lt;br /&gt;
&lt;br /&gt;
There are a range of alternative testing approaches that can&lt;br /&gt;
be used either with unit tests, or as an addition to the unit tests. &lt;br /&gt;
&lt;br /&gt;
===Static tests===&lt;br /&gt;
As noted in the introduction, unit tests are dynamic tests - they exercise the compiled code. Static tests are slightly different - they look for problems in source code, rather than making sure that the object code runs correctly.&lt;br /&gt;
&lt;br /&gt;
Static test tools tend to identify completely different types of problems to unit tests, and you should seek to use them both. &lt;br /&gt;
&lt;br /&gt;
For more information on using static tests, see [[../Code Checking|the Code Checking tutorial]].&lt;br /&gt;
&lt;br /&gt;
===Coverage tools and valgrind===&lt;br /&gt;
TODO &lt;br /&gt;
&lt;br /&gt;
=== GUI application testing - Squish and KDExecutor ===&lt;br /&gt;
[http://www.froglogic.de/pg?id=Products&amp;amp;category=squish&amp;amp;sub=overview&amp;amp;subsub=overview Squish] by [http://www.froglogic.de froglogic] and [http://www.kdab.net/?page=products&amp;amp;sub=kdexecutor KDExecutor] by [http://www.kdab.net Klarälvdalens Datakonsult (KDAB)] are commercial tools that facilitate GUI testing.&lt;br /&gt;
&lt;br /&gt;
==Conclusions==&lt;br /&gt;
TODO&lt;br /&gt;
&lt;br /&gt;
[[Category:KDE4]]&lt;/div&gt;</summary>
		<author><name>Shaforostoff</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Schedules/KDE4/4.3_Feature_Plan</id>
		<title>Schedules/KDE4/4.3 Feature Plan</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Schedules/KDE4/4.3_Feature_Plan"/>
				<updated>2009-01-27T14:36:54Z</updated>
		
		<summary type="html">&lt;p&gt;Shaforostoff: /* kdesdk */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This is a list of planned features for the 4.3 release.&lt;br /&gt;
&lt;br /&gt;
See also:&lt;br /&gt;
* [[Schedules/KDE4/4.3 Release Schedule]]&lt;br /&gt;
* [[Schedules/KDE4/4.2 Feature Plan]]&lt;br /&gt;
* [[Schedules/KDE4/4.3 Release Goals]]&lt;br /&gt;
&lt;br /&gt;
Legend:&lt;br /&gt;
* todo =&amp;gt; not started yet&lt;br /&gt;
* in-progress =&amp;gt; started, but not completed yet&lt;br /&gt;
* done =&amp;gt; completed&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
= Other =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureTodo|Akonadi|Various Akonadi related items can be found here http://techbase.kde.org/Projects/PIM/Akonadi#Scheduled_for_4.3|kde-pim@kde.org|Akonadi Developers}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdelibs =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureTodo|KLocale|Investigate adding Currency Code and currency minor units support based on ISO 4217 (http://en.wikipedia.org/wiki/ISO_4217).|john@layt.net|John Layt}}&lt;br /&gt;
{{FeatureInProgress|Sonnet|Implement language detection|qbast@go2.pl|Jakub Stachowski}}&lt;br /&gt;
{{FeatureTodo|Sonnet|Integrate language detection with spellchecking|qbast@go2.pl|Jakub Stachowski}}&lt;br /&gt;
{{FeatureTodo|Sonnet|Integrate language detection with strigi|qbast@go2.pl|Jakub Stachowski}}&lt;br /&gt;
{{FeatureTodo|KCalendarSystem|Add new astronomical calculation support classes to be used in kdelibs to build new astronomically based calendar systems, and in kdepim to build new version of libkholiday.|john@layt.net|John Layt}}&lt;br /&gt;
{{FeatureTodo|KCalendarSystem|Add new calendar systems: Indian Civil (Saka), Ethiopean, Chinese, Pure Julian, Pure Gregorian, etc.|john@layt.net|John Layt}}&lt;br /&gt;
{{FeatureTodo|KDEPrint|If no file printing support in Qt4.5, migrate FilePrinter class from Okular to enable file printing for all apps via QPrinter.  To be discussed on k-c-d first.|john@layt.net|John Layt}}&lt;br /&gt;
{{FeatureTodo|KDEPrint|Add framework for standard actions for 'Send to...' for e-mail, fax, etc by printing to PDF/PS.|john@layt.net|John Layt}}&lt;br /&gt;
{{FeatureTodo|new bookmark system|Port KBookmarks to akonadi/nepomuk. Will need help on this. [[Projects/PIM/Akonadi/Bookmarks|Details]]|xavier.vello@gmail.com|Xavier Vello}}&lt;br /&gt;
{{FeatureTodo|kdeui|entries to help menu and aboutdata pointing to UserBase entry and forum.kde.org|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdebase-workspace =&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 !! Project !! Description !! Contact&lt;br /&gt;
&lt;br /&gt;
|- border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; style=&amp;quot;text-align: center&amp;quot; |Non-Plasma, Non-KWin&lt;br /&gt;
{{FeatureTodo|Kxkb|Support for languages in keyboard layout descriptions|rysin:AT:kde.org|Andriy Rysin}}&lt;br /&gt;
{{FeatureTodo|PolicyKit integration|Import PolicyKit-KDE from extragear|drf54321@gmail.com|Dario Freddi}}&lt;br /&gt;
{{FeatureTodo|Solid Actions KCM|Import Solid actions KControl module from playground|ben@eclipse.endoftheinternet.org|Ben Cooksley}}&lt;br /&gt;
&lt;br /&gt;
|- border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; style=&amp;quot;text-align: center&amp;quot; |KRunner&lt;br /&gt;
&lt;br /&gt;
|- border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; style=&amp;quot;text-align: center&amp;quot; |Plasma - Priority Features&lt;br /&gt;
&lt;br /&gt;
|- border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; style=&amp;quot;text-align: center&amp;quot; |Plasma&lt;br /&gt;
{{FeatureTodo|Now Playing data engine|Support for MPD|kde:AT:randomguy3.me.uk|Alex Merry}}&lt;br /&gt;
|- border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; style=&amp;quot;text-align: center&amp;quot; |KWin - Core&lt;br /&gt;
{{FeatureTodo|KWin|Redesign KWin system settings GUI|lmurray@undefinedfire.com|Lucas Murray}}&lt;br /&gt;
{{FeatureTodo|KWin|ARGB support for decorations|lmurray@undefinedfire.com|Lucas Murray}}&lt;br /&gt;
{{FeatureTodo|KWin|Improved active screen edges|lmurray@undefinedfire.com|Lucas Murray}}&lt;br /&gt;
{{FeatureInProgress|KWin|Window docking/quick tiling|lmurray@undefinedfire.com|Lucas Murray}}&lt;br /&gt;
|- border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; style=&amp;quot;text-align: center&amp;quot; |KWin - Desktop Effects&lt;br /&gt;
{{FeatureInProgress|KWin|Improved mouse mark/scribble effect|lmurray@undefinedfire.com|Lucas Murray}}&lt;br /&gt;
{{FeatureTodo|KWin|Expand present windows into other effects (E.g. Desktop Grid)|kde@martin-graesslin.com|Martin Gräßlin}}&lt;br /&gt;
{{FeatureDone|KWin|Fade desktop effect (Desktop switcher)|lmurray@undefinedfire.com|Lucas Murray}}&lt;br /&gt;
{{FeatureDone|KSysguard|Added GetHotNewStuff support|a@b.com|name}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= kdepimlibs =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureTodo|Buildsystem|Require OpenLDAP (coordinate with the Windows team)|winter@kde.org|Allen Winter}}&lt;br /&gt;
{{FeatureTodo|Buildsystem|Require Cyrus-SASL (coordinate with the Windows team)|winter@kde.org|Allen Winter}}&lt;br /&gt;
{{FeatureTodo|libkleopatraclient|New interface library for kleopatra uiserver clients|marc@kdab.net|Marc Mutz}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdenetwork =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureInProgress|Kopete|UPnp Support|mattr@kde.org|Matt Rogers}}&lt;br /&gt;
{{FeatureInProgress|Kopete|Updated contact list interface (uses Qt 4 rather than Qt 3)|mattr@kde.org|Matt Rogers}}&lt;br /&gt;
{{FeatureTodo|Kopete|Update Kopete to better support Decibel|kopete-devel@kde.org|Kopete Developers}}&lt;br /&gt;
{{FeatureTodo|Kopete|Jabber Jingle video support|detlev.casanova@gmail.com|Detlev Casanova}}&lt;br /&gt;
{{FeatureTodo|Kopete|Jabber Jingle ICE support|detlev.casanova@gmail.com|Detlev Casanova}}&lt;br /&gt;
{{FeatureInProgress|Kopete|Contacts plasmoid|earthwings@gentoo.org|Dennis Nienhüser}}&lt;br /&gt;
{{FeatureInProgress|KGet|MultiSource-Downloading|l.appelhans@gmx.de|Lukas Appelhans}}&lt;br /&gt;
{{FeatureTodo|KGet|Support mms://-protocol, see https://launchpad.net/libmms|l.appelhans@gmx.de|Lukas Appelhans}}&lt;br /&gt;
{{FeatureTodo|KGet|MLDonkey-Plugin based on libkmldonkey|l.appelhans@gmx.de|Lukas Appelhans}}&lt;br /&gt;
{{FeatureTodo|KGet|Advanced Details|l.appelhans@gmx.de|Lukas Appelhans}}&lt;br /&gt;
{{FeatureInProgress|KRDC|NX support|gdavid.devel@gmail.com|David Gross}}&lt;br /&gt;
{{FeatureTodo|KRDC|Minimal-clutter mode to optimize screen real estate usage|gpothier@gmail.com|Guillaume Pothier}}&lt;br /&gt;
{{FeatureInProgress|Telepathy|Telepathy-specification compliant Account Manager using KWallet to store account data|grundleborg@googlemail.com|George Goldberg}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdepim =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureInProgress|Akonadi|Migration of contacts and calendar data from KResource to Akonadi ([http://techbase.kde.org/Projects/PIM/Akonadi#Scheduled_for_4.3 Details])|kde-pim@kde.org|Volker Krause, Kevin Krammer, Tobias Koenig}}&lt;br /&gt;
{{FeatureInProgress|Akregator|Support for syncing the feed list with Google Reader |osterfeld@kde.org|Frank Osterfeld}}&lt;br /&gt;
{{FeatureTodo|[http://kblogger.pwsp.net KBlogger]|KBlogger, a blogging application|christian_weilbach@.web.de|Christian Weilbach}}&lt;br /&gt;
{{FeatureTodo|KBlogger|Port to use KRichTextEdit (Or KMEditor)|steveire@gmail.com|Stephen Kelly}}&lt;br /&gt;
{{FeatureInProgress|Kjots| Create and port to akonadi model. |steveire@gmail.com|Stephen Kelly}}&lt;br /&gt;
{{FeatureTodo|Kjots| Add support for nepomuk including tagging, possibly storage, and linking. Also a nepomuk tag proxy model for representing the structure as tagged.|steveire@gmail.com|Stephen Kelly}}&lt;br /&gt;
{{FeatureInProgress|Kjots| Create plasmoid capable of showing the entire tree, or a single book.|steveire@gmail.com|Stephen Kelly}}&lt;br /&gt;
{{FeatureTodo|Kjots| Email KJots pages using default mail client ({{bug|124509}}. |steveire@gmail.com|Stephen Kelly}}&lt;br /&gt;
{{FeatureInProgress|Kleopatra|OpenPGP support|marc@kdab.net|Marc Mutz (Gpg4win)}}&lt;br /&gt;
{{FeatureDone|KMail|Add support for HTML images|yez@familieschepers.nl|Edwin Schepers}}&lt;br /&gt;
{{FeatureTodo|KMail|Use asynchronous Kleo|marc@kdab.net|Marc Mutz}}&lt;br /&gt;
{{FeatureTodo|KMail|Save metadata about attachments to Nepomuk when saving them|onurf@su.sabanciuniv.edu|Ismail Onur Filiz}}&lt;br /&gt;
{{FeatureTodo|KNode|Port to use KRichTextEdit (Or KMEditor)|steveire@gmail.com|Stephen Kelly}}&lt;br /&gt;
{{FeatureTodo|Kontact|Support for Kontact wide profiles|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureTodo|Kontact|Tip-of-the-Day summary|molkentin@kde.org|Daniel Molkentin}}&lt;br /&gt;
{{FeatureTodo|KOrganizer|Support for extended free-busy lists|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureInProgress|KPilot|Port old conduits to new base conduit architecture and KDE4/Qt4|jkasper@kde.org|Jason 'vanRijn' Kasper}}&lt;br /&gt;
{{FeatureInProgress|KPilot|Finish Keyring conduit, base conduit code and test cases, category syncing|jkasper@kde.org|Jason 'vanRijn' Kasper}}&lt;br /&gt;
{{FeatureInProgress|KContactManager|A new Akonadi-based address book to replace KAddressbook|tokoe@kde.org|Tobias Koenig}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdeutils =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureTodo|printer-applet|Restore feature parity with KDEPrint3 where possible.|john@layt.net|John Layt}}&lt;br /&gt;
{{FeatureTodo|Okteta|make editing capability to Decoding table |kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|add Kate-like search tool|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|add support for import by drop, both url and data|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|copy again puts also a value or char variant of the data to clipboard|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|add support for memory mapping of files|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|add further export formats like s-record and intel 16|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|add support for jobs like io, printing, string search or filter|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|kwalletmanager|Move kwalletmanager to the Model/View architecture and redesign the UI.|lemma@confuego.org|Michael Leupold}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdebindings =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureTodo|krossjava|Integrate into e.g. SuperKaramba and fix issues that show up.|mail@dipe.org|Sebastian Sauer}}&lt;br /&gt;
{{FeatureTodo|krossjava|Documentation++|mail@dipe.org|Sebastian Sauer}}&lt;br /&gt;
{{FeatureTodo|krossfalcon|Documentation++|mail@dipe.org|Sebastian Sauer}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdegames =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureInProgress|Killbots|Add &amp;quot;sonic screwdriver&amp;quot; functionality.|parker.coates@gmail.com|Parker Coates}}&lt;br /&gt;
{{FeatureTodo|Killbots|Add a tutorial for beginners.|parker.coates@gmail.com|Parker Coates}}&lt;br /&gt;
{{FeatureTodo|Kolf|Replace with Kolf 2 (please help!)|majewsky@gmx.net|Stefan Majewsky}}&lt;br /&gt;
{{FeatureTodo|KsirK|rewrite AI code or at least correct most problems related in bug #170777. Volunteers wanted!|kleag@free.fr|Gaël de Chalendar}}&lt;br /&gt;
{{FeatureTodo|KsirK|Previous/Next in start new game as described in bug #170774|kleag@free.fr|Gaël de Chalendar}}&lt;br /&gt;
{{FeatureTodo|KsirK|Polish the skin editor (doc, contextual help, ...)|kleag@free.fr|Gaël de Chalendar}}&lt;br /&gt;
{{FeatureTodo|KsirK|Boost playing over Jabber|kleag@free.fr|Gaël de Chalendar}}&lt;br /&gt;
{{FeatureTodo|KSpaceDuel|rewrite AI code|dirkrathlev@gmx.de|Dirk Rathlev}}&lt;br /&gt;
{{FeatureInProgress|ktron|Port and remake the KTron game for KDE 4.3|legolas@legolasweb.nl|Stas Verberkt}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdeadmin =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureTodo|KGrubEditor|Integrate KGrubEditor into KDE Admin http://sourceforge.net/projects/kgrubeditor. Approved by Nicolas Ternisien &amp;lt;nicolas.ternisien@gmail.com&amp;gt; |artemis_dot_fowl_dot_2007@gmail_dot_com|Konstantinos Smanis}}&lt;br /&gt;
{{FeatureTodo|Guidance|Port Guidance to KDE 4, and move it to KDE Admin http://www.simonzone.com/software/guidance/.|nicolas.ternisien@gmail.com|Nicolas Ternisien}}&lt;br /&gt;
{{FeatureTodo|system-config-printer-kde|Restore feature parity with KDEPrint3 where possible.|john@layt.net|john Layt}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdesdk =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureInProgress|Lokalize|XLIFF support|shafff-at-ukr.net|Nick Shaforostoff}}&lt;br /&gt;
{{FeatureInProgress|Lokalize|various Translation Memory enhancements|shafff-at-ukr.net|Nick Shaforostoff}}&lt;br /&gt;
{{FeatureInProgress|Lokalize|Kross-based scripting|shafff-at-ukr.net|Nick Shaforostoff}}&lt;br /&gt;
{{FeatureTodo|Lokalize|QA: glossary checklists|shafff-at-ukr.net|Nick Shaforostoff}}&lt;br /&gt;
{{FeatureTodo|KAppTemplate|Add DBUS support in templates|annma@kde.org|Anne-Marie Mahfouf}}&lt;br /&gt;
{{FeatureInProgress|Umbrello|Replace all q3 widgets in the refactoring assistant|andi.fischer@hispeed.ch|Andi Fischer}}&lt;br /&gt;
{{FeatureInProgress|Umbrello|Merge in SoC qgraphicsview port branch|krishna.ggk@gmail.com|Gopala Krishna A}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdeedu =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureTodo|KAlgebra|Export to MathML Presentation Markup|aleixpol@gmail.com|Aleix Pol}}&lt;br /&gt;
{{FeatureTodo|KAlgebra|Some integration with the new KFormula widget|aleixpol@gmail.com|Aleix Pol}}&lt;br /&gt;
{{FeatureInProgress|KAlgebra|Add ability to draw 3D plots in cylindrical and spherical coordinates.|orgyforever@gmail.com|Percy Camilo Triveño Aucahuasi}}&lt;br /&gt;
{{FeatureTodo|Kalzium|Port Kalzium's periodic table to use new QGraphicsView.|marcus@cryos.org|Marcus D. Hanwell}}&lt;br /&gt;
{{FeatureTodo|Kalzium|Remove the libavogadro snapshot, depend on libavogadro directly.|jacob@math.jussieu.fr|Benoit Jacob}}&lt;br /&gt;
{{FeatureTodo|Kalzium|Plasmoid to access Kalzium database|cniehaus@kde.org|Carsten Niehaus}}&lt;br /&gt;
{{FeatureInProgress|KEduca|Rewrite of the classic test writing/taking application|matt@milliams.com|Matt Williams}}&lt;br /&gt;
{{FeatureTodo|KHangMan|Integrate an editor|annma@kde.org|Anne-Marie Mahfouf}}&lt;br /&gt;
{{FeatureTodo|KHangMan|Plasmoid|annma@kde.org|Anne-Marie Mahfouf}}&lt;br /&gt;
{{FeatureTodo|KHangMan|Theme manager|annma@kde.org|Anne-Marie Mahfouf}}&lt;br /&gt;
{{FeatureTodo|Kig|Properties dialog for objects.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureTodo|Kig|Improve construction of bisect lines.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureTodo|Kig|Improve feedback when constructing objects.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureTodo|Kig|More geometric objects.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureTodo|Kig|Script objects as macros (to be reused more than once).|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureTodo|Kig|Improve the Cabri import filter.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureTodo|Kig|Improve the new/edit script wizard.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureTodo|KLettres|Visual Indicator when letter is wrong|annma@kde.org|Anne-Marie Mahfouf}}&lt;br /&gt;
{{FeatureTodo|KLettres|Number support|annma@kde.org|Anne-Marie Mahfouf}}&lt;br /&gt;
{{FeatureTodo|KLettres|Theme manager|annma@kde.org|Anne-Marie Mahfouf}}&lt;br /&gt;
{{FeatureTodo|KStars|Marble widget for Geolocation tool|mboquien@free.fr|Médéric Boquien}}&lt;br /&gt;
{{FeatureTodo|KStars|Better printed star charts|kstars@30doradus.org|Jason Harris}}&lt;br /&gt;
{{FeatureTodo|KStars|Sync KStars time from device|mutlaqja@ikarustech.com|Jasem Mutlaq}}&lt;br /&gt;
{{FeatureTodo|KStars|Better rendering of comets/asteroids|kstars@30doradus.org|Jason Harris}}&lt;br /&gt;
{{FeatureTodo|KStars|Texture mapping of the skymap???|kstars@30doradus.org|Jason Harris}}&lt;br /&gt;
{{FeatureTodo|KStars|Improve Observing List Wizard|akarshsimha@gmail.com|Akarsh Simha}}&lt;br /&gt;
{{FeatureTodo|KStars|Display Comet Magnitudes whenever possible|akarshsimha@gmail.com|Akarsh Simha}}&lt;br /&gt;
{{FeatureTodo|KStars|Information links in-place for each technical term|akarshsimha@gmail.com|Akarsh Simha}}&lt;br /&gt;
{{FeatureTodo|KStars|Tool to suggest star-hopping techniques???|akarshsimha@gmail.com|Akarsh Simha}}&lt;br /&gt;
{{FeatureTodo|KStars|Extend conjunction tool to have one object unspecified, but have a genre of objects specified instead|akarshsimha@gmail.com|Akarsh Simha}}&lt;br /&gt;
{{FeatureTodo|KStars|Simulate Lunar Eclipses|akarshsimha@gmail.com|Akarsh Simha}}&lt;br /&gt;
{{FeatureTodo|KStars|Simulate Satellites and Iridium Flares|akarshsimha@gmail.com|Akarsh Simha}}&lt;br /&gt;
{{FeatureTodo|KStars|Social and Geographical Integration for KStars|akarshsimha@gmail.com|Akarsh Simha}}&lt;br /&gt;
{{FeatureTodo|KTurtle|Optional rulers/grid for canvas units|piacentini@kde.org|Mauricio Piacentini}}&lt;br /&gt;
{{FeatureTodo|Marble|Export map to MxN pixel bitmap|inge@lysator.liu.se|Inge Wallin}}&lt;br /&gt;
{{FeatureTodo|Marble|Bookmarks|inge@lysator.liu.se|Inge Wallin}}&lt;br /&gt;
{{FeatureTodo|Marble|Support for MarbleWidget::setEnabled( bool )|inge@lysator.liu.se|Inge Wallin}}&lt;br /&gt;
{{FeatureTodo|Marble|Map Contents translation|tackat@kde.org|Torsten Rahn}}&lt;br /&gt;
{{FeatureTodo|Marble|Editing GeoDataFeatures|tackat@kde.org|Torsten Rahn}}&lt;br /&gt;
{{FeatureInProgress|Marble|Layer Management Class|rahn@kde.org|Torsten Rahn}}&lt;br /&gt;
{{FeatureInProgress|Marble|Plugin architecture for map layers|rahn@kde.org|Torsten Rahn}}&lt;br /&gt;
{{FeatureInProgress|Marble|Extending GeoPainter|rahn@kde.org|Torsten Rahn}}&lt;br /&gt;
{{FeatureInProgress|Marble|Marble Runners|hdevalence@gmail.com|Henry de Valence}}&lt;br /&gt;
{{FeatureInProgress|Marble|GeoClue Integration |jensmh@gmx.de|Jens-Michael Hoffmann}}&lt;br /&gt;
{{FeatureInProgress|Marble|Routing |jensmh@gmx.de|Jens-Michael Hoffmann}}&lt;br /&gt;
{{FeatureInProgress|Marble|More map providers (WMS?) |jensmh@gmx.de|Jens-Michael Hoffmann}}&lt;br /&gt;
{{FeatureInProgress|Marble|Winkel Triple projection / equivalent |hdevalence@gmail.com|Henry de Valence}}&lt;br /&gt;
{{FeatureInProgress|Marble|Marble WorldClock Plasmoid|hdevalence@gmail.com|Henry de Valence}}&lt;br /&gt;
{{FeatureInProgress|Marble|Qt-Version settings dialog|hdevalence@gmail.com|Henry de Valence}}&lt;br /&gt;
{{FeatureInProgress|Marble|Panoramio Support||Shashank Singh}}&lt;br /&gt;
{{FeatureInProgress|Marble|Twitter Plugin||Shashank Singh}}&lt;br /&gt;
{{FeatureInProgress|Marble|TimeZone Support|tackat@kde.org|Torsten Rahn}}&lt;br /&gt;
{{FeatureInProgress|Marble|Support for other planets and the moon|tackat@kde.org|Torsten Rahn}}&lt;br /&gt;
{{FeatureInProgress|Marble|DGML2 Support|tackat@kde.org|Torsten Rahn}}&lt;br /&gt;
{{FeatureInProgress|Marble|Support for imperial units|tackat@kde.org|Torsten Rahn}}&lt;br /&gt;
{{FeatureInProgress|Marble|Graticule plugin|tackat@kde.org|Torsten Rahn}}&lt;br /&gt;
{{FeatureInProgress|Marble|MeasureTool plugin|tackat@kde.org|Torsten Rahn}}&lt;br /&gt;
{{FeatureInProgress|Marble|Port authors list from the Qt-About dialog to the KDE-About dialog|tackat@kde.org|Torsten Rahn}}&lt;br /&gt;
{{FeatureInProgress|Marble|Basic KML support|ps_ml@gmx.de|Patrick Spendrin}}&lt;br /&gt;
{{FeatureInProgress|Marble|GeoData Model/View Visualization|ps_ml@gmx.de|Patrick Spendrin}}&lt;br /&gt;
{{FeatureInProgress|Marble|More generic projection support|inge@lysator.liu.se|Inge Wallin}}&lt;br /&gt;
{{FeatureInProgress|Marble|Network plugins|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureInProgress|Parley|Declensions|frederik.gladhorn@kdemail.net|Frederik Gladhorn}}&lt;br /&gt;
{{FeatureTodo|Step|Improve GUI for creating softbody|ksvladimir@gmail.com|Vladimir Kuznetsov}}&lt;br /&gt;
{{FeatureTodo|Step|Use common constraints handling code for collisions|ksvladimir@gmail.com|Vladimir Kuznetsov}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdemultimedia =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureTodo|JuK|Remove Qt/KDE3 support lib requirements|michael.pyne@kdemail.net|Michael Pyne}}&lt;br /&gt;
{{FeatureTodo|JuK|Allow setting covers directly from URLs supported by KIO - drag/drop already allows this however|michael.pyne@kdemail.net|Michael Pyne}}&lt;br /&gt;
{{FeatureDone|JuK|Use XCOMPOSITE real transparency when available for the track announcement popup|michael.pyne@kdemail.net|Michael Pyne}}&lt;br /&gt;
{{FeatureTodo|JuK|Allow disabling crossfade|michael.pyne@kdemail.net|Michael Pyne}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdeaccessibility =&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 !! Project !! Description !! Contact&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdegraphics =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureInProgress|Okular|Generator for Mobipocket format|qbast@go2.pl|Jakub Stachowski}}&lt;br /&gt;
{{FeatureInProgress|strigi|Thumbnailer and analyzer for Mobipocket format|qbast@go2.pl|Jakub Stachowski}}&lt;br /&gt;
{{FeatureDone|strigi|Analyzer for epub format|qbast@go2.pl|Jakub Stachowski}}&lt;br /&gt;
{{FeatureTodo|Okular|Sound annotations.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureTodo|Okular|Link annotations.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureTodo|Okular|Caret annotations.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureTodo|Okular|Support .snp and .emf file formats|bradh@kde.org|Brad Hards}}&lt;br /&gt;
{{FeatureTodo|Okular|Synctex support.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureTodo|Okular|Rich-text for annotations text.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdebase-runtime =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureTodo|kio_bookmarks|Refactoring using the new bookmarks system and qt/plasma for displaying|xavier.vello@gmail.com|Xavier Vello}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdebase-apps =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureInProgress|konq_thumbnails|Basic thumbnail support for KHTMLPart views(almost finished, now cleanup code)|yinshuiboy@gmail.com|Siyuan Cao}}&lt;br /&gt;
{{FeatureTodo|konq_thumbnails|thumbnail support for all KonqFrame|yinshuiboy@gmail.com|Siyuan Cao}}&lt;br /&gt;
{{FeatureTodo|konq_thumbnails|more thumbnail page styles and customization|yinshuiboy@gmail.com|Siyuan Cao}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdeplasma-addons =&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 !! Project !! Description !! Contact&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Shaforostoff</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Projects/Plasma/AppsMenuReorganization</id>
		<title>Projects/Plasma/AppsMenuReorganization</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Projects/Plasma/AppsMenuReorganization"/>
				<updated>2009-01-24T20:02:36Z</updated>
		
		<summary type="html">&lt;p&gt;Shaforostoff: /* Disk tools */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Apps Menu Structure Proposal'''. I'd like to make apps menu more fine-grained by introducing submenus&lt;br /&gt;
&lt;br /&gt;
==Internet==&lt;br /&gt;
===Browsing===&lt;br /&gt;
*Konqueror&lt;br /&gt;
*Firefox&lt;br /&gt;
*Opera&lt;br /&gt;
*Akregator&lt;br /&gt;
&lt;br /&gt;
===File download and sharing===&lt;br /&gt;
*aMule&lt;br /&gt;
*KTorrent&lt;br /&gt;
*KGet&lt;br /&gt;
*KFtpGrabber&lt;br /&gt;
===Communication===&lt;br /&gt;
*KMail&lt;br /&gt;
*Kopete&lt;br /&gt;
*Konversation&lt;br /&gt;
*Kontact&lt;br /&gt;
*KAddressBook&lt;br /&gt;
*Knode&lt;br /&gt;
===Connectivity===&lt;br /&gt;
*KPPP&lt;br /&gt;
*KRDC&lt;br /&gt;
*KRFB&lt;br /&gt;
*networkmanager&lt;br /&gt;
*&amp;lt;monitoring apps?&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Multimedia==&lt;br /&gt;
===Playing and Management===&lt;br /&gt;
*amarok&lt;br /&gt;
*&amp;lt;videoplayers&amp;gt;&lt;br /&gt;
*&amp;lt;tag editors&amp;gt;&lt;br /&gt;
===Creation and editing===&lt;br /&gt;
*Kino&lt;br /&gt;
*cinelerra&lt;br /&gt;
*LiVES&lt;br /&gt;
*Open Movie Editor&lt;br /&gt;
*kdenlive&lt;br /&gt;
*Audacity&lt;br /&gt;
*Wink screencasting&lt;br /&gt;
&lt;br /&gt;
==Graphics==&lt;br /&gt;
===Viewing and Management===&lt;br /&gt;
*Okular&lt;br /&gt;
*Gwenview&lt;br /&gt;
*Digikam&lt;br /&gt;
===Creation and editing===&lt;br /&gt;
*Krita&lt;br /&gt;
*Kolourpaint&lt;br /&gt;
*Gimp&lt;br /&gt;
*Blender&lt;br /&gt;
*Inkscape&lt;br /&gt;
&lt;br /&gt;
===Desktop publishing===&lt;br /&gt;
*scribus&lt;br /&gt;
*kile&lt;br /&gt;
*lyx&lt;br /&gt;
==Education==&lt;br /&gt;
*Blinken&lt;br /&gt;
===Lingustic===&lt;br /&gt;
*KHangMan&lt;br /&gt;
*KWordQuiz&lt;br /&gt;
*Parley&lt;br /&gt;
===Math===&lt;br /&gt;
*KmPlot&lt;br /&gt;
*KAlgebra&lt;br /&gt;
*Kig&lt;br /&gt;
===Science===&lt;br /&gt;
*KStars&lt;br /&gt;
*Kalzium&lt;br /&gt;
*KTurtle&lt;br /&gt;
*Step&lt;br /&gt;
==Office==&lt;br /&gt;
*k3b&lt;br /&gt;
*Okular&lt;br /&gt;
*Kwrite&lt;br /&gt;
===Time management and Work Organization===&lt;br /&gt;
*KOrganizer&lt;br /&gt;
*KTimeTracker (remove from menu -- present as plasmoid)&lt;br /&gt;
*Kalarm (remove from menu -- present as plasmoid?)&lt;br /&gt;
*KNotes&lt;br /&gt;
*kontact&lt;br /&gt;
*&amp;lt;Syncing apps&amp;gt;&lt;br /&gt;
===Accounting===&lt;br /&gt;
*?&lt;br /&gt;
===OpenOffice.org===&lt;br /&gt;
*&amp;lt;openoffice apps&amp;gt;&lt;br /&gt;
===KOffice===&lt;br /&gt;
*&amp;lt;koffice apps&amp;gt;&lt;br /&gt;
===Desktop publishing===&lt;br /&gt;
*scribus&lt;br /&gt;
*kile&lt;br /&gt;
*lyx&lt;br /&gt;
===Translation===&lt;br /&gt;
* [http://userbase.kde.org/Lokalize Lokalize]&lt;br /&gt;
*OmegaT&lt;br /&gt;
*&amp;lt;dictionaries&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==System Tools==&lt;br /&gt;
*dolphin&lt;br /&gt;
*Konsole&lt;br /&gt;
*Strigi search&lt;br /&gt;
*&amp;lt;Accessibility apps&amp;gt;&lt;br /&gt;
===Monitor===&lt;br /&gt;
*KSysGuard&lt;br /&gt;
*KSystemLog&lt;br /&gt;
===Disc tools===&lt;br /&gt;
*gparted&lt;br /&gt;
*filelight&lt;br /&gt;
*&amp;lt;backup app&amp;gt;&lt;br /&gt;
*k3b&lt;br /&gt;
&lt;br /&gt;
==Configuration==&lt;br /&gt;
*systemsettings&lt;br /&gt;
*yast&lt;br /&gt;
*&amp;lt;...&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Engineering==&lt;br /&gt;
*kompare&lt;br /&gt;
===Programming===&lt;br /&gt;
*KDevelop&lt;br /&gt;
*KCachegrind&lt;br /&gt;
*&amp;lt;Version control tools?&amp;gt;&lt;br /&gt;
===Web-development===&lt;br /&gt;
*Quanta&lt;br /&gt;
===Translation===&lt;br /&gt;
* [http://userbase.kde.org/Lokalize Lokalize]&lt;br /&gt;
*OmegaT&lt;br /&gt;
&lt;br /&gt;
===CAD===&lt;br /&gt;
===Math===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Explanation'''&lt;br /&gt;
*if several apps fulfill the same function (i.e. konqueror, opera, firefox), then their title should be in form of %function% - %appname%: &amp;quot;Web-browser - Konqueror&amp;quot;, and they should be listed consequently&lt;br /&gt;
*We need special entries in .desktop files determining the priority (Menu-Priority, Menu-Priority-KDE, Menu-Priority-Gnome).&lt;br /&gt;
**Because the order is important&lt;br /&gt;
**apps with Menu-Priotity above 100 constant could be visually separated by the line (they are the main apps in the category)&lt;br /&gt;
**apps with Menu-Priotity below 10 may be hidden at all (i.e. they are rarely used by an average user)&lt;br /&gt;
**If category has only 1 item, the item should be displayed instead of category&lt;br /&gt;
**Statistics is needed for this (simple voting?)&lt;br /&gt;
*'Utilities' category isn't needed at all. For example, 'root terminal' should be in System.&lt;br /&gt;
*Plasmoids: a lot of small apps need to be turned into plasmoids.&lt;br /&gt;
**charselect should be callable from anywhere but K-Menu&lt;br /&gt;
**kcalc -- the same&lt;br /&gt;
**dictionary applet&lt;br /&gt;
&lt;br /&gt;
I like the way desktop widgets are displayed in Mac OS X (easy accessible any moment - e.g. clock, calendar, calc)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Alternatively, instead of 'Office' we could use 'Desktop Publishing',  &lt;br /&gt;
putting&lt;br /&gt;
'Groupware (Kontact)' into 'Internet' +merge 'Graphics' to 'Multimedia':&lt;br /&gt;
*Multimedia&lt;br /&gt;
*k3b&lt;br /&gt;
**Music&lt;br /&gt;
***Play and Manage (amarok, tag editors)&lt;br /&gt;
***Create and edit (Audacity)&lt;br /&gt;
**Video&lt;br /&gt;
***Play&lt;br /&gt;
***Create and edit (kino, etc)&lt;br /&gt;
**Graphics&lt;br /&gt;
***View and Manage (Gwenview, Digikam)&lt;br /&gt;
***Create and edit (Krita, Kolourpaint, Gimp)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Links:&lt;br /&gt;
*[http://standards.freedesktop.org/menu-spec/menu-spec-1.0.html#category-registry Freedesktop Menu Spec]&lt;br /&gt;
*[http://standards.freedesktop.org/desktop-entry-spec/latest/ Desktop file spec]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Critisism I recieved from kde-devel@ so far:&lt;br /&gt;
*.... submenus are bad. They do not seem very usable to me, especially when the structure is not evident: ...&lt;br /&gt;
**so it's better to look through all 10-20 entries (possibly in in each  &lt;br /&gt;
category) before finding app that you need?&lt;br /&gt;
**there should be no more then ~5 items in each category&lt;br /&gt;
*This breaks traditional alphabetical order...&lt;br /&gt;
**alphabetical order is of small value when user doesnt know the name of the  &lt;br /&gt;
app he/she is looking for.&lt;br /&gt;
*Somehow 11 items seems better than 4 submenus&lt;br /&gt;
**but I wrote only few apps, in real life there will be more apps&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
And they don't believe that the menu is for newcomers, experienced users use 'Search' field anyway.&lt;/div&gt;</summary>
		<author><name>Shaforostoff</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Projects/Plasma/AppsMenuReorganization</id>
		<title>Projects/Plasma/AppsMenuReorganization</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Projects/Plasma/AppsMenuReorganization"/>
				<updated>2009-01-24T20:01:41Z</updated>
		
		<summary type="html">&lt;p&gt;Shaforostoff: ing&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Apps Menu Structure Proposal'''. I'd like to make apps menu more fine-grained by introducing submenus&lt;br /&gt;
&lt;br /&gt;
==Internet==&lt;br /&gt;
===Browsing===&lt;br /&gt;
*Konqueror&lt;br /&gt;
*Firefox&lt;br /&gt;
*Opera&lt;br /&gt;
*Akregator&lt;br /&gt;
&lt;br /&gt;
===File download and sharing===&lt;br /&gt;
*aMule&lt;br /&gt;
*KTorrent&lt;br /&gt;
*KGet&lt;br /&gt;
*KFtpGrabber&lt;br /&gt;
===Communication===&lt;br /&gt;
*KMail&lt;br /&gt;
*Kopete&lt;br /&gt;
*Konversation&lt;br /&gt;
*Kontact&lt;br /&gt;
*KAddressBook&lt;br /&gt;
*Knode&lt;br /&gt;
===Connectivity===&lt;br /&gt;
*KPPP&lt;br /&gt;
*KRDC&lt;br /&gt;
*KRFB&lt;br /&gt;
*networkmanager&lt;br /&gt;
*&amp;lt;monitoring apps?&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Multimedia==&lt;br /&gt;
===Playing and Management===&lt;br /&gt;
*amarok&lt;br /&gt;
*&amp;lt;videoplayers&amp;gt;&lt;br /&gt;
*&amp;lt;tag editors&amp;gt;&lt;br /&gt;
===Creation and editing===&lt;br /&gt;
*Kino&lt;br /&gt;
*cinelerra&lt;br /&gt;
*LiVES&lt;br /&gt;
*Open Movie Editor&lt;br /&gt;
*kdenlive&lt;br /&gt;
*Audacity&lt;br /&gt;
*Wink screencasting&lt;br /&gt;
&lt;br /&gt;
==Graphics==&lt;br /&gt;
===Viewing and Management===&lt;br /&gt;
*Okular&lt;br /&gt;
*Gwenview&lt;br /&gt;
*Digikam&lt;br /&gt;
===Creation and editing===&lt;br /&gt;
*Krita&lt;br /&gt;
*Kolourpaint&lt;br /&gt;
*Gimp&lt;br /&gt;
*Blender&lt;br /&gt;
*Inkscape&lt;br /&gt;
&lt;br /&gt;
===Desktop publishing===&lt;br /&gt;
*scribus&lt;br /&gt;
*kile&lt;br /&gt;
*lyx&lt;br /&gt;
==Education==&lt;br /&gt;
*Blinken&lt;br /&gt;
===Lingustic===&lt;br /&gt;
*KHangMan&lt;br /&gt;
*KWordQuiz&lt;br /&gt;
*Parley&lt;br /&gt;
===Math===&lt;br /&gt;
*KmPlot&lt;br /&gt;
*KAlgebra&lt;br /&gt;
*Kig&lt;br /&gt;
===Science===&lt;br /&gt;
*KStars&lt;br /&gt;
*Kalzium&lt;br /&gt;
*KTurtle&lt;br /&gt;
*Step&lt;br /&gt;
==Office==&lt;br /&gt;
*k3b&lt;br /&gt;
*Okular&lt;br /&gt;
*Kwrite&lt;br /&gt;
===Time management and Work Organization===&lt;br /&gt;
*KOrganizer&lt;br /&gt;
*KTimeTracker (remove from menu -- present as plasmoid)&lt;br /&gt;
*Kalarm (remove from menu -- present as plasmoid?)&lt;br /&gt;
*KNotes&lt;br /&gt;
*kontact&lt;br /&gt;
*&amp;lt;Syncing apps&amp;gt;&lt;br /&gt;
===Accounting===&lt;br /&gt;
*?&lt;br /&gt;
===OpenOffice.org===&lt;br /&gt;
*&amp;lt;openoffice apps&amp;gt;&lt;br /&gt;
===KOffice===&lt;br /&gt;
*&amp;lt;koffice apps&amp;gt;&lt;br /&gt;
===Desktop publishing===&lt;br /&gt;
*scribus&lt;br /&gt;
*kile&lt;br /&gt;
*lyx&lt;br /&gt;
===Translation===&lt;br /&gt;
* [http://userbase.kde.org/Lokalize Lokalize]&lt;br /&gt;
*OmegaT&lt;br /&gt;
*&amp;lt;dictionaries&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==System Tools==&lt;br /&gt;
*dolphin&lt;br /&gt;
*Konsole&lt;br /&gt;
*Strigi search&lt;br /&gt;
*&amp;lt;Accessibility apps&amp;gt;&lt;br /&gt;
===Monitor===&lt;br /&gt;
*KSysGuard&lt;br /&gt;
*KSystemLog&lt;br /&gt;
===Disk tools===&lt;br /&gt;
*gparted&lt;br /&gt;
*&amp;lt;backup app&amp;gt;&lt;br /&gt;
*k3b&lt;br /&gt;
&lt;br /&gt;
==Configuration==&lt;br /&gt;
*systemsettings&lt;br /&gt;
*yast&lt;br /&gt;
*&amp;lt;...&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Engineering==&lt;br /&gt;
*kompare&lt;br /&gt;
===Programming===&lt;br /&gt;
*KDevelop&lt;br /&gt;
*KCachegrind&lt;br /&gt;
*&amp;lt;Version control tools?&amp;gt;&lt;br /&gt;
===Web-development===&lt;br /&gt;
*Quanta&lt;br /&gt;
===Translation===&lt;br /&gt;
* [http://userbase.kde.org/Lokalize Lokalize]&lt;br /&gt;
*OmegaT&lt;br /&gt;
&lt;br /&gt;
===CAD===&lt;br /&gt;
===Math===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Explanation'''&lt;br /&gt;
*if several apps fulfill the same function (i.e. konqueror, opera, firefox), then their title should be in form of %function% - %appname%: &amp;quot;Web-browser - Konqueror&amp;quot;, and they should be listed consequently&lt;br /&gt;
*We need special entries in .desktop files determining the priority (Menu-Priority, Menu-Priority-KDE, Menu-Priority-Gnome).&lt;br /&gt;
**Because the order is important&lt;br /&gt;
**apps with Menu-Priotity above 100 constant could be visually separated by the line (they are the main apps in the category)&lt;br /&gt;
**apps with Menu-Priotity below 10 may be hidden at all (i.e. they are rarely used by an average user)&lt;br /&gt;
**If category has only 1 item, the item should be displayed instead of category&lt;br /&gt;
**Statistics is needed for this (simple voting?)&lt;br /&gt;
*'Utilities' category isn't needed at all. For example, 'root terminal' should be in System.&lt;br /&gt;
*Plasmoids: a lot of small apps need to be turned into plasmoids.&lt;br /&gt;
**charselect should be callable from anywhere but K-Menu&lt;br /&gt;
**kcalc -- the same&lt;br /&gt;
**dictionary applet&lt;br /&gt;
&lt;br /&gt;
I like the way desktop widgets are displayed in Mac OS X (easy accessible any moment - e.g. clock, calendar, calc)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Alternatively, instead of 'Office' we could use 'Desktop Publishing',  &lt;br /&gt;
putting&lt;br /&gt;
'Groupware (Kontact)' into 'Internet' +merge 'Graphics' to 'Multimedia':&lt;br /&gt;
*Multimedia&lt;br /&gt;
*k3b&lt;br /&gt;
**Music&lt;br /&gt;
***Play and Manage (amarok, tag editors)&lt;br /&gt;
***Create and edit (Audacity)&lt;br /&gt;
**Video&lt;br /&gt;
***Play&lt;br /&gt;
***Create and edit (kino, etc)&lt;br /&gt;
**Graphics&lt;br /&gt;
***View and Manage (Gwenview, Digikam)&lt;br /&gt;
***Create and edit (Krita, Kolourpaint, Gimp)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Links:&lt;br /&gt;
*[http://standards.freedesktop.org/menu-spec/menu-spec-1.0.html#category-registry Freedesktop Menu Spec]&lt;br /&gt;
*[http://standards.freedesktop.org/desktop-entry-spec/latest/ Desktop file spec]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Critisism I recieved from kde-devel@ so far:&lt;br /&gt;
*.... submenus are bad. They do not seem very usable to me, especially when the structure is not evident: ...&lt;br /&gt;
**so it's better to look through all 10-20 entries (possibly in in each  &lt;br /&gt;
category) before finding app that you need?&lt;br /&gt;
**there should be no more then ~5 items in each category&lt;br /&gt;
*This breaks traditional alphabetical order...&lt;br /&gt;
**alphabetical order is of small value when user doesnt know the name of the  &lt;br /&gt;
app he/she is looking for.&lt;br /&gt;
*Somehow 11 items seems better than 4 submenus&lt;br /&gt;
**but I wrote only few apps, in real life there will be more apps&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
And they don't believe that the menu is for newcomers, experienced users use 'Search' field anyway.&lt;/div&gt;</summary>
		<author><name>Shaforostoff</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Projects/Plasma/AppsMenuReorganization</id>
		<title>Projects/Plasma/AppsMenuReorganization</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Projects/Plasma/AppsMenuReorganization"/>
				<updated>2009-01-24T17:35:53Z</updated>
		
		<summary type="html">&lt;p&gt;Shaforostoff: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Apps Menu Structure Proposal'''. I'd like to make apps menu more fine-grained by introducing submenus&lt;br /&gt;
&lt;br /&gt;
==Internet==&lt;br /&gt;
===Browse===&lt;br /&gt;
*Konqueror&lt;br /&gt;
*Firefox&lt;br /&gt;
*Opera&lt;br /&gt;
*Akregator&lt;br /&gt;
&lt;br /&gt;
===File download and sharing===&lt;br /&gt;
*aMule&lt;br /&gt;
*KTorrent&lt;br /&gt;
*KGet&lt;br /&gt;
*KFtpGrabber&lt;br /&gt;
===Communication===&lt;br /&gt;
*KMail&lt;br /&gt;
*Kopete&lt;br /&gt;
*Konversation&lt;br /&gt;
*Kontact&lt;br /&gt;
*KAddressBook&lt;br /&gt;
*Knode&lt;br /&gt;
===Connectivity===&lt;br /&gt;
*KPPP&lt;br /&gt;
*KRDC&lt;br /&gt;
*KRFB&lt;br /&gt;
*networkmanager&lt;br /&gt;
*&amp;lt;monitoring apps?&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Multimedia==&lt;br /&gt;
===Play and Management===&lt;br /&gt;
*amarok&lt;br /&gt;
*&amp;lt;videoplayers&amp;gt;&lt;br /&gt;
*&amp;lt;tag editors&amp;gt;&lt;br /&gt;
===Creation and editing===&lt;br /&gt;
*Kino&lt;br /&gt;
*cinelerra&lt;br /&gt;
*LiVES&lt;br /&gt;
*Open Movie Editor&lt;br /&gt;
*kdenlive&lt;br /&gt;
*Audacity&lt;br /&gt;
*Wink screencasting&lt;br /&gt;
&lt;br /&gt;
==Graphics==&lt;br /&gt;
===View and Management===&lt;br /&gt;
*Okular&lt;br /&gt;
*Gwenview&lt;br /&gt;
*Digikam&lt;br /&gt;
===Creation and editing===&lt;br /&gt;
*Krita&lt;br /&gt;
*Kolourpaint&lt;br /&gt;
*Gimp&lt;br /&gt;
*Blender&lt;br /&gt;
*Inkscape&lt;br /&gt;
&lt;br /&gt;
===Desktop publishing===&lt;br /&gt;
*scribus&lt;br /&gt;
*kile&lt;br /&gt;
*lyx&lt;br /&gt;
==Education==&lt;br /&gt;
*Blinken&lt;br /&gt;
===Lingustic===&lt;br /&gt;
*KHangMan&lt;br /&gt;
*KWordQuiz&lt;br /&gt;
*Parley&lt;br /&gt;
===Math===&lt;br /&gt;
*KmPlot&lt;br /&gt;
*KAlgebra&lt;br /&gt;
*Kig&lt;br /&gt;
===Science===&lt;br /&gt;
*KStars&lt;br /&gt;
*Kalzium&lt;br /&gt;
*KTurtle&lt;br /&gt;
*Step&lt;br /&gt;
==Office==&lt;br /&gt;
*k3b&lt;br /&gt;
*Okular&lt;br /&gt;
*Kwrite&lt;br /&gt;
===Time management and Work Organization===&lt;br /&gt;
*KOrganizer&lt;br /&gt;
*KTimeTracker (remove from menu -- present as plasmoid)&lt;br /&gt;
*Kalarm (remove from menu -- present as plasmoid?)&lt;br /&gt;
*KNotes&lt;br /&gt;
*kontact&lt;br /&gt;
*&amp;lt;Syncing apps&amp;gt;&lt;br /&gt;
===Accounting===&lt;br /&gt;
*?&lt;br /&gt;
===OpenOffice.org===&lt;br /&gt;
*&amp;lt;openoffice apps&amp;gt;&lt;br /&gt;
===KOffice===&lt;br /&gt;
*&amp;lt;koffice apps&amp;gt;&lt;br /&gt;
===Desktop publishing===&lt;br /&gt;
*scribus&lt;br /&gt;
*kile&lt;br /&gt;
*lyx&lt;br /&gt;
===Translation===&lt;br /&gt;
* [http://userbase.kde.org/Lokalize Lokalize]&lt;br /&gt;
*OmegaT&lt;br /&gt;
*&amp;lt;dictionaries&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==System Tools==&lt;br /&gt;
*dolphin&lt;br /&gt;
*Konsole&lt;br /&gt;
*Strigi search&lt;br /&gt;
*&amp;lt;Accessibility apps&amp;gt;&lt;br /&gt;
===Monitor===&lt;br /&gt;
*KSysGuard&lt;br /&gt;
*KSystemLog&lt;br /&gt;
===Disk tools===&lt;br /&gt;
*gparted&lt;br /&gt;
*&amp;lt;backup app&amp;gt;&lt;br /&gt;
*k3b&lt;br /&gt;
&lt;br /&gt;
==Configuration==&lt;br /&gt;
*systemsettings&lt;br /&gt;
*yast&lt;br /&gt;
*&amp;lt;...&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Engineering==&lt;br /&gt;
*kompare&lt;br /&gt;
===Programming===&lt;br /&gt;
*KDevelop&lt;br /&gt;
*KCachegrind&lt;br /&gt;
*&amp;lt;Version control tools?&amp;gt;&lt;br /&gt;
===Web-development===&lt;br /&gt;
*Quanta&lt;br /&gt;
===Translation===&lt;br /&gt;
* [http://userbase.kde.org/Lokalize Lokalize]&lt;br /&gt;
*OmegaT&lt;br /&gt;
&lt;br /&gt;
===CAD===&lt;br /&gt;
===Math===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Explanation'''&lt;br /&gt;
*if several apps fulfill the same function (i.e. konqueror, opera, firefox), then their title should be in form of %function% - %appname%: &amp;quot;Web-browser - Konqueror&amp;quot;, and they should be listed consequently&lt;br /&gt;
*We need special entries in .desktop files determining the priority (Menu-Priority, Menu-Priority-KDE, Menu-Priority-Gnome).&lt;br /&gt;
**Because the order is important&lt;br /&gt;
**apps with Menu-Priotity above 100 constant could be visually separated by the line (they are the main apps in the category)&lt;br /&gt;
**apps with Menu-Priotity below 10 may be hidden at all (i.e. they are rarely used by an average user)&lt;br /&gt;
**If category has only 1 item, the item should be displayed instead of category&lt;br /&gt;
**Statistics is needed for this (simple voting?)&lt;br /&gt;
*'Utilities' category isn't needed at all. For example, 'root terminal' should be in System.&lt;br /&gt;
*Plasmoids: a lot of small apps need to be turned into plasmoids.&lt;br /&gt;
**charselect should be callable from anywhere but K-Menu&lt;br /&gt;
**kcalc -- the same&lt;br /&gt;
**dictionary applet&lt;br /&gt;
&lt;br /&gt;
I like the way desktop widgets are displayed in Mac OS X (easy accessible any moment - e.g. clock, calendar, calc)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Alternatively, instead of 'Office' we could use 'Desktop Publishing',  &lt;br /&gt;
putting&lt;br /&gt;
'Groupware (Kontact)' into 'Internet' +merge 'Graphics' to 'Multimedia':&lt;br /&gt;
*Multimedia&lt;br /&gt;
*k3b&lt;br /&gt;
**Music&lt;br /&gt;
***Play and Manage (amarok, tag editors)&lt;br /&gt;
***Create and edit (Audacity)&lt;br /&gt;
**Video&lt;br /&gt;
***Play&lt;br /&gt;
***Create and edit (kino, etc)&lt;br /&gt;
**Graphics&lt;br /&gt;
***View and Manage (Gwenview, Digikam)&lt;br /&gt;
***Create and edit (Krita, Kolourpaint, Gimp)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Links:&lt;br /&gt;
*[http://standards.freedesktop.org/menu-spec/menu-spec-1.0.html#category-registry Freedesktop Menu Spec]&lt;br /&gt;
*[http://standards.freedesktop.org/desktop-entry-spec/latest/ Desktop file spec]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Critisism I recieved from kde-devel@ so far:&lt;br /&gt;
*.... submenus are bad. They do not seem very usable to me, especially when the structure is not evident: ...&lt;br /&gt;
**so it's better to look through all 10-20 entries (possibly in in each  &lt;br /&gt;
category) before finding app that you need?&lt;br /&gt;
**there should be no more then ~5 items in each category&lt;br /&gt;
*This breaks traditional alphabetical order...&lt;br /&gt;
**alphabetical order is of small value when user doesnt know the name of the  &lt;br /&gt;
app he/she is looking for.&lt;br /&gt;
*Somehow 11 items seems better than 4 submenus&lt;br /&gt;
**but I wrote only few apps, in real life there will be more apps&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
And they don't believe that the menu is for newcomers, experienced users use 'Search' field anyway.&lt;/div&gt;</summary>
		<author><name>Shaforostoff</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Projects/Plasma/AppsMenuReorganization</id>
		<title>Projects/Plasma/AppsMenuReorganization</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Projects/Plasma/AppsMenuReorganization"/>
				<updated>2009-01-24T17:34:35Z</updated>
		
		<summary type="html">&lt;p&gt;Shaforostoff: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Apps Menu Structure Proposal'''. I'd like to make apps menu more fine-grained by introducing submenus&lt;br /&gt;
&lt;br /&gt;
==Internet==&lt;br /&gt;
===Browse===&lt;br /&gt;
*Konqueror&lt;br /&gt;
*Firefox&lt;br /&gt;
*Opera&lt;br /&gt;
*Akregator&lt;br /&gt;
&lt;br /&gt;
===File download and sharing===&lt;br /&gt;
*aMule&lt;br /&gt;
*KTorrent&lt;br /&gt;
*KGet&lt;br /&gt;
*KFtpGrabber&lt;br /&gt;
===Communication===&lt;br /&gt;
*KMail&lt;br /&gt;
*Kopete&lt;br /&gt;
*Konversation&lt;br /&gt;
*Kontact&lt;br /&gt;
*KAddressBook&lt;br /&gt;
*Knode&lt;br /&gt;
===Connectivity===&lt;br /&gt;
*KPPP&lt;br /&gt;
*KRDC&lt;br /&gt;
*KRFB&lt;br /&gt;
*networkmanager&lt;br /&gt;
*&amp;lt;monitoring apps?&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Multimedia==&lt;br /&gt;
===Play and Management===&lt;br /&gt;
*amarok&lt;br /&gt;
*&amp;lt;videoplayers&amp;gt;&lt;br /&gt;
*&amp;lt;tag editors&amp;gt;&lt;br /&gt;
===Creation and editing===&lt;br /&gt;
*Kino&lt;br /&gt;
*cinelerra&lt;br /&gt;
*LiVES&lt;br /&gt;
*Open Movie Editor&lt;br /&gt;
*kdenlive&lt;br /&gt;
*Audacity&lt;br /&gt;
*Wink screencasting&lt;br /&gt;
&lt;br /&gt;
==Graphics==&lt;br /&gt;
===View and Management===&lt;br /&gt;
*Okular&lt;br /&gt;
*Gwenview&lt;br /&gt;
*Digikam&lt;br /&gt;
===Creation and editing===&lt;br /&gt;
*Krita&lt;br /&gt;
*Kolourpaint&lt;br /&gt;
*Gimp&lt;br /&gt;
*Blender&lt;br /&gt;
*Inkscape&lt;br /&gt;
&lt;br /&gt;
===Desktop publishing===&lt;br /&gt;
*scribus&lt;br /&gt;
*kile&lt;br /&gt;
*lyx&lt;br /&gt;
==Education==&lt;br /&gt;
*Blinken&lt;br /&gt;
===Lingustic===&lt;br /&gt;
*KHangMan&lt;br /&gt;
*KWordQuiz&lt;br /&gt;
*Parley&lt;br /&gt;
===Math===&lt;br /&gt;
*KmPlot&lt;br /&gt;
*KAlgebra&lt;br /&gt;
*Kig&lt;br /&gt;
===Science===&lt;br /&gt;
*KStars&lt;br /&gt;
*Kalzium&lt;br /&gt;
*KTurtle&lt;br /&gt;
*Step&lt;br /&gt;
==Office==&lt;br /&gt;
*k3b&lt;br /&gt;
*Okular&lt;br /&gt;
*Kwrite&lt;br /&gt;
===Time management and Work Organization===&lt;br /&gt;
*KOrganizer&lt;br /&gt;
*KTimeTracker (remove from menu -- present as plasmoid)&lt;br /&gt;
*Kalarm (remove from menu -- present as plasmoid?)&lt;br /&gt;
*KNotes&lt;br /&gt;
*kontact&lt;br /&gt;
*&amp;lt;Syncing apps&amp;gt;&lt;br /&gt;
===Accounting===&lt;br /&gt;
*?&lt;br /&gt;
===OpenOffice.org===&lt;br /&gt;
*&amp;lt;openoffice apps&amp;gt;&lt;br /&gt;
===KOffice===&lt;br /&gt;
*&amp;lt;koffice apps&amp;gt;&lt;br /&gt;
===Desktop publishing===&lt;br /&gt;
*scribus&lt;br /&gt;
*kile&lt;br /&gt;
*lyx&lt;br /&gt;
===Translation===&lt;br /&gt;
* [http://userbase.kde.org/Lokalize Lokalize]&lt;br /&gt;
*OmegaT&lt;br /&gt;
*&amp;lt;dictionaries&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==System Tools==&lt;br /&gt;
*dolphin&lt;br /&gt;
*Konsole&lt;br /&gt;
*Strigi search&lt;br /&gt;
*&amp;lt;Accessibility apps&amp;gt;&lt;br /&gt;
===Monitor===&lt;br /&gt;
*KSysGuard&lt;br /&gt;
*KSystemLog&lt;br /&gt;
===Disk tools===&lt;br /&gt;
*gparted&lt;br /&gt;
*&amp;lt;backup app&amp;gt;&lt;br /&gt;
*k3b&lt;br /&gt;
&lt;br /&gt;
==Configuration==&lt;br /&gt;
*systemsettings&lt;br /&gt;
*yast&lt;br /&gt;
*&amp;lt;...&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Engineering==&lt;br /&gt;
*kompare&lt;br /&gt;
===Programming===&lt;br /&gt;
*KDevelop&lt;br /&gt;
*KCachegrind&lt;br /&gt;
*&amp;lt;Version control tools?&amp;gt;&lt;br /&gt;
===Web-development===&lt;br /&gt;
*Quanta&lt;br /&gt;
===Translation===&lt;br /&gt;
* [http://userbase.kde.org/Lokalize Lokalize]&lt;br /&gt;
*OmegaT&lt;br /&gt;
&lt;br /&gt;
===CAD===&lt;br /&gt;
===Math===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Explanation'''&lt;br /&gt;
*if several apps fulfill the same function (i.e. konqueror, opera, firefox), then their title should be in form of %function% - %appname%: &amp;quot;Web-browser - Konqueror&amp;quot;, and they should be listed consequently&lt;br /&gt;
*We need special entries in .desktop files determining the priority (Menu-Priority, Menu-Priority-KDE, Menu-Priority-Gnome).&lt;br /&gt;
**Because the order is important&lt;br /&gt;
**apps with Menu-Priotity above 100 constant could be visually separated by the line (they are the main apps in the category)&lt;br /&gt;
**apps with Menu-Priotity below 10 may be hidden at all (i.e. they are rarely used by an average user)&lt;br /&gt;
**If category has only 1 item, the item should be displayed instead of category&lt;br /&gt;
**Statistics is needed for this (simple voting?)&lt;br /&gt;
*'Utilities' category isn't needed at all. For example, 'root terminal' should be in System.&lt;br /&gt;
*Plasmoids: a lot of small apps need to be turned into plasmoids.&lt;br /&gt;
**charselect should be callable from anywhere but K-Menu&lt;br /&gt;
**kcalc -- the same&lt;br /&gt;
**dictionary applet&lt;br /&gt;
&lt;br /&gt;
I like the way desktop widgets are displayed in Mac OS X (easy accessible any moment - e.g. clock, calendar, calc)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Alternatively, instead of 'Office' we could use 'Desktop Publishing',  &lt;br /&gt;
putting&lt;br /&gt;
'Groupware (Kontact)' into 'Internet' +merge 'Graphics' to 'Multimedia':&lt;br /&gt;
*Multimedia&lt;br /&gt;
*k3b&lt;br /&gt;
**Music&lt;br /&gt;
***Play and Manage (amarok, tag editors)&lt;br /&gt;
***Create and edit (Audacity)&lt;br /&gt;
**Video&lt;br /&gt;
***Play&lt;br /&gt;
***Create and edit (kino, etc)&lt;br /&gt;
**Graphics&lt;br /&gt;
***View and Manage (Gwenview, Digikam)&lt;br /&gt;
***Create and edit (Krita, Kolourpaint, Gimp)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Links:&lt;br /&gt;
*[http://standards.freedesktop.org/menu-spec/menu-spec-1.0.html#category-registry Freedesktop Menu Spec]&lt;br /&gt;
*[http://portland.freedesktop.org/xdg-utils-1.0/xdg-desktop-menu.html Desktop file spec]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Critisism I recieved from kde-devel@ so far:&lt;br /&gt;
*.... submenus are bad. They do not seem very usable to me, especially when the structure is not evident: ...&lt;br /&gt;
**so it's better to look through all 10-20 entries (possibly in in each  &lt;br /&gt;
category) before finding app that you need?&lt;br /&gt;
**there should be no more then ~5 items in each category&lt;br /&gt;
*This breaks traditional alphabetical order...&lt;br /&gt;
**alphabetical order is of small value when user doesnt know the name of the  &lt;br /&gt;
app he/she is looking for.&lt;br /&gt;
*Somehow 11 items seems better than 4 submenus&lt;br /&gt;
**but I wrote only few apps, in real life there will be more apps&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
And they don't believe that the menu is for newcomers, experienced users use 'Search' field anyway.&lt;/div&gt;</summary>
		<author><name>Shaforostoff</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Projects/Plasma/AppsMenuReorganization</id>
		<title>Projects/Plasma/AppsMenuReorganization</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Projects/Plasma/AppsMenuReorganization"/>
				<updated>2009-01-24T01:39:59Z</updated>
		
		<summary type="html">&lt;p&gt;Shaforostoff: /* Connectivity */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Apps Menu Structure Proposal'''. I'd like to make apps menu more fine-grained by introducing submenus&lt;br /&gt;
&lt;br /&gt;
==Internet==&lt;br /&gt;
===Browse===&lt;br /&gt;
*Konqueror&lt;br /&gt;
*Firefox&lt;br /&gt;
*Opera&lt;br /&gt;
*Akregator&lt;br /&gt;
&lt;br /&gt;
===File download and sharing===&lt;br /&gt;
*aMule&lt;br /&gt;
*KTorrent&lt;br /&gt;
*KGet&lt;br /&gt;
*KFtpGrabber&lt;br /&gt;
===Communication===&lt;br /&gt;
*KMail&lt;br /&gt;
*Kopete&lt;br /&gt;
*Konversation&lt;br /&gt;
*Kontact&lt;br /&gt;
*KAddressBook&lt;br /&gt;
*Knode&lt;br /&gt;
===Connectivity===&lt;br /&gt;
*KPPP&lt;br /&gt;
*KRDC&lt;br /&gt;
*KRFB&lt;br /&gt;
*networkmanager&lt;br /&gt;
*&amp;lt;monitoring apps?&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Multimedia==&lt;br /&gt;
===Play and Management===&lt;br /&gt;
*amarok&lt;br /&gt;
*&amp;lt;videoplayers&amp;gt;&lt;br /&gt;
*&amp;lt;tag editors&amp;gt;&lt;br /&gt;
===Creation and editing===&lt;br /&gt;
*Kino&lt;br /&gt;
*cinelerra&lt;br /&gt;
*LiVES&lt;br /&gt;
*Open Movie Editor&lt;br /&gt;
*kdenlive&lt;br /&gt;
*Audacity&lt;br /&gt;
*Wink screencasting&lt;br /&gt;
&lt;br /&gt;
==Graphics==&lt;br /&gt;
===View and Management===&lt;br /&gt;
*Okular&lt;br /&gt;
*Gwenview&lt;br /&gt;
*Digikam&lt;br /&gt;
===Creation and editing===&lt;br /&gt;
*Krita&lt;br /&gt;
*Kolourpaint&lt;br /&gt;
*Gimp&lt;br /&gt;
*Blender&lt;br /&gt;
*Inkscape&lt;br /&gt;
&lt;br /&gt;
===Desktop publishing===&lt;br /&gt;
*scribus&lt;br /&gt;
*kile&lt;br /&gt;
*lyx&lt;br /&gt;
==Education==&lt;br /&gt;
*Blinken&lt;br /&gt;
===Lingustic===&lt;br /&gt;
*KHangMan&lt;br /&gt;
*KWordQuiz&lt;br /&gt;
*Parley&lt;br /&gt;
===Math===&lt;br /&gt;
*KmPlot&lt;br /&gt;
*KAlgebra&lt;br /&gt;
*Kig&lt;br /&gt;
===Science===&lt;br /&gt;
*KStars&lt;br /&gt;
*Kalzium&lt;br /&gt;
*KTurtle&lt;br /&gt;
*Step&lt;br /&gt;
==Office==&lt;br /&gt;
*k3b&lt;br /&gt;
*Okular&lt;br /&gt;
*Kwrite&lt;br /&gt;
===Time management and Work Organization===&lt;br /&gt;
*KOrganizer&lt;br /&gt;
*KTimeTracker (remove from menu -- present as plasmoid)&lt;br /&gt;
*Kalarm (remove from menu -- present as plasmoid?)&lt;br /&gt;
*KNotes&lt;br /&gt;
*kontact&lt;br /&gt;
*&amp;lt;Syncing apps&amp;gt;&lt;br /&gt;
===Accounting===&lt;br /&gt;
*?&lt;br /&gt;
===OpenOffice.org===&lt;br /&gt;
*&amp;lt;openoffice apps&amp;gt;&lt;br /&gt;
===KOffice===&lt;br /&gt;
*&amp;lt;koffice apps&amp;gt;&lt;br /&gt;
===Desktop publishing===&lt;br /&gt;
*scribus&lt;br /&gt;
*kile&lt;br /&gt;
*lyx&lt;br /&gt;
===Translation===&lt;br /&gt;
* [http://userbase.kde.org/Lokalize Lokalize]&lt;br /&gt;
*OmegaT&lt;br /&gt;
*&amp;lt;dictionaries&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==System Tools==&lt;br /&gt;
*dolphin&lt;br /&gt;
*Konsole&lt;br /&gt;
*Strigi search&lt;br /&gt;
*&amp;lt;Accessibility apps&amp;gt;&lt;br /&gt;
===Monitor===&lt;br /&gt;
*KSysGuard&lt;br /&gt;
*KSystemLog&lt;br /&gt;
===Disk tools===&lt;br /&gt;
*gparted&lt;br /&gt;
*&amp;lt;backup app&amp;gt;&lt;br /&gt;
*k3b&lt;br /&gt;
&lt;br /&gt;
==Configuration==&lt;br /&gt;
*systemsettings&lt;br /&gt;
*yast&lt;br /&gt;
*&amp;lt;...&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Engineering==&lt;br /&gt;
*kompare&lt;br /&gt;
===Programming===&lt;br /&gt;
*KDevelop&lt;br /&gt;
*KCachegrind&lt;br /&gt;
*&amp;lt;Version control tools?&amp;gt;&lt;br /&gt;
===Web-development===&lt;br /&gt;
*Quanta&lt;br /&gt;
===Translation===&lt;br /&gt;
* [http://userbase.kde.org/Lokalize Lokalize]&lt;br /&gt;
*OmegaT&lt;br /&gt;
&lt;br /&gt;
===CAD===&lt;br /&gt;
===Math===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Explanation'''&lt;br /&gt;
*if several apps fulfill the same function (i.e. konqueror, opera, firefox), then their title should be in form of %function% - %appname%: &amp;quot;Web-browser - Konqueror&amp;quot;, and they should be listed consequently&lt;br /&gt;
*We need special entries in .desktop files determining the priority (Menu-Priority, Menu-Priority-KDE, Menu-Priority-Gnome).&lt;br /&gt;
**Because the order is important&lt;br /&gt;
**apps with Menu-Priotity above 100 constant could be visually separated by the line (they are the main apps in the category)&lt;br /&gt;
**apps with Menu-Priotity below 10 may be hidden at all (i.e. they are rarely used by an average user)&lt;br /&gt;
**If category has only 1 item, the item should be displayed instead of category&lt;br /&gt;
**Statistics is needed for this (simple voting?)&lt;br /&gt;
*'Utilities' category isn't needed at all. For example, 'root terminal' should be in System.&lt;br /&gt;
*Plasmoids: a lot of small apps need to be turned into plasmoids.&lt;br /&gt;
**charselect should be callable from anywhere but K-Menu&lt;br /&gt;
**kcalc -- the same&lt;br /&gt;
**dictionary applet&lt;br /&gt;
&lt;br /&gt;
I like the way desktop widgets are displayed in Mac OS X (easy accessible any moment - e.g. clock, calendar, calc)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Alternatively, instead of 'Office' we could use 'Desktop Publishing',  &lt;br /&gt;
putting&lt;br /&gt;
'Groupware (Kontact)' into 'Internet' +merge 'Graphics' to 'Multimedia':&lt;br /&gt;
*Multimedia&lt;br /&gt;
*k3b&lt;br /&gt;
**Music&lt;br /&gt;
***Play and Manage (amarok, tag editors)&lt;br /&gt;
***Create and edit (Audacity)&lt;br /&gt;
**Video&lt;br /&gt;
***Play&lt;br /&gt;
***Create and edit (kino, etc)&lt;br /&gt;
**Graphics&lt;br /&gt;
***View and Manage (Gwenview, Digikam)&lt;br /&gt;
***Create and edit (Krita, Kolourpaint, Gimp)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Critisism I recieved from kde-devel@ so far:&lt;br /&gt;
*.... submenus are bad. They do not seem very usable to me, especially when the structure is not evident: ...&lt;br /&gt;
**so it's better to look through all 10-20 entries (possibly in in each  &lt;br /&gt;
category) before finding app that you need?&lt;br /&gt;
**there should be no more then ~5 items in each category&lt;br /&gt;
*This breaks traditional alphabetical order...&lt;br /&gt;
**alphabetical order is of small value when user doesnt know the name of the  &lt;br /&gt;
app he/she is looking for.&lt;br /&gt;
*Somehow 11 items seems better than 4 submenus&lt;br /&gt;
**but I wrote only few apps, in real life there will be more apps&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
And this is said to be false: &amp;quot;the menu is for newcomers, experienced users use 'Search' field anyway.&amp;quot;&lt;/div&gt;</summary>
		<author><name>Shaforostoff</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Projects/Plasma/AppsMenuReorganization</id>
		<title>Projects/Plasma/AppsMenuReorganization</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Projects/Plasma/AppsMenuReorganization"/>
				<updated>2009-01-24T01:39:43Z</updated>
		
		<summary type="html">&lt;p&gt;Shaforostoff: /* Web */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Apps Menu Structure Proposal'''. I'd like to make apps menu more fine-grained by introducing submenus&lt;br /&gt;
&lt;br /&gt;
==Internet==&lt;br /&gt;
===Browse===&lt;br /&gt;
*Konqueror&lt;br /&gt;
*Firefox&lt;br /&gt;
*Opera&lt;br /&gt;
*Akregator&lt;br /&gt;
&lt;br /&gt;
===File download and sharing===&lt;br /&gt;
*aMule&lt;br /&gt;
*KTorrent&lt;br /&gt;
*KGet&lt;br /&gt;
*KFtpGrabber&lt;br /&gt;
===Communication===&lt;br /&gt;
*KMail&lt;br /&gt;
*Kopete&lt;br /&gt;
*Konversation&lt;br /&gt;
*Kontact&lt;br /&gt;
*KAddressBook&lt;br /&gt;
*Knode&lt;br /&gt;
===Connectivity===&lt;br /&gt;
*KPPP&lt;br /&gt;
*KRDC&lt;br /&gt;
*KRFB&lt;br /&gt;
*&amp;lt;monitoring apps?&amp;gt;&lt;br /&gt;
==Multimedia==&lt;br /&gt;
===Play and Management===&lt;br /&gt;
*amarok&lt;br /&gt;
*&amp;lt;videoplayers&amp;gt;&lt;br /&gt;
*&amp;lt;tag editors&amp;gt;&lt;br /&gt;
===Creation and editing===&lt;br /&gt;
*Kino&lt;br /&gt;
*cinelerra&lt;br /&gt;
*LiVES&lt;br /&gt;
*Open Movie Editor&lt;br /&gt;
*kdenlive&lt;br /&gt;
*Audacity&lt;br /&gt;
*Wink screencasting&lt;br /&gt;
&lt;br /&gt;
==Graphics==&lt;br /&gt;
===View and Management===&lt;br /&gt;
*Okular&lt;br /&gt;
*Gwenview&lt;br /&gt;
*Digikam&lt;br /&gt;
===Creation and editing===&lt;br /&gt;
*Krita&lt;br /&gt;
*Kolourpaint&lt;br /&gt;
*Gimp&lt;br /&gt;
*Blender&lt;br /&gt;
*Inkscape&lt;br /&gt;
&lt;br /&gt;
===Desktop publishing===&lt;br /&gt;
*scribus&lt;br /&gt;
*kile&lt;br /&gt;
*lyx&lt;br /&gt;
==Education==&lt;br /&gt;
*Blinken&lt;br /&gt;
===Lingustic===&lt;br /&gt;
*KHangMan&lt;br /&gt;
*KWordQuiz&lt;br /&gt;
*Parley&lt;br /&gt;
===Math===&lt;br /&gt;
*KmPlot&lt;br /&gt;
*KAlgebra&lt;br /&gt;
*Kig&lt;br /&gt;
===Science===&lt;br /&gt;
*KStars&lt;br /&gt;
*Kalzium&lt;br /&gt;
*KTurtle&lt;br /&gt;
*Step&lt;br /&gt;
==Office==&lt;br /&gt;
*k3b&lt;br /&gt;
*Okular&lt;br /&gt;
*Kwrite&lt;br /&gt;
===Time management and Work Organization===&lt;br /&gt;
*KOrganizer&lt;br /&gt;
*KTimeTracker (remove from menu -- present as plasmoid)&lt;br /&gt;
*Kalarm (remove from menu -- present as plasmoid?)&lt;br /&gt;
*KNotes&lt;br /&gt;
*kontact&lt;br /&gt;
*&amp;lt;Syncing apps&amp;gt;&lt;br /&gt;
===Accounting===&lt;br /&gt;
*?&lt;br /&gt;
===OpenOffice.org===&lt;br /&gt;
*&amp;lt;openoffice apps&amp;gt;&lt;br /&gt;
===KOffice===&lt;br /&gt;
*&amp;lt;koffice apps&amp;gt;&lt;br /&gt;
===Desktop publishing===&lt;br /&gt;
*scribus&lt;br /&gt;
*kile&lt;br /&gt;
*lyx&lt;br /&gt;
===Translation===&lt;br /&gt;
* [http://userbase.kde.org/Lokalize Lokalize]&lt;br /&gt;
*OmegaT&lt;br /&gt;
*&amp;lt;dictionaries&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==System Tools==&lt;br /&gt;
*dolphin&lt;br /&gt;
*Konsole&lt;br /&gt;
*Strigi search&lt;br /&gt;
*&amp;lt;Accessibility apps&amp;gt;&lt;br /&gt;
===Monitor===&lt;br /&gt;
*KSysGuard&lt;br /&gt;
*KSystemLog&lt;br /&gt;
===Disk tools===&lt;br /&gt;
*gparted&lt;br /&gt;
*&amp;lt;backup app&amp;gt;&lt;br /&gt;
*k3b&lt;br /&gt;
&lt;br /&gt;
==Configuration==&lt;br /&gt;
*systemsettings&lt;br /&gt;
*yast&lt;br /&gt;
*&amp;lt;...&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Engineering==&lt;br /&gt;
*kompare&lt;br /&gt;
===Programming===&lt;br /&gt;
*KDevelop&lt;br /&gt;
*KCachegrind&lt;br /&gt;
*&amp;lt;Version control tools?&amp;gt;&lt;br /&gt;
===Web-development===&lt;br /&gt;
*Quanta&lt;br /&gt;
===Translation===&lt;br /&gt;
* [http://userbase.kde.org/Lokalize Lokalize]&lt;br /&gt;
*OmegaT&lt;br /&gt;
&lt;br /&gt;
===CAD===&lt;br /&gt;
===Math===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Explanation'''&lt;br /&gt;
*if several apps fulfill the same function (i.e. konqueror, opera, firefox), then their title should be in form of %function% - %appname%: &amp;quot;Web-browser - Konqueror&amp;quot;, and they should be listed consequently&lt;br /&gt;
*We need special entries in .desktop files determining the priority (Menu-Priority, Menu-Priority-KDE, Menu-Priority-Gnome).&lt;br /&gt;
**Because the order is important&lt;br /&gt;
**apps with Menu-Priotity above 100 constant could be visually separated by the line (they are the main apps in the category)&lt;br /&gt;
**apps with Menu-Priotity below 10 may be hidden at all (i.e. they are rarely used by an average user)&lt;br /&gt;
**If category has only 1 item, the item should be displayed instead of category&lt;br /&gt;
**Statistics is needed for this (simple voting?)&lt;br /&gt;
*'Utilities' category isn't needed at all. For example, 'root terminal' should be in System.&lt;br /&gt;
*Plasmoids: a lot of small apps need to be turned into plasmoids.&lt;br /&gt;
**charselect should be callable from anywhere but K-Menu&lt;br /&gt;
**kcalc -- the same&lt;br /&gt;
**dictionary applet&lt;br /&gt;
&lt;br /&gt;
I like the way desktop widgets are displayed in Mac OS X (easy accessible any moment - e.g. clock, calendar, calc)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Alternatively, instead of 'Office' we could use 'Desktop Publishing',  &lt;br /&gt;
putting&lt;br /&gt;
'Groupware (Kontact)' into 'Internet' +merge 'Graphics' to 'Multimedia':&lt;br /&gt;
*Multimedia&lt;br /&gt;
*k3b&lt;br /&gt;
**Music&lt;br /&gt;
***Play and Manage (amarok, tag editors)&lt;br /&gt;
***Create and edit (Audacity)&lt;br /&gt;
**Video&lt;br /&gt;
***Play&lt;br /&gt;
***Create and edit (kino, etc)&lt;br /&gt;
**Graphics&lt;br /&gt;
***View and Manage (Gwenview, Digikam)&lt;br /&gt;
***Create and edit (Krita, Kolourpaint, Gimp)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Critisism I recieved from kde-devel@ so far:&lt;br /&gt;
*.... submenus are bad. They do not seem very usable to me, especially when the structure is not evident: ...&lt;br /&gt;
**so it's better to look through all 10-20 entries (possibly in in each  &lt;br /&gt;
category) before finding app that you need?&lt;br /&gt;
**there should be no more then ~5 items in each category&lt;br /&gt;
*This breaks traditional alphabetical order...&lt;br /&gt;
**alphabetical order is of small value when user doesnt know the name of the  &lt;br /&gt;
app he/she is looking for.&lt;br /&gt;
*Somehow 11 items seems better than 4 submenus&lt;br /&gt;
**but I wrote only few apps, in real life there will be more apps&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
And this is said to be false: &amp;quot;the menu is for newcomers, experienced users use 'Search' field anyway.&amp;quot;&lt;/div&gt;</summary>
		<author><name>Shaforostoff</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Projects/Plasma/AppsMenuReorganization</id>
		<title>Projects/Plasma/AppsMenuReorganization</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Projects/Plasma/AppsMenuReorganization"/>
				<updated>2009-01-24T01:39:26Z</updated>
		
		<summary type="html">&lt;p&gt;Shaforostoff: /* Configuration */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Apps Menu Structure Proposal'''. I'd like to make apps menu more fine-grained by introducing submenus&lt;br /&gt;
&lt;br /&gt;
==Internet==&lt;br /&gt;
===Web===&lt;br /&gt;
*Konqueror&lt;br /&gt;
*Firefox&lt;br /&gt;
*Opera&lt;br /&gt;
*Akregator&lt;br /&gt;
===File download and sharing===&lt;br /&gt;
*aMule&lt;br /&gt;
*KTorrent&lt;br /&gt;
*KGet&lt;br /&gt;
*KFtpGrabber&lt;br /&gt;
===Communication===&lt;br /&gt;
*KMail&lt;br /&gt;
*Kopete&lt;br /&gt;
*Konversation&lt;br /&gt;
*Kontact&lt;br /&gt;
*KAddressBook&lt;br /&gt;
*Knode&lt;br /&gt;
===Connectivity===&lt;br /&gt;
*KPPP&lt;br /&gt;
*KRDC&lt;br /&gt;
*KRFB&lt;br /&gt;
*&amp;lt;monitoring apps?&amp;gt;&lt;br /&gt;
==Multimedia==&lt;br /&gt;
===Play and Management===&lt;br /&gt;
*amarok&lt;br /&gt;
*&amp;lt;videoplayers&amp;gt;&lt;br /&gt;
*&amp;lt;tag editors&amp;gt;&lt;br /&gt;
===Creation and editing===&lt;br /&gt;
*Kino&lt;br /&gt;
*cinelerra&lt;br /&gt;
*LiVES&lt;br /&gt;
*Open Movie Editor&lt;br /&gt;
*kdenlive&lt;br /&gt;
*Audacity&lt;br /&gt;
*Wink screencasting&lt;br /&gt;
&lt;br /&gt;
==Graphics==&lt;br /&gt;
===View and Management===&lt;br /&gt;
*Okular&lt;br /&gt;
*Gwenview&lt;br /&gt;
*Digikam&lt;br /&gt;
===Creation and editing===&lt;br /&gt;
*Krita&lt;br /&gt;
*Kolourpaint&lt;br /&gt;
*Gimp&lt;br /&gt;
*Blender&lt;br /&gt;
*Inkscape&lt;br /&gt;
&lt;br /&gt;
===Desktop publishing===&lt;br /&gt;
*scribus&lt;br /&gt;
*kile&lt;br /&gt;
*lyx&lt;br /&gt;
==Education==&lt;br /&gt;
*Blinken&lt;br /&gt;
===Lingustic===&lt;br /&gt;
*KHangMan&lt;br /&gt;
*KWordQuiz&lt;br /&gt;
*Parley&lt;br /&gt;
===Math===&lt;br /&gt;
*KmPlot&lt;br /&gt;
*KAlgebra&lt;br /&gt;
*Kig&lt;br /&gt;
===Science===&lt;br /&gt;
*KStars&lt;br /&gt;
*Kalzium&lt;br /&gt;
*KTurtle&lt;br /&gt;
*Step&lt;br /&gt;
==Office==&lt;br /&gt;
*k3b&lt;br /&gt;
*Okular&lt;br /&gt;
*Kwrite&lt;br /&gt;
===Time management and Work Organization===&lt;br /&gt;
*KOrganizer&lt;br /&gt;
*KTimeTracker (remove from menu -- present as plasmoid)&lt;br /&gt;
*Kalarm (remove from menu -- present as plasmoid?)&lt;br /&gt;
*KNotes&lt;br /&gt;
*kontact&lt;br /&gt;
*&amp;lt;Syncing apps&amp;gt;&lt;br /&gt;
===Accounting===&lt;br /&gt;
*?&lt;br /&gt;
===OpenOffice.org===&lt;br /&gt;
*&amp;lt;openoffice apps&amp;gt;&lt;br /&gt;
===KOffice===&lt;br /&gt;
*&amp;lt;koffice apps&amp;gt;&lt;br /&gt;
===Desktop publishing===&lt;br /&gt;
*scribus&lt;br /&gt;
*kile&lt;br /&gt;
*lyx&lt;br /&gt;
===Translation===&lt;br /&gt;
* [http://userbase.kde.org/Lokalize Lokalize]&lt;br /&gt;
*OmegaT&lt;br /&gt;
*&amp;lt;dictionaries&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==System Tools==&lt;br /&gt;
*dolphin&lt;br /&gt;
*Konsole&lt;br /&gt;
*Strigi search&lt;br /&gt;
*&amp;lt;Accessibility apps&amp;gt;&lt;br /&gt;
===Monitor===&lt;br /&gt;
*KSysGuard&lt;br /&gt;
*KSystemLog&lt;br /&gt;
===Disk tools===&lt;br /&gt;
*gparted&lt;br /&gt;
*&amp;lt;backup app&amp;gt;&lt;br /&gt;
*k3b&lt;br /&gt;
&lt;br /&gt;
==Configuration==&lt;br /&gt;
*systemsettings&lt;br /&gt;
*yast&lt;br /&gt;
*&amp;lt;...&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Engineering==&lt;br /&gt;
*kompare&lt;br /&gt;
===Programming===&lt;br /&gt;
*KDevelop&lt;br /&gt;
*KCachegrind&lt;br /&gt;
*&amp;lt;Version control tools?&amp;gt;&lt;br /&gt;
===Web-development===&lt;br /&gt;
*Quanta&lt;br /&gt;
===Translation===&lt;br /&gt;
* [http://userbase.kde.org/Lokalize Lokalize]&lt;br /&gt;
*OmegaT&lt;br /&gt;
&lt;br /&gt;
===CAD===&lt;br /&gt;
===Math===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Explanation'''&lt;br /&gt;
*if several apps fulfill the same function (i.e. konqueror, opera, firefox), then their title should be in form of %function% - %appname%: &amp;quot;Web-browser - Konqueror&amp;quot;, and they should be listed consequently&lt;br /&gt;
*We need special entries in .desktop files determining the priority (Menu-Priority, Menu-Priority-KDE, Menu-Priority-Gnome).&lt;br /&gt;
**Because the order is important&lt;br /&gt;
**apps with Menu-Priotity above 100 constant could be visually separated by the line (they are the main apps in the category)&lt;br /&gt;
**apps with Menu-Priotity below 10 may be hidden at all (i.e. they are rarely used by an average user)&lt;br /&gt;
**If category has only 1 item, the item should be displayed instead of category&lt;br /&gt;
**Statistics is needed for this (simple voting?)&lt;br /&gt;
*'Utilities' category isn't needed at all. For example, 'root terminal' should be in System.&lt;br /&gt;
*Plasmoids: a lot of small apps need to be turned into plasmoids.&lt;br /&gt;
**charselect should be callable from anywhere but K-Menu&lt;br /&gt;
**kcalc -- the same&lt;br /&gt;
**dictionary applet&lt;br /&gt;
&lt;br /&gt;
I like the way desktop widgets are displayed in Mac OS X (easy accessible any moment - e.g. clock, calendar, calc)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Alternatively, instead of 'Office' we could use 'Desktop Publishing',  &lt;br /&gt;
putting&lt;br /&gt;
'Groupware (Kontact)' into 'Internet' +merge 'Graphics' to 'Multimedia':&lt;br /&gt;
*Multimedia&lt;br /&gt;
*k3b&lt;br /&gt;
**Music&lt;br /&gt;
***Play and Manage (amarok, tag editors)&lt;br /&gt;
***Create and edit (Audacity)&lt;br /&gt;
**Video&lt;br /&gt;
***Play&lt;br /&gt;
***Create and edit (kino, etc)&lt;br /&gt;
**Graphics&lt;br /&gt;
***View and Manage (Gwenview, Digikam)&lt;br /&gt;
***Create and edit (Krita, Kolourpaint, Gimp)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Critisism I recieved from kde-devel@ so far:&lt;br /&gt;
*.... submenus are bad. They do not seem very usable to me, especially when the structure is not evident: ...&lt;br /&gt;
**so it's better to look through all 10-20 entries (possibly in in each  &lt;br /&gt;
category) before finding app that you need?&lt;br /&gt;
**there should be no more then ~5 items in each category&lt;br /&gt;
*This breaks traditional alphabetical order...&lt;br /&gt;
**alphabetical order is of small value when user doesnt know the name of the  &lt;br /&gt;
app he/she is looking for.&lt;br /&gt;
*Somehow 11 items seems better than 4 submenus&lt;br /&gt;
**but I wrote only few apps, in real life there will be more apps&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
And this is said to be false: &amp;quot;the menu is for newcomers, experienced users use 'Search' field anyway.&amp;quot;&lt;/div&gt;</summary>
		<author><name>Shaforostoff</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Projects/Plasma/AppsMenuReorganization</id>
		<title>Projects/Plasma/AppsMenuReorganization</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Projects/Plasma/AppsMenuReorganization"/>
				<updated>2009-01-24T01:37:47Z</updated>
		
		<summary type="html">&lt;p&gt;Shaforostoff: /* System Tools */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Apps Menu Structure Proposal'''. I'd like to make apps menu more fine-grained by introducing submenus&lt;br /&gt;
&lt;br /&gt;
==Internet==&lt;br /&gt;
===Web===&lt;br /&gt;
*Konqueror&lt;br /&gt;
*Firefox&lt;br /&gt;
*Opera&lt;br /&gt;
*Akregator&lt;br /&gt;
===File download and sharing===&lt;br /&gt;
*aMule&lt;br /&gt;
*KTorrent&lt;br /&gt;
*KGet&lt;br /&gt;
*KFtpGrabber&lt;br /&gt;
===Communication===&lt;br /&gt;
*KMail&lt;br /&gt;
*Kopete&lt;br /&gt;
*Konversation&lt;br /&gt;
*Kontact&lt;br /&gt;
*KAddressBook&lt;br /&gt;
*Knode&lt;br /&gt;
===Connectivity===&lt;br /&gt;
*KPPP&lt;br /&gt;
*KRDC&lt;br /&gt;
*KRFB&lt;br /&gt;
*&amp;lt;monitoring apps?&amp;gt;&lt;br /&gt;
==Multimedia==&lt;br /&gt;
===Play and Management===&lt;br /&gt;
*amarok&lt;br /&gt;
*&amp;lt;videoplayers&amp;gt;&lt;br /&gt;
*&amp;lt;tag editors&amp;gt;&lt;br /&gt;
===Creation and editing===&lt;br /&gt;
*Kino&lt;br /&gt;
*cinelerra&lt;br /&gt;
*LiVES&lt;br /&gt;
*Open Movie Editor&lt;br /&gt;
*kdenlive&lt;br /&gt;
*Audacity&lt;br /&gt;
*Wink screencasting&lt;br /&gt;
&lt;br /&gt;
==Graphics==&lt;br /&gt;
===View and Management===&lt;br /&gt;
*Okular&lt;br /&gt;
*Gwenview&lt;br /&gt;
*Digikam&lt;br /&gt;
===Creation and editing===&lt;br /&gt;
*Krita&lt;br /&gt;
*Kolourpaint&lt;br /&gt;
*Gimp&lt;br /&gt;
*Blender&lt;br /&gt;
*Inkscape&lt;br /&gt;
&lt;br /&gt;
===Desktop publishing===&lt;br /&gt;
*scribus&lt;br /&gt;
*kile&lt;br /&gt;
*lyx&lt;br /&gt;
==Education==&lt;br /&gt;
*Blinken&lt;br /&gt;
===Lingustic===&lt;br /&gt;
*KHangMan&lt;br /&gt;
*KWordQuiz&lt;br /&gt;
*Parley&lt;br /&gt;
===Math===&lt;br /&gt;
*KmPlot&lt;br /&gt;
*KAlgebra&lt;br /&gt;
*Kig&lt;br /&gt;
===Science===&lt;br /&gt;
*KStars&lt;br /&gt;
*Kalzium&lt;br /&gt;
*KTurtle&lt;br /&gt;
*Step&lt;br /&gt;
==Office==&lt;br /&gt;
*k3b&lt;br /&gt;
*Okular&lt;br /&gt;
*Kwrite&lt;br /&gt;
===Time management and Work Organization===&lt;br /&gt;
*KOrganizer&lt;br /&gt;
*KTimeTracker (remove from menu -- present as plasmoid)&lt;br /&gt;
*Kalarm (remove from menu -- present as plasmoid?)&lt;br /&gt;
*KNotes&lt;br /&gt;
*kontact&lt;br /&gt;
*&amp;lt;Syncing apps&amp;gt;&lt;br /&gt;
===Accounting===&lt;br /&gt;
*?&lt;br /&gt;
===OpenOffice.org===&lt;br /&gt;
*&amp;lt;openoffice apps&amp;gt;&lt;br /&gt;
===KOffice===&lt;br /&gt;
*&amp;lt;koffice apps&amp;gt;&lt;br /&gt;
===Desktop publishing===&lt;br /&gt;
*scribus&lt;br /&gt;
*kile&lt;br /&gt;
*lyx&lt;br /&gt;
===Translation===&lt;br /&gt;
* [http://userbase.kde.org/Lokalize Lokalize]&lt;br /&gt;
*OmegaT&lt;br /&gt;
*&amp;lt;dictionaries&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==System Tools==&lt;br /&gt;
*dolphin&lt;br /&gt;
*Konsole&lt;br /&gt;
*Strigi search&lt;br /&gt;
*&amp;lt;Accessibility apps&amp;gt;&lt;br /&gt;
===Monitor===&lt;br /&gt;
*KSysGuard&lt;br /&gt;
*KSystemLog&lt;br /&gt;
===Disk tools===&lt;br /&gt;
*gparted&lt;br /&gt;
*&amp;lt;backup app&amp;gt;&lt;br /&gt;
*k3b&lt;br /&gt;
&lt;br /&gt;
==Configuration==&lt;br /&gt;
*&amp;lt;...&amp;gt;&lt;br /&gt;
==Engineering==&lt;br /&gt;
*kompare&lt;br /&gt;
===Programming===&lt;br /&gt;
*KDevelop&lt;br /&gt;
*KCachegrind&lt;br /&gt;
*&amp;lt;Version control tools?&amp;gt;&lt;br /&gt;
===Web-development===&lt;br /&gt;
*Quanta&lt;br /&gt;
===Translation===&lt;br /&gt;
* [http://userbase.kde.org/Lokalize Lokalize]&lt;br /&gt;
*OmegaT&lt;br /&gt;
&lt;br /&gt;
===CAD===&lt;br /&gt;
===Math===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Explanation'''&lt;br /&gt;
*if several apps fulfill the same function (i.e. konqueror, opera, firefox), then their title should be in form of %function% - %appname%: &amp;quot;Web-browser - Konqueror&amp;quot;, and they should be listed consequently&lt;br /&gt;
*We need special entries in .desktop files determining the priority (Menu-Priority, Menu-Priority-KDE, Menu-Priority-Gnome).&lt;br /&gt;
**Because the order is important&lt;br /&gt;
**apps with Menu-Priotity above 100 constant could be visually separated by the line (they are the main apps in the category)&lt;br /&gt;
**apps with Menu-Priotity below 10 may be hidden at all (i.e. they are rarely used by an average user)&lt;br /&gt;
**If category has only 1 item, the item should be displayed instead of category&lt;br /&gt;
**Statistics is needed for this (simple voting?)&lt;br /&gt;
*'Utilities' category isn't needed at all. For example, 'root terminal' should be in System.&lt;br /&gt;
*Plasmoids: a lot of small apps need to be turned into plasmoids.&lt;br /&gt;
**charselect should be callable from anywhere but K-Menu&lt;br /&gt;
**kcalc -- the same&lt;br /&gt;
**dictionary applet&lt;br /&gt;
&lt;br /&gt;
I like the way desktop widgets are displayed in Mac OS X (easy accessible any moment - e.g. clock, calendar, calc)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Alternatively, instead of 'Office' we could use 'Desktop Publishing',  &lt;br /&gt;
putting&lt;br /&gt;
'Groupware (Kontact)' into 'Internet' +merge 'Graphics' to 'Multimedia':&lt;br /&gt;
*Multimedia&lt;br /&gt;
*k3b&lt;br /&gt;
**Music&lt;br /&gt;
***Play and Manage (amarok, tag editors)&lt;br /&gt;
***Create and edit (Audacity)&lt;br /&gt;
**Video&lt;br /&gt;
***Play&lt;br /&gt;
***Create and edit (kino, etc)&lt;br /&gt;
**Graphics&lt;br /&gt;
***View and Manage (Gwenview, Digikam)&lt;br /&gt;
***Create and edit (Krita, Kolourpaint, Gimp)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Critisism I recieved from kde-devel@ so far:&lt;br /&gt;
*.... submenus are bad. They do not seem very usable to me, especially when the structure is not evident: ...&lt;br /&gt;
**so it's better to look through all 10-20 entries (possibly in in each  &lt;br /&gt;
category) before finding app that you need?&lt;br /&gt;
**there should be no more then ~5 items in each category&lt;br /&gt;
*This breaks traditional alphabetical order...&lt;br /&gt;
**alphabetical order is of small value when user doesnt know the name of the  &lt;br /&gt;
app he/she is looking for.&lt;br /&gt;
*Somehow 11 items seems better than 4 submenus&lt;br /&gt;
**but I wrote only few apps, in real life there will be more apps&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
And this is said to be false: &amp;quot;the menu is for newcomers, experienced users use 'Search' field anyway.&amp;quot;&lt;/div&gt;</summary>
		<author><name>Shaforostoff</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Projects/Plasma/AppsMenuReorganization</id>
		<title>Projects/Plasma/AppsMenuReorganization</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Projects/Plasma/AppsMenuReorganization"/>
				<updated>2009-01-18T21:43:07Z</updated>
		
		<summary type="html">&lt;p&gt;Shaforostoff: /* Creation and editing */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Apps Menu Structure Proposal'''. I'd like to make apps menu more fine-grained by introducing submenus&lt;br /&gt;
&lt;br /&gt;
==Internet==&lt;br /&gt;
===Web===&lt;br /&gt;
*Konqueror&lt;br /&gt;
*Firefox&lt;br /&gt;
*Opera&lt;br /&gt;
*Akregator&lt;br /&gt;
===File download and sharing===&lt;br /&gt;
*aMule&lt;br /&gt;
*KTorrent&lt;br /&gt;
*KGet&lt;br /&gt;
*KFtpGrabber&lt;br /&gt;
===Communication===&lt;br /&gt;
*KMail&lt;br /&gt;
*Kopete&lt;br /&gt;
*Konversation&lt;br /&gt;
*Kontact&lt;br /&gt;
*KAddressBook&lt;br /&gt;
*Knode&lt;br /&gt;
===Connectivity===&lt;br /&gt;
*KPPP&lt;br /&gt;
*KRDC&lt;br /&gt;
*KRFB&lt;br /&gt;
*&amp;lt;monitoring apps?&amp;gt;&lt;br /&gt;
==Multimedia==&lt;br /&gt;
===Play and Management===&lt;br /&gt;
*amarok&lt;br /&gt;
*&amp;lt;videoplayers&amp;gt;&lt;br /&gt;
*&amp;lt;tag editors&amp;gt;&lt;br /&gt;
===Creation and editing===&lt;br /&gt;
*Kino&lt;br /&gt;
*cinelerra&lt;br /&gt;
*LiVES&lt;br /&gt;
*Open Movie Editor&lt;br /&gt;
*kdenlive&lt;br /&gt;
*Audacity&lt;br /&gt;
*Wink screencasting&lt;br /&gt;
&lt;br /&gt;
==Graphics==&lt;br /&gt;
===View and Management===&lt;br /&gt;
*Okular&lt;br /&gt;
*Gwenview&lt;br /&gt;
*Digikam&lt;br /&gt;
===Creation and editing===&lt;br /&gt;
*Krita&lt;br /&gt;
*Kolourpaint&lt;br /&gt;
*Gimp&lt;br /&gt;
*Blender&lt;br /&gt;
*Inkscape&lt;br /&gt;
&lt;br /&gt;
===Desktop publishing===&lt;br /&gt;
*scribus&lt;br /&gt;
*kile&lt;br /&gt;
*lyx&lt;br /&gt;
==Education==&lt;br /&gt;
*Blinken&lt;br /&gt;
===Lingustic===&lt;br /&gt;
*KHangMan&lt;br /&gt;
*KWordQuiz&lt;br /&gt;
*Parley&lt;br /&gt;
===Math===&lt;br /&gt;
*KmPlot&lt;br /&gt;
*KAlgebra&lt;br /&gt;
*Kig&lt;br /&gt;
===Science===&lt;br /&gt;
*KStars&lt;br /&gt;
*Kalzium&lt;br /&gt;
*KTurtle&lt;br /&gt;
*Step&lt;br /&gt;
==Office==&lt;br /&gt;
*k3b&lt;br /&gt;
*Okular&lt;br /&gt;
*Kwrite&lt;br /&gt;
===Time management and Work Organization===&lt;br /&gt;
*KOrganizer&lt;br /&gt;
*KTimeTracker (remove from menu -- present as plasmoid)&lt;br /&gt;
*Kalarm (remove from menu -- present as plasmoid?)&lt;br /&gt;
*KNotes&lt;br /&gt;
*kontact&lt;br /&gt;
*&amp;lt;Syncing apps&amp;gt;&lt;br /&gt;
===Accounting===&lt;br /&gt;
*?&lt;br /&gt;
===OpenOffice.org===&lt;br /&gt;
*&amp;lt;openoffice apps&amp;gt;&lt;br /&gt;
===KOffice===&lt;br /&gt;
*&amp;lt;koffice apps&amp;gt;&lt;br /&gt;
===Desktop publishing===&lt;br /&gt;
*scribus&lt;br /&gt;
*kile&lt;br /&gt;
*lyx&lt;br /&gt;
===Translation===&lt;br /&gt;
* [http://userbase.kde.org/Lokalize Lokalize]&lt;br /&gt;
*OmegaT&lt;br /&gt;
*&amp;lt;dictionaries&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==System Tools==&lt;br /&gt;
*dolphin&lt;br /&gt;
*k3b&lt;br /&gt;
*Konsole&lt;br /&gt;
*konqueror&lt;br /&gt;
*okular&lt;br /&gt;
*KSysGuard&lt;br /&gt;
*KSystemLog&lt;br /&gt;
*Strigi search&lt;br /&gt;
*KSnapShot&lt;br /&gt;
*&amp;lt;backup app&amp;gt;&lt;br /&gt;
*&amp;lt;Accessibility apps&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Configuration==&lt;br /&gt;
*&amp;lt;...&amp;gt;&lt;br /&gt;
==Engineering==&lt;br /&gt;
*kompare&lt;br /&gt;
===Programming===&lt;br /&gt;
*KDevelop&lt;br /&gt;
*KCachegrind&lt;br /&gt;
*&amp;lt;Version control tools?&amp;gt;&lt;br /&gt;
===Web-development===&lt;br /&gt;
*Quanta&lt;br /&gt;
===Translation===&lt;br /&gt;
* [http://userbase.kde.org/Lokalize Lokalize]&lt;br /&gt;
*OmegaT&lt;br /&gt;
&lt;br /&gt;
===CAD===&lt;br /&gt;
===Math===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Explanation'''&lt;br /&gt;
*if several apps fulfill the same function (i.e. konqueror, opera, firefox), then their title should be in form of %function% - %appname%: &amp;quot;Web-browser - Konqueror&amp;quot;, and they should be listed consequently&lt;br /&gt;
*We need special entries in .desktop files determining the priority (Menu-Priority, Menu-Priority-KDE, Menu-Priority-Gnome).&lt;br /&gt;
**Because the order is important&lt;br /&gt;
**apps with Menu-Priotity above 100 constant could be visually separated by the line (they are the main apps in the category)&lt;br /&gt;
**apps with Menu-Priotity below 10 may be hidden at all (i.e. they are rarely used by an average user)&lt;br /&gt;
**If category has only 1 item, the item should be displayed instead of category&lt;br /&gt;
**Statistics is needed for this (simple voting?)&lt;br /&gt;
*'Utilities' category isn't needed at all. For example, 'root terminal' should be in System.&lt;br /&gt;
*Plasmoids: a lot of small apps need to be turned into plasmoids.&lt;br /&gt;
**charselect should be callable from anywhere but K-Menu&lt;br /&gt;
**kcalc -- the same&lt;br /&gt;
**dictionary applet&lt;br /&gt;
&lt;br /&gt;
I like the way desktop widgets are displayed in Mac OS X (easy accessible any moment - e.g. clock, calendar, calc)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Alternatively, instead of 'Office' we could use 'Desktop Publishing',  &lt;br /&gt;
putting&lt;br /&gt;
'Groupware (Kontact)' into 'Internet' +merge 'Graphics' to 'Multimedia':&lt;br /&gt;
*Multimedia&lt;br /&gt;
*k3b&lt;br /&gt;
**Music&lt;br /&gt;
***Play and Manage (amarok, tag editors)&lt;br /&gt;
***Create and edit (Audacity)&lt;br /&gt;
**Video&lt;br /&gt;
***Play&lt;br /&gt;
***Create and edit (kino, etc)&lt;br /&gt;
**Graphics&lt;br /&gt;
***View and Manage (Gwenview, Digikam)&lt;br /&gt;
***Create and edit (Krita, Kolourpaint, Gimp)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Critisism I recieved from kde-devel@ so far:&lt;br /&gt;
*.... submenus are bad. They do not seem very usable to me, especially when the structure is not evident: ...&lt;br /&gt;
**so it's better to look through all 10-20 entries (possibly in in each  &lt;br /&gt;
category) before finding app that you need?&lt;br /&gt;
**there should be no more then ~5 items in each category&lt;br /&gt;
*This breaks traditional alphabetical order...&lt;br /&gt;
**alphabetical order is of small value when user doesnt know the name of the  &lt;br /&gt;
app he/she is looking for.&lt;br /&gt;
*Somehow 11 items seems better than 4 submenus&lt;br /&gt;
**but I wrote only few apps, in real life there will be more apps&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
And this is said to be false: &amp;quot;the menu is for newcomers, experienced users use 'Search' field anyway.&amp;quot;&lt;/div&gt;</summary>
		<author><name>Shaforostoff</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Projects/Plasma/Education</id>
		<title>Projects/Plasma/Education</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Projects/Plasma/Education"/>
				<updated>2009-01-18T21:41:50Z</updated>
		
		<summary type="html">&lt;p&gt;Shaforostoff: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;See [http://aseigo.blogspot.com/2009/01/purpose-specific-containments.html this blog entry] for what this page is all about. In short: design concepts and requirements for a Plasma layout for educational needs.&lt;br /&gt;
&lt;br /&gt;
Try and keep thoughts in logical groups, and if there is discussion be sure to include your name with your thoughts.&lt;br /&gt;
&lt;br /&gt;
Remember that this is a *brain storm* page. There are no wrong (or right) ideas or suggestions. The only wrong suggestions are ones that aren't ever shared with everyone here on the wiki. ;) We will sort through all the ideas *later* and separate out a set of design and implementation goals from the input gathered below.&lt;br /&gt;
&lt;br /&gt;
== Desktop Activity ==&lt;br /&gt;
&lt;br /&gt;
Because computers in schools are scarse, most of them are shared by several students at several  moments. It would be nice if the desktop recognizes the user that is logged in, see to what group the user belongs (6year old, 7year old etc) and then shows a desktop that is best suited for this student.&lt;br /&gt;
One can think of the following changes in the desktop:&lt;br /&gt;
&lt;br /&gt;
--other examples of groups and how the group might be useful to a teacher include: &lt;br /&gt;
a) &amp;quot;Mr. Gads Class&amp;quot; who is currently working on fractions and so might want a particular set of apps, though next week might want a different set.&lt;br /&gt;
b) &amp;quot;tutors&amp;quot;, the students who have extra privileges to help them access extra apps&lt;br /&gt;
c) &amp;quot;Level 1&amp;quot; for the students who have not yet show sufficient trustworthiness to access particular parts of the desktop or apps.&lt;br /&gt;
d) &amp;quot;Period 1&amp;quot; who need to be able to access certain data sets that they created but not those of Period 2, 3, or 4's, (because of a big competition between classes.  There are many reasons to only let a class view resources they created, though of course wider collaboration is the goal in other learning activities.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
-application icons for this student/group to start applications with one click (touch?). Only the applications are visible that are needed for this specific student/group&lt;br /&gt;
&lt;br /&gt;
-wallpaper adapted to this student, &lt;br /&gt;
--or alternatively, make it so a student can choose from a set of wallpapers.  It would be nice to make this 'choice' feature a perk which a teacher could give the student for cooperation or some other achievement.&lt;br /&gt;
&lt;br /&gt;
-font sizes (6 year old need bigger fonts then 12 year olds.&lt;br /&gt;
--Again, make it so students can change font size if they have good fine motor skills or, for example have vision or fine motor issues...  Starting with some size specific to a group setting would be great, just make it adjustable.&lt;br /&gt;
&lt;br /&gt;
-number of desktops (one desktop for a 6 year old, 12 year can have multiple).&lt;br /&gt;
--if possible provide a visual transition between desktops--some metaphor such as moving to a different part of a (larger expanse of) wallpaper.  Too, any metaphor which connects one's own physical motion with motion of objects (such as a hand grabbing the fabric of the wall paper and with a swish of the mouse, ones location in one segment of the wallpaper moves to another.&lt;br /&gt;
&lt;br /&gt;
For this to work there should be a possibility for a teacher to set the application per group (or even per student). As a teacher you can prepare the lessons in the evening by installing the icons and the only thing the students needs to do next morning is login and click the applications that are available.&lt;br /&gt;
&lt;br /&gt;
== Panel ==&lt;br /&gt;
as stated before the panel complexity should be adaptable to the capabilities of a student/group.&lt;br /&gt;
Think of:&lt;br /&gt;
&lt;br /&gt;
-number of available desktops&lt;br /&gt;
&lt;br /&gt;
-shortcut buttons to common applications (firefox, or a browser targeted to small children)&lt;br /&gt;
&lt;br /&gt;
-font sizes&lt;br /&gt;
&lt;br /&gt;
--How about a 3D desktop where there is a widget that one can use to adjust perspective?  As one moves an object towards the center of the desktop, the icon would get smaller mimicing that it were moving further away.  One could set the 3D perspective so that the desktop were flat, of course.&lt;br /&gt;
&lt;br /&gt;
--Do the apple doc thing where one can add or remove/add apps on the left side and folders and files on the right side.  Also, provide the teacher with opportunities to add/lock some icons to all docs, allowing students to move others.  Important: allow students to 'hide' the dock to get it out of the way and free up desk space.  Being able to resize it is cool, too!&lt;br /&gt;
&lt;br /&gt;
--Don't make the desktop too specialized-looking (thinking of the old-time &amp;quot;panel desktop&amp;quot; they had for children), keep it like a 'regular' desktop.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Widgets ==&lt;br /&gt;
&lt;br /&gt;
== Problems with Current Desktop == &lt;br /&gt;
- KDE menu is very long and complicated looking, especially having 2x system and 2x settings. Try to find Konsole in one shot! See [[Projects/Plasma/AppsMenuReorganization]]&lt;br /&gt;
&lt;br /&gt;
- Some Edu apps are buried under incomprehensible menu entries for younger kids (eg. edutainment/miscellaneous/)&lt;br /&gt;
&lt;br /&gt;
- Kids very easily &amp;quot;damage&amp;quot; the panel - delete or move K button, move the whole panel to the side. I see this a lot.&lt;br /&gt;
&lt;br /&gt;
- Minimised apps are too faint on the panel, and kids log out leaving them open. This leads to problems with OOo or Iceweasel &amp;quot;already running&amp;quot; errors.&lt;br /&gt;
&lt;br /&gt;
- The open/save dialogues of non-KDE apps are different, using double-click, &amp;quot;browse for more folders&amp;quot;, and other Gnome-isms that cause confusion.&lt;br /&gt;
&lt;br /&gt;
= Cases of study =&lt;br /&gt;
== mEDUxa ==&lt;br /&gt;
=== General description ===&lt;br /&gt;
You have a general description of the project here: http://www.grupocpd.com/archivos_documentos/info_meduxa/meduxa_project_released/#&lt;br /&gt;
&lt;br /&gt;
Screenshot: http://www.grupocpd.com/archivos_documentos/info_meduxa/meduxa_project_released/Image00043009/ImagePopup&lt;br /&gt;
&lt;br /&gt;
Launchpad link to hexperides project (meduxa based): https://code.launchpad.net/~hexperides/hexperides/main&lt;br /&gt;
&lt;br /&gt;
=== Primary school desktop configurations ===&lt;br /&gt;
This profile was oriented to pupils up to 8 years old. Many usability oriented configurations were made. In general, size of every element ha been increased and a strong selection of apps have also been made. Many of them didn't have a good behaviour when configured under kiosk mode.&lt;br /&gt;
&lt;br /&gt;
The major desktop configurations were:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
# The desktop didn't include kpanel. The only really basic feature it is needed for is Minimice/maximice apps. We configured the mouse for that.&lt;br /&gt;
# Buttons reduced from 3 to 2. Mouse wheel was disabled. Note: this supposed a heavy disccusion not resolved. Some teachers pointed that it should be the right button the one to be disabled. All agreed on having only two available.&lt;br /&gt;
# Right button only showed minimised apps&lt;br /&gt;
# Left button configured with double click with a greater delay than the default config. A profiles for left handed kids should be added, since kids nor teachers couldn't change kiosk mode configs.&lt;br /&gt;
# Pointer was maximised. An attractive icon for this was needed.&lt;br /&gt;
# Windows and buttons (in bars) lost definition with KDE3 series when maximiced. some limitations weren't possible to overpass.&lt;br /&gt;
# We made fonts bigger. we also showed icons + text when we could. Eventhough smaller kids do not know how to read, the associate letters to icons so when they learn, it is much easier for them to understand the vocabulary.&lt;br /&gt;
# Only predefined buttons were define as visible. We hide most of the config options in every app. We added the close button and the help button in all of them. The close button was always on the right side. Coherency on the position of the buttons was applied.&lt;br /&gt;
# Many help manuals were in english.&lt;br /&gt;
# We decided to separate the browser (firefox) from the file manager (Konqueror).&lt;br /&gt;
# We used the GNOME Jumbo theme. Firefox didn't have any option for avoiding kids to change config options (they were in the home directory). Hiding them was the only option. Many bug reports expected because of that (unsolved problem by that time. Other gnome based edu distros had the same problem)&lt;br /&gt;
# We grouped the apps to allow a better understanding. We place the most used ones close to the middle of the screen. We put the log out button at the button right corner, the less accessible one.&lt;br /&gt;
# A special wallpaper was made to reinforce this concept. The base colour was blue, not because of the kids, but because of the teachers, since most of them came from the dark side ;). remember computers had dual bot (windows / linux). we wanted to reduce the impact but still having a funnier look.&lt;br /&gt;
# Drag and drop was avoided except inside konqueror. It was too difficult for younger kids and many unexpected things happen when they played with it. In konqueror, the impact wasn't so important since it only affected to data, which it is not critical to little kids since they don't re-use it much.&lt;br /&gt;
# Icons were locked and couldn't been erased.&lt;br /&gt;
# The names of the apps were changed to something that remids what the app is used for. For instance: Konqueror changed into Mi Mochila (my bag), firefox became navegar (browse) and so on.&lt;br /&gt;
# Contrast in icons and text were increased and their size increased.&lt;br /&gt;
# selected folders colour was changed to increase contrast.&lt;br /&gt;
# To be able to empty it, the trash can was placed on the desktop. That is a procedure kids need to learn since they assume that something they cannot see, doesn't exist anymore.&lt;br /&gt;
# The device icons were placed under an specific folder in the home directory (La Mochila).&lt;br /&gt;
# some instructions were made to teachers so they can run an app not included in the desktop on this profile, so they can use this desktop to perpare their lessons. &lt;br /&gt;
# No need of any password to login. Remember last session when log in option set.&lt;br /&gt;
&lt;br /&gt;
==== Kiosk mode paths ====&lt;br /&gt;
# File association was changed: /usr/local/share/kde-profile/meduxa_primaria/share/config/profilerc&lt;br /&gt;
# The profile config archives were located here: /usr/local/share/kde-profile/meduxa_primaria/share/config/kdeglobals&lt;br /&gt;
# The desktop config files were located here: &lt;br /&gt;
## /usr/local/share/kde-profile/meduxa_primaria/share/config/kwinrc&lt;br /&gt;
## /usr/local/share/kde-profile/meduxa_primaria/share/config/kwin4rc&lt;br /&gt;
##/usr/local/share/kde-profile/meduxa_primaria/share/config/kdesktoprc&lt;br /&gt;
# wallpaper options: /usr/local/share/kde-profile/meduxa_primaria/share/config/ksplashrc&lt;br /&gt;
# Fonts and icons customisations: /usr/local/share/kde-profile/meduxa_primaria/share/config/kpersonalizerrc&lt;br /&gt;
# keyboard configs: /usr/local/share/kde-profile/meduxa_primaria/share/config/kcminputrc&lt;br /&gt;
# kpanel configs:&lt;br /&gt;
## /usr/local/share/kde-profile/meduxa_primaria/share/config/kickerrc&lt;br /&gt;
## /usr/local/share/kde-profile/meduxa_primaria/share/autostart/panel.desktop&lt;br /&gt;
# konqueror configs:&lt;br /&gt;
## /usr/local/share/kde-profile/meduxa_primaria/share/config/konqiconviewrc&lt;br /&gt;
## /usr/local/share/kde-profile/meduxa_primaria/share/config/konquerorrc&lt;br /&gt;
## /usr/local/share/kde-profile/meduxa_primaria/share/apps/konqueror/konqueror.rc&lt;br /&gt;
# Icons position: /usr/local/share/kde-profile/meduxa_primaria/share/apps/kdesktop/Desktop/.directory&lt;br /&gt;
&lt;br /&gt;
More configs were made.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Simplified Desktop Proposal =&lt;br /&gt;
&lt;br /&gt;
The goal of this proposal is to create a simplified desktop experience for young students. The simplified desktop will hide the complex aspects of the current window manager and desktop work flow. It will present users with a simple list of applications, which they simply click to run. It should also come with a tool to allow teachers to quickly change the list of applications.&lt;br /&gt;
&lt;br /&gt;
== Goals == &lt;br /&gt;
# Provide a simple user experience for young students, or special purpose classrooms&lt;br /&gt;
# Hide the advanced aspects of using the desktop&lt;br /&gt;
# Limit possible tasks to a small number(10)?&lt;br /&gt;
# Allow users who can't read to access basic applications&lt;br /&gt;
# Teachers should be able to quickly change the list of applications&lt;br /&gt;
&lt;br /&gt;
== Mock Up ==&lt;br /&gt;
[[image:Education-mockup-marked.png]]&lt;br /&gt;
&lt;br /&gt;
== How it works ==&lt;br /&gt;
# Applications are shown across the bottom&lt;br /&gt;
## Running applications are highlighted in light blue&lt;br /&gt;
## The active application is highlighted in dark blue&lt;br /&gt;
## System applications, such as the trash and home folder, are on the right,  while normal applications are on the left&lt;br /&gt;
## The application icons may or may not have labels&lt;br /&gt;
# Task management is simple, because the same button launches an app, and switches to it when it's already running.&lt;br /&gt;
# Windows appear maximized, with no window borders. Except for apps that use many small windows that are not meant to be maximized. In these cases, all other windows are minimized, and the active applications windows are displayed normally on the screen.&lt;br /&gt;
# The thin top bar contains the application icon and title, as well as the close button, system tray, and the clock.&lt;br /&gt;
# None of the panels or icons are movable. This will prevent students from accidentally messing up their desktop.&lt;/div&gt;</summary>
		<author><name>Shaforostoff</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/User:Shaforostoff</id>
		<title>User:Shaforostoff</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/User:Shaforostoff"/>
				<updated>2008-12-25T21:03:23Z</updated>
		
		<summary type="html">&lt;p&gt;Shaforostoff: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;My name is Nick Shaforostoff (legal name: Mykola Shaforostov - that is ukrainian version).&lt;br /&gt;
&lt;br /&gt;
I'm the author of Lokalize. I also do some work on kdelibs/kdebase other partks of KDE sometimes.&lt;br /&gt;
&lt;br /&gt;
I'm 4th year student at National Technical University of Ukraine 'KPI', Applied Mathematics Faculty. I study Computer Engineering and my specialization is System Programming.&lt;br /&gt;
&lt;br /&gt;
[http://youonlylivetwice.info/ youonlylivetwice.info]&lt;/div&gt;</summary>
		<author><name>Shaforostoff</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Schedules/KDE4/4.2_Changelog</id>
		<title>Schedules/KDE4/4.2 Changelog</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Schedules/KDE4/4.2_Changelog"/>
				<updated>2008-12-25T20:58:22Z</updated>
		
		<summary type="html">&lt;p&gt;Shaforostoff: /* Workspace */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Workspace=&lt;br /&gt;
* policykit (probably beta2)&lt;br /&gt;
* Use knotify in kwrited&lt;br /&gt;
* option for full path in breadcrumb mode&lt;br /&gt;
* VI input mode in kwrite and kate&lt;br /&gt;
* PowerDevil&lt;br /&gt;
* kephal for better xrandr-support.&lt;br /&gt;
* Add ConsoleKit support to kdm&lt;br /&gt;
* relayouted several config pages (mainly systemsettings, konqueror) to fit 1024x600 netbook screen.&lt;br /&gt;
&lt;br /&gt;
==Plasma==&lt;br /&gt;
(see also plasma changelog)&lt;br /&gt;
* KRunner: Noun-Verb support&lt;br /&gt;
* Konqueror history runner&lt;br /&gt;
* Kate sessions runner&lt;br /&gt;
* Recent Documents runner&lt;br /&gt;
* Notifications and jobs in systemtray&lt;br /&gt;
* panel-&amp;gt;desktop dragging&lt;br /&gt;
* Improved Battery applet for Powerdevil&lt;br /&gt;
* Wallpaper plugins&lt;br /&gt;
* Python support&lt;br /&gt;
* Ruby support&lt;br /&gt;
* Plasma Popup Tips&lt;br /&gt;
* Taskbar grouping&lt;br /&gt;
* Weather Plasmoid&lt;br /&gt;
* Plasma On Screensaver&lt;br /&gt;
* Add New Widgets: Pluggable widget browser&lt;br /&gt;
* Activity&amp;lt;-&amp;gt;Virtual Desktop Affinity (no UI)&lt;br /&gt;
* Panel Autohide&lt;br /&gt;
* Keyboard Shortcut Config UI&lt;br /&gt;
* Save icon positioning in folderview&lt;br /&gt;
* Quicklaunch Plasmoid&lt;br /&gt;
* drop indicator in panel&lt;br /&gt;
* make the panel controller a bit more usable&lt;br /&gt;
* nicely draw the desktop toolbox when it's moved because of a panel&lt;br /&gt;
* Various widgets (TODO)&lt;br /&gt;
* Panel form factor support in the folderview applet, twitter, news, ...&lt;br /&gt;
* Improved folderview configuration&lt;br /&gt;
* Keyboard status applet&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==KWin==&lt;br /&gt;
* Move maximized windows between Xinerama screens&lt;br /&gt;
* Support for decoration shadows&lt;br /&gt;
* Implement _NET_WM_FULLSCREEN_MONITORS EWMH spec hint&lt;br /&gt;
* Compositing enabled by default&lt;br /&gt;
* Compositing self-check&lt;br /&gt;
* Global animation speed setting&lt;br /&gt;
* Motion dynamics&lt;br /&gt;
* Improved UI for selecting window/desktop switcher&lt;br /&gt;
* UI for assigning effects to screen edges&lt;br /&gt;
* Cube/cylinder/sphere effect&lt;br /&gt;
* Magic lamp minimize effect&lt;br /&gt;
* Animation in box switch effect&lt;br /&gt;
* Mouse interaction for cover switch Effect&lt;br /&gt;
* Thumbnail bar in the cover switch effect&lt;br /&gt;
* Improved snow effect&lt;br /&gt;
* Improved desktop grid&lt;br /&gt;
* New present window layout modes&lt;br /&gt;
* Invert only selected windows&lt;br /&gt;
* Unredirecting of fullscreen windows (flicker-- w/ bad video drivers)&lt;br /&gt;
&lt;br /&gt;
=Applications=&lt;br /&gt;
* Kate: snippets plugin ported, ctags plugin, build plugin improved&lt;br /&gt;
* perldoc kioslave&lt;br /&gt;
* Lokalize: MDI tabbed interface&lt;br /&gt;
* Lokalize: Improved translation memory&lt;br /&gt;
* Lokalize/kdelibs: widget text capture for any KDE application (by middle-clicking the widget)&lt;br /&gt;
* Gwenview: support for animated gif and mng&lt;br /&gt;
* Okular: support fax documents&lt;br /&gt;
* Konqueror: bookmarks page (+kioslave)&lt;br /&gt;
* Dolphin: previews in tooltips, zoom slider in statusbar&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Edu==&lt;br /&gt;
* KAlgebra: new parser / lexer, import for MathML presentation markup&lt;br /&gt;
* KBruch: UI improvements and merge of KPercentage functionality&lt;br /&gt;
* Python bindings to Marble widget classes&lt;br /&gt;
* KStars: Display millions of stars, many more&lt;br /&gt;
* KTurtle: color picker, command line, export image&lt;br /&gt;
* Parley: UI improvements and automatic translation fetching from online sources&lt;br /&gt;
* Marble: Moon Map, Historical Map, Marble Runners, On-Screen Navigation, Worldclock Plasmoid&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Admin / Utils / Network==&lt;br /&gt;
* system-config-printer-kde and printer-applet&lt;br /&gt;
* Improved support for LDAP (Microsoft Active Directory) in KRDC&lt;br /&gt;
* improved per host settings in KRDC&lt;br /&gt;
* Okteta: various UI improvements&lt;br /&gt;
* Ark: service menu and password support&lt;br /&gt;
* Ksnapshot: recording of window title, multiscreen improvements&lt;br /&gt;
&lt;br /&gt;
==PIM==&lt;br /&gt;
* Akregator: basic support for enclosures&lt;br /&gt;
* KAlarm: Option to exclude holidays in recurring alarms&lt;br /&gt;
* KAlarm: Improved layout for configuration dialog&lt;br /&gt;
* KAlarm: New simple mode for alarm edit dialog&lt;br /&gt;
* KAlarm: Ability to set global shortcuts to create alarms&lt;br /&gt;
* KJots: Importing notes from knowit&lt;br /&gt;
* KMail: Nicer attachment view&lt;br /&gt;
* KMail: New message list&lt;br /&gt;
* KNotes: Zeroconf support for sending notes on LAN &lt;br /&gt;
* Kontact: new planner summary&lt;br /&gt;
* Kontact: Drag and drop in free/busy view&lt;br /&gt;
&lt;br /&gt;
==Games==&lt;br /&gt;
* Dragging jewels and untimes games in kdiamond&lt;br /&gt;
* Ksirk: jabber-based netgame finding, scrolling improvements, skins via GHNS, skins editor&lt;br /&gt;
* KGoldRunner: new levels&lt;br /&gt;
* KBlocks: sounds support&lt;br /&gt;
* New game: Killbots&lt;br /&gt;
* New game: Bomber&lt;br /&gt;
&lt;br /&gt;
=Libraries &amp;amp; development platform=&lt;br /&gt;
* Phonon: VideoWidget snapshot function&lt;br /&gt;
* KHTML: Early domain name resolution (prefetch)&lt;br /&gt;
* KHTML: embedded search/find-as-you-type bar&lt;br /&gt;
* CMake: Reduced library link interface&lt;br /&gt;
* Eigen (how's that interesting?&lt;br /&gt;
* PyKDE: KCM and oder plugins support&lt;br /&gt;
* Various improvements in the Kross Ruby and Python engines&lt;br /&gt;
* New Kross engine: Falcon&lt;br /&gt;
* fish and sftp support on Windows&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===NEEDINFO===&lt;br /&gt;
&lt;br /&gt;
* kpackagekit?&lt;br /&gt;
* QTScript improvements (which? mail@dipe.org)&lt;br /&gt;
* SVG support in KHTML (Vyacheslav Tokarev &amp;lt;tsjoker@gmail.com&amp;gt;)&lt;br /&gt;
* Support for CSS3 border-* properties (Fredrik Höglund and Maksim Orlovich &amp;lt;fredrik@kde.org&amp;gt;)&lt;br /&gt;
* support of Video/Audio elements (Germain Garand &amp;lt;germain@ebooksfrance.org&amp;gt;)&lt;br /&gt;
* kdeui: Rich text builders for KTextEdit, including BBCode, html, plain text markup, mediawiki and markdown output (Stephen Kelly &amp;lt;steveire@gmail.com&amp;gt;)&lt;br /&gt;
* NX support in krdc David Gross &amp;lt;gdavid.devel@gmail.com&amp;gt;&lt;/div&gt;</summary>
		<author><name>Shaforostoff</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Schedules/KDE4/4.2_Changelog</id>
		<title>Schedules/KDE4/4.2 Changelog</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Schedules/KDE4/4.2_Changelog"/>
				<updated>2008-12-25T20:55:55Z</updated>
		
		<summary type="html">&lt;p&gt;Shaforostoff: /* Applications */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Workspace=&lt;br /&gt;
* policykit (probably beta2)&lt;br /&gt;
* Use knotify in kwrited&lt;br /&gt;
* option for full path in breadcrumb mode&lt;br /&gt;
* VI input mode in kwrite and kate&lt;br /&gt;
* PowerDevil&lt;br /&gt;
* kephal for better xrandr-support.&lt;br /&gt;
* Add ConsoleKit support to kdm&lt;br /&gt;
&lt;br /&gt;
==Plasma==&lt;br /&gt;
(see also plasma changelog)&lt;br /&gt;
* KRunner: Noun-Verb support&lt;br /&gt;
* Konqueror history runner&lt;br /&gt;
* Kate sessions runner&lt;br /&gt;
* Recent Documents runner&lt;br /&gt;
* Notifications and jobs in systemtray&lt;br /&gt;
* panel-&amp;gt;desktop dragging&lt;br /&gt;
* Improved Battery applet for Powerdevil&lt;br /&gt;
* Wallpaper plugins&lt;br /&gt;
* Python support&lt;br /&gt;
* Ruby support&lt;br /&gt;
* Plasma Popup Tips&lt;br /&gt;
* Taskbar grouping&lt;br /&gt;
* Weather Plasmoid&lt;br /&gt;
* Plasma On Screensaver&lt;br /&gt;
* Add New Widgets: Pluggable widget browser&lt;br /&gt;
* Activity&amp;lt;-&amp;gt;Virtual Desktop Affinity (no UI)&lt;br /&gt;
* Panel Autohide&lt;br /&gt;
* Keyboard Shortcut Config UI&lt;br /&gt;
* Save icon positioning in folderview&lt;br /&gt;
* Quicklaunch Plasmoid&lt;br /&gt;
* drop indicator in panel&lt;br /&gt;
* make the panel controller a bit more usable&lt;br /&gt;
* nicely draw the desktop toolbox when it's moved because of a panel&lt;br /&gt;
* Various widgets (TODO)&lt;br /&gt;
* Panel form factor support in the folderview applet, twitter, news, ...&lt;br /&gt;
* Improved folderview configuration&lt;br /&gt;
* Keyboard status applet&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==KWin==&lt;br /&gt;
* Move maximized windows between Xinerama screens&lt;br /&gt;
* Support for decoration shadows&lt;br /&gt;
* Implement _NET_WM_FULLSCREEN_MONITORS EWMH spec hint&lt;br /&gt;
* Compositing enabled by default&lt;br /&gt;
* Compositing self-check&lt;br /&gt;
* Global animation speed setting&lt;br /&gt;
* Motion dynamics&lt;br /&gt;
* Improved UI for selecting window/desktop switcher&lt;br /&gt;
* UI for assigning effects to screen edges&lt;br /&gt;
* Cube/cylinder/sphere effect&lt;br /&gt;
* Magic lamp minimize effect&lt;br /&gt;
* Animation in box switch effect&lt;br /&gt;
* Mouse interaction for cover switch Effect&lt;br /&gt;
* Thumbnail bar in the cover switch effect&lt;br /&gt;
* Improved snow effect&lt;br /&gt;
* Improved desktop grid&lt;br /&gt;
* New present window layout modes&lt;br /&gt;
* Invert only selected windows&lt;br /&gt;
* Unredirecting of fullscreen windows (flicker-- w/ bad video drivers)&lt;br /&gt;
&lt;br /&gt;
=Applications=&lt;br /&gt;
* Kate: snippets plugin ported, ctags plugin, build plugin improved&lt;br /&gt;
* perldoc kioslave&lt;br /&gt;
* Lokalize: MDI tabbed interface&lt;br /&gt;
* Lokalize: Improved translation memory&lt;br /&gt;
* Lokalize/kdelibs: widget text capture for any KDE application (by middle-clicking the widget)&lt;br /&gt;
* Gwenview: support for animated gif and mng&lt;br /&gt;
* Okular: support fax documents&lt;br /&gt;
* Konqueror: bookmarks page (+kioslave)&lt;br /&gt;
* Dolphin: previews in tooltips, zoom slider in statusbar&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Edu==&lt;br /&gt;
* KAlgebra: new parser / lexer, import for MathML presentation markup&lt;br /&gt;
* KBruch: UI improvements and merge of KPercentage functionality&lt;br /&gt;
* Python bindings to Marble widget classes&lt;br /&gt;
* KStars: Display millions of stars, many more&lt;br /&gt;
* KTurtle: color picker, command line, export image&lt;br /&gt;
* Parley: UI improvements and automatic translation fetching from online sources&lt;br /&gt;
* Marble: Moon Map, Historical Map, Marble Runners, On-Screen Navigation, Worldclock Plasmoid&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Admin / Utils / Network==&lt;br /&gt;
* system-config-printer-kde and printer-applet&lt;br /&gt;
* Improved support for LDAP (Microsoft Active Directory) in KRDC&lt;br /&gt;
* improved per host settings in KRDC&lt;br /&gt;
* Okteta: various UI improvements&lt;br /&gt;
* Ark: service menu and password support&lt;br /&gt;
* Ksnapshot: recording of window title, multiscreen improvements&lt;br /&gt;
&lt;br /&gt;
==PIM==&lt;br /&gt;
* Akregator: basic support for enclosures&lt;br /&gt;
* KAlarm: Option to exclude holidays in recurring alarms&lt;br /&gt;
* KAlarm: Improved layout for configuration dialog&lt;br /&gt;
* KAlarm: New simple mode for alarm edit dialog&lt;br /&gt;
* KAlarm: Ability to set global shortcuts to create alarms&lt;br /&gt;
* KJots: Importing notes from knowit&lt;br /&gt;
* KMail: Nicer attachment view&lt;br /&gt;
* KMail: New message list&lt;br /&gt;
* KNotes: Zeroconf support for sending notes on LAN &lt;br /&gt;
* Kontact: new planner summary&lt;br /&gt;
* Kontact: Drag and drop in free/busy view&lt;br /&gt;
&lt;br /&gt;
==Games==&lt;br /&gt;
* Dragging jewels and untimes games in kdiamond&lt;br /&gt;
* Ksirk: jabber-based netgame finding, scrolling improvements, skins via GHNS, skins editor&lt;br /&gt;
* KGoldRunner: new levels&lt;br /&gt;
* KBlocks: sounds support&lt;br /&gt;
* New game: Killbots&lt;br /&gt;
* New game: Bomber&lt;br /&gt;
&lt;br /&gt;
=Libraries &amp;amp; development platform=&lt;br /&gt;
* Phonon: VideoWidget snapshot function&lt;br /&gt;
* KHTML: Early domain name resolution (prefetch)&lt;br /&gt;
* KHTML: embedded search/find-as-you-type bar&lt;br /&gt;
* CMake: Reduced library link interface&lt;br /&gt;
* Eigen (how's that interesting?&lt;br /&gt;
* PyKDE: KCM and oder plugins support&lt;br /&gt;
* Various improvements in the Kross Ruby and Python engines&lt;br /&gt;
* New Kross engine: Falcon&lt;br /&gt;
* fish and sftp support on Windows&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===NEEDINFO===&lt;br /&gt;
&lt;br /&gt;
* kpackagekit?&lt;br /&gt;
* QTScript improvements (which? mail@dipe.org)&lt;br /&gt;
* SVG support in KHTML (Vyacheslav Tokarev &amp;lt;tsjoker@gmail.com&amp;gt;)&lt;br /&gt;
* Support for CSS3 border-* properties (Fredrik Höglund and Maksim Orlovich &amp;lt;fredrik@kde.org&amp;gt;)&lt;br /&gt;
* support of Video/Audio elements (Germain Garand &amp;lt;germain@ebooksfrance.org&amp;gt;)&lt;br /&gt;
* kdeui: Rich text builders for KTextEdit, including BBCode, html, plain text markup, mediawiki and markdown output (Stephen Kelly &amp;lt;steveire@gmail.com&amp;gt;)&lt;br /&gt;
* NX support in krdc David Gross &amp;lt;gdavid.devel@gmail.com&amp;gt;&lt;/div&gt;</summary>
		<author><name>Shaforostoff</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Schedules/KDE4/4.2_Changelog</id>
		<title>Schedules/KDE4/4.2 Changelog</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Schedules/KDE4/4.2_Changelog"/>
				<updated>2008-12-25T20:54:50Z</updated>
		
		<summary type="html">&lt;p&gt;Shaforostoff: /* Applications */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Workspace=&lt;br /&gt;
* policykit (probably beta2)&lt;br /&gt;
* Use knotify in kwrited&lt;br /&gt;
* option for full path in breadcrumb mode&lt;br /&gt;
* VI input mode in kwrite and kate&lt;br /&gt;
* PowerDevil&lt;br /&gt;
* kephal for better xrandr-support.&lt;br /&gt;
* Add ConsoleKit support to kdm&lt;br /&gt;
&lt;br /&gt;
==Plasma==&lt;br /&gt;
(see also plasma changelog)&lt;br /&gt;
* KRunner: Noun-Verb support&lt;br /&gt;
* Konqueror history runner&lt;br /&gt;
* Kate sessions runner&lt;br /&gt;
* Recent Documents runner&lt;br /&gt;
* Notifications and jobs in systemtray&lt;br /&gt;
* panel-&amp;gt;desktop dragging&lt;br /&gt;
* Improved Battery applet for Powerdevil&lt;br /&gt;
* Wallpaper plugins&lt;br /&gt;
* Python support&lt;br /&gt;
* Ruby support&lt;br /&gt;
* Plasma Popup Tips&lt;br /&gt;
* Taskbar grouping&lt;br /&gt;
* Weather Plasmoid&lt;br /&gt;
* Plasma On Screensaver&lt;br /&gt;
* Add New Widgets: Pluggable widget browser&lt;br /&gt;
* Activity&amp;lt;-&amp;gt;Virtual Desktop Affinity (no UI)&lt;br /&gt;
* Panel Autohide&lt;br /&gt;
* Keyboard Shortcut Config UI&lt;br /&gt;
* Save icon positioning in folderview&lt;br /&gt;
* Quicklaunch Plasmoid&lt;br /&gt;
* drop indicator in panel&lt;br /&gt;
* make the panel controller a bit more usable&lt;br /&gt;
* nicely draw the desktop toolbox when it's moved because of a panel&lt;br /&gt;
* Various widgets (TODO)&lt;br /&gt;
* Panel form factor support in the folderview applet, twitter, news, ...&lt;br /&gt;
* Improved folderview configuration&lt;br /&gt;
* Keyboard status applet&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==KWin==&lt;br /&gt;
* Move maximized windows between Xinerama screens&lt;br /&gt;
* Support for decoration shadows&lt;br /&gt;
* Implement _NET_WM_FULLSCREEN_MONITORS EWMH spec hint&lt;br /&gt;
* Compositing enabled by default&lt;br /&gt;
* Compositing self-check&lt;br /&gt;
* Global animation speed setting&lt;br /&gt;
* Motion dynamics&lt;br /&gt;
* Improved UI for selecting window/desktop switcher&lt;br /&gt;
* UI for assigning effects to screen edges&lt;br /&gt;
* Cube/cylinder/sphere effect&lt;br /&gt;
* Magic lamp minimize effect&lt;br /&gt;
* Animation in box switch effect&lt;br /&gt;
* Mouse interaction for cover switch Effect&lt;br /&gt;
* Thumbnail bar in the cover switch effect&lt;br /&gt;
* Improved snow effect&lt;br /&gt;
* Improved desktop grid&lt;br /&gt;
* New present window layout modes&lt;br /&gt;
* Invert only selected windows&lt;br /&gt;
* Unredirecting of fullscreen windows (flicker-- w/ bad video drivers)&lt;br /&gt;
&lt;br /&gt;
=Applications=&lt;br /&gt;
* Kate: snippets plugin ported, ctags plugin, build plugin improved&lt;br /&gt;
* perldoc kioslave&lt;br /&gt;
* Lokalize: MDI tabbed interface, improved translation memory, widget text capture for any KDE application (by middle-clicking the widget)&lt;br /&gt;
* Gwenview: support for animated gif and mng&lt;br /&gt;
* Okular: support fax documents&lt;br /&gt;
* Konqueror: bookmarks page (+kioslave)&lt;br /&gt;
* Dolphin: previews in tooltips, zoom slider in statusbar&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Edu==&lt;br /&gt;
* KAlgebra: new parser / lexer, import for MathML presentation markup&lt;br /&gt;
* KBruch: UI improvements and merge of KPercentage functionality&lt;br /&gt;
* Python bindings to Marble widget classes&lt;br /&gt;
* KStars: Display millions of stars, many more&lt;br /&gt;
* KTurtle: color picker, command line, export image&lt;br /&gt;
* Parley: UI improvements and automatic translation fetching from online sources&lt;br /&gt;
* Marble: Moon Map, Historical Map, Marble Runners, On-Screen Navigation, Worldclock Plasmoid&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Admin / Utils / Network==&lt;br /&gt;
* system-config-printer-kde and printer-applet&lt;br /&gt;
* Improved support for LDAP (Microsoft Active Directory) in KRDC&lt;br /&gt;
* improved per host settings in KRDC&lt;br /&gt;
* Okteta: various UI improvements&lt;br /&gt;
* Ark: service menu and password support&lt;br /&gt;
* Ksnapshot: recording of window title, multiscreen improvements&lt;br /&gt;
&lt;br /&gt;
==PIM==&lt;br /&gt;
* Akregator: basic support for enclosures&lt;br /&gt;
* KAlarm: Option to exclude holidays in recurring alarms&lt;br /&gt;
* KAlarm: Improved layout for configuration dialog&lt;br /&gt;
* KAlarm: New simple mode for alarm edit dialog&lt;br /&gt;
* KAlarm: Ability to set global shortcuts to create alarms&lt;br /&gt;
* KJots: Importing notes from knowit&lt;br /&gt;
* KMail: Nicer attachment view&lt;br /&gt;
* KMail: New message list&lt;br /&gt;
* KNotes: Zeroconf support for sending notes on LAN &lt;br /&gt;
* Kontact: new planner summary&lt;br /&gt;
* Kontact: Drag and drop in free/busy view&lt;br /&gt;
&lt;br /&gt;
==Games==&lt;br /&gt;
* Dragging jewels and untimes games in kdiamond&lt;br /&gt;
* Ksirk: jabber-based netgame finding, scrolling improvements, skins via GHNS, skins editor&lt;br /&gt;
* KGoldRunner: new levels&lt;br /&gt;
* KBlocks: sounds support&lt;br /&gt;
* New game: Killbots&lt;br /&gt;
* New game: Bomber&lt;br /&gt;
&lt;br /&gt;
=Libraries &amp;amp; development platform=&lt;br /&gt;
* Phonon: VideoWidget snapshot function&lt;br /&gt;
* KHTML: Early domain name resolution (prefetch)&lt;br /&gt;
* KHTML: embedded search/find-as-you-type bar&lt;br /&gt;
* CMake: Reduced library link interface&lt;br /&gt;
* Eigen (how's that interesting?&lt;br /&gt;
* PyKDE: KCM and oder plugins support&lt;br /&gt;
* Various improvements in the Kross Ruby and Python engines&lt;br /&gt;
* New Kross engine: Falcon&lt;br /&gt;
* fish and sftp support on Windows&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===NEEDINFO===&lt;br /&gt;
&lt;br /&gt;
* kpackagekit?&lt;br /&gt;
* QTScript improvements (which? mail@dipe.org)&lt;br /&gt;
* SVG support in KHTML (Vyacheslav Tokarev &amp;lt;tsjoker@gmail.com&amp;gt;)&lt;br /&gt;
* Support for CSS3 border-* properties (Fredrik Höglund and Maksim Orlovich &amp;lt;fredrik@kde.org&amp;gt;)&lt;br /&gt;
* support of Video/Audio elements (Germain Garand &amp;lt;germain@ebooksfrance.org&amp;gt;)&lt;br /&gt;
* kdeui: Rich text builders for KTextEdit, including BBCode, html, plain text markup, mediawiki and markdown output (Stephen Kelly &amp;lt;steveire@gmail.com&amp;gt;)&lt;br /&gt;
* NX support in krdc David Gross &amp;lt;gdavid.devel@gmail.com&amp;gt;&lt;/div&gt;</summary>
		<author><name>Shaforostoff</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Schedules/KDE4/4.2_Changelog</id>
		<title>Schedules/KDE4/4.2 Changelog</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Schedules/KDE4/4.2_Changelog"/>
				<updated>2008-12-25T20:54:32Z</updated>
		
		<summary type="html">&lt;p&gt;Shaforostoff: /* Applications */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Workspace=&lt;br /&gt;
* policykit (probably beta2)&lt;br /&gt;
* Use knotify in kwrited&lt;br /&gt;
* option for full path in breadcrumb mode&lt;br /&gt;
* VI input mode in kwrite and kate&lt;br /&gt;
* PowerDevil&lt;br /&gt;
* kephal for better xrandr-support.&lt;br /&gt;
* Add ConsoleKit support to kdm&lt;br /&gt;
&lt;br /&gt;
==Plasma==&lt;br /&gt;
(see also plasma changelog)&lt;br /&gt;
* KRunner: Noun-Verb support&lt;br /&gt;
* Konqueror history runner&lt;br /&gt;
* Kate sessions runner&lt;br /&gt;
* Recent Documents runner&lt;br /&gt;
* Notifications and jobs in systemtray&lt;br /&gt;
* panel-&amp;gt;desktop dragging&lt;br /&gt;
* Improved Battery applet for Powerdevil&lt;br /&gt;
* Wallpaper plugins&lt;br /&gt;
* Python support&lt;br /&gt;
* Ruby support&lt;br /&gt;
* Plasma Popup Tips&lt;br /&gt;
* Taskbar grouping&lt;br /&gt;
* Weather Plasmoid&lt;br /&gt;
* Plasma On Screensaver&lt;br /&gt;
* Add New Widgets: Pluggable widget browser&lt;br /&gt;
* Activity&amp;lt;-&amp;gt;Virtual Desktop Affinity (no UI)&lt;br /&gt;
* Panel Autohide&lt;br /&gt;
* Keyboard Shortcut Config UI&lt;br /&gt;
* Save icon positioning in folderview&lt;br /&gt;
* Quicklaunch Plasmoid&lt;br /&gt;
* drop indicator in panel&lt;br /&gt;
* make the panel controller a bit more usable&lt;br /&gt;
* nicely draw the desktop toolbox when it's moved because of a panel&lt;br /&gt;
* Various widgets (TODO)&lt;br /&gt;
* Panel form factor support in the folderview applet, twitter, news, ...&lt;br /&gt;
* Improved folderview configuration&lt;br /&gt;
* Keyboard status applet&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==KWin==&lt;br /&gt;
* Move maximized windows between Xinerama screens&lt;br /&gt;
* Support for decoration shadows&lt;br /&gt;
* Implement _NET_WM_FULLSCREEN_MONITORS EWMH spec hint&lt;br /&gt;
* Compositing enabled by default&lt;br /&gt;
* Compositing self-check&lt;br /&gt;
* Global animation speed setting&lt;br /&gt;
* Motion dynamics&lt;br /&gt;
* Improved UI for selecting window/desktop switcher&lt;br /&gt;
* UI for assigning effects to screen edges&lt;br /&gt;
* Cube/cylinder/sphere effect&lt;br /&gt;
* Magic lamp minimize effect&lt;br /&gt;
* Animation in box switch effect&lt;br /&gt;
* Mouse interaction for cover switch Effect&lt;br /&gt;
* Thumbnail bar in the cover switch effect&lt;br /&gt;
* Improved snow effect&lt;br /&gt;
* Improved desktop grid&lt;br /&gt;
* New present window layout modes&lt;br /&gt;
* Invert only selected windows&lt;br /&gt;
* Unredirecting of fullscreen windows (flicker-- w/ bad video drivers)&lt;br /&gt;
&lt;br /&gt;
=Applications=&lt;br /&gt;
* Kate: snippets plugin ported, ctags plugin, build plugin improved&lt;br /&gt;
* perldoc kioslave&lt;br /&gt;
* Lokalize: MDI tabbed interface, improved translation memory, widget text capture for any KDE application (by middle-clicking)&lt;br /&gt;
* Gwenview: support for animated gif and mng&lt;br /&gt;
* Okular: support fax documents&lt;br /&gt;
* Konqueror: bookmarks page (+kioslave)&lt;br /&gt;
* Dolphin: previews in tooltips, zoom slider in statusbar&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Edu==&lt;br /&gt;
* KAlgebra: new parser / lexer, import for MathML presentation markup&lt;br /&gt;
* KBruch: UI improvements and merge of KPercentage functionality&lt;br /&gt;
* Python bindings to Marble widget classes&lt;br /&gt;
* KStars: Display millions of stars, many more&lt;br /&gt;
* KTurtle: color picker, command line, export image&lt;br /&gt;
* Parley: UI improvements and automatic translation fetching from online sources&lt;br /&gt;
* Marble: Moon Map, Historical Map, Marble Runners, On-Screen Navigation, Worldclock Plasmoid&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Admin / Utils / Network==&lt;br /&gt;
* system-config-printer-kde and printer-applet&lt;br /&gt;
* Improved support for LDAP (Microsoft Active Directory) in KRDC&lt;br /&gt;
* improved per host settings in KRDC&lt;br /&gt;
* Okteta: various UI improvements&lt;br /&gt;
* Ark: service menu and password support&lt;br /&gt;
* Ksnapshot: recording of window title, multiscreen improvements&lt;br /&gt;
&lt;br /&gt;
==PIM==&lt;br /&gt;
* Akregator: basic support for enclosures&lt;br /&gt;
* KAlarm: Option to exclude holidays in recurring alarms&lt;br /&gt;
* KAlarm: Improved layout for configuration dialog&lt;br /&gt;
* KAlarm: New simple mode for alarm edit dialog&lt;br /&gt;
* KAlarm: Ability to set global shortcuts to create alarms&lt;br /&gt;
* KJots: Importing notes from knowit&lt;br /&gt;
* KMail: Nicer attachment view&lt;br /&gt;
* KMail: New message list&lt;br /&gt;
* KNotes: Zeroconf support for sending notes on LAN &lt;br /&gt;
* Kontact: new planner summary&lt;br /&gt;
* Kontact: Drag and drop in free/busy view&lt;br /&gt;
&lt;br /&gt;
==Games==&lt;br /&gt;
* Dragging jewels and untimes games in kdiamond&lt;br /&gt;
* Ksirk: jabber-based netgame finding, scrolling improvements, skins via GHNS, skins editor&lt;br /&gt;
* KGoldRunner: new levels&lt;br /&gt;
* KBlocks: sounds support&lt;br /&gt;
* New game: Killbots&lt;br /&gt;
* New game: Bomber&lt;br /&gt;
&lt;br /&gt;
=Libraries &amp;amp; development platform=&lt;br /&gt;
* Phonon: VideoWidget snapshot function&lt;br /&gt;
* KHTML: Early domain name resolution (prefetch)&lt;br /&gt;
* KHTML: embedded search/find-as-you-type bar&lt;br /&gt;
* CMake: Reduced library link interface&lt;br /&gt;
* Eigen (how's that interesting?&lt;br /&gt;
* PyKDE: KCM and oder plugins support&lt;br /&gt;
* Various improvements in the Kross Ruby and Python engines&lt;br /&gt;
* New Kross engine: Falcon&lt;br /&gt;
* fish and sftp support on Windows&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===NEEDINFO===&lt;br /&gt;
&lt;br /&gt;
* kpackagekit?&lt;br /&gt;
* QTScript improvements (which? mail@dipe.org)&lt;br /&gt;
* SVG support in KHTML (Vyacheslav Tokarev &amp;lt;tsjoker@gmail.com&amp;gt;)&lt;br /&gt;
* Support for CSS3 border-* properties (Fredrik Höglund and Maksim Orlovich &amp;lt;fredrik@kde.org&amp;gt;)&lt;br /&gt;
* support of Video/Audio elements (Germain Garand &amp;lt;germain@ebooksfrance.org&amp;gt;)&lt;br /&gt;
* kdeui: Rich text builders for KTextEdit, including BBCode, html, plain text markup, mediawiki and markdown output (Stephen Kelly &amp;lt;steveire@gmail.com&amp;gt;)&lt;br /&gt;
* NX support in krdc David Gross &amp;lt;gdavid.devel@gmail.com&amp;gt;&lt;/div&gt;</summary>
		<author><name>Shaforostoff</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Schedules/KDE4/4.2_Feature_Plan</id>
		<title>Schedules/KDE4/4.2 Feature Plan</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Schedules/KDE4/4.2_Feature_Plan"/>
				<updated>2008-10-02T11:31:42Z</updated>
		
		<summary type="html">&lt;p&gt;Shaforostoff: /* kdelibs */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This is a list of planned features for the 4.2 release.&lt;br /&gt;
&lt;br /&gt;
See also:&lt;br /&gt;
* [[Schedules/KDE4/4.2 Release Schedule]]&lt;br /&gt;
* [[Schedules/KDE4/4.1 Feature Plan]]&lt;br /&gt;
* [[Schedules/KDE4/Goals]]&lt;br /&gt;
&lt;br /&gt;
Legend:&lt;br /&gt;
* todo =&amp;gt; not started yet&lt;br /&gt;
* in-progress =&amp;gt; started, but not completed yet&lt;br /&gt;
* done =&amp;gt; completed&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
= Other =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureTodo|System Settings|add Administrator mode button|alediaferia@gmail.com|Alessandro Diaferia}}&lt;br /&gt;
{{FeatureDone|Eigen|Make Eigen 2 ready for KDE, and move it to kdesupport|jacob@math.jussieu.fr|Benoît Jacob}}&lt;br /&gt;
{{FeatureInProgress|Eigen|Port all Eigen-using code in KDE and KOffice to Eigen 2.0|jacob@math.jussieu.fr|Benoît Jacob}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdelibs =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureInProgress|kross|Extend QtScript integration.|mail@dipe.org|Sebastian Sauer}}&lt;br /&gt;
{{FeatureInProgress|KDEPrint|Reintroduce KDEPrint in some form, depending on what Qt4.4 delivers.|john@layt.net|john Layt}}&lt;br /&gt;
{{FeatureTodo|KDEPrint|Add framework for standard actions for 'Send to...' for e-mail, fax, etc by printing to PDF/PS.|john@layt.net|John Layt}}&lt;br /&gt;
{{FeatureTodo|KDEPrint|Migrate FilePrinter class from Okular to enable file printing for all apps via QPrinter, modify to utilise new Qt4.4 features.  To be discussed on k-c-d first.|john@layt.net|John Layt}}&lt;br /&gt;
{{FeatureTodo|KCalenderSystem|Add new calendar systems: Indian Civil (Saka), Ethiopean, Chinese, Pure Julian, Pure Gregorian. (Note, not all may live in kdelibs or be available as a global calendar system)|john@layt.net|John Layt}}&lt;br /&gt;
{{FeatureTodo|KLocale|Implement KLocale based methods to return weekend days and day of religious observance.  Currently KCalendarSystem provides dayOfPray(), but for Gregorian this is not correct in all locales where it is used.  Currently KDatePicker hardcodes Saturday and dayOfPray() as weekend days which may not be correct in all locales.  To be discussed first on k-c-d and with kdepim.|john@layt.net|John Layt}}&lt;br /&gt;
{{FeatureTodo|Phonon|add Port class for fine grained control over data flow between Phonon objects|kretz@kde.org|Matthias Kretz}}&lt;br /&gt;
{{FeatureInProgress|Phonon|make AbstractMediaStream/StreamInterface threadsafe|kretz@kde.org|Matthias Kretz}}&lt;br /&gt;
{{FeatureInProgress|Phonon|&amp;quot;low-level&amp;quot; PCM I/O with at least an ALSA implementation|kretz@kde.org|Matthias Kretz and Ian Monroe}}&lt;br /&gt;
{{FeatureInProgress|Phonon|VideoWidget snapshot function|kretz@kde.org|Matthias Kretz}}&lt;br /&gt;
{{FeatureInProgress|KConfig|API review and export KConfigBackend|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureInProgress|KConfig|Make KConfigSkeleton KConfigGroup aware|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureInProgress|KConfig|Make KConfigDialog work nicer with KConfigSkeleton + manually managed widgets|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureDone|KUrlNavigator|Provide an option to always show the full path in the breadcrumb mode.|peter.penz@gmx.at|Peter Penz}}&lt;br /&gt;
{{FeatureInProgress|Katepart|Make a Vi input mode for Katepart|ehamberg@gmail.com|Erlend Hamberg}}&lt;br /&gt;
{{FeatureTodo|KIO::Global|Make KDynamicJobTracker do the checking if the kuiserver service is registered or not, for full implementation of &amp;quot;Progress in the same window&amp;quot;|ereslibre@kde.org|Rafael Fernández López}}&lt;br /&gt;
{{FeatureTodo|KJS|Further performance improvements, in particular variable access (Blizzard stage 2), and calling convention (FrostByte stage 2)|maksim@kde.org|Maksim Orlovich}}&lt;br /&gt;
{{FeatureInProgress|KJS and KHTML|Support for transparent reindenting of standalone sources in debugger, debug info management improvements|maksim@kde.org|Maksim Orlovich}}&lt;br /&gt;
{{FeatureInProgress|KHTML|SVG support in KHTML (port from WebKit)|tsjoker@gmail.com|Vyacheslav Tokarev}}&lt;br /&gt;
{{FeatureInProgress|KHTML|Use of IDString (hashed strings) for local names, prefixes and namespaces in DOM core instead of document-related ids, in particular for better API compatibility with WebCore|tsjoker@gmail.com|Vyacheslav Tokarev}}&lt;br /&gt;
{{FeatureTodo|KHTML|Scriptable extension plug-ins|porten@kde.org|Harri}}&lt;br /&gt;
{{FeatureDone|kwallet|Move kwalletd to kdebase-runtime|dfaure@kde.org|David Faure}}&lt;br /&gt;
{{FeatureDone|i18n|proper filenames decoding for FAT mounting, in KUrls and content-disposition|shafff-at-ukr.net|Nick Shaforostoff}}&lt;br /&gt;
{{FeatureDone|Kross|expose KAssistantDialog as part of forms module|shafff-at-ukr.net|Nick Shaforostoff}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdebase-workspace =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureTodo|Color KCM|Add 'smart setting' of extended colors|mw_triad@users.sourceforge.net|Matthew Woehlke}}&lt;br /&gt;
{{FeatureTodo|Color KCM|Add KDE3 scheme import|mw_triad@users.sourceforge.net|Matthew Woehlke}}&lt;br /&gt;
{{FeatureTodo|Color KCM|Query kwin for supported colors; add full set of kwin colors|mw_triad@users.sourceforge.net|Matthew Woehlke}}&lt;br /&gt;
{{FeatureTodo|KDEPrint|reintroduce KDEPrint Print Management tools, e.g. KCM, kprinter, kjobviewer, etc.  Depends upon progress of kdelibs side of KDEPrint and Qt4.4 feature set.|john@layt.net|john Layt}}&lt;br /&gt;
{{FeatureDone|Power Manager|import PowerDevil|drf@kdemod.ath.cx|Dario Freddi}}&lt;br /&gt;
|- border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; style=&amp;quot;text-align: center&amp;quot; |KRunner&lt;br /&gt;
{{FeatureInProgress|Krunner|Configuration options for blacklisting, user ranking, runner ranking, learning|mumismo@gmail.com|Jordi Polo}}&lt;br /&gt;
{{FeatureInProgress|Krunner|SearchMatch configuration|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Krunner|Simple learning|mumismo@gmail.com|Jordi Polo}}&lt;br /&gt;
{{FeatureTodo|Krunner|Simple GUI for above options|mumismo@gmail.com|Jordi Polo}}&lt;br /&gt;
{{FeatureTodo|Krunner|Runners able to share parsing|mumismo@gmail.com|Jordi Polo}}&lt;br /&gt;
{{FeatureTodo|Krunner|Noun-Verb support|ryan.bitanga@gmail.com|Ryan P. Bitanga}}&lt;br /&gt;
{{FeatureTodo|Krunner|Implement Nuno's UI polishings|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Krunner|Runtime syntax documentation|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Krunner|Runner configuration|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Krunner|Search set paging|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|KRunner|runner for the plasma dbus interface|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureDone|KRunner|Konqueror history runner|sebas@kde.org|Sebastian Kügler}}&lt;br /&gt;
{{FeatureInProgress|KRunner|Kate sessions runner|sebas@kde.org|Sebastian Kügler}}&lt;br /&gt;
{{FeatureInProgress|KRunner|Recent Documents runner|sebas@kde.org|Sebastian Kügler}}&lt;br /&gt;
|- border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; style=&amp;quot;text-align: center&amp;quot; |Plasma - Priority Features&lt;br /&gt;
{{FeatureTodo|Plasma|Welcome plasmoid|aseigo@kde.org|Aaron Seigo}}{{FeatureInProgress|Plasma|JOLIE Integration|ervin@kde.org|Kevin Ottens}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Notification plasmoid|dimsuzkde@gmail.com|Dmitry Suzdalev}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Kuiserver plasmoid|r.scheepmaker@student.utwente.nl|Rob Scheepmaker}}&lt;br /&gt;
{{FeatureTodo|KWin|Make it possible to focus plasma panels|chanika@gmail.com|Chani}}&lt;br /&gt;
{{FeatureTodo|Plasma|panel-&amp;gt;desktop dragging|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|Expand cashew to full action bar when zoomed out|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Plasmagik packaging (and package classes)|riccardo@kde.org|Riccardo Iaconelli}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Networkmanager Plasmoid and DataEngine|cblauvelt@gmail.com|Christopher Blauvelt}}&lt;br /&gt;
{{FeatureInProgress|Plasma|New ECMA Script Scriptengines|richmoore44@gmail.com|Richard Moore}}&lt;br /&gt;
{{FeatureDone|Plasma|Extenders|r.scheepmaker@student.utwente.nl|Rob Scheepmaker}}&lt;br /&gt;
{{FeatureDone|Plasma|Wallpaper plugins|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureDone|Plasma|Separate Desktop Settings from DesktopContainment|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|Script Security Framework|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Python support|simon@simonzone.com|Simon Edwards}}&lt;br /&gt;
|- border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; style=&amp;quot;text-align: center&amp;quot; |Plasma&lt;br /&gt;
{{FeatureDone|Plasma|Plasma Popup Tips|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureDone|Plasma|Collapsing Applet convenience class|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
&lt;br /&gt;
{{FeatureInProgress|Plasma|Taskbar grouping|hrigi_1@hotmail.com|Christian Mollekopf}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Weather plasmoid|shawn.starr@rogers.com|Shawn Starr}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Small Form Factors|m.kruisselbrink@student.tue.nl|Marijn Kruisselbrink}}&lt;br /&gt;
{{FeatureDone|Plasma|Plasma On Screensaver|chanika@gmail.com|Chani Armitage}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Website update|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Grid applet|sebas@kde.org|Sebastian Kügler}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Techbase Tutorials|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|Context menu plugins|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|Add New Widgets: Pluggable widget browser|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|Activity&amp;lt;-&amp;gt;Virtual Desktop Affinity|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|Optional Per-Virtual Desktop DesktopView|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|Make non-SVG painting in Plasma low-color and non-anim friendly|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|Runtime DataEngine documentation (sources, usage, etc)|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureDone|Plasma|Panel Autohide|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|Keyboard Shortcut Config UI|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|Systray++ Spec|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureDone|Plasma|Save icon positioning in folderview|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|New wallpapers|riccardo@kde.org|Riccardo Iaconelli}}&lt;br /&gt;
{{FeatureTodo|Plasma|Import Raptor|riccardo@kde.org|Riccardo Iaconelli}}&lt;br /&gt;
{{FeatureTodo|Plasma|Preserve wallpaper choice by copying user paper to home dir|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|New way of handling wallpapers and different sizes (package format, and so on...)|riccardo@kde.org|Riccardo Iaconelli}}&lt;br /&gt;
{{FeatureTodo|Plasma|Top-level windows plasmoids|riccardo@kde.org|Riccardo Iaconelli}}&lt;br /&gt;
{{FeatureTodo|Plasma|drop indicator in panel|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|improve usability of appletbrowser delete button|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|adding containments from the appletbrowser (and remove the &amp;quot;add panel&amp;quot; from DefaultDeskrop)|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|highlight the applet with active keyboard shortcuts|chanika@gmail.com|Chani}}&lt;br /&gt;
{{FeatureTodo|Plasma|dbus interface|chanika@gmail.com|Chani}}&lt;br /&gt;
{{FeatureDone|Plasma|make the panel controller a bit more usable|notmart@gmail.com|Marco Martin}}&lt;br /&gt;
{{FeatureDone|Plasma|nicely draw the desktop toolbox when it's moved because of a panel|notmart@gmail.com|Marco Martin}}&lt;br /&gt;
{{FeatureDone|Plasma|theme Plasma::PushButton with svg|notmart@gmail.com|Marco Martin}}&lt;br /&gt;
{{FeatureDone|Plasma|Tabbar widget derived from QTabBar and themed with svg|notmart@gmail.com|Marco Martin}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Complete the panel size sliders feature: an applet can ask the panel to resize|notmart@gmail.com|Marco Martin}}&lt;br /&gt;
{{FeatureInProgress|Plasma|New theming capabilities by expanding the lower level theming classes (Theme and PanelSvg)|notmart@gmail.com|Marco Martin}}&lt;br /&gt;
{{FeatureDone|Plasma|Wallpaper plugin: Mandelbrot fractal explorer|jacob@math.jussieu.fr|Benoît Jacob}}&lt;br /&gt;
|- border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; style=&amp;quot;text-align: center&amp;quot; |KWin - Core&lt;br /&gt;
{{FeatureDone|KWin|New window snapping zones; screen center and window corners|lmurray@undefinedfire.com|Lucas Murray}}&lt;br /&gt;
{{FeatureDone|KWin|Move maximized windows between Xinerama screens|lmurray@undefinedfire.com|Lucas Murray}}&lt;br /&gt;
{{FeatureInProgress|KWin|Basic window tiling|lmurray@undefinedfire.com|Lucas Murray}}&lt;br /&gt;
{{FeatureTodo|KWin|Compositing decoration API additions|lmurray@undefinedfire.com|Lucas Murray}}&lt;br /&gt;
|- border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; style=&amp;quot;text-align: center&amp;quot; |KWin - Desktop Effects&lt;br /&gt;
{{FeatureInProgress|KWin|Compositing self-check|l.lunak@kde.org|Luboš Luňák}}&lt;br /&gt;
{{FeatureDone|KWin|Global animation speed setting|l.lunak@kde.org|Luboš Luňák}}&lt;br /&gt;
{{FeatureDone|KWin|Motion dynamics|lmurray@undefinedfire.com|Lucas Murray}}&lt;br /&gt;
{{FeatureTodo|KWin|New shadow handling by decorations|lmurray@undefinedfire.com|Lucas Murray}}&lt;br /&gt;
{{FeatureDone|KWin|Improved UI for selecting window/desktop switcher|ubuntu@martin-graesslin.com|Martin Gräßlin}}&lt;br /&gt;
{{FeatureTodo|KWin|UI for assigning effects to screen edges|ubuntu@martin-graesslin.com|Martin Gräßlin}}&lt;br /&gt;
{{FeatureDone|KWin|Cube/Cylinder/Sphere Effect|ubuntu@martin-graesslin.com|Martin Gräßlin}}&lt;br /&gt;
{{FeatureDone|KWin|Magic Lamp minimize Effect|ubuntu@martin-graesslin.com|Martin Gräßlin}}&lt;br /&gt;
{{FeatureInProgress|KWin|Animation in BoxSwitch Effect|ubuntu@martin-graesslin.com|Martin Gräßlin}}&lt;br /&gt;
{{FeatureTodo|KWin|Mouse interaction for CoverSwitch Effect|ubuntu@martin-graesslin.com|Martin Gräßlin}}&lt;br /&gt;
{{FeatureTodo|KWin|Additional thumbnails for CoverSwitch Effect|ubuntu@martin-graesslin.com|Martin Gräßlin}}&lt;br /&gt;
{{FeatureTodo|KWin|Improved Snow Effect; different sizes, better randomness and different directions|ubuntu@martin-graesslin.com|Martin Gräßlin}}&lt;br /&gt;
{{FeatureDone|KWin|Improved desktop grid|lmurray@undefinedfire.com|Lucas Murray}}&lt;br /&gt;
{{FeatureDone|KWin|New present window layout modes|lmurray@undefinedfire.com|Lucas Murray}}&lt;br /&gt;
{{FeatureDone|KWin|Invert only selected windows|lmurray@undefinedfire.com|Lucas Murray}}&lt;br /&gt;
{{FeatureInProgress|KWin|Improved mouse mark/scribble effect|lmurray@undefinedfire.com|Lucas Murray}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdepimlibs =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureInProgress|KCal Library|Make the KCal library dependent on the external libical package (from freeassocation) rather than our own old, forked version.|winter@kde.org|Allen Winter}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdenetwork =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureInProgress|Kopete|MSNP15 implementation for MSN|mattr@kde.org|Matt Rogers}}&lt;br /&gt;
{{FeatureInProgress|Kopete|UPnp Support|mattr@kde.org|Matt Rogers}}&lt;br /&gt;
{{FeatureInProgress|Kopete|Updated contact list interface (uses Qt 4 rather than Qt 3)|mattr@kde.org|Matt Rogers}}&lt;br /&gt;
{{FeatureTodo|Kopete|Update Kopete to better support Decibel|kopete-devel@kde.org|Kopete Developers}}&lt;br /&gt;
{{FeatureInProgress|Kopete|Contacts plasmoid|earthwings@gentoo.org|Dennis Nienhüser}}&lt;br /&gt;
{{FeatureDone|Kopete|Move file transfer request into chat window|kedgedev@centrum.cz|Roman Jarosz}}&lt;br /&gt;
{{FeatureInProgress|Kopete|Message delivery notifications|kedgedev@centrum.cz|Roman Jarosz}}&lt;br /&gt;
{{FeatureTodo|Kopete|Improve file transfer progress dialog|kedgedev@centrum.cz|Roman Jarosz}}&lt;br /&gt;
{{FeatureInProgress|KGet|MultiSource-Downloading|l.appelhans@gmx.de|Lukas Appelhans}}&lt;br /&gt;
{{FeatureInProgress|KGet|Support mms://-protocol, see https://launchpad.net/libmms|l.appelhans@gmx.de|Lukas Appelhans}}&lt;br /&gt;
{{FeatureTodo|KGet|MLDonkey-Plugin based on libkmldonkey|l.appelhans@gmx.de|Lukas Appelhans}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Network Manager Applet|cblauvelt@gmail.com|Christopher Blauvelt}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdepim =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureDone|KonsoleKalendar|Add an option to support resources that might need a GUI (i.e. all resources)|kevin.krammer@gmx.at|Kevin Krammer}}&lt;br /&gt;
{{FeatureInProgress|Akregator|Support for syncing the feed list with Google Reader |osterfeld@kde.org|Frank Osterfeld}}&lt;br /&gt;
{{FeatureInProgress|KAlarm|Improve alarm edit and preferences dialog layouts|djarvie@kde.org|David Jarvie}}&lt;br /&gt;
{{FeatureInProgress|KAlarm|Add holidays support|djarvie@kde.org|David Jarvie}}&lt;br /&gt;
{{FeatureInProgress|Kleopatra|OpenPGP support|marc@kdab.net|Marc Mutz (Gpg4win)}}&lt;br /&gt;
{{FeatureInProgress|KNotes|Zeroconf support for sending notes on LAN|qbast@go2.pl|Jakub Stachowski}}&lt;br /&gt;
{{FeatureInProgress|Kontact|New Planner summary; combines Appointment+To-do+SpecialDates into 1 pretty summary|winter@kde.org|Allen Winter}}&lt;br /&gt;
{{FeatureInProgress|KPilot|Finish Keyring conduit, base conduit code and test cases, category syncing|jkasper@kde.org|Jason 'vanRijn' Kasper}}&lt;br /&gt;
{{FeatureTodo|Akregator|Basic support for enclosures (Displaying links, mimetype and size)|osterfeld@kde.org|Frank Osterfeld}}&lt;br /&gt;
{{FeatureTodo|[http://kblogger.pwsp.net KBlogger]|KBlogger, a blogging application| christian_weilbach@.web.de|Christian Weilbach}}&lt;br /&gt;
{{FeatureTodo|Kleopatra|Konqueror and Dolphin Kleopatra plugins|marc@kdab.net|Marc Mutz (Gpg4win)}}&lt;br /&gt;
{{FeatureTodo|KMail|Aggregated attachment view in the mail header area of the reader window|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureTodo|Kontact|Support for Kontact wide profiles|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureTodo|KOrganizer|Drag and drop in the free-busy view|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureTodo|KOrganizer|Support for comments in replies to invitations|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureTodo|KOrganizer|Support for extended free-busy lists|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureTodo|KPilot|Port old conduits to new base conduit architecture and KDE4/Qt4|jkasper@kde.org|Jason 'vanRijn' Kasper}}&lt;br /&gt;
{{FeatureTodo|KBlogger|Port to use KRichTextEdit (Or KMEditor)|steveire@gmail.com|Stephen Kelly}}&lt;br /&gt;
{{FeatureTodo|KNode|Port to use KRichTextEdit (Or KMEditor)|steveire@gmail.com|Stephen Kelly}}&lt;br /&gt;
&lt;br /&gt;
{{FeatureTodo|Kjots| Import notes from KNotes as KJots pages. |steveire@gmail.com|Stephen Kelly}}&lt;br /&gt;
{{FeatureTodo|Kjots| Email KJots pages using default mail client ({{bug|124509}}. |steveire@gmail.com|Stephen Kelly}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdeutils =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureTodo|Okteta|add Kate-like search tool|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|refactor KByteArrayView|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|add support for memory mapping of files|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|parameter dialog for &amp;quot;Copy as...&amp;quot;|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|add support for jobs like io, printing, string search or filter|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureInProgress|Ark|Implement proper drag/drop between Ark/dolphin|harald((at))stud(dot)ntnu.no|Harald Hvaal}}&lt;br /&gt;
{{FeatureInProgress|Ark|Make the service menu work (possibly doing it as a KonqPopupPlugin|harald((at))stud(dot)ntnu.no|Harald Hvaal}}&lt;br /&gt;
{{FeatureInProgress|Ark|Proper password support|harald((at))stud(dot)ntnu.no|Harald Hvaal}}&lt;br /&gt;
{{FeatureTodo|Ark|Support for custom options from the compression interface (eg. a slider for selecting compression level for rar files)|harald((at))stud(dot)ntnu.no|Harald Hvaal}}&lt;br /&gt;
{{FeatureTodo|Ark|Add an options dialog (maybe)|harald((at))stud(dot)ntnu.no|Harald Hvaal}}&lt;br /&gt;
{{FeatureInProgress|kwalletmanager|Move kwalletmanager to the Model/View architecture and redesign the UI|lemma@confuego.org|Michael Leupold}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdebindings =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureDone|krosspython and krossruby|Support custom types via handlers|mail@dipe.org|Sebastian Sauer}}&lt;br /&gt;
{{FeatureDone|krosspython and krossruby|Support QList&amp;lt;CustomType*&amp;gt; constructs|mail@dipe.org|Sebastian Sauer}}&lt;br /&gt;
{{FeatureInProgress|Smoke|Wrap some more APIs (at least Akanodi for all languages and Plasma for C#)|kde-bindings@kde.org|KDE-bindings developers}}&lt;br /&gt;
{{FeatureInProgress|PyKDE|KCM support and other plugins|simon@simonzone.com|Simon Edwards}}&lt;br /&gt;
{{FeatureTodo|krossjava|Integrate into e.g. SuperKaramba and fix issues that show up.|mail@dipe.org|Sebastian Sauer}}&lt;br /&gt;
{{FeatureTodo|krossjava|Documentation++|mail@dipe.org|Sebastian Sauer}}&lt;br /&gt;
{{FeatureTodo|krossfalcon|Unittests++|mail@dipe.org|Sebastian Sauer}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdegames =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureInProgress|libkdegames|New highscore management system|milliams|Matt Williams}}&lt;br /&gt;
{{FeatureDone|kdiamond|Drag jewels|majewsky@gmx.net|Stefan Majewsky}}&lt;br /&gt;
{{FeatureTodo|kdiamond|Optional OpenGL rendering|majewsky@gmx.net|Stefan Majewsky}}&lt;br /&gt;
{{FeatureDone|ksirk|Map scrolling arrows|kleag@free.fr|Gaël de Chalendar}}&lt;br /&gt;
{{FeatureDone|ksirk|KHotNewStuff skins|kleag@free.fr|Gaël de Chalendar}}&lt;br /&gt;
{{FeatureInProgress|ksirk|Jabber based net game finding|kleag@free.fr|Gaël de Chalendar}}&lt;br /&gt;
{{FeatureDone|ksirk|Use only names in skins instead of numeric ids|kleag@free.fr|Gaël de Chalendar}}&lt;br /&gt;
{{FeatureDone|ksirk|Skins editor|kleag@free.fr|Gaël de Chalendar}}&lt;br /&gt;
{{FeatureInProgress|ktron|Port and remake the KTron game for KDE 4.2|legolas@legolasweb.nl|Stas Verberkt}}&lt;br /&gt;
{{FeatureTodo|KNetWalk|Support for custom and non-square board sizes|fela.kde@gmail.com|Fela Winkelmolen}}&lt;br /&gt;
{{FeatureTodo|KGoldrunner|Improvement to sound support and themes|mikelima@cirulla.net}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdesdk =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureDone|Kate|Port and reenable the Snippets plugin.|jpetso@gmx.at|Jakob Petsovits}}&lt;br /&gt;
{{FeatureDone|perldoc KIOSlave|Add KIOSlave to allow reading Perldoc documentation.|michael.pyne&amp;amp;#64;kdemail&amp;amp;#46;net|Michael Pyne}}&lt;br /&gt;
{{FeatureInProgress|Lokalize|XLIFF support|shafff-at-ukr.net|Nick Shaforostoff}}&lt;br /&gt;
{{FeatureInProgress|Lokalize|various Translation Memory enhancements|shafff-at-ukr.net|Nick Shaforostoff}}&lt;br /&gt;
{{FeatureDone|Lokalize|wrap all windows belonging to one project into one MDI window|shafff-at-ukr.net|Nick Shaforostoff}}&lt;br /&gt;
{{FeatureTodo|Lokalize|Kross-based scripting|shafff-at-ukr.net|Nick Shaforostoff}}&lt;br /&gt;
{{FeatureInProgress|Lokalize|QA: glossary checklists|shafff-at-ukr.net|Nick Shaforostoff}}&lt;br /&gt;
{{FeatureTodo|KAppTemplate|Add DBUS support in templates|annma@kde.org|Anne-Marie Mahfouf}}&lt;br /&gt;
{{FeatureDone|Umbrello|Port code generation wizard to QWizard and replace all q3 widgets|andi.fischer@hispeed.ch|Andi Fischer}}&lt;br /&gt;
{{FeatureInProgress|Umbrello|Replace all q3 widgets in the refactoring assistant|andi.fischer@hispeed.ch|Andi Fischer}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdeedu =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureInProgress|KEduca|Rewrite of the classic test writing/taking application|matt@milliams.com|Matt Williams}}&lt;br /&gt;
{{FeatureTodo|KLettres|Number support|annma@kde.org|Anne-Marie Mahfouf}}&lt;br /&gt;
{{FeatureTodo|KLettres|Theme manager|annma@kde.org|Anne-Marie Mahfouf}}&lt;br /&gt;
{{FeatureInProgress|KHangMan|Add a Open File action|annma@kde.org|Anne-Marie Mahfouf}}&lt;br /&gt;
{{FeatureTodo|KHangMan|Integrate an editor|annma@kde.org|Anne-Marie Mahfouf}}&lt;br /&gt;
{{FeatureTodo|KHangMan|Plasmoid|annma@kde.org|Anne-Marie Mahfouf}}&lt;br /&gt;
{{FeatureTodo|KHangMan|Theme manager|annma@kde.org|Anne-Marie Mahfouf}}&lt;br /&gt;
{{FeatureTodo|KLettres|Visual indicator when letter is wrong|annma@kde.org|Anne-Marie Mahfouf}}&lt;br /&gt;
{{FeatureTodo|Kalzium|Port Kalzium's periodic table to use new QGraphicsView.|marcus@cryos.org|Marcus D. Hanwell}}&lt;br /&gt;
{{FeatureInProgress|Kalzium|Plasmoid to access Kalzium database|cniehaus@kde.org|Carsten Niehaus}}&lt;br /&gt;
{{FeatureTodo|Step|Improve GUI for creating softbody|ksvladimir@gmail.com|Vladimir Kuznetsov}}&lt;br /&gt;
{{FeatureTodo|Step|Use common constraints handling code for collisions|ksvladimir@gmail.com|Vladimir Kuznetsov}}&lt;br /&gt;
{{FeatureDone|KAlgebra|New parser (using QLALR) and new lexer|aleixpol@gmail.com|Aleix Pol}}&lt;br /&gt;
{{FeatureDone|KAlgebra|Import capability for MathML Presentation Markup in libanalitza|aleixpol@gmail.com|Aleix Pol}}&lt;br /&gt;
{{FeatureTodo|KAlgebra|Export to MathML Presentation Markup|aleixpol@gmail.com|Aleix Pol}}&lt;br /&gt;
{{FeatureTodo|KAlgebra|Some integration with the new KFormula widget|aleixpol@gmail.com|Aleix Pol}}&lt;br /&gt;
{{FeatureInProgress|Parley|Declensions|frederik.gladhorn@kdemail.net|Frederik Gladhorn}}&lt;br /&gt;
{{FeatureInProgress|Parley|Rework main window infrastructure|d.laidig@gmx.de|Daniel Laidig}}&lt;br /&gt;
{{FeatureInProgress|KStars|Display millions of stars|akarshsimha@gmail.com|Akarsh Simha}}&lt;br /&gt;
{{FeatureInProgress|KStars|Tool to predict Conjunctions|akarshsimha@gmail.com|Akarsh Simha}}&lt;br /&gt;
{{FeatureInProgress|KStars|Earth Satellites|kstars@30doradus.org|Jason Harris}}&lt;br /&gt;
{{FeatureInProgress|KStars|Sky Calendar Tool|kstars@30doradus.org|Jason Harris}}&lt;br /&gt;
{{FeatureInProgress|KStars|Include HD Catalog Numbers (in search, in display)|akarshsimha@gmail.com|Akarsh Simha}}&lt;br /&gt;
{{FeatureTodo|KStars|Marble widget for Geolocation tool|mboquien@free.fr|Médéric Boquien}}&lt;br /&gt;
{{FeatureTodo|KStars|Better printed star charts|kstars@30doradus.org|Jason Harris}}&lt;br /&gt;
{{FeatureTodo|KStars|Better rendering of comets/asteroids|kstars@30doradus.org|Jason Harris}}&lt;br /&gt;
{{FeatureTodo|KStars|Texture mapping of the skymap???|kstars@30doradus.org|Jason Harris}}&lt;br /&gt;
{{FeatureTodo|KStars|Improve Observing List Wizard|akarshsimha@gmail.com|Akarsh Simha}}&lt;br /&gt;
{{FeatureTodo|KStars|Display Comet Magnitudes whenever possible|akarshsimha@gmail.com|Akarsh Simha}}&lt;br /&gt;
{{FeatureTodo|KStars|Tool to suggest star-hopping techniques???|akarshsimha@gmail.com|Akarsh Simha}}&lt;br /&gt;
{{FeatureTodo|KStars|Extend conjunction tool to have one object unspecified, but have a genre of objects specified instead|akarshsimha@gmail.com|Akarsh Simha}}&lt;br /&gt;
{{FeatureTodo|Marble|Export map to MxN pixel bitmap|inge@lysator.liu.se|Inge Wallin}}&lt;br /&gt;
{{FeatureTodo|Marble|Support for MarbleWidget::setEnabled( bool )|inge@lysator.liu.se|Inge Wallin}}&lt;br /&gt;
{{FeatureTodo|Marble|Map Contents translation|tackat@kde.org|Torsten Rahn}}&lt;br /&gt;
{{FeatureInProgress|Marble|Layer Management Class|rahn@kde.org|Torsten Rahn}}&lt;br /&gt;
{{FeatureInProgress|Marble|Plugin architecture for map layers|rahn@kde.org|Torsten Rahn}}&lt;br /&gt;
{{FeatureInProgress|Marble|DGML2 Support|tackat@kde.org|Torsten Rahn}}&lt;br /&gt;
{{FeatureInProgress|Marble|KDE-Version settings dialog|tackat@kde.org|Torsten Rahn}}&lt;br /&gt;
{{FeatureInProgress|Marble|Port authors list from the Qt-About dialog to the KDE-About dialog|tackat@kde.org|Torsten Rahn}}&lt;br /&gt;
{{FeatureInProgress|Marble|Qt-Version settings dialog|tackat@kde.org|Torsten Rahn}}&lt;br /&gt;
{{FeatureInProgress|Marble|Improved KML support|tackat@kde.org|Torsten Rahn}}&lt;br /&gt;
{{FeatureInProgress|Marble|OpenStreetMap support using original OSM tiles|tackat@kde.org|Torsten Rahn}}&lt;br /&gt;
{{FeatureInProgress|Marble|Real Time Cloud-Cover|tackat@kde.org|David Roberts / Torsten Rahn}}&lt;br /&gt;
{{FeatureInProgress|Marble|Mercator Projection|inge@lysator.liu.se|Inge Wallin}}&lt;br /&gt;
{{FeatureInProgress|Marble|More generic projection support|inge@lysator.liu.se|Inge Wallin}}&lt;br /&gt;
{{FeatureInProgress|Marble|Usage of Marble in &lt;br /&gt;
non-widgets|inge@lysator.liu.se|Inge Wallin}}&lt;br /&gt;
{{FeatureTodo|Kig|Properties dialog for objects.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureTodo|Kig|Improve construction of bisect lines.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureTodo|Kig|Improve feedback when constructing objects.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureTodo|Kig|More geometric objects.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureTodo|Kig|Script objects as macros (to be reused more than once).|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureTodo|Kig|Improve the Cabri import filter.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureDone|KTurtle|Export canvas as image|piacentini@kde.org|Mauricio Piacentini}}&lt;br /&gt;
{{FeatureTodo|KTurtle|Optional rulers/grid for canvas units|piacentini@kde.org|Mauricio Piacentini}}&lt;br /&gt;
{{FeatureDone|KTurtle|Add command line|piacentini@kde.org|Mauricio Piacentini}}&lt;br /&gt;
{{FeatureDone|KTurtle|Add a color picker|nielsslot@gmail.com|Niels Slot}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdemultimedia =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureInProgress|Dragon Player|Make Dragon indipendent from Xine|ian.monroe@gmail.com|Ian Monroe}}&lt;br /&gt;
{{FeatureInProgress|Dragon Player|File Manager|ian.monroe@gmail.com|Ian Monroe}}&lt;br /&gt;
{{FeatureInProgress|Dragon Player|play media dialog|ian.monroe@gmail.com|Ian Monroe}}&lt;br /&gt;
{{FeatureInProgress|Dragon Player|slider changes|ian.monroe@gmail.com|Ian Monroe}}&lt;br /&gt;
{{FeatureInProgress|Dragon Player|show info while playing audio files|ian.monroe@gmail.com|Ian Monroe}}&lt;br /&gt;
{{FeatureTodo|JuK|Remove Qt/KDE3 support lib requirements|michael.pyne@kdemail.net|Michael Pyne}}&lt;br /&gt;
{{FeatureTodo|JuK|Allow setting covers directly from URLs supported by KIO - drag/drop already allows this however|michael.pyne@kdemail.net|Michael Pyne}}&lt;br /&gt;
{{FeatureTodo|JuK|Use XCOMPOSITE real transparency when available for the track announcement popup|michael.pyne@kdemail.net|Michael Pyne}}&lt;br /&gt;
{{FeatureTodo|JuK|Allow disabling crossfade|michael.pyne@kdemail.net|Michael Pyne}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdeaccessibility =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureTodo|KMagnifier|Refactor color menu, re-add invert, break current color blindness code into &amp;quot;daltonize&amp;quot; and &amp;quot;simulate&amp;quot;|mw_triad@users.sourceforge.net|Matthew Woehlke}}&lt;br /&gt;
{{FeatureTodo|KMagnifier|Add color-shift modes to help people with color blindness|mw_triad@users.sourceforge.net|Matthew Woehlke}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdegraphics =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureDone|KSnapshot|Add support for grabbing a single screen in multihead|rich@kde.org|Richard Moore}}&lt;br /&gt;
{{FeatureDone|KSnapshot|Increase jpeg image quality from 75% to 85%|rich@kde.org|Richard Moore}}&lt;br /&gt;
{{FeatureDone|KSnapshot|If we're saving the window decorations then record the window title and class in the image (if the format supports it) to play nice with indexers like strigi|rich@kde.org|Richard Moore}}&lt;br /&gt;
{{FeatureTodo|Okular|Sound annotations.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureTodo|Okular|Link annotations.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureTodo|Okular|Improve annotation support: for existing types (rubber stamps, line, note, etc), and for the way they are constructed and handled.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureTodo|Okular|Caret annotations.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureInProgress|Okular|Support for videos &amp;amp; movie annotations.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureTodo|Okular|Support .snp and .emf file formats|bradh@kde.org|Brad Hards}}&lt;br /&gt;
{{FeatureDone|Gwenview|Support for animated images (.gif and .mng)|aurelien.gateau@free.fr|Aurélien Gâteau}}&lt;br /&gt;
{{FeatureInProgress|Gwenview|Red Eye Reduction|aurelien.gateau@free.fr|Aurélien Gâteau}}&lt;br /&gt;
{{FeatureInProgress|Gwenview|Nepomuk integration|aurelien.gateau@free.fr|Aurélien Gâteau}}&lt;br /&gt;
{{FeatureTodo|Gwenview|Dolphin-like single-click selection|aurelien.gateau@free.fr|Aurélien Gâteau}}&lt;br /&gt;
{{FeatureTodo|Gwenview|Optional tree view|aurelien.gateau@free.fr|Aurélien Gâteau}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdebase-runtime =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureInProgress|kio_bookmarks|A new konqueror home page displaying user bookmarks. See [[http://kde-apps.org/content/show.php?content=86516 description]]|xavier.vello@gmail.com|Xavier Vello}}&lt;br /&gt;
{{FeatureInProgress|kuiserver|KUiServer Goya port. General improvements for usability improvements|ereslibre@kde.org|Rafael Fernández López}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdebase-apps =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureTodo|konqueror|A new konqueror recover-dialog replacement|edulix@gmail.com|Eduardo Robles Elvira}}&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Shaforostoff</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Schedules/KDE4/4.2_Feature_Plan</id>
		<title>Schedules/KDE4/4.2 Feature Plan</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Schedules/KDE4/4.2_Feature_Plan"/>
				<updated>2008-09-28T23:31:04Z</updated>
		
		<summary type="html">&lt;p&gt;Shaforostoff: /* kdelibs */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This is a list of planned features for the 4.2 release.&lt;br /&gt;
&lt;br /&gt;
See also:&lt;br /&gt;
* [[Schedules/KDE4/4.2 Release Schedule]]&lt;br /&gt;
* [[Schedules/KDE4/4.1 Feature Plan]]&lt;br /&gt;
* [[Schedules/KDE4/Goals]]&lt;br /&gt;
&lt;br /&gt;
Legend:&lt;br /&gt;
* todo =&amp;gt; not started yet&lt;br /&gt;
* in-progress =&amp;gt; started, but not completed yet&lt;br /&gt;
* done =&amp;gt; completed&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
= Other =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureTodo|System Settings|add Administrator mode button|alediaferia@gmail.com|Alessandro Diaferia}}&lt;br /&gt;
{{FeatureDone|Eigen|Make Eigen 2 ready for KDE, and move it to kdesupport|jacob@math.jussieu.fr|Benoît Jacob}}&lt;br /&gt;
{{FeatureInProgress|Eigen|Port all Eigen-using code in KDE and KOffice to Eigen 2.0|jacob@math.jussieu.fr|Benoît Jacob}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdelibs =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureInProgress|kross|Extend QtScript integration.|mail@dipe.org|Sebastian Sauer}}&lt;br /&gt;
{{FeatureInProgress|KDEPrint|Reintroduce KDEPrint in some form, depending on what Qt4.4 delivers.|john@layt.net|john Layt}}&lt;br /&gt;
{{FeatureTodo|KDEPrint|Add framework for standard actions for 'Send to...' for e-mail, fax, etc by printing to PDF/PS.|john@layt.net|John Layt}}&lt;br /&gt;
{{FeatureTodo|KDEPrint|Migrate FilePrinter class from Okular to enable file printing for all apps via QPrinter, modify to utilise new Qt4.4 features.  To be discussed on k-c-d first.|john@layt.net|John Layt}}&lt;br /&gt;
{{FeatureTodo|KCalenderSystem|Add new calendar systems: Indian Civil (Saka), Ethiopean, Chinese, Pure Julian, Pure Gregorian. (Note, not all may live in kdelibs or be available as a global calendar system)|john@layt.net|John Layt}}&lt;br /&gt;
{{FeatureTodo|KLocale|Implement KLocale based methods to return weekend days and day of religious observance.  Currently KCalendarSystem provides dayOfPray(), but for Gregorian this is not correct in all locales where it is used.  Currently KDatePicker hardcodes Saturday and dayOfPray() as weekend days which may not be correct in all locales.  To be discussed first on k-c-d and with kdepim.|john@layt.net|John Layt}}&lt;br /&gt;
{{FeatureTodo|Phonon|add Port class for fine grained control over data flow between Phonon objects|kretz@kde.org|Matthias Kretz}}&lt;br /&gt;
{{FeatureInProgress|Phonon|make AbstractMediaStream/StreamInterface threadsafe|kretz@kde.org|Matthias Kretz}}&lt;br /&gt;
{{FeatureInProgress|Phonon|&amp;quot;low-level&amp;quot; PCM I/O with at least an ALSA implementation|kretz@kde.org|Matthias Kretz and Ian Monroe}}&lt;br /&gt;
{{FeatureInProgress|Phonon|VideoWidget snapshot function|kretz@kde.org|Matthias Kretz}}&lt;br /&gt;
{{FeatureInProgress|KConfig|API review and export KConfigBackend|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureInProgress|KConfig|Make KConfigSkeleton KConfigGroup aware|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureInProgress|KConfig|Make KConfigDialog work nicer with KConfigSkeleton + manually managed widgets|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureDone|KUrlNavigator|Provide an option to always show the full path in the breadcrumb mode.|peter.penz@gmx.at|Peter Penz}}&lt;br /&gt;
{{FeatureInProgress|Katepart|Make a Vi input mode for Katepart|ehamberg@gmail.com|Erlend Hamberg}}&lt;br /&gt;
{{FeatureTodo|KIO::Global|Make KDynamicJobTracker do the checking if the kuiserver service is registered or not, for full implementation of &amp;quot;Progress in the same window&amp;quot;|ereslibre@kde.org|Rafael Fernández López}}&lt;br /&gt;
{{FeatureTodo|KJS|Further performance improvements, in particular variable access (Blizzard stage 2), and calling convention (FrostByte stage 2)|maksim@kde.org|Maksim Orlovich}}&lt;br /&gt;
{{FeatureInProgress|KJS and KHTML|Support for transparent reindenting of standalone sources in debugger, debug info management improvements|maksim@kde.org|Maksim Orlovich}}&lt;br /&gt;
{{FeatureInProgress|KHTML|SVG support in KHTML (port from WebKit)|tsjoker@gmail.com|Vyacheslav Tokarev}}&lt;br /&gt;
{{FeatureInProgress|KHTML|Use of IDString (hashed strings) for local names, prefixes and namespaces in DOM core instead of document-related ids, in particular for better API compatibility with WebCore|tsjoker@gmail.com|Vyacheslav Tokarev}}&lt;br /&gt;
{{FeatureTodo|KHTML|Scriptable extension plug-ins|porten@kde.org|Harri}}&lt;br /&gt;
{{FeatureDone|kwallet|Move kwalletd to kdebase-runtime|dfaure@kde.org|David Faure}}&lt;br /&gt;
{{FeatureDone|i18n|proper filenames decoding for FAT mounting, in KUrls and content-disposition|shafff-at-ukr.net|Nick Shaforostoff}}&lt;br /&gt;
{{FeatureTodo|Kross|expose KAssistantDialog as part of forms module|shafff-at-ukr.net|Nick Shaforostoff}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdebase-workspace =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureTodo|Color KCM|Add 'smart setting' of extended colors|mw_triad@users.sourceforge.net|Matthew Woehlke}}&lt;br /&gt;
{{FeatureTodo|Color KCM|Add KDE3 scheme import|mw_triad@users.sourceforge.net|Matthew Woehlke}}&lt;br /&gt;
{{FeatureTodo|Color KCM|Query kwin for supported colors; add full set of kwin colors|mw_triad@users.sourceforge.net|Matthew Woehlke}}&lt;br /&gt;
{{FeatureTodo|KDEPrint|reintroduce KDEPrint Print Management tools, e.g. KCM, kprinter, kjobviewer, etc.  Depends upon progress of kdelibs side of KDEPrint and Qt4.4 feature set.|john@layt.net|john Layt}}&lt;br /&gt;
{{FeatureDone|Power Manager|import PowerDevil|drf@kdemod.ath.cx|Dario Freddi}}&lt;br /&gt;
|- border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; style=&amp;quot;text-align: center&amp;quot; |KRunner&lt;br /&gt;
{{FeatureInProgress|Krunner|Configuration options for blacklisting, user ranking, runner ranking, learning|mumismo@gmail.com|Jordi Polo}}&lt;br /&gt;
{{FeatureInProgress|Krunner|SearchMatch configuration|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Krunner|Simple learning|mumismo@gmail.com|Jordi Polo}}&lt;br /&gt;
{{FeatureTodo|Krunner|Simple GUI for above options|mumismo@gmail.com|Jordi Polo}}&lt;br /&gt;
{{FeatureTodo|Krunner|Runners able to share parsing|mumismo@gmail.com|Jordi Polo}}&lt;br /&gt;
{{FeatureTodo|Krunner|Noun-Verb support|ryan.bitanga@gmail.com|Ryan P. Bitanga}}&lt;br /&gt;
{{FeatureTodo|Krunner|Implement Nuno's UI polishings|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Krunner|Runtime syntax documentation|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Krunner|Runner configuration|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Krunner|Search set paging|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|KRunner|runner for the plasma dbus interface|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureDone|KRunner|Konqueror history runner|sebas@kde.org|Sebastian Kügler}}&lt;br /&gt;
{{FeatureInProgress|KRunner|Kate sessions runner|sebas@kde.org|Sebastian Kügler}}&lt;br /&gt;
{{FeatureInProgress|KRunner|Recent Documents runner|sebas@kde.org|Sebastian Kügler}}&lt;br /&gt;
|- border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; style=&amp;quot;text-align: center&amp;quot; |Plasma - Priority Features&lt;br /&gt;
{{FeatureInProgress|Plasma|Welcome plasmoid|aseigo@kde.org|Aaron Seigo}}{{FeatureInProgress|Plasma|JOLIE Integration|ervin@kde.org|Kevin Ottens}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Notification plasmoid|dimsuzkde@gmail.com|Dmitry Suzdalev}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Kuiserver plasmoid|r.scheepmaker@student.utwente.nl|Rob Scheepmaker}}&lt;br /&gt;
{{FeatureTodo|KWin|Make it possible to focus plasma panels|chanika@gmail.com|Chani}}&lt;br /&gt;
{{FeatureTodo|Plasma|panel-&amp;gt;desktop dragging|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|Expand cashew to full action bar when zoomed out|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Plasmagik packaging (and package classes)|riccardo@kde.org|Riccardo Iaconelli}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Networkmanager Plasmoid and DataEngine|cblauvelt@gmail.com|Christopher Blauvelt}}&lt;br /&gt;
{{FeatureInProgress|Plasma|New ECMA Script Scriptengines|richmoore44@gmail.com|Richard Moore}}&lt;br /&gt;
{{FeatureDone|Plasma|Extenders|r.scheepmaker@student.utwente.nl|Rob Scheepmaker}}&lt;br /&gt;
{{FeatureDone|Plasma|Wallpaper plugins|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureDone|Plasma|Separate Desktop Settings from DesktopContainment|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|Script Security Framework|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Python support|simon@simonzone.com|Simon Edwards}}&lt;br /&gt;
|- border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; style=&amp;quot;text-align: center&amp;quot; |Plasma&lt;br /&gt;
{{FeatureDone|Plasma|Plasma Popup Tips|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureDone|Plasma|Collapsing Applet convenience class|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
&lt;br /&gt;
{{FeatureInProgress|Plasma|Taskbar grouping|hrigi_1@hotmail.com|Christian Mollekopf}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Weather plasmoid|shawn.starr@rogers.com|Shawn Starr}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Small Form Factors|m.kruisselbrink@student.tue.nl|Marijn Kruisselbrink}}&lt;br /&gt;
{{FeatureDone|Plasma|Plasma On Screensaver|chanika@gmail.com|Chani Armitage}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Website update|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Grid applet|sebas@kde.org|Sebastian Kügler}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Techbase Tutorials|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|Context menu plugins|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|Add New Widgets: Pluggable widget browser|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|Activity&amp;lt;-&amp;gt;Virtual Desktop Affinity|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|Optional Per-Virtual Desktop DesktopView|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|Make non-SVG painting in Plasma low-color and non-anim friendly|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|Runtime DataEngine documentation (sources, usage, etc)|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureDone|Plasma|Panel Autohide|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|Keyboard Shortcut Config UI|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|Systray++ Spec|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureDone|Plasma|Save icon positioning in folderview|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|New wallpapers|riccardo@kde.org|Riccardo Iaconelli}}&lt;br /&gt;
{{FeatureTodo|Plasma|Import Raptor|riccardo@kde.org|Riccardo Iaconelli}}&lt;br /&gt;
{{FeatureTodo|Plasma|Preserve wallpaper choice by copying user paper to home dir|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|New way of handling wallpapers and different sizes (package format, and so on...)|riccardo@kde.org|Riccardo Iaconelli}}&lt;br /&gt;
{{FeatureTodo|Plasma|Top-level windows plasmoids|riccardo@kde.org|Riccardo Iaconelli}}&lt;br /&gt;
{{FeatureTodo|Plasma|drop indicator in panel|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|improve usability of appletbrowser delete button|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|adding containments from the appletbrowser (and remove the &amp;quot;add panel&amp;quot; from DefaultDeskrop)|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|highlight the applet with active keyboard shortcuts|chanika@gmail.com|Chani}}&lt;br /&gt;
{{FeatureTodo|Plasma|dbus interface|chanika@gmail.com|Chani}}&lt;br /&gt;
{{FeatureDone|Plasma|make the panel controller a bit more usable|notmart@gmail.com|Marco Martin}}&lt;br /&gt;
{{FeatureDone|Plasma|nicely draw the desktop toolbox when it's moved because of a panel|notmart@gmail.com|Marco Martin}}&lt;br /&gt;
{{FeatureDone|Plasma|theme Plasma::PushButton with svg|notmart@gmail.com|Marco Martin}}&lt;br /&gt;
{{FeatureDone|Plasma|Tabbar widget derived from QTabBar and themed with svg|notmart@gmail.com|Marco Martin}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Complete the panel size sliders feature: an applet can ask the panel to resize|notmart@gmail.com|Marco Martin}}&lt;br /&gt;
{{FeatureInProgress|Plasma|New theming capabilities by expanding the lower level theming classes (Theme and PanelSvg)|notmart@gmail.com|Marco Martin}}&lt;br /&gt;
{{FeatureDone|Plasma|Wallpaper plugin: Mandelbrot fractal explorer|jacob@math.jussieu.fr|Benoît Jacob}}&lt;br /&gt;
|- border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; style=&amp;quot;text-align: center&amp;quot; |KWin - Core&lt;br /&gt;
{{FeatureDone|KWin|New window snapping zones; screen center and window corners|lmurray@undefinedfire.com|Lucas Murray}}&lt;br /&gt;
{{FeatureDone|KWin|Move maximized windows between Xinerama screens|lmurray@undefinedfire.com|Lucas Murray}}&lt;br /&gt;
{{FeatureInProgress|KWin|Basic window tiling|lmurray@undefinedfire.com|Lucas Murray}}&lt;br /&gt;
{{FeatureTodo|KWin|Compositing decoration API additions|lmurray@undefinedfire.com|Lucas Murray}}&lt;br /&gt;
|- border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; style=&amp;quot;text-align: center&amp;quot; |KWin - Desktop Effects&lt;br /&gt;
{{FeatureInProgress|KWin|Compositing self-check|l.lunak@kde.org|Luboš Luňák}}&lt;br /&gt;
{{FeatureDone|KWin|Global animation speed setting|l.lunak@kde.org|Luboš Luňák}}&lt;br /&gt;
{{FeatureDone|KWin|Motion dynamics|lmurray@undefinedfire.com|Lucas Murray}}&lt;br /&gt;
{{FeatureTodo|KWin|New shadow handling by decorations|lmurray@undefinedfire.com|Lucas Murray}}&lt;br /&gt;
{{FeatureDone|KWin|Improved UI for selecting window/desktop switcher|ubuntu@martin-graesslin.com|Martin Gräßlin}}&lt;br /&gt;
{{FeatureTodo|KWin|UI for assigning effects to screen edges|ubuntu@martin-graesslin.com|Martin Gräßlin}}&lt;br /&gt;
{{FeatureDone|KWin|Cube/Cylinder/Sphere Effect|ubuntu@martin-graesslin.com|Martin Gräßlin}}&lt;br /&gt;
{{FeatureDone|KWin|Magic Lamp minimize Effect|ubuntu@martin-graesslin.com|Martin Gräßlin}}&lt;br /&gt;
{{FeatureInProgress|KWin|Animation in BoxSwitch Effect|ubuntu@martin-graesslin.com|Martin Gräßlin}}&lt;br /&gt;
{{FeatureTodo|KWin|Mouse interaction for CoverSwitch Effect|ubuntu@martin-graesslin.com|Martin Gräßlin}}&lt;br /&gt;
{{FeatureTodo|KWin|Additional thumbnails for CoverSwitch Effect|ubuntu@martin-graesslin.com|Martin Gräßlin}}&lt;br /&gt;
{{FeatureTodo|KWin|Improved Snow Effect; different sizes, better randomness and different directions|ubuntu@martin-graesslin.com|Martin Gräßlin}}&lt;br /&gt;
{{FeatureDone|KWin|Improved desktop grid|lmurray@undefinedfire.com|Lucas Murray}}&lt;br /&gt;
{{FeatureDone|KWin|New present window layout modes|lmurray@undefinedfire.com|Lucas Murray}}&lt;br /&gt;
{{FeatureDone|KWin|Invert only selected windows|lmurray@undefinedfire.com|Lucas Murray}}&lt;br /&gt;
{{FeatureInProgress|KWin|Improved mouse mark/scribble effect|lmurray@undefinedfire.com|Lucas Murray}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdepimlibs =&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 !! Project !! Description !! Contact&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdenetwork =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureInProgress|Kopete|MSNP15 implementation for MSN|mattr@kde.org|Matt Rogers}}&lt;br /&gt;
{{FeatureInProgress|Kopete|UPnp Support|mattr@kde.org|Matt Rogers}}&lt;br /&gt;
{{FeatureInProgress|Kopete|Updated contact list interface (uses Qt 4 rather than Qt 3)|mattr@kde.org|Matt Rogers}}&lt;br /&gt;
{{FeatureTodo|Kopete|Update Kopete to better support Decibel|kopete-devel@kde.org|Kopete Developers}}&lt;br /&gt;
{{FeatureInProgress|Kopete|Contacts plasmoid|earthwings@gentoo.org|Dennis Nienhüser}}&lt;br /&gt;
{{FeatureDone|Kopete|Move file transfer request into chat window|kedgedev@centrum.cz|Roman Jarosz}}&lt;br /&gt;
{{FeatureInProgress|Kopete|Message delivery notifications|kedgedev@centrum.cz|Roman Jarosz}}&lt;br /&gt;
{{FeatureTodo|Kopete|Improve file transfer progress dialog|kedgedev@centrum.cz|Roman Jarosz}}&lt;br /&gt;
{{FeatureInProgress|KGet|MultiSource-Downloading|l.appelhans@gmx.de|Lukas Appelhans}}&lt;br /&gt;
{{FeatureInProgress|KGet|Support mms://-protocol, see https://launchpad.net/libmms|l.appelhans@gmx.de|Lukas Appelhans}}&lt;br /&gt;
{{FeatureTodo|KGet|MLDonkey-Plugin based on libkmldonkey|l.appelhans@gmx.de|Lukas Appelhans}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Network Manager Applet|cblauvelt@gmail.com|Christopher Blauvelt}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdepim =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureDone|KonsoleKalendar|Add an option to support resources that might need a GUI (i.e. all resources)|kevin.krammer@gmx.at|Kevin Krammer}}&lt;br /&gt;
{{FeatureInProgress|Akregator|Support for syncing the feed list with Google Reader |osterfeld@kde.org|Frank Osterfeld}}&lt;br /&gt;
{{FeatureInProgress|KAlarm|Improve alarm edit and preferences dialog layouts|djarvie@kde.org|David Jarvie}}&lt;br /&gt;
{{FeatureInProgress|KAlarm|Add holidays support|djarvie@kde.org|David Jarvie}}&lt;br /&gt;
{{FeatureInProgress|Kleopatra|OpenPGP support|marc@kdab.net|Marc Mutz (Gpg4win)}}&lt;br /&gt;
{{FeatureInProgress|KNotes|Zeroconf support for sending notes on LAN|qbast@go2.pl|Jakub Stachowski}}&lt;br /&gt;
{{FeatureInProgress|Kontact|New Planner summary; combines Appointment+To-do+SpecialDates into 1 pretty summary|winter@kde.org|Allen Winter}}&lt;br /&gt;
{{FeatureInProgress|KPilot|Finish Keyring conduit, base conduit code and test cases, category syncing|jkasper@kde.org|Jason 'vanRijn' Kasper}}&lt;br /&gt;
{{FeatureTodo|Akregator|Basic support for enclosures (Displaying links, mimetype and size)|osterfeld@kde.org|Frank Osterfeld}}&lt;br /&gt;
{{FeatureTodo|[http://kblogger.pwsp.net KBlogger]|KBlogger, a blogging application| christian_weilbach@.web.de|Christian Weilbach}}&lt;br /&gt;
{{FeatureTodo|Kleopatra|Konqueror and Dolphin Kleopatra plugins|marc@kdab.net|Marc Mutz (Gpg4win)}}&lt;br /&gt;
{{FeatureTodo|KMail|Aggregated attachment view in the mail header area of the reader window|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureTodo|Kontact|Support for Kontact wide profiles|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureTodo|KOrganizer|Drag and drop in the free-busy view|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureTodo|KOrganizer|Support for comments in replies to invitations|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureTodo|KOrganizer|Support for extended free-busy lists|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureTodo|KPilot|Port old conduits to new base conduit architecture and KDE4/Qt4|jkasper@kde.org|Jason 'vanRijn' Kasper}}&lt;br /&gt;
{{FeatureTodo|KBlogger|Port to use KRichTextEdit (Or KMEditor)|steveire@gmail.com|Stephen Kelly}}&lt;br /&gt;
{{FeatureTodo|KNode|Port to use KRichTextEdit (Or KMEditor)|steveire@gmail.com|Stephen Kelly}}&lt;br /&gt;
&lt;br /&gt;
{{FeatureTodo|Kjots| Import notes from KNotes as KJots pages. |steveire@gmail.com|Stephen Kelly}}&lt;br /&gt;
{{FeatureTodo|Kjots| Email KJots pages using default mail client ({{bug|124509}}. |steveire@gmail.com|Stephen Kelly}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdeutils =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureTodo|Okteta|add Kate-like search tool|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|refactor KByteArrayView|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|add support for memory mapping of files|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|parameter dialog for &amp;quot;Copy as...&amp;quot;|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|add support for jobs like io, printing, string search or filter|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureInProgress|Ark|Implement proper drag/drop between Ark/dolphin|harald((at))stud(dot)ntnu.no|Harald Hvaal}}&lt;br /&gt;
{{FeatureInProgress|Ark|Make the service menu work (possibly doing it as a KonqPopupPlugin|harald((at))stud(dot)ntnu.no|Harald Hvaal}}&lt;br /&gt;
{{FeatureInProgress|Ark|Proper password support|harald((at))stud(dot)ntnu.no|Harald Hvaal}}&lt;br /&gt;
{{FeatureTodo|Ark|Support for custom options from the compression interface (eg. a slider for selecting compression level for rar files)|harald((at))stud(dot)ntnu.no|Harald Hvaal}}&lt;br /&gt;
{{FeatureTodo|Ark|Add an options dialog (maybe)|harald((at))stud(dot)ntnu.no|Harald Hvaal}}&lt;br /&gt;
{{FeatureInProgress|kwalletmanager|Move kwalletmanager to the Model/View architecture and redesign the UI|lemma@confuego.org|Michael Leupold}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdebindings =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureDone|krosspython and krossruby|Support custom types via handlers|mail@dipe.org|Sebastian Sauer}}&lt;br /&gt;
{{FeatureDone|krosspython and krossruby|Support QList&amp;lt;CustomType*&amp;gt; constructs|mail@dipe.org|Sebastian Sauer}}&lt;br /&gt;
{{FeatureInProgress|Smoke|Wrap some more APIs (at least Akanodi for all languages and Plasma for C#)|kde-bindings@kde.org|KDE-bindings developers}}&lt;br /&gt;
{{FeatureInProgress|PyKDE|KCM support and other plugins|simon@simonzone.com|Simon Edwards}}&lt;br /&gt;
{{FeatureTodo|krossjava|Integrate into e.g. SuperKaramba and fix issues that show up.|mail@dipe.org|Sebastian Sauer}}&lt;br /&gt;
{{FeatureTodo|krossjava|Documentation++|mail@dipe.org|Sebastian Sauer}}&lt;br /&gt;
{{FeatureTodo|krossfalcon|Unittests++|mail@dipe.org|Sebastian Sauer}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdegames =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureInProgress|libkdegames|New highscore management system|milliams|Matt Williams}}&lt;br /&gt;
{{FeatureDone|kdiamond|Drag jewels|majewsky@gmx.net|Stefan Majewsky}}&lt;br /&gt;
{{FeatureTodo|kdiamond|Optional OpenGL rendering|majewsky@gmx.net|Stefan Majewsky}}&lt;br /&gt;
{{FeatureDone|ksirk|Map scrolling arrows|kleag@free.fr|Gaël de Chalendar}}&lt;br /&gt;
{{FeatureDone|ksirk|KHotNewStuff skins|kleag@free.fr|Gaël de Chalendar}}&lt;br /&gt;
{{FeatureInProgress|ksirk|Jabber based net game finding|kleag@free.fr|Gaël de Chalendar}}&lt;br /&gt;
{{FeatureDone|ksirk|Use only names in skins instead of numeric ids|kleag@free.fr|Gaël de Chalendar}}&lt;br /&gt;
{{FeatureDone|ksirk|Skins editor|kleag@free.fr|Gaël de Chalendar}}&lt;br /&gt;
{{FeatureInProgress|ktron|Port and remake the KTron game for KDE 4.2|legolas@legolasweb.nl|Stas Verberkt}}&lt;br /&gt;
{{FeatureTodo|KNetWalk|Support for custom and non-square board sizes|fela.kde@gmail.com|Fela Winkelmolen}}&lt;br /&gt;
{{FeatureTodo|KGoldrunner|Improvement to sound support and themes|mikelima@cirulla.net}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdesdk =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureDone|Kate|Port and reenable the Snippets plugin.|jpetso@gmx.at|Jakob Petsovits}}&lt;br /&gt;
{{FeatureDone|perldoc KIOSlave|Add KIOSlave to allow reading Perldoc documentation.|michael.pyne&amp;amp;#64;kdemail&amp;amp;#46;net|Michael Pyne}}&lt;br /&gt;
{{FeatureInProgress|Lokalize|XLIFF support|shafff-at-ukr.net|Nick Shaforostoff}}&lt;br /&gt;
{{FeatureInProgress|Lokalize|various Translation Memory enhancements|shafff-at-ukr.net|Nick Shaforostoff}}&lt;br /&gt;
{{FeatureDone|Lokalize|wrap all windows belonging to one project into one MDI window|shafff-at-ukr.net|Nick Shaforostoff}}&lt;br /&gt;
{{FeatureTodo|Lokalize|Kross-based scripting|shafff-at-ukr.net|Nick Shaforostoff}}&lt;br /&gt;
{{FeatureInProgress|Lokalize|QA: glossary checklists|shafff-at-ukr.net|Nick Shaforostoff}}&lt;br /&gt;
{{FeatureTodo|KAppTemplate|Add DBUS support in templates|annma@kde.org|Anne-Marie Mahfouf}}&lt;br /&gt;
{{FeatureDone|Umbrello|Port code generation wizard to QWizard and replace all q3 widgets|andi.fischer@hispeed.ch|Andi Fischer}}&lt;br /&gt;
{{FeatureInProgress|Umbrello|Replace all q3 widgets in the refactoring assistant|andi.fischer@hispeed.ch|Andi Fischer}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdeedu =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureInProgress|KEduca|Rewrite of the classic test writing/taking application|matt@milliams.com|Matt Williams}}&lt;br /&gt;
{{FeatureTodo|KLettres|Number support|annma@kde.org|Anne-Marie Mahfouf}}&lt;br /&gt;
{{FeatureTodo|KLettres|Theme manager|annma@kde.org|Anne-Marie Mahfouf}}&lt;br /&gt;
{{FeatureInProgress|KHangMan|Add a Open File action|annma@kde.org|Anne-Marie Mahfouf}}&lt;br /&gt;
{{FeatureTodo|KHangMan|Integrate an editor|annma@kde.org|Anne-Marie Mahfouf}}&lt;br /&gt;
{{FeatureTodo|KHangMan|Plasmoid|annma@kde.org|Anne-Marie Mahfouf}}&lt;br /&gt;
{{FeatureTodo|KHangMan|Theme manager|annma@kde.org|Anne-Marie Mahfouf}}&lt;br /&gt;
{{FeatureTodo|KLettres|Visual indicator when letter is wrong|annma@kde.org|Anne-Marie Mahfouf}}&lt;br /&gt;
{{FeatureTodo|Kalzium|Port Kalzium's periodic table to use new QGraphicsView.|marcus@cryos.org|Marcus D. Hanwell}}&lt;br /&gt;
{{FeatureInProgress|Kalzium|Plasmoid to access Kalzium database|cniehaus@kde.org|Carsten Niehaus}}&lt;br /&gt;
{{FeatureTodo|Step|Improve GUI for creating softbody|ksvladimir@gmail.com|Vladimir Kuznetsov}}&lt;br /&gt;
{{FeatureTodo|Step|Use common constraints handling code for collisions|ksvladimir@gmail.com|Vladimir Kuznetsov}}&lt;br /&gt;
{{FeatureDone|KAlgebra|New parser (using QLALR) and new lexer|aleixpol@gmail.com|Aleix Pol}}&lt;br /&gt;
{{FeatureDone|KAlgebra|Import capability for MathML Presentation Markup in libanalitza|aleixpol@gmail.com|Aleix Pol}}&lt;br /&gt;
{{FeatureTodo|KAlgebra|Export to MathML Presentation Markup|aleixpol@gmail.com|Aleix Pol}}&lt;br /&gt;
{{FeatureTodo|KAlgebra|Some integration with the new KFormula widget|aleixpol@gmail.com|Aleix Pol}}&lt;br /&gt;
{{FeatureInProgress|Parley|Declensions|frederik.gladhorn@kdemail.net|Frederik Gladhorn}}&lt;br /&gt;
{{FeatureInProgress|Parley|Rework main window infrastructure|d.laidig@gmx.de|Daniel Laidig}}&lt;br /&gt;
{{FeatureInProgress|KStars|Display millions of stars|akarshsimha@gmail.com|Akarsh Simha}}&lt;br /&gt;
{{FeatureInProgress|KStars|Tool to predict Conjunctions|akarshsimha@gmail.com|Akarsh Simha}}&lt;br /&gt;
{{FeatureInProgress|KStars|Earth Satellites|kstars@30doradus.org|Jason Harris}}&lt;br /&gt;
{{FeatureInProgress|KStars|Sky Calendar Tool|kstars@30doradus.org|Jason Harris}}&lt;br /&gt;
{{FeatureInProgress|KStars|Include HD Catalog Numbers (in search, in display)|akarshsimha@gmail.com|Akarsh Simha}}&lt;br /&gt;
{{FeatureTodo|KStars|Marble widget for Geolocation tool|mboquien@free.fr|Médéric Boquien}}&lt;br /&gt;
{{FeatureTodo|KStars|Better printed star charts|kstars@30doradus.org|Jason Harris}}&lt;br /&gt;
{{FeatureTodo|KStars|Better rendering of comets/asteroids|kstars@30doradus.org|Jason Harris}}&lt;br /&gt;
{{FeatureTodo|KStars|Texture mapping of the skymap???|kstars@30doradus.org|Jason Harris}}&lt;br /&gt;
{{FeatureTodo|KStars|Improve Observing List Wizard|akarshsimha@gmail.com|Akarsh Simha}}&lt;br /&gt;
{{FeatureTodo|KStars|Display Comet Magnitudes whenever possible|akarshsimha@gmail.com|Akarsh Simha}}&lt;br /&gt;
{{FeatureTodo|KStars|Tool to suggest star-hopping techniques???|akarshsimha@gmail.com|Akarsh Simha}}&lt;br /&gt;
{{FeatureTodo|KStars|Extend conjunction tool to have one object unspecified, but have a genre of objects specified instead|akarshsimha@gmail.com|Akarsh Simha}}&lt;br /&gt;
{{FeatureTodo|Marble|Export map to MxN pixel bitmap|inge@lysator.liu.se|Inge Wallin}}&lt;br /&gt;
{{FeatureTodo|Marble|Support for MarbleWidget::setEnabled( bool )|inge@lysator.liu.se|Inge Wallin}}&lt;br /&gt;
{{FeatureTodo|Marble|Map Contents translation|tackat@kde.org|Torsten Rahn}}&lt;br /&gt;
{{FeatureInProgress|Marble|Layer Management Class|rahn@kde.org|Torsten Rahn}}&lt;br /&gt;
{{FeatureInProgress|Marble|Plugin architecture for map layers|rahn@kde.org|Torsten Rahn}}&lt;br /&gt;
{{FeatureInProgress|Marble|DGML2 Support|tackat@kde.org|Torsten Rahn}}&lt;br /&gt;
{{FeatureInProgress|Marble|KDE-Version settings dialog|tackat@kde.org|Torsten Rahn}}&lt;br /&gt;
{{FeatureInProgress|Marble|Port authors list from the Qt-About dialog to the KDE-About dialog|tackat@kde.org|Torsten Rahn}}&lt;br /&gt;
{{FeatureInProgress|Marble|Qt-Version settings dialog|tackat@kde.org|Torsten Rahn}}&lt;br /&gt;
{{FeatureInProgress|Marble|Improved KML support|tackat@kde.org|Torsten Rahn}}&lt;br /&gt;
{{FeatureInProgress|Marble|OpenStreetMap support using original OSM tiles|tackat@kde.org|Torsten Rahn}}&lt;br /&gt;
{{FeatureInProgress|Marble|Real Time Cloud-Cover|tackat@kde.org|David Roberts / Torsten Rahn}}&lt;br /&gt;
{{FeatureInProgress|Marble|Mercator Projection|inge@lysator.liu.se|Inge Wallin}}&lt;br /&gt;
{{FeatureInProgress|Marble|More generic projection support|inge@lysator.liu.se|Inge Wallin}}&lt;br /&gt;
{{FeatureInProgress|Marble|Usage of Marble in &lt;br /&gt;
non-widgets|inge@lysator.liu.se|Inge Wallin}}&lt;br /&gt;
{{FeatureTodo|Kig|Properties dialog for objects.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureTodo|Kig|Improve construction of bisect lines.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureTodo|Kig|Improve feedback when constructing objects.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureTodo|Kig|More geometric objects.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureTodo|Kig|Script objects as macros (to be reused more than once).|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureTodo|Kig|Improve the Cabri import filter.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureDone|KTurtle|Export canvas as image|piacentini@kde.org|Mauricio Piacentini}}&lt;br /&gt;
{{FeatureTodo|KTurtle|Optional rulers/grid for canvas units|piacentini@kde.org|Mauricio Piacentini}}&lt;br /&gt;
{{FeatureDone|KTurtle|Add command line|piacentini@kde.org|Mauricio Piacentini}}&lt;br /&gt;
{{FeatureDone|KTurtle|Add a color picker|nielsslot@gmail.com|Niels Slot}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdemultimedia =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureInProgress|Dragon Player|Make Dragon indipendent from Xine|ian.monroe@gmail.com|Ian Monroe}}&lt;br /&gt;
{{FeatureInProgress|Dragon Player|File Manager|ian.monroe@gmail.com|Ian Monroe}}&lt;br /&gt;
{{FeatureInProgress|Dragon Player|play media dialog|ian.monroe@gmail.com|Ian Monroe}}&lt;br /&gt;
{{FeatureInProgress|Dragon Player|slider changes|ian.monroe@gmail.com|Ian Monroe}}&lt;br /&gt;
{{FeatureInProgress|Dragon Player|show info while playing audio files|ian.monroe@gmail.com|Ian Monroe}}&lt;br /&gt;
{{FeatureTodo|JuK|Remove Qt/KDE3 support lib requirements|michael.pyne@kdemail.net|Michael Pyne}}&lt;br /&gt;
{{FeatureTodo|JuK|Allow setting covers directly from URLs supported by KIO - drag/drop already allows this however|michael.pyne@kdemail.net|Michael Pyne}}&lt;br /&gt;
{{FeatureTodo|JuK|Use XCOMPOSITE real transparency when available for the track announcement popup|michael.pyne@kdemail.net|Michael Pyne}}&lt;br /&gt;
{{FeatureTodo|JuK|Allow disabling crossfade|michael.pyne@kdemail.net|Michael Pyne}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdeaccessibility =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureTodo|KMagnifier|Refactor color menu, re-add invert, break current color blindness code into &amp;quot;daltonize&amp;quot; and &amp;quot;simulate&amp;quot;|mw_triad@users.sourceforge.net|Matthew Woehlke}}&lt;br /&gt;
{{FeatureTodo|KMagnifier|Add color-shift modes to help people with color blindness|mw_triad@users.sourceforge.net|Matthew Woehlke}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdegraphics =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureDone|KSnapshot|Add support for grabbing a single screen in multihead|rich@kde.org|Richard Moore}}&lt;br /&gt;
{{FeatureDone|KSnapshot|Increase jpeg image quality from 75% to 85%|rich@kde.org|Richard Moore}}&lt;br /&gt;
{{FeatureDone|KSnapshot|If we're saving the window decorations then record the window title and class in the image (if the format supports it) to play nice with indexers like strigi|rich@kde.org|Richard Moore}}&lt;br /&gt;
{{FeatureTodo|Okular|Sound annotations.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureTodo|Okular|Link annotations.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureTodo|Okular|Improve annotation support: for existing types (rubber stamps, line, note, etc), and for the way they are constructed and handled.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureTodo|Okular|Caret annotations.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureInProgress|Okular|Support for videos &amp;amp; movie annotations.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureTodo|Okular|Support .snp and .emf file formats|bradh@kde.org|Brad Hards}}&lt;br /&gt;
{{FeatureDone|Gwenview|Support for animated images (.gif and .mng)|aurelien.gateau@free.fr|Aurélien Gâteau}}&lt;br /&gt;
{{FeatureInProgress|Gwenview|Red Eye Reduction|aurelien.gateau@free.fr|Aurélien Gâteau}}&lt;br /&gt;
{{FeatureInProgress|Gwenview|Nepomuk integration|aurelien.gateau@free.fr|Aurélien Gâteau}}&lt;br /&gt;
{{FeatureTodo|Gwenview|Dolphin-like single-click selection|aurelien.gateau@free.fr|Aurélien Gâteau}}&lt;br /&gt;
{{FeatureTodo|Gwenview|Optional tree view|aurelien.gateau@free.fr|Aurélien Gâteau}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdebase-runtime =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureInProgress|kio_bookmarks|A new konqueror home page displaying user bookmarks. See [[http://kde-apps.org/content/show.php?content=86516 description]]|xavier.vello@gmail.com|Xavier Vello}}&lt;br /&gt;
{{FeatureInProgress|kuiserver|KUiServer Goya port. General improvements for usability improvements|ereslibre@kde.org|Rafael Fernández López}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdebase-apps =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureTodo|konqueror|A new konqueror recover-dialog replacement|edulix@gmail.com|Eduardo Robles Elvira}}&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Shaforostoff</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Schedules/KDE4/4.2_Feature_Plan</id>
		<title>Schedules/KDE4/4.2 Feature Plan</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Schedules/KDE4/4.2_Feature_Plan"/>
				<updated>2008-09-20T14:06:22Z</updated>
		
		<summary type="html">&lt;p&gt;Shaforostoff: /* kdesdk */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This is a list of planned features for the 4.2 release.&lt;br /&gt;
&lt;br /&gt;
See also:&lt;br /&gt;
* [[Schedules/KDE4/4.2 Release Schedule]]&lt;br /&gt;
* [[Schedules/KDE4/4.1 Feature Plan]]&lt;br /&gt;
* [[Schedules/KDE4/Goals]]&lt;br /&gt;
&lt;br /&gt;
Legend:&lt;br /&gt;
* todo =&amp;gt; not started yet&lt;br /&gt;
* in-progress =&amp;gt; started, but not completed yet&lt;br /&gt;
* done =&amp;gt; completed&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
= Other =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureTodo|System Settings|add Administrator mode button|alediaferia@gmail.com|Alessandro Diaferia}}&lt;br /&gt;
{{FeatureDone|Eigen|Make Eigen 2 ready for KDE, and move it to kdesupport|jacob@math.jussieu.fr|Benoît Jacob}}&lt;br /&gt;
{{FeatureInProgress|Eigen|Port all Eigen-using code in KDE and KOffice to Eigen 2.0|jacob@math.jussieu.fr|Benoît Jacob}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdelibs =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureInProgress|kross|Extend QtScript integration.|mail@dipe.org|Sebastian Sauer}}&lt;br /&gt;
{{FeatureInProgress|KDEPrint|Reintroduce KDEPrint in some form, depending on what Qt4.4 delivers.|john@layt.net|john Layt}}&lt;br /&gt;
{{FeatureTodo|KDEPrint|Add framework for standard actions for 'Send to...' for e-mail, fax, etc by printing to PDF/PS.|john@layt.net|John Layt}}&lt;br /&gt;
{{FeatureTodo|KDEPrint|Migrate FilePrinter class from Okular to enable file printing for all apps via QPrinter, modify to utilise new Qt4.4 features.  To be discussed on k-c-d first.|john@layt.net|John Layt}}&lt;br /&gt;
{{FeatureTodo|KCalenderSystem|Add new calendar systems: Indian Civil (Saka), Ethiopean, Chinese, Pure Julian, Pure Gregorian. (Note, not all may live in kdelibs or be available as a global calendar system)|john@layt.net|John Layt}}&lt;br /&gt;
{{FeatureTodo|KLocale|Implement KLocale based methods to return weekend days and day of religious observance.  Currently KCalendarSystem provides dayOfPray(), but for Gregorian this is not correct in all locales where it is used.  Currently KDatePicker hardcodes Saturday and dayOfPray() as weekend days which may not be correct in all locales.  To be discussed first on k-c-d and with kdepim.|john@layt.net|John Layt}}&lt;br /&gt;
{{FeatureTodo|Phonon|add Port class for fine grained control over data flow between Phonon objects|kretz@kde.org|Matthias Kretz}}&lt;br /&gt;
{{FeatureInProgress|Phonon|make AbstractMediaStream/StreamInterface threadsafe|kretz@kde.org|Matthias Kretz}}&lt;br /&gt;
{{FeatureInProgress|Phonon|&amp;quot;low-level&amp;quot; PCM I/O with at least an ALSA implementation|kretz@kde.org|Matthias Kretz and Ian Monroe}}&lt;br /&gt;
{{FeatureInProgress|Phonon|VideoWidget snapshot function|kretz@kde.org|Matthias Kretz}}&lt;br /&gt;
{{FeatureInProgress|KConfig|API review and export KConfigBackend|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureInProgress|KConfig|Make KConfigSkeleton KConfigGroup aware|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureInProgress|KConfig|Make KConfigDialog work nicer with KConfigSkeleton + manually managed widgets|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureDone|KUrlNavigator|Provide an option to always show the full path in the breadcrumb mode.|peter.penz@gmx.at|Peter Penz}}&lt;br /&gt;
{{FeatureInProgress|Katepart|Make a Vi input mode for Katepart|ehamberg@gmail.com|Erlend Hamberg}}&lt;br /&gt;
{{FeatureTodo|KIO::Global|Make KDynamicJobTracker do the checking if the kuiserver service is registered or not, for full implementation of &amp;quot;Progress in the same window&amp;quot;|ereslibre@kde.org|Rafael Fernández López}}&lt;br /&gt;
{{FeatureTodo|KJS|Further performance improvements, in particular variable access (Blizzard stage 2), and calling convention (FrostByte stage 2)|maksim@kde.org|Maksim Orlovich}}&lt;br /&gt;
{{FeatureInProgress|KJS and KHTML|Support for transparent reindenting of standalone sources in debugger, debug info management improvements|maksim@kde.org|Maksim Orlovich}}&lt;br /&gt;
{{FeatureInProgress|KHTML|SVG support in KHTML (port from WebKit)|tsjoker@gmail.com|Vyacheslav Tokarev}}&lt;br /&gt;
{{FeatureInProgress|KHTML|Use of IDString (hashed strings) for local names, prefixes and namespaces in DOM core instead of document-related ids, in particular for better API compatibility with WebCore|tsjoker@gmail.com|Vyacheslav Tokarev}}&lt;br /&gt;
{{FeatureTodo|KHTML|Scriptable extension plug-ins|porten@kde.org|Harri}}&lt;br /&gt;
{{FeatureDone|kwallet|Move kwalletd to kdebase-runtime|dfaure@kde.org|David Faure}}&lt;br /&gt;
{{FeatureDone|i18n|proper filenames decoding for FAT mounting, in KUrls and content-disposition|shafff-at-ukr.net|Nick Shaforostoff}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdebase-workspace =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureTodo|Color KCM|Add 'smart setting' of extended colors|mw_triad@users.sourceforge.net|Matthew Woehlke}}&lt;br /&gt;
{{FeatureTodo|Color KCM|Add KDE3 scheme import|mw_triad@users.sourceforge.net|Matthew Woehlke}}&lt;br /&gt;
{{FeatureTodo|Color KCM|Query kwin for supported colors; add full set of kwin colors|mw_triad@users.sourceforge.net|Matthew Woehlke}}&lt;br /&gt;
{{FeatureTodo|KDEPrint|reintroduce KDEPrint Print Management tools, e.g. KCM, kprinter, kjobviewer, etc.  Depends upon progress of kdelibs side of KDEPrint and Qt4.4 feature set.|john@layt.net|john Layt}}&lt;br /&gt;
{{FeatureDone|Power Manager|import PowerDevil|drf@kdemod.ath.cx|Dario Freddi}}&lt;br /&gt;
|- border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; style=&amp;quot;text-align: center&amp;quot; |KRunner&lt;br /&gt;
{{FeatureInProgress|Krunner|Configuration options for blacklisting, user ranking, runner ranking, learning|mumismo@gmail.com|Jordi Polo}}&lt;br /&gt;
{{FeatureInProgress|Krunner|SearchMatch configuration|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Krunner|Simple learning|mumismo@gmail.com|Jordi Polo}}&lt;br /&gt;
{{FeatureTodo|Krunner|Simple GUI for above options|mumismo@gmail.com|Jordi Polo}}&lt;br /&gt;
{{FeatureTodo|Krunner|Runners able to share parsing|mumismo@gmail.com|Jordi Polo}}&lt;br /&gt;
{{FeatureTodo|Krunner|Noun-Verb support|ryan.bitanga@gmail.com|Ryan P. Bitanga}}&lt;br /&gt;
{{FeatureTodo|Krunner|Implement Nuno's UI polishings|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Krunner|Runtime syntax documentation|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Krunner|Runner configuration|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Krunner|Search set paging|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|KRunner|runner for the plasma dbus interface|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureInProgress|KRunner|Konqueror history runner|sebas@kde.org|Sebastian Kügler}}&lt;br /&gt;
{{FeatureInProgress|KRunner|Kate sessions runner|sebas@kde.org|Sebastian Kügler}}&lt;br /&gt;
{{FeatureInProgress|KRunner|Recent Documents runner|sebas@kde.org|Sebastian Kügler}}&lt;br /&gt;
|- border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; style=&amp;quot;text-align: center&amp;quot; |Plasma - Priority Features&lt;br /&gt;
{{FeatureInProgress|Plasma|Welcome plasmoid|aseigo@kde.org|Aaron Seigo}}{{FeatureInProgress|Plasma|JOLIE Integration|ervin@kde.org|Kevin Ottens}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Notification plasmoid|dimsuzkde@gmail.com|Dmitry Suzdalev}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Kuiserver plasmoid|r.scheepmaker@student.utwente.nl|Rob Scheepmaker}}&lt;br /&gt;
{{FeatureTodo|KWin|Make it possible to focus plasma panels|chanika@gmail.com|Chani}}&lt;br /&gt;
{{FeatureTodo|Plasma|panel-&amp;gt;desktop dragging|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|Expand cashew to full action bar when zoomed out|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Plasmagik packaging (and package classes)|riccardo@kde.org|Riccardo Iaconelli}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Networkmanager Plasmoid and DataEngine|cblauvelt@gmail.com|Christopher Blauvelt}}&lt;br /&gt;
{{FeatureInProgress|Plasma|New ECMA Script Scriptengines|richmoore44@gmail.com|Richard Moore}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Extenders|r.scheepmaker@student.utwente.nl|Rob Scheepmaker}}&lt;br /&gt;
{{FeatureTodo|Plasma|Wallpaper plugins|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|Separate Desktop Settings from DesktopContainment|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|Script Security Framework|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Python support|simon@simonzone.com|Simon Edwards}}&lt;br /&gt;
|- border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; style=&amp;quot;text-align: center&amp;quot; |Plasma&lt;br /&gt;
{{FeatureDone|Plasma|Plasma Popup Tips|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureDone|Plasma|Collapsing Applet convenience class|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
&lt;br /&gt;
{{FeatureInProgress|Plasma|Taskbar grouping|hrigi_1@hotmail.com|Christian Mollekopf}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Weather plasmoid|shawn.starr@rogers.com|Shawn Starr}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Small Form Factors|m.kruisselbrink@student.tue.nl|Marijn Kruisselbrink}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Plasma On Screensaver|chanika@gmail.com|Chani Armitage}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Website update|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Grid applet|sebas@kde.org|Sebastian Kügler}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Techbase Tutorials|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|Context menu plugins|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|Add New Widgets: Pluggable widget browser|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|Activity&amp;lt;-&amp;gt;Virtual Desktop Affinity|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|Optional Per-Virtual Desktop DesktopView|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|Make non-SVG painting in Plasma low-color and non-anim friendly|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|Runtime DataEngine documentation (sources, usage, etc)|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Panel Autohide|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|Keyboard Shortcut Config UI|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|Systray++ Spec|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|Save icon positioning in folderview|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|physics-based animator|riccardo@kde.org|Riccardo Iaconelli}}&lt;br /&gt;
{{FeatureTodo|Plasma|New wallpapers|riccardo@kde.org|Riccardo Iaconelli}}&lt;br /&gt;
{{FeatureTodo|Plasma|Preserve wallpaper choice by copying user paper to home dir|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|New way of handling wallpapers and different sizes (package format, and so on...)|riccardo@kde.org|Riccardo Iaconelli}}&lt;br /&gt;
{{FeatureTodo|Plasma|Top-level windows plasmoids|riccardo@kde.org|Riccardo Iaconelli}}&lt;br /&gt;
{{FeatureTodo|Plasma|drop indicator in panel|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|improve usability of appletbrowser delete button|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|adding containments from the appletbrowser (and remove the &amp;quot;add panel&amp;quot; from DefaultDeskrop)|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|Expand cashew to cover the containment when fully zoomed out|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|highlight the applet with active keyboard shortcuts|chanika@gmail.com|Chani}}&lt;br /&gt;
{{FeatureTodo|Plasma|dbus interface|chanika@gmail.com|Chani}}&lt;br /&gt;
{{FeatureInProgress|Plasma|make the panel controller a bit more usable|notmart@gmail.com|Marco Martin}}&lt;br /&gt;
{{FeatureInProgress|Plasma|nicely draw the desktop toolbox when it's moved because of a panel|notmart@gmail.com|Marco Martin}}&lt;br /&gt;
{{FeatureDone|Plasma|theme Plasma::PushButton with svg|notmart@gmail.com|Marco Martin}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Tabbar widget derived from QTabBar and themed with svg|notmart@gmail.com|Marco Martin}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Complete the panel size sliders feature: an applet can ask the panel to resize|notmart@gmail.com|Marco Martin}}&lt;br /&gt;
{{FeatureInProgress|Plasma|New theming capabilities by expanding the lover level theming classes (Theme and PanelSvg)|notmart@gmail.com|Marco Martin}}&lt;br /&gt;
{{FeatureDone|Plasma|Wallpaper plugin: Mandelbrot fractal explorer|jacob@math.jussieu.fr|Benoît Jacob}}&lt;br /&gt;
|- border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; style=&amp;quot;text-align: center&amp;quot; |KWin - Core&lt;br /&gt;
{{FeatureDone|KWin|New window snapping zones; screen center and window corners|lmurray@undefinedfire.com|Lucas Murray}}&lt;br /&gt;
{{FeatureDone|KWin|Move maximized windows between Xinerama screens|lmurray@undefinedfire.com|Lucas Murray}}&lt;br /&gt;
{{FeatureInProgress|KWin|Basic window tiling|lmurray@undefinedfire.com|Lucas Murray}}&lt;br /&gt;
{{FeatureTodo|KWin|Compositing decoration API additions|lmurray@undefinedfire.com|Lucas Murray}}&lt;br /&gt;
|- border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; style=&amp;quot;text-align: center&amp;quot; |KWin - Desktop Effects&lt;br /&gt;
{{FeatureInProgress|KWin|Compositing self-check|l.lunak@kde.org|Luboš Luňák}}&lt;br /&gt;
{{FeatureDone|KWin|Global animation speed setting|l.lunak@kde.org|Luboš Luňák}}&lt;br /&gt;
{{FeatureInProgress|KWin|Motion dynamics|lmurray@undefinedfire.com|Lucas Murray}}&lt;br /&gt;
{{FeatureTodo|KWin|New shadow handling by decorations|lmurray@undefinedfire.com|Lucas Murray}}&lt;br /&gt;
{{FeatureDone|KWin|Improved UI for selecting window/desktop switcher|ubuntu@martin-graesslin.com|Martin Gräßlin}}&lt;br /&gt;
{{FeatureTodo|KWin|UI for assigning effects to screen edges|ubuntu@martin-graesslin.com|Martin Gräßlin}}&lt;br /&gt;
{{FeatureDone|KWin|Cube/Cylinder/Sphere Effect|ubuntu@martin-graesslin.com|Martin Gräßlin}}&lt;br /&gt;
{{FeatureDone|KWin|Magic Lamp minimize Effect|ubuntu@martin-graesslin.com|Martin Gräßlin}}&lt;br /&gt;
{{FeatureInProgress|KWin|Animation in BoxSwitch Effect|ubuntu@martin-graesslin.com|Martin Gräßlin}}&lt;br /&gt;
{{FeatureTodo|KWin|Mouse interaction for CoverSwitch Effect|ubuntu@martin-graesslin.com|Martin Gräßlin}}&lt;br /&gt;
{{FeatureTodo|KWin|Additional thumbnails for CoverSwitch Effect|ubuntu@martin-graesslin.com|Martin Gräßlin}}&lt;br /&gt;
{{FeatureTodo|KWin|Improved Snow Effect; different sizes, better randomness and different directions|ubuntu@martin-graesslin.com|Martin Gräßlin}}&lt;br /&gt;
{{FeatureDone|KWin|Improved desktop grid|lmurray@undefinedfire.com|Lucas Murray}}&lt;br /&gt;
{{FeatureDone|KWin|New present window layout modes|lmurray@undefinedfire.com|Lucas Murray}}&lt;br /&gt;
{{FeatureDone|KWin|Invert only selected windows|lmurray@undefinedfire.com|Lucas Murray}}&lt;br /&gt;
{{FeatureInProgress|KWin|Improved mouse mark/scribble effect|lmurray@undefinedfire.com|Lucas Murray}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdepimlibs =&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 !! Project !! Description !! Contact&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdenetwork =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureInProgress|Kopete|MSNP15 implementation for MSN|mattr@kde.org|Matt Rogers}}&lt;br /&gt;
{{FeatureInProgress|Kopete|UPnp Support|mattr@kde.org|Matt Rogers}}&lt;br /&gt;
{{FeatureInProgress|Kopete|Updated contact list interface (uses Qt 4 rather than Qt 3)|mattr@kde.org|Matt Rogers}}&lt;br /&gt;
{{FeatureTodo|Kopete|Update Kopete to better support Decibel|kopete-devel@kde.org|Kopete Developers}}&lt;br /&gt;
{{FeatureInProgress|Kopete|Contacts plasmoid|earthwings@gentoo.org|Dennis Nienhüser}}&lt;br /&gt;
{{FeatureDone|Kopete|Move file transfer request into chat window|kedgedev@centrum.cz|Roman Jarosz}}&lt;br /&gt;
{{FeatureInProgress|Kopete|Message delivery notifications|kedgedev@centrum.cz|Roman Jarosz}}&lt;br /&gt;
{{FeatureTodo|Kopete|Improve file transfer progress dialog|kedgedev@centrum.cz|Roman Jarosz}}&lt;br /&gt;
{{FeatureInProgress|KGet|MultiSource-Downloading|l.appelhans@gmx.de|Lukas Appelhans}}&lt;br /&gt;
{{FeatureInProgress|KGet|Support mms://-protocol, see https://launchpad.net/libmms|l.appelhans@gmx.de|Lukas Appelhans}}&lt;br /&gt;
{{FeatureTodo|KGet|MLDonkey-Plugin based on libkmldonkey|l.appelhans@gmx.de|Lukas Appelhans}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Network Manager Applet|cblauvelt@gmail.com|Christopher Blauvelt}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdepim =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureInProgress|Akregator|Support for syncing the feed list with Google Reader |osterfeld@kde.org|Frank Osterfeld}}&lt;br /&gt;
{{FeatureInProgress|KAlarm|Improve alarm edit and preferences dialog layouts|djarvie@kde.org|David Jarvie}}&lt;br /&gt;
{{FeatureInProgress|KAlarm|Add holidays support|djarvie@kde.org|David Jarvie}}&lt;br /&gt;
{{FeatureInProgress|Kleopatra|OpenPGP support|marc@kdab.net|Marc Mutz (Gpg4win)}}&lt;br /&gt;
{{FeatureInProgress|KNotes|Zeroconf support for sending notes on LAN|qbast@go2.pl|Jakub Stachowski}}&lt;br /&gt;
{{FeatureInProgress|Kontact|New Planner summary; combines Appointment+To-do+SpecialDates into 1 pretty summary|winter@kde.org|Allen Winter}}&lt;br /&gt;
{{FeatureInProgress|KPilot|Finish Keyring conduit, base conduit code and test cases, category syncing|jkasper@kde.org|Jason 'vanRijn' Kasper}}&lt;br /&gt;
{{FeatureTodo|Akregator|Basic support for enclosures (Displaying links, mimetype and size)|osterfeld@kde.org|Frank Osterfeld}}&lt;br /&gt;
{{FeatureTodo|[http://kblogger.pwsp.net KBlogger]|KBlogger, a blogging application| christian_weilbach@.web.de|Christian Weilbach}}&lt;br /&gt;
{{FeatureTodo|Kleopatra|Konqueror and Dolphin Kleopatra plugins|marc@kdab.net|Marc Mutz (Gpg4win)}}&lt;br /&gt;
{{FeatureTodo|KMail|Aggregated attachment view in the mail header area of the reader window|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureTodo|Kontact|Support for Kontact wide profiles|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureTodo|KOrganizer|Drag and drop in the free-busy view|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureTodo|KOrganizer|Support for comments in replies to invitations|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureTodo|KOrganizer|Support for extended free-busy lists|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureTodo|KPilot|Port old conduits to new base conduit architecture and KDE4/Qt4|jkasper@kde.org|Jason 'vanRijn' Kasper}}&lt;br /&gt;
{{FeatureTodo|KBlogger|Port to use KRichTextEdit (Or KMEditor)|steveire@gmail.com|Stephen Kelly}}&lt;br /&gt;
{{FeatureTodo|KNode|Port to use KRichTextEdit (Or KMEditor)|steveire@gmail.com|Stephen Kelly}}&lt;br /&gt;
&lt;br /&gt;
{{FeatureTodo|Kjots| Import notes from KNotes as KJots pages. |steveire@gmail.com|Stephen Kelly}}&lt;br /&gt;
{{FeatureTodo|Kjots| Email KJots pages using default mail client ({{bug|124509}}. |steveire@gmail.com|Stephen Kelly}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdeutils =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureTodo|Okteta|add Kate-like search tool|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|refactor KByteArrayView|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|add support for memory mapping of files|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|parameter dialog for &amp;quot;Copy as...&amp;quot;|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|add support for jobs like io, printing, string search or filter|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureInProgress|Ark|Implement proper drag/drop between Ark/dolphin|harald((at))stud(dot)ntnu.no|Harald Hvaal}}&lt;br /&gt;
{{FeatureInProgress|Ark|Make the service menu work (possibly doing it as a KonqPopupPlugin|harald((at))stud(dot)ntnu.no|Harald Hvaal}}&lt;br /&gt;
{{FeatureInProgress|Ark|Proper password support|harald((at))stud(dot)ntnu.no|Harald Hvaal}}&lt;br /&gt;
{{FeatureTodo|Ark|Support for custom options from the compression interface (eg. a slider for selecting compression level for rar files)|harald((at))stud(dot)ntnu.no|Harald Hvaal}}&lt;br /&gt;
{{FeatureTodo|Ark|Add an options dialog (maybe)|harald((at))stud(dot)ntnu.no|Harald Hvaal}}&lt;br /&gt;
{{FeatureInProgress|kwalletmanager|Move kwalletmanager to the Model/View architecture and redesign the UI|lemma@confuego.org|Michael Leupold}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdebindings =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureDone|krosspython and krossruby|Support custom types via handlers|mail@dipe.org|Sebastian Sauer}}&lt;br /&gt;
{{FeatureDone|krosspython and krossruby|Support QList&amp;lt;CustomType*&amp;gt; constructs|mail@dipe.org|Sebastian Sauer}}&lt;br /&gt;
{{FeatureInProgress|Smoke|Wrap some more APIs (at least Akanodi for all languages and Plasma for C#)|kde-bindings@kde.org|KDE-bindings developers}}&lt;br /&gt;
{{FeatureInProgress|PyKDE|KCM support and other plugins|simon@simonzone.com|Simon Edwards}}&lt;br /&gt;
{{FeatureTodo|krossjava|Integrate into e.g. SuperKaramba and fix issues that show up.|mail@dipe.org|Sebastian Sauer}}&lt;br /&gt;
{{FeatureTodo|krossjava|Documentation++|mail@dipe.org|Sebastian Sauer}}&lt;br /&gt;
{{FeatureTodo|krossfalcon|Unittests++|mail@dipe.org|Sebastian Sauer}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdegames =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureInProgress|libkdegames|New highscore management system|milliams|Matt Williams}}&lt;br /&gt;
{{FeatureDone|kdiamond|Drag jewels|majewsky@gmx.net|Stefan Majewsky}}&lt;br /&gt;
{{FeatureTodo|kdiamond|Optional OpenGL rendering|majewsky@gmx.net|Stefan Majewsky}}&lt;br /&gt;
{{FeatureDone|ksirk|Map scrolling arrows|kleag@free.fr|Gaël de Chalendar}}&lt;br /&gt;
{{FeatureDone|ksirk|KHotNewStuff skins|kleag@free.fr|Gaël de Chalendar}}&lt;br /&gt;
{{FeatureInProgress|ksirk|Jabber based net game finding|kleag@free.fr|Gaël de Chalendar}}&lt;br /&gt;
{{FeatureDone|ksirk|Use only names in skins instead of numeric ids|kleag@free.fr|Gaël de Chalendar}}&lt;br /&gt;
{{FeatureDone|ksirk|Skins editor|kleag@free.fr|Gaël de Chalendar}}&lt;br /&gt;
{{FeatureInProgress|ktron|Port and remake the KTron game for KDE 4.2|legolas@legolasweb.nl|Stas Verberkt}}&lt;br /&gt;
{{FeatureTodo|KNetWalk|Support for custom and non-square board sizes|fela.kde@gmail.com|Fela Winkelmolen}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdesdk =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureDone|Kate|Port and reenable the Snippets plugin.|jpetso@gmx.at|Jakob Petsovits}}&lt;br /&gt;
{{FeatureDone|perldoc KIOSlave|Add KIOSlave to allow reading Perldoc documentation.|michael.pyne&amp;amp;#64;kdemail&amp;amp;#46;net|Michael Pyne}}&lt;br /&gt;
{{FeatureInProgress|Lokalize|XLIFF support|shafff-at-ukr.net|Nick Shaforostoff}}&lt;br /&gt;
{{FeatureInProgress|Lokalize|various Translation Memory enhancements|shafff-at-ukr.net|Nick Shaforostoff}}&lt;br /&gt;
{{FeatureDone|Lokalize|wrap all windows belonging to one project into one MDI window|shafff-at-ukr.net|Nick Shaforostoff}}&lt;br /&gt;
{{FeatureTodo|Lokalize|Kross-based scripting|shafff-at-ukr.net|Nick Shaforostoff}}&lt;br /&gt;
{{FeatureInProgress|Lokalize|QA: glossary checklists|shafff-at-ukr.net|Nick Shaforostoff}}&lt;br /&gt;
{{FeatureTodo|KAppTemplate|Add DBUS support in templates|annma@kde.org|Anne-Marie Mahfouf}}&lt;br /&gt;
{{FeatureDone|Umbrello|Port code generation wizard to QWizard and replace all q3 widgets|andi.fischer@hispeed.ch|Andi Fischer}}&lt;br /&gt;
{{FeatureInProgress|Umbrello|Replace all q3 widgets in the refactoring assistant|andi.fischer@hispeed.ch|Andi Fischer}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdeedu =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureInProgress|KEduca|Rewrite of the classic test writing/taking application|matt@milliams.com|Matt Williams}}&lt;br /&gt;
{{FeatureTodo|KLettres|Number support|annma@kde.org|Anne-Marie Mahfouf}}&lt;br /&gt;
{{FeatureTodo|KLettres|Theme manager|annma@kde.org|Anne-Marie Mahfouf}}&lt;br /&gt;
{{FeatureInProgress|KHangMan|Add a Open File action|annma@kde.org|Anne-Marie Mahfouf}}&lt;br /&gt;
{{FeatureTodo|KHangMan|Integrate an editor|annma@kde.org|Anne-Marie Mahfouf}}&lt;br /&gt;
{{FeatureTodo|KHangMan|Plasmoid|annma@kde.org|Anne-Marie Mahfouf}}&lt;br /&gt;
{{FeatureTodo|KHangMan|Theme manager|annma@kde.org|Anne-Marie Mahfouf}}&lt;br /&gt;
{{FeatureTodo|KLettres|Visual indicator when letter is wrong|annma@kde.org|Anne-Marie Mahfouf}}&lt;br /&gt;
{{FeatureTodo|Kalzium|Port Kalzium's periodic table to use new QGraphicsView.|marcus@cryos.org|Marcus D. Hanwell}}&lt;br /&gt;
{{FeatureInProgress|Kalzium|Plasmoid to access Kalzium database|cniehaus@kde.org|Carsten Niehaus}}&lt;br /&gt;
{{FeatureTodo|Step|Improve GUI for creating softbody|ksvladimir@gmail.com|Vladimir Kuznetsov}}&lt;br /&gt;
{{FeatureTodo|Step|Use common constraints handling code for collisions|ksvladimir@gmail.com|Vladimir Kuznetsov}}&lt;br /&gt;
{{FeatureInProgress|KAlgebra|New parser using QLALR|aleixpol@gmail.com|Aleix Pol}}&lt;br /&gt;
{{FeatureInProgress|Parley|Declensions|frederik.gladhorn@kdemail.net|Frederik Gladhorn}}&lt;br /&gt;
{{FeatureInProgress|KStars|Display millions of stars|akarshsimha@gmail.com|Akarsh Simha}}&lt;br /&gt;
{{FeatureInProgress|KStars|Tool to predict Conjunctions|akarshsimha@gmail.com|Akarsh Simha}}&lt;br /&gt;
{{FeatureInProgress|KStars|Earth Satellites|kstars@30doradus.org|Jason Harris}}&lt;br /&gt;
{{FeatureInProgress|KStars|Sky Calendar Tool|kstars@30doradus.org|Jason Harris}}&lt;br /&gt;
{{FeatureInProgress|KStars|Include HD Catalog Numbers (in search, in display)|akarshsimha@gmail.com|Akarsh Simha}}&lt;br /&gt;
{{FeatureTodo|KStars|Marble widget for Geolocation tool|mboquien@free.fr|Médéric Boquien}}&lt;br /&gt;
{{FeatureTodo|KStars|Better printed star charts|kstars@30doradus.org|Jason Harris}}&lt;br /&gt;
{{FeatureTodo|KStars|Better rendering of comets/asteroids|kstars@30doradus.org|Jason Harris}}&lt;br /&gt;
{{FeatureTodo|KStars|Texture mapping of the skymap???|kstars@30doradus.org|Jason Harris}}&lt;br /&gt;
{{FeatureTodo|KStars|Improve Observing List Wizard|akarshsimha@gmail.com|Akarsh Simha}}&lt;br /&gt;
{{FeatureTodo|KStars|Display Comet Magnitudes whenever possible|akarshsimha@gmail.com|Akarsh Simha}}&lt;br /&gt;
{{FeatureTodo|KStars|Tool to suggest star-hopping techniques???|akarshsimha@gmail.com|Akarsh Simha}}&lt;br /&gt;
{{FeatureTodo|KStars|Extend conjunction tool to have one object unspecified, but have a genre of objects specified instead|akarshsimha@gmail.com|Akarsh Simha}}&lt;br /&gt;
{{FeatureTodo|Marble|Export map to MxN pixel bitmap|inge@lysator.liu.se|Inge Wallin}}&lt;br /&gt;
{{FeatureTodo|Marble|Support for MarbleWidget::setEnabled( bool )|inge@lysator.liu.se|Inge Wallin}}&lt;br /&gt;
{{FeatureTodo|Marble|Map Contents translation|tackat@kde.org|Torsten Rahn}}&lt;br /&gt;
{{FeatureInProgress|Marble|Layer Management Class|rahn@kde.org|Torsten Rahn}}&lt;br /&gt;
{{FeatureInProgress|Marble|Plugin architecture for map layers|rahn@kde.org|Torsten Rahn}}&lt;br /&gt;
{{FeatureInProgress|Marble|DGML2 Support|tackat@kde.org|Torsten Rahn}}&lt;br /&gt;
{{FeatureInProgress|Marble|KDE-Version settings dialog|tackat@kde.org|Torsten Rahn}}&lt;br /&gt;
{{FeatureInProgress|Marble|Port authors list from the Qt-About dialog to the KDE-About dialog|tackat@kde.org|Torsten Rahn}}&lt;br /&gt;
{{FeatureInProgress|Marble|Qt-Version settings dialog|tackat@kde.org|Torsten Rahn}}&lt;br /&gt;
{{FeatureInProgress|Marble|Improved KML support|tackat@kde.org|Torsten Rahn}}&lt;br /&gt;
{{FeatureInProgress|Marble|OpenStreetMap support using original OSM tiles|tackat@kde.org|Torsten Rahn}}&lt;br /&gt;
{{FeatureInProgress|Marble|Real Time Cloud-Cover|tackat@kde.org|David Roberts / Torsten Rahn}}&lt;br /&gt;
{{FeatureInProgress|Marble|Mercator Projection|inge@lysator.liu.se|Inge Wallin}}&lt;br /&gt;
{{FeatureInProgress|Marble|More generic projection support|inge@lysator.liu.se|Inge Wallin}}&lt;br /&gt;
{{FeatureInProgress|Marble|Usage of Marble in &lt;br /&gt;
non-widgets|inge@lysator.liu.se|Inge Wallin}}&lt;br /&gt;
{{FeatureTodo|Kig|Properties dialog for objects.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureTodo|Kig|Improve construction of bisect lines.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureTodo|Kig|Improve feedback when constructing objects.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureTodo|Kig|More geometric objects.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureTodo|Kig|Script objects as macros (to be reused more than once).|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureTodo|Kig|Improve the Cabri import filter.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureDone|KTurtle|Export canvas as image|piacentini@kde.org|Mauricio Piacentini}}&lt;br /&gt;
{{FeatureTodo|KTurtle|Optional rulers/grid for canvas units|piacentini@kde.org|Mauricio Piacentini}}&lt;br /&gt;
{{FeatureDone|KTurtle|Add command line|piacentini@kde.org|Mauricio Piacentini}}&lt;br /&gt;
{{FeatureDone|KTurtle|Add a color picker|nielsslot@gmail.com|Niels Slot}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdemultimedia =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureInProgress|Dragon Player|Make Dragon indipendent from Xine|ian.monroe@gmail.com|Ian Monroe}}&lt;br /&gt;
{{FeatureInProgress|Dragon Player|File Manager|ian.monroe@gmail.com|Ian Monroe}}&lt;br /&gt;
{{FeatureInProgress|Dragon Player|play media dialog|ian.monroe@gmail.com|Ian Monroe}}&lt;br /&gt;
{{FeatureInProgress|Dragon Player|slider changes|ian.monroe@gmail.com|Ian Monroe}}&lt;br /&gt;
{{FeatureInProgress|Dragon Player|show info while playing audio files|ian.monroe@gmail.com|Ian Monroe}}&lt;br /&gt;
{{FeatureTodo|JuK|Remove Qt/KDE3 support lib requirements|michael.pyne@kdemail.net|Michael Pyne}}&lt;br /&gt;
{{FeatureTodo|JuK|Allow setting covers directly from URLs supported by KIO - drag/drop already allows this however|michael.pyne@kdemail.net|Michael Pyne}}&lt;br /&gt;
{{FeatureTodo|JuK|Use XCOMPOSITE real transparency when available for the track announcement popup|michael.pyne@kdemail.net|Michael Pyne}}&lt;br /&gt;
{{FeatureTodo|JuK|Allow disabling crossfade|michael.pyne@kdemail.net|Michael Pyne}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdeaccessibility =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureTodo|KMagnifier|Refactor color menu, re-add invert, break current color blindness code into &amp;quot;daltonize&amp;quot; and &amp;quot;simulate&amp;quot;|mw_triad@users.sourceforge.net|Matthew Woehlke}}&lt;br /&gt;
{{FeatureTodo|KMagnifier|Add color-shift modes to help people with color blindness|mw_triad@users.sourceforge.net|Matthew Woehlke}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdegraphics =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureDone|KSnapshot|Add support for grabbing a single screen in multihead|rich@kde.org|Richard Moore}}&lt;br /&gt;
{{FeatureDone|KSnapshot|Increase jpeg image quality from 75% to 85%|rich@kde.org|Richard Moore}}&lt;br /&gt;
{{FeatureDone|KSnapshot|If we're saving the window decorations then record the window title and class in the image (if the format supports it) to play nice with indexers like strigi|rich@kde.org|Richard Moore}}&lt;br /&gt;
{{FeatureTodo|Okular|Sound annotations.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureTodo|Okular|Link annotations.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureTodo|Okular|Improve annotation support: for existing types (rubber stamps, line, note, etc), and for the way they are constructed and handled.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureTodo|Okular|Caret annotations.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureInProgress|Okular|Support for videos &amp;amp; movie annotations.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureTodo|Okular|Support .snp and .emf file formats|bradh@kde.org|Brad Hards}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdebase-runtime =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureInProgress|kio_bookmarks|A new konqueror home page displaying user bookmarks. See [[http://kde-apps.org/content/show.php?content=86516 description]]|xavier.vello@gmail.com|Xavier Vello}}&lt;br /&gt;
{{FeatureInProgress|kuiserver|KUiServer Goya port. General improvements for usability improvements|ereslibre@kde.org|Rafael Fernández López}}&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Shaforostoff</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Schedules/KDE4/4.2_Feature_Plan</id>
		<title>Schedules/KDE4/4.2 Feature Plan</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Schedules/KDE4/4.2_Feature_Plan"/>
				<updated>2008-09-20T14:05:21Z</updated>
		
		<summary type="html">&lt;p&gt;Shaforostoff: /* kdelibs */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This is a list of planned features for the 4.2 release.&lt;br /&gt;
&lt;br /&gt;
See also:&lt;br /&gt;
* [[Schedules/KDE4/4.2 Release Schedule]]&lt;br /&gt;
* [[Schedules/KDE4/4.1 Feature Plan]]&lt;br /&gt;
* [[Schedules/KDE4/Goals]]&lt;br /&gt;
&lt;br /&gt;
Legend:&lt;br /&gt;
* todo =&amp;gt; not started yet&lt;br /&gt;
* in-progress =&amp;gt; started, but not completed yet&lt;br /&gt;
* done =&amp;gt; completed&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
= Other =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureTodo|System Settings|add Administrator mode button|alediaferia@gmail.com|Alessandro Diaferia}}&lt;br /&gt;
{{FeatureDone|Eigen|Make Eigen 2 ready for KDE, and move it to kdesupport|jacob@math.jussieu.fr|Benoît Jacob}}&lt;br /&gt;
{{FeatureInProgress|Eigen|Port all Eigen-using code in KDE and KOffice to Eigen 2.0|jacob@math.jussieu.fr|Benoît Jacob}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdelibs =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureInProgress|kross|Extend QtScript integration.|mail@dipe.org|Sebastian Sauer}}&lt;br /&gt;
{{FeatureInProgress|KDEPrint|Reintroduce KDEPrint in some form, depending on what Qt4.4 delivers.|john@layt.net|john Layt}}&lt;br /&gt;
{{FeatureTodo|KDEPrint|Add framework for standard actions for 'Send to...' for e-mail, fax, etc by printing to PDF/PS.|john@layt.net|John Layt}}&lt;br /&gt;
{{FeatureTodo|KDEPrint|Migrate FilePrinter class from Okular to enable file printing for all apps via QPrinter, modify to utilise new Qt4.4 features.  To be discussed on k-c-d first.|john@layt.net|John Layt}}&lt;br /&gt;
{{FeatureTodo|KCalenderSystem|Add new calendar systems: Indian Civil (Saka), Ethiopean, Chinese, Pure Julian, Pure Gregorian. (Note, not all may live in kdelibs or be available as a global calendar system)|john@layt.net|John Layt}}&lt;br /&gt;
{{FeatureTodo|KLocale|Implement KLocale based methods to return weekend days and day of religious observance.  Currently KCalendarSystem provides dayOfPray(), but for Gregorian this is not correct in all locales where it is used.  Currently KDatePicker hardcodes Saturday and dayOfPray() as weekend days which may not be correct in all locales.  To be discussed first on k-c-d and with kdepim.|john@layt.net|John Layt}}&lt;br /&gt;
{{FeatureTodo|Phonon|add Port class for fine grained control over data flow between Phonon objects|kretz@kde.org|Matthias Kretz}}&lt;br /&gt;
{{FeatureInProgress|Phonon|make AbstractMediaStream/StreamInterface threadsafe|kretz@kde.org|Matthias Kretz}}&lt;br /&gt;
{{FeatureInProgress|Phonon|&amp;quot;low-level&amp;quot; PCM I/O with at least an ALSA implementation|kretz@kde.org|Matthias Kretz and Ian Monroe}}&lt;br /&gt;
{{FeatureInProgress|Phonon|VideoWidget snapshot function|kretz@kde.org|Matthias Kretz}}&lt;br /&gt;
{{FeatureInProgress|KConfig|API review and export KConfigBackend|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureInProgress|KConfig|Make KConfigSkeleton KConfigGroup aware|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureInProgress|KConfig|Make KConfigDialog work nicer with KConfigSkeleton + manually managed widgets|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureDone|KUrlNavigator|Provide an option to always show the full path in the breadcrumb mode.|peter.penz@gmx.at|Peter Penz}}&lt;br /&gt;
{{FeatureInProgress|Katepart|Make a Vi input mode for Katepart|ehamberg@gmail.com|Erlend Hamberg}}&lt;br /&gt;
{{FeatureTodo|KIO::Global|Make KDynamicJobTracker do the checking if the kuiserver service is registered or not, for full implementation of &amp;quot;Progress in the same window&amp;quot;|ereslibre@kde.org|Rafael Fernández López}}&lt;br /&gt;
{{FeatureTodo|KJS|Further performance improvements, in particular variable access (Blizzard stage 2), and calling convention (FrostByte stage 2)|maksim@kde.org|Maksim Orlovich}}&lt;br /&gt;
{{FeatureInProgress|KJS and KHTML|Support for transparent reindenting of standalone sources in debugger, debug info management improvements|maksim@kde.org|Maksim Orlovich}}&lt;br /&gt;
{{FeatureInProgress|KHTML|SVG support in KHTML (port from WebKit)|tsjoker@gmail.com|Vyacheslav Tokarev}}&lt;br /&gt;
{{FeatureInProgress|KHTML|Use of IDString (hashed strings) for local names, prefixes and namespaces in DOM core instead of document-related ids, in particular for better API compatibility with WebCore|tsjoker@gmail.com|Vyacheslav Tokarev}}&lt;br /&gt;
{{FeatureTodo|KHTML|Scriptable extension plug-ins|porten@kde.org|Harri}}&lt;br /&gt;
{{FeatureDone|kwallet|Move kwalletd to kdebase-runtime|dfaure@kde.org|David Faure}}&lt;br /&gt;
{{FeatureDone|i18n|proper filenames decoding for FAT mounting, in KUrls and content-disposition|shafff-at-ukr.net|Nick Shaforostoff}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdebase-workspace =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureTodo|Color KCM|Add 'smart setting' of extended colors|mw_triad@users.sourceforge.net|Matthew Woehlke}}&lt;br /&gt;
{{FeatureTodo|Color KCM|Add KDE3 scheme import|mw_triad@users.sourceforge.net|Matthew Woehlke}}&lt;br /&gt;
{{FeatureTodo|Color KCM|Query kwin for supported colors; add full set of kwin colors|mw_triad@users.sourceforge.net|Matthew Woehlke}}&lt;br /&gt;
{{FeatureTodo|KDEPrint|reintroduce KDEPrint Print Management tools, e.g. KCM, kprinter, kjobviewer, etc.  Depends upon progress of kdelibs side of KDEPrint and Qt4.4 feature set.|john@layt.net|john Layt}}&lt;br /&gt;
{{FeatureDone|Power Manager|import PowerDevil|drf@kdemod.ath.cx|Dario Freddi}}&lt;br /&gt;
|- border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; style=&amp;quot;text-align: center&amp;quot; |KRunner&lt;br /&gt;
{{FeatureInProgress|Krunner|Configuration options for blacklisting, user ranking, runner ranking, learning|mumismo@gmail.com|Jordi Polo}}&lt;br /&gt;
{{FeatureInProgress|Krunner|SearchMatch configuration|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Krunner|Simple learning|mumismo@gmail.com|Jordi Polo}}&lt;br /&gt;
{{FeatureTodo|Krunner|Simple GUI for above options|mumismo@gmail.com|Jordi Polo}}&lt;br /&gt;
{{FeatureTodo|Krunner|Runners able to share parsing|mumismo@gmail.com|Jordi Polo}}&lt;br /&gt;
{{FeatureTodo|Krunner|Noun-Verb support|ryan.bitanga@gmail.com|Ryan P. Bitanga}}&lt;br /&gt;
{{FeatureTodo|Krunner|Implement Nuno's UI polishings|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Krunner|Runtime syntax documentation|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Krunner|Runner configuration|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Krunner|Search set paging|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|KRunner|runner for the plasma dbus interface|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureInProgress|KRunner|Konqueror history runner|sebas@kde.org|Sebastian Kügler}}&lt;br /&gt;
{{FeatureInProgress|KRunner|Kate sessions runner|sebas@kde.org|Sebastian Kügler}}&lt;br /&gt;
{{FeatureInProgress|KRunner|Recent Documents runner|sebas@kde.org|Sebastian Kügler}}&lt;br /&gt;
|- border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; style=&amp;quot;text-align: center&amp;quot; |Plasma - Priority Features&lt;br /&gt;
{{FeatureInProgress|Plasma|Welcome plasmoid|aseigo@kde.org|Aaron Seigo}}{{FeatureInProgress|Plasma|JOLIE Integration|ervin@kde.org|Kevin Ottens}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Notification plasmoid|dimsuzkde@gmail.com|Dmitry Suzdalev}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Kuiserver plasmoid|r.scheepmaker@student.utwente.nl|Rob Scheepmaker}}&lt;br /&gt;
{{FeatureTodo|KWin|Make it possible to focus plasma panels|chanika@gmail.com|Chani}}&lt;br /&gt;
{{FeatureTodo|Plasma|panel-&amp;gt;desktop dragging|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|Expand cashew to full action bar when zoomed out|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Plasmagik packaging (and package classes)|riccardo@kde.org|Riccardo Iaconelli}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Networkmanager Plasmoid and DataEngine|cblauvelt@gmail.com|Christopher Blauvelt}}&lt;br /&gt;
{{FeatureInProgress|Plasma|New ECMA Script Scriptengines|richmoore44@gmail.com|Richard Moore}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Extenders|r.scheepmaker@student.utwente.nl|Rob Scheepmaker}}&lt;br /&gt;
{{FeatureTodo|Plasma|Wallpaper plugins|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|Separate Desktop Settings from DesktopContainment|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|Script Security Framework|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Python support|simon@simonzone.com|Simon Edwards}}&lt;br /&gt;
|- border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; style=&amp;quot;text-align: center&amp;quot; |Plasma&lt;br /&gt;
{{FeatureDone|Plasma|Plasma Popup Tips|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureDone|Plasma|Collapsing Applet convenience class|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
&lt;br /&gt;
{{FeatureInProgress|Plasma|Taskbar grouping|hrigi_1@hotmail.com|Christian Mollekopf}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Weather plasmoid|shawn.starr@rogers.com|Shawn Starr}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Small Form Factors|m.kruisselbrink@student.tue.nl|Marijn Kruisselbrink}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Plasma On Screensaver|chanika@gmail.com|Chani Armitage}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Website update|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Grid applet|sebas@kde.org|Sebastian Kügler}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Techbase Tutorials|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|Context menu plugins|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|Add New Widgets: Pluggable widget browser|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|Activity&amp;lt;-&amp;gt;Virtual Desktop Affinity|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|Optional Per-Virtual Desktop DesktopView|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|Make non-SVG painting in Plasma low-color and non-anim friendly|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|Runtime DataEngine documentation (sources, usage, etc)|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Panel Autohide|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|Keyboard Shortcut Config UI|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|Systray++ Spec|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|Save icon positioning in folderview|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|physics-based animator|riccardo@kde.org|Riccardo Iaconelli}}&lt;br /&gt;
{{FeatureTodo|Plasma|New wallpapers|riccardo@kde.org|Riccardo Iaconelli}}&lt;br /&gt;
{{FeatureTodo|Plasma|Preserve wallpaper choice by copying user paper to home dir|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|New way of handling wallpapers and different sizes (package format, and so on...)|riccardo@kde.org|Riccardo Iaconelli}}&lt;br /&gt;
{{FeatureTodo|Plasma|Top-level windows plasmoids|riccardo@kde.org|Riccardo Iaconelli}}&lt;br /&gt;
{{FeatureTodo|Plasma|drop indicator in panel|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|improve usability of appletbrowser delete button|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|adding containments from the appletbrowser (and remove the &amp;quot;add panel&amp;quot; from DefaultDeskrop)|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|Expand cashew to cover the containment when fully zoomed out|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|highlight the applet with active keyboard shortcuts|chanika@gmail.com|Chani}}&lt;br /&gt;
{{FeatureTodo|Plasma|dbus interface|chanika@gmail.com|Chani}}&lt;br /&gt;
{{FeatureInProgress|Plasma|make the panel controller a bit more usable|notmart@gmail.com|Marco Martin}}&lt;br /&gt;
{{FeatureInProgress|Plasma|nicely draw the desktop toolbox when it's moved because of a panel|notmart@gmail.com|Marco Martin}}&lt;br /&gt;
{{FeatureDone|Plasma|theme Plasma::PushButton with svg|notmart@gmail.com|Marco Martin}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Tabbar widget derived from QTabBar and themed with svg|notmart@gmail.com|Marco Martin}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Complete the panel size sliders feature: an applet can ask the panel to resize|notmart@gmail.com|Marco Martin}}&lt;br /&gt;
{{FeatureInProgress|Plasma|New theming capabilities by expanding the lover level theming classes (Theme and PanelSvg)|notmart@gmail.com|Marco Martin}}&lt;br /&gt;
{{FeatureDone|Plasma|Wallpaper plugin: Mandelbrot fractal explorer|jacob@math.jussieu.fr|Benoît Jacob}}&lt;br /&gt;
|- border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; style=&amp;quot;text-align: center&amp;quot; |KWin - Core&lt;br /&gt;
{{FeatureDone|KWin|New window snapping zones; screen center and window corners|lmurray@undefinedfire.com|Lucas Murray}}&lt;br /&gt;
{{FeatureDone|KWin|Move maximized windows between Xinerama screens|lmurray@undefinedfire.com|Lucas Murray}}&lt;br /&gt;
{{FeatureInProgress|KWin|Basic window tiling|lmurray@undefinedfire.com|Lucas Murray}}&lt;br /&gt;
{{FeatureTodo|KWin|Compositing decoration API additions|lmurray@undefinedfire.com|Lucas Murray}}&lt;br /&gt;
|- border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; style=&amp;quot;text-align: center&amp;quot; |KWin - Desktop Effects&lt;br /&gt;
{{FeatureInProgress|KWin|Compositing self-check|l.lunak@kde.org|Luboš Luňák}}&lt;br /&gt;
{{FeatureDone|KWin|Global animation speed setting|l.lunak@kde.org|Luboš Luňák}}&lt;br /&gt;
{{FeatureInProgress|KWin|Motion dynamics|lmurray@undefinedfire.com|Lucas Murray}}&lt;br /&gt;
{{FeatureTodo|KWin|New shadow handling by decorations|lmurray@undefinedfire.com|Lucas Murray}}&lt;br /&gt;
{{FeatureDone|KWin|Improved UI for selecting window/desktop switcher|ubuntu@martin-graesslin.com|Martin Gräßlin}}&lt;br /&gt;
{{FeatureTodo|KWin|UI for assigning effects to screen edges|ubuntu@martin-graesslin.com|Martin Gräßlin}}&lt;br /&gt;
{{FeatureDone|KWin|Cube/Cylinder/Sphere Effect|ubuntu@martin-graesslin.com|Martin Gräßlin}}&lt;br /&gt;
{{FeatureDone|KWin|Magic Lamp minimize Effect|ubuntu@martin-graesslin.com|Martin Gräßlin}}&lt;br /&gt;
{{FeatureInProgress|KWin|Animation in BoxSwitch Effect|ubuntu@martin-graesslin.com|Martin Gräßlin}}&lt;br /&gt;
{{FeatureTodo|KWin|Mouse interaction for CoverSwitch Effect|ubuntu@martin-graesslin.com|Martin Gräßlin}}&lt;br /&gt;
{{FeatureTodo|KWin|Additional thumbnails for CoverSwitch Effect|ubuntu@martin-graesslin.com|Martin Gräßlin}}&lt;br /&gt;
{{FeatureTodo|KWin|Improved Snow Effect; different sizes, better randomness and different directions|ubuntu@martin-graesslin.com|Martin Gräßlin}}&lt;br /&gt;
{{FeatureDone|KWin|Improved desktop grid|lmurray@undefinedfire.com|Lucas Murray}}&lt;br /&gt;
{{FeatureDone|KWin|New present window layout modes|lmurray@undefinedfire.com|Lucas Murray}}&lt;br /&gt;
{{FeatureDone|KWin|Invert only selected windows|lmurray@undefinedfire.com|Lucas Murray}}&lt;br /&gt;
{{FeatureInProgress|KWin|Improved mouse mark/scribble effect|lmurray@undefinedfire.com|Lucas Murray}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdepimlibs =&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 !! Project !! Description !! Contact&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdenetwork =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureInProgress|Kopete|MSNP15 implementation for MSN|mattr@kde.org|Matt Rogers}}&lt;br /&gt;
{{FeatureInProgress|Kopete|UPnp Support|mattr@kde.org|Matt Rogers}}&lt;br /&gt;
{{FeatureInProgress|Kopete|Updated contact list interface (uses Qt 4 rather than Qt 3)|mattr@kde.org|Matt Rogers}}&lt;br /&gt;
{{FeatureTodo|Kopete|Update Kopete to better support Decibel|kopete-devel@kde.org|Kopete Developers}}&lt;br /&gt;
{{FeatureInProgress|Kopete|Contacts plasmoid|earthwings@gentoo.org|Dennis Nienhüser}}&lt;br /&gt;
{{FeatureDone|Kopete|Move file transfer request into chat window|kedgedev@centrum.cz|Roman Jarosz}}&lt;br /&gt;
{{FeatureInProgress|Kopete|Message delivery notifications|kedgedev@centrum.cz|Roman Jarosz}}&lt;br /&gt;
{{FeatureTodo|Kopete|Improve file transfer progress dialog|kedgedev@centrum.cz|Roman Jarosz}}&lt;br /&gt;
{{FeatureInProgress|KGet|MultiSource-Downloading|l.appelhans@gmx.de|Lukas Appelhans}}&lt;br /&gt;
{{FeatureInProgress|KGet|Support mms://-protocol, see https://launchpad.net/libmms|l.appelhans@gmx.de|Lukas Appelhans}}&lt;br /&gt;
{{FeatureTodo|KGet|MLDonkey-Plugin based on libkmldonkey|l.appelhans@gmx.de|Lukas Appelhans}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Network Manager Applet|cblauvelt@gmail.com|Christopher Blauvelt}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdepim =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureInProgress|Akregator|Support for syncing the feed list with Google Reader |osterfeld@kde.org|Frank Osterfeld}}&lt;br /&gt;
{{FeatureInProgress|KAlarm|Improve alarm edit and preferences dialog layouts|djarvie@kde.org|David Jarvie}}&lt;br /&gt;
{{FeatureInProgress|KAlarm|Add holidays support|djarvie@kde.org|David Jarvie}}&lt;br /&gt;
{{FeatureInProgress|Kleopatra|OpenPGP support|marc@kdab.net|Marc Mutz (Gpg4win)}}&lt;br /&gt;
{{FeatureInProgress|KNotes|Zeroconf support for sending notes on LAN|qbast@go2.pl|Jakub Stachowski}}&lt;br /&gt;
{{FeatureInProgress|Kontact|New Planner summary; combines Appointment+To-do+SpecialDates into 1 pretty summary|winter@kde.org|Allen Winter}}&lt;br /&gt;
{{FeatureInProgress|KPilot|Finish Keyring conduit, base conduit code and test cases, category syncing|jkasper@kde.org|Jason 'vanRijn' Kasper}}&lt;br /&gt;
{{FeatureTodo|Akregator|Basic support for enclosures (Displaying links, mimetype and size)|osterfeld@kde.org|Frank Osterfeld}}&lt;br /&gt;
{{FeatureTodo|[http://kblogger.pwsp.net KBlogger]|KBlogger, a blogging application| christian_weilbach@.web.de|Christian Weilbach}}&lt;br /&gt;
{{FeatureTodo|Kleopatra|Konqueror and Dolphin Kleopatra plugins|marc@kdab.net|Marc Mutz (Gpg4win)}}&lt;br /&gt;
{{FeatureTodo|KMail|Aggregated attachment view in the mail header area of the reader window|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureTodo|Kontact|Support for Kontact wide profiles|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureTodo|KOrganizer|Drag and drop in the free-busy view|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureTodo|KOrganizer|Support for comments in replies to invitations|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureTodo|KOrganizer|Support for extended free-busy lists|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureTodo|KPilot|Port old conduits to new base conduit architecture and KDE4/Qt4|jkasper@kde.org|Jason 'vanRijn' Kasper}}&lt;br /&gt;
{{FeatureTodo|KBlogger|Port to use KRichTextEdit (Or KMEditor)|steveire@gmail.com|Stephen Kelly}}&lt;br /&gt;
{{FeatureTodo|KNode|Port to use KRichTextEdit (Or KMEditor)|steveire@gmail.com|Stephen Kelly}}&lt;br /&gt;
&lt;br /&gt;
{{FeatureTodo|Kjots| Import notes from KNotes as KJots pages. |steveire@gmail.com|Stephen Kelly}}&lt;br /&gt;
{{FeatureTodo|Kjots| Email KJots pages using default mail client ({{bug|124509}}. |steveire@gmail.com|Stephen Kelly}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdeutils =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureTodo|Okteta|add Kate-like search tool|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|refactor KByteArrayView|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|add support for memory mapping of files|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|parameter dialog for &amp;quot;Copy as...&amp;quot;|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|add support for jobs like io, printing, string search or filter|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureInProgress|Ark|Implement proper drag/drop between Ark/dolphin|harald((at))stud(dot)ntnu.no|Harald Hvaal}}&lt;br /&gt;
{{FeatureInProgress|Ark|Make the service menu work (possibly doing it as a KonqPopupPlugin|harald((at))stud(dot)ntnu.no|Harald Hvaal}}&lt;br /&gt;
{{FeatureInProgress|Ark|Proper password support|harald((at))stud(dot)ntnu.no|Harald Hvaal}}&lt;br /&gt;
{{FeatureTodo|Ark|Support for custom options from the compression interface (eg. a slider for selecting compression level for rar files)|harald((at))stud(dot)ntnu.no|Harald Hvaal}}&lt;br /&gt;
{{FeatureTodo|Ark|Add an options dialog (maybe)|harald((at))stud(dot)ntnu.no|Harald Hvaal}}&lt;br /&gt;
{{FeatureInProgress|kwalletmanager|Move kwalletmanager to the Model/View architecture and redesign the UI|lemma@confuego.org|Michael Leupold}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdebindings =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureDone|krosspython and krossruby|Support custom types via handlers|mail@dipe.org|Sebastian Sauer}}&lt;br /&gt;
{{FeatureDone|krosspython and krossruby|Support QList&amp;lt;CustomType*&amp;gt; constructs|mail@dipe.org|Sebastian Sauer}}&lt;br /&gt;
{{FeatureInProgress|Smoke|Wrap some more APIs (at least Akanodi for all languages and Plasma for C#)|kde-bindings@kde.org|KDE-bindings developers}}&lt;br /&gt;
{{FeatureInProgress|PyKDE|KCM support and other plugins|simon@simonzone.com|Simon Edwards}}&lt;br /&gt;
{{FeatureTodo|krossjava|Integrate into e.g. SuperKaramba and fix issues that show up.|mail@dipe.org|Sebastian Sauer}}&lt;br /&gt;
{{FeatureTodo|krossjava|Documentation++|mail@dipe.org|Sebastian Sauer}}&lt;br /&gt;
{{FeatureTodo|krossfalcon|Unittests++|mail@dipe.org|Sebastian Sauer}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdegames =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureInProgress|libkdegames|New highscore management system|milliams|Matt Williams}}&lt;br /&gt;
{{FeatureDone|kdiamond|Drag jewels|majewsky@gmx.net|Stefan Majewsky}}&lt;br /&gt;
{{FeatureTodo|kdiamond|Optional OpenGL rendering|majewsky@gmx.net|Stefan Majewsky}}&lt;br /&gt;
{{FeatureDone|ksirk|Map scrolling arrows|kleag@free.fr|Gaël de Chalendar}}&lt;br /&gt;
{{FeatureDone|ksirk|KHotNewStuff skins|kleag@free.fr|Gaël de Chalendar}}&lt;br /&gt;
{{FeatureInProgress|ksirk|Jabber based net game finding|kleag@free.fr|Gaël de Chalendar}}&lt;br /&gt;
{{FeatureDone|ksirk|Use only names in skins instead of numeric ids|kleag@free.fr|Gaël de Chalendar}}&lt;br /&gt;
{{FeatureDone|ksirk|Skins editor|kleag@free.fr|Gaël de Chalendar}}&lt;br /&gt;
{{FeatureInProgress|ktron|Port and remake the KTron game for KDE 4.2|legolas@legolasweb.nl|Stas Verberkt}}&lt;br /&gt;
{{FeatureTodo|KNetWalk|Support for custom and non-square board sizes|fela.kde@gmail.com|Fela Winkelmolen}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdesdk =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureDone|Kate|Port and reenable the Snippets plugin.|jpetso@gmx.at|Jakob Petsovits}}&lt;br /&gt;
{{FeatureDone|perldoc KIOSlave|Add KIOSlave to allow reading Perldoc documentation.|michael.pyne&amp;amp;#64;kdemail&amp;amp;#46;net|Michael Pyne}}&lt;br /&gt;
{{FeatureInProgress|Lokalize|XLIFF support|shafff-at-ukr.net|Nick Shaforostoff}}&lt;br /&gt;
{{FeatureInProgress|Lokalize|various Translation Memory enhancements|shafff-at-ukr.net|Nick Shaforostoff}}&lt;br /&gt;
{{FeatureInProgress|Lokalize|wrap all windows belonging to one project into one MDI window|shafff-at-ukr.net|Nick Shaforostoff}}&lt;br /&gt;
{{FeatureTodo|Lokalize|Kross-based scripting|shafff-at-ukr.net|Nick Shaforostoff}}&lt;br /&gt;
{{FeatureTodo|Lokalize|QA: glossary checklists|shafff-at-ukr.net|Nick Shaforostoff}}&lt;br /&gt;
{{FeatureTodo|KAppTemplate|Add DBUS support in templates|annma@kde.org|Anne-Marie Mahfouf}}&lt;br /&gt;
{{FeatureDone|Umbrello|Port code generation wizard to QWizard and replace all q3 widgets|andi.fischer@hispeed.ch|Andi Fischer}}&lt;br /&gt;
{{FeatureInProgress|Umbrello|Replace all q3 widgets in the refactoring assistant|andi.fischer@hispeed.ch|Andi Fischer}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdeedu =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureInProgress|KEduca|Rewrite of the classic test writing/taking application|matt@milliams.com|Matt Williams}}&lt;br /&gt;
{{FeatureTodo|KLettres|Number support|annma@kde.org|Anne-Marie Mahfouf}}&lt;br /&gt;
{{FeatureTodo|KLettres|Theme manager|annma@kde.org|Anne-Marie Mahfouf}}&lt;br /&gt;
{{FeatureInProgress|KHangMan|Add a Open File action|annma@kde.org|Anne-Marie Mahfouf}}&lt;br /&gt;
{{FeatureTodo|KHangMan|Integrate an editor|annma@kde.org|Anne-Marie Mahfouf}}&lt;br /&gt;
{{FeatureTodo|KHangMan|Plasmoid|annma@kde.org|Anne-Marie Mahfouf}}&lt;br /&gt;
{{FeatureTodo|KHangMan|Theme manager|annma@kde.org|Anne-Marie Mahfouf}}&lt;br /&gt;
{{FeatureTodo|KLettres|Visual indicator when letter is wrong|annma@kde.org|Anne-Marie Mahfouf}}&lt;br /&gt;
{{FeatureTodo|Kalzium|Port Kalzium's periodic table to use new QGraphicsView.|marcus@cryos.org|Marcus D. Hanwell}}&lt;br /&gt;
{{FeatureInProgress|Kalzium|Plasmoid to access Kalzium database|cniehaus@kde.org|Carsten Niehaus}}&lt;br /&gt;
{{FeatureTodo|Step|Improve GUI for creating softbody|ksvladimir@gmail.com|Vladimir Kuznetsov}}&lt;br /&gt;
{{FeatureTodo|Step|Use common constraints handling code for collisions|ksvladimir@gmail.com|Vladimir Kuznetsov}}&lt;br /&gt;
{{FeatureInProgress|KAlgebra|New parser using QLALR|aleixpol@gmail.com|Aleix Pol}}&lt;br /&gt;
{{FeatureInProgress|Parley|Declensions|frederik.gladhorn@kdemail.net|Frederik Gladhorn}}&lt;br /&gt;
{{FeatureInProgress|KStars|Display millions of stars|akarshsimha@gmail.com|Akarsh Simha}}&lt;br /&gt;
{{FeatureInProgress|KStars|Tool to predict Conjunctions|akarshsimha@gmail.com|Akarsh Simha}}&lt;br /&gt;
{{FeatureInProgress|KStars|Earth Satellites|kstars@30doradus.org|Jason Harris}}&lt;br /&gt;
{{FeatureInProgress|KStars|Sky Calendar Tool|kstars@30doradus.org|Jason Harris}}&lt;br /&gt;
{{FeatureInProgress|KStars|Include HD Catalog Numbers (in search, in display)|akarshsimha@gmail.com|Akarsh Simha}}&lt;br /&gt;
{{FeatureTodo|KStars|Marble widget for Geolocation tool|mboquien@free.fr|Médéric Boquien}}&lt;br /&gt;
{{FeatureTodo|KStars|Better printed star charts|kstars@30doradus.org|Jason Harris}}&lt;br /&gt;
{{FeatureTodo|KStars|Better rendering of comets/asteroids|kstars@30doradus.org|Jason Harris}}&lt;br /&gt;
{{FeatureTodo|KStars|Texture mapping of the skymap???|kstars@30doradus.org|Jason Harris}}&lt;br /&gt;
{{FeatureTodo|KStars|Improve Observing List Wizard|akarshsimha@gmail.com|Akarsh Simha}}&lt;br /&gt;
{{FeatureTodo|KStars|Display Comet Magnitudes whenever possible|akarshsimha@gmail.com|Akarsh Simha}}&lt;br /&gt;
{{FeatureTodo|KStars|Tool to suggest star-hopping techniques???|akarshsimha@gmail.com|Akarsh Simha}}&lt;br /&gt;
{{FeatureTodo|KStars|Extend conjunction tool to have one object unspecified, but have a genre of objects specified instead|akarshsimha@gmail.com|Akarsh Simha}}&lt;br /&gt;
{{FeatureTodo|Marble|Export map to MxN pixel bitmap|inge@lysator.liu.se|Inge Wallin}}&lt;br /&gt;
{{FeatureTodo|Marble|Support for MarbleWidget::setEnabled( bool )|inge@lysator.liu.se|Inge Wallin}}&lt;br /&gt;
{{FeatureTodo|Marble|Map Contents translation|tackat@kde.org|Torsten Rahn}}&lt;br /&gt;
{{FeatureInProgress|Marble|Layer Management Class|rahn@kde.org|Torsten Rahn}}&lt;br /&gt;
{{FeatureInProgress|Marble|Plugin architecture for map layers|rahn@kde.org|Torsten Rahn}}&lt;br /&gt;
{{FeatureInProgress|Marble|DGML2 Support|tackat@kde.org|Torsten Rahn}}&lt;br /&gt;
{{FeatureInProgress|Marble|KDE-Version settings dialog|tackat@kde.org|Torsten Rahn}}&lt;br /&gt;
{{FeatureInProgress|Marble|Port authors list from the Qt-About dialog to the KDE-About dialog|tackat@kde.org|Torsten Rahn}}&lt;br /&gt;
{{FeatureInProgress|Marble|Qt-Version settings dialog|tackat@kde.org|Torsten Rahn}}&lt;br /&gt;
{{FeatureInProgress|Marble|Improved KML support|tackat@kde.org|Torsten Rahn}}&lt;br /&gt;
{{FeatureInProgress|Marble|OpenStreetMap support using original OSM tiles|tackat@kde.org|Torsten Rahn}}&lt;br /&gt;
{{FeatureInProgress|Marble|Real Time Cloud-Cover|tackat@kde.org|David Roberts / Torsten Rahn}}&lt;br /&gt;
{{FeatureInProgress|Marble|Mercator Projection|inge@lysator.liu.se|Inge Wallin}}&lt;br /&gt;
{{FeatureInProgress|Marble|More generic projection support|inge@lysator.liu.se|Inge Wallin}}&lt;br /&gt;
{{FeatureInProgress|Marble|Usage of Marble in &lt;br /&gt;
non-widgets|inge@lysator.liu.se|Inge Wallin}}&lt;br /&gt;
{{FeatureTodo|Kig|Properties dialog for objects.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureTodo|Kig|Improve construction of bisect lines.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureTodo|Kig|Improve feedback when constructing objects.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureTodo|Kig|More geometric objects.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureTodo|Kig|Script objects as macros (to be reused more than once).|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureTodo|Kig|Improve the Cabri import filter.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureDone|KTurtle|Export canvas as image|piacentini@kde.org|Mauricio Piacentini}}&lt;br /&gt;
{{FeatureTodo|KTurtle|Optional rulers/grid for canvas units|piacentini@kde.org|Mauricio Piacentini}}&lt;br /&gt;
{{FeatureDone|KTurtle|Add command line|piacentini@kde.org|Mauricio Piacentini}}&lt;br /&gt;
{{FeatureDone|KTurtle|Add a color picker|nielsslot@gmail.com|Niels Slot}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdemultimedia =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureInProgress|Dragon Player|Make Dragon indipendent from Xine|ian.monroe@gmail.com|Ian Monroe}}&lt;br /&gt;
{{FeatureInProgress|Dragon Player|File Manager|ian.monroe@gmail.com|Ian Monroe}}&lt;br /&gt;
{{FeatureInProgress|Dragon Player|play media dialog|ian.monroe@gmail.com|Ian Monroe}}&lt;br /&gt;
{{FeatureInProgress|Dragon Player|slider changes|ian.monroe@gmail.com|Ian Monroe}}&lt;br /&gt;
{{FeatureInProgress|Dragon Player|show info while playing audio files|ian.monroe@gmail.com|Ian Monroe}}&lt;br /&gt;
{{FeatureTodo|JuK|Remove Qt/KDE3 support lib requirements|michael.pyne@kdemail.net|Michael Pyne}}&lt;br /&gt;
{{FeatureTodo|JuK|Allow setting covers directly from URLs supported by KIO - drag/drop already allows this however|michael.pyne@kdemail.net|Michael Pyne}}&lt;br /&gt;
{{FeatureTodo|JuK|Use XCOMPOSITE real transparency when available for the track announcement popup|michael.pyne@kdemail.net|Michael Pyne}}&lt;br /&gt;
{{FeatureTodo|JuK|Allow disabling crossfade|michael.pyne@kdemail.net|Michael Pyne}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdeaccessibility =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureTodo|KMagnifier|Refactor color menu, re-add invert, break current color blindness code into &amp;quot;daltonize&amp;quot; and &amp;quot;simulate&amp;quot;|mw_triad@users.sourceforge.net|Matthew Woehlke}}&lt;br /&gt;
{{FeatureTodo|KMagnifier|Add color-shift modes to help people with color blindness|mw_triad@users.sourceforge.net|Matthew Woehlke}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdegraphics =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureDone|KSnapshot|Add support for grabbing a single screen in multihead|rich@kde.org|Richard Moore}}&lt;br /&gt;
{{FeatureDone|KSnapshot|Increase jpeg image quality from 75% to 85%|rich@kde.org|Richard Moore}}&lt;br /&gt;
{{FeatureDone|KSnapshot|If we're saving the window decorations then record the window title and class in the image (if the format supports it) to play nice with indexers like strigi|rich@kde.org|Richard Moore}}&lt;br /&gt;
{{FeatureTodo|Okular|Sound annotations.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureTodo|Okular|Link annotations.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureTodo|Okular|Improve annotation support: for existing types (rubber stamps, line, note, etc), and for the way they are constructed and handled.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureTodo|Okular|Caret annotations.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureInProgress|Okular|Support for videos &amp;amp; movie annotations.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureTodo|Okular|Support .snp and .emf file formats|bradh@kde.org|Brad Hards}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdebase-runtime =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureInProgress|kio_bookmarks|A new konqueror home page displaying user bookmarks. See [[http://kde-apps.org/content/show.php?content=86516 description]]|xavier.vello@gmail.com|Xavier Vello}}&lt;br /&gt;
{{FeatureInProgress|kuiserver|KUiServer Goya port. General improvements for usability improvements|ereslibre@kde.org|Rafael Fernández López}}&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Shaforostoff</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Schedules/KDE4/4.2_Feature_Plan</id>
		<title>Schedules/KDE4/4.2 Feature Plan</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Schedules/KDE4/4.2_Feature_Plan"/>
				<updated>2008-09-20T14:04:32Z</updated>
		
		<summary type="html">&lt;p&gt;Shaforostoff: /* kdelibs */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This is a list of planned features for the 4.2 release.&lt;br /&gt;
&lt;br /&gt;
See also:&lt;br /&gt;
* [[Schedules/KDE4/4.2 Release Schedule]]&lt;br /&gt;
* [[Schedules/KDE4/4.1 Feature Plan]]&lt;br /&gt;
* [[Schedules/KDE4/Goals]]&lt;br /&gt;
&lt;br /&gt;
Legend:&lt;br /&gt;
* todo =&amp;gt; not started yet&lt;br /&gt;
* in-progress =&amp;gt; started, but not completed yet&lt;br /&gt;
* done =&amp;gt; completed&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
= Other =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureTodo|System Settings|add Administrator mode button|alediaferia@gmail.com|Alessandro Diaferia}}&lt;br /&gt;
{{FeatureDone|Eigen|Make Eigen 2 ready for KDE, and move it to kdesupport|jacob@math.jussieu.fr|Benoît Jacob}}&lt;br /&gt;
{{FeatureInProgress|Eigen|Port all Eigen-using code in KDE and KOffice to Eigen 2.0|jacob@math.jussieu.fr|Benoît Jacob}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdelibs =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureInProgress|kross|Extend QtScript integration.|mail@dipe.org|Sebastian Sauer}}&lt;br /&gt;
{{FeatureInProgress|KDEPrint|Reintroduce KDEPrint in some form, depending on what Qt4.4 delivers.|john@layt.net|john Layt}}&lt;br /&gt;
{{FeatureTodo|KDEPrint|Add framework for standard actions for 'Send to...' for e-mail, fax, etc by printing to PDF/PS.|john@layt.net|John Layt}}&lt;br /&gt;
{{FeatureTodo|KDEPrint|Migrate FilePrinter class from Okular to enable file printing for all apps via QPrinter, modify to utilise new Qt4.4 features.  To be discussed on k-c-d first.|john@layt.net|John Layt}}&lt;br /&gt;
{{FeatureTodo|KCalenderSystem|Add new calendar systems: Indian Civil (Saka), Ethiopean, Chinese, Pure Julian, Pure Gregorian. (Note, not all may live in kdelibs or be available as a global calendar system)|john@layt.net|John Layt}}&lt;br /&gt;
{{FeatureTodo|KLocale|Implement KLocale based methods to return weekend days and day of religious observance.  Currently KCalendarSystem provides dayOfPray(), but for Gregorian this is not correct in all locales where it is used.  Currently KDatePicker hardcodes Saturday and dayOfPray() as weekend days which may not be correct in all locales.  To be discussed first on k-c-d and with kdepim.|john@layt.net|John Layt}}&lt;br /&gt;
{{FeatureTodo|Phonon|add Port class for fine grained control over data flow between Phonon objects|kretz@kde.org|Matthias Kretz}}&lt;br /&gt;
{{FeatureInProgress|Phonon|make AbstractMediaStream/StreamInterface threadsafe|kretz@kde.org|Matthias Kretz}}&lt;br /&gt;
{{FeatureInProgress|Phonon|&amp;quot;low-level&amp;quot; PCM I/O with at least an ALSA implementation|kretz@kde.org|Matthias Kretz and Ian Monroe}}&lt;br /&gt;
{{FeatureInProgress|Phonon|VideoWidget snapshot function|kretz@kde.org|Matthias Kretz}}&lt;br /&gt;
{{FeatureInProgress|KConfig|API review and export KConfigBackend|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureInProgress|KConfig|Make KConfigSkeleton KConfigGroup aware|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureInProgress|KConfig|Make KConfigDialog work nicer with KConfigSkeleton + manually managed widgets|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureDone|KUrlNavigator|Provide an option to always show the full path in the breadcrumb mode.|peter.penz@gmx.at|Peter Penz}}&lt;br /&gt;
{{FeatureInProgress|Katepart|Make a Vi input mode for Katepart|ehamberg@gmail.com|Erlend Hamberg}}&lt;br /&gt;
{{FeatureTodo|KIO::Global|Make KDynamicJobTracker do the checking if the kuiserver service is registered or not, for full implementation of &amp;quot;Progress in the same window&amp;quot;|ereslibre@kde.org|Rafael Fernández López}}&lt;br /&gt;
{{FeatureTodo|KJS|Further performance improvements, in particular variable access (Blizzard stage 2), and calling convention (FrostByte stage 2)|maksim@kde.org|Maksim Orlovich}}&lt;br /&gt;
{{FeatureInProgress|KJS and KHTML|Support for transparent reindenting of standalone sources in debugger, debug info management improvements|maksim@kde.org|Maksim Orlovich}}&lt;br /&gt;
{{FeatureInProgress|KHTML|SVG support in KHTML (port from WebKit)|tsjoker@gmail.com|Vyacheslav Tokarev}}&lt;br /&gt;
{{FeatureInProgress|KHTML|Use of IDString (hashed strings) for local names, prefixes and namespaces in DOM core instead of document-related ids, in particular for better API compatibility with WebCore|tsjoker@gmail.com|Vyacheslav Tokarev}}&lt;br /&gt;
{{FeatureTodo|KHTML|Scriptable extension plug-ins|porten@kde.org|Harri}}&lt;br /&gt;
{{FeatureDone|kwallet|Move kwalletd to kdebase-runtime|dfaure@kde.org|David Faure}}&lt;br /&gt;
{{FeatureDone|i18n|FAT mounting with proper filenames decoding, proper filenames decoding in KUrls and content-disposition|shafff-at-ukr.net|Nick Shaforostoff}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdebase-workspace =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureTodo|Color KCM|Add 'smart setting' of extended colors|mw_triad@users.sourceforge.net|Matthew Woehlke}}&lt;br /&gt;
{{FeatureTodo|Color KCM|Add KDE3 scheme import|mw_triad@users.sourceforge.net|Matthew Woehlke}}&lt;br /&gt;
{{FeatureTodo|Color KCM|Query kwin for supported colors; add full set of kwin colors|mw_triad@users.sourceforge.net|Matthew Woehlke}}&lt;br /&gt;
{{FeatureTodo|KDEPrint|reintroduce KDEPrint Print Management tools, e.g. KCM, kprinter, kjobviewer, etc.  Depends upon progress of kdelibs side of KDEPrint and Qt4.4 feature set.|john@layt.net|john Layt}}&lt;br /&gt;
{{FeatureDone|Power Manager|import PowerDevil|drf@kdemod.ath.cx|Dario Freddi}}&lt;br /&gt;
|- border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; style=&amp;quot;text-align: center&amp;quot; |KRunner&lt;br /&gt;
{{FeatureInProgress|Krunner|Configuration options for blacklisting, user ranking, runner ranking, learning|mumismo@gmail.com|Jordi Polo}}&lt;br /&gt;
{{FeatureInProgress|Krunner|SearchMatch configuration|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Krunner|Simple learning|mumismo@gmail.com|Jordi Polo}}&lt;br /&gt;
{{FeatureTodo|Krunner|Simple GUI for above options|mumismo@gmail.com|Jordi Polo}}&lt;br /&gt;
{{FeatureTodo|Krunner|Runners able to share parsing|mumismo@gmail.com|Jordi Polo}}&lt;br /&gt;
{{FeatureTodo|Krunner|Noun-Verb support|ryan.bitanga@gmail.com|Ryan P. Bitanga}}&lt;br /&gt;
{{FeatureTodo|Krunner|Implement Nuno's UI polishings|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Krunner|Runtime syntax documentation|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Krunner|Runner configuration|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Krunner|Search set paging|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|KRunner|runner for the plasma dbus interface|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureInProgress|KRunner|Konqueror history runner|sebas@kde.org|Sebastian Kügler}}&lt;br /&gt;
{{FeatureInProgress|KRunner|Kate sessions runner|sebas@kde.org|Sebastian Kügler}}&lt;br /&gt;
{{FeatureInProgress|KRunner|Recent Documents runner|sebas@kde.org|Sebastian Kügler}}&lt;br /&gt;
|- border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; style=&amp;quot;text-align: center&amp;quot; |Plasma - Priority Features&lt;br /&gt;
{{FeatureInProgress|Plasma|Welcome plasmoid|aseigo@kde.org|Aaron Seigo}}{{FeatureInProgress|Plasma|JOLIE Integration|ervin@kde.org|Kevin Ottens}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Notification plasmoid|dimsuzkde@gmail.com|Dmitry Suzdalev}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Kuiserver plasmoid|r.scheepmaker@student.utwente.nl|Rob Scheepmaker}}&lt;br /&gt;
{{FeatureTodo|KWin|Make it possible to focus plasma panels|chanika@gmail.com|Chani}}&lt;br /&gt;
{{FeatureTodo|Plasma|panel-&amp;gt;desktop dragging|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|Expand cashew to full action bar when zoomed out|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Plasmagik packaging (and package classes)|riccardo@kde.org|Riccardo Iaconelli}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Networkmanager Plasmoid and DataEngine|cblauvelt@gmail.com|Christopher Blauvelt}}&lt;br /&gt;
{{FeatureInProgress|Plasma|New ECMA Script Scriptengines|richmoore44@gmail.com|Richard Moore}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Extenders|r.scheepmaker@student.utwente.nl|Rob Scheepmaker}}&lt;br /&gt;
{{FeatureTodo|Plasma|Wallpaper plugins|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|Separate Desktop Settings from DesktopContainment|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|Script Security Framework|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Python support|simon@simonzone.com|Simon Edwards}}&lt;br /&gt;
|- border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; style=&amp;quot;text-align: center&amp;quot; |Plasma&lt;br /&gt;
{{FeatureDone|Plasma|Plasma Popup Tips|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureDone|Plasma|Collapsing Applet convenience class|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
&lt;br /&gt;
{{FeatureInProgress|Plasma|Taskbar grouping|hrigi_1@hotmail.com|Christian Mollekopf}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Weather plasmoid|shawn.starr@rogers.com|Shawn Starr}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Small Form Factors|m.kruisselbrink@student.tue.nl|Marijn Kruisselbrink}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Plasma On Screensaver|chanika@gmail.com|Chani Armitage}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Website update|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Grid applet|sebas@kde.org|Sebastian Kügler}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Techbase Tutorials|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|Context menu plugins|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|Add New Widgets: Pluggable widget browser|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|Activity&amp;lt;-&amp;gt;Virtual Desktop Affinity|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|Optional Per-Virtual Desktop DesktopView|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|Make non-SVG painting in Plasma low-color and non-anim friendly|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|Runtime DataEngine documentation (sources, usage, etc)|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Panel Autohide|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|Keyboard Shortcut Config UI|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|Systray++ Spec|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|Save icon positioning in folderview|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|physics-based animator|riccardo@kde.org|Riccardo Iaconelli}}&lt;br /&gt;
{{FeatureTodo|Plasma|New wallpapers|riccardo@kde.org|Riccardo Iaconelli}}&lt;br /&gt;
{{FeatureTodo|Plasma|Preserve wallpaper choice by copying user paper to home dir|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|New way of handling wallpapers and different sizes (package format, and so on...)|riccardo@kde.org|Riccardo Iaconelli}}&lt;br /&gt;
{{FeatureTodo|Plasma|Top-level windows plasmoids|riccardo@kde.org|Riccardo Iaconelli}}&lt;br /&gt;
{{FeatureTodo|Plasma|drop indicator in panel|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|improve usability of appletbrowser delete button|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|adding containments from the appletbrowser (and remove the &amp;quot;add panel&amp;quot; from DefaultDeskrop)|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|Expand cashew to cover the containment when fully zoomed out|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|highlight the applet with active keyboard shortcuts|chanika@gmail.com|Chani}}&lt;br /&gt;
{{FeatureTodo|Plasma|dbus interface|chanika@gmail.com|Chani}}&lt;br /&gt;
{{FeatureInProgress|Plasma|make the panel controller a bit more usable|notmart@gmail.com|Marco Martin}}&lt;br /&gt;
{{FeatureInProgress|Plasma|nicely draw the desktop toolbox when it's moved because of a panel|notmart@gmail.com|Marco Martin}}&lt;br /&gt;
{{FeatureDone|Plasma|theme Plasma::PushButton with svg|notmart@gmail.com|Marco Martin}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Tabbar widget derived from QTabBar and themed with svg|notmart@gmail.com|Marco Martin}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Complete the panel size sliders feature: an applet can ask the panel to resize|notmart@gmail.com|Marco Martin}}&lt;br /&gt;
{{FeatureInProgress|Plasma|New theming capabilities by expanding the lover level theming classes (Theme and PanelSvg)|notmart@gmail.com|Marco Martin}}&lt;br /&gt;
{{FeatureDone|Plasma|Wallpaper plugin: Mandelbrot fractal explorer|jacob@math.jussieu.fr|Benoît Jacob}}&lt;br /&gt;
|- border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; style=&amp;quot;text-align: center&amp;quot; |KWin - Core&lt;br /&gt;
{{FeatureDone|KWin|New window snapping zones; screen center and window corners|lmurray@undefinedfire.com|Lucas Murray}}&lt;br /&gt;
{{FeatureDone|KWin|Move maximized windows between Xinerama screens|lmurray@undefinedfire.com|Lucas Murray}}&lt;br /&gt;
{{FeatureInProgress|KWin|Basic window tiling|lmurray@undefinedfire.com|Lucas Murray}}&lt;br /&gt;
{{FeatureTodo|KWin|Compositing decoration API additions|lmurray@undefinedfire.com|Lucas Murray}}&lt;br /&gt;
|- border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; style=&amp;quot;text-align: center&amp;quot; |KWin - Desktop Effects&lt;br /&gt;
{{FeatureInProgress|KWin|Compositing self-check|l.lunak@kde.org|Luboš Luňák}}&lt;br /&gt;
{{FeatureDone|KWin|Global animation speed setting|l.lunak@kde.org|Luboš Luňák}}&lt;br /&gt;
{{FeatureInProgress|KWin|Motion dynamics|lmurray@undefinedfire.com|Lucas Murray}}&lt;br /&gt;
{{FeatureTodo|KWin|New shadow handling by decorations|lmurray@undefinedfire.com|Lucas Murray}}&lt;br /&gt;
{{FeatureDone|KWin|Improved UI for selecting window/desktop switcher|ubuntu@martin-graesslin.com|Martin Gräßlin}}&lt;br /&gt;
{{FeatureTodo|KWin|UI for assigning effects to screen edges|ubuntu@martin-graesslin.com|Martin Gräßlin}}&lt;br /&gt;
{{FeatureDone|KWin|Cube/Cylinder/Sphere Effect|ubuntu@martin-graesslin.com|Martin Gräßlin}}&lt;br /&gt;
{{FeatureDone|KWin|Magic Lamp minimize Effect|ubuntu@martin-graesslin.com|Martin Gräßlin}}&lt;br /&gt;
{{FeatureInProgress|KWin|Animation in BoxSwitch Effect|ubuntu@martin-graesslin.com|Martin Gräßlin}}&lt;br /&gt;
{{FeatureTodo|KWin|Mouse interaction for CoverSwitch Effect|ubuntu@martin-graesslin.com|Martin Gräßlin}}&lt;br /&gt;
{{FeatureTodo|KWin|Additional thumbnails for CoverSwitch Effect|ubuntu@martin-graesslin.com|Martin Gräßlin}}&lt;br /&gt;
{{FeatureTodo|KWin|Improved Snow Effect; different sizes, better randomness and different directions|ubuntu@martin-graesslin.com|Martin Gräßlin}}&lt;br /&gt;
{{FeatureDone|KWin|Improved desktop grid|lmurray@undefinedfire.com|Lucas Murray}}&lt;br /&gt;
{{FeatureDone|KWin|New present window layout modes|lmurray@undefinedfire.com|Lucas Murray}}&lt;br /&gt;
{{FeatureDone|KWin|Invert only selected windows|lmurray@undefinedfire.com|Lucas Murray}}&lt;br /&gt;
{{FeatureInProgress|KWin|Improved mouse mark/scribble effect|lmurray@undefinedfire.com|Lucas Murray}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdepimlibs =&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 !! Project !! Description !! Contact&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdenetwork =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureInProgress|Kopete|MSNP15 implementation for MSN|mattr@kde.org|Matt Rogers}}&lt;br /&gt;
{{FeatureInProgress|Kopete|UPnp Support|mattr@kde.org|Matt Rogers}}&lt;br /&gt;
{{FeatureInProgress|Kopete|Updated contact list interface (uses Qt 4 rather than Qt 3)|mattr@kde.org|Matt Rogers}}&lt;br /&gt;
{{FeatureTodo|Kopete|Update Kopete to better support Decibel|kopete-devel@kde.org|Kopete Developers}}&lt;br /&gt;
{{FeatureInProgress|Kopete|Contacts plasmoid|earthwings@gentoo.org|Dennis Nienhüser}}&lt;br /&gt;
{{FeatureDone|Kopete|Move file transfer request into chat window|kedgedev@centrum.cz|Roman Jarosz}}&lt;br /&gt;
{{FeatureInProgress|Kopete|Message delivery notifications|kedgedev@centrum.cz|Roman Jarosz}}&lt;br /&gt;
{{FeatureTodo|Kopete|Improve file transfer progress dialog|kedgedev@centrum.cz|Roman Jarosz}}&lt;br /&gt;
{{FeatureInProgress|KGet|MultiSource-Downloading|l.appelhans@gmx.de|Lukas Appelhans}}&lt;br /&gt;
{{FeatureInProgress|KGet|Support mms://-protocol, see https://launchpad.net/libmms|l.appelhans@gmx.de|Lukas Appelhans}}&lt;br /&gt;
{{FeatureTodo|KGet|MLDonkey-Plugin based on libkmldonkey|l.appelhans@gmx.de|Lukas Appelhans}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Network Manager Applet|cblauvelt@gmail.com|Christopher Blauvelt}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdepim =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureInProgress|Akregator|Support for syncing the feed list with Google Reader |osterfeld@kde.org|Frank Osterfeld}}&lt;br /&gt;
{{FeatureInProgress|KAlarm|Improve alarm edit and preferences dialog layouts|djarvie@kde.org|David Jarvie}}&lt;br /&gt;
{{FeatureInProgress|KAlarm|Add holidays support|djarvie@kde.org|David Jarvie}}&lt;br /&gt;
{{FeatureInProgress|Kleopatra|OpenPGP support|marc@kdab.net|Marc Mutz (Gpg4win)}}&lt;br /&gt;
{{FeatureInProgress|KNotes|Zeroconf support for sending notes on LAN|qbast@go2.pl|Jakub Stachowski}}&lt;br /&gt;
{{FeatureInProgress|Kontact|New Planner summary; combines Appointment+To-do+SpecialDates into 1 pretty summary|winter@kde.org|Allen Winter}}&lt;br /&gt;
{{FeatureInProgress|KPilot|Finish Keyring conduit, base conduit code and test cases, category syncing|jkasper@kde.org|Jason 'vanRijn' Kasper}}&lt;br /&gt;
{{FeatureTodo|Akregator|Basic support for enclosures (Displaying links, mimetype and size)|osterfeld@kde.org|Frank Osterfeld}}&lt;br /&gt;
{{FeatureTodo|[http://kblogger.pwsp.net KBlogger]|KBlogger, a blogging application| christian_weilbach@.web.de|Christian Weilbach}}&lt;br /&gt;
{{FeatureTodo|Kleopatra|Konqueror and Dolphin Kleopatra plugins|marc@kdab.net|Marc Mutz (Gpg4win)}}&lt;br /&gt;
{{FeatureTodo|KMail|Aggregated attachment view in the mail header area of the reader window|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureTodo|Kontact|Support for Kontact wide profiles|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureTodo|KOrganizer|Drag and drop in the free-busy view|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureTodo|KOrganizer|Support for comments in replies to invitations|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureTodo|KOrganizer|Support for extended free-busy lists|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureTodo|KPilot|Port old conduits to new base conduit architecture and KDE4/Qt4|jkasper@kde.org|Jason 'vanRijn' Kasper}}&lt;br /&gt;
{{FeatureTodo|KBlogger|Port to use KRichTextEdit (Or KMEditor)|steveire@gmail.com|Stephen Kelly}}&lt;br /&gt;
{{FeatureTodo|KNode|Port to use KRichTextEdit (Or KMEditor)|steveire@gmail.com|Stephen Kelly}}&lt;br /&gt;
&lt;br /&gt;
{{FeatureTodo|Kjots| Import notes from KNotes as KJots pages. |steveire@gmail.com|Stephen Kelly}}&lt;br /&gt;
{{FeatureTodo|Kjots| Email KJots pages using default mail client ({{bug|124509}}. |steveire@gmail.com|Stephen Kelly}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdeutils =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureTodo|Okteta|add Kate-like search tool|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|refactor KByteArrayView|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|add support for memory mapping of files|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|parameter dialog for &amp;quot;Copy as...&amp;quot;|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|add support for jobs like io, printing, string search or filter|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureInProgress|Ark|Implement proper drag/drop between Ark/dolphin|harald((at))stud(dot)ntnu.no|Harald Hvaal}}&lt;br /&gt;
{{FeatureInProgress|Ark|Make the service menu work (possibly doing it as a KonqPopupPlugin|harald((at))stud(dot)ntnu.no|Harald Hvaal}}&lt;br /&gt;
{{FeatureInProgress|Ark|Proper password support|harald((at))stud(dot)ntnu.no|Harald Hvaal}}&lt;br /&gt;
{{FeatureTodo|Ark|Support for custom options from the compression interface (eg. a slider for selecting compression level for rar files)|harald((at))stud(dot)ntnu.no|Harald Hvaal}}&lt;br /&gt;
{{FeatureTodo|Ark|Add an options dialog (maybe)|harald((at))stud(dot)ntnu.no|Harald Hvaal}}&lt;br /&gt;
{{FeatureInProgress|kwalletmanager|Move kwalletmanager to the Model/View architecture and redesign the UI|lemma@confuego.org|Michael Leupold}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdebindings =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureDone|krosspython and krossruby|Support custom types via handlers|mail@dipe.org|Sebastian Sauer}}&lt;br /&gt;
{{FeatureDone|krosspython and krossruby|Support QList&amp;lt;CustomType*&amp;gt; constructs|mail@dipe.org|Sebastian Sauer}}&lt;br /&gt;
{{FeatureInProgress|Smoke|Wrap some more APIs (at least Akanodi for all languages and Plasma for C#)|kde-bindings@kde.org|KDE-bindings developers}}&lt;br /&gt;
{{FeatureInProgress|PyKDE|KCM support and other plugins|simon@simonzone.com|Simon Edwards}}&lt;br /&gt;
{{FeatureTodo|krossjava|Integrate into e.g. SuperKaramba and fix issues that show up.|mail@dipe.org|Sebastian Sauer}}&lt;br /&gt;
{{FeatureTodo|krossjava|Documentation++|mail@dipe.org|Sebastian Sauer}}&lt;br /&gt;
{{FeatureTodo|krossfalcon|Unittests++|mail@dipe.org|Sebastian Sauer}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdegames =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureInProgress|libkdegames|New highscore management system|milliams|Matt Williams}}&lt;br /&gt;
{{FeatureDone|kdiamond|Drag jewels|majewsky@gmx.net|Stefan Majewsky}}&lt;br /&gt;
{{FeatureTodo|kdiamond|Optional OpenGL rendering|majewsky@gmx.net|Stefan Majewsky}}&lt;br /&gt;
{{FeatureDone|ksirk|Map scrolling arrows|kleag@free.fr|Gaël de Chalendar}}&lt;br /&gt;
{{FeatureDone|ksirk|KHotNewStuff skins|kleag@free.fr|Gaël de Chalendar}}&lt;br /&gt;
{{FeatureInProgress|ksirk|Jabber based net game finding|kleag@free.fr|Gaël de Chalendar}}&lt;br /&gt;
{{FeatureDone|ksirk|Use only names in skins instead of numeric ids|kleag@free.fr|Gaël de Chalendar}}&lt;br /&gt;
{{FeatureDone|ksirk|Skins editor|kleag@free.fr|Gaël de Chalendar}}&lt;br /&gt;
{{FeatureInProgress|ktron|Port and remake the KTron game for KDE 4.2|legolas@legolasweb.nl|Stas Verberkt}}&lt;br /&gt;
{{FeatureTodo|KNetWalk|Support for custom and non-square board sizes|fela.kde@gmail.com|Fela Winkelmolen}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdesdk =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureDone|Kate|Port and reenable the Snippets plugin.|jpetso@gmx.at|Jakob Petsovits}}&lt;br /&gt;
{{FeatureDone|perldoc KIOSlave|Add KIOSlave to allow reading Perldoc documentation.|michael.pyne&amp;amp;#64;kdemail&amp;amp;#46;net|Michael Pyne}}&lt;br /&gt;
{{FeatureInProgress|Lokalize|XLIFF support|shafff-at-ukr.net|Nick Shaforostoff}}&lt;br /&gt;
{{FeatureInProgress|Lokalize|various Translation Memory enhancements|shafff-at-ukr.net|Nick Shaforostoff}}&lt;br /&gt;
{{FeatureInProgress|Lokalize|wrap all windows belonging to one project into one MDI window|shafff-at-ukr.net|Nick Shaforostoff}}&lt;br /&gt;
{{FeatureTodo|Lokalize|Kross-based scripting|shafff-at-ukr.net|Nick Shaforostoff}}&lt;br /&gt;
{{FeatureTodo|Lokalize|QA: glossary checklists|shafff-at-ukr.net|Nick Shaforostoff}}&lt;br /&gt;
{{FeatureTodo|KAppTemplate|Add DBUS support in templates|annma@kde.org|Anne-Marie Mahfouf}}&lt;br /&gt;
{{FeatureDone|Umbrello|Port code generation wizard to QWizard and replace all q3 widgets|andi.fischer@hispeed.ch|Andi Fischer}}&lt;br /&gt;
{{FeatureInProgress|Umbrello|Replace all q3 widgets in the refactoring assistant|andi.fischer@hispeed.ch|Andi Fischer}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdeedu =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureInProgress|KEduca|Rewrite of the classic test writing/taking application|matt@milliams.com|Matt Williams}}&lt;br /&gt;
{{FeatureTodo|KLettres|Number support|annma@kde.org|Anne-Marie Mahfouf}}&lt;br /&gt;
{{FeatureTodo|KLettres|Theme manager|annma@kde.org|Anne-Marie Mahfouf}}&lt;br /&gt;
{{FeatureInProgress|KHangMan|Add a Open File action|annma@kde.org|Anne-Marie Mahfouf}}&lt;br /&gt;
{{FeatureTodo|KHangMan|Integrate an editor|annma@kde.org|Anne-Marie Mahfouf}}&lt;br /&gt;
{{FeatureTodo|KHangMan|Plasmoid|annma@kde.org|Anne-Marie Mahfouf}}&lt;br /&gt;
{{FeatureTodo|KHangMan|Theme manager|annma@kde.org|Anne-Marie Mahfouf}}&lt;br /&gt;
{{FeatureTodo|KLettres|Visual indicator when letter is wrong|annma@kde.org|Anne-Marie Mahfouf}}&lt;br /&gt;
{{FeatureTodo|Kalzium|Port Kalzium's periodic table to use new QGraphicsView.|marcus@cryos.org|Marcus D. Hanwell}}&lt;br /&gt;
{{FeatureInProgress|Kalzium|Plasmoid to access Kalzium database|cniehaus@kde.org|Carsten Niehaus}}&lt;br /&gt;
{{FeatureTodo|Step|Improve GUI for creating softbody|ksvladimir@gmail.com|Vladimir Kuznetsov}}&lt;br /&gt;
{{FeatureTodo|Step|Use common constraints handling code for collisions|ksvladimir@gmail.com|Vladimir Kuznetsov}}&lt;br /&gt;
{{FeatureInProgress|KAlgebra|New parser using QLALR|aleixpol@gmail.com|Aleix Pol}}&lt;br /&gt;
{{FeatureInProgress|Parley|Declensions|frederik.gladhorn@kdemail.net|Frederik Gladhorn}}&lt;br /&gt;
{{FeatureInProgress|KStars|Display millions of stars|akarshsimha@gmail.com|Akarsh Simha}}&lt;br /&gt;
{{FeatureInProgress|KStars|Tool to predict Conjunctions|akarshsimha@gmail.com|Akarsh Simha}}&lt;br /&gt;
{{FeatureInProgress|KStars|Earth Satellites|kstars@30doradus.org|Jason Harris}}&lt;br /&gt;
{{FeatureInProgress|KStars|Sky Calendar Tool|kstars@30doradus.org|Jason Harris}}&lt;br /&gt;
{{FeatureInProgress|KStars|Include HD Catalog Numbers (in search, in display)|akarshsimha@gmail.com|Akarsh Simha}}&lt;br /&gt;
{{FeatureTodo|KStars|Marble widget for Geolocation tool|mboquien@free.fr|Médéric Boquien}}&lt;br /&gt;
{{FeatureTodo|KStars|Better printed star charts|kstars@30doradus.org|Jason Harris}}&lt;br /&gt;
{{FeatureTodo|KStars|Better rendering of comets/asteroids|kstars@30doradus.org|Jason Harris}}&lt;br /&gt;
{{FeatureTodo|KStars|Texture mapping of the skymap???|kstars@30doradus.org|Jason Harris}}&lt;br /&gt;
{{FeatureTodo|KStars|Improve Observing List Wizard|akarshsimha@gmail.com|Akarsh Simha}}&lt;br /&gt;
{{FeatureTodo|KStars|Display Comet Magnitudes whenever possible|akarshsimha@gmail.com|Akarsh Simha}}&lt;br /&gt;
{{FeatureTodo|KStars|Tool to suggest star-hopping techniques???|akarshsimha@gmail.com|Akarsh Simha}}&lt;br /&gt;
{{FeatureTodo|KStars|Extend conjunction tool to have one object unspecified, but have a genre of objects specified instead|akarshsimha@gmail.com|Akarsh Simha}}&lt;br /&gt;
{{FeatureTodo|Marble|Export map to MxN pixel bitmap|inge@lysator.liu.se|Inge Wallin}}&lt;br /&gt;
{{FeatureTodo|Marble|Support for MarbleWidget::setEnabled( bool )|inge@lysator.liu.se|Inge Wallin}}&lt;br /&gt;
{{FeatureTodo|Marble|Map Contents translation|tackat@kde.org|Torsten Rahn}}&lt;br /&gt;
{{FeatureInProgress|Marble|Layer Management Class|rahn@kde.org|Torsten Rahn}}&lt;br /&gt;
{{FeatureInProgress|Marble|Plugin architecture for map layers|rahn@kde.org|Torsten Rahn}}&lt;br /&gt;
{{FeatureInProgress|Marble|DGML2 Support|tackat@kde.org|Torsten Rahn}}&lt;br /&gt;
{{FeatureInProgress|Marble|KDE-Version settings dialog|tackat@kde.org|Torsten Rahn}}&lt;br /&gt;
{{FeatureInProgress|Marble|Port authors list from the Qt-About dialog to the KDE-About dialog|tackat@kde.org|Torsten Rahn}}&lt;br /&gt;
{{FeatureInProgress|Marble|Qt-Version settings dialog|tackat@kde.org|Torsten Rahn}}&lt;br /&gt;
{{FeatureInProgress|Marble|Improved KML support|tackat@kde.org|Torsten Rahn}}&lt;br /&gt;
{{FeatureInProgress|Marble|OpenStreetMap support using original OSM tiles|tackat@kde.org|Torsten Rahn}}&lt;br /&gt;
{{FeatureInProgress|Marble|Real Time Cloud-Cover|tackat@kde.org|David Roberts / Torsten Rahn}}&lt;br /&gt;
{{FeatureInProgress|Marble|Mercator Projection|inge@lysator.liu.se|Inge Wallin}}&lt;br /&gt;
{{FeatureInProgress|Marble|More generic projection support|inge@lysator.liu.se|Inge Wallin}}&lt;br /&gt;
{{FeatureInProgress|Marble|Usage of Marble in &lt;br /&gt;
non-widgets|inge@lysator.liu.se|Inge Wallin}}&lt;br /&gt;
{{FeatureTodo|Kig|Properties dialog for objects.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureTodo|Kig|Improve construction of bisect lines.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureTodo|Kig|Improve feedback when constructing objects.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureTodo|Kig|More geometric objects.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureTodo|Kig|Script objects as macros (to be reused more than once).|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureTodo|Kig|Improve the Cabri import filter.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureDone|KTurtle|Export canvas as image|piacentini@kde.org|Mauricio Piacentini}}&lt;br /&gt;
{{FeatureTodo|KTurtle|Optional rulers/grid for canvas units|piacentini@kde.org|Mauricio Piacentini}}&lt;br /&gt;
{{FeatureDone|KTurtle|Add command line|piacentini@kde.org|Mauricio Piacentini}}&lt;br /&gt;
{{FeatureDone|KTurtle|Add a color picker|nielsslot@gmail.com|Niels Slot}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdemultimedia =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureInProgress|Dragon Player|Make Dragon indipendent from Xine|ian.monroe@gmail.com|Ian Monroe}}&lt;br /&gt;
{{FeatureInProgress|Dragon Player|File Manager|ian.monroe@gmail.com|Ian Monroe}}&lt;br /&gt;
{{FeatureInProgress|Dragon Player|play media dialog|ian.monroe@gmail.com|Ian Monroe}}&lt;br /&gt;
{{FeatureInProgress|Dragon Player|slider changes|ian.monroe@gmail.com|Ian Monroe}}&lt;br /&gt;
{{FeatureInProgress|Dragon Player|show info while playing audio files|ian.monroe@gmail.com|Ian Monroe}}&lt;br /&gt;
{{FeatureTodo|JuK|Remove Qt/KDE3 support lib requirements|michael.pyne@kdemail.net|Michael Pyne}}&lt;br /&gt;
{{FeatureTodo|JuK|Allow setting covers directly from URLs supported by KIO - drag/drop already allows this however|michael.pyne@kdemail.net|Michael Pyne}}&lt;br /&gt;
{{FeatureTodo|JuK|Use XCOMPOSITE real transparency when available for the track announcement popup|michael.pyne@kdemail.net|Michael Pyne}}&lt;br /&gt;
{{FeatureTodo|JuK|Allow disabling crossfade|michael.pyne@kdemail.net|Michael Pyne}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdeaccessibility =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureTodo|KMagnifier|Refactor color menu, re-add invert, break current color blindness code into &amp;quot;daltonize&amp;quot; and &amp;quot;simulate&amp;quot;|mw_triad@users.sourceforge.net|Matthew Woehlke}}&lt;br /&gt;
{{FeatureTodo|KMagnifier|Add color-shift modes to help people with color blindness|mw_triad@users.sourceforge.net|Matthew Woehlke}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdegraphics =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureDone|KSnapshot|Add support for grabbing a single screen in multihead|rich@kde.org|Richard Moore}}&lt;br /&gt;
{{FeatureDone|KSnapshot|Increase jpeg image quality from 75% to 85%|rich@kde.org|Richard Moore}}&lt;br /&gt;
{{FeatureDone|KSnapshot|If we're saving the window decorations then record the window title and class in the image (if the format supports it) to play nice with indexers like strigi|rich@kde.org|Richard Moore}}&lt;br /&gt;
{{FeatureTodo|Okular|Sound annotations.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureTodo|Okular|Link annotations.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureTodo|Okular|Improve annotation support: for existing types (rubber stamps, line, note, etc), and for the way they are constructed and handled.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureTodo|Okular|Caret annotations.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureInProgress|Okular|Support for videos &amp;amp; movie annotations.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureTodo|Okular|Support .snp and .emf file formats|bradh@kde.org|Brad Hards}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdebase-runtime =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureInProgress|kio_bookmarks|A new konqueror home page displaying user bookmarks. See [[http://kde-apps.org/content/show.php?content=86516 description]]|xavier.vello@gmail.com|Xavier Vello}}&lt;br /&gt;
{{FeatureInProgress|kuiserver|KUiServer Goya port. General improvements for usability improvements|ereslibre@kde.org|Rafael Fernández López}}&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Shaforostoff</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Development/Tutorials/Kate/KTextEditor_Example</id>
		<title>Development/Tutorials/Kate/KTextEditor Example</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Development/Tutorials/Kate/KTextEditor_Example"/>
				<updated>2008-08-31T13:06:17Z</updated>
		
		<summary type="html">&lt;p&gt;Shaforostoff: /* editorui.rc */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Abstract==&lt;br /&gt;
&lt;br /&gt;
We build a small application using KTexteditor. This example supports syntax highlighting and other useful features. We see how to use KTextEditor.&lt;br /&gt;
&lt;br /&gt;
[[image:TutorialEditor.png|frame|center]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== The Code ==&lt;br /&gt;
&lt;br /&gt;
===main.cpp===&lt;br /&gt;
&amp;lt;code cppqt n&amp;gt;&lt;br /&gt;
#include &amp;lt;KApplication&amp;gt;&lt;br /&gt;
#include &amp;lt;KAboutData&amp;gt;&lt;br /&gt;
#include &amp;lt;KCmdLineArgs&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
#include &amp;quot;mainwindow.h&amp;quot;&lt;br /&gt;
 &lt;br /&gt;
int main (int argc, char *argv[])&lt;br /&gt;
{&lt;br /&gt;
  KAboutData aboutData( &amp;quot;editor&amp;quot;, &amp;quot;editor&amp;quot;,&lt;br /&gt;
      ki18n(&amp;quot;Editor&amp;quot;), &amp;quot;1.0&amp;quot;,&lt;br /&gt;
      ki18n(&amp;quot;A simple text area which can load and save.&amp;quot;),&lt;br /&gt;
      KAboutData::License_GPL,&lt;br /&gt;
      ki18n(&amp;quot;Copyright (c) 2007 Developer&amp;quot;) );&lt;br /&gt;
  KCmdLineArgs::init( argc, argv, &amp;amp;aboutData );&lt;br /&gt;
  KApplication app;&lt;br /&gt;
 &lt;br /&gt;
  MainWindow* window = new MainWindow();&lt;br /&gt;
  window-&amp;gt;show();&lt;br /&gt;
  return app.exec();&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In &amp;lt;tt&amp;gt;main.cpp&amp;lt;/tt&amp;gt; just defines ''aboutData'' and ''app'' and shows ''Mainwindow''.&lt;br /&gt;
&lt;br /&gt;
===mainwindow.h===&lt;br /&gt;
&amp;lt;code cppqt n&amp;gt;&lt;br /&gt;
#ifndef MAINWINDOW_H&lt;br /&gt;
#define MAINWINDOW_H&lt;br /&gt;
&lt;br /&gt;
#include &amp;lt;KParts/MainWindow&amp;gt;&lt;br /&gt;
#include &amp;lt;QtGui/QKeyEvent&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
namespace KTextEditor&lt;br /&gt;
{&lt;br /&gt;
  class Document;&lt;br /&gt;
  class View;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
class MainWindow : public KParts::MainWindow&lt;br /&gt;
{&lt;br /&gt;
  Q_OBJECT&lt;br /&gt;
  &lt;br /&gt;
  public:&lt;br /&gt;
    MainWindow(QWidget *parent=0);&lt;br /&gt;
  &lt;br /&gt;
  private slots:&lt;br /&gt;
    void clear();&lt;br /&gt;
    void openFile();&lt;br /&gt;
&lt;br /&gt;
  private:&lt;br /&gt;
    void setupActions();&lt;br /&gt;
    KTextEditor::View *m_view;&lt;br /&gt;
    KTextEditor::Document *m_doc;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
#endif&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Class MainWindow is a successor of KXmlGuiWindow and contains KTextEditor (document and view) as a private Variable. There are also some useful methods defined.&lt;br /&gt;
&lt;br /&gt;
===mainwindow.cpp===&lt;br /&gt;
&amp;lt;code cppqt n&amp;gt;&lt;br /&gt;
#include &amp;quot;mainwindow.h&amp;quot;&lt;br /&gt;
&lt;br /&gt;
#include &amp;lt;KApplication&amp;gt;&lt;br /&gt;
#include &amp;lt;KAction&amp;gt;&lt;br /&gt;
#include &amp;lt;KLocale&amp;gt;&lt;br /&gt;
#include &amp;lt;KActionCollection&amp;gt;&lt;br /&gt;
#include &amp;lt;KStandardAction&amp;gt;&lt;br /&gt;
#include &amp;lt;KFileDialog&amp;gt;&lt;br /&gt;
#include &amp;lt;KMessageBox&amp;gt;&lt;br /&gt;
#include &amp;lt;KIO/NetAccess&amp;gt;&lt;br /&gt;
#include &amp;lt;KSaveFile&amp;gt;&lt;br /&gt;
#include &amp;lt;QTextStream&amp;gt;&lt;br /&gt;
#include &amp;lt;KXMLGUIFactory&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
#include &amp;lt;KTextEditor/Document&amp;gt;&lt;br /&gt;
#include &amp;lt;KTextEditor/View&amp;gt;&lt;br /&gt;
#include &amp;lt;KTextEditor/Editor&amp;gt;&lt;br /&gt;
#include &amp;lt;KTextEditor/EditorChooser&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
MainWindow::MainWindow(QWidget *)&lt;br /&gt;
{&lt;br /&gt;
  KTextEditor::Editor *editor = KTextEditor::EditorChooser::editor();&lt;br /&gt;
&lt;br /&gt;
  if (!editor) {&lt;br /&gt;
    KMessageBox::error(this, i18n(&amp;quot;A KDE text-editor component could not be found;\n&amp;quot;&lt;br /&gt;
				  &amp;quot;please check your KDE installation.&amp;quot;));&lt;br /&gt;
    kapp-&amp;gt;exit(1);&lt;br /&gt;
  }&lt;br /&gt;
&lt;br /&gt;
  m_doc = editor-&amp;gt;createDocument(0);&lt;br /&gt;
  m_view = qobject_cast&amp;lt;KTextEditor::View*&amp;gt;(m_doc-&amp;gt;createView(this));&lt;br /&gt;
&lt;br /&gt;
  setCentralWidget(m_view);&lt;br /&gt;
  setupActions();&lt;br /&gt;
&lt;br /&gt;
  setXMLFile(&amp;quot;editorui.rc&amp;quot;);&lt;br /&gt;
  createShellGUI(true);&lt;br /&gt;
&lt;br /&gt;
  guiFactory()-&amp;gt;addClient(m_view);&lt;br /&gt;
&lt;br /&gt;
  show ();&lt;br /&gt;
}&lt;br /&gt;
 &lt;br /&gt;
void MainWindow::setupActions()&lt;br /&gt;
{&lt;br /&gt;
  KStandardAction::quit(kapp, SLOT(quit()), actionCollection());&lt;br /&gt;
  KStandardAction::open(this, SLOT(openFile()), actionCollection());&lt;br /&gt;
  KStandardAction::clear(this, SLOT(clear()), actionCollection());&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
void MainWindow::clear()&lt;br /&gt;
{&lt;br /&gt;
  m_doc-&amp;gt;clear();&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
void MainWindow::openFile()&lt;br /&gt;
{&lt;br /&gt;
  m_view-&amp;gt;document()-&amp;gt;openUrl(KFileDialog::getOpenFileName());&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The implementation is straight forward and self-explanatory. Some remarks:&lt;br /&gt;
&lt;br /&gt;
'''MainWindow::Mainwindow()'''&lt;br /&gt;
&lt;br /&gt;
First the editor component is created on the heap. After creating ''document()'' and ''view()'', the GUI definitions are loaded from editorui.rc. The call ''guiFactory()-&amp;gt;addClient(m_view)'' adds the kate parts menue and toolbar definitions to MainWindow. After that a full featured texteditor with syntax highlighting etc. is available for  your application.&lt;br /&gt;
&lt;br /&gt;
'''MainWindow::setupAction()''' defines three additional actions.&lt;br /&gt;
&lt;br /&gt;
===editorui.rc===&lt;br /&gt;
&amp;lt;code xml n&amp;gt;&lt;br /&gt;
&amp;lt;!DOCTYPE kpartgui SYSTEM &amp;quot;kpartgui.dtd&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;kpartgui name=&amp;quot;editor&amp;quot; version=&amp;quot;1&amp;quot;&amp;gt; &amp;lt;!-- increase version number if you don't see changes after experimenting with this file --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;MenuBar&amp;gt;&lt;br /&gt;
  &amp;lt;Menu name=&amp;quot;file&amp;quot; noMerge=&amp;quot;1&amp;quot;&amp;gt;&amp;lt;text&amp;gt;&amp;amp;amp;File&amp;lt;/text&amp;gt;&lt;br /&gt;
&lt;br /&gt;
    &amp;lt;Action name=&amp;quot;file_open&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;DefineGroup name=&amp;quot;save_merge&amp;quot; append=&amp;quot;save_merge&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;Separator/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
    &amp;lt;DefineGroup name=&amp;quot;revert_merge&amp;quot; append=&amp;quot;revert_merge&amp;quot;/&amp;gt;&lt;br /&gt;
    &amp;lt;DefineGroup name=&amp;quot;print_merge&amp;quot; append=&amp;quot;print_merge&amp;quot;/&amp;gt;&lt;br /&gt;
    &amp;lt;Separator/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
    &amp;lt;Action name=&amp;quot;file_quit&amp;quot;/&amp;gt;&lt;br /&gt;
  &amp;lt;/Menu&amp;gt;&lt;br /&gt;
  &amp;lt;Merge /&amp;gt;&lt;br /&gt;
&amp;lt;/MenuBar&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ToolBar name=&amp;quot;mainToolBar&amp;quot; noMerge=&amp;quot;1&amp;quot;&amp;gt;&amp;lt;text&amp;gt;Main Toolbar&amp;lt;/text&amp;gt;&lt;br /&gt;
  &amp;lt;Action name=&amp;quot;file_open&amp;quot; /&amp;gt;&lt;br /&gt;
  &amp;lt;DefineGroup name=&amp;quot;file_operations&amp;quot; /&amp;gt;&lt;br /&gt;
  &amp;lt;Separator /&amp;gt;&lt;br /&gt;
  &amp;lt;DefineGroup name=&amp;quot;print_merge&amp;quot; /&amp;gt;&lt;br /&gt;
  &amp;lt;Separator /&amp;gt;&lt;br /&gt;
  &amp;lt;Action name=&amp;quot;file_close&amp;quot; /&amp;gt;&lt;br /&gt;
  &amp;lt;Separator /&amp;gt;&lt;br /&gt;
  &amp;lt;DefineGroup name=&amp;quot;edit_operations&amp;quot; /&amp;gt;&lt;br /&gt;
  &amp;lt;Separator /&amp;gt;&lt;br /&gt;
  &amp;lt;DefineGroup name=&amp;quot;find_operations&amp;quot; /&amp;gt;&lt;br /&gt;
  &amp;lt;Separator /&amp;gt;&lt;br /&gt;
  &amp;lt;DefineGroup name=&amp;quot;zoom_operations&amp;quot; /&amp;gt;&lt;br /&gt;
&amp;lt;/ToolBar&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;Menu name=&amp;quot;ktexteditor_popup&amp;quot; noMerge=&amp;quot;1&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;DefineGroup name=&amp;quot;popup_operations&amp;quot; /&amp;gt;&lt;br /&gt;
&amp;lt;/Menu&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/kpartgui&amp;gt;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===CMakeLists.txt===&lt;br /&gt;
&amp;lt;code ini n&amp;gt;&lt;br /&gt;
project(editor)&lt;br /&gt;
 &lt;br /&gt;
find_package(KDE4 REQUIRED)&lt;br /&gt;
include_directories(${KDE4_INCLUDES})&lt;br /&gt;
 &lt;br /&gt;
set(editor_SRCS &lt;br /&gt;
  main.cpp&lt;br /&gt;
  mainwindow.cpp&lt;br /&gt;
)&lt;br /&gt;
 &lt;br /&gt;
kde4_add_executable(editor ${editor_SRCS})&lt;br /&gt;
 &lt;br /&gt;
target_link_libraries(editor ${KDE4_KDEUI_LIBS} &lt;br /&gt;
                             ${KDE4_KIO_LIBS}&lt;br /&gt;
                             ${KDE4_KTEXTEDITOR_LIBS})&lt;br /&gt;
 &lt;br /&gt;
install(TARGETS editor DESTINATION ${BIN_INSTALL_DIR})&lt;br /&gt;
install(FILES editorui.rc &lt;br /&gt;
        DESTINATION ${DATA_INSTALL_DIR}/editor)&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;/div&gt;</summary>
		<author><name>Shaforostoff</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Projects/Summer_of_Code/2007/Projects/KAider</id>
		<title>Projects/Summer of Code/2007/Projects/KAider</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Projects/Summer_of_Code/2007/Projects/KAider"/>
				<updated>2008-08-08T17:00:48Z</updated>
		
		<summary type="html">&lt;p&gt;Shaforostoff: /* Current state */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;''' WARNING ''' KAider was renamed to '''Lokalize''' and will be included in kdesdk package for KDE 4.1&lt;br /&gt;
&lt;br /&gt;
Lokalize is a computer-aided translation system that focuses on productivity and performance. Translator does only creative work (of delivering message in his/her mother language in laconic and easy to understand form). Lokalize implies paragraph-by-paragraph translation approach (when translating documentation) and message-by-message approach (when translating GUI).&lt;br /&gt;
See [[Projects/Summer_of_Code/2007/Projects/KAider/Introduction|KAider/Introduction]]&lt;br /&gt;
&lt;br /&gt;
==Current state==&lt;br /&gt;
Already has:&lt;br /&gt;
* syntax highlighting&lt;br /&gt;
* spellcheck (sonnet needs improvement)&lt;br /&gt;
* search-n-replace, ignoring accel marks&lt;br /&gt;
* formats .po file output better so less diff is generated by scripty&lt;br /&gt;
* small features like quick tag insert, placing text cursor right after the tag in the beginning (e.g. '&amp;lt;qt&amp;gt;|foobar&amp;lt;/qt&amp;gt;' where &amp;quot;|&amp;quot; is a cursor), entry bookmarks&lt;br /&gt;
* viewer of the difference between current msgid and previous one (i.e. msgid translation of which current msgstr really is -- for fuzzies generated with --previous gettext option)&lt;br /&gt;
* merge mode for editors (QA) or when several translators work on the same file [http://kv-53.narod.ru/kaider2.png screenshot]&lt;br /&gt;
* basic projectmanager functionality [http://kv-53.narod.ru/kaider1.png screenshot]&lt;br /&gt;
* Translation Memory (threaded) with shortcuts for inserting suggestions into current 'msgstr', scores are computed based on common/total length ratio, removed+added length, and count of removed+added parts [http://kv-53.narod.ru/kaider_tm.png screenshot]&lt;br /&gt;
* for difference representation in all places word-by-word algorithm is used (based on the Longest Common Sequence o(n*n) algorithm and my own experience)&lt;br /&gt;
* glossary with basic [http://www.lisa.org/standards/tbx/ tbx] format support. Lokalize displays relevant entries on-the-fly and provides shortcuts to insert them. also, you can add new glossary terms via context menu of the glossary. [http://kv-53.narod.ru/kaider3.png screenshot 1] [http://kv-53.narod.ru/kaider4.png screenshot 2]&lt;br /&gt;
* Search/Replace functions in multiple files at once.&lt;br /&gt;
* Spellchecking of multiple files at once.&lt;br /&gt;
* beginnings of XLIFF support&lt;br /&gt;
&lt;br /&gt;
==Compiling==&lt;br /&gt;
After you [[Getting_Started/Build/KDE4|set kde env up]] (compiling kdelibs+kdebase is enough):&lt;br /&gt;
 svn checkout -N svn://anonsvn.kde.org/home/kde/trunk/KDE/kdesdk/&lt;br /&gt;
 cd kdesdk &amp;amp;&amp;amp; svn up cmake doc lokalize&lt;br /&gt;
 mkdir kdesdk/build &amp;amp;&amp;amp; chmod a+w kdesdk/build&lt;br /&gt;
 su kde-devel&lt;br /&gt;
 cd kdesdk/build&lt;br /&gt;
 cmakekde ..&lt;br /&gt;
&lt;br /&gt;
as a root, run sshd and then from the usual shell:&lt;br /&gt;
 ssh -XC kde-devel@localhost&lt;br /&gt;
 lokalize &lt;br /&gt;
&lt;br /&gt;
you can get catalogmanager by specifying --project option&lt;br /&gt;
 lokalize --project /path/to/index.ktp&lt;br /&gt;
&lt;br /&gt;
See [[Projects/Summer_of_Code/2007/Projects/KAider#Setup]].&lt;br /&gt;
&lt;br /&gt;
===Debian users===&lt;br /&gt;
You can install the latest version of lokalize from experimental repository: [http://packages.debian.org/experimental/lokalize]&lt;br /&gt;
&lt;br /&gt;
==Setup==&lt;br /&gt;
* Create project, saving *.ktp file to l10n-kde4/&amp;lt;LangCode&amp;gt;/ dir&lt;br /&gt;
* Populate Glossary via GlossaryView context menu (.tbx file will be created automatically for you on the first entry addition).&lt;br /&gt;
* Populate Translation Memory by dropping .po files onto TM View&lt;br /&gt;
&lt;br /&gt;
See [http://websvn.kde.org/trunk/l10n-kde4/ru/] for an example project structure&lt;br /&gt;
&lt;br /&gt;
==Maxims==&lt;br /&gt;
* Majority of actions must be accessible via keyboard (because it is faster to press a shotcut than to be frustrated with a mouse)&lt;br /&gt;
* Do automatization _everywhere_ possible&lt;br /&gt;
* Focus on translation quality. This is open source -- so source code is available (for change)&lt;br /&gt;
&lt;br /&gt;
==Further work==&lt;br /&gt;
*&amp;quot;as-you-type&amp;quot;-spellcheck&lt;br /&gt;
*dbus&lt;br /&gt;
*WebQuery for twin languages (like Ukrainian and Russian)&lt;br /&gt;
*xliff+qt-linguist support (see [[#KBabel features to be implemented|KBabel features to be implemented]])&lt;br /&gt;
* Glossary checklists: check for forbidden terms in new translation&lt;br /&gt;
* project-wise and program-wise: webquery scripts, glossaries, TMs&lt;br /&gt;
* check for different translations of the same msgid (use strigi?)&lt;br /&gt;
* back-checking, to see whether a term/string in the target language has been used as translation for different things, not just that one source has the same translation everywhere.&lt;br /&gt;
* Tighten SVN support: svn diff-like feature&lt;br /&gt;
* Automatic Glossary building&lt;br /&gt;
* Research on dividing into sentences rules (e.g. srx)&lt;br /&gt;
* Automate submitting translation suggestions to translate.google.com [Kross action]&lt;br /&gt;
* [Kross (project) action] that merges translations with updated template&lt;br /&gt;
* fill TM with content of /usr/share/locale/&amp;lt;lang&amp;gt;/LC_MESSAGES/*.mo [Kross action]&lt;br /&gt;
&lt;br /&gt;
Not for KDE:&lt;br /&gt;
* Be complete computer-aided translation system by providing e.g. actions to import+export openoffice, txt and documents of other formats by calling appropriate scripts/commands. Define for that general kross actions interface.&lt;br /&gt;
* Make nice windoze package for the windowzerz&lt;br /&gt;
&lt;br /&gt;
Competitors (ideas):&lt;br /&gt;
* [http://www.triplespin.com/en/products/locfactoryeditor.html#whatsnew locfactoryeditor] --Mac only&lt;br /&gt;
* [http://www.heartsome.net/EN/downloads.html Heartsome] --multiplatform, costs money&lt;br /&gt;
* Go over [http://sourceforge.net/tracker/?atid=520350&amp;amp;group_id=68187&amp;amp;func=browse OmegaT wishlist] and ensure every sane wish is implemented&lt;br /&gt;
&lt;br /&gt;
Converters (use, acting as a front-end):&lt;br /&gt;
* [http://file2xliff4j.sourceforge.net/javadoc/file2xliff4j/package-summary.html file2xliff4j] --java-based&lt;br /&gt;
* [https://open-language-tools.dev.java.net] --java-based&lt;br /&gt;
* [http://translate.sourceforge.net/wiki/toolkit/index Translate Toolkit] --python-based, checks, other goodness&lt;br /&gt;
&lt;br /&gt;
==KBabel features to be implemented==&lt;br /&gt;
...in a smarter way :)&lt;br /&gt;
* persistent bookmarks for messages in a file saved in the project&lt;br /&gt;
* extended marking of .po and .pot files (e.g. translator that currently works on the file and cince when) saved in the project&lt;br /&gt;
* Opening source code by references in message comments [Kross action]&lt;br /&gt;
* A plugin framework for validation tools for consistency checks [Kross action triggered on saving]&lt;br /&gt;
* Sending the file using email [Kross (project) action]&lt;br /&gt;
* Automatic syntax check with msgfmt when saving and, if an error occured, easy navigation to messages, which contain errors. == Syntax check (msgfmt --statistics) for existing files to control if the translated files will compile and, accordingly, work when distributed [Kross (project) action]&lt;br /&gt;
* CVS and SVN support [Kross project action] (is 'svn ci' so hard?)&lt;br /&gt;
* statistics&lt;br /&gt;
* PO File Header change [Kross action (+triggered on saving)]&lt;br /&gt;
* Printing of selected messages (eg fuzzy ) [Kross action]&lt;br /&gt;
Also:&lt;br /&gt;
* msgid-diff-msgstr from [http://lichota.net/~krzysiek/projects/msgtools/] (features for all other commands are already implemented, if you haven't noticed this)&lt;br /&gt;
&lt;br /&gt;
==KBabel features NOT to be implemented==&lt;br /&gt;
* Character selection tool integration, sort by the frequency&lt;br /&gt;
Why? Better improve system-wide charselect tool, OR...&lt;br /&gt;
modify your xorg keyboard layout!&lt;/div&gt;</summary>
		<author><name>Shaforostoff</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Projects/Summer_of_Code/2007/Projects/KAider/UI_redesign</id>
		<title>Projects/Summer of Code/2007/Projects/KAider/UI redesign</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Projects/Summer_of_Code/2007/Projects/KAider/UI_redesign"/>
				<updated>2008-07-30T08:15:53Z</updated>
		
		<summary type="html">&lt;p&gt;Shaforostoff: New page: I have idea to convert my translation tool to tabbed interface: all its windows (editor, catalog manager) belonging to one project will become tabs, like in Opera (in vertical order: menub...&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;I have idea to convert my translation tool to tabbed interface:&lt;br /&gt;
all its windows (editor, catalog manager) belonging to one project&lt;br /&gt;
will become tabs, like in Opera (in vertical order: menubar, tabbar,&lt;br /&gt;
toolbar),&lt;br /&gt;
with catalog manager tab always being the first one,&lt;br /&gt;
and menubar changing appropriately when catalog manager gets selected.&lt;/div&gt;</summary>
		<author><name>Shaforostoff</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Schedules/KDE4/4.2_Feature_Plan</id>
		<title>Schedules/KDE4/4.2 Feature Plan</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Schedules/KDE4/4.2_Feature_Plan"/>
				<updated>2008-07-26T15:56:07Z</updated>
		
		<summary type="html">&lt;p&gt;Shaforostoff: /* kdesdk */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This is a list of planned features for the 4.2 release.&lt;br /&gt;
&lt;br /&gt;
See also:&lt;br /&gt;
* [[Schedules/KDE4/4.2 Release Schedule]]&lt;br /&gt;
* [[Schedules/KDE4/4.1 Feature Plan]]&lt;br /&gt;
* [[Schedules/KDE4/Goals]]&lt;br /&gt;
&lt;br /&gt;
Legend:&lt;br /&gt;
* todo =&amp;gt; not started yet&lt;br /&gt;
* in-progress =&amp;gt; started, but not completed yet&lt;br /&gt;
* done =&amp;gt; completed&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
= Other =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureTodo|System Settings|add Administrator mode button|?|?}}&lt;br /&gt;
{{FeatureInProgress|Eigen|Finish version 2.0 and move it to kdesupport|jacob@math.jussieu.fr|Benoît Jacob}}&lt;br /&gt;
{{FeatureTodo|Eigen|Port all Eigen-using code in KDE and KOffice to Eigen 2.0|jacob@math.jussieu.fr|Benoît Jacob}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdelibs =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureInProgress|kross|Extend QtScript integration.|mail@dipe.org|Sebastian Sauer}}&lt;br /&gt;
{{FeatureInProgress|KDEPrint|Reintroduce KDEPrint in some form, depending on what Qt4.4 delivers.|john@layt.net|john Layt}}&lt;br /&gt;
{{FeatureTodo|KDEPrint|Add framework for standard actions for 'Send to...' for e-mail, fax, etc by printing to PDF/PS.|john@layt.net|John Layt}}&lt;br /&gt;
{{FeatureTodo|KDEPrint|Migrate FilePrinter class from Okular to enable file printing for all apps via QPrinter, modify to utilise new Qt4.4 features.  To be discussed on k-c-d first.|john@layt.net|John Layt}}&lt;br /&gt;
{{FeatureTodo|KCalenderSystem|Add new calendar systems: Indian Civil (Saka), Ethiopean, Chinese, Pure Julian, Pure Gregorian. (Note, not all may live in kdelibs or be available as a global calendar system)|john@layt.net|John Layt}}&lt;br /&gt;
{{FeatureTodo|KLocale|Implement KLocale based methods to return weekend days and day of religious observance.  Currently KCalendarSystem provides dayOfPray(), but for Gregorian this is not correct in all locales where it is used.  Currently KDatePicker hardcodes Saturday and dayOfPray() as weekend days which may not be correct in all locales.  To be discussed first on k-c-d and with kdepim.|john@layt.net|John Layt}}&lt;br /&gt;
{{FeatureTodo|Phonon|add Port class for fine grained control over data flow between Phonon objects|kretz@kde.org|Matthias Kretz}}&lt;br /&gt;
{{FeatureInProgress|Phonon|make AbstractMediaStream/StreamInterface threadsafe|kretz@kde.org|Matthias Kretz}}&lt;br /&gt;
{{FeatureInProgress|Phonon|&amp;quot;low-level&amp;quot; PCM I/O with at least an ALSA implementation|kretz@kde.org|Matthias Kretz and Ian Monroe}}&lt;br /&gt;
{{FeatureInProgress|Phonon|VideoWidget snapshot function|kretz@kde.org|Matthias Kretz}}&lt;br /&gt;
{{FeatureInProgress|KConfig|API review and export KConfigBackend|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureInProgress|KConfig|Make KConfigSkeleton KConfigGroup aware|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureInProgress|KConfig|Make KConfigDialog work nicer with KConfigSkeleton + manually managed widgets|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdebase-workspace =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureTodo|Color KCM|Add 'smart setting' of extended colors|mw_triad@users.sourceforge.net|Matthew Woehlke}}&lt;br /&gt;
{{FeatureTodo|Color KCM|Add KDE3 scheme import|mw_triad@users.sourceforge.net|Matthew Woehlke}}&lt;br /&gt;
{{FeatureTodo|Color KCM|Query kwin for supported colors; add full set of kwin colors|mw_triad@users.sourceforge.net|Matthew Woehlke}}&lt;br /&gt;
{{FeatureTodo|KDEPrint|reintroduce KDEPrint Print Management tools, e.g. KCM, kprinter, kjobviewer, etc.  Depends upon progress of kdelibs side of KDEPrint and Qt4.4 feature set.|john@layt.net|john Layt}}&lt;br /&gt;
|- border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; style=&amp;quot;text-align: center&amp;quot; |KRunner&lt;br /&gt;
{{FeatureInProgress|Krunner|Configuration options for blacklisting, user ranking, runner ranking, learning|mumismo@gmail.com|Jordi Polo}}&lt;br /&gt;
{{FeatureInProgress|Krunner|SearchMatch configuration|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Krunner|Simple learning|mumismo@gmail.com|Jordi Polo}}&lt;br /&gt;
{{FeatureTodo|Krunner|Simple GUI for above options|mumismo@gmail.com|Jordi Polo}}&lt;br /&gt;
{{FeatureTodo|Krunner|Runners able to share parsing|mumismo@gmail.com|Jordi Polo}}&lt;br /&gt;
{{FeatureTodo|Krunner|Noun-Verb support|ryan.bitanga@gmail.com|Ryan P. Bitanga}}&lt;br /&gt;
{{FeatureTodo|Krunner|Implement Nuno's UI polishings|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Krunner|Runtime syntax documentation|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Krunner|Runner configuration|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Krunner|Search set paging|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|KRunner|runner for the plasma dbus interface|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
|- border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; style=&amp;quot;text-align: center&amp;quot; |Plasma - Priority Features&lt;br /&gt;
{{FeatureInProgress|Plasma|Welcome plasmoid|aseigo@kde.org|Aaron Seigo}}{{FeatureInProgress|Plasma|JOLIE Integration|ervin@kde.org|Kevin Ottens}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Notification plasmoid|dimsuzkde@gmail.com|Dmitry Suzdalev}}&lt;br /&gt;
{{FeatureTodo|KWin|Make it possible to focus plasma panels|chanika@gmail.com|Chani}}&lt;br /&gt;
{{FeatureTodo|Plasma|panel-&amp;gt;desktop dragging|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|Expand cashew to full action bar when zoomed out|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Plasmagik packaging (and package classes)|riccardo@kde.org|Riccardo Iaconelli}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Networkmanager Plasmoid and DataEngine|cblauvelt@gmail.com|Christopher Blauvelt}}&lt;br /&gt;
{{FeatureInProgress|Plasma|New ECMA Script Scriptengines|richmoore44@gmail.com|Richard Moore}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Extenders|r.scheepmaker@student.utwente.nl|Rob Scheepmaker}}&lt;br /&gt;
{{FeatureTodo|Plasma|Wallpaper plugins|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|Separate Desktop Settings from DesktopContainment|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|Script Security Framework|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Python support|simon@simonzone.com|Simon Edwards}}&lt;br /&gt;
|- border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; style=&amp;quot;text-align: center&amp;quot; |Plasma&lt;br /&gt;
{{FeatureDone|Plasma|Plasma Popup Tips|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureDone|Plasma|Collapsing Applet convenience class|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
&lt;br /&gt;
{{FeatureInProgress|Plasma|Taskbar grouping|hrigi_1@hotmail.com|Christian Mollekopf}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Weather plasmoid|shawn.starr@rogers.com|Shawn Starr}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Small Form Factors|m.kruisselbrink@student.tue.nl|Marijn Kruisselbrink}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Plasma On Screensaver|chanika@gmail.com|Chani Armitage}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Website update|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Grid applet|sebas@kde.org|Sebastian Kügler}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Techbase Tutorials|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|Context menu plugins|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|Add New Widgets: Pluggable widget browser|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|Activity&amp;lt;-&amp;gt;Virtual Desktop Affinity|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|Optional Per-Virtual Desktop DesktopView|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|Make non-SVG painting in Plasma low-color and non-anim friendly|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|Runtime DataEngine documentation (sources, usage, etc)|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|Panel Autohide|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|Keyboard Shortcut Config UI|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|Systray++ Spec|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|Save icon positioning in folderview|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|physics-based animator|riccardo@kde.org|Riccardo Iaconelli}}&lt;br /&gt;
{{FeatureTodo|Plasma|New wallpapers|riccardo@kde.org|Riccardo Iaconelli}}&lt;br /&gt;
{{FeatureTodo|Plasma|Preserve wallpaper choice by copying user paper to home dir|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|New way of handling wallpapers and different sizes (package format, and so on...)|riccardo@kde.org|Riccardo Iaconelli}}&lt;br /&gt;
{{FeatureTodo|Plasma|Top-level windows plasmoids|riccardo@kde.org|Riccardo Iaconelli}}&lt;br /&gt;
{{FeatureTodo|Plasma|drop indicator in panel|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|improve usability of appletbrowser delete button|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|adding containments from the appletbrowser (and remove the &amp;quot;add panel&amp;quot; from DefaultDeskrop)|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|Expand cashew to cover the containment when fully zoomed out|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|highlight the applet with active keyboard shortcuts|chanika@gmail.com|Chani}}&lt;br /&gt;
{{FeatureTodo|Plasma|dbus interface|chanika@gmail.com|Chani}}&lt;br /&gt;
{{FeatureTodo|Plasma|make the panel controller a bit more usable|notmart@gmail.com|Marco Martin}}&lt;br /&gt;
{{FeatureTodo|Plasma|nicely draw the desktop toolbox when it's moved because of a panel|notmart@gmail.com|Marco Martin}}&lt;br /&gt;
{{FeatureTodo|Plasma|theme Plasma::PushButton with svg|notmart@gmail.com|Marco Martin}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Tabbar widget derived from QTabBar and themed with svg|notmart@gmail.com|Marco Martin}}&lt;br /&gt;
{{FeatureTodo|Plasma|Complete the panel size sliders feature: an applet can ask the panel to resize|notmart@gmail.com|Marco Martin}}&lt;br /&gt;
{{FeatureInProgress|Plasma|New theming capabilities by expanding the lover level theming classes (Theme and PanelSvg)|notmart@gmail.com|Marco Martin}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdepimlibs =&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 !! Project !! Description !! Contact&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdenetwork =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureInProgress|Kopete|MSNP15 implementation for MSN|mattr@kde.org|Matt Rogers}}&lt;br /&gt;
{{FeatureInProgress|Kopete|UPnp Support|mattr@kde.org|Matt Rogers}}&lt;br /&gt;
{{FeatureInProgress|Kopete|Updated contact list interface (uses Qt 4 rather than Qt 3)|mattr@kde.org|Matt Rogers}}&lt;br /&gt;
{{FeatureTodo|Kopete|Update Kopete to better support Decibel|kopete-devel@kde.org|Kopete Developers}}&lt;br /&gt;
{{FeatureInProgress|Kopete|Contacts plasmoid|earthwings@gentoo.org|Dennis Nienhüser}}&lt;br /&gt;
{{FeatureInProgress|KGet|MultiSource-Downloading|l.appelhans@gmx.de|Lukas Appelhans}}&lt;br /&gt;
{{FeatureInProgress|KGet|Support mms://-protocol, see https://launchpad.net/libmms|l.appelhans@gmx.de|Lukas Appelhans}}&lt;br /&gt;
{{FeatureTodo|KGet|MLDonkey-Plugin based on libkmldonkey|l.appelhans@gmx.de|Lukas Appelhans}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Network Manager Applet|cblauvelt@gmail.com|Christopher Blauvelt}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdepim =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureInProgress|Akregator|Support for syncing the feed list with Google Reader |osterfeld@kde.org|Frank Osterfeld}}&lt;br /&gt;
{{FeatureInProgress|Kleopatra|OpenPGP support|marc@kdab.net|Marc Mutz (Gpg4win)}}&lt;br /&gt;
{{FeatureInProgress|KNotes|Zeroconf support for sending notes on LAN|qbast@go2.pl|Jakub Stachowski}}&lt;br /&gt;
{{FeatureInProgress|Kontact|New Planner summary; combines Appointment+To-do+SpecialDates into 1 pretty summary|winter@kde.org|Allen Winter}}&lt;br /&gt;
{{FeatureInProgress|KPilot|Finish Keyring conduit, base conduit code and test cases, category syncing|jkasper@kde.org|Jason 'vanRijn' Kasper}}&lt;br /&gt;
{{FeatureTodo|Akregator|Basic support for enclosures (Displaying links, mimetype and size)|osterfeld@kde.org|Frank Osterfeld}}&lt;br /&gt;
{{FeatureTodo|[http://kblogger.pwsp.net KBlogger]|KBlogger, a blogging application| christian_weilbach@.web.de|Christian Weilbach}}&lt;br /&gt;
{{FeatureTodo|Kleopatra|Konqueror and Dolphin Kleopatra plugins|marc@kdab.net|Marc Mutz (Gpg4win)}}&lt;br /&gt;
{{FeatureTodo|KMail|Aggregated attachment view in the mail header area of the reader window|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureTodo|Kontact|Support for Kontact wide profiles|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureTodo|KOrganizer|Drag and drop in the free-busy view|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureTodo|KOrganizer|Support for comments in replies to invitations|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureTodo|KOrganizer|Support for extended free-busy lists|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureTodo|KPilot|Port old conduits to new base conduit architecture and KDE4/Qt4|jkasper@kde.org|Jason 'vanRijn' Kasper}}&lt;br /&gt;
{{FeatureTodo|KBlogger|Port to use KRichTextEdit (Or KMEditor)|steveire@gmail.com|Stephen Kelly}}&lt;br /&gt;
{{FeatureTodo|KNode|Port to use KRichTextEdit (Or KMEditor)|steveire@gmail.com|Stephen Kelly}}&lt;br /&gt;
&lt;br /&gt;
{{FeatureTodo|Kjots| Import notes from KNotes as KJots pages. |steveire@gmail.com|Stephen Kelly}}&lt;br /&gt;
{{FeatureTodo|Kjots| Email KJots pages using default mail client ({{bug|124509}}. |steveire@gmail.com|Stephen Kelly}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdeutils =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureTodo|Power Manager|import either Guidance Power Manager or move kde4powersaver into kdeutils|?|?}}&lt;br /&gt;
{{FeatureTodo|Okteta|add Kate-like search tool|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|refactor KByteArrayView|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|add support for memory mapping of files|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|parameter dialog for &amp;quot;Copy as...&amp;quot;|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|add support for jobs like io, printing, string search or filter|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdebindings =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureInProgress|Smoke|Wrap some more APIs (at least Akanodi for all languages and Plasma for C#)|kde-bindings@kde.org|KDE-bindings developers}}&lt;br /&gt;
{{FeatureTodo|krossjava|Integrate into e.g. SuperKaramba and fix issues that show up.|mail@dipe.org|Sebastian Sauer}}&lt;br /&gt;
{{FeatureTodo|krossjava|Documentation++|mail@dipe.org|Sebastian Sauer}}&lt;br /&gt;
{{FeatureInProgress|PyKDE|KCM support and other plugins|simon@simonzone.com|Simon Edwards}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdegames =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureInProgress|libkdegames|New highscore management system|milliams|Matt Williams}}&lt;br /&gt;
{{FeatureDone|kdiamond|Drag jewels|majewsky@gmx.net|Stefan Majewsky}}&lt;br /&gt;
{{FeatureTodo|kdiamond|Optional OpenGL rendering|majewsky@gmx.net|Stefan Majewsky}}&lt;br /&gt;
{{FeatureInProgress|ksirk|Map scrolling arrows|kleag@free.fr|Gaël de Chalendar}}&lt;br /&gt;
{{FeatureTodo|ksirk|KHotNewStuff skins|kleag@free.fr|Gaël de Chalendar}}&lt;br /&gt;
{{FeatureTodo|ksirk|Jabber based net game finding|kleag@free.fr|Gaël de Chalendar}}&lt;br /&gt;
{{FeatureTodo|ksirk|Use only names in skins instead of numeric ids|kleag@free.fr|Gaël de Chalendar}}&lt;br /&gt;
{{FeatureTodo|ksirk|Skins editor|kleag@free.fr|Gaël de Chalendar}}&lt;br /&gt;
{{FeatureInProgress|ktron|Port and remake the KTron game for KDE 4.2|legolas@legolasweb.nl|Stas Verberkt}}&lt;br /&gt;
{{FeatureTodo|KNetWalk|Support for custom and non-square board sizes|fela.kde@gmail.com|Fela Winkelmolen}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdesdk =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureDone|Kate|Port and reenable the Snippets plugin.|jpetso@gmx.at|Jakob Petsovits}}&lt;br /&gt;
{{FeatureInProgress|perldoc KIOSlave|Move perldoc KIOSlave from playground to kdesdk (awaiting feature window opening)|michael.pyne&amp;amp;#64;kdemail&amp;amp;#46;net|Michael Pyne}}&lt;br /&gt;
{{FeatureInProgress|Lokalize|XLIFF support|shafff-at-ukr.net|Nick Shaforostoff}}&lt;br /&gt;
{{FeatureInProgress|Lokalize|various Translation Memory enhancements|shafff-at-ukr.net|Nick Shaforostoff}}&lt;br /&gt;
{{FeatureInProgress|Lokalize|wrap all windows belonging to one project into one MDI window|shafff-at-ukr.net|Nick Shaforostoff}}&lt;br /&gt;
{{FeatureTodo|Lokalize|Kross-based scripting|shafff-at-ukr.net|Nick Shaforostoff}}&lt;br /&gt;
{{FeatureTodo|Lokalize|QA: glossary checklists|shafff-at-ukr.net|Nick Shaforostoff}}&lt;br /&gt;
{{FeatureTodo|KAppTemplate|Add DBUS support in templates|annma@kde.org|Anne-Marie Mahfouf}}&lt;br /&gt;
{{FeatureDone|Umbrello|Port code generation wizard to QWizard and replace all q3 widgets|andi.fischer@hispeed.ch|Andi Fischer}}&lt;br /&gt;
{{FeatureInProgress|Umbrello|Replace all q3 widgets in the refactoring assistant|andi.fischer@hispeed.ch|Andi Fischer}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdeedu =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureInProgress|KEduca|Rewrite of the classic test writing/taking application|matt@milliams.com|Matt Williams}}&lt;br /&gt;
{{FeatureTodo|KLettres|Number support|annma@kde.org|Anne-Marie Mahfouf}}&lt;br /&gt;
{{FeatureTodo|KLettres|Theme manager|annma@kde.org|Anne-Marie Mahfouf}}&lt;br /&gt;
{{FeatureInProgress|KHangMan|Add a Open File action|annma@kde.org|Anne-Marie Mahfouf}}&lt;br /&gt;
{{FeatureTodo|KHangMan|Integrate an editor|annma@kde.org|Anne-Marie Mahfouf}}&lt;br /&gt;
{{FeatureTodo|KHangMan|Plasmoid|annma@kde.org|Anne-Marie Mahfouf}}&lt;br /&gt;
{{FeatureTodo|KHangMan|Theme manager|annma@kde.org|Anne-Marie Mahfouf}}&lt;br /&gt;
{{FeatureTodo|KLettres|Visual indicator when letter is wrong|annma@kde.org|Anne-Marie Mahfouf}}&lt;br /&gt;
{{FeatureTodo|Kalzium|Port Kalzium's periodic table to use new QGraphicsView.|marcus@cryos.org|Marcus D. Hanwell}}&lt;br /&gt;
{{FeatureInProgress|Kalzium|Plasmoid to access Kalzium database|cniehaus@kde.org|Carsten Niehaus}}&lt;br /&gt;
{{FeatureTodo|Step|Improve GUI for creating softbody|ksvladimir@gmail.com|Vladimir Kuznetsov}}&lt;br /&gt;
{{FeatureTodo|Step|Use common constraints handling code for collisions|ksvladimir@gmail.com|Vladimir Kuznetsov}}&lt;br /&gt;
{{FeatureInProgress|KAlgebra|New parser using QLALR|aleixpol@gmail.com|Aleix Pol}}&lt;br /&gt;
{{FeatureInProgress|Parley|Declensions|frederik.gladhorn@kdemail.net|Frederik Gladhorn}}&lt;br /&gt;
{{FeatureInProgress|KStars|Display millions of stars|akarshsimha@gmail.com|Akarsh Simha}}&lt;br /&gt;
{{FeatureInProgress|KStars|Tool to predict Conjunctions|akarshsimha@gmail.com|Akarsh Simha}}&lt;br /&gt;
{{FeatureInProgress|KStars|Earth Satellites|kstars@30doradus.org|Jason Harris}}&lt;br /&gt;
{{FeatureInProgress|KStars|Sky Calendar Tool|kstars@30doradus.org|Jason Harris}}&lt;br /&gt;
{{FeatureTodo|KStars|Marble widget for Geolocation tool|kstars@30doradus.org|Jason Harris}}&lt;br /&gt;
{{FeatureTodo|KStars|Better printed star charts|kstars@30doradus.org|Jason Harris}}&lt;br /&gt;
{{FeatureTodo|KStars|Better rendering of comets/asteroids|kstars@30doradus.org|Jason Harris}}&lt;br /&gt;
{{FeatureTodo|KStars|Texture mapping of the skymap???|kstars@30doradus.org|Jason Harris}}&lt;br /&gt;
{{FeatureTodo|KStars|Improve Observing List Wizard|akarshsimha@gmail.com|Akarsh Simha}}&lt;br /&gt;
{{FeatureTodo|KStars|Display Comet Magnitudes whenever possible|akarshsimha@gmail.com|Akarsh Simha}}&lt;br /&gt;
{{FeatureTodo|KStars|Include HD Catalog Numbers (in search, in display)|akarshsimha@gmail.com|Akarsh Simha}}&lt;br /&gt;
{{FeatureTodo|KStars|Tool to suggest star-hopping techniques???|akarshsimha@gmail.com|Akarsh Simha}}&lt;br /&gt;
{{FeatureTodo|KStars|Extend conjunction tool to have one object unspecified, but have a genre of objects specified instead|akarshsimha@gmail.com|Akarsh Simha}}&lt;br /&gt;
{{FeatureTodo|Marble|Export map to MxN pixel bitmap|inge@lysator.liu.se|Inge Wallin}}&lt;br /&gt;
{{FeatureTodo|Marble|Support for MarbleWidget::setEnabled( bool )|inge@lysator.liu.se|Inge Wallin}}&lt;br /&gt;
{{FeatureTodo|Marble|Map Contents translation|tackat@kde.org|Torsten Rahn}}&lt;br /&gt;
{{FeatureInProgress|Marble|Layer Management Class|rahn@kde.org|Torsten Rahn}}&lt;br /&gt;
{{FeatureInProgress|Marble|Plugin architecture for map layers|rahn@kde.org|Torsten Rahn}}&lt;br /&gt;
{{FeatureInProgress|Marble|DGML2 Support|tackat@kde.org|Torsten Rahn}}&lt;br /&gt;
{{FeatureInProgress|Marble|KDE-Version settings dialog|tackat@kde.org|Torsten Rahn}}&lt;br /&gt;
{{FeatureInProgress|Marble|Port authors list from the Qt-About dialog to the KDE-About dialog|tackat@kde.org|Torsten Rahn}}&lt;br /&gt;
{{FeatureInProgress|Marble|Qt-Version settings dialog|tackat@kde.org|Torsten Rahn}}&lt;br /&gt;
{{FeatureInProgress|Marble|Improved KML support|tackat@kde.org|Torsten Rahn}}&lt;br /&gt;
{{FeatureInProgress|Marble|OpenStreetMap support using original OSM tiles|tackat@kde.org|Torsten Rahn}}&lt;br /&gt;
{{FeatureInProgress|Marble|Real Time Cloud-Cover|tackat@kde.org|David Roberts / Torsten Rahn}}&lt;br /&gt;
{{FeatureInProgress|Marble|Mercator Projection|inge@lysator.liu.se|Inge Wallin}}&lt;br /&gt;
{{FeatureInProgress|Marble|More generic projection support|inge@lysator.liu.se|Inge Wallin}}&lt;br /&gt;
{{FeatureInProgress|Marble|Usage of Marble in &lt;br /&gt;
non-widgets|inge@lysator.liu.se|Inge Wallin}}&lt;br /&gt;
{{FeatureTodo|Kig|Properties dialog for objects.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureTodo|Kig|Improve construction of bisect lines.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureTodo|Kig|Improve feedback when constructing objects.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureTodo|Kig|More geometric objects.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureTodo|Kig|Script objects as macros (to be reused more than once).|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureTodo|Kig|Improve the Cabri import filter.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureTodo|KTurtle|Export canvas as image|piacentini@kde.org|Mauricio Piacentini}}&lt;br /&gt;
{{FeatureTodo|KTurtle|Optional rulers/grid for canvas units|piacentini@kde.org|Mauricio Piacentini}}&lt;br /&gt;
{{FeatureTodo|KTurtle|Add command line|piacentini@kde.org|Mauricio Piacentini}}&lt;br /&gt;
{{FeatureTodo|KTurtle|Add a color picker|nielsslot@gmail.com|Niels Slot}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdemultimedia =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureInProgress|Dragon Player|Make Dragon indipendent from Xine|ian.monroe@gmail.com|Ian Monroe}}&lt;br /&gt;
{{FeatureInProgress|Dragon Player|File Manager|ian.monroe@gmail.com|Ian Monroe}}&lt;br /&gt;
{{FeatureInProgress|Dragon Player|play media dialog|ian.monroe@gmail.com|Ian Monroe}}&lt;br /&gt;
{{FeatureInProgress|Dragon Player|slider changes|ian.monroe@gmail.com|Ian Monroe}}&lt;br /&gt;
{{FeatureInProgress|Dragon Player|show info while playing audio files|ian.monroe@gmail.com|Ian Monroe}}&lt;br /&gt;
{{FeatureTodo|JuK|Remove Qt/KDE3 support lib requirements|michael.pyne@kdemail.net|Michael Pyne}}&lt;br /&gt;
{{FeatureTodo|JuK|Allow setting covers directly from URLs supported by KIO - drag/drop already allows this however|michael.pyne@kdemail.net|Michael Pyne}}&lt;br /&gt;
{{FeatureTodo|JuK|Use XCOMPOSITE real transparency when available for the track announcement popup|michael.pyne@kdemail.net|Michael Pyne}}&lt;br /&gt;
{{FeatureTodo|JuK|Allow disabling crossfade|michael.pyne@kdemail.net|Michael Pyne}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdeaccessibility =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureTodo|KMagnifier|Refactor color menu, re-add invert, break current color blindness code into &amp;quot;daltonize&amp;quot; and &amp;quot;simulate&amp;quot;|mw_triad@users.sourceforge.net|Matthew Woehlke}}&lt;br /&gt;
{{FeatureTodo|KMagnifier|Add color-shift modes to help people with color blindness|mw_triad@users.sourceforge.net|Matthew Woehlke}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdegraphics =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureDone|KSnapshot|Add support for grabbing a single screen in multihead|rich@kde.org|Richard Moore}}&lt;/div&gt;</summary>
		<author><name>Shaforostoff</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Development/Tutorials/Localization/i18n</id>
		<title>Development/Tutorials/Localization/i18n</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Development/Tutorials/Localization/i18n"/>
				<updated>2008-05-31T20:37:55Z</updated>
		
		<summary type="html">&lt;p&gt;Shaforostoff: /* Standard Context For Common Phrases */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Template:I18n/Language Navigation Bar|Development/Tutorials/Localization/i18n}}&lt;br /&gt;
&lt;br /&gt;
{{TutorialBrowser|&lt;br /&gt;
&lt;br /&gt;
series=Localization|&lt;br /&gt;
&lt;br /&gt;
pre=[[../Unicode|Introduction to Unicode]] is recommended, though not required|&lt;br /&gt;
&lt;br /&gt;
name=Writing Applications With Localization In Mind|&lt;br /&gt;
&lt;br /&gt;
next=[[../i18n_Mistakes|Avoiding Common Localization Pitfalls]]|&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Abstract ==&lt;br /&gt;
&lt;br /&gt;
Reaching a broad audience of users and developers requires that your software can be translated and otherwise shaped at runtime to be linguistically and culturally relevant to whomever is sitting in front of the computer. This is the realm of localization and this tutorial steps you through what is needed to make your application localizable.&lt;br /&gt;
&lt;br /&gt;
== What is Internationalization and Localization? ==&lt;br /&gt;
&lt;br /&gt;
Internationalization, or i18n ('i', followed by 18 letters, then an 'n'), is the process of writing your application so that it can be run in any locale. This means taking into account such things as:&lt;br /&gt;
* textual messages that are displayed to the user&lt;br /&gt;
* data input from the user, files and other sources&lt;br /&gt;
* format of dates, numbers, currency, dates, etc.&lt;br /&gt;
&lt;br /&gt;
Localization, or l10n ('l', followed by 10 characters, then an 'n'), is the process of taking an internationalized application and adapting it for a specific locale.&lt;br /&gt;
&lt;br /&gt;
Generaly speaking, programmers internationalize their applications and translation teams localize them.&lt;br /&gt;
&lt;br /&gt;
== Why is This Important? ==&lt;br /&gt;
&lt;br /&gt;
KDE development happens primarily in English as this allows the broadest reach into the development and translation communities. However, English is not the primary language of most people on the planet. In fact, fewer than 8% of humanity speaks English and less than 5% speak it as their mother tongue. Even on the Internet, only 35% people who are online use English as their primary language and as more and more of the world gets wired this number is only decreasing. Additionally most languages, including 9 out of the 10 most common languages, use non-ASCII characters in their written form. It is easy to see, then, why it has become a necessity to provide localized software. &lt;br /&gt;
&lt;br /&gt;
As an international project that spans the globe, such localization is a core value within the KDE culture. In fact, while many KDE developers write their software in English they use the desktop in their native locale.&lt;br /&gt;
&lt;br /&gt;
== Translatable Code Using i18n() ==&lt;br /&gt;
&lt;br /&gt;
To ensure your application is ready to be localized you have to follow a few simple rules. All user-visible strings in your application should be translated before they are displayed on the user's screen, exceptions to this being debugging messages, configuration keys and similar types of text data.&lt;br /&gt;
&lt;br /&gt;
KDE provides the &amp;lt;tt&amp;gt;KLocale&amp;lt;/tt&amp;gt; class as part of &amp;lt;tt&amp;gt;libkdecore&amp;lt;/tt&amp;gt; to facilitate the technical details of localization. KLocale makes it as easy as possible for developers to make their code i18n aware, but there are some things you need to be aware of so that applications are usable in other languages and countries.&lt;br /&gt;
&lt;br /&gt;
Access to a global &amp;lt;tt&amp;gt;KLocale&amp;lt;/tt&amp;gt; object is provided via &amp;lt;tt&amp;gt;KGlobal::locale()&amp;lt;/tt&amp;gt;. This &amp;lt;tt&amp;gt;KLocale&amp;lt;/tt&amp;gt; object is created automatically by &amp;lt;tt&amp;gt;KInstance&amp;lt;/tt&amp;gt; and takes care of all user i18n related settings. It is deleted automatically on application exit.&lt;br /&gt;
&lt;br /&gt;
Translations are made possible by the &amp;lt;tt&amp;gt;QString i18n(const char*)&amp;lt;/tt&amp;gt; method, defined in &amp;lt;tt&amp;gt;klocalizedstring.h&amp;lt;/tt&amp;gt;, which you must wrap all strings that should be displayed in. The QString returned by &amp;lt;tt&amp;gt;i18n()&amp;lt;/tt&amp;gt; is the translated (if necessary) string. This makes creating translatable widgets as simple as in this example:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code cppqt&amp;gt;&lt;br /&gt;
#include &amp;lt;klocalizedstring.h&amp;gt;&lt;br /&gt;
[...]&lt;br /&gt;
QPushButton* myButton = new QPushButton(i18n(&amp;quot;Translate this!&amp;quot;));&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
QString's native Unicode support ensures that all translations are represented correctly. All string handling done by your application should therefore use QString.&lt;br /&gt;
&lt;br /&gt;
{{tip|If the string to be translated contains any non-UTF8 characters, use the utf8() method to get a char*.}}&lt;br /&gt;
&lt;br /&gt;
=== ki18n ===&lt;br /&gt;
&lt;br /&gt;
The &amp;lt;tt&amp;gt;i18n()&amp;lt;/tt&amp;gt; method requires that a &amp;lt;tt&amp;gt;KInstance&amp;lt;/tt&amp;gt; (e.g. &amp;lt;tt&amp;gt;KApplication&amp;lt;/tt&amp;gt;) has been created. For any strings that are created prior  to this there is another method provided: &amp;lt;tt&amp;gt;ki18n()&amp;lt;/tt&amp;gt;. This allows one to mark strings that should be translated later as such. The ki18n() will return a &amp;lt;tt&amp;gt;KLocalizedString&amp;lt;/tt&amp;gt;, which can be finalized into a QString (i.e. translated for real) after the KInstance has been created, using its toString() method.&lt;br /&gt;
&lt;br /&gt;
ki18n() is typically used for strings given to KAboutData, because it is constructed before the KApplication and you can use i18n() only after the construction of the KApplication. Other than these special cases, it is always safe to use i18n() if you are sure that the code will be executed after construction of KApplication or some other KInstance.&lt;br /&gt;
&lt;br /&gt;
=== Adding Context ===&lt;br /&gt;
&lt;br /&gt;
There is an extended version of &amp;lt;tt&amp;gt;i18n()&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;i18nc()&amp;lt;/tt&amp;gt; which takes two &amp;lt;tt&amp;gt;const char*&amp;lt;/tt&amp;gt; arguments. The first argument is an additional contextual description of the second string which will be translated. The first  string is used to find the proper corresponding translation at run-time and is shown to translators to help them understand the meaning of the string. &lt;br /&gt;
&lt;br /&gt;
Use &amp;lt;tt&amp;gt;i18nc()&amp;lt;/tt&amp;gt; whenever the purpose of the text might be ambiguous without further context. For example, consider a context menu in a file manager with an entry called &amp;quot;View&amp;quot; which opens a viewer for the currently selected file. In this context &amp;quot;View&amp;quot; is a verb. However, the same application also may have a menu called &amp;quot;View&amp;quot; in the menubar. In that context &amp;quot;View&amp;quot; is a noun. In the English version of the application everything looks fine, but in most other languages one of the two &amp;quot;View&amp;quot; strings will be incorrect.&lt;br /&gt;
&lt;br /&gt;
Additionally, translators sometimes need extra help in understanding what the text is actually referring to during the translation process.&lt;br /&gt;
&lt;br /&gt;
In the file manager example above, one might therefore write:&lt;br /&gt;
  &lt;br /&gt;
&amp;lt;code cppqt&amp;gt;contextMenu-&amp;gt;addAction(i18nc(&amp;quot;verb, to view something&amp;quot;, &amp;quot;View&amp;quot;));&lt;br /&gt;
viewMenu-&amp;gt;addAction(i18nc(&amp;quot;noun, the view&amp;quot;, &amp;quot;View&amp;quot;));&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Now the two strings will be properly translatable, both by the human translators and at runtime by KLocale.&lt;br /&gt;
&lt;br /&gt;
Use this form of i18n whenever the string to translate is short or the meaning is hard to discern when the context is not exactly known. For example:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code cppqt&amp;gt;QString up = i18nc(&amp;quot;Go one directory up in the hierarchy&amp;quot;, &amp;quot;Up&amp;quot;);&lt;br /&gt;
QString relation = i18nc(&amp;quot;A person's name and their familial relationship to you.&amp;quot;, &amp;quot;%1 is your %2&amp;quot;, name, relationship);&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{note|There is also a ki18nc(&amp;quot;context&amp;quot;,&amp;quot;text&amp;quot;) method for providing context to strings which are constructed before the KInstance. It returns a KLocalizedString, so use the toString() method afterwards to convert it into a QString.}}&lt;br /&gt;
&lt;br /&gt;
Contexts can also be added when building forms in Qt Designer. Each widget label, including tooltips and whatsthis texts, has a &amp;quot;comment&amp;quot; attribute, which will serve the same purpose as first argument to &amp;lt;tt&amp;gt;i18nc()&amp;lt;/tt&amp;gt; call.&lt;br /&gt;
&lt;br /&gt;
=== Standard Context For Common Phrases ===&lt;br /&gt;
&lt;br /&gt;
Below is a chart showing some common words and phrases in English and the context that must be used with them to ensure proper translation of them in other languages.&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|+ Standard Contexts&lt;br /&gt;
|-&lt;br /&gt;
! Phrase !! Context !! i18nc Call !! Example&lt;br /&gt;
|-&lt;br /&gt;
| Busy || Refering to a person || &amp;lt;tt&amp;gt;i18nc(&amp;quot;A person is busy&amp;quot;, &amp;quot;Busy&amp;quot;)&amp;lt;/tt&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| Busy || Refering to a thing || &amp;lt;tt&amp;gt;i18nc(&amp;quot;A thing is busy&amp;quot;, &amp;quot;Busy&amp;quot;)&amp;lt;/tt&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| Color || Color mode, as opposed to Grayscale || &amp;lt;tt&amp;gt;i18nc(&amp;quot;Not Grayscale&amp;quot;, &amp;quot;Color&amp;quot;)&amp;lt;/tt&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| Creator || Refering to a person || &amp;lt;tt&amp;gt;i18nc(&amp;quot;A person who creates&amp;quot;, &amp;quot;Creator&amp;quot;)&amp;lt;/tt&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| Creator || Refering to software || &amp;lt;tt&amp;gt;i18nc(&amp;quot;Software&amp;quot;, &amp;quot;Creator&amp;quot;)&amp;lt;/tt&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| Display || Refering to hardware || &amp;lt;tt&amp;gt;i18nc(&amp;quot;Hardware display&amp;quot;, &amp;quot;Display&amp;quot;)&amp;lt;/tt&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| Editor || Refering to a person || &amp;lt;tt&amp;gt;i18nc(&amp;quot;A person who edits&amp;quot;, &amp;quot;Editor&amp;quot;)&amp;lt;/tt&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| Editor || Refering to software || &amp;lt;tt&amp;gt;i18nc(&amp;quot;Software&amp;quot;, &amp;quot;Editor&amp;quot;)&amp;lt;/tt&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| Line || Refering to drawing || &amp;lt;tt&amp;gt;i18nc(&amp;quot;Draw a line&amp;quot;, &amp;quot;Line&amp;quot;)&amp;lt;/tt&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| Line || Refering to text || &amp;lt;tt&amp;gt;i18nc(&amp;quot;Line of text&amp;quot;, &amp;quot;Line&amp;quot;)&amp;lt;/tt&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| Name || Refering to a name of thing || &amp;lt;tt&amp;gt;i18nc(&amp;quot;A thing's name&amp;quot;, &amp;quot;Name&amp;quot;) || In theme change dialog: i18nc(&amp;quot;Theme name&amp;quot;, &amp;quot;Name&amp;quot;)&amp;lt;/tt&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| Name || Refering to first name and last name of person || &amp;lt;tt&amp;gt;i18nc(&amp;quot;Person's first and last name&amp;quot;, &amp;quot;Name&amp;quot;) || In KAddessbook contact edit dialog: i18nc(&amp;quot;Person's first and last name&amp;quot;, &amp;quot;Name&amp;quot;)&amp;lt;/tt&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| New || Create smth || &amp;lt;tt&amp;gt;i18nc(&amp;quot;Action&amp;quot;, &amp;quot;New&amp;quot;)&amp;lt;/tt&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| New || Status || &amp;lt;tt&amp;gt;i18nc(&amp;quot;New mail message&amp;quot;, &amp;quot;New&amp;quot;)&amp;lt;/tt&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| No || Answer to a question || &amp;lt;tt&amp;gt;i18nc(&amp;quot;Answer to a question&amp;quot;, &amp;quot;No&amp;quot;)&amp;lt;/tt&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| No || Availability of a thing || &amp;lt;tt&amp;gt;i18nc(&amp;quot;Availability&amp;quot;, &amp;quot;No&amp;quot;)&amp;lt;/tt&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| (Re)load || (Re)load a document, medium etc. || &amp;lt;tt&amp;gt;i18nc(&amp;quot;(Re)load a document&amp;quot;, &amp;quot;(Re)load&amp;quot;)&amp;lt;/tt&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| (Re)load || (Re)start a program, daemon etc. || &amp;lt;tt&amp;gt;i18nc(&amp;quot;(Re)start a program&amp;quot;, &amp;quot;(Re)load&amp;quot;)&amp;lt;/tt&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| Title || Refering to a person || &amp;lt;tt&amp;gt;i18nc(&amp;quot;A person's title&amp;quot;, &amp;quot;Title&amp;quot;)&amp;lt;/tt&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| Title || Refering to a thing || &amp;lt;tt&amp;gt;i18nc(&amp;quot;A thing's title&amp;quot;, &amp;quot;Title&amp;quot;)&amp;lt;/tt&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| Trash || Refering to the action of emptying || &amp;lt;tt&amp;gt;i18nc(&amp;quot;The trash is not empty. Empty it&amp;quot;, &amp;quot;Empty&amp;quot;)&amp;lt;/tt&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| Trash || Refering to the state of being empty || &amp;lt;tt&amp;gt;i18nc(&amp;quot;The trash is empty. This is not an action, but a state&amp;quot;, &amp;quot;Empty&amp;quot;)&amp;lt;/tt&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| Volume || Refering to sound || &amp;lt;tt&amp;gt;i18nc(&amp;quot;Sound volume&amp;quot;, &amp;quot;Volume&amp;quot;)&amp;lt;/tt&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| Volume || Refering to a filesystem || &amp;lt;tt&amp;gt;i18nc(&amp;quot;Filesystem volume&amp;quot;, &amp;quot;Volume&amp;quot;)&amp;lt;/tt&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| Volume || Refering to books || &amp;lt;tt&amp;gt;i18nc(&amp;quot;Book volume&amp;quot;, &amp;quot;Volume&amp;quot;)&amp;lt;/tt&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| Yes || Answer to a question || &amp;lt;tt&amp;gt;i18nc(&amp;quot;Answer to a question&amp;quot;, &amp;quot;Yes&amp;quot;)&amp;lt;/tt&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| Yes || Availability of a thing|| &amp;lt;tt&amp;gt;i18nc(&amp;quot;Availability&amp;quot;, &amp;quot;Yes&amp;quot;)&amp;lt;/tt&amp;gt;&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Plurals ===&lt;br /&gt;
&lt;br /&gt;
Plurals are handled differently from language to language. Many languages have different plurals for 2, 10, 20, 100, etc. When the string you want translated refers to more than one item, you must use the third form of &amp;lt;tt&amp;gt;i18n&amp;lt;/tt&amp;gt;,  the &amp;lt;tt&amp;gt;i18np()&amp;lt;/tt&amp;gt;. It takes the singular and plural English forms as its first two arguments, followed by any substitution arguments as usual, but at least one of which should be integer-valued. For example:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code cppqt&amp;gt;msgStr = i18np(&amp;quot;1 image in album %2&amp;quot;, &amp;quot;%1 images in album %2&amp;quot;, numImages, albumName);&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;i18np()&amp;lt;/tt&amp;gt; gets expanded to as many cases as required by the user's language. In English, this is just two forms while in other languages it may be more, depending on the value of the first integer-valued argument.&lt;br /&gt;
&lt;br /&gt;
Note that this form should be used even if the string always refers to more than one item as some languages use a singular form even when referring to a multiple (typically for 21, 31, etc.). This code:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code cppqt&amp;gt;i18n(&amp;quot;%1 files were deleted&amp;quot;, numFilesDeleted);&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
is therefore incorrect and should instead be:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code cppqt&amp;gt;i18np(&amp;quot;1 file was deleted&amp;quot;, &lt;br /&gt;
     &amp;quot;%1 files were deleted&amp;quot;,&lt;br /&gt;
     numFilesDeleted);&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
To provide context as well as pluralization, use &amp;lt;tt&amp;gt;i18ncp&amp;lt;/tt&amp;gt; as in this example:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code cppqt&amp;gt;i18ncp(&amp;quot;Personal file&amp;quot;, &amp;quot;1 file&amp;quot;, &amp;quot;%1 files&amp;quot;, numFiles);&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Formatting Dates and Numbers ==&lt;br /&gt;
&lt;br /&gt;
When displaying a number to the user, your program must take care of the decimal separator, thousand separator and currency symbol (if any) being used. These symbols differ from region to region. In English speaking countries a dot (.) is used to separate the fractional part of a number, while in some European countries a comma (,) is used instead. Below is a short summary of functions that will help you format the numbers correctly, taking the local conventions into account for you.&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|+ Functions to Format Numbers&lt;br /&gt;
|-&lt;br /&gt;
! Formats&amp;amp;nbsp;a.. !! From&amp;amp;nbsp;a.. !! Function&amp;amp;nbsp;Prototype&lt;br /&gt;
|-&lt;br /&gt;
| Number || String || &amp;lt;pre&amp;gt;QString formatNumber( const QString &amp;amp; numStr )&amp;lt;/pre&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| Number || Integer,&amp;amp;nbsp;double || &amp;lt;pre&amp;gt;formatNumber( double num, &lt;br /&gt;
              int precision = -1 )&amp;lt;/pre&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| Money || String || &amp;lt;pre&amp;gt;formatMoney( const QString &amp;amp; numStr )&amp;lt;/pre&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| Money || Number || &amp;lt;pre&amp;gt;formatMoney( double num, &lt;br /&gt;
             const QString &amp;amp; currency,&lt;br /&gt;
             int digits = -1 )&amp;lt;/pre&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| Date || String || &amp;lt;pre&amp;gt;formatDate( const QDate &amp;amp; pDate,&lt;br /&gt;
            bool shortFormat=false )&amp;lt;/pre&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| Time || QTime || &amp;lt;pre&amp;gt;formatTime( const QTime &amp;amp; pTime, &lt;br /&gt;
            bool includeSecs=false)&amp;lt;/pre&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| Date&amp;amp;nbsp;and&amp;amp;nbsp;time || QDateTime || &amp;lt;pre&amp;gt;formatDateTime( const QDateTime &amp;amp;pDateTime,&lt;br /&gt;
                bool shortFormat = true,&lt;br /&gt;
                bool includeSecs = false )&amp;lt;/pre&amp;gt;&lt;br /&gt;
|}   &lt;br /&gt;
 &lt;br /&gt;
Similar functions exist to read information provided by the user at runtime in their localized format, e.g. readNumber() or readMoney().&lt;br /&gt;
&lt;br /&gt;
== Calendaring ==&lt;br /&gt;
&lt;br /&gt;
Developing applications dealing with dates and time, such as calendars, is a very complex area. Not only may the displayed string containing a date or time may look different based on locale, but one also has to take care of other aspects such as:&lt;br /&gt;
* which day in the week is the first one (cf int weekStartDay()) &lt;br /&gt;
* how many months in a year there are &lt;br /&gt;
* &amp;quot;era&amp;quot;-based calendars &lt;br /&gt;
* whether to use 24-hour time format (cf bool use12Clock()) &lt;br /&gt;
&lt;br /&gt;
KLocale provides, among others, these methods: &lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|+ Calendar Data Functions&lt;br /&gt;
|-                &lt;br /&gt;
! Formats&amp;amp;nbsp;a.. !! From&amp;amp;nbsp;a.. !! Function Prototype&lt;br /&gt;
|-&lt;br /&gt;
| Date || QDate || &amp;lt;pre&amp;gt;formatDate( const QDate &amp;amp; pDate,&lt;br /&gt;
            bool shortFormat=false )&amp;lt;/pre&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| Time || QTime || &amp;lt;pre&amp;gt;formatTime( const QTime &amp;amp; pTime,&lt;br /&gt;
            bool includeSecs=false )&amp;lt;/pre&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| Date&amp;amp;nbsp;and&amp;amp;nbsp;time || QDateTime || &amp;lt;pre&amp;gt;formatDateTime( const QDateTime &amp;amp;pDateTime,&lt;br /&gt;
                bool shortFormat=true,&lt;br /&gt;
                bool includeSecs=false )&amp;lt;/pre&amp;gt;&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{{improve|provide more info on the different calendar systems}}&lt;br /&gt;
&lt;br /&gt;
== Avoiding Common Traps ==&lt;br /&gt;
There are a number of common problems that may prevent an application being properly localized. See [[../i18n Mistakes|Avoiding Common Localization Pitfalls]] to learn more about them, and how to avoid them.&lt;br /&gt;
&lt;br /&gt;
{{note|Thanks to Lukáš Tinkl, Matthias Kiefer and Gary Cramblitt for writing the original version of this tutorial.}}&lt;br /&gt;
&lt;br /&gt;
[[Category:Programming]]&lt;/div&gt;</summary>
		<author><name>Shaforostoff</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Development/Tutorials/Localization/i18n_Semantics</id>
		<title>Development/Tutorials/Localization/i18n Semantics</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Development/Tutorials/Localization/i18n_Semantics"/>
				<updated>2008-05-31T12:06:23Z</updated>
		
		<summary type="html">&lt;p&gt;Shaforostoff: /* Limitations to Use of Semantic Markup */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Abstract ==&lt;br /&gt;
&lt;br /&gt;
Typical way of formatting user visible strings in application interfaces, for a long time has been that of plain text or at most visual markup like HTML tags. In most textual content environments, shift to ''semantic'' markup has been recognized as superior to visual (for example, the Docbook XML for documentation). Why not go down the same road for UI strings?&lt;br /&gt;
&lt;br /&gt;
== Semantic Markup by Examples ==&lt;br /&gt;
&lt;br /&gt;
In the semantic model, user interface strings are marked for their ''context'', and text elements within for their ''meaning'' rather than visual appearance. Consider few i18n examples of usual, non-semantic format:&lt;br /&gt;
&amp;lt;code cpp&amp;gt;&lt;br /&gt;
i18n(&amp;quot;Move&amp;quot;);&lt;br /&gt;
&lt;br /&gt;
i18n(&amp;quot;Descending&amp;quot;);&lt;br /&gt;
&lt;br /&gt;
i18n(&amp;quot;&amp;lt;qt&amp;gt;&amp;lt;b&amp;gt;%1&amp;lt;/b&amp;gt; does not exist&amp;lt;/qt&amp;gt;&amp;quot;, fname);&lt;br /&gt;
&lt;br /&gt;
i18n(&amp;quot;&amp;lt;h1&amp;gt;History Sidebar&amp;lt;/h1&amp;gt; You can configure the history sidebar here.&amp;quot;);&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Using KDE UI Text (KUIT for short) semantic markup, these strings would be formated like this:&lt;br /&gt;
&amp;lt;code cpp&amp;gt;&lt;br /&gt;
i18nc(&amp;quot;@action:button&amp;quot;, &amp;quot;Move&amp;quot;);&lt;br /&gt;
&lt;br /&gt;
i18nc(&amp;quot;@item:inmenu&amp;quot;, &amp;quot;Descending&amp;quot;);&lt;br /&gt;
&lt;br /&gt;
i18nc(&amp;quot;@info&amp;quot;, &amp;quot;&amp;lt;filename&amp;gt;%1&amp;lt;/filename&amp;gt; does not exist&amp;quot;, fname);&lt;br /&gt;
&lt;br /&gt;
i18nc(&amp;quot;@info:whatsthis&amp;quot;,&lt;br /&gt;
      &amp;quot;&amp;lt;title&amp;gt;History Sidebar&amp;lt;/title&amp;gt;&amp;quot;&lt;br /&gt;
      &amp;quot;&amp;lt;para&amp;gt;You can configure the history sidebar here.&amp;lt;/para&amp;gt;&amp;quot;);&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Two distinct differences between ordinary and KUIT markup can be observed.&lt;br /&gt;
&lt;br /&gt;
The first is the use of context i18n calls, the &amp;lt;tt&amp;gt;i18nc()&amp;lt;/tt&amp;gt;, to convey the usage context of the string by means of the ''context marker''. The first message above, &amp;quot;Move&amp;quot;, has been assigned the &amp;lt;tt&amp;gt;@action:button&amp;lt;/tt&amp;gt; marker, where &amp;lt;tt&amp;gt;@action&amp;lt;/tt&amp;gt; is the ''semantic role'' which describes the text as an action to be taken (e.g. operation on data or opening of a new dialog), and &amp;lt;tt&amp;gt;:button&amp;lt;/tt&amp;gt; is the ''interface subcue'' saying that this text is displayed on a pushbutton widget. The second message, &amp;quot;Descending&amp;quot;, has been marked as semantically a list item (&amp;lt;tt&amp;gt;@item&amp;lt;/tt&amp;gt;), displayed in a menu (&amp;lt;tt&amp;gt;:inmenu&amp;lt;/tt&amp;gt;). The interface subcue can be left out if none is appropriate, as has been done in the third message.&lt;br /&gt;
&lt;br /&gt;
The other difference is the use of the semantic tags, which convey the meaning of a word or phrase within the text. The &amp;lt;tt&amp;gt;&amp;lt;filename&amp;gt;%1&amp;lt;/filename&amp;gt;&amp;lt;/tt&amp;gt; part of the third message tells that the substituted text is the name of a file. The &amp;lt;tt&amp;gt;&amp;lt;title&amp;gt;&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;&amp;lt;para&amp;gt;&amp;lt;/tt&amp;gt; tags in the last message clearly lay out structure of a longer informational text.&lt;br /&gt;
&lt;br /&gt;
{{note|The context marker can be added when within some of the standard XML sources too. In Qt Designer forms (&amp;lt;tt&amp;gt;.ui&amp;lt;/tt&amp;gt; files), each text label to a widget has &amp;lt;tt&amp;gt;comment&amp;lt;/tt&amp;gt; attribute, which can be used in the same manner as context argument of &amp;lt;tt&amp;gt;i18nc()&amp;lt;/tt&amp;gt; call. Similarly, in the KXmlGui (&amp;lt;tt&amp;gt;.rc&amp;lt;/tt&amp;gt;) and KConfigXT (&amp;lt;tt&amp;gt;.kcfg&amp;lt;/tt&amp;gt;) files, tags &amp;lt;tt&amp;gt;&amp;lt;text&amp;gt;&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;label&amp;lt;/tt&amp;gt;, and &amp;lt;tt&amp;gt;whatsthis&amp;lt;/tt&amp;gt; can have a &amp;lt;tt&amp;gt;context&amp;lt;/tt&amp;gt; attribute. For example:&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
&amp;lt;label context=&amp;quot;@label&amp;quot;&amp;gt;Hide trivial details&amp;lt;/label&amp;gt;&lt;br /&gt;
&amp;lt;whatsthis context=&amp;quot;@info:whatsthis&amp;gt;Option to hide drivel&amp;lt;/whatsthis&amp;gt;&lt;br /&gt;
&amp;lt;text context=&amp;quot;@item:inmenu&amp;quot;&amp;gt;&amp;amp;amp;New...&amp;lt;/text&amp;gt;&lt;br /&gt;
&amp;lt;/code&amp;gt;}}&lt;br /&gt;
&lt;br /&gt;
Even when context marker is present, sometimes the programmer may want to provide an additional &amp;quot;free-form&amp;quot; description to translators, in order shed more light on particularly ambiguous strings. The free-form description is just separated by a whitespace from the context marker proper, like this:&lt;br /&gt;
&amp;lt;code cpp&amp;gt;&lt;br /&gt;
i18nc(&amp;quot;@item:inmenu Sorting order&amp;quot;, &amp;quot;Descending&amp;quot;);&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
One particularly useful and yet general piece of free-form description, is the title under which the message is grouped -- the menu title for actions in menu, the group title of set of radio-buttons, the listbox label for items in list, etc. For example:&lt;br /&gt;
&amp;lt;code cpp&amp;gt;&lt;br /&gt;
iconSizeBox = new QGroupBox(i18nc(&amp;quot;@title:group&amp;quot;, &amp;quot;Icon Size&amp;quot;), this);&lt;br /&gt;
//...&lt;br /&gt;
iconSize1 = new QRadioButton(i18nc(&amp;quot;@option:radio Icon Size&amp;quot;, &amp;quot;Small&amp;quot;), this);&lt;br /&gt;
iconSize2 = new QRadioButton(i18nc(&amp;quot;@option:radio Icon Size&amp;quot;, &amp;quot;Medium&amp;quot;), this);&lt;br /&gt;
iconSize3 = new QRadioButton(i18nc(&amp;quot;@option:radio Icon Size&amp;quot;, &amp;quot;Large&amp;quot;), this);&lt;br /&gt;
//...&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Advantages of Semantic Markup ==&lt;br /&gt;
&lt;br /&gt;
KUIT markup has advantages both to users and to translators of applications that make use of it.&lt;br /&gt;
&lt;br /&gt;
For the users, the use of semantic tags means consistent formatting of same kinds of text. A notorious example of inconsistent visual formatting are filenames and paths, which are sometimes put in as is, sometimes in quotes (and ordinary quotes at that, rather than proper English fancy quotes), and sometimes in bold tags. Furthermore, the text withing the tag may be modified when semantically marked; for example, the standard &amp;quot;/&amp;quot; path delimiters in a &amp;lt;tt&amp;gt;&amp;lt;filename&amp;gt;&amp;lt;/tt&amp;gt; text will be substituted for platform specific ones.&lt;br /&gt;
&lt;br /&gt;
Translators will benefit from both context markers and tags. For the &amp;lt;tt&amp;gt;@action&amp;lt;/tt&amp;gt; role of the &amp;quot;Move&amp;quot; string in the example above, the translator may use command form of the verb, while gerund form (like &amp;quot;Moving&amp;quot;) may be more appropriate for the &amp;lt;tt&amp;gt;@title&amp;lt;/tt&amp;gt; role, which would be used if the string was title of the menu, window, etc. The interface subcue, like &amp;lt;tt&amp;gt;:button&amp;lt;/tt&amp;gt; above, if present, additionally enables the translator to mentally picture the actual runtime GUI. Tags within the text will also benefit translators, as they may clear up the structure of the sentence, especially in presence of placeholder substitutions.&lt;br /&gt;
&lt;br /&gt;
The context markers also serve a technical purpose. They decide whether what form of visual formatting is used. For example, any &amp;lt;tt&amp;gt;@title&amp;lt;/tt&amp;gt; role will use plain text, whereas &amp;lt;tt&amp;gt;@info&amp;lt;/tt&amp;gt; roles will mostly be formatted with HTML tags, except in case of some subcues, when they will be plain text.&lt;br /&gt;
&lt;br /&gt;
None the least, semantic markup removes the burden from programmers of thinking about the visual formatting to apply, like &amp;quot;''Should I put the path in quotes or &amp;amp;lt;b&amp;gt;?''&amp;quot;, or &amp;quot;''Should the title be &amp;amp;lt;h2&amp;gt; or &amp;amp;lt;h3&amp;gt;?''&amp;quot;, and so on.&lt;br /&gt;
&lt;br /&gt;
== Context Markers ==&lt;br /&gt;
&lt;br /&gt;
Context marker consist of the semantic role and the interface subcue, in the form of &amp;lt;tt&amp;gt;@role:subcue&amp;lt;/tt&amp;gt;. Each message should be given a role, but the subcue may be left out. The subcue should be given only when the string clearly maps to the user interface element that it describes.&lt;br /&gt;
&lt;br /&gt;
{{warning|Roles and subcues in the context marker cannot be specified at will, but must be drawn from the sets defined below. This is important for several reasons, one being that translators have deliberated about and agreed upon the meanings of presented sets, rather than having to second-guess arbitrary combinations.}}&lt;br /&gt;
&lt;br /&gt;
KUIT defines the following roles and subcues:&lt;br /&gt;
&lt;br /&gt;
; &amp;lt;tt&amp;gt;@action&amp;lt;/tt&amp;gt;&lt;br /&gt;
: Text to all clickable widgets that cause some action to be performed, like an operation on the data, view restructuring, or opening a dialog. The button texts and menu entries (except submenu titles) all fall into this category.&lt;br /&gt;
:&lt;br /&gt;
:: &amp;lt;tt&amp;gt;:button&amp;lt;/tt&amp;gt; - pushbuttons in windows and dialogs&lt;br /&gt;
:: &amp;lt;tt&amp;gt;:inmenu&amp;lt;/tt&amp;gt; - menu entries that perform an action&lt;br /&gt;
:: &amp;lt;tt&amp;gt;:intoolbar&amp;lt;/tt&amp;gt; - toolbar buttons&lt;br /&gt;
&lt;br /&gt;
; &amp;lt;tt&amp;gt;@title&amp;lt;/tt&amp;gt;&lt;br /&gt;
: Text that is semantically a title in the interface. These would include window titles, menu titles, tab names, option group names in configuration dialogs, and column names in list views.&lt;br /&gt;
:&lt;br /&gt;
:: &amp;lt;tt&amp;gt;:window&amp;lt;/tt&amp;gt; - window title (also dock name)&lt;br /&gt;
:: &amp;lt;tt&amp;gt;:menu&amp;lt;/tt&amp;gt; - menu name&lt;br /&gt;
:: &amp;lt;tt&amp;gt;:tab&amp;lt;/tt&amp;gt; - tab name&lt;br /&gt;
:: &amp;lt;tt&amp;gt;:group&amp;lt;/tt&amp;gt; - option group&lt;br /&gt;
:: &amp;lt;tt&amp;gt;:column&amp;lt;/tt&amp;gt; - column name&lt;br /&gt;
&lt;br /&gt;
; &amp;lt;tt&amp;gt;@option&amp;lt;/tt&amp;gt;&lt;br /&gt;
: Text to options which user can turn on and off, or choose between. These are the labels to checkboxes (either in dialogs or in menus) and radio buttons.&lt;br /&gt;
:&lt;br /&gt;
:: &amp;lt;tt&amp;gt;:check&amp;lt;/tt&amp;gt; - checkbox label&lt;br /&gt;
:: &amp;lt;tt&amp;gt;:radio&amp;lt;/tt&amp;gt; - radio-button label&lt;br /&gt;
&lt;br /&gt;
; &amp;lt;tt&amp;gt;@label&amp;lt;/tt&amp;gt;&lt;br /&gt;
: Text labels to various widgets in the interface, which are none of &amp;lt;tt&amp;gt;@action&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;@title&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;@option&amp;lt;/tt&amp;gt;. These include labels to sliders, spinboxes, combo, list and text boxes, font and color choosers.&lt;br /&gt;
:&lt;br /&gt;
:: &amp;lt;tt&amp;gt;:slider&amp;lt;/tt&amp;gt; - slider labels (but end-ranges are @item:inrange!)&lt;br /&gt;
:: &amp;lt;tt&amp;gt;:spinbox&amp;lt;/tt&amp;gt; - spinbox labels&lt;br /&gt;
:: &amp;lt;tt&amp;gt;:listbox&amp;lt;/tt&amp;gt; - list and combo boxes&lt;br /&gt;
:: &amp;lt;tt&amp;gt;:textbox&amp;lt;/tt&amp;gt; - text and edit boxes&lt;br /&gt;
:: &amp;lt;tt&amp;gt;:chooser&amp;lt;/tt&amp;gt; - chooser widgets (fonts, colors, etc.)&lt;br /&gt;
&lt;br /&gt;
; &amp;lt;tt&amp;gt;@item&amp;lt;/tt&amp;gt;&lt;br /&gt;
: Strings that can be considered one from a range of possibilities or properties. Entries in listings, dropdown and combo boxes are obvious, but also some menu items (e.g. encoding selection, sort orderings), end-labels to ranges (e.g. high/low, more/less), inserts into longer texts, and properites (e.g. file types, permissions) frequently displayed in tabular form (e.g. column views, property dialogs).&lt;br /&gt;
:&lt;br /&gt;
:: &amp;lt;tt&amp;gt;:inmenu&amp;lt;/tt&amp;gt; - items presented as menu entries&lt;br /&gt;
:: &amp;lt;tt&amp;gt;:inlistbox&amp;lt;/tt&amp;gt; - items in list and combo boxes&lt;br /&gt;
:: &amp;lt;tt&amp;gt;:intable&amp;lt;/tt&amp;gt; - items presented in table-like forms&lt;br /&gt;
:: &amp;lt;tt&amp;gt;:inrange&amp;lt;/tt&amp;gt; - range labels to sliders, etc.&lt;br /&gt;
:: &amp;lt;tt&amp;gt;:intext&amp;lt;/tt&amp;gt; - words and phrases inserted into other messages&lt;br /&gt;
&lt;br /&gt;
; &amp;lt;tt&amp;gt;@info&amp;lt;/tt&amp;gt;&lt;br /&gt;
: General texts for user's information, that do not fall under any of the previous roles. These are for example tooltip and &amp;quot;What's This?&amp;quot; texts, text in message boxes, fields in status bar, and strings in progress dialogs.&lt;br /&gt;
:&lt;br /&gt;
:: &amp;lt;tt&amp;gt;:tooltip&amp;lt;/tt&amp;gt; - hovering tooltips&lt;br /&gt;
:: &amp;lt;tt&amp;gt;:whatsthis&amp;lt;/tt&amp;gt; - &amp;quot;What's This?&amp;quot; explanations of widgets&lt;br /&gt;
:: &amp;lt;tt&amp;gt;:status&amp;lt;/tt&amp;gt; - texts in status displays (e.g. in status bar)&lt;br /&gt;
:: &amp;lt;tt&amp;gt;:progress&amp;lt;/tt&amp;gt; - the current state of ongoing process&lt;br /&gt;
:: &amp;lt;tt&amp;gt;:tipoftheday&amp;lt;/tt&amp;gt; - introductory tips on application startup&lt;br /&gt;
:: &amp;lt;tt&amp;gt;:credit&amp;lt;/tt&amp;gt; - contributor names and their contributions&lt;br /&gt;
:: &amp;lt;tt&amp;gt;:shell&amp;lt;/tt&amp;gt; - info output to the terminal, rather than to GUI&lt;br /&gt;
&lt;br /&gt;
== Semantic Tags ==&lt;br /&gt;
&lt;br /&gt;
KUIT semantic tags come in several logical groups:&lt;br /&gt;
* ''phrase tags'' - those that ascribe meaning to certain phrases and inserts&lt;br /&gt;
* ''sentence tags'' - which describe the purpose of a complete sentence in text&lt;br /&gt;
* ''structure tags'' - used to order longer text into paragraphs, titles, etc.&lt;br /&gt;
&lt;br /&gt;
=== Phrase tags ===&lt;br /&gt;
&lt;br /&gt;
Phrase tags will by default not admit any subtags; where some subtags can be used, it is so indicated. KUIT defines the folowing phrase tags:&lt;br /&gt;
&lt;br /&gt;
; &amp;lt;tt&amp;gt;&amp;amp;lt;application&amp;amp;gt;&amp;lt;/tt&amp;gt;&lt;br /&gt;
: Name of an application.&lt;br /&gt;
&amp;lt;code cpp&amp;gt;&lt;br /&gt;
i18nc(&amp;quot;@action:inmenu&amp;quot;,&lt;br /&gt;
      &amp;quot;Open with &amp;lt;application&amp;gt;%1&amp;lt;/application&amp;gt;&amp;quot;, appName);&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
; &amp;lt;tt&amp;gt;&amp;amp;lt;bcode&amp;amp;gt;&amp;lt;/tt&amp;gt;&lt;br /&gt;
: Line-breaking body of code, for short listings.&lt;br /&gt;
&amp;lt;code cpp&amp;gt;&lt;br /&gt;
i18nc(&amp;quot;@info:whatsthis&amp;quot;,&lt;br /&gt;
      &amp;quot;You can try the following snippet:&amp;lt;bcode&amp;gt;&amp;quot;&lt;br /&gt;
      &amp;quot;\\begin{equation}&amp;quot;&lt;br /&gt;
      &amp;quot;  C_{x_i} = \\frac{C_z^2}{e \\pi \\lambda}&amp;quot;&lt;br /&gt;
      &amp;quot;\\end{equation}&amp;quot;&lt;br /&gt;
      &amp;quot;&amp;lt;/bcode&amp;gt;&amp;quot;);&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
; &amp;lt;tt&amp;gt;&amp;amp;lt;command&amp;amp;gt;&amp;lt;/tt&amp;gt;&lt;br /&gt;
: Name of shell command or system call. Its man section can be provided via &amp;lt;tt&amp;gt;section&amp;lt;/tt&amp;gt; attribute.&lt;br /&gt;
&amp;lt;code cpp&amp;gt;&lt;br /&gt;
i18nc(&amp;quot;@info&amp;quot;,&lt;br /&gt;
      &amp;quot;This will call &amp;lt;command&amp;gt;%1&amp;lt;/command&amp;gt; internally.&amp;quot;, cmdName);&lt;br /&gt;
&lt;br /&gt;
i18nc(&amp;quot;@info&amp;quot;,&lt;br /&gt;
      &amp;quot;Consult man entry for &amp;lt;command section='1'&amp;gt;%1&amp;lt;/command&amp;gt;&amp;quot;, cmdName);&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
; &amp;lt;tt&amp;gt;&amp;amp;lt;email&amp;amp;gt;&amp;lt;/tt&amp;gt;&lt;br /&gt;
: Email address. Without attributes, the tag text is the address. Address can also be given with &amp;lt;tt&amp;gt;address&amp;lt;/tt&amp;gt; attribute, in which case the tag text is the name or description attached to the address.&lt;br /&gt;
&amp;lt;code cpp&amp;gt;&lt;br /&gt;
i18nc(&amp;quot;@info&amp;quot;,&lt;br /&gt;
      &amp;quot;Send bug reports to &amp;lt;email&amp;gt;%1&amp;lt;/email&amp;gt;.&amp;quot;, emailNull);&lt;br /&gt;
&lt;br /&gt;
i18nc(&amp;quot;@info&amp;quot;,&lt;br /&gt;
      &amp;quot;Send praises to &amp;lt;email address='%1'&amp;gt;the author&amp;lt;/email&amp;gt;.&amp;quot;, emailMy);&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
: The construct will be hyperlinked in rich text format.&lt;br /&gt;
&lt;br /&gt;
; &amp;lt;tt&amp;gt;&amp;amp;lt;emphasis&amp;amp;gt;&amp;lt;/tt&amp;gt;&lt;br /&gt;
: Emphasize a word or phrase in the text.&lt;br /&gt;
&amp;lt;code cpp&amp;gt;&lt;br /&gt;
i18nc(&amp;quot;@info:progress&amp;quot;,&lt;br /&gt;
      &amp;quot;Checking &amp;lt;emphasis&amp;gt;feedback&amp;lt;/emphasis&amp;gt; circuits...&amp;quot;);&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
; &amp;lt;tt&amp;gt;&amp;amp;lt;envar&amp;amp;gt;&amp;lt;/tt&amp;gt;&lt;br /&gt;
: Environment variable. The $ sign will be prepended automatically in formatted text.&lt;br /&gt;
&amp;lt;code cpp&amp;gt;&lt;br /&gt;
i18nc(&amp;quot;@info&amp;quot;,&lt;br /&gt;
      &amp;quot;Assure that your &amp;lt;envar&amp;gt;PATH&amp;lt;/envar&amp;gt; is properly set.&amp;quot;);&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
; &amp;lt;tt&amp;gt;&amp;amp;lt;filename&amp;amp;gt;&amp;lt;/tt&amp;gt;&lt;br /&gt;
: File or folder name or path. The path separators will be transformed into what is native to the platform.&lt;br /&gt;
&amp;lt;code cpp&amp;gt;&lt;br /&gt;
i18nc(&amp;quot;@info&amp;quot;, &amp;quot;Cannot read &amp;lt;filename&amp;gt;%1&amp;lt;/filename&amp;gt;.&amp;quot;, filename);&lt;br /&gt;
&lt;br /&gt;
i18nc(&amp;quot;@info&amp;quot;,&lt;br /&gt;
      &amp;quot;&amp;lt;filename&amp;gt;&amp;lt;envar&amp;gt;HOME&amp;lt;/envar&amp;gt;/.foorc&amp;lt;/filename&amp;gt; does not exist.&amp;quot;);&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
: The &amp;lt;tt&amp;gt;&amp;lt;envar&amp;gt;&amp;lt;/tt&amp;gt; can be used as subtag.&lt;br /&gt;
&lt;br /&gt;
; &amp;lt;tt&amp;gt;&amp;amp;lt;icode&amp;amp;gt;&amp;lt;/tt&amp;gt;&lt;br /&gt;
: Inline code, like shell command lines.&lt;br /&gt;
&amp;lt;code cpp&amp;gt;&lt;br /&gt;
i18nc(&amp;quot;@info:tooltip&amp;quot;,&lt;br /&gt;
      &amp;quot;Execute &amp;lt;icode&amp;gt;svn merge&amp;lt;/icode&amp;gt; on selected revisions.&amp;quot;);&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
: The &amp;lt;tt&amp;gt;&amp;lt;placeholder&amp;gt;&amp;lt;/tt&amp;gt; can be used as subtag.&lt;br /&gt;
&lt;br /&gt;
; &amp;lt;tt&amp;gt;&amp;amp;lt;interface&amp;amp;gt;&amp;lt;/tt&amp;gt;&lt;br /&gt;
: Path to GUI interface element. If there is more than one element in the path, use &amp;quot;/&amp;quot;, &amp;quot;|&amp;quot; or &amp;quot;-&amp;gt;&amp;quot; to delimit elements, which will be converted into canonical form.&lt;br /&gt;
&amp;lt;code cpp&amp;gt;&lt;br /&gt;
i18nc(&amp;quot;@info:whatsthis&amp;quot;,&lt;br /&gt;
      &amp;quot;If you make a mistake, click &amp;quot;&lt;br /&gt;
      &amp;quot;&amp;lt;interface&amp;gt;Reset&amp;lt;/interface&amp;gt; to start again.&amp;quot;);&lt;br /&gt;
i18nc(&amp;quot;@info:whatsthis&amp;quot;,&lt;br /&gt;
      &amp;quot;The line colors can be changed under &amp;quot;&lt;br /&gt;
      &amp;quot;&amp;lt;interface&amp;gt;Settings-&amp;gt;Visuals&amp;lt;/interface&amp;gt;.&amp;quot;);&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
; &amp;lt;tt&amp;gt;&amp;amp;lt;link&amp;amp;gt;&amp;lt;/tt&amp;gt;&lt;br /&gt;
: Link to a URL-addressable resource. Without attributes, the tag text is the URL; alternatively, the URL can be given by &amp;lt;tt&amp;gt;url&amp;lt;/tt&amp;gt; attribute, and then the tag text serves as description.&lt;br /&gt;
&amp;lt;code cpp&amp;gt;&lt;br /&gt;
i18nc(&amp;quot;@info:tooltip&amp;quot;,&lt;br /&gt;
      &amp;quot;Go to &amp;lt;link&amp;gt;%1&amp;lt;/link&amp;gt; website.&amp;quot;, urlKDE);&lt;br /&gt;
&lt;br /&gt;
i18nc(&amp;quot;@info:tooltip&amp;quot;,&lt;br /&gt;
      &amp;quot;Go to &amp;lt;link url='%1'&amp;gt;the KDE website&amp;lt;/link&amp;gt;.&amp;quot;, urlKDE);&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
: The variant with URL/description separation is preferred when applicable. The construct will be hyperlinked in rich text format.&lt;br /&gt;
&lt;br /&gt;
; &amp;lt;tt&amp;gt;&amp;amp;lt;message&amp;amp;gt;&amp;lt;/tt&amp;gt;&lt;br /&gt;
: An external message to be reported to the user.&lt;br /&gt;
&amp;lt;code cpp&amp;gt;&lt;br /&gt;
i18nc(&amp;quot;@info&amp;quot;,&lt;br /&gt;
      &amp;quot;The fortune cookie says: &amp;lt;message&amp;gt;%1&amp;lt;/message&amp;gt;&amp;quot;, trouble);&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
; &amp;lt;tt&amp;gt;&amp;amp;lt;nl&amp;amp;gt;&amp;lt;/tt&amp;gt;&lt;br /&gt;
: Line break, counterpart to HTML's &amp;lt;tt&amp;gt;&amp;amp;lt;br/&amp;amp;gt;&amp;lt;/tt&amp;gt;. In plain text it will format as a newline character, and in rich text as &amp;lt;tt&amp;gt;&amp;amp;lt;br/&amp;amp;gt;&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&amp;lt;code cpp&amp;gt;&lt;br /&gt;
i18nc(&amp;quot;@info&amp;quot;,&lt;br /&gt;
      &amp;quot;Do you really want to delete:&amp;lt;nl/&amp;gt;&amp;quot;&lt;br /&gt;
      &amp;quot;&amp;lt;filename&amp;gt;%1&amp;lt;/filename&amp;gt;&amp;quot;, fileName);&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
; &amp;lt;tt&amp;gt;&amp;amp;lt;numid&amp;amp;gt;&amp;lt;/tt&amp;gt;&lt;br /&gt;
: By default, numbers supplied as arguments to i18n calls are formatted into localized form. If the number is supposed to be a numeric identifier instead, like a port number, use this tag to signal numeric-id environment.&lt;br /&gt;
&amp;lt;code cpp&amp;gt;&lt;br /&gt;
i18nc(&amp;quot;@info:progress&amp;quot;,&lt;br /&gt;
      &amp;quot;Connecting to &amp;lt;numid&amp;gt;%1&amp;lt;/numid&amp;gt;...&amp;quot;, portNo);&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
; &amp;lt;tt&amp;gt;&amp;amp;lt;placeholder&amp;amp;gt;&amp;lt;/tt&amp;gt;&lt;br /&gt;
: A placeholder text, either something to be replaced by the user, or a generic item in a list.&lt;br /&gt;
&amp;lt;code cpp&amp;gt;&lt;br /&gt;
i18nc(&amp;quot;@info&amp;quot;,&lt;br /&gt;
      &amp;quot;Replace &amp;lt;placeholder&amp;gt;name&amp;lt;/placeholder&amp;gt; with your name.&amp;quot;);&lt;br /&gt;
&lt;br /&gt;
i18nc(&amp;quot;@item:inlistbox&amp;quot;,&lt;br /&gt;
      &amp;quot;&amp;lt;placeholder&amp;gt;All images&amp;lt;/placeholder&amp;gt;&amp;quot;);&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
; &amp;lt;tt&amp;gt;&amp;amp;lt;resource&amp;amp;gt;&amp;lt;/tt&amp;gt;&lt;br /&gt;
: General named resource. Names of documents, sessions, projects, toolbars, plugins, schemes and themes, accounts, etc.&lt;br /&gt;
&amp;lt;code cpp&amp;gt;&lt;br /&gt;
i18nc(&amp;quot;@info&amp;quot;, &amp;quot;Apply color scheme &amp;lt;resource&amp;gt;%1&amp;lt;/resource&amp;gt;?&amp;quot;, colScheme);&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
; &amp;lt;tt&amp;gt;&amp;amp;lt;shortcut&amp;amp;gt;&amp;lt;/tt&amp;gt;&lt;br /&gt;
: Combination of keys to press. Separate the keys by &amp;quot;+&amp;quot; or &amp;quot;-&amp;quot;, and the shortcut will be converted into canonical form.&lt;br /&gt;
&amp;lt;code cpp&amp;gt;&lt;br /&gt;
i18nc(&amp;quot;@info:whatsthis&amp;quot;,&lt;br /&gt;
      &amp;quot;Cycle through layouts using &amp;lt;shortcut&amp;gt;Alt+Space&amp;lt;/shortcut&amp;gt;.&amp;quot;);&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Sentence tags ===&lt;br /&gt;
&lt;br /&gt;
Sentence tags mark complete sentences in text, and will admit any phrase tags as subtags. The following are defined:&lt;br /&gt;
&lt;br /&gt;
; &amp;lt;tt&amp;gt;&amp;amp;lt;note&amp;amp;gt;&amp;lt;/tt&amp;gt;&lt;br /&gt;
: The sentence is a side note of significance to the topic.&lt;br /&gt;
&amp;lt;code cpp&amp;gt;&lt;br /&gt;
i18nc(&amp;quot;@info&amp;quot;,&lt;br /&gt;
      &amp;quot;Probably the best known of all duck species is the Mallard. &amp;quot;&lt;br /&gt;
      &amp;quot;It breeds throughout the temperate areas around the world. &amp;quot;&lt;br /&gt;
      &amp;quot;&amp;lt;note&amp;gt;Most domestic ducks are derived from Mallard.&amp;lt;/note&amp;gt;&amp;quot;);&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
: Do not explicitly add &amp;quot;Note:&amp;quot;, it will be added automatically. If you really need other label than &amp;quot;Note&amp;quot;, use attribute &amp;lt;tt&amp;gt;label&amp;lt;/tt&amp;gt;, e.g. &amp;lt;tt&amp;gt;&amp;quot;&amp;lt;note label='Trivia'&amp;gt;...&amp;lt;/note&amp;gt;&amp;quot;&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
; &amp;lt;tt&amp;gt;&amp;amp;lt;warning&amp;amp;gt;&amp;lt;/tt&amp;gt;&lt;br /&gt;
: The sentence is a warning.&lt;br /&gt;
&amp;lt;code cpp&amp;gt;&lt;br /&gt;
i18nc(&amp;quot;@info&amp;quot;,&lt;br /&gt;
      &amp;quot;Really delete this key?&amp;quot;&lt;br /&gt;
      &amp;quot;&amp;lt;warning&amp;gt;This cannot be undone.&amp;lt;/warning&amp;gt;&amp;quot;);&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
: Do not explicitly add &amp;quot;Warning:&amp;quot;, it will be added automatically. If you really need other label than &amp;quot;Warning&amp;quot;, use attribute &amp;lt;tt&amp;gt;label&amp;lt;/tt&amp;gt;, e.g. &amp;lt;tt&amp;gt;&amp;quot;&amp;lt;warning label='Danger'&amp;gt;...&amp;lt;/warning&amp;gt;&amp;quot;&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
=== Structure tags ===&lt;br /&gt;
&lt;br /&gt;
Structure tags are used to split longer texts into titles, paragraphs, and lists. By default they can contain any phrase or sentence tags, unless indicated otherwise.&lt;br /&gt;
&lt;br /&gt;
; &amp;lt;tt&amp;gt;&amp;amp;lt;para&amp;amp;gt;&amp;lt;/tt&amp;gt;&lt;br /&gt;
: Text paragraph.&lt;br /&gt;
&lt;br /&gt;
; &amp;lt;tt&amp;gt;&amp;amp;lt;title&amp;amp;gt;&amp;lt;/tt&amp;gt;&lt;br /&gt;
: The title of the text. Must be the first tag if present, but can be omitted.&lt;br /&gt;
&lt;br /&gt;
; &amp;lt;tt&amp;gt;&amp;amp;lt;subtitle&amp;amp;gt;&amp;lt;/tt&amp;gt;&lt;br /&gt;
: Subtitle in the text. Must be followed by at least one &amp;lt;tt&amp;gt;&amp;amp;lt;para&amp;amp;gt;&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
; &amp;lt;tt&amp;gt;&amp;amp;lt;list&amp;amp;gt;&amp;lt;/tt&amp;gt;&lt;br /&gt;
: List of items. Can contain only &amp;lt;tt&amp;gt;&amp;amp;lt;item&amp;amp;gt;&amp;lt;/tt&amp;gt; as subtags. List is considered an element of the paragraph, so the &amp;lt;tt&amp;gt;&amp;amp;lt;list&amp;amp;gt;&amp;lt;/tt&amp;gt; must be found inside &amp;lt;tt&amp;gt;&amp;amp;lt;para&amp;amp;gt;&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
; &amp;lt;tt&amp;gt;&amp;amp;lt;item&amp;amp;gt;&amp;lt;/tt&amp;gt;&lt;br /&gt;
: List item.&lt;br /&gt;
&lt;br /&gt;
If any of the structure tags is present, then there must be no text outside of structure tags. The following is not valid KUIT markup:&lt;br /&gt;
&amp;lt;code cpp&amp;gt;&lt;br /&gt;
// invalid markup&lt;br /&gt;
i18nc(&amp;quot;@info&amp;quot;,&lt;br /&gt;
      &amp;quot;&amp;lt;title&amp;gt;History Sidebar&amp;lt;/title&amp;gt;&amp;quot;&lt;br /&gt;
      &amp;quot;You can configure the history sidebar here.&amp;quot;); // &amp;lt;para&amp;gt; missing&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Limitations to Use of Semantic Markup ==&lt;br /&gt;
&lt;br /&gt;
Semantic markup cannot be used in &amp;quot;dumb&amp;quot; strings, which do not pass through KDE's i18n subsystem. These would be, for example, strings in &amp;lt;tt&amp;gt;.desktop&amp;lt;/tt&amp;gt; format files. But ''not'' the strings in UI files, as in Qt Designer they can be equipped with both context markers (via comment field to text properties) and semantic tags.&lt;br /&gt;
&lt;br /&gt;
Qt's rich text HTML tags can be used concurrently with KUIT tags, but this is not advised unless necessary. They may be needed, for example, to create tables or insert images, as KUIT does not implement this functionality at the moment.&lt;br /&gt;
&lt;br /&gt;
Sometimes, the visual formatting may not be quite appropriate for the output device; every role/subcue combination has a preset default formatting. For example, if the &amp;lt;tt&amp;gt;@info&amp;lt;/tt&amp;gt; role is applied to a string which is used in a widget that does not handle rich text, it will come out with HTML tags displayed verbatim. To handle this, visual formatting can be explicitly signaled by &amp;lt;tt&amp;gt;/''format''&amp;lt;/tt&amp;gt; modifier appended to context marker:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code cpp&amp;gt;&lt;br /&gt;
i18nc(&amp;quot;@info/plain&amp;quot;,&lt;br /&gt;
      &amp;quot;&amp;lt;filename&amp;gt;%1&amp;lt;/filename&amp;gt; does not exist&amp;quot;, fname);&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Presently, the possible format modifiers are &amp;lt;tt&amp;gt;/plain&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;/rich&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;/term&amp;lt;/tt&amp;gt; (for terminal format, possible use of escape sequences).&lt;br /&gt;
&lt;br /&gt;
To specify context in kpartgui rc file use context attribute (&amp;lt;text context=&amp;quot;@title:menu&amp;quot;&amp;gt;File&amp;lt;/text&amp;gt;). A context-aware version of I18N_NOOP is I18N_NOOP2.&lt;br /&gt;
&lt;br /&gt;
== Should I Go For Semantic Markup? ==&lt;br /&gt;
&lt;br /&gt;
Admittedly, KUIT markup is an additional thing to be learned and applied throughout the course of development. By now you may be wondering if it is worthwile to invest time into that, particularly in view of two cases:&lt;br /&gt;
* starting work on a new application, and&lt;br /&gt;
* porting messages in existing applications.&lt;br /&gt;
&lt;br /&gt;
You are strongly advised to use KUIT for new code. Compared to the total time spent on code, writing UI messages is only a small fraction. Context markers will help translators a lot, and message tags will provide consistent visual text formatting to your application.&lt;br /&gt;
&lt;br /&gt;
When modifying existing code, there are two issues. First, obviously it is a daunting task to go through hundreds (or worse) of messages and equip them with semantic markup. Second, by changing the messages, the translators too will have to review their existing translations; however, it is not expected that the porting will take so &amp;quot;epic&amp;quot; proportions that the translators cannot keep up. Sumarily, feel free to do as you see fit.&lt;br /&gt;
&lt;br /&gt;
Additionally, for porting, keep in mind that it is not all-or-nothing proposal. Any amount of semantic messages are useful to translators, and users can only see the difference for the better. Thus, for example, deciding to make all ''new'' messages semantic and slowly over time fix old messages, is a perfectly fine strategy.&lt;br /&gt;
&lt;br /&gt;
To make your job easier, there is an i18n-checker script that will report the problems in KUIT markup, as well as check some other i18n nuances. It is run daily on KDE code repository-wide as part Krazy-framework, but you can also run it locally on your code. It can be found in {{path|trunk/trunk/KDE/kdesdk/ebn/krazy/plugins/i18ncheckarg}}. Furthermore, as of this moment Krazy checks only C++ sources, while when you run the script locally, some of the XML sources containing translatable strings will be checked as well. &amp;lt;tt&amp;gt;i18ncheckarg&amp;lt;/tt&amp;gt; requires Perl libxml bindings, which are probably already packaged for your distribution (Debian package is libxml-libxml-perl).&lt;br /&gt;
&lt;br /&gt;
{{note|By default &amp;lt;tt&amp;gt;i18ncheckarg&amp;lt;/tt&amp;gt; takes a single filename to check, but using &amp;lt;tt&amp;gt;--allsources&amp;lt;/tt&amp;gt; option you can provide as many file or directory paths as you wish; typically you would give top directory path to your sources. Also, to report all missing context markers use &amp;lt;tt&amp;gt;--ctxmark&amp;lt;/tt&amp;gt; option, or otherwise missing markers will be reported only if some threshold of marked-to-total number of messages in a file is reached.}}&lt;br /&gt;
&lt;br /&gt;
Last but not the least, there is also a chic-effect to the KUIT. Its wide use, together with some under-the-hood elements on translators' disposal, will make KDE4's i18n layer without peer in free or proprietary software world. Insofar as you consider localization excellence an important part of the overall KDE excellence, this is something that may also tip your decision :) -- Your Friendly Translator.&lt;/div&gt;</summary>
		<author><name>Shaforostoff</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Development/Tutorials/Localization/i18n_Semantics</id>
		<title>Development/Tutorials/Localization/i18n Semantics</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Development/Tutorials/Localization/i18n_Semantics"/>
				<updated>2008-05-31T12:04:21Z</updated>
		
		<summary type="html">&lt;p&gt;Shaforostoff: /* Limitations to Use of Semantic Markup */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Abstract ==&lt;br /&gt;
&lt;br /&gt;
Typical way of formatting user visible strings in application interfaces, for a long time has been that of plain text or at most visual markup like HTML tags. In most textual content environments, shift to ''semantic'' markup has been recognized as superior to visual (for example, the Docbook XML for documentation). Why not go down the same road for UI strings?&lt;br /&gt;
&lt;br /&gt;
== Semantic Markup by Examples ==&lt;br /&gt;
&lt;br /&gt;
In the semantic model, user interface strings are marked for their ''context'', and text elements within for their ''meaning'' rather than visual appearance. Consider few i18n examples of usual, non-semantic format:&lt;br /&gt;
&amp;lt;code cpp&amp;gt;&lt;br /&gt;
i18n(&amp;quot;Move&amp;quot;);&lt;br /&gt;
&lt;br /&gt;
i18n(&amp;quot;Descending&amp;quot;);&lt;br /&gt;
&lt;br /&gt;
i18n(&amp;quot;&amp;lt;qt&amp;gt;&amp;lt;b&amp;gt;%1&amp;lt;/b&amp;gt; does not exist&amp;lt;/qt&amp;gt;&amp;quot;, fname);&lt;br /&gt;
&lt;br /&gt;
i18n(&amp;quot;&amp;lt;h1&amp;gt;History Sidebar&amp;lt;/h1&amp;gt; You can configure the history sidebar here.&amp;quot;);&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Using KDE UI Text (KUIT for short) semantic markup, these strings would be formated like this:&lt;br /&gt;
&amp;lt;code cpp&amp;gt;&lt;br /&gt;
i18nc(&amp;quot;@action:button&amp;quot;, &amp;quot;Move&amp;quot;);&lt;br /&gt;
&lt;br /&gt;
i18nc(&amp;quot;@item:inmenu&amp;quot;, &amp;quot;Descending&amp;quot;);&lt;br /&gt;
&lt;br /&gt;
i18nc(&amp;quot;@info&amp;quot;, &amp;quot;&amp;lt;filename&amp;gt;%1&amp;lt;/filename&amp;gt; does not exist&amp;quot;, fname);&lt;br /&gt;
&lt;br /&gt;
i18nc(&amp;quot;@info:whatsthis&amp;quot;,&lt;br /&gt;
      &amp;quot;&amp;lt;title&amp;gt;History Sidebar&amp;lt;/title&amp;gt;&amp;quot;&lt;br /&gt;
      &amp;quot;&amp;lt;para&amp;gt;You can configure the history sidebar here.&amp;lt;/para&amp;gt;&amp;quot;);&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Two distinct differences between ordinary and KUIT markup can be observed.&lt;br /&gt;
&lt;br /&gt;
The first is the use of context i18n calls, the &amp;lt;tt&amp;gt;i18nc()&amp;lt;/tt&amp;gt;, to convey the usage context of the string by means of the ''context marker''. The first message above, &amp;quot;Move&amp;quot;, has been assigned the &amp;lt;tt&amp;gt;@action:button&amp;lt;/tt&amp;gt; marker, where &amp;lt;tt&amp;gt;@action&amp;lt;/tt&amp;gt; is the ''semantic role'' which describes the text as an action to be taken (e.g. operation on data or opening of a new dialog), and &amp;lt;tt&amp;gt;:button&amp;lt;/tt&amp;gt; is the ''interface subcue'' saying that this text is displayed on a pushbutton widget. The second message, &amp;quot;Descending&amp;quot;, has been marked as semantically a list item (&amp;lt;tt&amp;gt;@item&amp;lt;/tt&amp;gt;), displayed in a menu (&amp;lt;tt&amp;gt;:inmenu&amp;lt;/tt&amp;gt;). The interface subcue can be left out if none is appropriate, as has been done in the third message.&lt;br /&gt;
&lt;br /&gt;
The other difference is the use of the semantic tags, which convey the meaning of a word or phrase within the text. The &amp;lt;tt&amp;gt;&amp;lt;filename&amp;gt;%1&amp;lt;/filename&amp;gt;&amp;lt;/tt&amp;gt; part of the third message tells that the substituted text is the name of a file. The &amp;lt;tt&amp;gt;&amp;lt;title&amp;gt;&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;&amp;lt;para&amp;gt;&amp;lt;/tt&amp;gt; tags in the last message clearly lay out structure of a longer informational text.&lt;br /&gt;
&lt;br /&gt;
{{note|The context marker can be added when within some of the standard XML sources too. In Qt Designer forms (&amp;lt;tt&amp;gt;.ui&amp;lt;/tt&amp;gt; files), each text label to a widget has &amp;lt;tt&amp;gt;comment&amp;lt;/tt&amp;gt; attribute, which can be used in the same manner as context argument of &amp;lt;tt&amp;gt;i18nc()&amp;lt;/tt&amp;gt; call. Similarly, in the KXmlGui (&amp;lt;tt&amp;gt;.rc&amp;lt;/tt&amp;gt;) and KConfigXT (&amp;lt;tt&amp;gt;.kcfg&amp;lt;/tt&amp;gt;) files, tags &amp;lt;tt&amp;gt;&amp;lt;text&amp;gt;&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;label&amp;lt;/tt&amp;gt;, and &amp;lt;tt&amp;gt;whatsthis&amp;lt;/tt&amp;gt; can have a &amp;lt;tt&amp;gt;context&amp;lt;/tt&amp;gt; attribute. For example:&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
&amp;lt;label context=&amp;quot;@label&amp;quot;&amp;gt;Hide trivial details&amp;lt;/label&amp;gt;&lt;br /&gt;
&amp;lt;whatsthis context=&amp;quot;@info:whatsthis&amp;gt;Option to hide drivel&amp;lt;/whatsthis&amp;gt;&lt;br /&gt;
&amp;lt;text context=&amp;quot;@item:inmenu&amp;quot;&amp;gt;&amp;amp;amp;New...&amp;lt;/text&amp;gt;&lt;br /&gt;
&amp;lt;/code&amp;gt;}}&lt;br /&gt;
&lt;br /&gt;
Even when context marker is present, sometimes the programmer may want to provide an additional &amp;quot;free-form&amp;quot; description to translators, in order shed more light on particularly ambiguous strings. The free-form description is just separated by a whitespace from the context marker proper, like this:&lt;br /&gt;
&amp;lt;code cpp&amp;gt;&lt;br /&gt;
i18nc(&amp;quot;@item:inmenu Sorting order&amp;quot;, &amp;quot;Descending&amp;quot;);&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
One particularly useful and yet general piece of free-form description, is the title under which the message is grouped -- the menu title for actions in menu, the group title of set of radio-buttons, the listbox label for items in list, etc. For example:&lt;br /&gt;
&amp;lt;code cpp&amp;gt;&lt;br /&gt;
iconSizeBox = new QGroupBox(i18nc(&amp;quot;@title:group&amp;quot;, &amp;quot;Icon Size&amp;quot;), this);&lt;br /&gt;
//...&lt;br /&gt;
iconSize1 = new QRadioButton(i18nc(&amp;quot;@option:radio Icon Size&amp;quot;, &amp;quot;Small&amp;quot;), this);&lt;br /&gt;
iconSize2 = new QRadioButton(i18nc(&amp;quot;@option:radio Icon Size&amp;quot;, &amp;quot;Medium&amp;quot;), this);&lt;br /&gt;
iconSize3 = new QRadioButton(i18nc(&amp;quot;@option:radio Icon Size&amp;quot;, &amp;quot;Large&amp;quot;), this);&lt;br /&gt;
//...&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Advantages of Semantic Markup ==&lt;br /&gt;
&lt;br /&gt;
KUIT markup has advantages both to users and to translators of applications that make use of it.&lt;br /&gt;
&lt;br /&gt;
For the users, the use of semantic tags means consistent formatting of same kinds of text. A notorious example of inconsistent visual formatting are filenames and paths, which are sometimes put in as is, sometimes in quotes (and ordinary quotes at that, rather than proper English fancy quotes), and sometimes in bold tags. Furthermore, the text withing the tag may be modified when semantically marked; for example, the standard &amp;quot;/&amp;quot; path delimiters in a &amp;lt;tt&amp;gt;&amp;lt;filename&amp;gt;&amp;lt;/tt&amp;gt; text will be substituted for platform specific ones.&lt;br /&gt;
&lt;br /&gt;
Translators will benefit from both context markers and tags. For the &amp;lt;tt&amp;gt;@action&amp;lt;/tt&amp;gt; role of the &amp;quot;Move&amp;quot; string in the example above, the translator may use command form of the verb, while gerund form (like &amp;quot;Moving&amp;quot;) may be more appropriate for the &amp;lt;tt&amp;gt;@title&amp;lt;/tt&amp;gt; role, which would be used if the string was title of the menu, window, etc. The interface subcue, like &amp;lt;tt&amp;gt;:button&amp;lt;/tt&amp;gt; above, if present, additionally enables the translator to mentally picture the actual runtime GUI. Tags within the text will also benefit translators, as they may clear up the structure of the sentence, especially in presence of placeholder substitutions.&lt;br /&gt;
&lt;br /&gt;
The context markers also serve a technical purpose. They decide whether what form of visual formatting is used. For example, any &amp;lt;tt&amp;gt;@title&amp;lt;/tt&amp;gt; role will use plain text, whereas &amp;lt;tt&amp;gt;@info&amp;lt;/tt&amp;gt; roles will mostly be formatted with HTML tags, except in case of some subcues, when they will be plain text.&lt;br /&gt;
&lt;br /&gt;
None the least, semantic markup removes the burden from programmers of thinking about the visual formatting to apply, like &amp;quot;''Should I put the path in quotes or &amp;amp;lt;b&amp;gt;?''&amp;quot;, or &amp;quot;''Should the title be &amp;amp;lt;h2&amp;gt; or &amp;amp;lt;h3&amp;gt;?''&amp;quot;, and so on.&lt;br /&gt;
&lt;br /&gt;
== Context Markers ==&lt;br /&gt;
&lt;br /&gt;
Context marker consist of the semantic role and the interface subcue, in the form of &amp;lt;tt&amp;gt;@role:subcue&amp;lt;/tt&amp;gt;. Each message should be given a role, but the subcue may be left out. The subcue should be given only when the string clearly maps to the user interface element that it describes.&lt;br /&gt;
&lt;br /&gt;
{{warning|Roles and subcues in the context marker cannot be specified at will, but must be drawn from the sets defined below. This is important for several reasons, one being that translators have deliberated about and agreed upon the meanings of presented sets, rather than having to second-guess arbitrary combinations.}}&lt;br /&gt;
&lt;br /&gt;
KUIT defines the following roles and subcues:&lt;br /&gt;
&lt;br /&gt;
; &amp;lt;tt&amp;gt;@action&amp;lt;/tt&amp;gt;&lt;br /&gt;
: Text to all clickable widgets that cause some action to be performed, like an operation on the data, view restructuring, or opening a dialog. The button texts and menu entries (except submenu titles) all fall into this category.&lt;br /&gt;
:&lt;br /&gt;
:: &amp;lt;tt&amp;gt;:button&amp;lt;/tt&amp;gt; - pushbuttons in windows and dialogs&lt;br /&gt;
:: &amp;lt;tt&amp;gt;:inmenu&amp;lt;/tt&amp;gt; - menu entries that perform an action&lt;br /&gt;
:: &amp;lt;tt&amp;gt;:intoolbar&amp;lt;/tt&amp;gt; - toolbar buttons&lt;br /&gt;
&lt;br /&gt;
; &amp;lt;tt&amp;gt;@title&amp;lt;/tt&amp;gt;&lt;br /&gt;
: Text that is semantically a title in the interface. These would include window titles, menu titles, tab names, option group names in configuration dialogs, and column names in list views.&lt;br /&gt;
:&lt;br /&gt;
:: &amp;lt;tt&amp;gt;:window&amp;lt;/tt&amp;gt; - window title (also dock name)&lt;br /&gt;
:: &amp;lt;tt&amp;gt;:menu&amp;lt;/tt&amp;gt; - menu name&lt;br /&gt;
:: &amp;lt;tt&amp;gt;:tab&amp;lt;/tt&amp;gt; - tab name&lt;br /&gt;
:: &amp;lt;tt&amp;gt;:group&amp;lt;/tt&amp;gt; - option group&lt;br /&gt;
:: &amp;lt;tt&amp;gt;:column&amp;lt;/tt&amp;gt; - column name&lt;br /&gt;
&lt;br /&gt;
; &amp;lt;tt&amp;gt;@option&amp;lt;/tt&amp;gt;&lt;br /&gt;
: Text to options which user can turn on and off, or choose between. These are the labels to checkboxes (either in dialogs or in menus) and radio buttons.&lt;br /&gt;
:&lt;br /&gt;
:: &amp;lt;tt&amp;gt;:check&amp;lt;/tt&amp;gt; - checkbox label&lt;br /&gt;
:: &amp;lt;tt&amp;gt;:radio&amp;lt;/tt&amp;gt; - radio-button label&lt;br /&gt;
&lt;br /&gt;
; &amp;lt;tt&amp;gt;@label&amp;lt;/tt&amp;gt;&lt;br /&gt;
: Text labels to various widgets in the interface, which are none of &amp;lt;tt&amp;gt;@action&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;@title&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;@option&amp;lt;/tt&amp;gt;. These include labels to sliders, spinboxes, combo, list and text boxes, font and color choosers.&lt;br /&gt;
:&lt;br /&gt;
:: &amp;lt;tt&amp;gt;:slider&amp;lt;/tt&amp;gt; - slider labels (but end-ranges are @item:inrange!)&lt;br /&gt;
:: &amp;lt;tt&amp;gt;:spinbox&amp;lt;/tt&amp;gt; - spinbox labels&lt;br /&gt;
:: &amp;lt;tt&amp;gt;:listbox&amp;lt;/tt&amp;gt; - list and combo boxes&lt;br /&gt;
:: &amp;lt;tt&amp;gt;:textbox&amp;lt;/tt&amp;gt; - text and edit boxes&lt;br /&gt;
:: &amp;lt;tt&amp;gt;:chooser&amp;lt;/tt&amp;gt; - chooser widgets (fonts, colors, etc.)&lt;br /&gt;
&lt;br /&gt;
; &amp;lt;tt&amp;gt;@item&amp;lt;/tt&amp;gt;&lt;br /&gt;
: Strings that can be considered one from a range of possibilities or properties. Entries in listings, dropdown and combo boxes are obvious, but also some menu items (e.g. encoding selection, sort orderings), end-labels to ranges (e.g. high/low, more/less), inserts into longer texts, and properites (e.g. file types, permissions) frequently displayed in tabular form (e.g. column views, property dialogs).&lt;br /&gt;
:&lt;br /&gt;
:: &amp;lt;tt&amp;gt;:inmenu&amp;lt;/tt&amp;gt; - items presented as menu entries&lt;br /&gt;
:: &amp;lt;tt&amp;gt;:inlistbox&amp;lt;/tt&amp;gt; - items in list and combo boxes&lt;br /&gt;
:: &amp;lt;tt&amp;gt;:intable&amp;lt;/tt&amp;gt; - items presented in table-like forms&lt;br /&gt;
:: &amp;lt;tt&amp;gt;:inrange&amp;lt;/tt&amp;gt; - range labels to sliders, etc.&lt;br /&gt;
:: &amp;lt;tt&amp;gt;:intext&amp;lt;/tt&amp;gt; - words and phrases inserted into other messages&lt;br /&gt;
&lt;br /&gt;
; &amp;lt;tt&amp;gt;@info&amp;lt;/tt&amp;gt;&lt;br /&gt;
: General texts for user's information, that do not fall under any of the previous roles. These are for example tooltip and &amp;quot;What's This?&amp;quot; texts, text in message boxes, fields in status bar, and strings in progress dialogs.&lt;br /&gt;
:&lt;br /&gt;
:: &amp;lt;tt&amp;gt;:tooltip&amp;lt;/tt&amp;gt; - hovering tooltips&lt;br /&gt;
:: &amp;lt;tt&amp;gt;:whatsthis&amp;lt;/tt&amp;gt; - &amp;quot;What's This?&amp;quot; explanations of widgets&lt;br /&gt;
:: &amp;lt;tt&amp;gt;:status&amp;lt;/tt&amp;gt; - texts in status displays (e.g. in status bar)&lt;br /&gt;
:: &amp;lt;tt&amp;gt;:progress&amp;lt;/tt&amp;gt; - the current state of ongoing process&lt;br /&gt;
:: &amp;lt;tt&amp;gt;:tipoftheday&amp;lt;/tt&amp;gt; - introductory tips on application startup&lt;br /&gt;
:: &amp;lt;tt&amp;gt;:credit&amp;lt;/tt&amp;gt; - contributor names and their contributions&lt;br /&gt;
:: &amp;lt;tt&amp;gt;:shell&amp;lt;/tt&amp;gt; - info output to the terminal, rather than to GUI&lt;br /&gt;
&lt;br /&gt;
== Semantic Tags ==&lt;br /&gt;
&lt;br /&gt;
KUIT semantic tags come in several logical groups:&lt;br /&gt;
* ''phrase tags'' - those that ascribe meaning to certain phrases and inserts&lt;br /&gt;
* ''sentence tags'' - which describe the purpose of a complete sentence in text&lt;br /&gt;
* ''structure tags'' - used to order longer text into paragraphs, titles, etc.&lt;br /&gt;
&lt;br /&gt;
=== Phrase tags ===&lt;br /&gt;
&lt;br /&gt;
Phrase tags will by default not admit any subtags; where some subtags can be used, it is so indicated. KUIT defines the folowing phrase tags:&lt;br /&gt;
&lt;br /&gt;
; &amp;lt;tt&amp;gt;&amp;amp;lt;application&amp;amp;gt;&amp;lt;/tt&amp;gt;&lt;br /&gt;
: Name of an application.&lt;br /&gt;
&amp;lt;code cpp&amp;gt;&lt;br /&gt;
i18nc(&amp;quot;@action:inmenu&amp;quot;,&lt;br /&gt;
      &amp;quot;Open with &amp;lt;application&amp;gt;%1&amp;lt;/application&amp;gt;&amp;quot;, appName);&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
; &amp;lt;tt&amp;gt;&amp;amp;lt;bcode&amp;amp;gt;&amp;lt;/tt&amp;gt;&lt;br /&gt;
: Line-breaking body of code, for short listings.&lt;br /&gt;
&amp;lt;code cpp&amp;gt;&lt;br /&gt;
i18nc(&amp;quot;@info:whatsthis&amp;quot;,&lt;br /&gt;
      &amp;quot;You can try the following snippet:&amp;lt;bcode&amp;gt;&amp;quot;&lt;br /&gt;
      &amp;quot;\\begin{equation}&amp;quot;&lt;br /&gt;
      &amp;quot;  C_{x_i} = \\frac{C_z^2}{e \\pi \\lambda}&amp;quot;&lt;br /&gt;
      &amp;quot;\\end{equation}&amp;quot;&lt;br /&gt;
      &amp;quot;&amp;lt;/bcode&amp;gt;&amp;quot;);&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
; &amp;lt;tt&amp;gt;&amp;amp;lt;command&amp;amp;gt;&amp;lt;/tt&amp;gt;&lt;br /&gt;
: Name of shell command or system call. Its man section can be provided via &amp;lt;tt&amp;gt;section&amp;lt;/tt&amp;gt; attribute.&lt;br /&gt;
&amp;lt;code cpp&amp;gt;&lt;br /&gt;
i18nc(&amp;quot;@info&amp;quot;,&lt;br /&gt;
      &amp;quot;This will call &amp;lt;command&amp;gt;%1&amp;lt;/command&amp;gt; internally.&amp;quot;, cmdName);&lt;br /&gt;
&lt;br /&gt;
i18nc(&amp;quot;@info&amp;quot;,&lt;br /&gt;
      &amp;quot;Consult man entry for &amp;lt;command section='1'&amp;gt;%1&amp;lt;/command&amp;gt;&amp;quot;, cmdName);&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
; &amp;lt;tt&amp;gt;&amp;amp;lt;email&amp;amp;gt;&amp;lt;/tt&amp;gt;&lt;br /&gt;
: Email address. Without attributes, the tag text is the address. Address can also be given with &amp;lt;tt&amp;gt;address&amp;lt;/tt&amp;gt; attribute, in which case the tag text is the name or description attached to the address.&lt;br /&gt;
&amp;lt;code cpp&amp;gt;&lt;br /&gt;
i18nc(&amp;quot;@info&amp;quot;,&lt;br /&gt;
      &amp;quot;Send bug reports to &amp;lt;email&amp;gt;%1&amp;lt;/email&amp;gt;.&amp;quot;, emailNull);&lt;br /&gt;
&lt;br /&gt;
i18nc(&amp;quot;@info&amp;quot;,&lt;br /&gt;
      &amp;quot;Send praises to &amp;lt;email address='%1'&amp;gt;the author&amp;lt;/email&amp;gt;.&amp;quot;, emailMy);&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
: The construct will be hyperlinked in rich text format.&lt;br /&gt;
&lt;br /&gt;
; &amp;lt;tt&amp;gt;&amp;amp;lt;emphasis&amp;amp;gt;&amp;lt;/tt&amp;gt;&lt;br /&gt;
: Emphasize a word or phrase in the text.&lt;br /&gt;
&amp;lt;code cpp&amp;gt;&lt;br /&gt;
i18nc(&amp;quot;@info:progress&amp;quot;,&lt;br /&gt;
      &amp;quot;Checking &amp;lt;emphasis&amp;gt;feedback&amp;lt;/emphasis&amp;gt; circuits...&amp;quot;);&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
; &amp;lt;tt&amp;gt;&amp;amp;lt;envar&amp;amp;gt;&amp;lt;/tt&amp;gt;&lt;br /&gt;
: Environment variable. The $ sign will be prepended automatically in formatted text.&lt;br /&gt;
&amp;lt;code cpp&amp;gt;&lt;br /&gt;
i18nc(&amp;quot;@info&amp;quot;,&lt;br /&gt;
      &amp;quot;Assure that your &amp;lt;envar&amp;gt;PATH&amp;lt;/envar&amp;gt; is properly set.&amp;quot;);&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
; &amp;lt;tt&amp;gt;&amp;amp;lt;filename&amp;amp;gt;&amp;lt;/tt&amp;gt;&lt;br /&gt;
: File or folder name or path. The path separators will be transformed into what is native to the platform.&lt;br /&gt;
&amp;lt;code cpp&amp;gt;&lt;br /&gt;
i18nc(&amp;quot;@info&amp;quot;, &amp;quot;Cannot read &amp;lt;filename&amp;gt;%1&amp;lt;/filename&amp;gt;.&amp;quot;, filename);&lt;br /&gt;
&lt;br /&gt;
i18nc(&amp;quot;@info&amp;quot;,&lt;br /&gt;
      &amp;quot;&amp;lt;filename&amp;gt;&amp;lt;envar&amp;gt;HOME&amp;lt;/envar&amp;gt;/.foorc&amp;lt;/filename&amp;gt; does not exist.&amp;quot;);&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
: The &amp;lt;tt&amp;gt;&amp;lt;envar&amp;gt;&amp;lt;/tt&amp;gt; can be used as subtag.&lt;br /&gt;
&lt;br /&gt;
; &amp;lt;tt&amp;gt;&amp;amp;lt;icode&amp;amp;gt;&amp;lt;/tt&amp;gt;&lt;br /&gt;
: Inline code, like shell command lines.&lt;br /&gt;
&amp;lt;code cpp&amp;gt;&lt;br /&gt;
i18nc(&amp;quot;@info:tooltip&amp;quot;,&lt;br /&gt;
      &amp;quot;Execute &amp;lt;icode&amp;gt;svn merge&amp;lt;/icode&amp;gt; on selected revisions.&amp;quot;);&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
: The &amp;lt;tt&amp;gt;&amp;lt;placeholder&amp;gt;&amp;lt;/tt&amp;gt; can be used as subtag.&lt;br /&gt;
&lt;br /&gt;
; &amp;lt;tt&amp;gt;&amp;amp;lt;interface&amp;amp;gt;&amp;lt;/tt&amp;gt;&lt;br /&gt;
: Path to GUI interface element. If there is more than one element in the path, use &amp;quot;/&amp;quot;, &amp;quot;|&amp;quot; or &amp;quot;-&amp;gt;&amp;quot; to delimit elements, which will be converted into canonical form.&lt;br /&gt;
&amp;lt;code cpp&amp;gt;&lt;br /&gt;
i18nc(&amp;quot;@info:whatsthis&amp;quot;,&lt;br /&gt;
      &amp;quot;If you make a mistake, click &amp;quot;&lt;br /&gt;
      &amp;quot;&amp;lt;interface&amp;gt;Reset&amp;lt;/interface&amp;gt; to start again.&amp;quot;);&lt;br /&gt;
i18nc(&amp;quot;@info:whatsthis&amp;quot;,&lt;br /&gt;
      &amp;quot;The line colors can be changed under &amp;quot;&lt;br /&gt;
      &amp;quot;&amp;lt;interface&amp;gt;Settings-&amp;gt;Visuals&amp;lt;/interface&amp;gt;.&amp;quot;);&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
; &amp;lt;tt&amp;gt;&amp;amp;lt;link&amp;amp;gt;&amp;lt;/tt&amp;gt;&lt;br /&gt;
: Link to a URL-addressable resource. Without attributes, the tag text is the URL; alternatively, the URL can be given by &amp;lt;tt&amp;gt;url&amp;lt;/tt&amp;gt; attribute, and then the tag text serves as description.&lt;br /&gt;
&amp;lt;code cpp&amp;gt;&lt;br /&gt;
i18nc(&amp;quot;@info:tooltip&amp;quot;,&lt;br /&gt;
      &amp;quot;Go to &amp;lt;link&amp;gt;%1&amp;lt;/link&amp;gt; website.&amp;quot;, urlKDE);&lt;br /&gt;
&lt;br /&gt;
i18nc(&amp;quot;@info:tooltip&amp;quot;,&lt;br /&gt;
      &amp;quot;Go to &amp;lt;link url='%1'&amp;gt;the KDE website&amp;lt;/link&amp;gt;.&amp;quot;, urlKDE);&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
: The variant with URL/description separation is preferred when applicable. The construct will be hyperlinked in rich text format.&lt;br /&gt;
&lt;br /&gt;
; &amp;lt;tt&amp;gt;&amp;amp;lt;message&amp;amp;gt;&amp;lt;/tt&amp;gt;&lt;br /&gt;
: An external message to be reported to the user.&lt;br /&gt;
&amp;lt;code cpp&amp;gt;&lt;br /&gt;
i18nc(&amp;quot;@info&amp;quot;,&lt;br /&gt;
      &amp;quot;The fortune cookie says: &amp;lt;message&amp;gt;%1&amp;lt;/message&amp;gt;&amp;quot;, trouble);&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
; &amp;lt;tt&amp;gt;&amp;amp;lt;nl&amp;amp;gt;&amp;lt;/tt&amp;gt;&lt;br /&gt;
: Line break, counterpart to HTML's &amp;lt;tt&amp;gt;&amp;amp;lt;br/&amp;amp;gt;&amp;lt;/tt&amp;gt;. In plain text it will format as a newline character, and in rich text as &amp;lt;tt&amp;gt;&amp;amp;lt;br/&amp;amp;gt;&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&amp;lt;code cpp&amp;gt;&lt;br /&gt;
i18nc(&amp;quot;@info&amp;quot;,&lt;br /&gt;
      &amp;quot;Do you really want to delete:&amp;lt;nl/&amp;gt;&amp;quot;&lt;br /&gt;
      &amp;quot;&amp;lt;filename&amp;gt;%1&amp;lt;/filename&amp;gt;&amp;quot;, fileName);&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
; &amp;lt;tt&amp;gt;&amp;amp;lt;numid&amp;amp;gt;&amp;lt;/tt&amp;gt;&lt;br /&gt;
: By default, numbers supplied as arguments to i18n calls are formatted into localized form. If the number is supposed to be a numeric identifier instead, like a port number, use this tag to signal numeric-id environment.&lt;br /&gt;
&amp;lt;code cpp&amp;gt;&lt;br /&gt;
i18nc(&amp;quot;@info:progress&amp;quot;,&lt;br /&gt;
      &amp;quot;Connecting to &amp;lt;numid&amp;gt;%1&amp;lt;/numid&amp;gt;...&amp;quot;, portNo);&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
; &amp;lt;tt&amp;gt;&amp;amp;lt;placeholder&amp;amp;gt;&amp;lt;/tt&amp;gt;&lt;br /&gt;
: A placeholder text, either something to be replaced by the user, or a generic item in a list.&lt;br /&gt;
&amp;lt;code cpp&amp;gt;&lt;br /&gt;
i18nc(&amp;quot;@info&amp;quot;,&lt;br /&gt;
      &amp;quot;Replace &amp;lt;placeholder&amp;gt;name&amp;lt;/placeholder&amp;gt; with your name.&amp;quot;);&lt;br /&gt;
&lt;br /&gt;
i18nc(&amp;quot;@item:inlistbox&amp;quot;,&lt;br /&gt;
      &amp;quot;&amp;lt;placeholder&amp;gt;All images&amp;lt;/placeholder&amp;gt;&amp;quot;);&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
; &amp;lt;tt&amp;gt;&amp;amp;lt;resource&amp;amp;gt;&amp;lt;/tt&amp;gt;&lt;br /&gt;
: General named resource. Names of documents, sessions, projects, toolbars, plugins, schemes and themes, accounts, etc.&lt;br /&gt;
&amp;lt;code cpp&amp;gt;&lt;br /&gt;
i18nc(&amp;quot;@info&amp;quot;, &amp;quot;Apply color scheme &amp;lt;resource&amp;gt;%1&amp;lt;/resource&amp;gt;?&amp;quot;, colScheme);&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
; &amp;lt;tt&amp;gt;&amp;amp;lt;shortcut&amp;amp;gt;&amp;lt;/tt&amp;gt;&lt;br /&gt;
: Combination of keys to press. Separate the keys by &amp;quot;+&amp;quot; or &amp;quot;-&amp;quot;, and the shortcut will be converted into canonical form.&lt;br /&gt;
&amp;lt;code cpp&amp;gt;&lt;br /&gt;
i18nc(&amp;quot;@info:whatsthis&amp;quot;,&lt;br /&gt;
      &amp;quot;Cycle through layouts using &amp;lt;shortcut&amp;gt;Alt+Space&amp;lt;/shortcut&amp;gt;.&amp;quot;);&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Sentence tags ===&lt;br /&gt;
&lt;br /&gt;
Sentence tags mark complete sentences in text, and will admit any phrase tags as subtags. The following are defined:&lt;br /&gt;
&lt;br /&gt;
; &amp;lt;tt&amp;gt;&amp;amp;lt;note&amp;amp;gt;&amp;lt;/tt&amp;gt;&lt;br /&gt;
: The sentence is a side note of significance to the topic.&lt;br /&gt;
&amp;lt;code cpp&amp;gt;&lt;br /&gt;
i18nc(&amp;quot;@info&amp;quot;,&lt;br /&gt;
      &amp;quot;Probably the best known of all duck species is the Mallard. &amp;quot;&lt;br /&gt;
      &amp;quot;It breeds throughout the temperate areas around the world. &amp;quot;&lt;br /&gt;
      &amp;quot;&amp;lt;note&amp;gt;Most domestic ducks are derived from Mallard.&amp;lt;/note&amp;gt;&amp;quot;);&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
: Do not explicitly add &amp;quot;Note:&amp;quot;, it will be added automatically. If you really need other label than &amp;quot;Note&amp;quot;, use attribute &amp;lt;tt&amp;gt;label&amp;lt;/tt&amp;gt;, e.g. &amp;lt;tt&amp;gt;&amp;quot;&amp;lt;note label='Trivia'&amp;gt;...&amp;lt;/note&amp;gt;&amp;quot;&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
; &amp;lt;tt&amp;gt;&amp;amp;lt;warning&amp;amp;gt;&amp;lt;/tt&amp;gt;&lt;br /&gt;
: The sentence is a warning.&lt;br /&gt;
&amp;lt;code cpp&amp;gt;&lt;br /&gt;
i18nc(&amp;quot;@info&amp;quot;,&lt;br /&gt;
      &amp;quot;Really delete this key?&amp;quot;&lt;br /&gt;
      &amp;quot;&amp;lt;warning&amp;gt;This cannot be undone.&amp;lt;/warning&amp;gt;&amp;quot;);&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
: Do not explicitly add &amp;quot;Warning:&amp;quot;, it will be added automatically. If you really need other label than &amp;quot;Warning&amp;quot;, use attribute &amp;lt;tt&amp;gt;label&amp;lt;/tt&amp;gt;, e.g. &amp;lt;tt&amp;gt;&amp;quot;&amp;lt;warning label='Danger'&amp;gt;...&amp;lt;/warning&amp;gt;&amp;quot;&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
=== Structure tags ===&lt;br /&gt;
&lt;br /&gt;
Structure tags are used to split longer texts into titles, paragraphs, and lists. By default they can contain any phrase or sentence tags, unless indicated otherwise.&lt;br /&gt;
&lt;br /&gt;
; &amp;lt;tt&amp;gt;&amp;amp;lt;para&amp;amp;gt;&amp;lt;/tt&amp;gt;&lt;br /&gt;
: Text paragraph.&lt;br /&gt;
&lt;br /&gt;
; &amp;lt;tt&amp;gt;&amp;amp;lt;title&amp;amp;gt;&amp;lt;/tt&amp;gt;&lt;br /&gt;
: The title of the text. Must be the first tag if present, but can be omitted.&lt;br /&gt;
&lt;br /&gt;
; &amp;lt;tt&amp;gt;&amp;amp;lt;subtitle&amp;amp;gt;&amp;lt;/tt&amp;gt;&lt;br /&gt;
: Subtitle in the text. Must be followed by at least one &amp;lt;tt&amp;gt;&amp;amp;lt;para&amp;amp;gt;&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
; &amp;lt;tt&amp;gt;&amp;amp;lt;list&amp;amp;gt;&amp;lt;/tt&amp;gt;&lt;br /&gt;
: List of items. Can contain only &amp;lt;tt&amp;gt;&amp;amp;lt;item&amp;amp;gt;&amp;lt;/tt&amp;gt; as subtags. List is considered an element of the paragraph, so the &amp;lt;tt&amp;gt;&amp;amp;lt;list&amp;amp;gt;&amp;lt;/tt&amp;gt; must be found inside &amp;lt;tt&amp;gt;&amp;amp;lt;para&amp;amp;gt;&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
; &amp;lt;tt&amp;gt;&amp;amp;lt;item&amp;amp;gt;&amp;lt;/tt&amp;gt;&lt;br /&gt;
: List item.&lt;br /&gt;
&lt;br /&gt;
If any of the structure tags is present, then there must be no text outside of structure tags. The following is not valid KUIT markup:&lt;br /&gt;
&amp;lt;code cpp&amp;gt;&lt;br /&gt;
// invalid markup&lt;br /&gt;
i18nc(&amp;quot;@info&amp;quot;,&lt;br /&gt;
      &amp;quot;&amp;lt;title&amp;gt;History Sidebar&amp;lt;/title&amp;gt;&amp;quot;&lt;br /&gt;
      &amp;quot;You can configure the history sidebar here.&amp;quot;); // &amp;lt;para&amp;gt; missing&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Limitations to Use of Semantic Markup ==&lt;br /&gt;
&lt;br /&gt;
Semantic markup cannot be used in &amp;quot;dumb&amp;quot; strings, which do not pass through KDE's i18n subsystem. These would be, for example, strings in &amp;lt;tt&amp;gt;.desktop&amp;lt;/tt&amp;gt; format files. But ''not'' the strings in UI files, as in Qt Designer they can be equipped with both context markers (via comment field to text properties) and semantic tags.&lt;br /&gt;
&lt;br /&gt;
Qt's rich text HTML tags can be used concurrently with KUIT tags, but this is not advised unless necessary. They may be needed, for example, to create tables or insert images, as KUIT does not implement this functionality at the moment.&lt;br /&gt;
&lt;br /&gt;
Sometimes, the visual formatting may not be quite appropriate for the output device; every role/subcue combination has a preset default formatting. For example, if the &amp;lt;tt&amp;gt;@info&amp;lt;/tt&amp;gt; role is applied to a string which is used in a widget that does not handle rich text, it will come out with HTML tags displayed verbatim. To handle this, visual formatting can be explicitly signaled by &amp;lt;tt&amp;gt;/''format''&amp;lt;/tt&amp;gt; modifier appended to context marker:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code cpp&amp;gt;&lt;br /&gt;
i18nc(&amp;quot;@info/plain&amp;quot;,&lt;br /&gt;
      &amp;quot;&amp;lt;filename&amp;gt;%1&amp;lt;/filename&amp;gt; does not exist&amp;quot;, fname);&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Presently, the possible format modifiers are &amp;lt;tt&amp;gt;/plain&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;/rich&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;/term&amp;lt;/tt&amp;gt; (for terminal format, possible use of escape sequences).&lt;br /&gt;
&lt;br /&gt;
A context-aware version of I18N_NOOP is I18N_NOOP2.&lt;br /&gt;
&lt;br /&gt;
== Should I Go For Semantic Markup? ==&lt;br /&gt;
&lt;br /&gt;
Admittedly, KUIT markup is an additional thing to be learned and applied throughout the course of development. By now you may be wondering if it is worthwile to invest time into that, particularly in view of two cases:&lt;br /&gt;
* starting work on a new application, and&lt;br /&gt;
* porting messages in existing applications.&lt;br /&gt;
&lt;br /&gt;
You are strongly advised to use KUIT for new code. Compared to the total time spent on code, writing UI messages is only a small fraction. Context markers will help translators a lot, and message tags will provide consistent visual text formatting to your application.&lt;br /&gt;
&lt;br /&gt;
When modifying existing code, there are two issues. First, obviously it is a daunting task to go through hundreds (or worse) of messages and equip them with semantic markup. Second, by changing the messages, the translators too will have to review their existing translations; however, it is not expected that the porting will take so &amp;quot;epic&amp;quot; proportions that the translators cannot keep up. Sumarily, feel free to do as you see fit.&lt;br /&gt;
&lt;br /&gt;
Additionally, for porting, keep in mind that it is not all-or-nothing proposal. Any amount of semantic messages are useful to translators, and users can only see the difference for the better. Thus, for example, deciding to make all ''new'' messages semantic and slowly over time fix old messages, is a perfectly fine strategy.&lt;br /&gt;
&lt;br /&gt;
To make your job easier, there is an i18n-checker script that will report the problems in KUIT markup, as well as check some other i18n nuances. It is run daily on KDE code repository-wide as part Krazy-framework, but you can also run it locally on your code. It can be found in {{path|trunk/trunk/KDE/kdesdk/ebn/krazy/plugins/i18ncheckarg}}. Furthermore, as of this moment Krazy checks only C++ sources, while when you run the script locally, some of the XML sources containing translatable strings will be checked as well. &amp;lt;tt&amp;gt;i18ncheckarg&amp;lt;/tt&amp;gt; requires Perl libxml bindings, which are probably already packaged for your distribution (Debian package is libxml-libxml-perl).&lt;br /&gt;
&lt;br /&gt;
{{note|By default &amp;lt;tt&amp;gt;i18ncheckarg&amp;lt;/tt&amp;gt; takes a single filename to check, but using &amp;lt;tt&amp;gt;--allsources&amp;lt;/tt&amp;gt; option you can provide as many file or directory paths as you wish; typically you would give top directory path to your sources. Also, to report all missing context markers use &amp;lt;tt&amp;gt;--ctxmark&amp;lt;/tt&amp;gt; option, or otherwise missing markers will be reported only if some threshold of marked-to-total number of messages in a file is reached.}}&lt;br /&gt;
&lt;br /&gt;
Last but not the least, there is also a chic-effect to the KUIT. Its wide use, together with some under-the-hood elements on translators' disposal, will make KDE4's i18n layer without peer in free or proprietary software world. Insofar as you consider localization excellence an important part of the overall KDE excellence, this is something that may also tip your decision :) -- Your Friendly Translator.&lt;/div&gt;</summary>
		<author><name>Shaforostoff</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Development/Tutorials</id>
		<title>Development/Tutorials</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Development/Tutorials"/>
				<updated>2008-05-31T11:30:28Z</updated>
		
		<summary type="html">&lt;p&gt;Shaforostoff: /* Localization */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Template:I18n/Language Navigation Bar|Development/Tutorials}}&lt;br /&gt;
&lt;br /&gt;
Tutorials are the fastest way of finding out what KDE will do for you, and how to do it. Here is a list of currently available tutorials '''for KDE4'''. Material for KDE3 and KDE2 is available on the bottom of this page.&lt;br /&gt;
&lt;br /&gt;
== Introduction To KDE 4 Programming ==&lt;br /&gt;
Are you interested in writing applications with KDE 4? This tutorial series is aimed at those completely new to KDE programming.&lt;br /&gt;
;[[Development/Tutorials/First program|Hello World]]&lt;br /&gt;
:''A preliminary introduction to the very basics of KDE4 programming''&lt;br /&gt;
&lt;br /&gt;
;[[Development/Tutorials/Using KXmlGuiWindow|Creating the Main Window]]&lt;br /&gt;
:''This tutorial shows you the magic of an application's most important thing: The main window.''&lt;br /&gt;
&lt;br /&gt;
;[[Development/Tutorials/Using KActions|Using KActions]]&lt;br /&gt;
:''How to add actions to the menus and toolbars.''&lt;br /&gt;
&lt;br /&gt;
;[[Development/Tutorials/Saving and loading|Saving and Loading]]&lt;br /&gt;
:''Introduces the KIO library while adding loading and saving support to our application.''&lt;br /&gt;
&lt;br /&gt;
;[[Development/Tutorials/KCmdLineArgs|Command line arguments]]&lt;br /&gt;
:''Adds the ability to specify which file to open from the command line to our text editor.''&lt;br /&gt;
&lt;br /&gt;
== Basics ==&lt;br /&gt;
;[[Development/Tutorials/KDE4 Porting Guide|Porting Your Application]]&lt;br /&gt;
:''Help Porting Applications from Qt3/KDE3 to Qt4/KDE4''&lt;br /&gt;
&lt;br /&gt;
;[[Development/Tutorials/CMake|Introduction to CMake]]&lt;br /&gt;
:''How to use the CMake build system used by KDE4.''&lt;br /&gt;
&lt;br /&gt;
;[[Development/Tutorials/Common Programming Mistakes|Common Programming Mistakes]]&lt;br /&gt;
:''Various common mistakes made while developing Qt and KDE applications and how to avoid them.''&lt;br /&gt;
&lt;br /&gt;
;[[Development/Tutorials/Using Qt Designer|Using Qt Designer to build user interfaces]]&lt;br /&gt;
:''How to create UI files with designer, and how to integrate them into a KDE program.''&lt;br /&gt;
&lt;br /&gt;
;[[Development/Tutorials/Creating Libraries|Creating Libraries to share code]]&lt;br /&gt;
:''How to add the library to the buildsystem and how to prepare the source code.''&lt;br /&gt;
&lt;br /&gt;
== Testing And Debugging ==&lt;br /&gt;
&lt;br /&gt;
;[[Development/Tutorials/Debugging|Debugging your application]]&lt;br /&gt;
:''Tips, tools and techniques to apply when debugging your KDE application''&lt;br /&gt;
&lt;br /&gt;
;[[Development/Tutorials/Unittests|Writing Unittests for Qt4 and KDE4 with QTestLib]] ([http://developer.kde.org/documentation/tutorials/writingunittests/writingunittests.html Original link])&lt;br /&gt;
:''Tutorial by [mailto:bradh@frogmouth.net Brad Hards] that describes how to write unit tests using the QTestLib framework. It is presented as an example based tutorial, and is still under development.''&lt;br /&gt;
&lt;br /&gt;
;[[Development/Tutorials/Code_Checking|Semi-automatic ways to detect code errors]]&lt;br /&gt;
:''Techniques you can use to detect errors in KDE code''&lt;br /&gt;
&lt;br /&gt;
== Managing Configuration Data With KConfig ==&lt;br /&gt;
;[[Development/Tutorials/KConfig|Introduction To KConfig]]&lt;br /&gt;
:''An overview of the KConfig classes and how to use them in your application code''&lt;br /&gt;
&lt;br /&gt;
;[[Development/Tutorials/Using KConfig XT|Using KConfig XT]]&lt;br /&gt;
:''Tutorial on how to efficiently use the KConfig XT framework.''&lt;br /&gt;
&lt;br /&gt;
;[[Development/Tutorials/Updating KConfig Files|Updating KConfig Files]]&lt;br /&gt;
:''Tutorial on how to write an update script to keep changes in your application's config file format in sync with the user's already existing config file''&lt;br /&gt;
&lt;br /&gt;
== Services: Applications and Plugins ==&lt;br /&gt;
;[[Development/Tutorials/Services/Introduction|Introduction to the Services Framework]]&lt;br /&gt;
:''An overview of the services framework in KDE and what it provides the application developer. Covers the system configuration cache (SyCoCa), the source data files and what the indexed information can be used for.''&lt;br /&gt;
&lt;br /&gt;
;[[Development/Tutorials/Services/Traders|Finding Services Using Trader Queries]]&lt;br /&gt;
:''How to find services, such as plugins or mimetypes, that are indexed in the SyCoCa using Trader Query Syntax''&lt;br /&gt;
&lt;br /&gt;
;[[Development/Tutorials/Services/Plugins|Creating and Loading Plugins Using KService]]&lt;br /&gt;
:''Learn how to define custom plugin types, find installed plugins (including 3rd party plugins) and load them in an easy and portable fashion using KService.''&lt;br /&gt;
&lt;br /&gt;
== Localization ==&lt;br /&gt;
See also [[Localization|Localization portal]].&lt;br /&gt;
&lt;br /&gt;
;[[Development/Tutorials/Localization/Unicode|Introduction To Unicode]]&lt;br /&gt;
:''An introduction to what Unicode is as well as how to handle Unicode data in KDE applications.''&lt;br /&gt;
&lt;br /&gt;
; [[Development/Tutorials/Localization/i18n|Writing Applications With Localization In Mind]]&lt;br /&gt;
:''This tutorial covers what localization is, why it's important and how to ensure your application is ready to be localized. A must read for all application developers.''&lt;br /&gt;
&lt;br /&gt;
; [[Development/Tutorials/Localization/i18n Mistakes|Avoiding Common Localization Pitfalls]]&lt;br /&gt;
:''There are several common mistakes that prevent applications from being properly localized. Find out what they are and how to easily avoid them in this tutorial.''&lt;br /&gt;
&lt;br /&gt;
; [[Development/Tutorials/Localization/Building KDE's l10n Module|Building KDE's Localization Module]]&lt;br /&gt;
:''Building and installing language support from KDE's localization (l10n) module is a good idea for those working on applications in the main KDE repository. Doing so will allow you to test your application in another language and spot problem areas. Learn how to do just that in this tutorial.''&lt;br /&gt;
&lt;br /&gt;
; [[Development/Tutorials/Localization/i18n Build Systems|Incorporating i18n Into the Build System]]&lt;br /&gt;
:''Once your application is ready to be localized, the next step is to ensure that translation files are built automatically and kept up to date. This tutorial covers the necessary CMakeFiles.txt additions as well the process of distributing the resulting message catalogs with your application.''&lt;br /&gt;
&lt;br /&gt;
; [[Development/Tutorials/Localization/i18n Challenges|Common i18n Challenges and Solutions]]&lt;br /&gt;
:''This tutorial covers challenges that you may eventually run into such as translating handbooks and other data that exists outside of the source code, merging and handling obsolete .po files, dealing with freezes, coding in languages other than English and creating independent releases of or moving applications between KDE modules.''&lt;br /&gt;
&lt;br /&gt;
; [[Development/Tutorials/Localization/i18n_Semantics|Semantic Markup of Messages]]&lt;br /&gt;
:''To ensure consistent presentation and more meaningful representations of messages in applications, semantic markup can be applied to messages marked for translation using the KUIT system. This tutorial describes how this system works.''&lt;br /&gt;
&lt;br /&gt;
; [[Development/Tutorials/Localization/i18n Krazy|Automated i18n Code Checking]]&lt;br /&gt;
:''The Krazy code checker scans KDE's code and reports common i18n mistakes.''&lt;br /&gt;
&lt;br /&gt;
== Documentation ==&lt;br /&gt;
&lt;br /&gt;
;[[Development/Tutorials/API_Documentation|API Documentation]]&lt;br /&gt;
:''This tutorial explains how to document your APIs properly.''&lt;br /&gt;
&lt;br /&gt;
;[[Development/Tutorials/Man_Pages|Man Pages]]&lt;br /&gt;
:''Writing and Generating Reference Manual Pages.''&lt;br /&gt;
&lt;br /&gt;
== Application Automation and Scripting ==&lt;br /&gt;
&lt;br /&gt;
=== D-Bus ===&lt;br /&gt;
; [[Development/Tutorials/D-Bus/Introduction|Introduction to D-Bus]]&lt;br /&gt;
:''A straight-forward introduction to the core concepts in D-Bus from an application developer's perspective, this tutorial covers what D-Bus is and how it can be used by applications.''&lt;br /&gt;
; [[Development/Tutorials/D-Bus/Accessing Interfaces|Accessing D-Bus Interfaces]]&lt;br /&gt;
:''A step-by-step guide to calling D-Bus methods and connecting to D-Bus signals using QtDBus.''&lt;br /&gt;
; [[Development/Tutorials/D-Bus/Intermediate_D-Bus|Intermediate D-Bus]]&lt;br /&gt;
:''Tips to make use of QtDBus when faced with problematic real-world interfaces.''&lt;br /&gt;
; [[Development/Tutorials/D-Bus/Creating Interfaces|Creating D-Bus Interfaces]]&lt;br /&gt;
:''Learn how to expose functionality in your application by creating and using custom D-Bus interfaces. Covers generating the XML descriptions, instantiating interfaces at run time and setting up the build system with CMake.''&lt;br /&gt;
; [[Development/Tutorials/D-Bus/Autostart Services|D-Bus Autostart Services]]&lt;br /&gt;
:''Turn your application into a D-Bus autostart service with this tutorial. This D-Bus feature, also known as &amp;quot;D-Bus service activation&amp;quot;, will ensure that even when your application isn't running that D-Bus calls made to it will work by relying on the D-Bus daemon itself to start your app if and when needed.''&lt;br /&gt;
; [[Development/Tutorials/Porting_to_D-Bus|Porting from DCOP to D-Bus]]&lt;br /&gt;
: ''Port your applications from DCOP to D-Bus with this handy guide.''&lt;br /&gt;
&lt;br /&gt;
=== Konqueror ===&lt;br /&gt;
; [[Development/Tutorials/Creating Konqueror Service Menus|Creating Konqueror Service Menus]]&lt;br /&gt;
:''This tutorial shows you how to create mimetype-specific actions in Konqueror's context menu (aka &amp;quot;servicemenus&amp;quot;).''&lt;br /&gt;
&lt;br /&gt;
=== Kross ===&lt;br /&gt;
; [[Development/Tutorials/Kross/Introduction|Introduction to Kross]]&lt;br /&gt;
:''An introduction to the Kross Scripting Framework.''&lt;br /&gt;
&lt;br /&gt;
; [[Development/Tutorials/Kross/Hello_World|Hello World]]&lt;br /&gt;
:''A first application with working kross code.''&lt;br /&gt;
&lt;br /&gt;
; [[Development/Tutorials/Kross/Call_Functions_in_Kross|Calling Functions in Kross]]&lt;br /&gt;
:''Simple demonstration of calling scripting functions''&lt;br /&gt;
&lt;br /&gt;
; [[Development/Tutorials/Kross/Connecting_Signals_and_slots_in_Kross|Connecting Signals and Slots in Kross]]&lt;br /&gt;
:''Simple demonstration of connecting object signals with script slots''&lt;br /&gt;
&lt;br /&gt;
; [[Development/Tutorials/Kross/Scripts-as-Plugins|Scripts as Plugins with Kross]]&lt;br /&gt;
:''This tutorial provides a step-by-step introduction how to integrate scripts as plugins into a KDE application.''&lt;br /&gt;
&lt;br /&gt;
; [[Development/Tutorials/Kross/Scripts-as-KPlugins|Load Kross Scripts as KPlugins]]&lt;br /&gt;
:''This tutorial provides a step-by-step introduction how to load scripts as KPlugins.''&lt;br /&gt;
&lt;br /&gt;
; [[Development/Tutorials/Kross/Script-Actions|Placing script actions in your application menus ]]&lt;br /&gt;
:''Simple demonstration on how to extend you application menus to execute script files.''&lt;br /&gt;
&lt;br /&gt;
=== KOffice ===&lt;br /&gt;
; [[Development/Tutorials/KOffice Overview|KOffice Overview]]&lt;br /&gt;
:''This document shows an overview of the different KOffice plugin types and tells you what each of their purpose and strengths are.''  If you are new with KOffice plugins, this is the place to start.&lt;br /&gt;
&lt;br /&gt;
; [[Development/Tutorials/Write a Flake Plugin|Creating KOffice Flake Plugins]]&lt;br /&gt;
:''This tutorial shows you how you can build a plugin for KOffice applications to allow you embed content in ODF documents using Flake.''&lt;br /&gt;
&lt;br /&gt;
; [[Development/Tutorials/KWord Scripting|KWord Scripting]]&lt;br /&gt;
:''This tutorial shows how to script KWord with Python, Ruby or JavaScript using Kross.''&lt;br /&gt;
&lt;br /&gt;
; [[Development/Tutorials/KSpread Scripting|KSpread Scripting]]&lt;br /&gt;
:''This tutorial shows how to script KSpread with Python, Ruby or JavaScript using Kross.''&lt;br /&gt;
&lt;br /&gt;
; [[Development/Tutorials/Krita Scripting|Krita Scripting]]&lt;br /&gt;
:''This tutorial shows how to script Krita with Python, Ruby or JavaScript using Kross.''&lt;br /&gt;
&lt;br /&gt;
=== SuperKaramba ===&lt;br /&gt;
; [[Development/Tutorials/SuperKaramba|SuperKaramba Tutorial]]&lt;br /&gt;
:''This tutorial provides an overview of SuperKaramba, theme files and scripting with Python, Ruby and JavaScript.''&lt;br /&gt;
&lt;br /&gt;
== Plugins and KParts ==&lt;br /&gt;
&lt;br /&gt;
; [[Development/Tutorials/Writing kontact plugins|Writing kontact plugins]]:''Kontact plugins are KParts. This tutorial describes how you can write one.''&lt;br /&gt;
&lt;br /&gt;
; [[Development/Tutorials/Using KParts|Using KParts]]:''Learn how to load a KPart into an application window.''&lt;br /&gt;
&lt;br /&gt;
== Search and Metadata ==&lt;br /&gt;
&lt;br /&gt;
=== Strigi ===&lt;br /&gt;
&lt;br /&gt;
; [[Development/Tutorials/Writing file analyzers|Writing file analyzers]]&lt;br /&gt;
:''File analyzers extract data from files to display in the file dialogs and file managers. The data gathered this way is also used to search for files. KDE4 allows the use of multiple analyzers per file type. This tutorial describes how you can write new analyzers.''&lt;br /&gt;
&lt;br /&gt;
=== [http://nepomuk.kde.org Nepomuk] ===&lt;br /&gt;
&lt;br /&gt;
; [[Development/Tutorials/Metadata/Nepomuk/Quickstart|Nepomuk Quickstart]]&lt;br /&gt;
:''How to use Nepomuk resources in a quick and painless way without much fuss.''&lt;br /&gt;
&lt;br /&gt;
; [[Development/Tutorials/Metadata/Nepomuk/RDFIntroduction|RDF and Ontologies in Nepomuk]]&lt;br /&gt;
:''An introduction to RDF and the usage of ontologies in Nepomuk.''&lt;br /&gt;
&lt;br /&gt;
; [[Development/Tutorials/Metadata/Nepomuk/Resources|Handling Resources with Nepomuk]]&lt;br /&gt;
:''Nepomuk is the KDE library which provides easy access to metadata in the Nepomuk system. Learn how to make your application create and read metadata using the Nepomuk system.''&lt;br /&gt;
&lt;br /&gt;
; [[Development/Tutorials/Metadata/Nepomuk/ResourceGenerator|Using the Nepomuk Resource Generator]]&lt;br /&gt;
:''Nepomuk includes a resource generator which creates convenience classes for handling metadata.''&lt;br /&gt;
&lt;br /&gt;
; [[Development/Tutorials/Metadata/Nepomuk/NepomukServer|The Nepomuk Server]]&lt;br /&gt;
:''The Nepomuk Server hosts the main Nepomuk data repository and can be accessed directly via a Soprano API.''&lt;br /&gt;
&lt;br /&gt;
; [[Development/Tutorials/Metadata/Nepomuk/NepomukServices|Nepomuk Services]]&lt;br /&gt;
:''The Nepomuk Server manages a set of Nepomuk services.''&lt;br /&gt;
&lt;br /&gt;
; [[Development/Tutorials/Metadata/Nepomuk/AdvancedQueries|Advanced Queries]]&lt;br /&gt;
:''The real power of Nepomuk can only be exposed when performing fancy queries on the data repository. This tutorial provides an introduction to semantic and full text queries in Nepomuk.''&lt;br /&gt;
&lt;br /&gt;
== Hardware Awareness (Solid) ==&lt;br /&gt;
&lt;br /&gt;
;[[Development/Tutorials/Solid_Tutorials|Introduction to Solid]]&lt;br /&gt;
:''An introduction to using the Solid hardware discovery and interaction system in KDE applications.''&lt;br /&gt;
&lt;br /&gt;
;[[Development/Tutorials/Solid_Network_Tutorial|Accessing Network Information]]&lt;br /&gt;
:''How to use the Solid system to get information about the network''&lt;br /&gt;
&lt;br /&gt;
== Multimedia (Phonon) ==&lt;br /&gt;
&lt;br /&gt;
;[[Development/Tutorials/Phonon/Introduction|Phonon]]&lt;br /&gt;
:''How to start with the multimedia API''&lt;br /&gt;
&lt;br /&gt;
:''How to compile and use Phonon and its GStreamer backend on Linux using Qt 4.3.x''&lt;br /&gt;
::''This article gives you a quick brief of how you can use checkout, compile Phonon and its GStreamer backend on GNU/Linux with just Qt 4.3.x. Towards the end, the article also describes how a developer can make use of Phonon to create simple audio and video players. You can read the article [http://www.vcreatelogic.com/oss/docs/CompilingPhononOnLinux.pdf here]. You can download the editable OpenDocumentText file from [http://www.prashanthudupa.com/phonon/CompilingPhononOnLinux.odt here].''&lt;br /&gt;
&lt;br /&gt;
== Plasma ==&lt;br /&gt;
&lt;br /&gt;
;[[Development/Tutorials/Plasma/GettingStarted|Getting Started With Plasmoids]]&lt;br /&gt;
:''Creating your first Plasma widget, or Plasmoid, in C++ with an SVG background, an icon and some text''&lt;br /&gt;
&lt;br /&gt;
;[[Development/Tutorials/Plasma/DataEngines|Writing A DataEngine]]&lt;br /&gt;
:''DataEngines provide a [http://api.kde.org/4.0-api/kdebase-apidocs/workspace/libs/plasma/html/classPlasma_1_1DataEngine.html  standardized interface] to various data sources for visualizations to use. Learn what a DataEngine is and how to write one of your own.''&lt;br /&gt;
&lt;br /&gt;
;[[Development/Tutorials/Plasma/UsingDataEngines|Using DataEngines in Plasmoids]]&lt;br /&gt;
:''With a DataEngine, it is possible to retrieve data for display in a simple and standard way. This tutorial covers the topic of how to use DataEngines for this purpose in Plasmoids.''&lt;br /&gt;
&lt;br /&gt;
;[[Development/Tutorials/Plasma/AbstractRunner|Creating Runners]]&lt;br /&gt;
:''Runners are plugins that provide action-based search functionality in the Plasma workspace &amp;quot;run command&amp;quot; dialog. These plugins can be used by any application that links again libplasma.''&lt;br /&gt;
&lt;br /&gt;
;[[Development/Tutorials/Plasma/Theme|Creating a Plasma Theme]]&lt;br /&gt;
:''Guide to creating your first Plasma theme.''&lt;br /&gt;
&lt;br /&gt;
== Communication (Decibel) ==&lt;br /&gt;
&lt;br /&gt;
;[[Development/Tutorials/Decibel/GettingStarted|Getting started with Decibel]]&lt;br /&gt;
:''This tutorial describes how to set up Decibel.''&lt;br /&gt;
&lt;br /&gt;
;[[Development/Tutorials/Decibel/Handling_TextChannels|Handling TextChannels]]&lt;br /&gt;
:''This tutorial introduces the basics of handling incoming TextChannels by guiding you through building a simple text chat application.''&lt;br /&gt;
&lt;br /&gt;
== Kate / Kwrite ==&lt;br /&gt;
&lt;br /&gt;
;[[Development/Tutorials/Kate/KTextEditor Plugins|Getting started with KTextEditor plugins]]&lt;br /&gt;
:''Creating your first KTextEditor plugin''&lt;br /&gt;
&lt;br /&gt;
;[[Development/Tutorials/Kate/KTextEditor_Plugins_Advanced|Developing a plugin with configuration dialog]]&lt;br /&gt;
:''Adding a configuration dialog to the Time &amp;amp; Date example''&lt;br /&gt;
&lt;br /&gt;
;[[Development/Tutorials/Kate/KTextEditor_Example|A small Editor]]&lt;br /&gt;
:''Create a small application using KTextEditor''&lt;br /&gt;
&lt;br /&gt;
==Printing==&lt;br /&gt;
&lt;br /&gt;
;[[Development/Tutorials/Printing Hello World|Hello World]]&lt;br /&gt;
:''Introduction to the KDE printing system''&lt;br /&gt;
&lt;br /&gt;
;[[Development/Tutorials/Printing Print Dialog|Print Dialog]]&lt;br /&gt;
:''Using the KDE print dialog''&lt;br /&gt;
&lt;br /&gt;
== Get Hot New Stuff ==&lt;br /&gt;
; [[Development/Tutorials/K_Hot_New_Stuff2|New introduction to KGet Hot New Stuff2]]&lt;br /&gt;
:''A short tutorial about how to use KHotNewStuff2 in your application.''&lt;br /&gt;
&lt;br /&gt;
* old links for KNS1 content:&lt;br /&gt;
; [[Development/Tutorials/Introduction to Get Hot New Stuff|Introduction to Get Hot New Stuff]]&lt;br /&gt;
:''An introduction to the developer-friendly network update system that allows KDE applications to fetch new application data at runtime in a user friendly manner.''&lt;br /&gt;
&lt;br /&gt;
;[[Development/Tutorials/KNewStuffSecure|KNewStuff Secure]] ([http://developer.kde.org/documentation/tutorials/knewstuffsecure/index.html Original Link])&lt;br /&gt;
:''Tutorial showing how to share resources in a secured way (KDE 3.4 and later).''  By Andr&amp;amp;#225;s Mantia &amp;amp;lt;amantia@kde.org&amp;amp;gt;.&lt;br /&gt;
&lt;br /&gt;
== Goya ==&lt;br /&gt;
; [[Development/Tutorials/Introduction to Goya usage|Introduction to Goya usage]]&lt;br /&gt;
:''An introduction for the Goya subsystem usage, which allows you to easily add widgets to your itemviews and connect their signals to your code, as they were real widgets.''&lt;br /&gt;
&lt;br /&gt;
; [[Development/Tutorials/Introduction to Goya usage 2|Introduction to Goya usage (part 2)]]&lt;br /&gt;
:''The second part of the tutorial, with a slightly more complex example than the first part.''&lt;br /&gt;
&lt;br /&gt;
== Rapid Application Development ==&lt;br /&gt;
&lt;br /&gt;
=== Python ===&lt;br /&gt;
&lt;br /&gt;
;[[Development/Tutorials/Python introduction to signals and slots|101 Introduction to signals and slots]]&lt;br /&gt;
:''A simple introduction to Qt's signal and slot architecture.''&lt;br /&gt;
&lt;br /&gt;
=== Ruby ===&lt;br /&gt;
&lt;br /&gt;
;[http://developer.kde.org/language-bindings/ruby/kde3tutorial/index.html KDE Ruby Korundum tutorial]&lt;br /&gt;
:''A ruby version of Antonio Larrosa Jim&amp;amp;eacute;nez's KDE tutorial by Richard Dale. See the [http://developer.kde.org/language-bindings/ruby/index.html Ruby Developers Corner] for Qt tutorials and other info.''&lt;br /&gt;
&lt;br /&gt;
;[[Development/Tutorials/Qt4_Ruby_Tutorial|Qt4 Ruby Tutorial]]&lt;br /&gt;
:''Trolltech's fabulous introductory tutorial to Qt, translated to Ruby.''&lt;br /&gt;
&lt;br /&gt;
=== Shell ===&lt;br /&gt;
&lt;br /&gt;
;[[Development/Tutorials/Shell_Scripting_with_KDE_Dialogs|Shell Scripting with KDE dialogs]] ([http://developer.kde.org/documentation/tutorials/kdialog/t1.html Original Link]) &lt;br /&gt;
:''Tutorial by [mailto:bradh@frogmouth.net Brad Hards] that describes how to use KDE dialogs in shell scripts with kdialog. It is presented as an example based tutorial.''&lt;br /&gt;
&lt;br /&gt;
== Graphics Programming ==&lt;br /&gt;
&lt;br /&gt;
;[[Development/Tutorials/Graphics/Performance|QPainter Perfomance]]&lt;br /&gt;
:''Hints on avoiding common mistakes leading to poor performance when using QPainter''&lt;br /&gt;
&lt;br /&gt;
== Other tutorials ==&lt;br /&gt;
&lt;br /&gt;
=== Using the KDE Games Library ===&lt;br /&gt;
;[[Development/Tutorials/Games/KStandardGameAction| KStandardGameAction]]&lt;br /&gt;
:''Using libkdegames to make your game fit the kdegames standard''&lt;br /&gt;
;[[Development/Tutorials/Games/Highscores| Highscores]]&lt;br /&gt;
:''Implementing a simple highscore table into your game''&lt;br /&gt;
;[[Development/Tutorials/Games/Theme Selector| Theme Selector]]&lt;br /&gt;
:''Using the libkdegames theme selection dialog''&lt;br /&gt;
&lt;br /&gt;
=== 2D Plotting (KPlotWidget) ===&lt;br /&gt;
;[[Development/Tutorials/KPlotWidget|Using the KDE data-plotting widget]]&lt;br /&gt;
:''This tutorial introduces KPlotWidget, which is used for 2-D data plotting.  It includes information on simple usage of the widget (including adding and modifying data sets, and customizing the plot axes and labels), and advanced customization (including extending the widget through sub-classing).''&lt;br /&gt;
&lt;br /&gt;
=== Spelling and Grammar Checking (Sonnet) ===&lt;br /&gt;
;[[Development/Tutorials/Sonnet/SonnetTutorial|Adding spell-checking or grammar-checking to KDE applications]]&lt;br /&gt;
:''This tutorial introduces Sonnet and how one may use it to add language correction to your KDE application. Sonnet's auxiliary features shall be described in a separate tutorial.''&lt;br /&gt;
&lt;br /&gt;
=== Pixmap cache (KPixmapCache) ===&lt;br /&gt;
;[[Development/Tutorials/KPixmapCache|Using the KDE pixmap cache]]&lt;br /&gt;
:''This tutorial shows how to use KPixmapCache to cache e.g. pixmaps generated from SVGs or some data.''&lt;br /&gt;
&lt;br /&gt;
=== Using MarbleWidget (Marble) ===&lt;br /&gt;
;[[Development/Tutorials/MarbleWidget|Using MarbleWidget]]&lt;br /&gt;
:''This short tutorial describes how to use the MarbleWidget in your project''&lt;br /&gt;
&lt;br /&gt;
=== Using local SCM for KDE development ===&lt;br /&gt;
;[[Development/Tutorials/Git|Using Git to develop for KDE]]&lt;br /&gt;
:''This tutorial shows how to use Git to develop for KDE''&lt;br /&gt;
&lt;br /&gt;
== KDE2 and KDE3 Materials ==&lt;br /&gt;
&lt;br /&gt;
;[[Development/Tutorials/KDE3|KDE3 Tutorials]]&lt;br /&gt;
:''These tutorials cover topics related to KDE3.''&lt;br /&gt;
&lt;br /&gt;
;[[Development/Tutorials/KDE2|KDE2 Tutorials]]&lt;br /&gt;
:''These tutorials cover topics related to KDE2.''&lt;br /&gt;
&lt;br /&gt;
[[Category:KDE4]]&lt;/div&gt;</summary>
		<author><name>Shaforostoff</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Projects/Summer_of_Code/2007/Projects/KAider</id>
		<title>Projects/Summer of Code/2007/Projects/KAider</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Projects/Summer_of_Code/2007/Projects/KAider"/>
				<updated>2008-05-25T22:40:00Z</updated>
		
		<summary type="html">&lt;p&gt;Shaforostoff: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;''' WARNING ''' KAider was renamed to '''Lokalize''' and will be included in kdesdk package for KDE 4.1&lt;br /&gt;
&lt;br /&gt;
Lokalize is a computer-aided translation system that focuses on productivity and performance. Translator does only creative work (of delivering message in his/her mother language in laconic and easy to understand form). Lokalize implies paragraph-by-paragraph translation approach (when translating documentation) and message-by-message approach (when translating GUI).&lt;br /&gt;
See [[Projects/Summer_of_Code/2007/Projects/KAider/Introduction|KAider/Introduction]]&lt;br /&gt;
&lt;br /&gt;
==Current state==&lt;br /&gt;
Already has:&lt;br /&gt;
* syntax highlighting&lt;br /&gt;
* spellcheck (sonnet needs improvement)&lt;br /&gt;
* search-n-replace, ignoring accel marks&lt;br /&gt;
* formats .po file output better so less diff is generated by scripty&lt;br /&gt;
* small features like quick tag insert, placing text cursor right after the tag in the beginning (e.g. '&amp;lt;qt&amp;gt;|foobar&amp;lt;/qt&amp;gt;' where &amp;quot;|&amp;quot; is a cursor), entry bookmarks&lt;br /&gt;
* viewer of the difference between current msgid and previous one (i.e. msgid translation of which current msgstr really is -- for fuzzies generated with --previous gettext option)&lt;br /&gt;
* merge mode for editors (QA) or when several translators work on the same file [http://kv-53.narod.ru/kaider2.png screenshot]&lt;br /&gt;
* basic projectmanager functionality [http://kv-53.narod.ru/kaider1.png screenshot]&lt;br /&gt;
* Translation Memory (threaded) with shortcuts for inserting suggestions into current 'msgstr', scores are computed based on common/total length ratio, removed+added length, and count of removed+added parts [http://kv-53.narod.ru/kaider_tm.png screenshot]&lt;br /&gt;
* for difference representation in all places word-by-word algorithm is used (based on the Longest Common Sequence o(n*n) algorithm and my own experience)&lt;br /&gt;
* glossary with basic [http://www.lisa.org/standards/tbx/ tbx] format support. Lokalize displays relevant entries on-the-fly and provides shortcuts to insert them. also, you can add new glossary terms via context menu of the glossary. [http://kv-53.narod.ru/kaider3.png screenshot 1] [http://kv-53.narod.ru/kaider4.png screenshot 2]&lt;br /&gt;
* webquery view, flexible thanks to kross&lt;br /&gt;
* Search/Replace functions in multiple files at once.&lt;br /&gt;
* Spellchecking of multiple files at once.&lt;br /&gt;
&lt;br /&gt;
==Compiling==&lt;br /&gt;
After you [[Getting_Started/Build/KDE4|set kde env up]] (compiling kdelibs+kdebase is enough):&lt;br /&gt;
 svn checkout -N svn://anonsvn.kde.org/home/kde/trunk/KDE/kdesdk/&lt;br /&gt;
 cd kdesdk &amp;amp;&amp;amp; svn up cmake doc lokalize&lt;br /&gt;
 mkdir kdesdk/build &amp;amp;&amp;amp; chmod a+w kdesdk/build&lt;br /&gt;
 su kde-devel&lt;br /&gt;
 cd kdesdk/build&lt;br /&gt;
 cmakekde ..&lt;br /&gt;
&lt;br /&gt;
as a root, run sshd and then from the usual shell:&lt;br /&gt;
 ssh -XC kde-devel@localhost&lt;br /&gt;
 lokalize &lt;br /&gt;
&lt;br /&gt;
you can get catalogmanager by specifying --project option&lt;br /&gt;
 lokalize --project /path/to/index.ktp&lt;br /&gt;
&lt;br /&gt;
See [[Projects/Summer_of_Code/2007/Projects/KAider#Setup]].&lt;br /&gt;
&lt;br /&gt;
===Debian users===&lt;br /&gt;
You can install the latest version of lokalize from experimental repository: [http://packages.debian.org/experimental/lokalize]&lt;br /&gt;
&lt;br /&gt;
==Setup==&lt;br /&gt;
* Create project, saving *.ktp file to l10n-kde4/&amp;lt;LangCode&amp;gt;/ dir&lt;br /&gt;
* Populate Glossary via GlossaryView context menu (.tbx file will be created automatically for you on the first entry addition).&lt;br /&gt;
* Populate Translation Memory by dropping .po files onto TM View&lt;br /&gt;
&lt;br /&gt;
See [http://websvn.kde.org/trunk/l10n-kde4/ru/] for an example project structure&lt;br /&gt;
&lt;br /&gt;
==Maxims==&lt;br /&gt;
* Majority of actions must be accessible via keyboard (because it is faster to press a shotcut than to be frustrated with a mouse)&lt;br /&gt;
* Do automatization _everywhere_ possible&lt;br /&gt;
* Focus on translation quality. This is open source -- so source code is available (for change)&lt;br /&gt;
&lt;br /&gt;
==Further work==&lt;br /&gt;
*&amp;quot;as-you-type&amp;quot;-spellcheck&lt;br /&gt;
*dbus&lt;br /&gt;
*WebQuery for twin languages (like Ukrainian and Russian)&lt;br /&gt;
*xliff+qt-linguist support (see [[#KBabel features to be implemented|KBabel features to be implemented]])&lt;br /&gt;
* Glossary checklists: check for forbidden terms in new translation&lt;br /&gt;
* project-wise and program-wise: webquery scripts, glossaries, TMs&lt;br /&gt;
* check for different translations of the same msgid (use strigi?)&lt;br /&gt;
* back-checking, to see whether a term/string in the target language has been used as translation for different things, not just that one source has the same translation everywhere.&lt;br /&gt;
* Tighten SVN support: svn diff-like feature&lt;br /&gt;
* Automatic Glossary building&lt;br /&gt;
* Research on dividing into sentences rules (e.g. srx)&lt;br /&gt;
* Automate submitting translation suggestions to translate.google.com [Kross action]&lt;br /&gt;
* [Kross (project) action] that merges translations with updated template&lt;br /&gt;
* fill TM with content of /usr/share/locale/&amp;lt;lang&amp;gt;/LC_MESSAGES/*.mo [Kross action]&lt;br /&gt;
&lt;br /&gt;
Not for KDE:&lt;br /&gt;
* Be complete computer-aided translation system by providing e.g. actions to import+export openoffice, txt and documents of other formats by calling appropriate scripts/commands. Define for that general kross actions interface.&lt;br /&gt;
* Make nice windoze package for the windowzerz&lt;br /&gt;
&lt;br /&gt;
Competitors (ideas):&lt;br /&gt;
* [http://www.triplespin.com/en/products/locfactoryeditor.html#whatsnew locfactoryeditor] --Mac only&lt;br /&gt;
* [http://www.heartsome.net/EN/downloads.html Heartsome] --multiplatform, costs money&lt;br /&gt;
* Go over [http://sourceforge.net/tracker/?atid=520350&amp;amp;group_id=68187&amp;amp;func=browse OmegaT wishlist] and ensure every sane wish is implemented&lt;br /&gt;
&lt;br /&gt;
Converters (use, acting as a front-end):&lt;br /&gt;
* [http://file2xliff4j.sourceforge.net/javadoc/file2xliff4j/package-summary.html file2xliff4j] --java-based&lt;br /&gt;
* [https://open-language-tools.dev.java.net] --java-based&lt;br /&gt;
* [http://translate.sourceforge.net/wiki/toolkit/index Translate Toolkit] --python-based, checks, other goodness&lt;br /&gt;
&lt;br /&gt;
==KBabel features to be implemented==&lt;br /&gt;
...in a smarter way :)&lt;br /&gt;
* persistent bookmarks for messages in a file saved in the project&lt;br /&gt;
* extended marking of .po and .pot files (e.g. translator that currently works on the file and cince when) saved in the project&lt;br /&gt;
* Opening source code by references in message comments [Kross action]&lt;br /&gt;
* A plugin framework for validation tools for consistency checks [Kross action triggered on saving]&lt;br /&gt;
* Sending the file using email [Kross (project) action]&lt;br /&gt;
* Automatic syntax check with msgfmt when saving and, if an error occured, easy navigation to messages, which contain errors. == Syntax check (msgfmt --statistics) for existing files to control if the translated files will compile and, accordingly, work when distributed [Kross (project) action]&lt;br /&gt;
* CVS and SVN support [Kross project action] (is 'svn ci' so hard?)&lt;br /&gt;
* statistics&lt;br /&gt;
* PO File Header change [Kross action (+triggered on saving)]&lt;br /&gt;
* Printing of selected messages (eg fuzzy ) [Kross action]&lt;br /&gt;
Also:&lt;br /&gt;
* msgid-diff-msgstr from [http://lichota.net/~krzysiek/projects/msgtools/] (features for all other commands are already implemented, if you haven't noticed this)&lt;br /&gt;
&lt;br /&gt;
==KBabel features NOT to be implemented==&lt;br /&gt;
* Character selection tool integration, sort by the frequency&lt;br /&gt;
Why? Better improve system-wide charselect tool, OR...&lt;br /&gt;
modify your xorg keyboard layout!&lt;/div&gt;</summary>
		<author><name>Shaforostoff</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Projects/Summer_of_Code/2007/Projects/KAider</id>
		<title>Projects/Summer of Code/2007/Projects/KAider</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Projects/Summer_of_Code/2007/Projects/KAider"/>
				<updated>2008-05-25T22:39:15Z</updated>
		
		<summary type="html">&lt;p&gt;Shaforostoff: /* Debian users */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;''' WARNING ''' KAider was renamed to '''Lokalize''' and will be included in kdesdk package for KDE 4.1&lt;br /&gt;
&lt;br /&gt;
Lokalize is a computer-aided translation system that focuses on productivity and performance. Translator does only creative work (of delivering message in his/her mother language in laconic and easy to understand form). Lokalizer implies paragraph-by-paragraph translation approach (when translating documentation) and message-by-message approach (when translating GUI).&lt;br /&gt;
See [[Projects/Summer_of_Code/2007/Projects/KAider/Introduction|KAider/Introduction]]&lt;br /&gt;
&lt;br /&gt;
==Current state==&lt;br /&gt;
Already has:&lt;br /&gt;
* syntax highlighting&lt;br /&gt;
* spellcheck (sonnet needs improvement)&lt;br /&gt;
* search-n-replace, ignoring accel marks&lt;br /&gt;
* formats .po file output better so less diff is generated by scripty&lt;br /&gt;
* small features like quick tag insert, placing text cursor right after the tag in the beginning (e.g. '&amp;lt;qt&amp;gt;|foobar&amp;lt;/qt&amp;gt;' where &amp;quot;|&amp;quot; is a cursor), entry bookmarks&lt;br /&gt;
* viewer of the difference between current msgid and previous one (i.e. msgid translation of which current msgstr really is -- for fuzzies generated with --previous gettext option)&lt;br /&gt;
* merge mode for editors (QA) or when several translators work on the same file [http://kv-53.narod.ru/kaider2.png screenshot]&lt;br /&gt;
* basic projectmanager functionality [http://kv-53.narod.ru/kaider1.png screenshot]&lt;br /&gt;
* Translation Memory (threaded) with shortcuts for inserting suggestions into current 'msgstr', scores are computed based on common/total length ratio, removed+added length, and count of removed+added parts [http://kv-53.narod.ru/kaider_tm.png screenshot]&lt;br /&gt;
* for difference representation in all places word-by-word algorithm is used (based on the Longest Common Sequence o(n*n) algorithm and my own experience)&lt;br /&gt;
* glossary with basic [http://www.lisa.org/standards/tbx/ tbx] format support. Lokalize displays relevant entries on-the-fly and provides shortcuts to insert them. also, you can add new glossary terms via context menu of the glossary. [http://kv-53.narod.ru/kaider3.png screenshot 1] [http://kv-53.narod.ru/kaider4.png screenshot 2]&lt;br /&gt;
* webquery view, flexible thanks to kross&lt;br /&gt;
* Search/Replace functions in multiple files at once.&lt;br /&gt;
* Spellchecking of multiple files at once.&lt;br /&gt;
&lt;br /&gt;
==Compiling==&lt;br /&gt;
After you [[Getting_Started/Build/KDE4|set kde env up]] (compiling kdelibs+kdebase is enough):&lt;br /&gt;
 svn checkout -N svn://anonsvn.kde.org/home/kde/trunk/KDE/kdesdk/&lt;br /&gt;
 cd kdesdk &amp;amp;&amp;amp; svn up cmake doc lokalize&lt;br /&gt;
 mkdir kdesdk/build &amp;amp;&amp;amp; chmod a+w kdesdk/build&lt;br /&gt;
 su kde-devel&lt;br /&gt;
 cd kdesdk/build&lt;br /&gt;
 cmakekde ..&lt;br /&gt;
&lt;br /&gt;
as a root, run sshd and then from the usual shell:&lt;br /&gt;
 ssh -XC kde-devel@localhost&lt;br /&gt;
 lokalize &lt;br /&gt;
&lt;br /&gt;
you can get catalogmanager by specifying --project option&lt;br /&gt;
 lokalize --project /path/to/index.ktp&lt;br /&gt;
&lt;br /&gt;
See [[Projects/Summer_of_Code/2007/Projects/KAider#Setup]].&lt;br /&gt;
&lt;br /&gt;
===Debian users===&lt;br /&gt;
You can install the latest version of lokalize from experimental repository: [http://packages.debian.org/experimental/lokalize]&lt;br /&gt;
&lt;br /&gt;
==Setup==&lt;br /&gt;
* Create project, saving *.ktp file to l10n-kde4/&amp;lt;LangCode&amp;gt;/ dir&lt;br /&gt;
* Populate Glossary via GlossaryView context menu (.tbx file will be created automatically for you on the first entry addition).&lt;br /&gt;
* Populate Translation Memory by dropping .po files onto TM View&lt;br /&gt;
&lt;br /&gt;
See [http://websvn.kde.org/trunk/l10n-kde4/ru/] for an example project structure&lt;br /&gt;
&lt;br /&gt;
==Maxims==&lt;br /&gt;
* Majority of actions must be accessible via keyboard (because it is faster to press a shotcut than to be frustrated with a mouse)&lt;br /&gt;
* Do automatization _everywhere_ possible&lt;br /&gt;
* Focus on translation quality. This is open source -- so source code is available (for change)&lt;br /&gt;
&lt;br /&gt;
==Further work==&lt;br /&gt;
*&amp;quot;as-you-type&amp;quot;-spellcheck&lt;br /&gt;
*dbus&lt;br /&gt;
*WebQuery for twin languages (like Ukrainian and Russian)&lt;br /&gt;
*xliff+qt-linguist support (see [[#KBabel features to be implemented|KBabel features to be implemented]])&lt;br /&gt;
* Glossary checklists: check for forbidden terms in new translation&lt;br /&gt;
* project-wise and program-wise: webquery scripts, glossaries, TMs&lt;br /&gt;
* check for different translations of the same msgid (use strigi?)&lt;br /&gt;
* back-checking, to see whether a term/string in the target language has been used as translation for different things, not just that one source has the same translation everywhere.&lt;br /&gt;
* Tighten SVN support: svn diff-like feature&lt;br /&gt;
* Automatic Glossary building&lt;br /&gt;
* Research on dividing into sentences rules (e.g. srx)&lt;br /&gt;
* Automate submitting translation suggestions to translate.google.com [Kross action]&lt;br /&gt;
* [Kross (project) action] that merges translations with updated template&lt;br /&gt;
* fill TM with content of /usr/share/locale/&amp;lt;lang&amp;gt;/LC_MESSAGES/*.mo [Kross action]&lt;br /&gt;
&lt;br /&gt;
Not for KDE:&lt;br /&gt;
* Be complete computer-aided translation system by providing e.g. actions to import+export openoffice, txt and documents of other formats by calling appropriate scripts/commands. Define for that general kross actions interface.&lt;br /&gt;
* Make nice windoze package for the windowzerz&lt;br /&gt;
&lt;br /&gt;
Competitors (ideas):&lt;br /&gt;
* [http://www.triplespin.com/en/products/locfactoryeditor.html#whatsnew locfactoryeditor] --Mac only&lt;br /&gt;
* [http://www.heartsome.net/EN/downloads.html Heartsome] --multiplatform, costs money&lt;br /&gt;
* Go over [http://sourceforge.net/tracker/?atid=520350&amp;amp;group_id=68187&amp;amp;func=browse OmegaT wishlist] and ensure every sane wish is implemented&lt;br /&gt;
&lt;br /&gt;
Converters (use, acting as a front-end):&lt;br /&gt;
* [http://file2xliff4j.sourceforge.net/javadoc/file2xliff4j/package-summary.html file2xliff4j] --java-based&lt;br /&gt;
* [https://open-language-tools.dev.java.net] --java-based&lt;br /&gt;
* [http://translate.sourceforge.net/wiki/toolkit/index Translate Toolkit] --python-based, checks, other goodness&lt;br /&gt;
&lt;br /&gt;
==KBabel features to be implemented==&lt;br /&gt;
...in a smarter way :)&lt;br /&gt;
* persistent bookmarks for messages in a file saved in the project&lt;br /&gt;
* extended marking of .po and .pot files (e.g. translator that currently works on the file and cince when) saved in the project&lt;br /&gt;
* Opening source code by references in message comments [Kross action]&lt;br /&gt;
* A plugin framework for validation tools for consistency checks [Kross action triggered on saving]&lt;br /&gt;
* Sending the file using email [Kross (project) action]&lt;br /&gt;
* Automatic syntax check with msgfmt when saving and, if an error occured, easy navigation to messages, which contain errors. == Syntax check (msgfmt --statistics) for existing files to control if the translated files will compile and, accordingly, work when distributed [Kross (project) action]&lt;br /&gt;
* CVS and SVN support [Kross project action] (is 'svn ci' so hard?)&lt;br /&gt;
* statistics&lt;br /&gt;
* PO File Header change [Kross action (+triggered on saving)]&lt;br /&gt;
* Printing of selected messages (eg fuzzy ) [Kross action]&lt;br /&gt;
Also:&lt;br /&gt;
* msgid-diff-msgstr from [http://lichota.net/~krzysiek/projects/msgtools/] (features for all other commands are already implemented, if you haven't noticed this)&lt;br /&gt;
&lt;br /&gt;
==KBabel features NOT to be implemented==&lt;br /&gt;
* Character selection tool integration, sort by the frequency&lt;br /&gt;
Why? Better improve system-wide charselect tool, OR...&lt;br /&gt;
modify your xorg keyboard layout!&lt;/div&gt;</summary>
		<author><name>Shaforostoff</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Schedules/KDE4/4.2_Feature_Plan</id>
		<title>Schedules/KDE4/4.2 Feature Plan</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Schedules/KDE4/4.2_Feature_Plan"/>
				<updated>2008-05-19T21:25:42Z</updated>
		
		<summary type="html">&lt;p&gt;Shaforostoff: /* kdesdk */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This is a list of planned features for the 4.2 release.&lt;br /&gt;
&lt;br /&gt;
See also:&lt;br /&gt;
* [[Schedules/KDE4/4.2 Release Schedule]]&lt;br /&gt;
* [[Schedules/KDE4/4.1 Feature Plan]]&lt;br /&gt;
* [[Schedules/KDE4/Goals]]&lt;br /&gt;
&lt;br /&gt;
Legend:&lt;br /&gt;
* todo =&amp;gt; not started yet&lt;br /&gt;
* in-progress =&amp;gt; started, but not completed yet&lt;br /&gt;
* done =&amp;gt; completed&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
= Other =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureTodo|System Settings|add Administrator mode button|?|?}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= kdelibs =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureInProgress|kross|Extend QtScript integration.|mail@dipe.org|Sebastian Sauer}}&lt;br /&gt;
{{FeatureInProgress|KDEPrint|Reintroduce KDEPrint in some form, depending on what Qt4.4 delivers.|john@layt.net|john Layt}}&lt;br /&gt;
{{FeatureTodo|KDEPrint|Add framework for standard actions for 'Send to...' for e-mail, fax, etc by printing to PDF/PS.|john@layt.net|John Layt}}&lt;br /&gt;
{{FeatureTodo|KDEPrint|Migrate FilePrinter class from Okular to enable file printing for all apps via QPrinter, modify to utilise new Qt4.4 features.  To be discussed on k-c-d first.|john@layt.net|John Layt}}&lt;br /&gt;
{{FeatureTodo|KCalenderSystem|Add new calendar systems: Indian Civil (Saka), Ethiopean, Chinese, Pure Julian, Pure Gregorian. (Note, not all may live in kdelibs or be available as a global calendar system)|john@layt.net|John Layt}}&lt;br /&gt;
{{FeatureTodo|KLocale|Implement KLocale based methods to return weekend days and day of religious observance.  Currently KCalendarSystem provides dayOfPray(), but for Gregorian this is not correct in all locales where it is used.  Currently KDatePicker hardcodes Saturday and dayOfPray() as weekend days which may not be correct in all locales.  To be discussed first on k-c-d and with kdepim.|john@layt.net|John Layt}}&lt;br /&gt;
{{FeatureTodo|Phonon|add Port class for fine grained control over data flow between Phonon objects|kretz@kde.org|Matthias Kretz}}&lt;br /&gt;
{{FeatureInProgress|Phonon|make AbstractMediaStream/StreamInterface threadsafe|kretz@kde.org|Matthias Kretz}}&lt;br /&gt;
{{FeatureInProgress|Phonon|&amp;quot;low-level&amp;quot; PCM I/O with at least an ALSA implementation|kretz@kde.org|Matthias Kretz and Ian Monroe}}&lt;br /&gt;
{{FeatureInProgress|Phonon|VideoWidget snapshot function|kretz@kde.org|Matthias Kretz}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdebase-workspace =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureTodo|KDEPrint|reintroduce KDEPrint Print Management tools, e.g. KCM, kprinter, kjobviewer, etc.  Depends upon progress of kdelibs side of KDEPrint and Qt4.4 feature set.|john@layt.net|john Layt}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdepimlibs =&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 !! Project !! Description !! Contact&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdenetwork =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureInProgress|Kopete|MSNP15 implementation for MSN|mattr@kde.org|Matt Rogers}}&lt;br /&gt;
{{FeatureInProgress|Kopete|UPnp Support|mattr@kde.org|Matt Rogers}}&lt;br /&gt;
{{FeatureInProgress|Kopete|Updated contact list interface (uses Qt 4 rather than Qt 3)|mattr@kde.org|Matt Rogers}}&lt;br /&gt;
{{FeatureTodo|Kopete|Update Kopete to better support Decibel|kopete-devel@kde.org|Kopete Developers}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdeutils =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureTodo|Power Manager|import either Guidance Power Manager or move kde4powersaver into kdeutils|?|?}}&lt;br /&gt;
{{FeatureTodo|Kjots| Import notes from KNotes as KJots pages. |steveire@gmail.com|Stephen Kelly}}&lt;br /&gt;
{{FeatureTodo|Kjots| Email KJots pages using default mail client ({{bug|124509}}. |steveire@gmail.com|Stephen Kelly}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdebindings =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureInProgress|Smoke|Wrap some more APIs (at least Akanodi for all languages and Plasma for C#)|kde-bindings@kde.org|KDE-bindings developers}}&lt;br /&gt;
{{FeatureTodo|krossjava|Integrate into e.g. SuperKaramba and fix issues that show up.|mail@dipe.org|Sebastian Sauer}}&lt;br /&gt;
{{FeatureTodo|krossjava|Documentation++|mail@dipe.org|Sebastian Sauer}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdegames =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureInProgress|libkdegames|New highscore management system|milliams|Matt Williams}}&lt;br /&gt;
{{FeatureTodo|kdiamond|Drag jewels|majewsky@gmx.net|Stefan Majewsky}}&lt;br /&gt;
{{FeatureInProgress|ksirk|Map scrolling arrows|kleag@free.fr|Gaël de Chalendar}}&lt;br /&gt;
{{FeatureTodo|ksirk|KHotNewStuff skins|kleag@free.fr|Gaël de Chalendar}}&lt;br /&gt;
{{FeatureTodo|ksirk|Jabber based net game finding|kleag@free.fr|Gaël de Chalendar}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdesdk =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureDone|Kate|Port and reenable the Snippets plugin.|jpetso@gmx.at|Jakob Petsovits}}&lt;br /&gt;
{{FeatureInProgress|Lokalize|XLIFF support|shafff-at-ukr.net|Nick Shaforostoff}}&lt;br /&gt;
{{FeatureInProgress|Lokalize|various Translation Memory enhancements|shafff-at-ukr.net|Nick Shaforostoff}}&lt;br /&gt;
{{FeatureTodo|Lokalize|Kross-based scripting|shafff-at-ukr.net|Nick Shaforostoff}}&lt;br /&gt;
{{FeatureTodo|Lokalize|QA: glossary checklists|shafff-at-ukr.net|Nick Shaforostoff}}&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Shaforostoff</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Schedules/KDE4/4.2_Feature_Plan</id>
		<title>Schedules/KDE4/4.2 Feature Plan</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Schedules/KDE4/4.2_Feature_Plan"/>
				<updated>2008-05-19T21:25:02Z</updated>
		
		<summary type="html">&lt;p&gt;Shaforostoff: /* kdesdk */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This is a list of planned features for the 4.2 release.&lt;br /&gt;
&lt;br /&gt;
See also:&lt;br /&gt;
* [[Schedules/KDE4/4.2 Release Schedule]]&lt;br /&gt;
* [[Schedules/KDE4/4.1 Feature Plan]]&lt;br /&gt;
* [[Schedules/KDE4/Goals]]&lt;br /&gt;
&lt;br /&gt;
Legend:&lt;br /&gt;
* todo =&amp;gt; not started yet&lt;br /&gt;
* in-progress =&amp;gt; started, but not completed yet&lt;br /&gt;
* done =&amp;gt; completed&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
= Other =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureTodo|System Settings|add Administrator mode button|?|?}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= kdelibs =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureInProgress|kross|Extend QtScript integration.|mail@dipe.org|Sebastian Sauer}}&lt;br /&gt;
{{FeatureInProgress|KDEPrint|Reintroduce KDEPrint in some form, depending on what Qt4.4 delivers.|john@layt.net|john Layt}}&lt;br /&gt;
{{FeatureTodo|KDEPrint|Add framework for standard actions for 'Send to...' for e-mail, fax, etc by printing to PDF/PS.|john@layt.net|John Layt}}&lt;br /&gt;
{{FeatureTodo|KDEPrint|Migrate FilePrinter class from Okular to enable file printing for all apps via QPrinter, modify to utilise new Qt4.4 features.  To be discussed on k-c-d first.|john@layt.net|John Layt}}&lt;br /&gt;
{{FeatureTodo|KCalenderSystem|Add new calendar systems: Indian Civil (Saka), Ethiopean, Chinese, Pure Julian, Pure Gregorian. (Note, not all may live in kdelibs or be available as a global calendar system)|john@layt.net|John Layt}}&lt;br /&gt;
{{FeatureTodo|KLocale|Implement KLocale based methods to return weekend days and day of religious observance.  Currently KCalendarSystem provides dayOfPray(), but for Gregorian this is not correct in all locales where it is used.  Currently KDatePicker hardcodes Saturday and dayOfPray() as weekend days which may not be correct in all locales.  To be discussed first on k-c-d and with kdepim.|john@layt.net|John Layt}}&lt;br /&gt;
{{FeatureTodo|Phonon|add Port class for fine grained control over data flow between Phonon objects|kretz@kde.org|Matthias Kretz}}&lt;br /&gt;
{{FeatureInProgress|Phonon|make AbstractMediaStream/StreamInterface threadsafe|kretz@kde.org|Matthias Kretz}}&lt;br /&gt;
{{FeatureInProgress|Phonon|&amp;quot;low-level&amp;quot; PCM I/O with at least an ALSA implementation|kretz@kde.org|Matthias Kretz and Ian Monroe}}&lt;br /&gt;
{{FeatureInProgress|Phonon|VideoWidget snapshot function|kretz@kde.org|Matthias Kretz}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdebase-workspace =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureTodo|KDEPrint|reintroduce KDEPrint Print Management tools, e.g. KCM, kprinter, kjobviewer, etc.  Depends upon progress of kdelibs side of KDEPrint and Qt4.4 feature set.|john@layt.net|john Layt}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdepimlibs =&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 !! Project !! Description !! Contact&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdenetwork =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureInProgress|Kopete|MSNP15 implementation for MSN|mattr@kde.org|Matt Rogers}}&lt;br /&gt;
{{FeatureInProgress|Kopete|UPnp Support|mattr@kde.org|Matt Rogers}}&lt;br /&gt;
{{FeatureInProgress|Kopete|Updated contact list interface (uses Qt 4 rather than Qt 3)|mattr@kde.org|Matt Rogers}}&lt;br /&gt;
{{FeatureTodo|Kopete|Update Kopete to better support Decibel|kopete-devel@kde.org|Kopete Developers}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdeutils =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureTodo|Power Manager|import either Guidance Power Manager or move kde4powersaver into kdeutils|?|?}}&lt;br /&gt;
{{FeatureTodo|Kjots| Import notes from KNotes as KJots pages. |steveire@gmail.com|Stephen Kelly}}&lt;br /&gt;
{{FeatureTodo|Kjots| Email KJots pages using default mail client ({{bug|124509}}. |steveire@gmail.com|Stephen Kelly}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdebindings =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureInProgress|Smoke|Wrap some more APIs (at least Akanodi for all languages and Plasma for C#)|kde-bindings@kde.org|KDE-bindings developers}}&lt;br /&gt;
{{FeatureTodo|krossjava|Integrate into e.g. SuperKaramba and fix issues that show up.|mail@dipe.org|Sebastian Sauer}}&lt;br /&gt;
{{FeatureTodo|krossjava|Documentation++|mail@dipe.org|Sebastian Sauer}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdegames =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureInProgress|libkdegames|New highscore management system|milliams|Matt Williams}}&lt;br /&gt;
{{FeatureTodo|kdiamond|Drag jewels|majewsky@gmx.net|Stefan Majewsky}}&lt;br /&gt;
{{FeatureInProgress|ksirk|Map scrolling arrows|kleag@free.fr|Gaël de Chalendar}}&lt;br /&gt;
{{FeatureTodo|ksirk|KHotNewStuff skins|kleag@free.fr|Gaël de Chalendar}}&lt;br /&gt;
{{FeatureTodo|ksirk|Jabber based net game finding|kleag@free.fr|Gaël de Chalendar}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdesdk =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureDone|Kate|Port and reenable the Snippets plugin.|jpetso@gmx.at|Jakob Petsovits}}&lt;br /&gt;
|}&lt;br /&gt;
{{FeatureInProgress|Lokalize|XLIFF support|shafff-at-ukr.net|Nick Shaforostoff}}&lt;br /&gt;
{{FeatureInProgress|Lokalize|various Translation Memory enhancements|shafff-at-ukr.net|Nick Shaforostoff}}&lt;br /&gt;
{{FeatureTodo|Lokalize|Kross-based scripting|shafff-at-ukr.net|Nick Shaforostoff}}&lt;br /&gt;
{{FeatureTodo|Lokalize|QA: glossary checklists|shafff-at-ukr.net|Nick Shaforostoff}}&lt;/div&gt;</summary>
		<author><name>Shaforostoff</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Schedules/KDE4/4.1_Feature_Plan</id>
		<title>Schedules/KDE4/4.1 Feature Plan</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Schedules/KDE4/4.1_Feature_Plan"/>
				<updated>2008-05-19T21:24:59Z</updated>
		
		<summary type="html">&lt;p&gt;Shaforostoff: /* kdesdk */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This is a list of planned features for KDE 4.1. '''The deadline for adding entries to this page has already passed'''.&lt;br /&gt;
&lt;br /&gt;
Any features which are not mentioned on this page must be rescheduled for 4.2 and added to the list at [[Schedules/KDE4/4.2 Feature Plan]].&lt;br /&gt;
&lt;br /&gt;
Please ensure that any entries you have on this page are kept up to date with respect to their status (''todo'', ''in-progress'' or ''done'').&lt;br /&gt;
&lt;br /&gt;
Legend:&lt;br /&gt;
* todo =&amp;gt; not started yet&lt;br /&gt;
* in-progress =&amp;gt; started, but not completed yet&lt;br /&gt;
* done =&amp;gt; completed&lt;br /&gt;
__TOC__&lt;br /&gt;
= kdelibs =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureTodo|various|[[Projects/Widgets_and_Classes | Classes and Widgets]] that should be moved from others modules up into kdelibs|kde-core-devel@kde.org|The Core Developers}}&lt;br /&gt;
{{FeatureDone|kdeui|Add KFadeWidgetEffect to easily add fading UI transitions to KDE applications|kretz@kde.org|Matthias Kretz}}&lt;br /&gt;
{{FeatureDone|kdeui|Make icon naming spec compliant 3rd party icon themes like Tango or gnome-icon-theme work correctly.|jpetso@gmx.at|Jakob Petsovits}}&lt;br /&gt;
{{FeatureDone|kross|Add QtScript support|mail@dipe.org|Sebastian Sauer}}&lt;br /&gt;
{{FeatureDone|KHTML|Support CSS3 Media Queries|germain@ebooksfrance.org|Germain Garand}}&lt;br /&gt;
{{FeatureDone|KHTML|Efficient smooth scrolling|germain@ebooksfrance.org|Germain Garand}}&lt;br /&gt;
{{FeatureDone|Phonon KCM|More UI feedback|kretz@kde.org|Matthias Kretz}}&lt;br /&gt;
{{FeatureInProgress|Phonon|better integration of pulseaudio|kretz@kde.org|Matthias Kretz}}&lt;br /&gt;
{{FeatureInProgress|Phonon|allow backend switching on the fly|kretz@kde.org|Matthias Kretz}}&lt;br /&gt;
{{FeatureDone|Phonon|subtitle, audio track selection|kretz@kde.org|Matthias Kretz and Ian Monroe}}&lt;br /&gt;
{{FeatureTodo|Phonon|DVD menu selection support|imonroe@kde.org|Ian Monroe}}&lt;br /&gt;
{{FeatureInProgress|Phonon|update device preference on the fly|kretz@kde.org|Matthias Kretz}}&lt;br /&gt;
{{FeatureDone|kdeui|Goya, a framework for inserting controls into itemviews in a really easy and fast way|ereslibre@kde.org|Rafael Fernández López}}&lt;br /&gt;
{{FeatureDone | kdeui | Rich textedit widget supporting most rich text features. | steveire@gmail.com | Stephen Kelly }}&lt;br /&gt;
{{FeatureInProgress|kdeui|Shortcut schemes for KDE applications|adymo@kdevelop.org|Alexander Dymo}}&lt;br /&gt;
{{FeatureDone|kmimetypetrader/kbuildsycoca|Replace use of profilerc for ordering applications with new mimeapps.list standard|faure@kde.org|David Faure}}&lt;br /&gt;
{{FeatureDone|knewstuff|Support caching, and speed up the interface through use of Models/Views and goya|jeremy@scitools.com|Jeremy Whiting}}&lt;br /&gt;
{{FeatureInProgress|Phonon KCM|Handle advanced devices|kretz@kde.org|Matthias Kretz}}&lt;br /&gt;
{{FeatureInProgress|KDEPrint|Add CUPS Options tabs to QPrintDialog to support n-up, page borders, banner pages, page labels, mirror pages, job scheduling, and manual CUPS options.|john@layt.net|John Layt}}&lt;br /&gt;
{{FeatureInProgress|KIO|speed limits on KIO Transfers|nolis71cu@gmail.com|Manolo Valdes}}&lt;br /&gt;
{{FeatureInProgress|kdeui|Printing of shortcuts from the shortcut dialog|apaku@gmx.de|Andreas Pakulat}}&lt;br /&gt;
{{FeatureDone|Kate Part|Annotation framework for the editor|apaku@gmx.de|Andreas Pakulat}}&lt;br /&gt;
{{FeatureInProgress|KJS|Bytecode interpreter and performance improvements|maksim@kde.org|Maks Orlovich}}&lt;br /&gt;
{{FeatureInProgress|KHTML|Sync class and file structure with WebKit to prepare merging|porten@kde.org|Harri Porten}}&lt;br /&gt;
{{FeatureInProgress|KHTML|contentEditable/designMode implementation|germain@ebooksfrance.org|Germain Garand}}&lt;br /&gt;
{{FeatureInProgress|KCalenderSystem|Complete migration of Jalali, Hijri, and Hebrew calendars to new code base.|john@layt.net|John Layt}}&lt;br /&gt;
{{FeatureDone|dnssd|Models for service browser and domain browser.|qbast@go2.pl|Jakub Stachowski}}&lt;br /&gt;
{{FeatureTodo|KHTML|Adaptable/Scriptable workarounds for broken websites.|maksim@kde.org|Maks Orlovich}}&lt;br /&gt;
{{FeatureTodo|KHTML|support for borders-* properties from the CSS3 Background and Borders Module|germain@ebooksfrance.org|Germain Garand}}&lt;br /&gt;
{{FeatureInProgress|KHTML|support for Audio/Video tags from the HTML5 draft specification|germain@ebooksfrance.org|Germain Garand}}&lt;br /&gt;
{{FeatureDone|KHTML|prospective loading of other network resources while waiting for arrival of blocking scripts|germain@ebooksfrance.org|Germain Garand}}&lt;br /&gt;
{{FeatureInProgress|KJS|Public API for extensions. Possibly analog to JavaScriptCore's C API.|porten@kde.org|Harri Porten}}&lt;br /&gt;
{{FeatureTodo|KTextEditor|Several interface extensions (e.g. open/save filter)|kwrite-devel@kde.org|Kate Developers}}&lt;br /&gt;
{{FeatureTodo|KTextEditor|Plugin for basic collaborative editing|kwrite-devel@kde.org|Kate Developers}}&lt;br /&gt;
{{FeatureInProgress|Kate Part|Scripting support for indentation and little helpers|kwrite-devel@kde.org|Kate Developers}}&lt;br /&gt;
{{FeatureTodo|Kate Part|Input modes to allow e.g. vim-like editing|kwrite-devel@kde.org|Kate Developers}}&lt;br /&gt;
{{FeatureDone|KIO|Implement support for inline editing in KFileItemDelegate|fredrik@kde.org|Fredrik Höglund}}&lt;br /&gt;
{{FeatureDone|KIO|Add support for drawing text shadows in KFileItemDelegate|fredrik@kde.org|Fredrik Höglund}}&lt;br /&gt;
{{FeatureDone|Emoticons lib|An emoticons library so each applications doesn't have to implement the same things over and over again |brandon.ml@gmail.com|Carlo Segato}}&lt;br /&gt;
{{FeatureInProgress|KFile|Implement fd.o desktop-bookmark-spec for KFilePlacesModel|nf2@scheinwelt.at|Norbert Frese}}&lt;br /&gt;
{{FeatureTodo|kdeui| Support for About Data of libs and modules used by a program |kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|kdeui|Drop-in replacement for QFontComboBox, with more informative previews in non-Latin1 locales|caslav.ilic@gmx.net|Chusslove Illich}}&lt;br /&gt;
{{FeatureInProgress|KAboutLicense|Select licenses by keyword, to centralize license info texts for frequent licenses.|caslav.ilic@gmx.net|Chusslove Illich}}&lt;br /&gt;
{{FeatureTodo|KIO|KIO::AuthInfo and PasswordDialog: optional fields (like &amp;quot;domain&amp;quot;); optional anonymous switch and flag to suppress KIO's password caching|nf2@scheinwelt.at|Norbert Frese}}&lt;br /&gt;
{{FeatureTodo|kdeui|Support for KConfigGroup in KConfigSkeleton|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdepimlibs =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureDone|Akonadi|Move the Akonadi development library from kdepim.|vkrause@kde.org|Volker Krause}}&lt;br /&gt;
{{FeatureInProgress|Akonadi|Item size ([[Projects/PIM/Akonadi#Core|details]])|thomas.mcguire@gmx.net|Thomas McGuire}}&lt;br /&gt;
{{FeatureTodo|Akonadi|Payload serialization format versioning ([[Projects/PIM/Akonadi#Core|details]])|vkrause@kde.org|Volker Krause}}&lt;br /&gt;
{{FeatureTodo|Akonadi|Item streaming in ItemSync/ResourceBase ([[Projects/PIM/Akonadi#Core|details]])|tomalbers@kde.nl|Tom Albers}}&lt;br /&gt;
{{FeatureInProgress|Akonadi|API for additional item parts ([[Projects/PIM/Akonadi#Core|details]])|vkrause@kde.org,tokoe@kde.org|Volker Krause/Tobias Koenig}}&lt;br /&gt;
{{FeatureInProgress|Akonadi|Infrastructure for showing additional dialogs from agents/resources ([[Projects/PIM/Akonadi#Core|details]])|tomalbers@kde.nl|Tom Albers}}&lt;br /&gt;
{{FeatureTodo|Akonadi|Allow to limit ItemFetchJob to current cache content ([[Projects/PIM/Akonadi#Core|details]])|vkrause@kde.org|Volker Krause}}&lt;br /&gt;
{{FeatureInProgress|Akonadi|Fix API for item/collection modifications ([[Projects/PIM/Akonadi#Core|details]])|vkrause@kde.org|Volker Krause}}&lt;br /&gt;
{{FeatureTodo|Akonadi|Error reporting ([[Projects/PIM/Akonadi#Core|details]])|tokoe@kde.org|Tobias Koenig}}&lt;br /&gt;
{{FeatureTodo|gpgme++2|newly designed gpgme++ (multithreaded, exceptions, less event loop integration: better for Windows)|marc@kdab.net|Marc Mutz (Gpg4win)}}&lt;br /&gt;
{{FeatureDone|kpimutils|Change linklocator to use the new emoticon lib|brandon.ml@gmail.com|Carlo Segato}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdebase-apps =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureDone|Dolphin|Details-view: Allow to open folders as tree (turned off per default).|peter.penz@gmx.at|Peter Penz}}&lt;br /&gt;
{{FeatureDone|Dolphin|Refactor view-action handling to a DolphinViewActionHandler to share more code with DolphinPart|faure@kde.org|David Faure}}&lt;br /&gt;
{{FeatureDone|Konqueror|Re-implement Copy To / Move To in the popup menu|faure@kde.org|David Faure}}&lt;br /&gt;
{{FeatureDone|Konqueror|Separate Home URL settings in konquerorrc and kfmrc; save toolbar settings into the profile automatically|faure@kde.org|David Faure}}&lt;br /&gt;
{{FeatureDone|Dolphin|Simplify selecting of files in the single-click mode (based on http://aseigo.blogspot.com/2006/04/icons.html).|peter.penz@gmx.at|Peter Penz}}&lt;br /&gt;
{{FeatureInProgress|Raptor|The KDE4-Application-Menu}}&lt;br /&gt;
{{FeatureDone|Dolphin|Provide optional tooltips for files and directories.|peter.penz@gmx.at|Peter Penz}}&lt;br /&gt;
{{FeatureDone|Dolphin|Tabs|peter.penz@gmx.at|Peter Penz}}&lt;br /&gt;
{{FeatureInProgress|Konqueror|Bring back the large tooltip like in kde3|faure@kde.org|David Faure}}&lt;br /&gt;
{{FeatureDone|Konqueror|Session management (save/restore session/restore from crash).|edulix@gmail.com|Eduardo Robles Elvira}}&lt;br /&gt;
{{FeatureDone|Konqueror|Support for undo closed window.|edulix@gmail.com|Eduardo Robles Elvira}}&lt;br /&gt;
{{FeatureDone|Konqueror|Allow to configure the Dolphin KPart within the Konquerors settings dialog.|peter.penz@gmx.at|Peter Penz}}&lt;br /&gt;
{{FeatureDone|KInfocenter|Improve code and usability.|nicolas.ternisien@gmail.com|Nicolas Ternisien}}&lt;br /&gt;
{{FeatureDone|KInfocenter|Reimplement partitions list.|nicolas.ternisien@gmail.com|Nicolas Ternisien}}&lt;br /&gt;
{{FeatureDone|KInfocenter|Reimplement memory module.|nicolas.ternisien@gmail.com|Nicolas Ternisien}}&lt;br /&gt;
{{FeatureDone|KInfocenter|Reimplement PCI module.|nicolas.ternisien@gmail.com|Nicolas Ternisien}}&lt;br /&gt;
{{FeatureTodo|KInfocenter|Reimplement Network module.|nicolas.ternisien@gmail.com|Nicolas Ternisien}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdebase-workspace =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureDone|Plasma|Kickoff orientation dependent layout|wstephenson@kde.org|Will Stephenson}}&lt;br /&gt;
{{FeatureDone|kmenuedit|Restore menu system|montel@kde.org|Laurent Montel}}&lt;br /&gt;
{{FeatureDone|KCM autostart|Configure autostart desktop file|montel@kde.org|Laurent Montel}}&lt;br /&gt;
{{FeatureDone|Plasma|improve fail to launch and needs &lt;br /&gt;
config|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureDone|ksmserver|UI for selecting WMs|l.lunak@kde.org|Luboš Luňák}}&lt;br /&gt;
{{FeatureDone|Plasma|polish kickoff|wstephenson@kde.org|Will Stephenson}}&lt;br /&gt;
{{FeatureDone|Plasma|toolbox improvements |aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureDone|Plasma|GHNS2 plasma themes|jeremy@scitools.com|Jeremy Whiting}}&lt;br /&gt;
{{FeatureDone|Plasma|Resizable, relocatable panel|binner@kde.org|Stephan Binner}}&lt;br /&gt;
{{FeatureInProgress|Solid|Refactor Solid::Control networking|wstephenson@kde.org|Will Stephenson}}&lt;br /&gt;
{{FeatureInProgress|Solid|Backend for NetworkManager 0.7|wstephenson@kde.org|Will Stephenson}}&lt;br /&gt;
{{FeatureInProgress|System Settings|Filtering/Lazy load category modules|wstephenson@kde.org|Will Stephenson}}&lt;br /&gt;
{{FeatureInProgress|KSysGuard|Monitor process I/O|tapsell@kde.org|John Tapsell}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Mac-like menu bar plasmoid|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Color KCM|Add 'smart setting' of extended colors|mw_triad@users.sourceforge.net|Matthew Woehlke}}&lt;br /&gt;
{{FeatureTodo|Color KCM|Add KDE3 scheme import|mw_triad@users.sourceforge.net|Matthew Woehlke}}&lt;br /&gt;
{{FeatureTodo|Color KCM|Query kwin for supported colors; add full set of kwin colors|mw_triad@users.sourceforge.net|Matthew Woehlke}}&lt;br /&gt;
{{FeatureTodo|System Settings|Administrator mode support|wstephenson@kde.org|Will Stephenson}}&lt;br /&gt;
{{FeatureTodo|krunner|Revamp GUI.|riccardo@kde.org|Riccardo Iaconelli}}&lt;br /&gt;
{{FeatureInProgress|Plasma|keyboard shortcuts|Chani Armitage|chanika@gmail.com}}&lt;br /&gt;
{{FeatureInProgress|Plasma|webkit widget|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureInProgress|Plasma|shared timer in engines|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureInProgress|Plasma|welcome plasmoid|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureInProgress|Plasma|dashboard widget support|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Plasmagik packaging (and package classes)|riccardo@kde.org|Riccardo Iaconelli}}&lt;br /&gt;
{{FeatureInProgress|Plasma|QtScript scriptengine|richmoore44@gmail.com|Richard Moore}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Filebrowser Plasmoid|fredrik@kde.org|Fredrik Höglund}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Improve QtScript support|richmoore44@gmail.com|Richard Moore}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Zooming User Interface|chanika@gmail.com|Chani Armitage}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Multiple Desktop Containments|chanika@gmail.com|Chani Armitage}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Networkmanager Plasmoid and DataEngine|cblauvelt@gmail.com|Christopher Blauvelt}}&lt;br /&gt;
{{FeatureInProgress|Plasma|API changes [[Projects/Plasma/Tokamak1]]|panel-devel@kde.org|Plasma team }}&lt;br /&gt;
{{FeatureInProgress|Plasma|Panel Toolbox|notmart@gmail.com|Marco Martin}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Panel changes to make it work with the new default theme|notmart@gmail.com|Marco Martin}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Generic folder view applet/containment, that can also be used as the desktop background (showing the desktop folder).|fredrik@kde.org|Fredrik Höglund}}&lt;br /&gt;
{{FeatureInProgress|Krunner|Configuration options for blacklisting, user ranking, runner ranking, learning|mumismo@gmail.com|Jordi Polo}}&lt;br /&gt;
{{FeatureTodo|Krunner|Simple learning|mumismo@gmail.com|Jordi Polo}}&lt;br /&gt;
{{FeatureTodo|Krunner|Simple GUI for above options|mumismo@gmail.com|Jordi Polo}}&lt;br /&gt;
{{FeatureTodo|Krunner|Runners able to share parsing|mumismo@gmail.com|Jordi Polo}}&lt;br /&gt;
{{FeatureInProgress|Krunner|Configuration dialog for KRunner|ryan.bitanga@gmail.com|Ryan P. Bitanga}}&lt;br /&gt;
{{FeatureTodo|Krunner|Noun-Verb support|ryan.bitanga@gmail.com|Ryan P. Bitanga}}&lt;br /&gt;
{{FeatureDone|Plasma|Temperature sensing in the device engine|cblauvelt@gmail.com|Christopher Blauvelt}}&lt;br /&gt;
{{FeatureDone|Plasma|Video data in the device engine|cblauvelt@gmail.com|Christopher Blauvelt}}&lt;br /&gt;
{{FeatureTodo|Plasma|New plasma themes|nuno@oxygen-icons.org|Nuno Pinheiro}}&lt;br /&gt;
{{FeatureTodo|Plasma|physics-based animator|riccardo@kde.org|Riccardo Iaconelli}}&lt;br /&gt;
{{FeatureTodo|Plasma|Improve the base set of plasmoids|riccardo@kde.org|Riccardo Iaconelli}}&lt;br /&gt;
{{FeatureTodo|Plasma|New wallpapers|riccardo@kde.org|Riccardo Iaconelli}}&lt;br /&gt;
{{FeatureTodo|Plasma|New way of handling wallpapers and different sizes (package format, and so on...)|riccardo@kde.org|Riccardo Iaconelli}}&lt;br /&gt;
{{FeatureTodo|Plasma|Top-level windows plasmoids|riccardo@kde.org|Riccardo Iaconelli}}&lt;br /&gt;
{{FeatureDone|Plasma|change showConfigurationInterfaction to createConfigurationInterface|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|Plasma::Service |aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|panel hiding |aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureDone|KWin|non-linear animations also for KWin|sebas@kde.org|Sebastian Kuegler}}&lt;br /&gt;
{{FeatureInProgress|KWin|Compiz's wobbly like effect for KWin|cedric.borgese@gmail.com|Cédric Borgese}}&lt;br /&gt;
{{FeatureTodo|KDM|Theme KDM (login manager) by default|uwolfer@kde.org|Urs Wolfer}}&lt;br /&gt;
{{FeatureTodo|Splash screen|New default splashscreen|riccardo@kde.org|Riccardo Iaconelli}}&lt;br /&gt;
{{FeatureInProgress|Nepomuk|Simple Desktop Search client based on Nepomuk search|trueg@kde.org|Sebastian Trueg}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Add a dataengine that implements galago-project Notifications DBus interface and a plasmoid which provides cute visualization of notifications along with nice and easy way to interact with them|dimsuz@gmail.com|Dmitry Suzdalev}}&lt;br /&gt;
{{FeatureInProgress|Plasma|loadDefaultSetup from a file, not hardcoded|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureInProgress|ksmserver|Make the fade-to-gray logout effect work even when composite is disabled|fredrik@kde.org|Fredrik Höglund}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdebase-runtime =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureInProgress|nepomuk|Service that monitors file rename and delete operations and updates the metadata accordingly. kded module already exists in playground. problem: depends on inotify.|trueg@kde.org|Sebastian Trueg}}&lt;br /&gt;
{{FeatureDone|KCM emoticons|Adding/editing/removing emoticons theme|brandon.ml@gmail.com|Carlo Segato}}&lt;br /&gt;
{{FeatureDone|KCM splash screen|Be able to install splash screen themes via GHNS2|mail@dipe.org|Sebastian Sauer}}&lt;br /&gt;
{{FeatureDone|KCM icons|Be able to install icon themes via GHNS2|mail@dipe.org|Sebastian Sauer}}&lt;br /&gt;
{{FeatureInProgress|phonon-xine|snapshots in video widget|kretz@kde.org|Matthias Kretz}}&lt;br /&gt;
{{FeatureTodo|phonon-xine|try to make VideoWidget work on GraphicsView|kretz@kde.org|Matthias Kretz}}&lt;br /&gt;
{{FeatureTodo|phonon-xine|make states compatible to other backends|kretz@kde.org|Matthias Kretz}}&lt;br /&gt;
{{FeatureTodo|phonon-xine|better support for pulseaudio (most work possibly in kdelibs)|kretz@kde.org|Matthias Kretz}}&lt;br /&gt;
{{FeatureInProgress|phonon-gstreamer|Make phonon-gstreamer as released with Qt 4.4 fully integrate into KDE and add the features added to libphonon after libphonon 4.1|kretz@kde.org|Matthias Kretz}}&lt;br /&gt;
{{FeatureInProgress|desktop ioslave|Add an ioslave that lists the contents of the desktop folder, and reports the names in the .desktop files instead of the actual file names.|fredrik@kde.org|Fredrik Höglund}}&lt;br /&gt;
{{FeatureDone|knotify|Add support for galago-like desktop notifications spec - if knotify will find a certain DBus service on session bus, it'll forward its popup notification events to this service |dimsuz@gmail.com|Dmitry Suzdalev}}&lt;br /&gt;
{{FeatureInProgress|Oxygen cursors|Oxygen cursor set|riccardo@kde.org|Riccardo Iaconelli}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdeaccessibility =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureDone|KMagnifier|Add color blindness simulation|mw_triad@users.sourceforge.net|Matthew Woehlke}}&lt;br /&gt;
{{FeatureTodo|KMagnifier|Refactor color menu, re-add invert, add color-shift modes to help people with color blindness|mw_triad@users.sourceforge.net|Matthew Woehlke}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdeadmin =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureDone|KSystemLog|KSystemLog, a Log Viewer Tool. Move from kde-apps|nicolas.ternisien@gmail.com}}&lt;br /&gt;
{{FeatureDone|KCron|Do some refactoring in KCron|nicolas.ternisien@gmail.com}}&lt;br /&gt;
{{FeatureDone|KCron|Improve ergonomy and general interface|nicolas.ternisien@gmail.com}}&lt;br /&gt;
{{FeatureDone|KCron|Fix all existing bugs in KCron|nicolas.ternisien@gmail.com}}&lt;br /&gt;
{{FeatureDone|KCron|Convert KCron into a KCM Module, to use it in System Settings|nicolas.ternisien@gmail.com}}&lt;br /&gt;
{{FeatureInProgress|Environment Variables|Create a environment variables KCM Module|nicolas.ternisien@gmail.com}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdeartwork =&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 !! Project !! Description !! Contact&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdebindings =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureDone|Smoke2|Move modular Smoke2 to kdebindings-trunk.|kde-bindings@kde.org|KDE-bindings developers}}&lt;br /&gt;
{{FeatureDone|PHP-Qt|Move PHP-Qt to kdebindings-trunk.|kde-bindings@kde.org|KDE-bindings developers}}&lt;br /&gt;
{{FeatureDone|krossjava|Move krossjava to kdebindings-trunk.|mail@dipe.org|Sebastian Sauer}}&lt;br /&gt;
{{FeatureDone|krosspython|Implicit convert PyQt/PyKDE QObject/QWidget instances.|mail@dipe.org|Sebastian Sauer}}&lt;br /&gt;
{{FeatureDone|krossruby|Implicit convert QtRuby/Korundum QObject/QWidget instances.|mail@dipe.org|Sebastian Sauer}}&lt;br /&gt;
{{FeatureDone|Qyoto|Add delegate support for signal/slot connections.|kde-bindings@kde.org|KDE-bindings developers}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdeedu =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureDone|Kalzium|Clean up the database. I am syncing with the BlueObelisk data repository again. There we decided to remove the density (not a element property but a compound property. I also removed the mean weight. We think it is better to provide correct data than a lot (but partly wrong) data.|cniehaus@kde.org|Carsten Niehaus}}&lt;br /&gt;
{{FeatureDone|KAlgebra|Calculator Plasmoid|aleixpol@gmail.com|Aleix Pol}}&lt;br /&gt;
{{FeatureDone|KAlgebra|Vector support|aleixpol@gmail.com|Aleix Pol}}&lt;br /&gt;
{{FeatureDone|Step|A physics simulator, move from playground to kdeedu module |ks.vladimir@gmail.com|Vladimir Kuznetsov}}&lt;br /&gt;
{{FeatureDone|Kalzium|Update the snapshot of libavogadro to 0.6.1. This introduces a gazillion new possibilities for the 3D renderer and fixes many issues.|cniehaus@kde.org|Carsten Niehaus}}&lt;br /&gt;
{{FeatureInProgress|Kalzium|Make use of the new libavogadro-version.|cniehaus@kde.org|Carsten Niehaus}}&lt;br /&gt;
{{FeatureInProgress|Kalzium|Expose molecular editing features of libavogadro.|marcus@cryos.org|Marcus D. Hanwell}}&lt;br /&gt;
{{FeatureTodo|Kalzium|Port Kalzium's periodic table to use new QGraphicsView.|marcus@cryos.org|Marcus D. Hanwell}}&lt;br /&gt;
{{FeatureInProgress|KStars|Tool to predict Conjunctions|akarshsimha@gmail.com|Akarsh Simha}}&lt;br /&gt;
{{FeatureInProgress|Marble|DGML2 Support|tackat@kde.org|Torsten Rahn}}&lt;br /&gt;
{{FeatureInProgress|Marble|KDE-Version settings dialog|tackat@kde.org|Torsten Rahn}}&lt;br /&gt;
{{FeatureInProgress|Marble|Port authors list from the Qt-About dialog to the KDE-About dialog|tackat@kde.org|Torsten Rahn}}&lt;br /&gt;
{{FeatureInProgress|Marble|Qt-Version settings dialog|tackat@kde.org|Torsten Rahn}}&lt;br /&gt;
{{FeatureInProgress|Marble|Improved KML support|tackat@kde.org|Torsten Rahn}}&lt;br /&gt;
{{FeatureInProgress|Marble|OpenStreetMap support using original OSM tiles|tackat@kde.org|Torsten Rahn}}&lt;br /&gt;
{{FeatureInProgress|Marble|Real Time Cloud-Cover|tackat@kde.org|David Roberts / Torsten Rahn}}&lt;br /&gt;
{{FeatureTodo|Marble|Map Contents translation|tackat@kde.org|Torsten Rahn}}&lt;br /&gt;
{{FeatureTodo|Marble|Copy position to clipboard|tackat@kde.org|Torsten Rahn}}&lt;br /&gt;
{{FeatureDone|Marble|Create Tiles on compile time|tackat@kde.org|Torsten Rahn}}&lt;br /&gt;
{{FeatureInProgress|Marble|Mercator Projection|inge@lysator.liu.se|Inge Wallin}}&lt;br /&gt;
{{FeatureInProgress|Marble|More generic projection support|inge@lysator.liu.se|Inge Wallin}}&lt;br /&gt;
{{FeatureInProgress|Marble|Usage of Marble in non-widgets|inge@lysator.liu.se|Inge Wallin}}&lt;br /&gt;
{{FeatureTodo|Marble|Export map to MxN pixel bitmap|inge@lysator.liu.se|Inge Wallin}}&lt;br /&gt;
{{FeatureTodo|Marble|Support for MarbleWidget::setEnabled( bool )|inge@lysator.liu.se|Inge Wallin}}&lt;br /&gt;
{{FeatureTodo|Marble|Layer Management Class|tokoe@kde.org|Tobias König}}&lt;br /&gt;
{{FeatureTodo|Marble|Plugin architecture for map layers|tokoe@kde.org|Tobias König}}&lt;br /&gt;
{{FeatureInProgress|KEduca|Rewrite of the classic test writing/taking application|matt@milliams.com|Matt Williams}}&lt;br /&gt;
{{FeatureDone|Parley|Redesigned main window|frederik.gladhorn@kdemail.net|Frederik Gladhorn}}&lt;br /&gt;
{{FeatureInProgress|Parley|Vocabulary Plasmoid|frederik.gladhorn@kdemail.net|Frederik Gladhorn}}&lt;br /&gt;
{{FeatureInProgress|KBruch and KPercentage|Merge in 1 app|pete@pmurdoch.com|Peter Murdoch}}&lt;br /&gt;
{{FeatureInProgress|Kalzium|Plasmoid to access Kalzium database|cniehaus@kde.org|Carsten Niehaus}}&lt;br /&gt;
{{FeatureInProgress|Step|Improve GUI for creating gas and softbody|ksvladimir@gmail.com|Vladimir Kuznetsov}}&lt;br /&gt;
{{FeatureInProgress|KAlgebra|Variables share between calculations|aleixpol@gmail.com|Aleix Pol}}&lt;br /&gt;
{{FeatureTodo|KTurtle|Export canvas as image|piacentini@kde.org|Mauricio Piacentini}}&lt;br /&gt;
{{FeatureTodo|KTurtle|Optional rulers/grid for canvas units|piacentini@kde.org|Mauricio Piacentini}}&lt;br /&gt;
{{FeatureTodo|KTurtle|Add command line|piacentini@kde.org|Mauricio Piacentini}}&lt;br /&gt;
{{FeatureTodo|KTurtle|Add a color picker|nielsslot@gmail.com|Niels Slot}}&lt;br /&gt;
{{FeatureInProgress|Parley|Declensions|frederik.gladhorn@kdemail.net|Frederik Gladhorn}}&lt;br /&gt;
{{FeatureInProgress|Parley|Improved printing support|frederik.gladhorn@kdemail.net|Frederik Gladhorn}}&lt;br /&gt;
{{FeatureTodo|KLettres|Number support|annma@kde.org|Anne-Marie Mahfouf}}&lt;br /&gt;
{{FeatureTodo|KLettres|Theme manager|annma@kde.org|Anne-Marie Mahfouf}}&lt;br /&gt;
{{FeatureTodo|KHangMan|Add a Open File action|annma@kde.org|Anne-Marie Mahfouf}}&lt;br /&gt;
{{FeatureTodo|KHangMan|Integrate an editor|annma@kde.org|Anne-Marie Mahfouf}}&lt;br /&gt;
{{FeatureTodo|KHangMan|Plasmoid|annma@kde.org|Anne-Marie Mahfouf}}&lt;br /&gt;
{{FeatureTodo|KHangMan|Theme manager|annma@kde.org|Anne-Marie Mahfouf}}&lt;br /&gt;
{{FeatureTodo|KLettres|Visual indicator when letter is wrong|annma@kde.org|Anne-Marie Mahfouf}}&lt;br /&gt;
{{FeatureDone|Kiten|Link radselect with kiten|jkerian@gmail.com|Joe Kerian}}&lt;br /&gt;
{{FeatureInProgress|Kiten|Sort output by dictionary/user selected sorting values|jkerian@gmail.com|Joe Kerian}}&lt;br /&gt;
{{FeatureTodo|Step|Use common constraints handling code for collisions|ksvladimir@gmail.com|Vladimir Kuznetsov}}&lt;br /&gt;
{{FeatureDone|Kig|Cubic-line intersection in case two of the three intersection points are already present|paolini@dmf.unicatt.it|Maurizio Paolini}}&lt;br /&gt;
{{FeatureTodo|Kig|Properties dialog for objects.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureTodo|Kig|Improve construction of bisect lines.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureTodo|Kig|Improve feedback when constructing objects.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureTodo|Kig|More geometric objects.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureTodo|Kig|Script objects as macros (to be reused more than once).|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureTodo|Kig|Improve the Cabri import filter.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdegames =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureDone|KDiamond|New game, move to kdegames|majewsky@gmx.net|Stefan Majewsky}}&lt;br /&gt;
{{FeatureDone|KDiamond|Get themes with KNewStuff|majewsky@gmx.net|Stefan Majewsky}}&lt;br /&gt;
{{FeatureDone|KNetWalk|Better scoring system|fela.kde@gmail.com|Fela Winkelmolen}}&lt;br /&gt;
{{FeatureDone|KNetWalk|Add support for loading new themes|fela.kde@gmail.com|Fela Winkelmolen}}&lt;br /&gt;
{{FeatureDone|Kollision|Move to kdereview/kdegames|p.capriotti@gmail.com|Paolo Capriotti}}&lt;br /&gt;
{{FeatureDone|Kubrick|New game, 3D OpenGL - move to playground|ianw}}&lt;br /&gt;
{{FeatureDone|Kubrick|Polish up the features|ianw}}&lt;br /&gt;
{{FeatureDone|Kubrick|Port to Qt4 and KDE4|ianw}}&lt;br /&gt;
{{FeatureDone|KBlocks|Finish display of points and level|piacentini@kde.org}}&lt;br /&gt;
{{FeatureDone|KBlocks|Implement KNewStuff support|piacentini@kde.org}}&lt;br /&gt;
{{FeatureDone|KBlocks|Implement key/action/shortcut configuration|piacentini@kde.org}}&lt;br /&gt;
{{FeatureDone|KBlocks|Docbook|piacentini@kde.org}}&lt;br /&gt;
{{FeatureInProgress|KGoldRunner|Improved theming and animation|mikelima@cirulla.net}}&lt;br /&gt;
{{FeatureInProgress|KGoldRunner|Sound support and theming|mikelima@cirulla.net}}&lt;br /&gt;
{{FeatureInProgress|KSquares|Multiplayer support|josef}}&lt;br /&gt;
{{FeatureDone|KsirK|New game, move to kdereview|kleag@free.fr|Gaël de Chalendar}}&lt;br /&gt;
{{FeatureDone|KsirK|Make network games work again|kleag@free.fr|Gaël de Chalendar}}&lt;br /&gt;
{{FeatureDone|KBattleship|Bring back Zeroconf support for network games|qbast@go2.pl}}&lt;br /&gt;
{{FeatureInProgress|Kubrick|New game, 3D OpenGL - in kdereview|ianw}}&lt;br /&gt;
{{FeatureInProgress|KGGZ|Add kggzcore and kggzdmod libraries|josef}}&lt;br /&gt;
{{FeatureTodo|KBlocks|Add additional themes|piacentini@kde.org}}&lt;br /&gt;
{{FeatureInProgress|KBreakout|Finish it, and move it from playground to kdegames|fela.kde@gmail.com}}&lt;br /&gt;
{{FeatureTodo|KGGZ|Add new Qt4-based core client as successor to the old KDE3-based KGGZ|josef (now SoC proposal)}}&lt;br /&gt;
{{FeatureTodo|KGGZ|Fire-and-forget highscore submission for single-player games and client-to-client multiplayer games|josef)}}&lt;br /&gt;
{{FeatureTodo|KGoldRunner|Also see kdegames/kgoldrunner/TODO|ianw}}&lt;br /&gt;
{{FeatureTodo|KGoldRunner|Hot new stuff support for themes and levels|mikelima@cirulla.net}}&lt;br /&gt;
{{FeatureTodo|KGoldRunner|Startup screen|mikelima@cirulla.net}}&lt;br /&gt;
{{FeatureTodo|KMahjongg|Reimplement the Board Editor|piacentini@kde.org}}&lt;br /&gt;
{{FeatureDone|KMines|Add pause actions|eike.lange@kdemail.net}}&lt;br /&gt;
{{FeatureDone|KNetWalk|Configurable keyboard support|eike.lange@kdemail.net}}&lt;br /&gt;
{{FeatureTodo|KNetWalk|Support for custom and non-square board sizes|fela.kde@gmail.com|Fela Winkelmolen}}&lt;br /&gt;
{{FeatureTodo|KShisen|Port to KScoreDialog|piacentini@kde.org}}&lt;br /&gt;
{{FeatureTodo|Kubrick|See SVN file kubrick/TODO|ianw}}&lt;br /&gt;
{{FeatureDone|Kubrick|Move to KDE Games for 4.1|ianw}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdegraphics =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureDone|Gwenview|Undo system|aurelien.gateau@free.fr|Aurélien Gâteau}}&lt;br /&gt;
{{FeatureDone|Gwenview|Fullscreen meta information|aurelien.gateau@free.fr|Aurélien Gâteau}}&lt;br /&gt;
{{FeatureDone|Gwenview|Ability to open an image with another application|aurelien.gateau@free.fr|Aurélien Gâteau}}&lt;br /&gt;
{{FeatureDone|Okular|Better Text-To-Speech integration: speech the whole document, the current page or the selection.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureDone|Okular|Encryption support for ODF generator|bradh@kde.org}}&lt;br /&gt;
{{FeatureDone|Okular|Backward direction for text search.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureInProgress|Okular|Centralized text &amp;amp; graphics antialias configuration.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureDone|Okular|EPub backend.|elylevy@cs.huji.ac.il|Ely Levy}}&lt;br /&gt;
{{FeatureInProgress|Okular|Improved form support (add missing types, handle the fields better).|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureInProgress|Gwenview|Support for tagging with Nepomuk|aurelien.gateau@free.fr|Aurélien Gâteau}}&lt;br /&gt;
{{FeatureInProgress|Gwenview|Thumbnail bar in view and fullscreen modes|aurelien.gateau@free.fr|Aurélien Gâteau}}&lt;br /&gt;
{{FeatureDone|Gwenview|Crop ratio|aurelien.gateau@free.fr|Aurélien Gâteau}}&lt;br /&gt;
{{FeatureTodo|Gwenview|KIPI support|aurelien.gateau@free.fr|Aurélien Gâteau}}&lt;br /&gt;
{{FeatureTodo|Gwenview|Red eye correction|aurelien.gateau@free.fr|Aurélien Gâteau}}&lt;br /&gt;
{{FeatureTodo|Gwenview|Start page|aurelien.gateau@free.fr|Aurélien Gâteau}}&lt;br /&gt;
{{FeatureInProgress|Okular|JavaScript support (mostly for PDF documents).|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureDone|Okular|Improved placement and sizing of the presentation mode: choose the screen to use, adapt to screen size changes.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureTodo|Okular|Caret annotations.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureInProgress|Okular|File attachment annotations.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureTodo|Okular|Sound annotations.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureTodo|Okular|Link annotations.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureTodo|Okular|Improve annotation support: for existing types (rubber stamps, line, note, etc), and for the way they are constructed and handled.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureInProgress|Okular|Separate the &amp;quot;view properties&amp;quot; out of the Document, in a View class. Use it for the page view and the presentation mode.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureTodo|Okular|Per-document zoom level.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureDone|libksane|Move libksane to kdegraphics|kare.sars@kolumbus.fi|Kåre Särs}}&lt;br /&gt;
{{FeatureDone|ksaneplugin|Replase libkscan with ksaneplugin|kare.sars@kolumbus.fi|Kåre Särs}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdemultimedia =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureDone|Dragon Player|A simple Phonon-based videoplayer application|ian.monroe@gmail.com|Ian Monroe}}&lt;br /&gt;
{{FeatureInProgress|Dragon Player|Make Dragon indipendent from Xine|ian.monroe@gmail.com|Ian Monroe}}&lt;br /&gt;
{{FeatureInProgress|Dragon Player|File Manager|ian.monroe@gmail.com|Ian Monroe}}&lt;br /&gt;
{{FeatureInProgress|Dragon Player|play media dialog|ian.monroe@gmail.com|Ian Monroe}}&lt;br /&gt;
{{FeatureInProgress|Dragon Player|slider changes|ian.monroe@gmail.com|Ian Monroe}}&lt;br /&gt;
{{FeatureInProgress|Dragon Player|show info while playing audio files|ian.monroe@gmail.com|Ian Monroe}}&lt;br /&gt;
{{FeatureDone|JuK|Show cover art from more sources|michael.pyne@kdemail.net|Michael Pyne}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdenetwork =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureDone|KGet|Group-Settings|l.appelhans@gmx.de|Lukas Appelhans}}&lt;br /&gt;
{{FeatureDone|KGet|Torrent-Support|l.appelhans@gmx.de|Lukas Appelhans}}&lt;br /&gt;
{{FeatureDone|KGet|Transfer-Settings|l.appelhans@gmx.de|Lukas Appelhans}}&lt;br /&gt;
{{FeatureDone|KGet|Webinterface|uwolfer@kde.org|Urs Wolfer}}&lt;br /&gt;
{{FeatureDone|Kopete|AIM offline messages|kedgedev@centrum.cz|Roman Jarosz}}&lt;br /&gt;
{{FeatureDone|Kopete|OTR Encryption support|michael_zanetti@gmx.net|Michael Zanetti}}&lt;br /&gt;
{{FeatureDone|Kopete|Status manager|kedgedev@centrum.cz|Roman Jarosz}}&lt;br /&gt;
{{FeatureDone|Kopete|Non-intrusive notification system|kedgedev@centrum.cz|Roman Jarosz}}&lt;br /&gt;
{{FeatureInProgress|KGet|MultiSource-Downloading|l.appelhans@gmx.de|Lukas Appelhans}}&lt;br /&gt;
{{FeatureDone|Kopete|Bring back chat style selection via knewstuff2|earthwings@gentoo.org|Dennis Nienhüser}}&lt;br /&gt;
{{FeatureInProgress|Kopete|ICQ 6 status icons|kedgedev@centrum.cz|Roman Jarosz}}&lt;br /&gt;
{{FeatureInProgress|Kopete|Use notebook lid for auto away|kedgedev@centrum.cz|Roman Jarosz}}&lt;br /&gt;
{{FeatureDone|Kopete|use the new emoticons library|brandon.ml@gmail.com|Carlo Segato}}&lt;br /&gt;
{{FeatureDone|KGet|Nepomuk-Integration|l.appelhans@gmx.de|Lukas Appelhans}}&lt;br /&gt;
{{FeatureInProgress|KGet|Support mms://-protocol, see https://launchpad.net/libmms|l.appelhans@gmx.de|Lukas Appelhans}}&lt;br /&gt;
{{FeatureDone|KGet|Global Speedlimits|l.appelhans@gmx.de|Lukas Appelhans}}&lt;br /&gt;
{{FeatureDone|KGet|Setup libbtcore from KTorrent in KGet (to avoid dependency to extragear)|uwolfer@kde.org|Urs Wolfer}}&lt;br /&gt;
{{FeatureDone|KGet|Extend the TransferHistory to use SQLite and XML-Backends and display the information inside a kcategorizedview|jgoday@gmail.com|Javier Goday}}&lt;br /&gt;
{{FeatureTodo|Kopete|GroupWise chatroom support|wstephenson@kde.org|Will Stephenson}}&lt;br /&gt;
{{FeatureTodo|[http://decibel.kde.org Decibel]|Decibel, a framework for real time communication services. Move from playground/pim|info@basyskom.de|Tobias Hunger}}&lt;br /&gt;
{{FeatureDone|KRDC|Optional system tray icon (with quick access to bookmarks)|uwolfer@kde.org|Urs Wolfer}}&lt;br /&gt;
{{FeatureDone|KRDC|Improved behavior of entering special keys for better workflow|uwolfer@kde.org|Urs Wolfer}}&lt;br /&gt;
{{FeatureDone|KRDC|Zeroconf support (detecting remote desktop services in local network)|romnes@stud.ntnu.no|Magnus Romnes}}&lt;br /&gt;
{{FeatureInProgress|KRDC|Bookmark dock widget for quick access to bookmars, zero conf detected services and recently used connections|uwolfer@kde.org|Urs Wolfer}}&lt;br /&gt;
{{FeatureDone|KRDC|Support for up- and downscaling VNC remote desktop|uwolfer@kde.org|Urs Wolfer}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Network Manager Applet|cblauvelt@gmail.com|Christopher Blauvelt}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdepim =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureDone|KAddressbook|Ability to add LDAP search results to distribution lists|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureDone|KAddressbook|Indication of which resource folder a contact belongs to|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureDone|KAddressbook|Read-only view for contacts in read-only folders|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureDone|KAddressbook|copy/cut/paste context menu items|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureDone|KAlarm|Allow use of multiple calendar resources|djarvie@kde.org|David Jarvie}}&lt;br /&gt;
{{FeatureDone|KAlarm|Handle time zones and seasonal time changes properly|djarvie@kde.org|David Jarvie}}&lt;br /&gt;
{{FeatureDone|KAlarm|Abolish alarm daemon and make kalarm trigger alarms itself|djarvie@kde.org|David Jarvie}}&lt;br /&gt;
{{FeatureDone|KAlarm|Replace simple repetitions by recurrence sub-repetitions to reduce confusion|djarvie@kde.org|David Jarvie}}&lt;br /&gt;
{{FeatureDone|KAlarm|New option for display alarm text to be generated by a command|djarvie@kde.org|David Jarvie}}&lt;br /&gt;
{{FeatureDone|KAlarm|Option to display alarm only if pre-alarm command succeeded|djarvie@kde.org|David Jarvie}}&lt;br /&gt;
{{FeatureDone|KAlarm|New option to specify reminder times in minutes|djarvie@kde.org|David Jarvie}}&lt;br /&gt;
{{FeatureDone|KAlarm|Prevent multiple identical error messages accumulating for the same alarm|djarvie@kde.org|David Jarvie}}&lt;br /&gt;
{{FeatureDone|KAlarm|Provide &amp;quot;don't show again for this alarm&amp;quot; option for command error messages|djarvie@kde.org|David Jarvie}}&lt;br /&gt;
{{FeatureDone|KAlarm|Remember main window show/hide options used when KAlarm closed instead of setting them in Preferences dialog|djarvie@kde.org|David Jarvie}}&lt;br /&gt;
{{FeatureDone|KAlarm|Simplification and improvements to alarm edit dialog|djarvie@kde.org|David Jarvie}}&lt;br /&gt;
{{FeatureDone|KAlarm|Option to display alarms in centre of screen, with enable delay on buttons to avoid accidental acknowledgement|djarvie@kde.org|David Jarvie}}&lt;br /&gt;
{{FeatureDone|KJots|Support more rich text features like text formatting, hyperlinks and ordered/unordered lists.|steveire@gmail.com|Stephen Kelly}}&lt;br /&gt;
{{FeatureDone|KJots|Add checkmarks to pages.|steveire@gmail.com|Stephen Kelly}}&lt;br /&gt;
{{FeatureDone|KJots|Port to KRichText widget.|steveire@gmail.com|Stephen Kelly}}&lt;br /&gt;
{{FeatureDone|Kleopatra|Ability to search in internal and external certificates at the same time|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureDone|Kleopatra|General UI Server|marc@kdab.net|Marc Mutz (Gpg4win)}}&lt;br /&gt;
{{FeatureDone|Kleopatra|New, tabbed, mainwindow design|marc@kdab.net|Marc Mutz (Gpg4win)}}&lt;br /&gt;
{{FeatureDone|KMail|Ability to create hyperlinks in HTML messages|steveire@gmail.com|Stephen Kelly}}&lt;br /&gt;
{{FeatureDone|KMail|Ability to easily create todos with reminders from emails|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureDone|KMail|Ability to open messages from search results when the reader is hidden|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureDone|KMail|Better invitation update emails showing what changed|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureDone|KMail|Better reminder visualization in very small events|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureDone|KMail|Better, natural language search criteria names|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureDone|KMail|Clickable status columns|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureDone|KMail|Client side configurability of warnings in shared folders|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureDone|KMail|Colored ribbons for indication of signing and encryption status in the composer|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureDone|KMail|Configuration option for whether invitation emails are automatically deleted or not when having been acted upon|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureDone|KMail|Copy/paste and drag and drop from/to the mail composer|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureDone|KMail|Decryption on demand in reader window|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureDone|KMail|Display of quota information in foldertree tooltips|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureDone|KMail|Drag and drop and copy and paste support in the search result viewer|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureDone|KMail|Drag and drop from the mail reader window and mime-tree viewer|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureDone|KMail|Drag and drop of folders|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureDone|KMail|Editing of attachments from the composer|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureDone|KMail|Export and import of filters|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureDone|KMail|Favorites Folder|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureDone|KMail|Folder quicksearch|m.koller@surfeu.at|Martin Koller}}&lt;br /&gt;
{{FeatureDone|KMail|Harmonization of actions in main and standalone mail reader windows|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureDone|KMail|IMAP Server storage of non-standard flags|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureDone|KMail|Improved TNEF attachment handling|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureDone|KMail|Improved quota warnings|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureDone|KMail|Initialize full search from quicksearch on request|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureDone|KMail|Override font and fontsize for standalone message viewers|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureDone|KMail|Per-folder identity configurability|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureDone|KMail|Recursive IMAP cache troubleshooting|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureDone|KMail|Resizable recipients area in composer|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureDone|KMail|Support for creating new mails based on received mails (Resend)|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureDone|KMail|Support for immediate sync of resource folders|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureDone|KMail|Support for soft line breaking|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureDone|KMail|Tab navigation through groups in the address completion|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureDone|KMail|Text snippets with shortcuts and variable expansion in the composer|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureDone|KMail|Warning about active out-of-office scripts|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureDone|KMail|lost+found recovery of locally changed folders that lose access rights|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureDone|KNotes|Ability to print notes|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureDone|KonsoleKalendar|Support &amp;quot;file&amp;quot; and &amp;quot;localdir&amp;quot; resources|winter@kde.org|Allen Winter}}&lt;br /&gt;
{{FeatureDone|Kontact|Config option to close despite system tray|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureDone|Kontact|Harmonization of component naming in sidebar, configuration, summary view|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureDone|Kontact|Right-aligned component navigation toolbar|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureDone|Kontact|Ubiquitous sync actions|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureDone|KOrganizer|Ability to have both distribution lists and addresbook extension visible|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureDone|KOrganizer|Aggregated reminders view|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureDone|KOrganizer|Better default resource colors|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureDone|KOrganizer|Drag and drop of attachments|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureDone|KOrganizer|Faster initial loading of kolab resources|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureDone|KOrganizer|Forwarding and delegation of invitations|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureDone|KOrganizer|Improved coloring of agenda view items|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureDone|KOrganizer|Improved event printing|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureDone|KOrganizer|Merge of the attachment view in into the main page|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureDone|KOrganizer|Merge of the free-busy and attendee views for easier scheduling|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureDone|KOrganizer|Month view scrolling, paging, mouse-wheeling|tom_t@gmx.at|Thomas Thrainer}}&lt;br /&gt;
{{FeatureDone|KOrganizer|More readable Kolab resource folder labels|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureDone|KOrganizer|Redesigned incidence editor UI|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureDone|KOrganizer|Side-by-side calendar view|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureDone|KOrganizer|Support for by-value attachments|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureDone|KOrganizer|Timeline calendar view|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureDone|KOrganizer|Rich text incidence editor|mike@mikearthur.co.uk|Mike Arthur}}&lt;br /&gt;
{{FeatureDone|KOrganizer|Hide/Show reminder daemon icon in the systeay|winter@kde.org|Allen Winter}}&lt;br /&gt;
{{FeatureDone|KOrganizer|New To-do View (model/view)|tom_t@gmx.at|Thomas Thrainer}}&lt;br /&gt;
{{FeatureDone|[http://wiki.kde.org/ktimetracker ktimetracker]|Column-specific whatsthis-help| |Thorsten St&amp;amp;auml;rk}}&lt;br /&gt;
{{FeatureDone|[http://wiki.kde.org/ktimetracker ktimetracker]|Combined search and add task widget| |Thorsten St&amp;amp;auml;rk}}&lt;br /&gt;
{{FeatureDone|[http://wiki.kde.org/ktimetracker ktimetracker]|Drag&amp;amp;Drop| |Thorsten St&amp;amp;auml;rk}}&lt;br /&gt;
{{FeatureDone|[http://wiki.kde.org/ktimetracker ktimetracker]|File management (file-&amp;gt;load)| |Thorsten St&amp;amp;auml;rk}}&lt;br /&gt;
{{FeatureDone|[http://wiki.kde.org/ktimetracker ktimetracker]|Managing history| |Thorsten St&amp;amp;auml;rk}}&lt;br /&gt;
{{FeatureDone|[http://wiki.kde.org/ktimetracker ktimetracker]|Tracking tasks by active applications| |Thorsten St&amp;amp;auml;rk}}&lt;br /&gt;
{{FeatureDone|[http://wiki.kde.org/ktimetracker ktimetracker]|Whatsthis-help dependent on if a task has been created| |Thorsten St&amp;amp;auml;rk}}&lt;br /&gt;
{{FeatureInProgress|Akregator|Support for syncing the feed list with Google Reader |osterfeld@kde.org|Frank Osterfeld}}&lt;br /&gt;
{{FeatureInProgress|KAlarm|New option to restrict alarms to working hours|djarvie@kde.org|David Jarvie}}&lt;br /&gt;
{{FeatureInProgress|KJots|Create a Kontact::Plugin to integrate kjots into Kontact.|steveire@gmail.com|Stephen Kelly}}&lt;br /&gt;
{{FeatureInProgress|Kleopatra|OpenPGP support|marc@kdab.net|Marc Mutz (Gpg4win)}}&lt;br /&gt;
{{FeatureInProgress|KMail|HTML  Signatures|yez@familieschepers.nl|Edwin Schepers}}&lt;br /&gt;
{{FeatureInProgress|KNotes|Zeroconf support for sending notes on LAN|qbast@go2.pl|Jakub Stachowski}}&lt;br /&gt;
{{FeatureInProgress|Kontact|New Planner summary; combines Appointment+To-do+SpecialDates into 1 pretty summary|winter@kde.org|Allen Winter}}&lt;br /&gt;
{{FeatureInProgress|KOrganizer|New Month View (qgraphicsitem)|bvirlet@kdemail.net|Bruno Virlet}}&lt;br /&gt;
{{FeatureInProgress|KPilot|Finish Keyring conduit, base conduit code and test cases, category syncing|jkasper@kde.org|Jason 'vanRijn' Kasper}}&lt;br /&gt;
{{FeatureTodo|Akregator|Basic support for enclosures (Displaying links, mimetype and size)|osterfeld@kde.org|Frank Osterfeld}}&lt;br /&gt;
{{FeatureTodo|[http://kblogger.pwsp.net KBlogger]|KBlogger, a blogging application| christian_weilbach@.web.de|Christian Weilbach}}&lt;br /&gt;
{{FeatureTodo|Kleopatra|Konqueror and Dolphin Kleopatra plugins|marc@kdab.net|Marc Mutz (Gpg4win)}}&lt;br /&gt;
{{FeatureTodo|KMail|Aggregated attachment view in the mail header area of the reader window|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureTodo|KMail|Improved error messages and audit log for cryptographic operations|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureTodo|Kontact|Support for Kontact wide profiles|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureTodo|KOrganizer|Ability to jump to the right day in the agenda from invitation mails|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureTodo|KOrganizer|Drag and drop in the free-busy view|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureTodo|KOrganizer|Support for comments in replies to invitations|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureTodo|KOrganizer|Support for extended free-busy lists|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureTodo|KOrganizer|Blog-styled journal view|mike@mikearthur.co.uk|Mike Arthur}}&lt;br /&gt;
{{FeatureTodo|KOrganizer|Blogging KResource|mike@mikearthur.co.uk|Mike Arthur}}&lt;br /&gt;
{{FeatureTodo|KPilot|Port old conduits to new base conduit architecture and KDE4/Qt4|jkasper@kde.org|Jason 'vanRijn' Kasper}}&lt;br /&gt;
{{FeatureTodo|KMail|Port to use KRichTextEdit|steveire@gmail.com|Stephen Kelly}}&lt;br /&gt;
{{FeatureTodo|KBlogger|Port to use KRichTextEdit (Or KMEditor)|steveire@gmail.com|Stephen Kelly}}&lt;br /&gt;
{{FeatureTodo|KNode|Port to use KRichTextEdit (Or KMEditor)|steveire@gmail.com|Stephen Kelly}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdesdk =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureDone|Cervisia|New context menu entry &amp;quot;Add to Ignore List&amp;quot;|christian.loose@hamburg.de|Christian Loose}}&lt;br /&gt;
{{FeatureDone|Lokalize|Move this application (formerly known as Kaider) from extragear|shafff-at-ukr.net|Nick Shaforostoff}}&lt;br /&gt;
{{FeatureInProgress|Cervisia|A file view based on KDirModel|christian.loose@hamburg.de|Christian Loose}}&lt;br /&gt;
{{FeatureInProgress|KBugBuster|Make it work|fabiolocati@gmail.com|Fabio Locati}}&lt;br /&gt;
{{FeatureInProgress|KCachegrind|Everything working again|josef.weidendorfer@gmx.de|Josef Weidendorfer}}&lt;br /&gt;
{{FeatureInProgress|Kate|Session plasmoid|montel@kde.org|Laurent Montel}}&lt;br /&gt;
{{FeatureDone|KAppTemplate|Make a GUI for it |annma@kde.org|Anne-Marie Mahfouf}}&lt;br /&gt;
{{FeatureDone|KAppTemplate|Add a PyQt4 template|annma@kde.org|Anne-Marie Mahfouf}}&lt;br /&gt;
{{FeatureDone|KAppTemplate|Add a Ruby template|annma@kde.org|Anne-Marie Mahfouf}}&lt;br /&gt;
{{FeatureDone|KAppTemplate|Add a Plasmoid template|annma@kde.org|Anne-Marie Mahfouf}}&lt;br /&gt;
{{FeatureTodo|KAppTemplate|Add DBUS support in templates|annma@kde.org|Anne-Marie Mahfouf}}&lt;br /&gt;
{{FeatureTodo|KCachegrind|Better handling of huge symbols|josef.weidendorfer@gmx.de|Josef Weidendorfer}}&lt;br /&gt;
{{FeatureTodo|kioslave svn|Add Export/Import feature|montel@kde.org|Laurent Montel}}&lt;br /&gt;
{{FeatureTodo|Kate App|Improved session management|kwrite-devel@kde.org|Kate Developers}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdetoys =&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 !! Project !! Description !! Contact&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdeutils =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureDone|printer-applet|Add printer applet for viewing print jobs and printer auto-configuration.|jriddell@ubuntuFIXMEcom|Jonathan Riddell}}&lt;br /&gt;
{{FeatureDone|Okteta|binary/hex editor (successor to KHexEdit). Move from playground/utils.|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureDone|Okteta|enable extract-strings tool and add copy|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureDone|Okteta|add &amp;quot;Export as&amp;quot;|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureDone|Okteta|make printing support only selection|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|ask artists for own icon|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|add support for memory mapping of files|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|more explicit titels for undo/redo actions, also from filters|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|parameter dialog for &amp;quot;Copy as...&amp;quot;|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|add support for blocking processes like printing, string search or filter|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|add Kate-like search tool|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|refactor KByteArrayView|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureInProgress|KDiskFree|Use Solid API|nicolas.ternisien@gmail.com|Nicolas Ternisien}}&lt;br /&gt;
{{FeatureTodo|KwikDisk|Replace it by a Plasmoid (in the desktop bar and on the desktop|nicolas.ternisien@gmail.com|Nicolas Ternisien}}&lt;br /&gt;
{{FeatureDone|SuperKaramba|Integrate Kross and be able to write Karambas using Python, Ruby and JavaScript||The SuperKaramba Team}}&lt;br /&gt;
{{FeatureDone|SuperKaramba|Integrate into Plasma||The SuperKaramba Team}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdevelop =&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 !! Project !! Description !! Contact&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdevplatform =&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 !! Project !! Description !! Contact&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdewebdev =&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 !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureInProgress|Kommander|Port the executor to KDE4.|amantia@kde.org|Andras Mantia}}&lt;br /&gt;
{{FeatureTodo|Kommander|Create Qt Designer plugins for the editor.|amantia@kde.org|Andras Mantia}}&lt;br /&gt;
{{FeatureInProgress|Quanta Plus|Create an upload plugin.| niko.sams@gmail.com|Niko Sams}}&lt;br /&gt;
{{FeatureInProgress|Quanta Plus|Create a new, state machine based parser.| amantia@kde.org|Andras Mantia}}&lt;br /&gt;
{{FeatureInProgress|Quanta Plus|Port existing functionality to KDevPlatform plugins. Only text mode is targeted.|amantia@kde.org|Andras Mantia}}&lt;br /&gt;
{{FeatureInProgress|KXslDbg|Port to KDE4.|keith@kdewebdev.org  | &lt;br /&gt;
Keith Isdale}}&lt;br /&gt;
{{FeatureTodo|KLinkStatus|Aided correction of broken links||}}&lt;br /&gt;
{{FeatureDone|KLinkStatus|Site check automation|moura@kdewebdev.org|Paulo Moura Guedes}}&lt;br /&gt;
{{FeatureInProgress|KLinkStatus|D-Bus/Scripting interfaces|moura@kdewebdev.org|Paulo Moura Guedes}}&lt;br /&gt;
{{FeatureInProgress|KLinkStatus|HTML validation|thesquib@gmail.com|Sam Ryan}}&lt;br /&gt;
{{FeatureDone|KLinkStatus|Ability to export only broken links|moura@kdewebdev.org|Paulo Moura Guedes}}&lt;br /&gt;
{{FeatureDone|KLinkStatus|Ability to do background search which only update the GUI when finished (much faster))|moura@kdewebdev.org|Paulo Moura Guedes}}&lt;br /&gt;
{{FeatureDone|KLinkStatus|Tray Icon and KUniqueApplication|Paulo Moura Guedes}}&lt;br /&gt;
{{FeatureDone|KLinkStatus|Scripting Plugin|Paulo Moura Guedes}}&lt;br /&gt;
{{FeatureDone|KLinkStatus|Get Hot New Stuff for HTML result stylesheets|Paulo Moura Guedes}}&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Shaforostoff</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Projects/Plasma/AppsMenuReorganization</id>
		<title>Projects/Plasma/AppsMenuReorganization</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Projects/Plasma/AppsMenuReorganization"/>
				<updated>2008-04-17T01:24:52Z</updated>
		
		<summary type="html">&lt;p&gt;Shaforostoff: /* Math */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Apps Menu Structure Proposal'''. I'd like to make apps menu more fine-grained by introducing submenus&lt;br /&gt;
&lt;br /&gt;
==Internet==&lt;br /&gt;
===Web===&lt;br /&gt;
*Konqueror&lt;br /&gt;
*Firefox&lt;br /&gt;
*Opera&lt;br /&gt;
*Akregator&lt;br /&gt;
===File download and sharing===&lt;br /&gt;
*aMule&lt;br /&gt;
*KTorrent&lt;br /&gt;
*KGet&lt;br /&gt;
*KFtpGrabber&lt;br /&gt;
===Communication===&lt;br /&gt;
*KMail&lt;br /&gt;
*Kopete&lt;br /&gt;
*Konversation&lt;br /&gt;
*Kontact&lt;br /&gt;
*KAddressBook&lt;br /&gt;
*Knode&lt;br /&gt;
===Connectivity===&lt;br /&gt;
*KPPP&lt;br /&gt;
*KRDC&lt;br /&gt;
*KRFB&lt;br /&gt;
*&amp;lt;monitoring apps?&amp;gt;&lt;br /&gt;
==Multimedia==&lt;br /&gt;
===Play and Management===&lt;br /&gt;
*amarok&lt;br /&gt;
*&amp;lt;videoplayers&amp;gt;&lt;br /&gt;
*&amp;lt;tag editors&amp;gt;&lt;br /&gt;
===Creation and editing===&lt;br /&gt;
*Kino&lt;br /&gt;
*cinelerra&lt;br /&gt;
*LiVES&lt;br /&gt;
*Open Movie Editor&lt;br /&gt;
*kdenlive&lt;br /&gt;
*Audacity&lt;br /&gt;
==Graphics==&lt;br /&gt;
===View and Management===&lt;br /&gt;
*Okular&lt;br /&gt;
*Gwenview&lt;br /&gt;
*Digikam&lt;br /&gt;
===Creation and editing===&lt;br /&gt;
*Krita&lt;br /&gt;
*Kolourpaint&lt;br /&gt;
*Gimp&lt;br /&gt;
*Blender&lt;br /&gt;
*Inkscape&lt;br /&gt;
&lt;br /&gt;
===Desktop publishing===&lt;br /&gt;
*scribus&lt;br /&gt;
*kile&lt;br /&gt;
*lyx&lt;br /&gt;
==Education==&lt;br /&gt;
*Blinken&lt;br /&gt;
===Lingustic===&lt;br /&gt;
*KHangMan&lt;br /&gt;
*KWordQuiz&lt;br /&gt;
*Parley&lt;br /&gt;
===Math===&lt;br /&gt;
*KmPlot&lt;br /&gt;
*KAlgebra&lt;br /&gt;
*Kig&lt;br /&gt;
===Science===&lt;br /&gt;
*KStars&lt;br /&gt;
*Kalzium&lt;br /&gt;
*KTurtle&lt;br /&gt;
*Step&lt;br /&gt;
==Office==&lt;br /&gt;
*k3b&lt;br /&gt;
*Okular&lt;br /&gt;
*Kwrite&lt;br /&gt;
===Time management and Work Organization===&lt;br /&gt;
*KOrganizer&lt;br /&gt;
*KTimeTracker (remove from menu -- present as plasmoid)&lt;br /&gt;
*Kalarm (remove from menu -- present as plasmoid?)&lt;br /&gt;
*KNotes&lt;br /&gt;
*kontact&lt;br /&gt;
*&amp;lt;Syncing apps&amp;gt;&lt;br /&gt;
===Accounting===&lt;br /&gt;
*?&lt;br /&gt;
===OpenOffice.org===&lt;br /&gt;
*&amp;lt;openoffice apps&amp;gt;&lt;br /&gt;
===KOffice===&lt;br /&gt;
*&amp;lt;koffice apps&amp;gt;&lt;br /&gt;
===Desktop publishing===&lt;br /&gt;
*scribus&lt;br /&gt;
*kile&lt;br /&gt;
*lyx&lt;br /&gt;
===Translation===&lt;br /&gt;
*Lokalize&lt;br /&gt;
*OmegaT&lt;br /&gt;
*&amp;lt;dictionaries&amp;gt;&lt;br /&gt;
==System Tools==&lt;br /&gt;
*dolphin&lt;br /&gt;
*k3b&lt;br /&gt;
*Konsole&lt;br /&gt;
*konqueror&lt;br /&gt;
*okular&lt;br /&gt;
*KSysGuard&lt;br /&gt;
*KSystemLog&lt;br /&gt;
*Strigi search&lt;br /&gt;
*KSnapShot&lt;br /&gt;
*&amp;lt;backup app&amp;gt;&lt;br /&gt;
*&amp;lt;Accessibility apps&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Configuration==&lt;br /&gt;
*&amp;lt;...&amp;gt;&lt;br /&gt;
==Engineering==&lt;br /&gt;
*kompare&lt;br /&gt;
===Programming===&lt;br /&gt;
*KDevelop&lt;br /&gt;
*KCachegrind&lt;br /&gt;
*&amp;lt;Version control tools?&amp;gt;&lt;br /&gt;
===Web-development===&lt;br /&gt;
*Quanta&lt;br /&gt;
===Translation===&lt;br /&gt;
*Lokalize&lt;br /&gt;
*OmegaT&lt;br /&gt;
===CAD===&lt;br /&gt;
===Math===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Explanation'''&lt;br /&gt;
*if several apps fulfill the same function (i.e. konqueror, opera, firefox), then their title should be in form of %function% - %appname%: &amp;quot;Web-browser - Konqueror&amp;quot;, and they should be listed consequently&lt;br /&gt;
*We need special entries in .desktop files determining the priority (Menu-Priority, Menu-Priority-KDE, Menu-Priority-Gnome).&lt;br /&gt;
**Because the order is important&lt;br /&gt;
**apps with Menu-Priotity above 100 constant could be visually separated by the line (they are the main apps in the category)&lt;br /&gt;
**apps with Menu-Priotity below 10 may be hidden at all (i.e. they are rarely used by an average user)&lt;br /&gt;
**If category has only 1 item, the item should be displayed instead of category&lt;br /&gt;
**Statistics is needed for this (simple voting?)&lt;br /&gt;
*'Utilities' category isn't needed at all. For example, 'root terminal' should be in System.&lt;br /&gt;
*Plasmoids: a lot of small apps need to be turned into plasmoids.&lt;br /&gt;
**charselect should be callable from anywhere but K-Menu&lt;br /&gt;
**kcalc -- the same&lt;br /&gt;
**dictionary applet&lt;br /&gt;
&lt;br /&gt;
I like the way desktop widgets are displayed in Mac OS X (easy accessible any moment - e.g. clock, calendar, calc)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Alternatively, instead of 'Office' we could use 'Desktop Publishing',  &lt;br /&gt;
putting&lt;br /&gt;
'Groupware (Kontact)' into 'Internet' +merge 'Graphics' to 'Multimedia':&lt;br /&gt;
*Multimedia&lt;br /&gt;
*k3b&lt;br /&gt;
**Music&lt;br /&gt;
***Play and Manage (amarok, tag editors)&lt;br /&gt;
***Create and edit (Audacity)&lt;br /&gt;
**Video&lt;br /&gt;
***Play&lt;br /&gt;
***Create and edit (kino, etc)&lt;br /&gt;
**Graphics&lt;br /&gt;
***View and Manage (Gwenview, Digikam)&lt;br /&gt;
***Create and edit (Krita, Kolourpaint, Gimp)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Critisism I recieved from kde-devel@ so far:&lt;br /&gt;
*.... submenus are bad. They do not seem very usable to me, especially when the structure is not evident: ...&lt;br /&gt;
**so it's better to look through all 10-20 entries (possibly in in each  &lt;br /&gt;
category) before finding app that you need?&lt;br /&gt;
**there should be no more then ~5 items in each category&lt;br /&gt;
*This breaks traditional alphabetical order...&lt;br /&gt;
**alphabetical order is of small value when user doesnt know the name of the  &lt;br /&gt;
app he/she is looking for.&lt;br /&gt;
*Somehow 11 items seems better than 4 submenus&lt;br /&gt;
**but I wrote only few apps, in real life there will be more apps&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
And this is said to be false: &amp;quot;the menu is for newcomers, experienced users use 'Search' field anyway.&amp;quot;&lt;/div&gt;</summary>
		<author><name>Shaforostoff</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Projects/Plasma/AppsMenuReorganization</id>
		<title>Projects/Plasma/AppsMenuReorganization</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Projects/Plasma/AppsMenuReorganization"/>
				<updated>2008-04-17T01:23:38Z</updated>
		
		<summary type="html">&lt;p&gt;Shaforostoff: /* Creation and editing */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Apps Menu Structure Proposal'''. I'd like to make apps menu more fine-grained by introducing submenus&lt;br /&gt;
&lt;br /&gt;
==Internet==&lt;br /&gt;
===Web===&lt;br /&gt;
*Konqueror&lt;br /&gt;
*Firefox&lt;br /&gt;
*Opera&lt;br /&gt;
*Akregator&lt;br /&gt;
===File download and sharing===&lt;br /&gt;
*aMule&lt;br /&gt;
*KTorrent&lt;br /&gt;
*KGet&lt;br /&gt;
*KFtpGrabber&lt;br /&gt;
===Communication===&lt;br /&gt;
*KMail&lt;br /&gt;
*Kopete&lt;br /&gt;
*Konversation&lt;br /&gt;
*Kontact&lt;br /&gt;
*KAddressBook&lt;br /&gt;
*Knode&lt;br /&gt;
===Connectivity===&lt;br /&gt;
*KPPP&lt;br /&gt;
*KRDC&lt;br /&gt;
*KRFB&lt;br /&gt;
*&amp;lt;monitoring apps?&amp;gt;&lt;br /&gt;
==Multimedia==&lt;br /&gt;
===Play and Management===&lt;br /&gt;
*amarok&lt;br /&gt;
*&amp;lt;videoplayers&amp;gt;&lt;br /&gt;
*&amp;lt;tag editors&amp;gt;&lt;br /&gt;
===Creation and editing===&lt;br /&gt;
*Kino&lt;br /&gt;
*cinelerra&lt;br /&gt;
*LiVES&lt;br /&gt;
*Open Movie Editor&lt;br /&gt;
*kdenlive&lt;br /&gt;
*Audacity&lt;br /&gt;
==Graphics==&lt;br /&gt;
===View and Management===&lt;br /&gt;
*Okular&lt;br /&gt;
*Gwenview&lt;br /&gt;
*Digikam&lt;br /&gt;
===Creation and editing===&lt;br /&gt;
*Krita&lt;br /&gt;
*Kolourpaint&lt;br /&gt;
*Gimp&lt;br /&gt;
*Blender&lt;br /&gt;
*Inkscape&lt;br /&gt;
&lt;br /&gt;
===Desktop publishing===&lt;br /&gt;
*scribus&lt;br /&gt;
*kile&lt;br /&gt;
*lyx&lt;br /&gt;
==Education==&lt;br /&gt;
*Blinken&lt;br /&gt;
===Lingustic===&lt;br /&gt;
*KHangMan&lt;br /&gt;
*KWordQuiz&lt;br /&gt;
*Parley&lt;br /&gt;
===Math===&lt;br /&gt;
*KmPlot&lt;br /&gt;
*KAlgebra&lt;br /&gt;
*Kig&lt;br /&gt;
===Science===&lt;br /&gt;
*KStars&lt;br /&gt;
*Kalzium&lt;br /&gt;
*KTurtle&lt;br /&gt;
*Step&lt;br /&gt;
==Office==&lt;br /&gt;
*k3b&lt;br /&gt;
*Okular&lt;br /&gt;
*Kwrite&lt;br /&gt;
===Time management and Work Organization===&lt;br /&gt;
*KOrganizer&lt;br /&gt;
*KTimeTracker (remove from menu -- present as plasmoid)&lt;br /&gt;
*Kalarm (remove from menu -- present as plasmoid?)&lt;br /&gt;
*KNotes&lt;br /&gt;
*kontact&lt;br /&gt;
*&amp;lt;Syncing apps&amp;gt;&lt;br /&gt;
===Accounting===&lt;br /&gt;
*?&lt;br /&gt;
===OpenOffice.org===&lt;br /&gt;
*&amp;lt;openoffice apps&amp;gt;&lt;br /&gt;
===KOffice===&lt;br /&gt;
*&amp;lt;koffice apps&amp;gt;&lt;br /&gt;
===Desktop publishing===&lt;br /&gt;
*scribus&lt;br /&gt;
*kile&lt;br /&gt;
*lyx&lt;br /&gt;
===Translation===&lt;br /&gt;
*Lokalize&lt;br /&gt;
*OmegaT&lt;br /&gt;
*&amp;lt;dictionaries&amp;gt;&lt;br /&gt;
==System Tools==&lt;br /&gt;
*dolphin&lt;br /&gt;
*k3b&lt;br /&gt;
*Konsole&lt;br /&gt;
*konqueror&lt;br /&gt;
*okular&lt;br /&gt;
*KSysGuard&lt;br /&gt;
*KSystemLog&lt;br /&gt;
*Strigi search&lt;br /&gt;
*KSnapShot&lt;br /&gt;
*&amp;lt;backup app&amp;gt;&lt;br /&gt;
*&amp;lt;Accessibility apps&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Configuration==&lt;br /&gt;
*&amp;lt;...&amp;gt;&lt;br /&gt;
==Engineering==&lt;br /&gt;
*kompare&lt;br /&gt;
===Programming===&lt;br /&gt;
*KDevelop&lt;br /&gt;
*KCachegrind&lt;br /&gt;
*&amp;lt;Version control tools?&amp;gt;&lt;br /&gt;
===Web-development===&lt;br /&gt;
*Quanta&lt;br /&gt;
===Translation===&lt;br /&gt;
*Lokalize&lt;br /&gt;
*OmegaT&lt;br /&gt;
===CAD===&lt;br /&gt;
===Math===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Explanation'''&lt;br /&gt;
*if several apps fulfill the same function (i.e. konqueror, opera, firefox), then their title should be in form of %function% - %appname%: &amp;quot;Web-browser - Konqueror&amp;quot;, and they should be listed consequently&lt;br /&gt;
*We need special entries in .desktop files determining the priority (Menu-Priority, Menu-Priority-KDE, Menu-Priority-Gnome).&lt;br /&gt;
**Because the order is important&lt;br /&gt;
**apps with Menu-Priotity above 100 constant could be visually separated  &lt;br /&gt;
by the line (they are the main apps in the category)&lt;br /&gt;
**apps with Menu-Priotity below 10 may be hidden at all (i.e. they are rarely used by an average user)&lt;br /&gt;
**If category has only 1 item, the item should be displayed instead of category&lt;br /&gt;
**Statistics is needed for this (simple voting?)&lt;br /&gt;
*'Utilities' category isn't needed at all. For example, 'root terminal' should be in System.&lt;br /&gt;
*Plasmoids: a lot of small apps need to be turned into plasmoids.&lt;br /&gt;
**charselect should be callable from anywhere but K-Menu&lt;br /&gt;
**kcalc -- the same&lt;br /&gt;
**dictionary applet&lt;br /&gt;
&lt;br /&gt;
I like the way desktop widgets are displayed in Mac OS X (easy accessible any moment - e.g. clock, calendar, calc)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Alternatively, instead of 'Office' we could use 'Desktop Publishing',  &lt;br /&gt;
putting&lt;br /&gt;
'Groupware (Kontact)' into 'Internet' +merge 'Graphics' to 'Multimedia':&lt;br /&gt;
*Multimedia&lt;br /&gt;
*k3b&lt;br /&gt;
**Music&lt;br /&gt;
***Play and Manage (amarok, tag editors)&lt;br /&gt;
***Create and edit (Audacity)&lt;br /&gt;
**Video&lt;br /&gt;
***Play&lt;br /&gt;
***Create and edit (kino, etc)&lt;br /&gt;
**Graphics&lt;br /&gt;
***View and Manage (Gwenview, Digikam)&lt;br /&gt;
***Create and edit (Krita, Kolourpaint, Gimp)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Critisism I recieved from kde-devel@ so far:&lt;br /&gt;
*.... submenus are bad. They do not seem very usable to me, especially when the structure is not evident: ...&lt;br /&gt;
**so it's better to look through all 10-20 entries (possibly in in each  &lt;br /&gt;
category) before finding app that you need?&lt;br /&gt;
**there should be no more then ~5 items in each category&lt;br /&gt;
*This breaks traditional alphabetical order...&lt;br /&gt;
**alphabetical order is of small value when user doesnt know the name of the  &lt;br /&gt;
app he/she is looking for.&lt;br /&gt;
*Somehow 11 items seems better than 4 submenus&lt;br /&gt;
**but I wrote only few apps, in real life there will be more apps&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
And this is said to be false: &amp;quot;the menu is for newcomers, experienced users use 'Search' field anyway.&amp;quot;&lt;/div&gt;</summary>
		<author><name>Shaforostoff</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Projects/Plasma/AppsMenuReorganization</id>
		<title>Projects/Plasma/AppsMenuReorganization</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Projects/Plasma/AppsMenuReorganization"/>
				<updated>2008-04-17T01:23:21Z</updated>
		
		<summary type="html">&lt;p&gt;Shaforostoff: /* Creation and editing */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Apps Menu Structure Proposal'''. I'd like to make apps menu more fine-grained by introducing submenus&lt;br /&gt;
&lt;br /&gt;
==Internet==&lt;br /&gt;
===Web===&lt;br /&gt;
*Konqueror&lt;br /&gt;
*Firefox&lt;br /&gt;
*Opera&lt;br /&gt;
*Akregator&lt;br /&gt;
===File download and sharing===&lt;br /&gt;
*aMule&lt;br /&gt;
*KTorrent&lt;br /&gt;
*KGet&lt;br /&gt;
*KFtpGrabber&lt;br /&gt;
===Communication===&lt;br /&gt;
*KMail&lt;br /&gt;
*Kopete&lt;br /&gt;
*Konversation&lt;br /&gt;
*Kontact&lt;br /&gt;
*KAddressBook&lt;br /&gt;
*Knode&lt;br /&gt;
===Connectivity===&lt;br /&gt;
*KPPP&lt;br /&gt;
*KRDC&lt;br /&gt;
*KRFB&lt;br /&gt;
*&amp;lt;monitoring apps?&amp;gt;&lt;br /&gt;
==Multimedia==&lt;br /&gt;
===Play and Management===&lt;br /&gt;
*amarok&lt;br /&gt;
*&amp;lt;videoplayers&amp;gt;&lt;br /&gt;
*&amp;lt;tag editors&amp;gt;&lt;br /&gt;
===Creation and editing===&lt;br /&gt;
*Kino&lt;br /&gt;
*cinelerra&lt;br /&gt;
*LiVES&lt;br /&gt;
*Open Movie Editor&lt;br /&gt;
*kdenlive&lt;br /&gt;
*Audacity&lt;br /&gt;
==Graphics==&lt;br /&gt;
===View and Management===&lt;br /&gt;
*Okular&lt;br /&gt;
*Gwenview&lt;br /&gt;
*Digikam&lt;br /&gt;
===Creation and editing===&lt;br /&gt;
*Krita&lt;br /&gt;
*Kolourpaint&lt;br /&gt;
*Gimp&lt;br /&gt;
*Blender&lt;br /&gt;
&lt;br /&gt;
===Desktop publishing===&lt;br /&gt;
*scribus&lt;br /&gt;
*kile&lt;br /&gt;
*lyx&lt;br /&gt;
==Education==&lt;br /&gt;
*Blinken&lt;br /&gt;
===Lingustic===&lt;br /&gt;
*KHangMan&lt;br /&gt;
*KWordQuiz&lt;br /&gt;
*Parley&lt;br /&gt;
===Math===&lt;br /&gt;
*KmPlot&lt;br /&gt;
*KAlgebra&lt;br /&gt;
*Kig&lt;br /&gt;
===Science===&lt;br /&gt;
*KStars&lt;br /&gt;
*Kalzium&lt;br /&gt;
*KTurtle&lt;br /&gt;
*Step&lt;br /&gt;
==Office==&lt;br /&gt;
*k3b&lt;br /&gt;
*Okular&lt;br /&gt;
*Kwrite&lt;br /&gt;
===Time management and Work Organization===&lt;br /&gt;
*KOrganizer&lt;br /&gt;
*KTimeTracker (remove from menu -- present as plasmoid)&lt;br /&gt;
*Kalarm (remove from menu -- present as plasmoid?)&lt;br /&gt;
*KNotes&lt;br /&gt;
*kontact&lt;br /&gt;
*&amp;lt;Syncing apps&amp;gt;&lt;br /&gt;
===Accounting===&lt;br /&gt;
*?&lt;br /&gt;
===OpenOffice.org===&lt;br /&gt;
*&amp;lt;openoffice apps&amp;gt;&lt;br /&gt;
===KOffice===&lt;br /&gt;
*&amp;lt;koffice apps&amp;gt;&lt;br /&gt;
===Desktop publishing===&lt;br /&gt;
*scribus&lt;br /&gt;
*kile&lt;br /&gt;
*lyx&lt;br /&gt;
===Translation===&lt;br /&gt;
*Lokalize&lt;br /&gt;
*OmegaT&lt;br /&gt;
*&amp;lt;dictionaries&amp;gt;&lt;br /&gt;
==System Tools==&lt;br /&gt;
*dolphin&lt;br /&gt;
*k3b&lt;br /&gt;
*Konsole&lt;br /&gt;
*konqueror&lt;br /&gt;
*okular&lt;br /&gt;
*KSysGuard&lt;br /&gt;
*KSystemLog&lt;br /&gt;
*Strigi search&lt;br /&gt;
*KSnapShot&lt;br /&gt;
*&amp;lt;backup app&amp;gt;&lt;br /&gt;
*&amp;lt;Accessibility apps&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Configuration==&lt;br /&gt;
*&amp;lt;...&amp;gt;&lt;br /&gt;
==Engineering==&lt;br /&gt;
*kompare&lt;br /&gt;
===Programming===&lt;br /&gt;
*KDevelop&lt;br /&gt;
*KCachegrind&lt;br /&gt;
*&amp;lt;Version control tools?&amp;gt;&lt;br /&gt;
===Web-development===&lt;br /&gt;
*Quanta&lt;br /&gt;
===Translation===&lt;br /&gt;
*Lokalize&lt;br /&gt;
*OmegaT&lt;br /&gt;
===CAD===&lt;br /&gt;
===Math===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Explanation'''&lt;br /&gt;
*if several apps fulfill the same function (i.e. konqueror, opera, firefox), then their title should be in form of %function% - %appname%: &amp;quot;Web-browser - Konqueror&amp;quot;, and they should be listed consequently&lt;br /&gt;
*We need special entries in .desktop files determining the priority (Menu-Priority, Menu-Priority-KDE, Menu-Priority-Gnome).&lt;br /&gt;
**Because the order is important&lt;br /&gt;
**apps with Menu-Priotity above 100 constant could be visually separated  &lt;br /&gt;
by the line (they are the main apps in the category)&lt;br /&gt;
**apps with Menu-Priotity below 10 may be hidden at all (i.e. they are rarely used by an average user)&lt;br /&gt;
**If category has only 1 item, the item should be displayed instead of category&lt;br /&gt;
**Statistics is needed for this (simple voting?)&lt;br /&gt;
*'Utilities' category isn't needed at all. For example, 'root terminal' should be in System.&lt;br /&gt;
*Plasmoids: a lot of small apps need to be turned into plasmoids.&lt;br /&gt;
**charselect should be callable from anywhere but K-Menu&lt;br /&gt;
**kcalc -- the same&lt;br /&gt;
**dictionary applet&lt;br /&gt;
&lt;br /&gt;
I like the way desktop widgets are displayed in Mac OS X (easy accessible any moment - e.g. clock, calendar, calc)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Alternatively, instead of 'Office' we could use 'Desktop Publishing',  &lt;br /&gt;
putting&lt;br /&gt;
'Groupware (Kontact)' into 'Internet' +merge 'Graphics' to 'Multimedia':&lt;br /&gt;
*Multimedia&lt;br /&gt;
*k3b&lt;br /&gt;
**Music&lt;br /&gt;
***Play and Manage (amarok, tag editors)&lt;br /&gt;
***Create and edit (Audacity)&lt;br /&gt;
**Video&lt;br /&gt;
***Play&lt;br /&gt;
***Create and edit (kino, etc)&lt;br /&gt;
**Graphics&lt;br /&gt;
***View and Manage (Gwenview, Digikam)&lt;br /&gt;
***Create and edit (Krita, Kolourpaint, Gimp)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Critisism I recieved from kde-devel@ so far:&lt;br /&gt;
*.... submenus are bad. They do not seem very usable to me, especially when the structure is not evident: ...&lt;br /&gt;
**so it's better to look through all 10-20 entries (possibly in in each  &lt;br /&gt;
category) before finding app that you need?&lt;br /&gt;
**there should be no more then ~5 items in each category&lt;br /&gt;
*This breaks traditional alphabetical order...&lt;br /&gt;
**alphabetical order is of small value when user doesnt know the name of the  &lt;br /&gt;
app he/she is looking for.&lt;br /&gt;
*Somehow 11 items seems better than 4 submenus&lt;br /&gt;
**but I wrote only few apps, in real life there will be more apps&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
And this is said to be false: &amp;quot;the menu is for newcomers, experienced users use 'Search' field anyway.&amp;quot;&lt;/div&gt;</summary>
		<author><name>Shaforostoff</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Projects/Plasma/AppsMenuReorganization</id>
		<title>Projects/Plasma/AppsMenuReorganization</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Projects/Plasma/AppsMenuReorganization"/>
				<updated>2008-04-17T00:44:22Z</updated>
		
		<summary type="html">&lt;p&gt;Shaforostoff: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Apps Menu Structure Proposal'''. I'd like to make apps menu more fine-grained by introducing submenus&lt;br /&gt;
&lt;br /&gt;
==Internet==&lt;br /&gt;
===Web===&lt;br /&gt;
*Konqueror&lt;br /&gt;
*Firefox&lt;br /&gt;
*Opera&lt;br /&gt;
*Akregator&lt;br /&gt;
===File download and sharing===&lt;br /&gt;
*aMule&lt;br /&gt;
*KTorrent&lt;br /&gt;
*KGet&lt;br /&gt;
*KFtpGrabber&lt;br /&gt;
===Communication===&lt;br /&gt;
*KMail&lt;br /&gt;
*Kopete&lt;br /&gt;
*Konversation&lt;br /&gt;
*Kontact&lt;br /&gt;
*KAddressBook&lt;br /&gt;
*Knode&lt;br /&gt;
===Connectivity===&lt;br /&gt;
*KPPP&lt;br /&gt;
*KRDC&lt;br /&gt;
*KRFB&lt;br /&gt;
*&amp;lt;monitoring apps?&amp;gt;&lt;br /&gt;
==Multimedia==&lt;br /&gt;
===Play and Management===&lt;br /&gt;
*amarok&lt;br /&gt;
*&amp;lt;videoplayers&amp;gt;&lt;br /&gt;
*&amp;lt;tag editors&amp;gt;&lt;br /&gt;
===Creation and editing===&lt;br /&gt;
*Kino&lt;br /&gt;
*cinelerra&lt;br /&gt;
*LiVES&lt;br /&gt;
*Open Movie Editor&lt;br /&gt;
*kdenlive&lt;br /&gt;
*Audacity&lt;br /&gt;
==Graphics==&lt;br /&gt;
===View and Management===&lt;br /&gt;
*Okular&lt;br /&gt;
*Gwenview&lt;br /&gt;
*Digikam&lt;br /&gt;
===Creation and editing===&lt;br /&gt;
*Krita&lt;br /&gt;
*Kolourpaint&lt;br /&gt;
*Gimp&lt;br /&gt;
===Desktop publishing===&lt;br /&gt;
*scribus&lt;br /&gt;
*kile&lt;br /&gt;
*lyx&lt;br /&gt;
==Education==&lt;br /&gt;
*Blinken&lt;br /&gt;
===Lingustic===&lt;br /&gt;
*KHangMan&lt;br /&gt;
*KWordQuiz&lt;br /&gt;
*Parley&lt;br /&gt;
===Math===&lt;br /&gt;
*KmPlot&lt;br /&gt;
*KAlgebra&lt;br /&gt;
*Kig&lt;br /&gt;
===Science===&lt;br /&gt;
*KStars&lt;br /&gt;
*Kalzium&lt;br /&gt;
*KTurtle&lt;br /&gt;
*Step&lt;br /&gt;
==Office==&lt;br /&gt;
*k3b&lt;br /&gt;
*Okular&lt;br /&gt;
*Kwrite&lt;br /&gt;
===Time management and Work Organization===&lt;br /&gt;
*KOrganizer&lt;br /&gt;
*KTimeTracker (remove from menu -- present as plasmoid)&lt;br /&gt;
*Kalarm (remove from menu -- present as plasmoid?)&lt;br /&gt;
*KNotes&lt;br /&gt;
*kontact&lt;br /&gt;
*&amp;lt;Syncing apps&amp;gt;&lt;br /&gt;
===Accounting===&lt;br /&gt;
*?&lt;br /&gt;
===OpenOffice.org===&lt;br /&gt;
*&amp;lt;openoffice apps&amp;gt;&lt;br /&gt;
===KOffice===&lt;br /&gt;
*&amp;lt;koffice apps&amp;gt;&lt;br /&gt;
===Desktop publishing===&lt;br /&gt;
*scribus&lt;br /&gt;
*kile&lt;br /&gt;
*lyx&lt;br /&gt;
===Translation===&lt;br /&gt;
*Lokalize&lt;br /&gt;
*OmegaT&lt;br /&gt;
*&amp;lt;dictionaries&amp;gt;&lt;br /&gt;
==System Tools==&lt;br /&gt;
*dolphin&lt;br /&gt;
*k3b&lt;br /&gt;
*Konsole&lt;br /&gt;
*konqueror&lt;br /&gt;
*okular&lt;br /&gt;
*KSysGuard&lt;br /&gt;
*KSystemLog&lt;br /&gt;
*Strigi search&lt;br /&gt;
*KSnapShot&lt;br /&gt;
*&amp;lt;backup app&amp;gt;&lt;br /&gt;
*&amp;lt;Accessibility apps&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Configuration==&lt;br /&gt;
*&amp;lt;...&amp;gt;&lt;br /&gt;
==Engineering==&lt;br /&gt;
*kompare&lt;br /&gt;
===Programming===&lt;br /&gt;
*KDevelop&lt;br /&gt;
*KCachegrind&lt;br /&gt;
*&amp;lt;Version control tools?&amp;gt;&lt;br /&gt;
===Web-development===&lt;br /&gt;
*Quanta&lt;br /&gt;
===Translation===&lt;br /&gt;
*Lokalize&lt;br /&gt;
*OmegaT&lt;br /&gt;
===CAD===&lt;br /&gt;
===Math===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Explanation'''&lt;br /&gt;
*if several apps fulfill the same function (i.e. konqueror, opera, firefox), then their title should be in form of %function% - %appname%: &amp;quot;Web-browser - Konqueror&amp;quot;, and they should be listed consequently&lt;br /&gt;
*We need special entries in .desktop files determining the priority (Menu-Priority, Menu-Priority-KDE, Menu-Priority-Gnome).&lt;br /&gt;
**Because the order is important&lt;br /&gt;
**apps with Menu-Priotity above 100 constant could be visually separated  &lt;br /&gt;
by the line (they are the main apps in the category)&lt;br /&gt;
**apps with Menu-Priotity below 10 may be hidden at all (i.e. they are rarely used by an average user)&lt;br /&gt;
**If category has only 1 item, the item should be displayed instead of category&lt;br /&gt;
**Statistics is needed for this (simple voting?)&lt;br /&gt;
*'Utilities' category isn't needed at all. For example, 'root terminal' should be in System.&lt;br /&gt;
*Plasmoids: a lot of small apps need to be turned into plasmoids.&lt;br /&gt;
**charselect should be callable from anywhere but K-Menu&lt;br /&gt;
**kcalc -- the same&lt;br /&gt;
**dictionary applet&lt;br /&gt;
&lt;br /&gt;
I like the way desktop widgets are displayed in Mac OS X (easy accessible any moment - e.g. clock, calendar, calc)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Alternatively, instead of 'Office' we could use 'Desktop Publishing',  &lt;br /&gt;
putting&lt;br /&gt;
'Groupware (Kontact)' into 'Internet' +merge 'Graphics' to 'Multimedia':&lt;br /&gt;
*Multimedia&lt;br /&gt;
*k3b&lt;br /&gt;
**Music&lt;br /&gt;
***Play and Manage (amarok, tag editors)&lt;br /&gt;
***Create and edit (Audacity)&lt;br /&gt;
**Video&lt;br /&gt;
***Play&lt;br /&gt;
***Create and edit (kino, etc)&lt;br /&gt;
**Graphics&lt;br /&gt;
***View and Manage (Gwenview, Digikam)&lt;br /&gt;
***Create and edit (Krita, Kolourpaint, Gimp)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Critisism I recieved from kde-devel@ so far:&lt;br /&gt;
*.... submenus are bad. They do not seem very usable to me, especially when the structure is not evident: ...&lt;br /&gt;
**so it's better to look through all 10-20 entries (possibly in in each  &lt;br /&gt;
category) before finding app that you need?&lt;br /&gt;
**there should be no more then ~5 items in each category&lt;br /&gt;
*This breaks traditional alphabetical order...&lt;br /&gt;
**alphabetical order is of small value when user doesnt know the name of the  &lt;br /&gt;
app he/she is looking for.&lt;br /&gt;
*Somehow 11 items seems better than 4 submenus&lt;br /&gt;
**but I wrote only few apps, in real life there will be more apps&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
And this is said to be false: &amp;quot;the menu is for newcomers, experienced users use 'Search' field anyway.&amp;quot;&lt;/div&gt;</summary>
		<author><name>Shaforostoff</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Projects/Plasma/AppsMenuReorganization</id>
		<title>Projects/Plasma/AppsMenuReorganization</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Projects/Plasma/AppsMenuReorganization"/>
				<updated>2008-04-17T00:31:02Z</updated>
		
		<summary type="html">&lt;p&gt;Shaforostoff: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Apps Menu Structure Proposal'''. I'd like to make apps menu more fine-grained by introducing submenus&lt;br /&gt;
&lt;br /&gt;
==Internet==&lt;br /&gt;
===Web===&lt;br /&gt;
*Konqueror&lt;br /&gt;
*Firefox&lt;br /&gt;
*Opera&lt;br /&gt;
*Akregator&lt;br /&gt;
===File download and sharing===&lt;br /&gt;
*aMule&lt;br /&gt;
*KTorrent&lt;br /&gt;
*KGet&lt;br /&gt;
*KFtpGrabber&lt;br /&gt;
===Communication===&lt;br /&gt;
*KMail&lt;br /&gt;
*Kopete&lt;br /&gt;
*Konversation&lt;br /&gt;
*Kontact&lt;br /&gt;
*KAddressBook&lt;br /&gt;
*Knode&lt;br /&gt;
===Connectivity===&lt;br /&gt;
*KPPP&lt;br /&gt;
*KRDC&lt;br /&gt;
*KRFB&lt;br /&gt;
*&amp;lt;monitoring apps?&amp;gt;&lt;br /&gt;
==Multimedia==&lt;br /&gt;
===Play and Management===&lt;br /&gt;
*amarok&lt;br /&gt;
*&amp;lt;videoplayers&amp;gt;&lt;br /&gt;
*&amp;lt;tag editors&amp;gt;&lt;br /&gt;
===Creation and editing===&lt;br /&gt;
*Kino&lt;br /&gt;
*cinelerra&lt;br /&gt;
*LiVES&lt;br /&gt;
*Open Movie Editor&lt;br /&gt;
*kdenlive&lt;br /&gt;
*Audacity&lt;br /&gt;
==Graphics==&lt;br /&gt;
===View and Management===&lt;br /&gt;
*Okular&lt;br /&gt;
*Gwenview&lt;br /&gt;
*Digikam&lt;br /&gt;
===Creation and editing===&lt;br /&gt;
*Krita&lt;br /&gt;
*Kolourpaint&lt;br /&gt;
*Gimp&lt;br /&gt;
==Education==&lt;br /&gt;
*Blinken&lt;br /&gt;
===Lingustic===&lt;br /&gt;
*KHangMan&lt;br /&gt;
*KWordQuiz&lt;br /&gt;
*Parley&lt;br /&gt;
===Math===&lt;br /&gt;
*KmPlot&lt;br /&gt;
*KAlgebra&lt;br /&gt;
*Kig&lt;br /&gt;
===Science===&lt;br /&gt;
*KStars&lt;br /&gt;
*Kalzium&lt;br /&gt;
*KTurtle&lt;br /&gt;
*Step&lt;br /&gt;
==Office==&lt;br /&gt;
*k3b&lt;br /&gt;
*Okular&lt;br /&gt;
*Kwrite&lt;br /&gt;
===Time management and Work Organization===&lt;br /&gt;
*KOrganizer&lt;br /&gt;
*KTimeTracker (remove from menu -- present as plasmoid)&lt;br /&gt;
*Kalarm (remove from menu -- present as plasmoid?)&lt;br /&gt;
*KNotes&lt;br /&gt;
*kontact&lt;br /&gt;
*&amp;lt;Syncing apps&amp;gt;&lt;br /&gt;
===Accounting===&lt;br /&gt;
*?&lt;br /&gt;
===OpenOffice.org===&lt;br /&gt;
*&amp;lt;openoffice apps&amp;gt;&lt;br /&gt;
===KOffice===&lt;br /&gt;
*&amp;lt;koffice apps&amp;gt;&lt;br /&gt;
===Desktop publishing===&lt;br /&gt;
*scribus&lt;br /&gt;
*kile&lt;br /&gt;
*lyx&lt;br /&gt;
===Translation===&lt;br /&gt;
*Lokalize&lt;br /&gt;
*OmegaT&lt;br /&gt;
*&amp;lt;dictionaries&amp;gt;&lt;br /&gt;
==System Tools==&lt;br /&gt;
*dolphin&lt;br /&gt;
*k3b&lt;br /&gt;
*Konsole&lt;br /&gt;
*konqueror&lt;br /&gt;
*okular&lt;br /&gt;
*KSysGuard&lt;br /&gt;
*KSystemLog&lt;br /&gt;
*Strigi search&lt;br /&gt;
*KSnapShot&lt;br /&gt;
*&amp;lt;backup app&amp;gt;&lt;br /&gt;
*&amp;lt;Accessibility apps&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Configuration==&lt;br /&gt;
*&amp;lt;...&amp;gt;&lt;br /&gt;
==Engineering==&lt;br /&gt;
*kompare&lt;br /&gt;
===Programming===&lt;br /&gt;
*KDevelop&lt;br /&gt;
*KCachegrind&lt;br /&gt;
*&amp;lt;Version control tools?&amp;gt;&lt;br /&gt;
===Web-development===&lt;br /&gt;
*Quanta&lt;br /&gt;
===Translation===&lt;br /&gt;
*Lokalize&lt;br /&gt;
*OmegaT&lt;br /&gt;
===CAD===&lt;br /&gt;
===Math===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Explanation'''&lt;br /&gt;
*if several apps fulfill the same function (i.e. konqueror, opera, firefox), then their title should be in form of %function% - %appname%: &amp;quot;Web-browser - Konqueror&amp;quot;, and they should be listed consequently&lt;br /&gt;
*We need special entries in .desktop files determining the priority (Menu-Priority, Menu-Priority-KDE, Menu-Priority-Gnome).&lt;br /&gt;
**Because the order is important&lt;br /&gt;
**apps with Menu-Priotity above 100 constant could be visually separated  &lt;br /&gt;
by the line (they are the main apps in the category)&lt;br /&gt;
**apps with Menu-Priotity below 10 may be hidden at all (i.e. they are rarely used by an average user)&lt;br /&gt;
**If category has only 1 item, the item should be displayed instead of category&lt;br /&gt;
**Statistics is needed for this (simple voting?)&lt;br /&gt;
*'Utilities' category isn't needed at all. For example, 'root terminal' should be in System.&lt;br /&gt;
*Plasmoids: a lot of small apps need to be turned into plasmoids.&lt;br /&gt;
**charselect should be callable from anywhere but K-Menu&lt;br /&gt;
**kcalc -- the same&lt;br /&gt;
**dictionary applet&lt;br /&gt;
&lt;br /&gt;
I like the way desktop widgets are displayed in Mac OS X (easy accessible any moment - e.g. clock, calendar, calc)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Alternatively, instead of 'Office' we could use 'Desktop Publishing',  &lt;br /&gt;
putting&lt;br /&gt;
'Groupware (Kontact)' into 'Internet' +merge 'Graphics' to 'Multimedia':&lt;br /&gt;
*Multimedia&lt;br /&gt;
*k3b&lt;br /&gt;
**Music&lt;br /&gt;
***Play and Manage (amarok, tag editors)&lt;br /&gt;
***Create and edit (Audacity)&lt;br /&gt;
**Video&lt;br /&gt;
***Play&lt;br /&gt;
***Create and edit (kino, etc)&lt;br /&gt;
**Graphics&lt;br /&gt;
***View and Manage (Gwenview, Digikam)&lt;br /&gt;
***Create and edit (Krita, Kolourpaint, Gimp)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Critisism I recieved from kde-devel@ so far:&lt;br /&gt;
*.... submenus are bad. They do not seem very usable to me, especially when the structure is not evident: ...&lt;br /&gt;
**so it's better to look through all 10-20 entries (possibly in in each  &lt;br /&gt;
category) before finding app that you need?&lt;br /&gt;
**there should be no more then ~5 items in each category&lt;br /&gt;
*This breaks traditional alphabetical order...&lt;br /&gt;
**alphabetical order is of small value when user doesnt know the name of the  &lt;br /&gt;
app he/she is looking for.&lt;br /&gt;
*Somehow 11 items seems better than 4 submenus&lt;br /&gt;
**but I wrote only few apps, in real life there will be more apps&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
And this is said to be false: &amp;quot;the menu is for newcomers, experienced users use 'Search' field anyway.&amp;quot;&lt;/div&gt;</summary>
		<author><name>Shaforostoff</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Projects/Plasma/AppsMenuReorganization</id>
		<title>Projects/Plasma/AppsMenuReorganization</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Projects/Plasma/AppsMenuReorganization"/>
				<updated>2008-04-17T00:30:33Z</updated>
		
		<summary type="html">&lt;p&gt;Shaforostoff: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Apps Menu Structure Proposal'''. I'd like to make apps menu more fine-grained by introducing submenus&lt;br /&gt;
&lt;br /&gt;
==Internet==&lt;br /&gt;
===Web===&lt;br /&gt;
*Konqueror&lt;br /&gt;
*Firefox&lt;br /&gt;
*Opera&lt;br /&gt;
*Akregator&lt;br /&gt;
===File download and sharing===&lt;br /&gt;
*aMule&lt;br /&gt;
*KTorrent&lt;br /&gt;
*KGet&lt;br /&gt;
*KFtpGrabber&lt;br /&gt;
===Communication===&lt;br /&gt;
*KMail&lt;br /&gt;
*Kopete&lt;br /&gt;
*Konversation&lt;br /&gt;
*Kontact&lt;br /&gt;
*KAddressBook&lt;br /&gt;
*Knode&lt;br /&gt;
===Connectivity===&lt;br /&gt;
*KPPP&lt;br /&gt;
*KRDC&lt;br /&gt;
*KRFB&lt;br /&gt;
*&amp;lt;monitoring apps?&amp;gt;&lt;br /&gt;
==Multimedia==&lt;br /&gt;
===Play and Management===&lt;br /&gt;
*amarok&lt;br /&gt;
*&amp;lt;videoplayers&amp;gt;&lt;br /&gt;
*&amp;lt;tag editors&amp;gt;&lt;br /&gt;
===Creation and editing===&lt;br /&gt;
*Kino&lt;br /&gt;
*cinelerra&lt;br /&gt;
*LiVES&lt;br /&gt;
*Open Movie Editor&lt;br /&gt;
*kdenlive&lt;br /&gt;
*Audacity&lt;br /&gt;
==Graphics==&lt;br /&gt;
===View and Management===&lt;br /&gt;
*Okular&lt;br /&gt;
*Gwenview&lt;br /&gt;
*Digikam&lt;br /&gt;
===Creation and editing===&lt;br /&gt;
*Krita&lt;br /&gt;
*Kolourpaint&lt;br /&gt;
*Gimp&lt;br /&gt;
==Education==&lt;br /&gt;
*Blinken&lt;br /&gt;
===Lingustic===&lt;br /&gt;
*KHangMan&lt;br /&gt;
*KWordQuiz&lt;br /&gt;
*Parley&lt;br /&gt;
===Math===&lt;br /&gt;
*KmPlot&lt;br /&gt;
*KAlgebra&lt;br /&gt;
*Kig&lt;br /&gt;
===Science===&lt;br /&gt;
*KStars&lt;br /&gt;
*Kalzium&lt;br /&gt;
*KTurtle&lt;br /&gt;
*Step&lt;br /&gt;
==Office==&lt;br /&gt;
*k3b&lt;br /&gt;
*Okular&lt;br /&gt;
*Kwrite&lt;br /&gt;
===Time management and Work Organization===&lt;br /&gt;
*KOrganizer&lt;br /&gt;
*KTimeTracker (remove from menu -- present as plasmoid)&lt;br /&gt;
*Kalarm (remove from menu -- present as plasmoid?)&lt;br /&gt;
*KNotes&lt;br /&gt;
*kontact&lt;br /&gt;
*&amp;lt;Syncing apps&amp;gt;&lt;br /&gt;
==Accounting==&lt;br /&gt;
*?&lt;br /&gt;
===OpenOffice.org===&lt;br /&gt;
*&amp;lt;openoffice apps&amp;gt;&lt;br /&gt;
===KOffice===&lt;br /&gt;
*&amp;lt;koffice apps&amp;gt;&lt;br /&gt;
===Desktop publishing===&lt;br /&gt;
*scribus&lt;br /&gt;
*kile&lt;br /&gt;
*lyx&lt;br /&gt;
===Translation===&lt;br /&gt;
*Lokalize&lt;br /&gt;
*OmegaT&lt;br /&gt;
*&amp;lt;dictionaries&amp;gt;&lt;br /&gt;
==System Tools==&lt;br /&gt;
*dolphin&lt;br /&gt;
*k3b&lt;br /&gt;
*Konsole&lt;br /&gt;
*konqueror&lt;br /&gt;
*okular&lt;br /&gt;
*KSysGuard&lt;br /&gt;
*KSystemLog&lt;br /&gt;
*Strigi search&lt;br /&gt;
*KSnapShot&lt;br /&gt;
*&amp;lt;backup app&amp;gt;&lt;br /&gt;
*&amp;lt;Accessibility apps&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Configuration==&lt;br /&gt;
*&amp;lt;...&amp;gt;&lt;br /&gt;
==Engineering==&lt;br /&gt;
*kompare&lt;br /&gt;
===Programming===&lt;br /&gt;
*KDevelop&lt;br /&gt;
*KCachegrind&lt;br /&gt;
*&amp;lt;Version control tools?&amp;gt;&lt;br /&gt;
===Web-development===&lt;br /&gt;
*Quanta&lt;br /&gt;
===Translation===&lt;br /&gt;
*Lokalize&lt;br /&gt;
*OmegaT&lt;br /&gt;
===CAD===&lt;br /&gt;
===Math===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Explanation'''&lt;br /&gt;
*if several apps fulfill the same function (i.e. konqueror, opera, firefox), then their title should be in form of %function% - %appname%: &amp;quot;Web-browser - Konqueror&amp;quot;, and they should be listed consequently&lt;br /&gt;
*We need special entries in .desktop files determining the priority (Menu-Priority, Menu-Priority-KDE, Menu-Priority-Gnome).&lt;br /&gt;
**Because the order is important&lt;br /&gt;
**apps with Menu-Priotity above 100 constant could be visually separated  &lt;br /&gt;
by the line (they are the main apps in the category)&lt;br /&gt;
**apps with Menu-Priotity below 10 may be hidden at all (i.e. they are rarely used by an average user)&lt;br /&gt;
**If category has only 1 item, the item should be displayed instead of category&lt;br /&gt;
**Statistics is needed for this (simple voting?)&lt;br /&gt;
*'Utilities' category isn't needed at all. For example, 'root terminal' should be in System.&lt;br /&gt;
*Plasmoids: a lot of small apps need to be turned into plasmoids.&lt;br /&gt;
**charselect should be callable from anywhere but K-Menu&lt;br /&gt;
**kcalc -- the same&lt;br /&gt;
**dictionary applet&lt;br /&gt;
&lt;br /&gt;
I like the way desktop widgets are displayed in Mac OS X (easy accessible any moment - e.g. clock, calendar, calc)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Alternatively, instead of 'Office' we could use 'Desktop Publishing',  &lt;br /&gt;
putting&lt;br /&gt;
'Groupware (Kontact)' into 'Internet' +merge 'Graphics' to 'Multimedia':&lt;br /&gt;
*Multimedia&lt;br /&gt;
*k3b&lt;br /&gt;
**Music&lt;br /&gt;
***Play and Manage (amarok, tag editors)&lt;br /&gt;
***Create and edit (Audacity)&lt;br /&gt;
**Video&lt;br /&gt;
***Play&lt;br /&gt;
***Create and edit (kino, etc)&lt;br /&gt;
**Graphics&lt;br /&gt;
***View and Manage (Gwenview, Digikam)&lt;br /&gt;
***Create and edit (Krita, Kolourpaint, Gimp)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Critisism I recieved from kde-devel@ so far:&lt;br /&gt;
*.... submenus are bad. They do not seem very usable to me, especially when the structure is not evident: ...&lt;br /&gt;
**so it's better to look through all 10-20 entries (possibly in in each  &lt;br /&gt;
category) before finding app that you need?&lt;br /&gt;
**there should be no more then ~5 items in each category&lt;br /&gt;
*This breaks traditional alphabetical order...&lt;br /&gt;
**alphabetical order is of small value when user doesnt know the name of the  &lt;br /&gt;
app he/she is looking for.&lt;br /&gt;
*Somehow 11 items seems better than 4 submenus&lt;br /&gt;
**but I wrote only few apps, in real life there will be more apps&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
And this is said to be false: &amp;quot;the menu is for newcomers, experienced users use 'Search' field anyway.&amp;quot;&lt;/div&gt;</summary>
		<author><name>Shaforostoff</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Projects/Plasma/AppsMenuReorganization</id>
		<title>Projects/Plasma/AppsMenuReorganization</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Projects/Plasma/AppsMenuReorganization"/>
				<updated>2008-04-17T00:26:46Z</updated>
		
		<summary type="html">&lt;p&gt;Shaforostoff: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Apps Menu Structure Proposal'''. I'd like to make apps menu more fine-grained by introducing submenus&lt;br /&gt;
&lt;br /&gt;
==Internet==&lt;br /&gt;
===Web===&lt;br /&gt;
*Konqueror&lt;br /&gt;
*Firefox&lt;br /&gt;
*Opera&lt;br /&gt;
*Akregator&lt;br /&gt;
===File download and sharing===&lt;br /&gt;
*aMule&lt;br /&gt;
*KTorrent&lt;br /&gt;
*KGet&lt;br /&gt;
*KFtpGrabber&lt;br /&gt;
===Communication===&lt;br /&gt;
*KMail&lt;br /&gt;
*Kopete&lt;br /&gt;
*Konversation&lt;br /&gt;
*Kontact&lt;br /&gt;
*KAddressBook&lt;br /&gt;
*Knode&lt;br /&gt;
===Connectivity===&lt;br /&gt;
*KPPP&lt;br /&gt;
*KRDC&lt;br /&gt;
*KRFB&lt;br /&gt;
*&amp;lt;monitoring apps?&amp;gt;&lt;br /&gt;
==Multimedia==&lt;br /&gt;
===Play and Management===&lt;br /&gt;
*amarok&lt;br /&gt;
*&amp;lt;videoplayers&amp;gt;&lt;br /&gt;
*&amp;lt;tag editors&amp;gt;&lt;br /&gt;
===Creation and editing===&lt;br /&gt;
*Kino&lt;br /&gt;
*cinelerra&lt;br /&gt;
*LiVES&lt;br /&gt;
*Open Movie Editor&lt;br /&gt;
*kdenlive&lt;br /&gt;
*Audacity&lt;br /&gt;
==Graphics==&lt;br /&gt;
===View and Management===&lt;br /&gt;
*Okular&lt;br /&gt;
*Gwenview&lt;br /&gt;
*Digikam&lt;br /&gt;
===Creation and editing===&lt;br /&gt;
*Krita&lt;br /&gt;
*Kolourpaint&lt;br /&gt;
*Gimp&lt;br /&gt;
==Education==&lt;br /&gt;
*Blinken&lt;br /&gt;
===Lingustic===&lt;br /&gt;
*KHangMan&lt;br /&gt;
*KWordQuiz&lt;br /&gt;
*Parley&lt;br /&gt;
===Math===&lt;br /&gt;
*KmPlot&lt;br /&gt;
*KAlgebra&lt;br /&gt;
*Kig&lt;br /&gt;
===Science===&lt;br /&gt;
*KStars&lt;br /&gt;
*Kalzium&lt;br /&gt;
*KTurtle&lt;br /&gt;
*Step&lt;br /&gt;
==Office==&lt;br /&gt;
*k3b&lt;br /&gt;
*Okular&lt;br /&gt;
*Kwrite&lt;br /&gt;
===Time management and Work Organization===&lt;br /&gt;
*KOrganizer&lt;br /&gt;
*KTimeTracker (remove from menu -- present as plasmoid)&lt;br /&gt;
*Kalarm (remove from menu -- present as plasmoid?)&lt;br /&gt;
*KNotes&lt;br /&gt;
*kontact&lt;br /&gt;
*&amp;lt;Syncing apps&amp;gt;&lt;br /&gt;
===OpenOffice.org===&lt;br /&gt;
*&amp;lt;openoffice apps&amp;gt;&lt;br /&gt;
===KOffice===&lt;br /&gt;
*&amp;lt;koffice apps&amp;gt;&lt;br /&gt;
===Desktop publishing===&lt;br /&gt;
*scribus&lt;br /&gt;
*kile&lt;br /&gt;
*lyx&lt;br /&gt;
===Translation===&lt;br /&gt;
*Lokalize&lt;br /&gt;
*OmegaT&lt;br /&gt;
*&amp;lt;dictionaries&amp;gt;&lt;br /&gt;
==System Tools==&lt;br /&gt;
*dolphin&lt;br /&gt;
*k3b&lt;br /&gt;
*Konsole&lt;br /&gt;
*KSysGuard&lt;br /&gt;
*KSystemLog&lt;br /&gt;
*Strigi search&lt;br /&gt;
*KSnapShot&lt;br /&gt;
*&amp;lt;backup app&amp;gt;&lt;br /&gt;
*&amp;lt;Accessibility apps&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Configuration==&lt;br /&gt;
*&amp;lt;...&amp;gt;&lt;br /&gt;
==Engineering==&lt;br /&gt;
*kompare&lt;br /&gt;
===Programming===&lt;br /&gt;
*KDevelop&lt;br /&gt;
*KCachegrind&lt;br /&gt;
*&amp;lt;Version control tools?&amp;gt;&lt;br /&gt;
===Web-development===&lt;br /&gt;
*Quanta&lt;br /&gt;
===Translation===&lt;br /&gt;
*Lokalize&lt;br /&gt;
*OmegaT&lt;br /&gt;
===CAD===&lt;br /&gt;
===Math===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Explanation'''&lt;br /&gt;
*if several apps fulfill the same function (i.e. konqueror, opera, firefox), then their title should be in form of %function% - %appname%: &amp;quot;Web-browser - Konqueror&amp;quot;, and they should be listed consequently&lt;br /&gt;
*We need special entries in .desktop files determining the priority (Menu-Priority, Menu-Priority-KDE, Menu-Priority-Gnome).&lt;br /&gt;
**Because the order is important&lt;br /&gt;
**apps with Menu-Priotity above 100 constant could be visually separated  &lt;br /&gt;
by the line (they are the main apps in the category)&lt;br /&gt;
**apps with Menu-Priotity below 10 may be hidden at all (i.e. they are rarely used by an average user)&lt;br /&gt;
**If category has only 1 item, the item should be displayed instead of category&lt;br /&gt;
**Statistics is needed for this (simple voting?)&lt;br /&gt;
*'Utilities' category isn't needed at all. For example, 'root terminal' should be in System.&lt;br /&gt;
*Plasmoids: a lot of small apps need to be turned into plasmoids.&lt;br /&gt;
**charselect should be callable from anywhere but K-Menu&lt;br /&gt;
**kcalc -- the same&lt;br /&gt;
**dictionary applet&lt;br /&gt;
&lt;br /&gt;
I like the way desktop widgets are displayed in Mac OS X (easy accessible any moment - e.g. clock, calendar, calc)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Alternatively, instead of 'Office' we could use 'Desktop Publishing',  &lt;br /&gt;
putting&lt;br /&gt;
'Groupware (Kontact)' into 'Internet' +merge 'Graphics' to 'Multimedia':&lt;br /&gt;
*Multimedia&lt;br /&gt;
*k3b&lt;br /&gt;
**Music&lt;br /&gt;
***Play and Manage (amarok, tag editors)&lt;br /&gt;
***Create and edit (Audacity)&lt;br /&gt;
**Video&lt;br /&gt;
***Play&lt;br /&gt;
***Create and edit (kino, etc)&lt;br /&gt;
**Graphics&lt;br /&gt;
***View and Manage (Gwenview, Digikam)&lt;br /&gt;
***Create and edit (Krita, Kolourpaint, Gimp)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Critisism I recieved from kde-devel@ so far:&lt;br /&gt;
*.... submenus are bad. They do not seem very usable to me, especially when the structure is not evident: ...&lt;br /&gt;
**so it's better to look through all 10-20 entries (possibly in in each  &lt;br /&gt;
category) before finding app that you need?&lt;br /&gt;
**there should be no more then ~5 items in each category&lt;br /&gt;
*This breaks traditional alphabetical order...&lt;br /&gt;
**alphabetical order is of small value when user doesnt know the name of the  &lt;br /&gt;
app he/she is looking for.&lt;br /&gt;
*Somehow 11 items seems better than 4 submenus&lt;br /&gt;
**but I wrote only few apps, in real life there will be more apps&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
And this is said to be false: &amp;quot;the menu is for newcomers, experienced users use 'Search' field anyway.&amp;quot;&lt;/div&gt;</summary>
		<author><name>Shaforostoff</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Projects/Plasma/AppsMenuReorganization</id>
		<title>Projects/Plasma/AppsMenuReorganization</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Projects/Plasma/AppsMenuReorganization"/>
				<updated>2008-04-16T23:48:51Z</updated>
		
		<summary type="html">&lt;p&gt;Shaforostoff: /* System Tools */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Apps Menu Structure Proposal'''. I'd like to make apps menu more fine-grained by introducing submenus&lt;br /&gt;
&lt;br /&gt;
==Internet==&lt;br /&gt;
===Web===&lt;br /&gt;
*Konqueror&lt;br /&gt;
*Firefox&lt;br /&gt;
*Opera&lt;br /&gt;
*Akregator&lt;br /&gt;
===File download and sharing===&lt;br /&gt;
*aMule&lt;br /&gt;
*KTorrent&lt;br /&gt;
*KGet&lt;br /&gt;
*KFtpGrabber&lt;br /&gt;
===Communication===&lt;br /&gt;
*KMail&lt;br /&gt;
*Kopete&lt;br /&gt;
*Konversation&lt;br /&gt;
*Kontact&lt;br /&gt;
*KAddressBook&lt;br /&gt;
*Knode&lt;br /&gt;
===Connectivity===&lt;br /&gt;
*KPPP&lt;br /&gt;
*KRDC&lt;br /&gt;
*KRFB&lt;br /&gt;
*&amp;lt;monitoring apps?&amp;gt;&lt;br /&gt;
==Multimedia==&lt;br /&gt;
===Play and Management===&lt;br /&gt;
*amarok&lt;br /&gt;
*&amp;lt;videoplayers&amp;gt;&lt;br /&gt;
*&amp;lt;tag editors&amp;gt;&lt;br /&gt;
===Creation and editing===&lt;br /&gt;
*Kino&lt;br /&gt;
*Audacity&lt;br /&gt;
==Graphics==&lt;br /&gt;
===View and Management===&lt;br /&gt;
*Okular&lt;br /&gt;
*Gwenview&lt;br /&gt;
*Digikam&lt;br /&gt;
===Creation and editing===&lt;br /&gt;
*Krita&lt;br /&gt;
*Kolourpaint&lt;br /&gt;
*Gimp&lt;br /&gt;
==Education==&lt;br /&gt;
*Blinken&lt;br /&gt;
===Lingustic===&lt;br /&gt;
*KHangMan&lt;br /&gt;
*KWordQuiz&lt;br /&gt;
*Parley&lt;br /&gt;
===Math===&lt;br /&gt;
*KmPlot&lt;br /&gt;
*KAlgebra&lt;br /&gt;
*Kig&lt;br /&gt;
===Science===&lt;br /&gt;
*KStars&lt;br /&gt;
*Kalzium&lt;br /&gt;
*KTurtle&lt;br /&gt;
*Step&lt;br /&gt;
==Office==&lt;br /&gt;
*k3b&lt;br /&gt;
*Okular&lt;br /&gt;
*Kwrite&lt;br /&gt;
===Time management and Work Organization===&lt;br /&gt;
*KOrganizer&lt;br /&gt;
*KTimeTracker (remove from menu -- present as plasmoid)&lt;br /&gt;
*Kalarm (remove from menu -- present as plasmoid?)&lt;br /&gt;
*KNotes&lt;br /&gt;
*kontact&lt;br /&gt;
*&amp;lt;Syncing apps&amp;gt;&lt;br /&gt;
===OpenOffice.org===&lt;br /&gt;
*&amp;lt;openoffice apps&amp;gt;&lt;br /&gt;
===KOffice===&lt;br /&gt;
*&amp;lt;koffice apps&amp;gt;&lt;br /&gt;
===Desktop publishing===&lt;br /&gt;
*scribus&lt;br /&gt;
*kile&lt;br /&gt;
*lyx&lt;br /&gt;
===Translation===&lt;br /&gt;
*Lokalize&lt;br /&gt;
*OmegaT&lt;br /&gt;
*&amp;lt;dictionaries&amp;gt;&lt;br /&gt;
==System Tools==&lt;br /&gt;
*dolphin&lt;br /&gt;
*k3b&lt;br /&gt;
*Konsole&lt;br /&gt;
*KSysGuard&lt;br /&gt;
*KSystemLog&lt;br /&gt;
*Strigi search&lt;br /&gt;
*KSnapShot&lt;br /&gt;
*&amp;lt;backup app&amp;gt;&lt;br /&gt;
*&amp;lt;Accessibility apps&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Configuration==&lt;br /&gt;
*&amp;lt;...&amp;gt;&lt;br /&gt;
==Engineering==&lt;br /&gt;
*kompare&lt;br /&gt;
===Programming===&lt;br /&gt;
*KDevelop&lt;br /&gt;
*KCachegrind&lt;br /&gt;
*&amp;lt;Version control tools?&amp;gt;&lt;br /&gt;
===Web-development===&lt;br /&gt;
*Quanta&lt;br /&gt;
===Translation===&lt;br /&gt;
*Lokalize&lt;br /&gt;
*OmegaT&lt;br /&gt;
===CAD===&lt;br /&gt;
===Math===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Explanation'''&lt;br /&gt;
*if several apps fulfill the same function (i.e. konqueror, opera, firefox), then their title should be in form of %function% - %appname%: &amp;quot;Web-browser - Konqueror&amp;quot;, and they should be listed consequently&lt;br /&gt;
*We need special entries in .desktop files determining the priority (Menu-Priority, Menu-Priority-KDE, Menu-Priority-Gnome).&lt;br /&gt;
**Because the order is important&lt;br /&gt;
**apps with Menu-Priotity above 100 constant could be visually separated  &lt;br /&gt;
by the line (they are the main apps in the category)&lt;br /&gt;
**apps with Menu-Priotity below 10 may be hidden at all (i.e. they are rarely used by an average user)&lt;br /&gt;
**If category has only 1 item, the item should be displayed instead of category&lt;br /&gt;
**Statistics is needed for this (simple voting?)&lt;br /&gt;
*'Utilities' category isn't needed at all. For example, 'root terminal' should be in System.&lt;br /&gt;
*Plasmoids: a lot of small apps need to be turned into plasmoids.&lt;br /&gt;
**charselect should be callable from anywhere but K-Menu&lt;br /&gt;
**kcalc -- the same&lt;br /&gt;
**dictionary applet&lt;br /&gt;
&lt;br /&gt;
I like the way desktop widgets are displayed in Mac OS X (easy accessible any moment - e.g. clock, calendar, calc)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Alternatively, instead of 'Office' we could use 'Desktop Publishing',  &lt;br /&gt;
putting&lt;br /&gt;
'Groupware (Kontact)' into 'Internet' +merge 'Graphics' to 'Multimedia':&lt;br /&gt;
*Multimedia&lt;br /&gt;
*k3b&lt;br /&gt;
**Music&lt;br /&gt;
***Play and Manage (amarok, tag editors)&lt;br /&gt;
***Create and edit (Audacity)&lt;br /&gt;
**Video&lt;br /&gt;
***Play&lt;br /&gt;
***Create and edit (kino, etc)&lt;br /&gt;
**Graphics&lt;br /&gt;
***View and Manage (Gwenview, Digikam)&lt;br /&gt;
***Create and edit (Krita, Kolourpaint, Gimp)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Critisism I recieved from kde-devel@ so far:&lt;br /&gt;
*.... submenus are bad. They do not seem very usable to me, especially when the structure is not evident: ...&lt;br /&gt;
**so it's better to look through all 10-20 entries (possibly in in each  &lt;br /&gt;
category) before finding app that you need?&lt;br /&gt;
**there should be no more then ~5 items in each category&lt;br /&gt;
*This breaks traditional alphabetical order...&lt;br /&gt;
**alphabetical order is of small value when user doesnt know the name of the  &lt;br /&gt;
app he/she is looking for.&lt;br /&gt;
*Somehow 11 items seems better than 4 submenus&lt;br /&gt;
**but I wrote only few apps, in real life there will be more apps&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
And this is said to be false: &amp;quot;the menu is for newcomers, experienced users use 'Search' field anyway.&amp;quot;&lt;/div&gt;</summary>
		<author><name>Shaforostoff</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Projects/Plasma/AppsMenuReorganization</id>
		<title>Projects/Plasma/AppsMenuReorganization</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Projects/Plasma/AppsMenuReorganization"/>
				<updated>2008-04-16T23:47:30Z</updated>
		
		<summary type="html">&lt;p&gt;Shaforostoff: /* Math */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Apps Menu Structure Proposal'''. I'd like to make apps menu more fine-grained by introducing submenus&lt;br /&gt;
&lt;br /&gt;
==Internet==&lt;br /&gt;
===Web===&lt;br /&gt;
*Konqueror&lt;br /&gt;
*Firefox&lt;br /&gt;
*Opera&lt;br /&gt;
*Akregator&lt;br /&gt;
===File download and sharing===&lt;br /&gt;
*aMule&lt;br /&gt;
*KTorrent&lt;br /&gt;
*KGet&lt;br /&gt;
*KFtpGrabber&lt;br /&gt;
===Communication===&lt;br /&gt;
*KMail&lt;br /&gt;
*Kopete&lt;br /&gt;
*Konversation&lt;br /&gt;
*Kontact&lt;br /&gt;
*KAddressBook&lt;br /&gt;
*Knode&lt;br /&gt;
===Connectivity===&lt;br /&gt;
*KPPP&lt;br /&gt;
*KRDC&lt;br /&gt;
*KRFB&lt;br /&gt;
*&amp;lt;monitoring apps?&amp;gt;&lt;br /&gt;
==Multimedia==&lt;br /&gt;
===Play and Management===&lt;br /&gt;
*amarok&lt;br /&gt;
*&amp;lt;videoplayers&amp;gt;&lt;br /&gt;
*&amp;lt;tag editors&amp;gt;&lt;br /&gt;
===Creation and editing===&lt;br /&gt;
*Kino&lt;br /&gt;
*Audacity&lt;br /&gt;
==Graphics==&lt;br /&gt;
===View and Management===&lt;br /&gt;
*Okular&lt;br /&gt;
*Gwenview&lt;br /&gt;
*Digikam&lt;br /&gt;
===Creation and editing===&lt;br /&gt;
*Krita&lt;br /&gt;
*Kolourpaint&lt;br /&gt;
*Gimp&lt;br /&gt;
==Education==&lt;br /&gt;
*Blinken&lt;br /&gt;
===Lingustic===&lt;br /&gt;
*KHangMan&lt;br /&gt;
*KWordQuiz&lt;br /&gt;
*Parley&lt;br /&gt;
===Math===&lt;br /&gt;
*KmPlot&lt;br /&gt;
*KAlgebra&lt;br /&gt;
*Kig&lt;br /&gt;
===Science===&lt;br /&gt;
*KStars&lt;br /&gt;
*Kalzium&lt;br /&gt;
*KTurtle&lt;br /&gt;
*Step&lt;br /&gt;
==Office==&lt;br /&gt;
*k3b&lt;br /&gt;
*Okular&lt;br /&gt;
*Kwrite&lt;br /&gt;
===Time management and Work Organization===&lt;br /&gt;
*KOrganizer&lt;br /&gt;
*KTimeTracker (remove from menu -- present as plasmoid)&lt;br /&gt;
*Kalarm (remove from menu -- present as plasmoid?)&lt;br /&gt;
*KNotes&lt;br /&gt;
*kontact&lt;br /&gt;
*&amp;lt;Syncing apps&amp;gt;&lt;br /&gt;
===OpenOffice.org===&lt;br /&gt;
*&amp;lt;openoffice apps&amp;gt;&lt;br /&gt;
===KOffice===&lt;br /&gt;
*&amp;lt;koffice apps&amp;gt;&lt;br /&gt;
===Desktop publishing===&lt;br /&gt;
*scribus&lt;br /&gt;
*kile&lt;br /&gt;
*lyx&lt;br /&gt;
===Translation===&lt;br /&gt;
*Lokalize&lt;br /&gt;
*OmegaT&lt;br /&gt;
*&amp;lt;dictionaries&amp;gt;&lt;br /&gt;
==System Tools==&lt;br /&gt;
*k3b&lt;br /&gt;
*Konsole&lt;br /&gt;
*KSysGuard&lt;br /&gt;
*KSystemLog&lt;br /&gt;
*Strigi search&lt;br /&gt;
*KSnapShot&lt;br /&gt;
*&amp;lt;backup app&amp;gt;&lt;br /&gt;
*&amp;lt;Accessibility apps&amp;gt;&lt;br /&gt;
==Configuration==&lt;br /&gt;
*&amp;lt;...&amp;gt;&lt;br /&gt;
==Engineering==&lt;br /&gt;
*kompare&lt;br /&gt;
===Programming===&lt;br /&gt;
*KDevelop&lt;br /&gt;
*KCachegrind&lt;br /&gt;
*&amp;lt;Version control tools?&amp;gt;&lt;br /&gt;
===Web-development===&lt;br /&gt;
*Quanta&lt;br /&gt;
===Translation===&lt;br /&gt;
*Lokalize&lt;br /&gt;
*OmegaT&lt;br /&gt;
===CAD===&lt;br /&gt;
===Math===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Explanation'''&lt;br /&gt;
*if several apps fulfill the same function (i.e. konqueror, opera, firefox), then their title should be in form of %function% - %appname%: &amp;quot;Web-browser - Konqueror&amp;quot;, and they should be listed consequently&lt;br /&gt;
*We need special entries in .desktop files determining the priority (Menu-Priority, Menu-Priority-KDE, Menu-Priority-Gnome).&lt;br /&gt;
**Because the order is important&lt;br /&gt;
**apps with Menu-Priotity above 100 constant could be visually separated  &lt;br /&gt;
by the line (they are the main apps in the category)&lt;br /&gt;
**apps with Menu-Priotity below 10 may be hidden at all (i.e. they are rarely used by an average user)&lt;br /&gt;
**If category has only 1 item, the item should be displayed instead of category&lt;br /&gt;
**Statistics is needed for this (simple voting?)&lt;br /&gt;
*'Utilities' category isn't needed at all. For example, 'root terminal' should be in System.&lt;br /&gt;
*Plasmoids: a lot of small apps need to be turned into plasmoids.&lt;br /&gt;
**charselect should be callable from anywhere but K-Menu&lt;br /&gt;
**kcalc -- the same&lt;br /&gt;
**dictionary applet&lt;br /&gt;
&lt;br /&gt;
I like the way desktop widgets are displayed in Mac OS X (easy accessible any moment - e.g. clock, calendar, calc)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Alternatively, instead of 'Office' we could use 'Desktop Publishing',  &lt;br /&gt;
putting&lt;br /&gt;
'Groupware (Kontact)' into 'Internet' +merge 'Graphics' to 'Multimedia':&lt;br /&gt;
*Multimedia&lt;br /&gt;
*k3b&lt;br /&gt;
**Music&lt;br /&gt;
***Play and Manage (amarok, tag editors)&lt;br /&gt;
***Create and edit (Audacity)&lt;br /&gt;
**Video&lt;br /&gt;
***Play&lt;br /&gt;
***Create and edit (kino, etc)&lt;br /&gt;
**Graphics&lt;br /&gt;
***View and Manage (Gwenview, Digikam)&lt;br /&gt;
***Create and edit (Krita, Kolourpaint, Gimp)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Critisism I recieved from kde-devel@ so far:&lt;br /&gt;
*.... submenus are bad. They do not seem very usable to me, especially when the structure is not evident: ...&lt;br /&gt;
**so it's better to look through all 10-20 entries (possibly in in each  &lt;br /&gt;
category) before finding app that you need?&lt;br /&gt;
**there should be no more then ~5 items in each category&lt;br /&gt;
*This breaks traditional alphabetical order...&lt;br /&gt;
**alphabetical order is of small value when user doesnt know the name of the  &lt;br /&gt;
app he/she is looking for.&lt;br /&gt;
*Somehow 11 items seems better than 4 submenus&lt;br /&gt;
**but I wrote only few apps, in real life there will be more apps&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
And this is said to be false: &amp;quot;the menu is for newcomers, experienced users use 'Search' field anyway.&amp;quot;&lt;/div&gt;</summary>
		<author><name>Shaforostoff</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Projects/Plasma/AppsMenuReorganization</id>
		<title>Projects/Plasma/AppsMenuReorganization</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Projects/Plasma/AppsMenuReorganization"/>
				<updated>2008-04-16T23:28:19Z</updated>
		
		<summary type="html">&lt;p&gt;Shaforostoff: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Apps Menu Structure Proposal'''. I'd like to make apps menu more fine-grained by introducing submenus&lt;br /&gt;
&lt;br /&gt;
==Internet==&lt;br /&gt;
===Web===&lt;br /&gt;
*Konqueror&lt;br /&gt;
*Firefox&lt;br /&gt;
*Opera&lt;br /&gt;
*Akregator&lt;br /&gt;
===File download and sharing===&lt;br /&gt;
*aMule&lt;br /&gt;
*KTorrent&lt;br /&gt;
*KGet&lt;br /&gt;
*KFtpGrabber&lt;br /&gt;
===Communication===&lt;br /&gt;
*KMail&lt;br /&gt;
*Kopete&lt;br /&gt;
*Konversation&lt;br /&gt;
*Kontact&lt;br /&gt;
*KAddressBook&lt;br /&gt;
*Knode&lt;br /&gt;
===Connectivity===&lt;br /&gt;
*KPPP&lt;br /&gt;
*KRDC&lt;br /&gt;
*KRFB&lt;br /&gt;
*&amp;lt;monitoring apps?&amp;gt;&lt;br /&gt;
==Multimedia==&lt;br /&gt;
===Play and Management===&lt;br /&gt;
*amarok&lt;br /&gt;
*&amp;lt;videoplayers&amp;gt;&lt;br /&gt;
*&amp;lt;tag editors&amp;gt;&lt;br /&gt;
===Creation and editing===&lt;br /&gt;
*Kino&lt;br /&gt;
*Audacity&lt;br /&gt;
==Graphics==&lt;br /&gt;
===View and Management===&lt;br /&gt;
*Okular&lt;br /&gt;
*Gwenview&lt;br /&gt;
*Digikam&lt;br /&gt;
===Creation and editing===&lt;br /&gt;
*Krita&lt;br /&gt;
*Kolourpaint&lt;br /&gt;
*Gimp&lt;br /&gt;
==Education==&lt;br /&gt;
*Blinken&lt;br /&gt;
===Lingustic===&lt;br /&gt;
*KHangMan&lt;br /&gt;
*KWordQuiz&lt;br /&gt;
*Parley&lt;br /&gt;
===Math===&lt;br /&gt;
*KmPlot&lt;br /&gt;
*KAlgebra&lt;br /&gt;
*Kig&lt;br /&gt;
===Science===&lt;br /&gt;
*KStars&lt;br /&gt;
*Kalzium&lt;br /&gt;
*KTurtle&lt;br /&gt;
*Step&lt;br /&gt;
==Office==&lt;br /&gt;
*k3b&lt;br /&gt;
*Okular&lt;br /&gt;
*Kwrite&lt;br /&gt;
===Time management and Work Organization===&lt;br /&gt;
*KOrganizer&lt;br /&gt;
*KTimeTracker (remove from menu -- present as plasmoid)&lt;br /&gt;
*Kalarm (remove from menu -- present as plasmoid?)&lt;br /&gt;
*KNotes&lt;br /&gt;
*kontact&lt;br /&gt;
*&amp;lt;Syncing apps&amp;gt;&lt;br /&gt;
===OpenOffice.org===&lt;br /&gt;
*&amp;lt;openoffice apps&amp;gt;&lt;br /&gt;
===KOffice===&lt;br /&gt;
*&amp;lt;koffice apps&amp;gt;&lt;br /&gt;
===Desktop publishing===&lt;br /&gt;
*scribus&lt;br /&gt;
*kile&lt;br /&gt;
*lyx&lt;br /&gt;
===Translation===&lt;br /&gt;
*Lokalize&lt;br /&gt;
*OmegaT&lt;br /&gt;
*&amp;lt;dictionaries&amp;gt;&lt;br /&gt;
==System Tools==&lt;br /&gt;
*k3b&lt;br /&gt;
*Konsole&lt;br /&gt;
*KSysGuard&lt;br /&gt;
*KSystemLog&lt;br /&gt;
*Strigi search&lt;br /&gt;
*KSnapShot&lt;br /&gt;
*&amp;lt;backup app&amp;gt;&lt;br /&gt;
*&amp;lt;Accessibility apps&amp;gt;&lt;br /&gt;
==Configuration==&lt;br /&gt;
*&amp;lt;...&amp;gt;&lt;br /&gt;
==Engineering==&lt;br /&gt;
*kompare&lt;br /&gt;
===Programming===&lt;br /&gt;
*KDevelop&lt;br /&gt;
*KCachegrind&lt;br /&gt;
*&amp;lt;Version control tools?&amp;gt;&lt;br /&gt;
===Web-development===&lt;br /&gt;
*Quanta&lt;br /&gt;
===Translation===&lt;br /&gt;
*Lokalize&lt;br /&gt;
*OmegaT&lt;br /&gt;
===CAD===&lt;br /&gt;
===Math===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Explanation'''&lt;br /&gt;
*if several apps fulfill the same function (i.e. konqueror, opera, firefox), then their title should be in form of %function% - %appname%: &amp;quot;Web-browser - Konqueror&amp;quot;, and they should be listed consequently&lt;br /&gt;
*We need a special entries in .desktop files determining the priority (Menu-Priority, Menu-Priority-KDE, Menu-Priority-Gnome).&lt;br /&gt;
**Because the order is important&lt;br /&gt;
**apps with Menu-Priotity above 100 constant could be visually separated  &lt;br /&gt;
by the line (they are the main apps in the category)&lt;br /&gt;
**apps with Menu-Priotity below 10 may be hidden at all (i.e. they are rarely used by an average user)&lt;br /&gt;
**If category has only 1 item, the item should be displayed instead of  &lt;br /&gt;
category&lt;br /&gt;
**Statistics is needed for this (simple voting?)&lt;br /&gt;
*'Utilities' category isn't needed at all. For example, 'root terminal' should be in System.&lt;br /&gt;
*Plasmoids: a lot of small apps need to be turned into plasmoids.&lt;br /&gt;
**charselect should be callable from anywhere but K-Menu&lt;br /&gt;
**kcalc -- the same&lt;br /&gt;
**dictionary applet&lt;br /&gt;
&lt;br /&gt;
I like the way desktop widgets are displayed in Mac OS X (easy accessible any moment - e.g. clock, calendar, calc)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Alternatively, instead of 'Office' we could use 'Desktop Publishing',  &lt;br /&gt;
putting&lt;br /&gt;
'Groupware (Kontact)' into 'Internet' +merge 'Graphics' to 'Multimedia':&lt;br /&gt;
*Multimedia&lt;br /&gt;
*k3b&lt;br /&gt;
**Music&lt;br /&gt;
***Play and Manage (amarok, tag editors)&lt;br /&gt;
***Create and edit (Audacity)&lt;br /&gt;
**Video&lt;br /&gt;
***Play&lt;br /&gt;
***Create and edit (kino, etc)&lt;br /&gt;
**Graphics&lt;br /&gt;
***View and Manage (Gwenview, Digikam)&lt;br /&gt;
***Create and edit (Krita, Kolourpaint, Gimp)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Critisism I recieved from kde-devel@ so far:&lt;br /&gt;
*.... submenus are bad. They do not seem very usable to me, especially when the structure is not evident: ...&lt;br /&gt;
**so it's better to look through all 10-20 entries (possibly in in each  &lt;br /&gt;
category) before finding app that you need?&lt;br /&gt;
**there should be no more then ~5 items in each category&lt;br /&gt;
*This breaks traditional alphabetical order...&lt;br /&gt;
**alphabetical order is of small value when user doesnt know the name of the  &lt;br /&gt;
app he/she is looking for.&lt;br /&gt;
*Somehow 11 items seems better than 4 submenus&lt;br /&gt;
**but I wrote only few apps, in real life there will be more apps&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
And this is said to be false: &amp;quot;the menu is for newcomers, experienced users use 'Search' field anyway.&amp;quot;&lt;/div&gt;</summary>
		<author><name>Shaforostoff</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Projects/Plasma/AppsMenuReorganization</id>
		<title>Projects/Plasma/AppsMenuReorganization</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Projects/Plasma/AppsMenuReorganization"/>
				<updated>2008-04-15T13:21:28Z</updated>
		
		<summary type="html">&lt;p&gt;Shaforostoff: /* Time management and Work Organization */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Apps Menu Structure Proposal'''. I'd like to make apps menu more fine-grained by introducing submenus&lt;br /&gt;
&lt;br /&gt;
==Internet==&lt;br /&gt;
===Web===&lt;br /&gt;
*Konqueror&lt;br /&gt;
*Firefox&lt;br /&gt;
*Opera&lt;br /&gt;
*Akregator&lt;br /&gt;
===File download and sharing===&lt;br /&gt;
*aMule&lt;br /&gt;
*KTorrent&lt;br /&gt;
*KGet&lt;br /&gt;
*KFtpGrabber&lt;br /&gt;
===Communication===&lt;br /&gt;
*KMail&lt;br /&gt;
*Kopete&lt;br /&gt;
*Konversation&lt;br /&gt;
*Kontact&lt;br /&gt;
*KAddressBook&lt;br /&gt;
*Knode&lt;br /&gt;
===Connectivity===&lt;br /&gt;
*KPPP&lt;br /&gt;
*KRDC&lt;br /&gt;
*KRFB&lt;br /&gt;
*&amp;lt;monitoring apps?&amp;gt;&lt;br /&gt;
==Multimedia==&lt;br /&gt;
===Play and Management===&lt;br /&gt;
*amarok&lt;br /&gt;
*&amp;lt;videoplayers&amp;gt;&lt;br /&gt;
*&amp;lt;tag editors&amp;gt;&lt;br /&gt;
===Creation and editing===&lt;br /&gt;
*Kino&lt;br /&gt;
*Audacity&lt;br /&gt;
==Graphics==&lt;br /&gt;
===View and Management===&lt;br /&gt;
*Okular&lt;br /&gt;
*Gwenview&lt;br /&gt;
*Digikam&lt;br /&gt;
===Creation and editing===&lt;br /&gt;
*Krita&lt;br /&gt;
*Kolourpaint&lt;br /&gt;
*Gimp&lt;br /&gt;
==Education==&lt;br /&gt;
*Blinken&lt;br /&gt;
===Lingustic===&lt;br /&gt;
*KHangMan&lt;br /&gt;
*KWordQuiz&lt;br /&gt;
*Parley&lt;br /&gt;
===Math===&lt;br /&gt;
*KmPlot&lt;br /&gt;
*KAlgebra&lt;br /&gt;
*Kig&lt;br /&gt;
===Science===&lt;br /&gt;
*KStars&lt;br /&gt;
*Kalzium&lt;br /&gt;
*KTurtle&lt;br /&gt;
*Step&lt;br /&gt;
==Office==&lt;br /&gt;
*k3b&lt;br /&gt;
*Okular&lt;br /&gt;
*Kwrite&lt;br /&gt;
===Time management and Work Organization===&lt;br /&gt;
*KOrganizer&lt;br /&gt;
*KTimeTracker (remove from menu -- present as plasmoid)&lt;br /&gt;
*Kalarm (remove from menu -- present as plasmoid?)&lt;br /&gt;
*KNotes&lt;br /&gt;
*kontact&lt;br /&gt;
*&amp;lt;Syncing apps&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===OpenOffice.org===&lt;br /&gt;
*&amp;lt;openoffice apps&amp;gt;&lt;br /&gt;
===KOffice===&lt;br /&gt;
*&amp;lt;koffice apps&amp;gt;&lt;br /&gt;
===Desktop publishing===&lt;br /&gt;
*scribus&lt;br /&gt;
*kile&lt;br /&gt;
*lyx&lt;br /&gt;
==System Tools==&lt;br /&gt;
*k3b&lt;br /&gt;
*Konsole&lt;br /&gt;
*KSysGuard&lt;br /&gt;
*KSystemLog&lt;br /&gt;
*Strigi search&lt;br /&gt;
*KSnapShot&lt;br /&gt;
*&amp;lt;backup app&amp;gt;&lt;br /&gt;
*&amp;lt;Accessibility apps&amp;gt;&lt;br /&gt;
==Configuration==&lt;br /&gt;
*&amp;lt;...&amp;gt;&lt;br /&gt;
==Engineering==&lt;br /&gt;
*kompare&lt;br /&gt;
===Programming===&lt;br /&gt;
*KDevelop&lt;br /&gt;
*KCachegrind&lt;br /&gt;
*&amp;lt;Version control tools?&amp;gt;&lt;br /&gt;
===Web-development===&lt;br /&gt;
*Quanta&lt;br /&gt;
===Translation===&lt;br /&gt;
*Lokalize&lt;br /&gt;
===CAD===&lt;br /&gt;
===Math===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Explanation'''&lt;br /&gt;
*if several apps fulfill the same function (i.e. konqueror, opera, firefox), then their title should be in form of %function% - %appname%: &amp;quot;Web-browser - Konqueror&amp;quot;, and they should be listed consequently&lt;br /&gt;
*We need a special entries in .desktop files determining the priority (Menu-Priority, Menu-Priority-KDE, Menu-Priority-Gnome).&lt;br /&gt;
**Because the order is important&lt;br /&gt;
**apps with Menu-Priotity above 100 constant could be visually separated  &lt;br /&gt;
by the line (they are the main apps in the category)&lt;br /&gt;
**apps with Menu-Priotity below 10 may be hidden at all (i.e. they are rarely used by an average user)&lt;br /&gt;
**If category has only 1 item, the item should be displayed instead of  &lt;br /&gt;
category&lt;br /&gt;
**Statistics is needed for this (simple voting?)&lt;br /&gt;
*'Utilities' category isn't needed at all. For example, 'root terminal' should be in System.&lt;br /&gt;
*Plasmoids: a lot of small apps need to be turned into plasmoids.&lt;br /&gt;
**charselect should be callable from anywhere but K-Menu&lt;br /&gt;
**kcalc -- the same&lt;br /&gt;
**dictionary applet&lt;br /&gt;
&lt;br /&gt;
I like the way desktop widgets are displayed in Mac OS X (easy accessible any moment - e.g. clock, calendar, calc)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Alternatively, instead of 'Office' we could use 'Desktop Publishing',  &lt;br /&gt;
putting&lt;br /&gt;
'Groupware (Kontact)' into 'Internet' +merge 'Graphics' to 'Multimedia':&lt;br /&gt;
*Multimedia&lt;br /&gt;
*k3b&lt;br /&gt;
**Music&lt;br /&gt;
***Play and Manage (amarok, tag editors)&lt;br /&gt;
***Create and edit (Audacity)&lt;br /&gt;
**Video&lt;br /&gt;
***Play&lt;br /&gt;
***Create and edit (kino, etc)&lt;br /&gt;
**Graphics&lt;br /&gt;
***View and Manage (Gwenview, Digikam)&lt;br /&gt;
***Create and edit (Krita, Kolourpaint, Gimp)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Critisism I recieved from kde-devel@ so far:&lt;br /&gt;
*.... submenus are bad. They do not seem very usable to me, especially when the structure is not evident: ...&lt;br /&gt;
**so it's better to look through all 10-20 entries (possibly in in each  &lt;br /&gt;
category) before finding app that you need?&lt;br /&gt;
**there should be no more then ~5 items in each category&lt;br /&gt;
*This breaks traditional alphabetical order...&lt;br /&gt;
**alphabetical order is of small value when user doesnt know the name of the  &lt;br /&gt;
app he/she is looking for.&lt;br /&gt;
*Somehow 11 items seems better than 4 submenus&lt;br /&gt;
**but I wrote only few apps, in real life there will be more apps&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
And this is said to be false: &amp;quot;the menu is for newcomers, experienced users use 'Search' field anyway.&amp;quot;&lt;/div&gt;</summary>
		<author><name>Shaforostoff</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Projects/Plasma/AppsMenuReorganization</id>
		<title>Projects/Plasma/AppsMenuReorganization</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Projects/Plasma/AppsMenuReorganization"/>
				<updated>2008-04-15T13:21:12Z</updated>
		
		<summary type="html">&lt;p&gt;Shaforostoff: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Apps Menu Structure Proposal'''. I'd like to make apps menu more fine-grained by introducing submenus&lt;br /&gt;
&lt;br /&gt;
==Internet==&lt;br /&gt;
===Web===&lt;b