https://community.kde.org/api.php?action=feedcontributions&user=Tgridel&feedformat=atomKDE Community Wiki - User contributions [en]2024-03-28T19:00:48ZUser contributionsMediaWiki 1.40.2https://community.kde.org/index.php?title=GSoC/2013/Ideas&diff=30994GSoC/2013/Ideas2013-03-31T21:08:39Z<p>Tgridel: /* Project: Marble KML Map Editor */</p>
<hr />
<div>[[Category:Mentoring]]<br />
See also: [[../../|GSoc Instructions]], [[../../2012/Ideas|Last year ideas]]<br />
<br />
== Guidelines ==<br />
<br />
=== Information for Students ===<br />
<br />
These ideas were contributed by our developers and users. They are sometimes vague or incomplete. If you wish to submit a proposal based on these ideas, you may wish to contact the developers and find out more about the particular suggestion you're looking at.<br />
<br />
Being accepted as a Google Summer of Code student is quite competitive. Accepted students typically have thoroughly researched the technologies of their proposed project and have been in frequent contact with potential mentors. Simply copying and pasting an idea here will not work. On the other hand, creating a completely new idea without first consulting potential mentors is unlikely to work out.<br />
<br />
When writing your proposal or asking for help from the general KDE community don't assume people are familiar with the ideas here. KDE is really big!<br />
<br />
If there is no specific contact given you can ask questions on the general KDE development list kde-devel@kde.org. See [http://www.kde.org/mailinglists/ the KDE mailing lists page] for information on available mailing lists and how to subscribe.<br />
<br />
=== Adding a Proposal ===<br />
<br />
{{Note|Follow the template of other proposals!}}<br />
<br />
==== Project: ====<br />
<br />
'''Brief explanation:'''<br />
<br />
'''Expected results:'''<br />
<br />
'''Knowledge Prerequisite:'''<br />
<br />
'''Mentor:'''<br />
<br />
When adding an idea to this section, please try to include the following data:<br />
<br />
:*if the application is not widely known, a description of what it does and where its code lives<br />
:*a brief explanation<br />
:*the expected results<br />
:*pre-requisites for working on your project<br />
:*if applicable, links to more information or discussions<br />
:*mailing list or IRC channel for your application/library/module<br />
:*your name and email address for contact (if you're willing to be a mentor)<br />
<br />
If you are not a developer but have a good idea for a proposal, get in contact with relevant developers first.<br />
<br />
<br />
==Ideas==<br />
<br />
{{Note|Ladies: You are also invited to apply for the [[OutreachProgramForWomen]].}}<br />
<br />
===Your Own Idea ===<br />
<br />
==== Project: Something that you're totally excited about ====<br />
<br />
'''Brief explanation:''' Do you have an awesome idea you want to work on with KDE but that is not among the ideas below? That's cool. We love that! But please do us a favor: Get in touch with a mentor early on and make sure your project is realistic and within the scope of KDE. That will spare you and us a lot of frustration.<br />
<br />
'''Expected results:''' Something you and KDE loves<br />
<br />
'''Knowledge Prerequisite:''' Probably C++ and Qt but depends on your project<br />
<br />
'''Mentor:''' Try to see who in KDE is interested in what you want to work on and approach them. If you are unsure you can always ask in #kde-soc on Freenode IRC.<br />
<br />
===Web===<br />
<br />
==== Project: Simple project report====<br />
<br />
'''Brief explanation:''' Create a web service with web frontend that is able to fetch data from different sources (bugzilla, git, mailist) to concentrate the activity of a project in a single site. Some simple stadistics will be awesome.<br />
'''Expected results:''' Web interface plus service<br />
<br />
'''Knowledge Prerequisite:''' Ruby<br />
<br />
'''Mentor:''' Rafael Fernandez Lopez (ereslibre@kde.org)<br />
<br />
===Zeitgeist===<br />
<br />
==== Project: Port libqzeitgeist to libzeitgeist2====<br />
<br />
'''Brief explanation:''' Just recently, Zeitgeist released libzeitgeist2, which inclues direct database access as a performance boost. libqzeitgeist is still using the raw DBus API which is slower.<br />
<br />
'''Expected results:''' Port libqzeitgeist to use libzeitgeist2 and make sure there are no regressions<br />
<br />
'''Knowledge Prerequisite:''' C, C++, Vala (C#/Java is close enough)<br />
<br />
'''Mentor:''' Seif Lotfy seif@lotfy.com and Trever Fischer tdfischer@kde.org, #zeitgeist on Freenode IRC.<br />
<br />
===KDE Multimedia===<br />
==== Project: KMix2 Sound Menu====<br />
<br />
'''Brief explanation:''' KMix2 is mostly ready for daily use. However, the system tray popup is nothing special. A long time ago, KMix started to include Ubuntu's Sound Menu design. Development stalled, and a new rewrite of KMix is around the corner. Ubuntu's Sound Menu concept condenses all your multimedia controls into one notification area icon: volume, playlists, now playing, pulseaudio controls, etc.<br />
<br />
'''Expected results:''' See https://wiki.ubuntu.com/SoundMenu<br />
<br />
'''Knowledge Prerequisite:''' C++, Qt, Qt Widgets, basic understanding of media players<br />
<br />
'''Mentor:''' Trever Fischer, tdfischer@kde.org, #kde-multimedia on Freenode IRC<br />
<br />
The student will need to:<br />
<br />
* Understand principals of KMix2's architecture<br />
* Implement the SoundMenu proposed designs<br />
* Implement [http://specifications.freedesktop.org/mpris-spec/latest/ MPRIS controls]<br />
<br />
==== Project: Improvements and enhancements for Plasma Media Center====<br />
<br />
'''Brief explanation:''' Plasma Media Center (PMC) is a KDE's media centric interface to view different media like Music, Pictures and Videos together at one place. Recently Plasma Media Center 1.0 has been released. It is optimized to work on different kind of devices.<br />
* Project Wiki link: http://community.kde.org/Plasma/Plasma_Media_Center<br />
* PMC 1.0 release link : http://dot.kde.org/2013/03/20/plasma-media-center-release-one<br />
<br />
'''Expected results:''' Some of the improvements that PMC can have<br />
* Categorizing media better like pictures on the basis of tags, videos according to different filters - length, quality etc<br />
* Improving playlist search - should be able to search through artist, album etc<br />
* Folder preview in Local Media Browsing<br />
<br />
'''Note:''' Students are encouraged (and plus points) to research and come up with their own ideas<br />
<br />
'''Knowledge Prerequisite:''' C++ is required. Basic knowledge of Qt/QML is a huge plus.<br />
<br />
'''Mentor:''' Sinny Kumari <ksinny@gmail.com> , #plasma on Freenode<br />
<br />
===Amarok===<br />
<br />
====Project: Reimplement Amarok 1.4/iTunes import on top of Statistics Synchronization and add more synchronization targets====<br />
'''Brief explanation:''' Since early 2.x versions, Amarok had an ability to import personal track metadata such as play count, rating and last played time from either Amarok 1.4 database or iTunes datbase. This works fine, but once the data are imported and one still uses the other audio player, the metadata of both players drift away. A new statistics synchronization framework was added in Amarok 2.7. This project would deal with reimplementing the medatada importers on top of the new StatSyncing framework and adding 2 new synchronization targets: one for synchronizing with another Amarok 2.x database and one for synchronizing with another popular audio player of student's choice (which needs to support the personal metadata; perhaps Clementine).<br />
<br />
Implementing the import on top of StatSyncing will have following advantages:<br />
* it can be used repeatedly to synchronize data rather than one-time to overwrite them<br />
* it increases code reuse, the code to match tracks by metadata and to visualize the synchronization is already there<br />
* StatSyncing works with any set of collections, not just with Local Collection (useful e.g. if one wants to use just Nepomuk Collection)<br />
<br />
'''Expected results:''' Importing metadata from Amarok 1.4 or iTunes will work no worse than it does currently (with the exception that matching will be done solely by track metadata such as title and album) and synchronizing with more players (Amarok 2.x and at least one more) will be possible.<br />
<br />
'''Knowledge Prerequisite:''' C++, Qt, understanding multithreading, memory management (stack vs. heap allocation, smart pointers)<br />
<br />
The student will need to:<br />
* understand principles of Amarok StatSyncing framework (under src/statsyncing/ in source code repository)<br />
* understand how current database importers work (these are under src/databaseimporter/)<br />
* understand how the other audio player of choice stores personal metadata (this is student's own work, mentors cannot help much here)<br />
...before the coding period starts.<br />
<br />
'''Mentor:''' The Amarok Team, [https://mail.kde.org/mailman/listinfo/amarok-devel amarok-devel@kde.org], #amarok on Freenode IRC, see [[Amarok/Development/Join]]<br />
<br />
====Project: Rewrite Audio CD Collection so that it doesn't use deprecated technologies====<br />
'''Brief explanation:''' As of version 2.7, Amarok supports audio CDs, somehow. ''Somehow'' means that it isn't reliable, uses technologies (audiocd KIO) in a way they weren't meant to be used and prevents deprecated Amarok frameworks (MediaDeviceFramework) from being ditched. Aim of this project is to rewrite the AudioCD Collection from scratch to use appropriate libraries and to be more reliable. The new AudioCD collection should:<br />
* use KDE's Solid to detect and enumerate CD drives and any CD media present. (it does currently, but it needs to be factored out of AudioCdConnectionAssistant to AudioCdCollectionFactory)<br />
* use MemoryCollection, MemoryMeta and MapChanger components to represent and manage its tracks<br />
* use libkcddb to asynchronously query CDDB information about the CD tracks<br />
* audiocd KIO may be retained just for copying tracks out of AudioCD Collection or replaced by other solution<br />
* (bonus point) if CD detection and track enumeration also works on Windows<br />
<br />
<br />
''Note that actual CD playback is handled by Phonon and is out of scope of this project.''<br />
<br />
'''Expected results:''' Reliable audio CD detection and track enumeration with asynchronous CDDB metadata fetching. This is a small to medium size project, so high level of polish will be expected.<br />
<br />
'''Knowledge Prerequisite:''' C++, Qt, understanding multithreading, memory management (stack vs. heap allocation, smart pointers)<br />
<br />
The student will need to understand how Amarok represents so-called Meta objects (tracks, albums...), Collections and track providers before the coding period starts. See the HACKING subfolder of Amarok source code, especially HACKING/architecture.<br />
<br />
'''Mentor:''' The Amarok Team, [https://mail.kde.org/mailman/listinfo/amarok-devel amarok-devel@kde.org], #amarok on Freenode IRC, see [[Amarok/Development/Join]]<br />
<br />
====Project: Improving and modularizing tag guessing====<br />
'''Brief explanation:''' Amarok has been long able to get track tags (title, artist...) from MusicBrainz using either existing tags or using MusicIP audio fingerprints. In the mean time, MusicBrainz is phasing out MusicIP (PUIDs) in favour of AcousID and more services to guess/correct tags emerged. Goal of this project would be to:<br />
* create generic framework for ''tag getters'' (may be similar in design to StatSyncing::Controller + StatSyncing::Provider)<br />
* port existing (tag-based) MusicBrainz tag getter to it<br />
* port and rewrite existing fingerprint-based MusicBrainz tag getter out of ffmpeg + libofa to Phonon + chromaprint (library to compute AcoustIDs) ''Viability of Phonon for this task needs to be verified''<br />
* create new tag-based ''tag getter'' that uses Last.fm web service to get metadata corrections<br />
* make MusicBrains Tagger use the new framework instead of hard-coding MusicBrainz usage. It will just run the invidual getters in parallel (using some kind of ''Tag Getter Controller'') and display the results along with their source and score. Note that there is a [https://git.reviewboard.kde.org/r/105290/ pending review request] dealing with MusicBrainz tagging and the dialog<br />
* (bonus point) create new ''tag getter'' using the [https://github.com/lastfm/Fingerprinter Last.fm Fingerprinter]<br />
<br />
'''Expected results:''' Getting tags from MusicBrainz will work the same, albeit with a better UI, using Last.fm to correct tags will get implemented and adding new ''tag guessers'' will be just a matter of implementing a documented abstract base class.<br />
<br />
'''Knowledge Prerequisite:''' C++, Qt, understanding multithreading, memory management (stack vs. heap allocation, smart pointers), understanding how Web Services work<br />
<br />
'''Mentor:''' The Amarok Team, [https://mail.kde.org/mailman/listinfo/amarok-devel amarok-devel@kde.org], #amarok on Freenode IRC, see [[Amarok/Development/Join]]<br />
<br />
===digiKam===<br />
<br />
digiKam is an advanced digital photo management application for Linux, Windows, and Mac-OSX.<br />
<br />
* [http://www.digikam.org digiKam project web site]<br />
* [https://mail.kde.org/mailman/listinfo/digikam-devel Mailinglist]<br />
* [https://plus.google.com/+digikam Google+ page]<br />
* [http://webchat.freenode.net/?channels=digikam #digikam IRC channel on Freenode]<br />
<br />
==== Project: Tags Manager ====<br />
<br />
'''Brief explanation:''' Moving tags around in the small tags views from right or left digiKam sidebar can be fastidious, especially with a huge collection of items. A new dedicated windows must be created to manage all tags and relevant properties hosted by digiKam database. This tool must support drag and drop, multiple selections, copy/move operations, properties edition and duplication.<br />
<br />
'''Dependencies:''' : digiKam core implementation<br />
<br />
'''Bugzilla entries:''' [https://bugs.kde.org/show_bug.cgi?id=263299 263299]<br />
<br />
'''Knowledge Prerequisite:''' C/C++, Qt/KDE, GUI<br />
<br />
'''Expected results:''' new window to edit and manage all digiKam tags<br />
<br />
'''Difficulty:''' medium<br />
<br />
'''Lead Mentor:''' Smit Metha <smit dot meh at gmail dot com><br />
<br />
'''Alternative Mentor:''' Gilles Caulier <caulier dot gilles at gmail dot com><br />
<br />
==== Project: HDR Composer ====<br />
'''Brief explanation:''' digiKam already include a tool to make pseudo HDR image through ExpoBlending tool, based on align_image_stack program from [http://hugin.sourceforge.net/ Hugin project] and [http://enblend.sourceforge.net/ Enfuse command line tool]. ExpoBlendin is limited to improve a litlle bit exposure latitude of images. It has creativity limitations and cannot reproduce nice HDR images, as [http://qtpfsgui.sourceforge.net/ LuminanceHDR] can do. The goal of this project is to extend current ExpoBlending tool to add new advanced HDR worklflow or create a new one, depending of complexity . Also, some GUI improvement need to be done to be able to process more that on set of bracketing shots at the same time.<br />
<br />
'''Bugzilla entries:''' [https://bugs.kde.org/show_bug.cgi?id=275364 275364], [https://bugs.kde.org/show_bug.cgi?id=273254 273254]<br />
<br />
'''Dependencies:''' ExpoBlending tool or a new tool to design from scratch<br />
<br />
'''Knowledge Prerequisite:''' C/C++, Qt, Imagery, math<br />
<br />
'''Expected results:''' new tool to perform high quality HDR composing as items visible [https://plus.google.com/u/0/communities/106410859323748432882 in this Google+ group].<br />
<br />
'''Difficulty:''' high<br />
<br />
'''Lead Mentor:''' ???<br />
<br />
'''Alternative Mentor:''' Gilles Caulier <caulier dot gilles at gmail dot com><br />
<br />
==== Project: Cloud Integration Export Plugin ====<br />
'''Brief explanation:''' Creating a kipi export plugin for putting the pictures on cloud storage devices like Google Drive, DropBox, Skydrive, etc. Depends on the availability of an open source API. For any cloud storage facility, there are two possibilities, either they give an API in a common programming language, which is freely distributed and is easily implementable in our codebase. Or someone else than the service provider has created an open source API. You should be able to see some examples on github or sourceforge. Some service providers want only their API to be used, some dont mind other tool accessing the cloud using OAuth, etc. The student is expected to go through both the options for a particular cloud storage, identify the solution which is best suitable for already existing kipi-plugins framework, i.e. C++ / Qt, and implement it over the summer for atleast two major cloud services Google Drive and Dropbox.<br />
<br />
'''Bugzilla entries:''' [https://bugs.kde.org/show_bug.cgi?id=300445 300445]<br />
<br />
'''Dependencies:''' APIs from G+, Dropbox, Skydrive tool<br />
<br />
'''Knowledge Prerequisite:''' C/C++, Qt<br />
<br />
'''Expected results:''' new tool to import/export items to Cloud web service<br />
<br />
'''Difficulty:''' easy / medium<br />
<br />
'''Lead Mentor:''' Smit Mehta <smit dot meh at gmail dot com><br />
<br />
'''Alternative Mentor:''' ???<br />
<br />
==== Project: Port Showfoto thumb-bar to Qt model/view ====<br />
'''Brief explanation:''' ThumbBarView is a Qt3Support class based on Q3ScrollView class which will disappear with next Qt5. This class still only used by Showfoto editor. It must be ported to Qt model/view implementation using already existing common classes used in digiKam core.<br />
<br />
'''Dependencies:''' [https://projects.kde.org/projects/extragear/graphics/digikam/repository/revisions/master/entry/libs/widgets/q3support/TODO digiKam core, Qt model view]<br />
<br />
'''Knowledge Prerequisite:''' C/C++, Qt, model/view<br />
<br />
'''Expected results:''' implement Showfoto thumb-bar to model/view<br />
<br />
'''Difficulty:''' medium<br />
<br />
'''Lead Mentor:''' Islam Wazery <wazery at ubuntu dot com><br />
<br />
'''Alternative Mentor:''' ???<br />
<br />
==== Project: Port image editor Canvas classes to Qt model/view ====<br />
<br />
'''Brief explanation:''' Image Editor canvas classes are Qt3Support classes based on Q3ScrollView which will disappear with next Qt5. This class is used by digiKam Image editor to render lead editor canvas and some tools canvas as ColorCorrection, CurvesAdjust, LevelAdjust, etc. It must be ported to Qt4 model/view implementation using already existing common classes used in digiKam core.<br />
<br />
'''Dependencies:''' [https://projects.kde.org/projects/extragear/graphics/digikam/repository/revisions/master/entry/utilities/imageeditor/q3support/TODO digiKam core, Image Editor, Qt model view]<br />
<br />
'''Knowledge Prerequisite:''' C/C++, Qt, model/view<br />
<br />
'''Expected results:''' implement image editor canvas to model/view<br />
<br />
'''Difficulty:''' high<br />
<br />
'''Lead Mentor:''' Islam Wazery <wazery at ubuntu dot com><br />
<br />
'''Alternative Mentor:''' Gilles Caulier <caulier dot gilles at gmail dot com><br />
<br />
==== Project: Port Greystoration CImg interface to GMic ====<br />
'''Brief explanation:''' digiKam include [https://projects.kde.org/projects/extragear/graphics/digikam/repository/revisions/master/show/libs/3rdparty/cimg CImg library] to be able to use Greystoration algorithm which give nice fix to image based on Vortex theory, as [http://www.flickr.com/photos/digikam/8535414322/sizes/l/in/photostream/ Restoration tools]. Since CImg > 1.3.0, Greystoration algorithm have been moved in a new library named GMic with a completely different API. The goal of this project is to adapt digiKam Greystoration interface to GMic library.<br />
<br />
'''Dependencies:''' [https://projects.kde.org/projects/extragear/graphics/digikam/repository/revisions/master/show/libs/dimg/filters/greycstoration digiKam core], [https://projects.kde.org/projects/extragear/graphics/digikam/repository/revisions/master/changes/imageplugins/enhance/ Restauration and Inpaint editor tools], and [https://projects.kde.org/projects/extragear/graphics/digikam/repository/revisions/master/show/utilities/queuemanager/basetools/enhance Restauration tool from Batch Queue Manager]<br />
<br />
'''Knowledge Prerequisite:''' C/C++, math, Qt, <br />
<br />
'''Expected results:''' port image restoration algorithm from [http://cimg.sourceforge.net/ CImg] to [http://gmic.sourceforge.net/ GMic] API<br />
<br />
'''Difficulty:''' high<br />
<br />
'''Lead Mentor:''' Gilles Caulier <caulier dot gilles at gmail dot com><br />
<br />
'''Alternative Mentor:''' ???<br />
<br />
==== Project: Video Metadata Support Improvements ====<br />
'''Brief explanation:''' All recent digital-still camera devices provide video capture. digiKam must be able to manage these files as it do with images, to catalog and sort items (by date, camera name, and all record conditions). Through Exiv2 shared library improvement done at GSoC 2012, digiKam is now able to manage some video metadata from avi, divx, mkv, WebM, mp4, mov, 3gp, wmv, asf, but it lack some important video format metadata as MPEG and VOB used in video workflow. To improve video files support, video metadata management done in background need to be improved, to patch [http://www.exiv2.org Exiv2 shared library], already used by digiKam to handle metadata.<br />
<br />
'''Bugzilla entries:''' [https://bugs.kde.org/show_bug.cgi?id=164442 164442]<br />
<br />
'''Knowledge Prerequisite:''' C++, Qt, video format, metadata<br />
<br />
'''Expected results:''' Add missing video files support to Exiv2. Patch digiKam advanced search tool to handle video information.<br />
<br />
'''Difficulty:''' high<br />
<br />
'''Lead Mentor:''' Andreas Huggel <ahuggel at gmx dot net><br />
<br />
'''Alternative Mentor:''' Gilles Caulier <caulier dot gilles at gmail dot com><br />
<br />
==== Project: Exiv2 "Cloud Ready" Project ====<br />
'''Brief explanation:''' <br />
<br />
Add web protocol support to Exiv2.<br />
<br />
Exiv2 is a C++ library and a command line utility to manage image metadata. It provides fast and easy read and write access to the Exif, IPTC and XMP metadata of images in various formats. Exiv2 is available as free software and with a commercial license, and is used in many projects including DigiKam. <br />
<br />
This project extends the reach of Exiv2 from the desktop and server to both mobile and the cloud. All Exiv2 clients – including DigiKam will gain from this development.<br />
<br />
There are four subprojects:<br />
<br />
* HTTP I/O support (GSoC 2013 Student)<br />
* exiv2(.exe) to run as a service (daemon) on a web socket.<br />
* client-side use of the exiv2 service (using the web socket)<br />
* JSON support<br />
<br />
The student is welcome to contribute to any part of the project. However the HTTP I/O Support will be "owned" by the student. <br />
<br />
'''Exiv2 Project Web Site:'''<br />
http://www.exiv2.org<br />
<br />
'''Cloud Ready Specification:''' http://dev.exiv2.org/projects/exiv2/wiki/GSoC_2013_%22Cloud_Ready%22_Project_Specification<br />
<br />
'''Bugzilla entries:''' [https://bugs.kde.org/show_bug.cgi?id=224923 224923]<br />
<br />
'''Knowledge Prerequisites:'''<br />
* Essential: C++ on Linux<br />
* Desirable: Web Technologies. JavaScript, http protocol.<br />
* Desirable: WebSockets. JSON. Scripting Language (Python or Perl)<br />
<br />
'''Expected results:''' <br />
# To read and write metadata on a web URL (http/ftp/ssh)<br />
# Test the implementation using the Exiv2 WebSocket Server<br />
# An engineering assessment of providing support for other cloud services such as AWS and Dropbox.<br />
<br />
'''Difficulty:'''<br />
High<br />
<br />
'''Mentor:'''<br />
Robin Mills http://clanmills.com and http://clanmills.com/files/CV.pdf and robin@clanmills.com [[http://clanmills.com/]] [[http://clanmills.com/files/CV.pdf]] [[mailto:robin@clanmills.com]] <br />
<br />
Robin has been a volunteer with Exiv2 project for 5 years and has provided build support for several platforms, and Visual Studio (MSVC) in particular. Via the Exiv2 Forum, he has provided support for many users wishing to build and integrate Exiv2 technology into their products.<br />
<br />
Today, Robin is a freelance contractor in Silicon Valley, California and has recently worked on a mobile app which uses WebSockets. He has worked on client and server code in JavaScript and C++. Robin was a Senior Computer Scientist at Adobe for 10 years, and (among many projects) implemented reading PDF and JDF files over http (without copying the complete file).<br />
<br />
==== Project: Integrate KIPI Export Plugins directly in the GUI of KIPI host applications ====<br />
<br />
'''Brief explanation:''' It would be nice to be able to encapsulate the Export/Import KIPI plugins directly in the GUI of the host application without opening a dedicated window. For the Export Plugins the place to load the plugins will be BQM and for the Import Plugins this can be in the digiKam import tool or in the main view. For this one must factorize the export/import kipi plugin interface and to group the common calls into a virtual interface, to implement tree and list view for the plugins.<br />
<br />
'''Dependencies:''' : digiKam KIPI interface, libkipi, KIPI Plugins <br />
<br />
'''Bugzilla entries:''' [https://bugs.kde.org/show_bug.cgi?id=235572 235572], [https://bugs.kde.org/show_bug.cgi?id=221704 221704] ,[https://bugs.kde.org/show_bug.cgi?id=143978 143978]<br />
<br />
'''Knowledge Prerequisite:''' C/C++, Qt/KDE, GUI<br />
<br />
'''Expected results:''' KIPI host apps that are compatible with the project will load KIPI Plugins in the BQM, the others will load the plugins as it's done right now without breaking any compatibility.<br />
<br />
'''Difficulty:''' high<br />
<br />
'''Lead Mentor:''' Gilles Caulier <caulier dot gilles at gmail dot com><br />
<br />
'''Alternative Mentor:''' ???<br />
<br />
===Calligra Words===<br />
==== Project: Implement Change Tracking Backend====<br />
'''Brief explanation:''' Implement the change tracking backend (load,save,record, reject, accept). Implementing Ui and visualizing is _not_ part of the project. <br />
<br />
'''Expected results:''' Fully working changetracking engine as far as the ODF 1.3 standard has evolved (which by now (feb.2013) is just insert and delete characters, but it will grow in scope). We also expect that you contribute to the development of the standard with feedback and suggestions. There needs to be documentation and unit tests as well.<br />
<br />
'''Knowledge Prerequisite:''' C++, Qt, basic understanding of Operatonal Transform, basic understanding of the ODF spec, Well versed in the Calligra codebase with proven commitment<br />
<br />
'''Mentor:''' [mailto:cbo@boemann.dk Camilla Boemann] you can calso contact us on irc #calligra<br />
<br />
==== Project: Implement Change Tracking User Interface====<br />
'''Brief explanation:''' Implement the change tracking user interface (visualize changes, buttons). Implementing the backend is _not_ part of the project. A lot of the work will be to work together with the student getting the backend project<br />
<br />
'''Expected results:''' Fully working changetracking user interface built on top of the backend. It needs to be completely polished with all details taken under consideration. <br />
<br />
'''Knowledge Prerequisite:''' C++, Qt, usabillity and interaction design experience. Well versed in the Calligra codebase with proven commitment<br />
<br />
'''Mentor:''' [mailto:cbo@boemann.dk Camilla Boemann] you can calso contact us on irc #calligra<br />
<br />
=== Nepomuk ===<br />
<br />
==== Project: A "real" query parser and Query Builder Widget ====<br />
<br />
'''Brief explanation:''' Nepomuk has a [http://api.kde.org/4.x-api/kdelibs-apidocs/nepomuk-core/html/classNepomuk2_1_1Query_1_1QueryParser.html query parser] which is used to handle input from the user in such situations as the KRunner interface or the Dolphin search bar. Currently this parser is one big HACK and in dire need of reimplementation.<br />
<br />
In addition we have no dedicated widget for query input which provides good auto-completion. The idea is fancy auto-completion in the search line-edit that proposes types, properties, and other resources. It should take usage frequency of properties, types, and property values into account (when that does not mean too big a performance downer). It could even try to use some built-in thesaurus allowing to match "nfo:Audio" from "audio", "music", "song", and others.<br />
<br />
'''Expected results:''' A desktop query parser which is based on an actual grammar including support for nested terms (important when it comes to querying a graph), quotes (used to group keywords into one search term), resource URIs (it should be able to detect that a string is a resource URI and not a full text search term), namespace abbreviations ("nao:hasTag" should match exactly the one property while "hastag" can match multiple properties), as well as property and type expansion (this means that in "hastag:xyz" "hastag" should be expanded to an actual property URI.)<br />
<br />
The query parser should support the syntax supported by the current [http://api.kde.org/4.x-api/kdelibs-apidocs/nepomuk-core/html/classNepomuk2_1_1Query_1_1QueryParser.html query parser] and build upon that. One could think of extensions like mapping localized terms like "today" or "yesterday" to QDate or QDateTime values (depending on the range of the queried property), excluding unused properties altogether, supporting a deeper nesting of query terms like "author:(related:(hastag:nepomuk))", and so on.<br />
<br />
This parser should be used to implement auto-completion in a line-edit. Ideally this auto-completion would work well (only propose used properties, give preference to type, and so on) and look good (give multiple propositions in one widget, maybe with a result count). Examples include a simple expansion of "hastag:" to existing tags (sorted by use and not the complete list) or an expansion of "music" to "Query all music files" (ie. giving an explanation of query terms in the completion widget.<br />
<br />
'''Knowledge Prerequisite:''' Previous experience with a parser generator would be good but is not required. A bit of Qt experience would be nice but again, is not required.<br />
<br />
'''Mentor:''' Vishesh Handa <me@vhanda.in><br />
<br />
===KDE Telepathy===<br />
==== Project: Add ConnectionManager bindings to TpQt====<br />
<br />
'''Brief explanation:''' KDE Telepathy, the IM client, uses the backend library TelepathyQt to power everything.<br />
This library is also used by Nokia N9's, and soon Ubuntu's phones and much more.<br />
<br />
The system consists of two parts; clients which display things to the user and connection managers which do the talking to the various IM servers.<br />
<br />
We have library bindings for writing instant messaging clients in Qt, but not the backend connection manager to write protocol support in TpQt. This has been started, but a lot of work is needed to make this finished. <br />
<br />
Currently this means the only way to write a connection manager, to a new provider is to use the glib bindings, which is a lot harder for us. We want to have these bindings so we can write our own connection managers to communicate with new services, such as Steam chat.<br />
<br />
This will be a project in collaboration with the Telepathy project upstream at freedesktop.org. <br />
<br />
'''Expected results:''' At the end of the summer we should have a completely working library for writing connection managers, with full unit tests.<br />
<br />
'''Knowledge Prerequisite:''' Qt, C++ library design, unit testing, ideally usage of TelepathyQt already.<br />
<br />
'''Mentor:''' [mailto:davidedmundson@kde.org,daniele.domenichelli@gmail.com,mklapetek@kde.org,kiagiadakis.george@gmail.com KTp GSOC ML Group]<br />
<br />
==== Project: Collaborative text editor powered by Telepathy Tubes====<br />
<br />
'''Brief explanation:''' With Telepathy we can set up P2P DBus session between two contacts without the difficulty of servers and firewalls and low level TCP details. It would be great to use this to create a collaborative text editor that can be used for writing documents, or code.<br />
<br />
'''What I expect to see in your proposal:''' Knowledge of collaborative text editors, and the main difficulty analysed. I expect to see what libraries you can re-use and a detailed list of what needs to be created.<br />
<br />
'''Expected results:''' A working telepathy powered collaborative real-time text editor.<br />
<br />
'''Knowledge Prerequisite:''' Qt, C++, Dbus, Telepathy<br />
<br />
'''Mentor:''' [mailto:davidedmundson@kde.org,daniele.domenichelli@gmail.com,mklapetek@kde.org,kiagiadakis.george@gmail.com KTp GSOC ML Group]<br />
<br />
==== Project: Finish KTp-Active====<br />
<br />
'''Brief explanation:''' KTp Active is our touch screen version of KDE Telepathy primarily for Plasma Active touch devices. It was started, but needs a lot to be release-able. Please read https://projects.kde.org/projects/playground/network/telepathy/ktp-active) and (http://www.blog.mentero.net/kde/ktp-active/bringing-ktp-active-to-life/<br />
<br />
'''What I expect to see in your proposal:''' Knowledge of the current state of ktp-active, and a list of everything that doesn't work, and a plan of what needs doing<br />
<br />
'''Expected results:''' A working tablet IM client that we can release as part of Plasma Active<br />
<br />
'''Knowledge Prerequisite:''' Qt, C++, advanced QML<br />
<br />
'''Mentor:''' [mailto:davidedmundson@kde.org,daniele.domenichelli@gmail.com,mklapetek@kde.org,kiagiadakis.george@gmail.com KTp GSOC ML Group]<br />
<br />
===Marble===<br />
==== Project: Marble meets owncloud ====<br />
<br />
'''Brief explanation:''' Marble wants to be your swiss army knife for maps, owncloud brings your data under your control. Let's marry the two and bring cloud storage advantages to Marble without the usual loss of control: Enable Marble to store important data in owncloud and make it accessible (sync) to all Marble versions running on your desktop, laptop, smartphone.<br />
<br />
'''Expected results:'''<br />
* Marble: Sync bookmarks (and routing targets) with owncloud<br />
* Marble: Save routes to owncloud, load routes from owncloud<br />
* owncloud: View Marble bookmarks and routes on top of leaflet<br />
* owncloud: Manage bookmarks and routes (view as list, delete)<br />
<br />
And some possible extensions:<br />
* workout mode: save tracks from jogging and other activities to owncloud<br />
* track sharing: record your favorite bike, motorcycle, hike track along with pictures from your smartphone and share via kml and owncloud<br />
<br />
'''Knowledge Prerequisite:''' Qt, C++, Javascript<br />
<br />
'''Mentor:''' earthwings at gentoo dot org<br />
<br />
==== Project: Marble KML Map Editor ====<br />
<br />
'''Brief explanation:''' Marble can display map data from various sources and file formats. An important file format is KML: It's an open standard that has been popularized by Google Earth and internally Marble's class design is modelled after KML. <br />
Now wouldn't it be great if the user could also edit KML files using Marble? What would a swiss army knife for maps be without an editor mode? This would also provide the foundation for a future OSM editing mode: Internally all file formats (like OSM) get handled as a KML document. So the work on a KML edit mode would also automatically allow for editing OSM, GPX and Shapefile documents in a very basic way.<br />
<br />
'''Expected results:'''<br />
* Add a framework to save to different file formats<br />
* Improve Layer handling (placemark and geometry)<br />
* Improve KML support (possible example: GroundOverlays which are currently only supported partially)<br />
<br />
'''Knowledge Prerequisite:''' Qt, C++, Javascript<br />
<br />
'''Mentor:''' earthwings at gentoo dot org , rahn at kde dot org<br />
<br />
==== Project: OpenGL-Scenegraph for Marble ====<br />
<br />
'''Brief explanation:''' For awesome visual results - even on low-powered devices such as tablets and smartphones - Marble could benefit greatly from using modern OpenGL. However, spreading OpenGL code all over Marble's source code (and forcing plugin writers to switch to OpenGL) is no option for various reasons. A much smarter way is to introduce a scenegraph, where data (e.g. Marble::GeoDataLineString, Marble::BillboardGraphicsItem) that is to be visible is first added to a tree (the scene), and rendered afterwards. Since this approach decouples data and rendering, OpenGL code can be centralized in one place and e.g. plugin writers don't have to use OpenGL directly. In addition, the data inside the tree can be preprocessed and stored on the GPU, allowing for great performance improvements using modern OpenGL.<br />
<br />
The task is to create such a scenegraph. It shall allow to group related data together in order to process this data in a batch manner (e.g. rendering or adding to/from the tree). Grouping is the key to high performance. Inspiration can be taken from [http://www.openscenegraph.org/projects/osg/wiki/Support OpenSceneGraph] and Qt3D.<br />
<br />
'''Expected results:'''<br />
* Scenegraph which allows to group related data<br />
* Scenegraph that "knows" how to render Marble's primitives, such as Marble::GeoDataLineString, Marble::BillboardGraphicsItem<br />
* Some key plugins should be ported to use the scenegraph for demonstrating its feasibility.<br />
<br />
'''Knowledge Prerequisite:''' Qt, Marble::GeoPainter internals and Modern OpenGL ''when GSoC 2013 begins''<br />
<br />
'''Mentor:''' bbeschow at cs dot tu dash berlin dot de<br />
<br />
===Krita===<br />
<br />
Krita is a large and complex application. This year's project proposals are all heavy-weight and not suitable for someone who still needs to learn C++ and Qt. We also expect people to fix bugs and start working on Krita code before the summer of code starts. You need to prove that you can find your way around Krita's codebase and that you can code! Contact boud on #krita for more information. Note that these are just suggestions: your own ideas are very welcome!<br />
<br />
For Krita projects, contact: Boudewijn Rempt (boud@kde.org)<br />
<br />
==== Project: Rewrite the OpenGL canvas mode ====<br />
<br />
Currently, the OpenGL canvas uses outdated api's and doesn't work on Windows. We need a more modern approach, using the OpenGL 2ES subset to be compatilbe with mobile environments, as well as direct integration of OpenColorIO. There are a couple of issues to keep under consideration:<br />
<br />
* integration with both lcms2 and opencolorio color correction<br />
* support for monitors that do 10 bits/channel or higher<br />
* efficient updating the textures that represent the image<br />
* rotation, zoom, pan and image quality<br />
* cross-platform: must work on Windows<br />
* integration with tools that show decorations<br />
* integration with 3D models that can be loaded as painting assistants<br />
* performance: the current canvas limits the rate at which input events can be handled to the display update rate<br />
<br />
You need good knowledge of OpenGL for this project, in addition to C++, Qt and a good grounding in multi-threading.<br />
<br />
==== Project: Painting and Separation of 3D Textures====<br />
<br />
As one of it’s use cases, Krita’s vision statement includes painting textures for 3D. 3D textures are typically comprised of a number of separate black and white, RGB or RGBA images. Thus painting for textures typically requires painting on more than one single layer / channel at a time. For example painting a scratch into a metal surface may require painting black onto the bump channel, another colour on the diffuse channel, and another to the specularity channel (as well as possibly some others such as the displacement channel). All of these are affected simultaneously.<br />
<br />
Currently Krita’s painting system is only able to paint onto single layers at a time and brushes have not been designed in such a way as to allow adjusting multiple channels simultaneously as would be needed. This topic would require looking at how Krita’s current painting system could be extended to paint the necessary adjustments to the channels used in 3D rendering, show the textures created in OpenGL and then export those channels for use in 3D applications.<br />
<br />
==== Project: Animation Support====<br />
Animations are a hot topic among Krita users. There is already a start of animation support, but the author did not finish his work. Either you continue his work, or (better) start from scratch. This entails working with animators in our community to design and implement<br />
* a new file format for storing animations based on Krita's native file format<br />
* a gui for creating and manipulating animations<br />
* a system to render animation frames<br />
<br />
==== Project: 3D Material Image Maps====<br />
<br />
3D materials are made up of a bunch of images called image maps. If the user could associate layers as image maps in Krita, and paint on all of them at the same time, artists could paint whole 3D materials - something currently only available in high end 3d apps like zBrush (not even Photoshop / Corel Painter). The trick is that the position of what's painted needs to match on every map/layer, but the colours vary. For example, a scratch on a human characters skin would have a red colour map, a white (=raised) bump map, a light grey (=semi-shiny) specularity map etc, all in the exact same location on the each image map. Traditional methods of trying to create each image from scratch or by manipulating the colour map are very, very slow and painful. A simple version of this could be done as follows:<br />
<br />
* Each layer has a toggle in the layers docker called "texture map" or similar. This is turned off by default. When active, the brush paints on *all* layers that currently have "texture map" active.<br />
<br />
* When picking a colour, a dropdown lets the user pick "Default" or any active texture map layer. "Default" is just the current behaviour. If the user selects a layer in the dropdown, then the selected colour will be applied to that layer when painting on *any* layer.<br />
* In the file or layer menu is an option "Export texture maps" which saves each texture map layer as an image. The layer name and extension appended automatically to the file name. For example, on a file called character.kra, the layer titled "colour" would be saved as "character-colour.jpg" (or whatever format was selected).<br />
<br />
For step 3, a simple, one click / shortcut, method is vital, as artists often have to check their material in their 3d app every few minutes, and wading through saving 10 layers individually, each with manual file naming and confirming file format settings each time is unacceptably slow. For any artist who requires this level of control, they can use Layers menu -> "Save Layer as Image" already in krita.<br />
<br />
Allowing artists to paint a single material rather than creating multiple separate image maps by hand, would make Krita formidable for painting 3D textures, and the most advanced open source application for 3D texturing.<br />
<br />
==== Project: Matte painting====<br />
<br />
One of Krita's main use cases is as a professional tool for painting textures and mattes in digital film. Mattes are primarily made of sequences of images generated by a combination of two methods, first by animatable spline based shapes, which currently exists and is being developed in blender, and then after that, by hand painting frames for detailed areas and corrections. The trouble is that no currently maintained FOSS application currently tries to provide the ability to create hand painted mattes. This project is to extend Krita for this purpose. What's needed here is the following:<br />
* The ability for Krita to load manually selected sequences of color managed images as frames to be represented as a single layer in Krita. Optionally would be the ability to display playback at reduced resolutions to increase performance and to offset the time at which sequences were inserted.<br />
* A “Timeline” docker which would display the current frame displayed, and allow clicking and dragging to different points in time, updating the image displayed in the canvas to match. Optional would be the ability to zoom and scroll the timeline, mark modified frames on the timeline, playback the image sequence, forwards and backwards as video (most likely only in the openGL mode of Krita or with an external tool like ffplay) and display times in a range of formate EG SMTP, PAL, NTSC, Secam etc.<br />
* Updating the paint and transparency layer types, so that when Krita is using a frame sequence and one of these layer types is created, they also represent a series of frames rather than just a single image. This could possibly be a toggle switch on layers, much as visibility, alpha lock etc. are now.<br />
* The ability to save layers that are displaying frame sequences out as frame sequences also, giving them user definable names (eg where to insert the frame number, how many digits to pad).<br />
* Keyboard shortcuts to move forwards and backwards 1/10/100 frames, to jump to the start and end of the timeline and forward / backwards play if video playback is supported.<br />
<br />
==== Project: Cartoon Text Balloon System====<br />
<br />
Krita already has two text tools, but neither is suited for creating cartoon balloons. The system should allow the creation of vector-based balloons in different styles. The balloons can contain styled text. The text and balloons should be translatable and a system to select the current language should be created. It should be possible to save the balloon text to a separate file that can be used as input for translations. Finally, care must be taken to support right-left languages.<br />
<br />
=== Calligra Plugin ===<br />
<br />
Calligra is an office suite with lots of different applications with an user interface that is easy to use, highly customizable and extensible.<br />
<br />
[http://www.calligra-suite.org/] - [https://mail.kde.org/mailman/listinfo/calligra-devel Mailinglist] - IRC channel: #calligra on Freenode.<br />
<br />
==== Project: Variable thickness lines ====<br />
<br />
'''Brief explanation:''' One of the most fundamental basics of drawing is varying the width of your lines to show shape, form and perspective. Almost every line tapers at either end, and often gets thicker and thinner in different places as needed. For purely technical and histrorical reasons though, every vector program (Illustrator, Inkscape, Karbon etc) make curves all one hard width. <br />
This proposal is to create a variable width path shape / tool, much like the path tool, would allow drawing curves, but where each node could have its width set so that the line width changed smoothly from node to node. <br />
As a plugin for the Calligra suite, this would clearly benefit apps as Karbon and also Krita.<br />
<br />
'''Expected results:''' variable width path tool is able to change the width of any path node to an arbitary percentage (say 155%) of the stroke width. See http://bugsfiles.kde.org/attachment.cgi?id=56995 for mockup. The shape needs to be able to save and load in svg/odf.<br />
<br />
'''Knowledge Prerequisite:''' C++, Qt, SVG?<br />
<br />
'''Mentor:''' Thorsten Zachmann < zachmann @ kde dot org ><br />
<br />
=== Gluon ===<br />
<br />
==== Project: Make the Create > Play > Discuss workflow work====<br />
'''Brief explanation:''' Gluon is a project that aims to deliver a complete framework for creating and playing videogames. Gluon comes in mind with a predefined game-production-path that takes care of creating, distributing and playing games. This path isn't still working even if most of the tools are already there.<br />
Currently the project has: the Gluon creator which effectively takes care of creating the game from scratch. Creator has the ability to connect to an OCS server (thanks to libAttica) for publishing games online. Gluon has also an OCS server, as a result of a past GSoC project. Unfortunatly Gluon Creator and the OCS server still can't communicate. Same for the Gluon Player, the application that plays videogames, but not only. It's more of a complete interface for the remote OCS server, storing all the games, comments etc... letting the user interact with data.<br />
My idea consists mainly into 2 parts: make every piece of this puzzle work together and redesign all the Gluon Player, porting it to QML. It's very important for Gluon to have a starting point to build a community made also by players, and this can achieved only giving players and developers the right tools to use.<br />
<br />
'''Expected results:'''<br />
*A complete redesign of the Gluon Player to work on QML, assuring it will work with the official website & OCS server.<br />
*Fixes and updated to the OCS server, in order to work with Gluon Player and Gluon Creator.<br />
*Gluon Creator fixes if needed in order to make it work with the OCS server.<br />
<br />
'''Knowledge Prerequisite:''' C++, QML, php, OCS<br />
<br />
'''Mentor:''' Arjen Hiemstra<br />
<br />
=== Kexi ===<br />
<br />
==== Project: Improve stability and packaging of the MS Access driver ====<br />
'''Brief explanation:''' Current mdbtools sources included with Kexi for MS Access support are long outdated. Importing an mdb on a 64bit machine, crashes Kexi. Mdbtools sources should not be in Kexi, so that they can be updated separately. Mdbtools project is back on the run, and the user should be able to use the installed libraries. Trying to get people to move to Kexi from Access at some point, means the should be able to move their existing data/design also. This wish has been filed at https://bugs.kde.org/show_bug.cgi?id=277583.<br />
<br />
'''Expected results:'''<br />
*Use the newest mdbtools code from https://github.com/brianb/mdbtools and merge patches made by the Kexi project. <br />
*Provide the patches upstream for the mdbtools project, which would improve packaging. <br />
*Prepare Kexi buildsystem and/or code to switch to the original mdbtools package.<br />
*Update instructions for the packagers<br />
*Propose, publish early research in the student application, design and implement three or more extra features for MDB importing. Without fulfilling this requirement the task will not be considered as done.<br />
<br />
'''Knowledge Prerequisite:''' C, basic C++<br />
<br />
'''Mentor:''' Jarosław Staniek (staniek at kde.org)<br />
<br />
==== Project: Add support of Mail Merge to Calligra ====<br />
'''Brief explanation:''' ''[http://en.wikipedia.org/wiki/Mail_merge Mail merge] is a software function describing the production of multiple (and potentially large numbers of) documents from a single template form and a structured data source.'' The objective is to add support of Mail Merge feature to Calligra. At technical level, this task is closely related to both Kexi and Words.<br />
<br />
More information at http://community.kde.org/Kexi/Integration/Mail_Merge.<br />
<br />
'''Expected results:'''<br />
*The Mail Merge feature should be functional in Calligra and visible in Words application with some optional visibility in Kexi.<br />
<br />
<br />
'''Knowledge Prerequisite:''' Qt, C++ (some ODF and database knowledge will be a plus)<br />
<br />
'''Mentor:''' Jarosław Staniek (Kexi maintainer, staniek at kde.org), Camilla Boemann (Words maintainer, cbr @ boemann.dk)<br />
<br />
===KDE Workspaces ===<br />
<br />
==== Project: Port plasmoids to plasma2 ====<br />
<br />
'''Brief explanation:''' The plasma workspace is being rewritten on top of Qt5, Frameworks5 and Qml2. Some plasmoids are still in C++, some are already ported to QML1 (some to pure QML some mixed QML and C++). Some work will be needed both to port old c++ plasmoids (needing a complete rewrite) or QML1 plasmoids, that will need adaption in the parts where the plasma api changed.<br />
<br />
'''Expected results:''' Production/port of at least 3-4 plasmoids loading and all their features working on the plasma2 shell prototype.<br />
<br />
'''Knowledge Prerequisite:''' Good knowledge of QML, basic knowledge of C++ and some experience Qt programming<br />
<br />
'''Mentor:''' Marco Martin <mart@kde.org><br />
<br />
==== Project: load plasmoids in the QML lock screen====<br />
<br />
'''Brief explanation:''' Since KDE Plasma Workspaces 4.10, the old lock screen and screen saver have been migrated to a fully customizable QML implementation.<br />
It is also present an alternative lock screen that can load plasmoids. The two should be merged, having the normal QML lockscreen with the possibility to load plasmoids in it, eliminating any duplication in code and in the user interface.<br />
<br />
'''Expected results:''' a basic infrastructure capable of loading plasmoids into the lock screen<br />
<br />
'''Knowledge Prerequisite:''' Good knowledge of QML, basic knowledge of C++ and some experience Qt programming<br />
<br />
'''Mentor:''' Marco Martin or Aaron Seigo<br />
<br />
==== Project: Port kde-workspace applications away from XLib ====<br />
<br />
'''Brief explanation:''' In Qt 5 the XLib integration got dropped and (partially) replaced by XCB. The KDE workspaces have a tight integration with X11 and use many of the removed features like for example QPixmap::handle(). Most of these usages can be changed already now in the Qt 4 world which reduces the actual porting overhead. Another important area is the XEvent handling which is no longer possible. For easier porting this should be abstracted as much as possible. A summary of common problems can be found in http://community.kde.org/KWin/Qt5<br />
<br />
'''Expected results:''' Kde-workspace is free of problematic code.<br />
<br />
'''Knowledge Prerequisite:''' C++ idioms like RAII should be known. Knowledge about the X11 protocol is a clear plus<br />
<br />
'''Mentor:''' Martin Gräßlin <mgraesslin@kde.org><br />
<br />
==== Project: KWin Effect Viewer ====<br />
<br />
'''Brief explanation:''' With 4.9 KWin Effects can be written in JavaScript, but there is no convenient way to test the scripts. In this project a viewer application similar to plasmoidviewer should be developed. This could be achieved by using Xephyr and starting a dedicated KWin instance on the embedded X-Server which is just running the effect.<br />
<br />
'''Expected results:''' Effect Viewer application to test effects including simulation of all possible Windowing events<br />
<br />
'''Knowledge Prerequisite:''' C++/Qt/KDE development<br />
<br />
'''Mentor:''' Martin Gräßlin<br />
<br />
==== Project: Present Windows/Desktop Grid rewrite in QML ====<br />
<br />
'''Brief explanation:''' Present Windows and Desktop Grid are two KWin effects which could nowadays be better implemented using a QML based KWin Script. From the QML site everything is there except providing KWin's Clients as a model. Part of the project would be to write this model and some filter models to get e.g. Clients for just one desktop and the QML view to be shared between desktop grid and present windows on top of Plasma Components.<br />
<br />
'''Expected results:''' Present Windows and Desktop Grid rewritten in QML, Model for KWin Clients added<br />
<br />
'''Knowledge Prerequisite:''' QML, QAbstractItemModel and QSortFilterProxyModel<br />
<br />
'''Mentor:''' Martin Gräßlin<br />
<br />
==== Project: Improved KWin effects configuration ====<br />
'''Brief explanation:''' Provide a better user interface for managing KWin effects, so that a user can see which effects are mutual exclusive, which work together and which hardware is required for an effect. The module should be written with Qt 5's desktop components for QML. It should be possible to embedd only content to e.g. get a video preview.<br />
<br />
'''Expected results:''' A new compositing configuration module supporting use cases like "effect for minimizing" and "effect for closing window" should be implemented.<br />
<br />
'''Knowledge prerequisite:''' QML, usability experience<br />
<br />
'''Mentor:''' Martin Gräßlin<br />
<br />
==== Project: Integrate Android with the Workspace and vice versa ====<br />
'''Brief explanation:''' Provide a tight integration between the Android platform and our's by making things like Android Notifications be shown in our Workspaces.<br />
<br />
'''Expected results:''' Android platform should integrate seamlesss with KDE's using some kind of connectivity (p2p if possible and going trhough the cloud when not).<br />
<br />
'''Knowledge prerequisite:''' Java, C++/Qt<br />
<br />
'''Mentor:''' Àlex Fiestas<br />
<br />
==== Project: Integrate iOS with the Workspace====<br />
'''Brief explanation:''' Provide a tight integration between iOS platform and our's by using libimobiledevice<br />
<br />
'''Expected results:''' Producing a kio_afc, iPhone information (battery, disk usage, phone number...), backup and restore devices...<br />
<br />
'''Prerequisite:''' Owning an iOS device<br />
<br />
'''Knowledge prerequisite:''' C/C++/Qt<br />
<br />
'''Mentor:''' Àlex Fiestas<br />
<br />
==== Project: Polish KDE for netbooks ====<br />
'''Brief explanation:''' Improve netbook user experience.<br />
<br />
1. Netbooks are usually used w/o mouse, thus as many common actions as possible should be triggable via keyboard, and amount of them can be reduced. For example what is the sequence of actions for launching some application in KDE 4.10? Alt+F2 doesnt work, so user has to click on 'Search and launch', then click on search field (it is not focused by default!), then type the name of application (Gnome does this better, see kde bug 315136, and generally search bugs.kde.org for 'netbook'). <br />
<br />
2. Netbooks have slow CPUs and not so much memory. A special profile should be automatically activated for plasma-netbook: disable nepomuk, use sqlite for akonadi (+interaction with distro packagers); reduce amount of applets ran, especially python ones; activate printer support only when user explicitly asks for it.<br />
Also KDE has memory leaks which make running it for more than ~5 hours impossible. So at some point instead of hibernating it one has to really shut it down. [http://tango.program.net.ua/memory.png proof screenshot]. A good task for student is to find and eliminate the leaks.<br />
<br />
3. Polish KDE behaviour for the case of frequent suspend/resume: update clock immediately on resume, check if power source was attached/detached during sleep and so on. Any possible improvements for the case of attaching/detaching external monitor/projector (reduce amount of manual configuration actions)<br />
<br />
4. Conduct usability study: where KDE newbies expect to find configuration options for plasma-netbook appearance, and such. Suggest solution and implement it (if agreed with community)<br />
<br />
'''Expected results:''' This is a high-level overview task, a concrete list of minimum and maximum results should be prepared by the student.<br />
<br />
'''Knowledge prerequisite:''' C++/Qt, C, plasma/kdelibs, kubuntu; software integration/packaging and usability is a big plus. a student should have a powerful machine to run devtools fast enough ;)<br />
<br />
'''Mentor:''' Nick Shaforostoff (find me on a facebook or g+) or a plasma/kdelibs developer<br />
<br />
===KDE Games ===<br />
<br />
About KDE games: http://games.kde.org/<br />
<br />
==== Project: Port a KDE game to QtQuick/QML ====<br />
<br />
'''Brief explanation:''' QtQuick is the new (well not so new anymore) library for creating user interfaces very quickly with the easy-to-code Qt's declarative language QML. All of our games use the legacy C++ QGraphicsView library to paint the game frontend, aka, the canvas (except KBreakout and few others in the works). Writing UIs in QML is much easier and simpler than the QGraphicsView counterpart. This project is about porting the game canvas of any one of the existing games to QtQuick, keeping the backend code as intact as possible.<br />
<br />
'''Expected results:''' Port one game completely to QtQuick to display the game canvas using QML. Additional animations over and above that in the original game would be a plus, since QtQuick provides rich and easy-to-use animation capabilities.<br />
<br />
'''Knowledge Prerequisite:''' Good knowledge of QML, basic knowledge of C++ and some experience with Qt programming.<br />
<br />
'''Mentor:''' Viranch Mehta <viranch.mehta@gmail.com><br />
<br />
===Trojitá===<br />
<br />
[http://trojita.flaska.net/ Trojitá] is a fast IMAP e-mail client. Since late 2012, it is a part of KDE's extragear. The project focuses on delivering a usable, fast, standards-compliant, cross-platform and reliable e-mail client which can scale from cell phones to huge e-mail archives without annoying slowdowns.<br />
<br />
====Project: Add support for secure messaging to Trojitá====<br />
<br />
'''Brief explanation:''' It would be cool to have support for encrypted and signed messages, both with GnuPG and S/MIME (X.509). The [http://delta.affinix.com/qca/ QCA library] provides the required infrastructure, but this task would still require a fair bit of hacking, including working on a client-side MIME parser in Trojitá.<br />
<br />
'''Expected results:''' Add support for creating, reading and verifying the GnuPG and X.509-wrapped messages.<br />
<br />
'''Knowledge Prerequisites:''' Decent knowledge of C++ programming, familiarity with Qt, willingness to use GPG.<br />
<br />
'''Mentor:''' Jan Kundrát <jkt@flaska.net><br />
<br />
====Project: Android version of Trojitá====<br />
<br />
'''Brief explanation:''' The primary platform which sees most development and takes most attention is the regular desktop, but there is an existing port to MeeGo Harmattan with some limited functionality. This project is about porting that to Andorid and extending the functionality so that the features offered by the mobile port make it possible to effectively work with e-mail on that platform.<br />
<br />
'''Expected results:''' An Andorid version of Trojitá (with Harmattan backports, if feasible) supporting other features already found in the desktop version -- composing and sending e-mails, searching them, filtering, threading etc.<br />
<br />
'''Knowledge Prerequisities:''' Candidates shall be fluent in QML and have some Qt/C++ experience.<br />
<br />
====Project: Integrating Trojitá with KDE's Kontact====<br />
<br />
'''Brief explanation:''' Trojitá a pure Qt application with no KDE dependency. It would be great to add optional integration with the KDE's PIM tools, so that it will work as a part of the Kontact suite, be able to read the KDE's addresbook etc.<br />
<br />
'''Expected results:''' Make a variant of Trojita which will act as a drop-in replacement for KMail (at least from the user's point of view).<br />
<br />
'''Knowledge Prerequisities:''' Decent knowledge of C++ programming, familiarity with Qt, lack of alergy towards KDE's classes.<br />
<br />
=== KDENetwork ===<br />
<br />
==== Project: Improve Krfb ====<br />
<br />
'''Brief explanation:''' Krfb is the KDE VNC (desktop sharing) server application. It is part of the KDENetwork module and its codebase lives in [http://websvn.kde.org/trunk/KDE/kdenetwork/krfb/ svn].<br />
<br />
Krfb's UI consists of a systray icon and a simple dialog for inviting people to see your desktop. To invite someone, Krfb generates a random password and starts listening to a random port, then it gives this information to the user, who is responsible for sending this information to the other person.<br />
<br />
Apart from this simple invitation-password-based model, krfb also supports desktop sharing over telepathy tubes. Unfortunately, krfb itself has no UI for sharing the desktop with one of the user's contacts. To use this feature, the user needs to use the KDE Telepathy contact list.<br />
<br />
The VNC implementation behind the scenes is functional, but not perfect.<br />
<br />
The whole application could use some love in various areas. Improving the UI, for example, could be one. Telepathy contacts could be shown in krfb's main UI, for example. Another example is adding support for a non-invitation-based models. X11VNC options are a good example of what could be supported... Improving the backend, fixing bugs, etc, could be another one.<br />
<br />
'''Expected results:''' Make krfb a first-class citizen in KDE.<br />
<br />
This is just an idea and not a ready proposal. If you are interested in desktop sharing, have a look at krfb and come up with some cool ideas that could achieve this goal.<br />
<br />
'''Knowledge Prerequisite:''' Qt, experience with desktop sharing. Related knowledge (telepathy, vnc/libvncserver, Xlib) is a plus, but not required.<br />
<br />
'''Mentor:''' kiagiadakis.george@gmail.com<br />
<br />
=== Solid ===<br />
Solid is the KDE sub-community of everything related to Hardware support.<br />
<br />
[http://solid.kde.org Website] - [https://mail.kde.org/mailman/listinfo/kde-hardware-devel Mailing list] - IRC channel: #solid on Freenode.<br />
<br />
==== Project: Improve Plasma NetworkManagement's information details panel ====<br />
<br />
'''Brief explanation:''' Plasma NetworkManagement (Plasma NM for short) is the software used to manage network connections in KDE. One of its feature is a panel that shows information about one of the current activated connections, information like IPv4 address, wifi channel, card driver, etc. Panel needs improvements like:<br />
<br />
* [https://bugs.kde.org/show_bug.cgi?id=311931 Support for the new versions of ModemManager to show information for gsm/cdma connections];<br />
* [https://bugs.kde.org/show_bug.cgi?id=268022 Support for IPv6 connection details];<br />
* [https://bugs.kde.org/show_bug.cgi?id=268022 Show information for VPN connections].<br />
<br />
To manage mobile connections, such as gsm, Plasma NM uses ModemManager through dbus. Actually, Plasma NM does not talk to ModemManager directly, it uses a wrapper library (libmm-qt) to do that. The interface exposed by ModemManager has changed, then libmm-qt must be updated to reflect that and to allow Plasma NM to get the connection's details it needs to fill in the details panel for mobile connections. It will be very usefull to create unit tests for libmm-qt too.<br />
<br />
The IPv6 connection details are already in NetworkManager, we just need to update the panel to get and show them. The VPN details are more complicated to get. The student that creates a QML version of the information details panel gets a bonus :-)<br />
<br />
'''Expected results:''' libmm-qt and Plasma NM are able to talk to newer versions of ModemManager (>= 0.7), Plasma NM can show connection details for IPv6 and VPN connections.<br />
<br />
'''Knowledge Prerequisite:''' C++/Qt (specially meta objects), dbus, computer network and API development.<br />
<br />
'''Mentor:''' Lamarque V. Souza <lamarque@kde.org><br />
<br />
==== Project: Send SMS with Plasma NetworkManagement ====<br />
<br />
'''Brief explanation:''' Plasma NetworkManagement (Plasma NM for short) is the software used to manage network connections in KDE. It also manages mobile broadband connections, such as gsm/cdma. Mobile devices are also capable of sending/receiving Short Message Service (SMS) messages. Current Plasma NM does not support this feature, this idea is implementing the GUI to use [https://bugs.kde.org/show_bug.cgi?id=204727 ModemManager to send/receive SMS].<br />
<br />
The project includes updating libmm-qt to support newer ModemManager versions and its API to manage SMS messages. Current libmm-qt already supports old SMS API (ModemManager <= 0.5) but that has never been tested. Implementing unit tests for the API is also a goal here.<br />
<br />
'''Expected results:''' libmm-qt and Plasma NM are able to talk to newer versions of ModemManager (>= 0.7), Plasma NM can send/receive/show SMS messages.<br />
<br />
'''Knowledge Prerequisite:''' C++/Qt (specially meta objects), QML, dbus, computer network and API development.<br />
<br />
'''Mentor:''' Lamarque V. Souza <lamarque@kde.org><br />
<br />
=== Simon ===<br />
Simon is a speech recognition suite.<br />
<br />
[http://simon-listens.blogspot.com Blog] - [https://mail.kde.org/mailman/listinfo/kde-accessibility Mailing list] - IRC channel: #kde-accessibility on Freenode.<br />
<br />
==== Project: Streamline handling of various resources ====<br />
<br />
'''Brief explanation:''' Simon uses a multitude of different components: Scenarios, Base models, Shadow vocabulary, Language profiles, etc.<br />
<br />
While many of these components can be downloaded from within Simon, some can't and even for those that are better integrated, end-users still have to read additional documentation to know which components work together and which don't.<br />
<br />
The aim of this project is to bring the handling of these resources under a uniform and user-friendly interface.<br />
Specifically, the interface should resolve conflicts automatically and deduce an optimal default setup by itself (e.g. based on the system language and installed programs).<br />
<br />
'''Expected results:''' Much more user friendly setup.<br />
<br />
'''Knowledge Prerequisite:''' C++/Qt<br />
<br />
'''Mentor:''' Peter Grasch <me {+at+} bedahr.org><br />
<br />
=== Jovie ===<br />
<br />
==== Project: Jovie on Plasma Active====<br />
<br />
'''Brief explanation:''' Jovie is a basic wrapper around speech dispatcher for KDE, Making it usable on Plasma Active would go a long ways towards making Plasma Active more accessible.<br />
<br />
'''Expected results:''' Jovie packaged and running on Plasma Active with a touch friendly UI for customization. Possibly also a touch friendly application to allow easy invoking of speech (Touch friendly port of kmouth maybe?)<br />
<br />
'''Knowledge Prerequisite:''' C++/Qt<br />
<br />
'''Mentor:''' Jeremy Whiting <jpwhiting {+at+} kde.org><br />
<br />
<br />
=== Keyboard Layouts ===<br />
<br />
Keyboard layouts in KDE allow user to use multiple keyboard layouts and switch between them. It consists of keyboard configuration module (in System Settings), keyboard layout widget/applet, and keyboard layout daemon.<br />
<br />
==== Project: Integrating IM with keyboard layout configraiton ====<br />
<br />
'''Brief explanation:''' Input method and keyboard layout configuration are serving the same purpose - to allow users to type text in non-default language. Currently KDE has integrated system to configure keyboard layouts but IM need to be configured somewhere else. Also when IM is configured it takes over some functions of keyboard layout configuration. So it would be nice if we could have IM and keyboard layout configuration in one place.<br />
<br />
'''Expected results:''' Keyboard configuration module in System settings will include IM configuration and it will be integrated with existing keyboard layout options.<br />
<br />
'''Knowledge Prerequisite:''' C++ and Qt<br />
<br />
'''Mentor:''' Andriy Rysin <arysin@gmail.com><br />
<br />
<br />
==== Project: Provide "in-line" keyboard layout indicator ====<br />
<br />
'''Brief explanation:''' Currently when user has multiple keyboard layouts and types in some text he often must look at the tray icon to tell which layout is current. With multiple windows opened for different tasks that use different languages this may be quite a burden to what the tray for layout. Also sometimes the task bar is minimized adding more burden on the user. Often user will start typing and then realize the wrong layout is selected.<br />
It would be much nicer if text input cursor (AKA caret) would display current layout - this way when user fixes his eyes on the text field he'll be typing in he can tell right away which layout is active. This can be as simple as color or the caret or more complex, like a flag, or layout label.<br />
<br />
'''Expected results:''' New option to indicate current keyboard layout with text input cursor. Potential solutions: configuring color of the caret for each layout; allowing flag or label to appear on the caret. Note: this display should not be intrusive so it may need to be of small size, semi-transparent etc.<br />
<br />
'''Knowledge Prerequisite:''' C++ and Qt<br />
<br />
'''Mentor:''' Andriy Rysin <arysin@gmail.com><br />
<br />
<br />
==== Project: Automatic layout switching based on text input context ====<br />
<br />
'''Brief explanation:''' Currently when user switches to the input field he always have to switch keyboard layout. Remembering last layout per application window helps a bit but even the same window may have different languages to accept. It would be nice if we can use the context of the text input to try to switch layout automatically. E.g. if user enters text in the browser we could check the language of the html page and adjust the keyboard layout accordingly.<br />
Note: this might be not a short term project but we could lay out some foundation in GSOC.<br />
<br />
'''Expected results:''' There is a lot of research in this feature. We need to find out what input contexts are detectable, what information about the language we can extract, which additional options we need (e.g. automatic choice might work poorly in some environments so we might need to let user disable it for some applications/windows etc), also if automatic choice was made and user had to switch manually to correct we may try to remember that and adjust the automatic switching accordingly next time. If we can have good description of potential contexts, their language tags, and some code to detect those contexts and languages that would be a good result for this project. If we can do more that would be fantastic.<br />
<br />
'''Knowledge Prerequisite:''' C++ and Qt.<br />
<br />
'''Mentor:''' Andriy Rysin <arysin@gmail.com><br />
<br />
=== Mula ===<br />
<br />
==== Project: Desktop Frontend for Mula====<br />
<br />
'''Brief explanation:''' [https://projects.kde.org/projects/playground/edu/mula Mula] was started about two and half a years ago as a KDE project to provide multi language dictionary and translator with online, offline, pronunciation and tet-tospeech support. It is essentially a plugin based project. There are educational applications like Parley for teaching, but the primary goal would be a little bit different for this project, namely: provide a nice application as a util. The core library is plugin based, so stardict, babel, google translator and so forth backends can be added easily. There is currently only a preliminary stardict plugin along with the core interfaces. The icons for the desktop and embedded sides are already done. There are also well-defined UI mockups in the [https://projects.kde.org/projects/playground/edu/mula/repository repository] for the the translation and dictionary UIs that you can also find below in line.<br />
<br />
https://projects.kde.org/projects/playground/edu/mula/repository/revisions/master/entry/frontends/mockup/Desktop_Mockup_Translator.png<br />
<br />
https://projects.kde.org/projects/playground/edu/mula/repository/revisions/master/entry/frontends/mockup/Desktop_Mockup_Dictionary.png<br />
<br />
'''Expected results:''' A nice desktop UI impementation along with other backends (like google translator and so forth) if the time permits. The primary goal is to get the desktop UI up to an initial release that could please the end users. The proposed technology solution is Qt5, QtQuick2, and QtQuickControls (formerly known as QtDesktopComponents).<br />
<br />
'''Knowledge Prerequisite:''' C++/Qt/QML<br />
<br />
'''Mentor:''' Laszlo Papp <lpapp@kde.org>, lpapp on IRC (freenode).</div>Tgridelhttps://community.kde.org/index.php?title=Marble/Protocol&diff=25708Marble/Protocol2012-10-21T09:10:39Z<p>Tgridel: Created page with "'''Live Protocol''' from the 2nd Marble sprint in Prague. Saturday, 2012-10-20 '''Legend''' T: task I: information S: suggestion '''Outreach''' * I: __Server__ needed for..."</p>
<hr />
<div>'''Live Protocol''' from the 2nd Marble sprint in Prague. Saturday, 2012-10-20<br />
<br />
'''Legend'''<br />
T: task<br />
I: information<br />
S: suggestion<br />
<br />
'''Outreach'''<br />
* I: __Server__ needed for satellite tiles, routing data, osm vector data <br />
* I: Format/data need of osm vector data yet unknown <br />
* I: current routing data is about 30 GB, RAM > 2 GB would be ideal for conversion <br />
* I: No existing KDE server available, __funding__ needed <br />
* T: Approach KDE e.v. and ask for funding to get started <br />
* T: Ask community for funding (permanent possibility, e.g. donations via the website, optional payed (donate) versions of mobile apps) <br />
* T: Determine organizational needs of funding (own account? sub-account of KDE e.v. possible?) <br />
* I: OsGEO might be an alternative as well<br />
* PR/Marketing: How to make users and developers aware of Marble?<br />
* I: Communications with people on fairs suggests that Marble is still quite unknown<br />
* I: Articles (e.g. ct, ix), more presence on fairs would help<br />
* T: Redo the edu.kde.org/marble front page, update wikis (wikipedia openstreetmap)<br />
* I: kde-edu website is not ideal for our purpose (too much distraction in the header)<br />
* S: Place content on marble-globe.org and keep only kde edu specific parts on kde-edu.org/marble<br />
* T: Low hanging fruits: Open .kmz, .gpx<br />
* T: Different user-agent strings for mobile versions<br />
* T: Generate a list of papercuts (and fix them)<br />
<br />
'''Presentations'''<br />
* Marble + Automotive: Online at [[http://nienhueser.de/marble/prague]]<br />
* OpenGL: Current state in github opengl branch<br />
* Foursquare: Current state in sok-2012 branch, to be merged<br />
* InterGeo<br />
* Satellites Plugin<br />
<br />
'''Events / Student Programs'''<br />
* Student Programs<br />
* GCI 2012<br />
* I: Rules changed. No more money for students, task length always 2 hours<br />
* T: Move junior jobs wiki page to separate issues in projects.kde.org<br />
* T: Collect ideas as issues in projects.kde.org<br />
* Socis 2012<br />
* I: Nearly finished, great results<br />
* GSOC 2013<br />
* I: Feature Freeze (soft: 2012-10-25, hard: 2012-11-08)<br />
* T: Merge branches<br />
* Fairs/Events<br />
<br />
'''Technical'''<br />
* Use Case: Partial Map Import/Export<br />
* e.g. storing the visible region of the map shape in an odf file and opening it on a different system without Internet access<br />
* S: Possible implementation: Tile pyramid, .kml creation, merge into .kmz file. Remark: Not easy to implement<br />
* S: Possible alternative: Tile pyramid, store tiles with odf file, insert tiles into local cache on opening .odf again<br />
* Notification of all data being loaded/available<br />
* e.g. to create a snapshot, print a map<br />
* S: as a workaround (hack) one could monitor the download queue to become empty (this approach has obvious problems)<br />
* Data<br />
* GPS Data Model<br />
* T: Proper representation of tracks with timestamps, speed, accuracy in KML<br />
* T: Export of tracks to .gpx (keeping all useful information from GPS devices)<br />
* API for Vector Model<br />
* Shapefiles (shp)<br />
* Access to GeoData Model<br />
* KMZ<br />
* Importing Data<br />
* Tiles<br />
* Threaded TileLoading<br />
* Blending Extension<br />
* Embedding Tiles into Document<br />
* Layers<br />
* Interactive Layers<br />
* Layers in CreateMap Wizard<br />
* Runners<br />
* Rendering<br />
* Vector Rendering<br />
* Render on Done<br />
* OpenGL<br />
* Marble Clock (Timers!)<br />
* Android, Mobile support<br />
* Docs + Examples<br />
* Build System<br />
* Feature summary in cmake runs<br />
* Option to build examples<br />
* Coding Style<br />
* Use Cases: Travel<br />
* Search<br />
* "Around" vs. global<br />
* OverviewMap<br />
* not only planet wide but also local overview</div>Tgridelhttps://community.kde.org/index.php?title=Marble&diff=25707Marble2012-10-21T09:07:14Z<p>Tgridel: Created page with "= Marble Community = == Resources == Here are just some links for now. [http://techbase.kde.org/Projects/Marble Marble Technical pages] [[Multimedia/MarbleWeekend2012| Marb..."</p>
<hr />
<div>= Marble Community =<br />
<br />
== Resources ==<br />
Here are just some links for now.<br />
<br />
[http://techbase.kde.org/Projects/Marble Marble Technical pages]<br />
<br />
[[Multimedia/MarbleWeekend2012| Marble sprint 2012]]<br />
<br />
[[/Protocol| Minutes of Saturday]]</div>Tgridelhttps://community.kde.org/index.php?title=Multimedia/MarbleWeekend2012&diff=25321Multimedia/MarbleWeekend20122012-10-07T17:31:06Z<p>Tgridel: /* Attendees List */</p>
<hr />
<div>= 2nd Marble Developer Weekend Sprint, October 19-21 2012 =<br />
<br />
We'd like to invite all people who are interested in Marble Development: may <br />
it be through coding, graphics design, promotion, packaging, documentation, <br />
website or other areas.<br />
<br />
The Marble Developer Weekend Sprint will be held at the [http://conference.opensuse.org OpenSUSE Conference 2012] in Prague.<br />
<br />
You have an interesting story to tell about Marble? You'd like to make Marble <br />
a great educational tool? You've built some software based on Marble? You're a <br />
Marble newbie and you'd like to get involved with KDE-EDU or Marble <br />
development? You dream of Navigation and Routing with Marble? -- We'd like to <br />
see you at the sprint!<br />
<br />
The Marble Weekend Sprint is sponsored by the <b>[http://ev.kde.org KDE e.V.]</b>. Thanks a lot for supporting Marble!<br />
<br />
== Dates ==<br />
<br />
The Marble Sprint will be held from October 19-21, with the following basic schedule: <br />
<br />
*19.10. <i>arrival</i>, starting from 16:00 local time (Friday). We will probably do some quick sight seeing tour in the evening and have dinner together. <br />
*20.10. sprint (Saturday), Lightning talks after noon.<br />
*21.10. sprint (Sunday) and <i>departure</i> starting from 18:00 local time.<br />
*22.10.-23.10. Marble Hacking Marathon<br />
<br />
== Location & Accomodation ==<br />
<br />
The 2nd Marble Developer Weekend will be held at the <b>[http://conference.opensuse.org OpenSUSE Conference 2012] in Prague</b>. We will get a special dedicated room for our Marble sprint.<br />
<br />
<br />
<br />
For Accomodation the same suggestions apply as for the OpenSUSE conference: See the webpage [http://conference.opensuse.org/Accomodation Accomodation] on the openSuSE Conference website for more details.<br />
<br />
[http://www.prague-hotel-krystal.cz/ Hotel Krystal] is one of the primary addresses there and costs about 40 EUR for two persons per night. <br />
<br />
=== How to get there ===<br />
<br />
== Attendees List ==<br />
<br />
The column "Sponsoring needed?" is to know if you need sponsoring from the KDE e.V. or if you pay the travel/stay by yourself. <br />
<br />
<br> <br />
<br />
{| cellspacing="0" cellpadding="5" border="1" class="wikitable"<br />
|- style="color: blue;"<br />
| Name <br />
| email <br />
| Arrival <br />
| Departure <br />
| Airport <br />
| Flight <br />
| Train <br />
| Food preferences <br />
| Estimated travel costs <br />
| Sponsoring needed? <br />
| Work <br />
| Special<br />
|-<br />
| Torsten Rahn <br />
| rahn AT kde DOT org <br />
| 19.10. <br />
| 21.10. <br />
| none <br />
| none <br />
| ?<br />
| No apples ;-)<br />
| 90 € + accomodation <br />
| yes<br />
| Marble Core Developer <br />
| Event organization<br />
|-<br />
| Dennis Nienhüser<br />
| earthwings at gentoo dot org<br />
| 19.10. 16:30<br />
| 21.10. 15:30<br />
| none <br />
| none <br />
| yes<br />
| none<br />
| 120 € + accomodation <br />
| yes <br />
| Marble Core Developer <br />
| yes<br />
|-<br />
| Friedrich W. H. Kossebau<br />
| kossebau at kde dot org<br />
| 19.10. 13:26<br />
| 21.10. 16:29<br />
| none<br />
| none<br />
| yes<br />
| none<br />
| 90 € + accomodation<br />
| yes<br />
| Calligra map shape<br />
| no<br />
|-<br />
| Utku Aydın<br />
| utkuaydin34 (at) gmail (dot) com<br />
| 19.10 20:15<br />
| 21.10 19:05<br />
| PRG <br />
| yes <br />
| none<br />
| veg. & no alcohol<br />
| 295 € + accomodation <br />
| yes <br />
| Contributor <br />
| no<br />
|-<br />
| Bernhard Beschow<br />
| bbeschow at cs dot tu dash berlin dot de<br />
| 19.10.<br />
| 21.10.<br />
| none <br />
| none <br />
| yes<br />
| none<br />
| € 66,50 ... € 100 + accomodation <br />
| yes <br />
| Marble Core Developer <br />
| no<br />
|-<br />
|}<br />
<br />
= Program =<br />
<br />
<br />
<b>Friday: 05.11.2012</b><br />
<br />
15:00-18:00 Arrival at the hotel<br />
<br />
<b>Saturday: 20.10.2012</b><br />
<br />
Starting at 9:00 We'll have a set of short presentations:<br />
<br />
- "Let's get the Marble rolling ...", Torsten Rahn<br />
- "Research Projects using Marble (you probably didn't expect)", Dennis Nienhüser<br />
<br />
13:00 Lunch <br />
<br />
- Workshops, coding and discussions<br />
<br />
In the evening: Dinner<br />
<br />
<br />
<b>Sunday: 21.10.2012</b><br />
<br />
- Coding and discussions<br />
<br />
13:00 Lunch<br />
<br />
- Summary, press release preparation<br />
<br />
In the evening: Departure<br />
<br />
= Topics =<br />
<br />
To be discussed:<br />
Since we will only have little time available for presentations and workshops we thought about having some short <b>lightning talks</b> on saturday or sunday.<br />
<br />
Feel free to make suggestions.<br />
State of :<br />
- Android / Plasma Active port (Marble Touch).<br />
- UI (desktop/small devices)<br />
- Routing<br />
- OpenGL<br />
- ESA SoCiS<br />
<br />
- Tiles<br />
- GeoPainter / drawing<br />
- GeoData / ModelView<br />
- Plugin APIs<br />
- Architecture/Design/APIs<br />
- Coding Style<br />
- Maps: Natural Earth</div>Tgridelhttps://community.kde.org/index.php?title=Multimedia/MarbleWeekend2012&diff=24585Multimedia/MarbleWeekend20122012-09-24T20:07:35Z<p>Tgridel: </p>
<hr />
<div>= 2nd Marble Developer Weekend Sprint, October 19-21 2012 =<br />
<br />
We'd like to invite all people who are interested in Marble Development: may <br />
it be through coding, graphics design, promotion, packaging, documentation, <br />
website or other areas.<br />
<br />
The Marble Developer Weekend Sprint will be held at the [http://conference.opensuse.org OpenSUSE Conference 2012] in Prague.<br />
<br />
You have an interesting story to tell about Marble? You'd like to make Marble <br />
a great educational tool? You've built some software based on Marble? You're a <br />
Marble newbie and you'd like to get involved with KDE-EDU or Marble <br />
development? You dream of Navigation and Routing with Marble? -- We'd like to <br />
see you at the sprint!<br />
<br />
The Marble Weekend Sprint is sponsored by the <b>[http://ev.kde.org KDE e.V.]</b>. Thanks a lot for supporting Marble!<br />
<br />
== Dates ==<br />
<br />
The Marble Sprint will be held from October 19-21, with the following basic schedule: <br />
<br />
*19.10. <i>arrival</i>, starting from 16:00 local time (Friday). We will probably do some quick sight seeing tour in the evening and have dinner together. <br />
*20.10. sprint (Saturday), Lightning talks after noon.<br />
*21.10. sprint (Sunday) and <i>departure</i> starting from 18:00 local time.<br />
*22.10.-23.10. Marble Hacking Marathon<br />
<br />
== Location & Accomodation ==<br />
<br />
The 2nd Marble Developer Weekend will be held at the <b>[http://conference.opensuse.org OpenSUSE Conference 2012] in Prague</b>. We will get a special dedicated room for our Marble sprint.<br />
<br />
<br />
<br />
For Accomodation the same suggestions apply as for the OpenSUSE conference: See the webpage [http://conference.opensuse.org/Accomodation Accomodation] on the openSuSE Conference website for more details.<br />
<br />
[http://www.prague-hotel-krystal.cz/ Hotel Krystal] is one of the primary addresses there and costs about 40 EUR for two persons per night. <br />
<br />
=== How to get there ===<br />
<br />
== Attendees List ==<br />
<br />
The column "Sponsoring needed?" is to know if you need sponsoring from the KDE e.V. or if you pay the travel/stay by yourself. <br />
<br />
<br> <br />
<br />
{| cellspacing="0" cellpadding="5" border="1" class="wikitable"<br />
|- style="color: blue;"<br />
| Name <br />
| email <br />
| Arrival <br />
| Departure <br />
| Airport <br />
| Flight <br />
| Train <br />
| Food preferences <br />
| Estimated travel costs <br />
| Sponsoring needed? <br />
| Work <br />
| Special<br />
|-<br />
| Torsten Rahn <br />
| rahn AT kde DOT org <br />
| 19.10. <br />
| 21.10. <br />
| none <br />
| none <br />
| ?<br />
| No apples ;-)<br />
| 90 € + accomodation <br />
| yes<br />
| Marble Core Developer <br />
| Event organization<br />
|-<br />
| Dennis Nienhüser<br />
| earthwings at gentoo dot org<br />
| 19.10. 16:30<br />
| 21.10. 15:30<br />
| none <br />
| none <br />
| yes<br />
| none<br />
| 120 € + accomodation <br />
| yes <br />
| Marble Core Developer <br />
| yes<br />
|-<br />
| Friedrich W. H. Kossebau<br />
| kossebau at kde dot org<br />
| 19.10. <br />
| 21.10. <br />
| none<br />
| none<br />
| ?<br />
| none<br />
| 90 €<br />
| ? <br />
| Calligra map shape<br />
| no<br />
|-<br />
| Utku Aydın<br />
| utkuaydin34 (at) gmail (dot) com<br />
| 19.10 20:15<br />
| 21.10 19:05<br />
| PRG <br />
| yes <br />
| none<br />
| veg. & no alcohol<br />
| 295 € + accomodation <br />
| yes <br />
| Contributor <br />
| no<br />
|-<br />
| Thibaut Gridel <br />
| tgridel at free dot org<br />
| 19/10<br />
| 21/10<br />
| PRG<br />
| yes<br />
| hopefully not<br />
| any<br />
| € 250 + accom<br />
| yes<br />
| vector stuff<br />
| possibly coming<br />
|-<br />
}<br />
<br />
= Program =<br />
<br />
<br />
<b>Friday: 05.11.2012</b><br />
<br />
15:00-18:00 Arrival at the hotel<br />
<br />
<b>Saturday: 20.10.2012</b><br />
<br />
Starting at 9:00 We'll have a set of short presentations:<br />
<br />
- "Let's get the Marble rolling ...", Torsten Rahn<br />
- "Research Projects using Marble (you probably didn't expect)", Dennis Nienhüser<br />
<br />
13:00 Lunch <br />
<br />
- Workshops, coding and discussions<br />
<br />
In the evening: Dinner<br />
<br />
<br />
<b>Sunday: 21.10.2012</b><br />
<br />
- Coding and discussions<br />
<br />
13:00 Lunch<br />
<br />
- Summary, press release preparation<br />
<br />
In the evening: Departure<br />
<br />
= Topics =<br />
<br />
To be discussed:<br />
Since we will only have little time available for presentations and workshops we thought about having some short <b>lightning talks</b> on saturday or sunday.<br />
<br />
Feel free to make suggestions.<br />
State of :<br />
- Android / Plasma Active port (Marble Touch).<br />
- UI (desktop/small devices)<br />
- Routing<br />
- OpenGL<br />
- ESA SoCiS<br />
<br />
- Tiles<br />
- GeoPainter / drawing<br />
- GeoData / ModelView<br />
- Plugin APIs<br />
- Architecture/Design/APIs<br />
- Coding Style<br />
- Maps: Natural Earth</div>Tgridelhttps://community.kde.org/index.php?title=Multimedia/MarbleWeekend2012&diff=24583Multimedia/MarbleWeekend20122012-09-24T20:03:23Z<p>Tgridel: </p>
<hr />
<div>= 2nd Marble Developer Weekend Sprint, October 19-21 2012 =<br />
<br />
We'd like to invite all people who are interested in Marble Development: may <br />
it be through coding, graphics design, promotion, packaging, documentation, <br />
website or other areas.<br />
<br />
The Marble Developer Weekend Sprint will be held at the [http://conference.opensuse.org OpenSUSE Conference 2012] in Prague.<br />
<br />
You have an interesting story to tell about Marble? You'd like to make Marble <br />
a great educational tool? You've built some software based on Marble? You're a <br />
Marble newbie and you'd like to get involved with KDE-EDU or Marble <br />
development? You dream of Navigation and Routing with Marble? -- We'd like to <br />
see you at the sprint!<br />
<br />
The Marble Weekend Sprint is sponsored by the <b>[http://ev.kde.org KDE e.V.]</b>. Thanks a lot for supporting Marble!<br />
<br />
== Dates ==<br />
<br />
The Marble Sprint will be held from October 19-21, with the following basic schedule: <br />
<br />
*19.10. <i>arrival</i>, starting from 16:00 local time (Friday). We will probably do some quick sight seeing tour in the evening and have dinner together. <br />
*20.10. sprint (Saturday), Lightning talks after noon.<br />
*21.10. sprint (Sunday) and <i>departure</i> starting from 18:00 local time.<br />
*22.10.-23.10. Marble Hacking Marathon<br />
<br />
== Location & Accomodation ==<br />
<br />
The 2nd Marble Developer Weekend will be held at the <b>[http://conference.opensuse.org OpenSUSE Conference 2012] in Prague</b>. We will get a special dedicated room for our Marble sprint.<br />
<br />
<br />
<br />
For Accomodation the same suggestions apply as for the OpenSUSE conference: See the webpage [http://conference.opensuse.org/Accomodation Accomodation] on the openSuSE Conference website for more details.<br />
<br />
[http://www.prague-hotel-krystal.cz/ Hotel Krystal] is one of the primary addresses there and costs about 40 EUR for two persons per night. <br />
<br />
=== How to get there ===<br />
<br />
== Attendees List ==<br />
<br />
The column "Sponsoring needed?" is to know if you need sponsoring from the KDE e.V. or if you pay the travel/stay by yourself. <br />
<br />
<br> <br />
<br />
{| cellspacing="0" cellpadding="5" border="1" class="wikitable"<br />
|- style="color: blue;"<br />
| Name <br />
| email <br />
| Arrival <br />
| Departure <br />
| Airport <br />
| Flight <br />
| Train <br />
| Food preferences <br />
| Estimated travel costs <br />
| Sponsoring needed? <br />
| Work <br />
| Special<br />
|-<br />
| Torsten Rahn <br />
| rahn AT kde DOT org <br />
| 19.10. <br />
| 21.10. <br />
| none <br />
| none <br />
| ?<br />
| No apples ;-)<br />
| 90 € + accomodation <br />
| yes<br />
| Marble Core Developer <br />
| Event organization<br />
|-<br />
| Dennis Nienhüser<br />
| earthwings at gentoo dot org<br />
| 19.10. 16:30<br />
| 21.10. 15:30<br />
| none <br />
| none <br />
| yes<br />
| none<br />
| 120 € + accomodation <br />
| yes <br />
| Marble Core Developer <br />
| yes<br />
|-<br />
| Friedrich W. H. Kossebau<br />
| kossebau at kde dot org<br />
| 19.10. <br />
| 21.10. <br />
| none<br />
| none<br />
| ?<br />
| none<br />
| 90 €<br />
| ? <br />
| Calligra map shape<br />
| no<br />
|-<br />
| Utku Aydın<br />
| utkuaydin34 (at) gmail (dot) com<br />
| 19.10 20:15<br />
| 21.10 19:05<br />
| PRG <br />
| yes <br />
| none<br />
| veg. & no alcohol<br />
| 295 € + accomodation <br />
| yes <br />
| Contributor <br />
| no<br />
|-<br />
| Thibaut Gridel <br />
| tgridel at free dot org<br />
| 19/10<br />
| 21/10<br />
| PRG<br />
| yes<br />
| hopefully not<br />
| any<br />
| € 250 + accom<br />
| yes<br />
| vector stuff<br />
| possibly<br />
|-<br />
}<br />
<br />
= Program =<br />
<br />
<br />
<b>Friday: 05.11.2012</b><br />
<br />
15:00-18:00 Arrival at the hotel<br />
<br />
<b>Saturday: 20.10.2012</b><br />
<br />
Starting at 9:00 We'll have a set of short presentations:<br />
<br />
- "Let's get the Marble rolling ...", Torsten Rahn<br />
- "Research Projects using Marble (you probably didn't expect)", Dennis Nienhüser<br />
<br />
13:00 Lunch <br />
<br />
- Workshops, coding and discussions<br />
<br />
In the evening: Dinner<br />
<br />
<br />
<b>Sunday: 21.10.2012</b><br />
<br />
- Coding and discussions<br />
<br />
13:00 Lunch<br />
<br />
- Summary, press release preparation<br />
<br />
In the evening: Departure<br />
<br />
= Topics =<br />
<br />
To be discussed:<br />
Since we will only have little time available for presentations and workshops we thought about having some short <b>lightning talks</b> on saturday or sunday.<br />
<br />
Feel free to make suggestions.<br />
State of :<br />
- Android / Plasma Active port (Marble Touch).<br />
- UI (desktop/small devices)<br />
- Routing<br />
- OpenGL<br />
- ESA SoCiS<br />
<br />
- Tiles<br />
- GeoPainter / drawing<br />
- GeoData / ModelView<br />
- Plugin APIs<br />
- Architecture/Design/APIs<br />
- Coding Style<br />
- Maps: Natural Earth</div>Tgridelhttps://community.kde.org/index.php?title=Marble/GeoPainter&diff=74427Marble/GeoPainter2012-03-01T21:56:09Z<p>Tgridel: Created page with "= Notes about GeoPainter = == Concepts == Horizon is a spherical projection concept to decide if a point is on the viewer's side or the other. It is NOT dependent on viewpor..."</p>
<hr />
<div>= Notes about GeoPainter =<br />
<br />
== Concepts ==<br />
Horizon is a spherical projection concept to decide if a point is on the viewer's side or the other.<br />
It is NOT dependent on viewport visibility<br />
<br />
Dateline is a repeatX issue, so that a line crossing the dateline does not lead to a tear the whole map wide<br />
<br />
Pole is an issue for projections which cannot draw it as a point (or even not at all)<br />
<br />
Projection Drawing depends on tessellation<br />
Tessellation is a geodetic issue, determining how to connect points. Options:<br />
NoTessellation: straight screen coordinates lines between projected points<br />
Tessellate: great circle line between projected points<br />
needs horizon and dateline check<br />
FollowLatitude: special case when latitude is same, walk on the latitude circle<br />
<br />
do we need rhumb line (line of constant compass course)??<br />
<br />
Need to keep in mind that tessellating must keep polygons that still allow fill.<br />
<br />
== Current code ==<br />
- systematically looks for poles and datelines, splitting the polyline into ones which don't cross idl or pole<br />
<br />
- looking for datelines is a recursive calculus to identify latitude at which the idl is crossed<br />
<br />
- iterates all points, determines<br />
- if horizon is crossed<br />
- if and which tessellation is needed<br />
- adds points to one QVector<QPointF><br />
<br />
== Complications ==<br />
- looking for dateline is not necessary for Spherical, very hard for NoTessellation (screen vs Geo space)<br />
<br />
- because of repeatX we calculate all possible points depending on viewport radius, then let painter frame down to visible viewport</div>Tgridelhttps://community.kde.org/index.php?title=Schedules/KDE4/4.9_Feature_Plan&diff=51396Schedules/KDE4/4.9 Feature Plan2012-02-16T21:13:59Z<p>Tgridel: /* kdeedu */</p>
<hr />
<div>This is a list of planned features for the SC 4.9 release. <br />
<br />
See also: <br />
<br />
*[[Schedules/KDE4/4.9 Release Schedule]] <br />
*[[Schedules/KDE4/4.9 Release Goals]] <br />
*[[Schedules/KDE4/4.8 Feature Plan]] (previous major release)<br />
<br />
<br> Legend: <br />
<br />
*todo =&gt; not started yet <br />
*in-progress =&gt; started, but not completed yet <br />
*done =&gt; completed<br />
<br />
__TOC__ <br />
<br />
<br><br />
<br />
= kdelibs =<br />
= kde-runtime =<br />
= kde-workspace =<br />
= kde-baseapps =<br />
= kdeedu =<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="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;"<br />
<br />
! Status <br />
! Project <br />
! Description <br />
! Contact <br />
<br />
{{FeatureDone|Marble|Runner Manager blocking API|tgridel@freedorfr|Thibaut Gridel}}<br />
{{FeatureDone|Marble|Visible Bookmarks on the map|tgridel@freedorfr|Thibaut Gridel}}<br />
{{FeatureDone|Marble|Flicker Free Placemarks|tgridel@freedorfr|Thibaut Gridel}}<br />
{{FeatureDone|Marble|Shapefile file Parsing|tgridel@freedorfr|Thibaut Gridel}}<br />
{{FeatureInProgress|Marble|Worldwide hillshading|earthwings@gentoo.org|Dennis Nienhüser}}<br />
{{FeatureTodo|Marble|Extended library API (no MarbleWidget dependency for tasks like parsing, routing)|earthwings@gentoo.org|Dennis Nienhüser}}<br />
{{FeatureTodo|Marble|Marble Touch on Plasma Active|earthwings@gentoo.org|Dennis Nienhüser}}<br />
{{FeatureTodo|Marble|Marble Touch on Android|earthwings@gentoo.org|Dennis Nienhüser}}<br />
{{FeatureTodo|Marble|Support for loading geolocated photos (e.g. in a Gallery activity in Marble Touch)|earthwings@gentoo.org|Dennis Nienhüser}}<br />
{{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}}<br />
<br />
|}<br />
<br><br />
<br />
= kdegames=<br />
= kdegraphics=<br />
= kdemultimedia =<br />
= kdenetwork=<br />
= kdepim =<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="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;"<br />
<br />
! Status <br />
! Project <br />
! Description <br />
! Contact <br />
<br />
{{FeatureDone|KAlarm|Option to execute pre-alarm actions before deferred alarms|djarvie@kde.org|David Jarvie}}<br />
<br />
|}<br />
<br><br />
<br />
= kdeplasma-addons =<br />
= kdesdk =<br />
<br />
{| cellspa/cing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="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;"<br />
! Status <br />
! Project <br />
! Description <br />
! Contact <br />
{{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}}<br />
{{FeatureTodo|Okteta|Add global toggle option for the offset display, hex or decimal|kossebau@kde.org|Friedrich W. H. Kossebau}} <br />
{{FeatureTodo|Okteta|Add Kate-like combined dialogs to query for actions on files|kossebau@kde.org|Friedrich W. H. Kossebau}}<br />
{{FeatureTodo|Okteta|add Kate-like search tool|kossebau@kde.org|Friedrich W. H. Kossebau}}<br />
{{FeatureTodo|Okteta|Add Okular like embedded notifications|kossebau@kde.org|Friedrich W. H. Kossebau}}<br />
{{FeatureTodo|Okteta|add support for import by drop, both url and data|kossebau@kde.org|Friedrich W. H. Kossebau}}<br />
{{FeatureTodo|Okteta|add support for memory mapping of files and 64-bit addressing|kossebau@kde.org|Friedrich W. H. Kossebau}}<br />
{{FeatureTodo|Okteta|add support for jobs like io, printing, string search or filter|kossebau@kde.org|Friedrich W. H. Kossebau}}<br />
{{FeatureTodo|Okteta|Add view profiles, incl. editor/manager|kossebau@kde.org|Friedrich W. H. Kossebau}}<br />
{{FeatureTodo|Okteta|copy again puts also a value or char variant of the data to clipboard|kossebau@kde.org|Friedrich W. H. Kossebau}}<br />
{{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}}<br />
{{FeatureTodo|Okteta|Make all user interaction in the KastenCore managers plugin-based|kossebau@kde.org|Friedrich W. H. Kossebau}}<br />
{{FeatureTodo|Okteta|Merge row and column widgets into one|kossebau@kde.org|Friedrich W. H. Kossebau}}<br />
{{FeatureTodo|Okteta|Store bookmarks|kossebau@kde.org|Friedrich W. H. Kossebau}}<br />
{{FeatureTodo|Okteta|Store bookmarks and other view settings for next load|kossebau@kde.org|Friedrich W. H. Kossebau}}<br />
{{FeatureTodo|Okteta|Add custom datatypes to structures tool|alex.richardson@gmx.de|Alex Richardson}}<br />
|}<br />
<br />
<br><br />
<br />
= kdeutils=</div>Tgridelhttps://community.kde.org/index.php?title=Schedules/KDE4/4.9_Feature_Plan&diff=51395Schedules/KDE4/4.9 Feature Plan2012-01-25T18:33:12Z<p>Tgridel: /* kdeedu */</p>
<hr />
<div>This is a list of planned features for the SC 4.9 release. <br />
<br />
See also: <br />
<br />
*[[Schedules/KDE4/4.9 Release Schedule]] <br />
*[[Schedules/KDE4/4.9 Release Goals]] <br />
*[[Schedules/KDE4/4.8 Feature Plan]] (previous major release)<br />
<br />
<br> Legend: <br />
<br />
*todo =&gt; not started yet <br />
*in-progress =&gt; started, but not completed yet <br />
*done =&gt; completed<br />
<br />
__TOC__ <br />
<br />
<br><br />
<br />
= kdelibs =<br />
= kde-runtime =<br />
= kde-workspace =<br />
= kde-baseapps =<br />
= kdeedu =<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="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;"<br />
<br />
! Status <br />
! Project <br />
! Description <br />
! Contact <br />
<br />
{{FeatureDone|Marble|Runner Manager blocking API|tgridel@freedorfr|Thibaut Gridel}}<br />
{{FeatureDone|Marble|Visible Bookmarks on the map|tgridel@freedorfr|Thibaut Gridel}}<br />
{{FeatureDone|Marble|Flicker Free Placemarks|tgridel@freedorfr|Thibaut Gridel}}<br />
{{FeatureInProgress|Marble|Worldwide hillshading|earthwings@gentoo.org|Dennis Nienhüser}}<br />
{{FeatureInProgress|Marble|Shapefile file Parsing|tgridel@freedorfr|Thibaut Gridel}}<br />
{{FeatureTodo|Marble|Extended library API (no MarbleWidget dependency for tasks like parsing, routing)|earthwings@gentoo.org|Dennis Nienhüser}}<br />
{{FeatureTodo|Marble|Marble Touch on Plasma Active|earthwings@gentoo.org|Dennis Nienhüser}}<br />
{{FeatureTodo|Marble|Marble Touch on Android|earthwings@gentoo.org|Dennis Nienhüser}}<br />
{{FeatureTodo|Marble|Support for loading geolocated photos (e.g. in a Gallery activity in Marble Touch)|earthwings@gentoo.org|Dennis Nienhüser}}<br />
{{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}}<br />
<br />
|}<br />
<br><br />
<br />
= kdegames=<br />
= kdegraphics=<br />
= kdemultimedia =<br />
= kdenetwork=<br />
= kdepim =<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="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;"<br />
<br />
! Status <br />
! Project <br />
! Description <br />
! Contact <br />
<br />
{{FeatureDone|KAlarm|Option to execute pre-alarm actions before deferred alarms|djarvie@kde.org|David Jarvie}}<br />
<br />
|}<br />
<br><br />
<br />
= kdeplasma-addons =<br />
= kdesdk =<br />
<br />
{| cellspa/cing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="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;"<br />
! Status <br />
! Project <br />
! Description <br />
! Contact <br />
{{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}}<br />
{{FeatureTodo|Okteta|Add global toggle option for the offset display, hex or decimal|kossebau@kde.org|Friedrich W. H. Kossebau}} <br />
{{FeatureTodo|Okteta|Add Kate-like combined dialogs to query for actions on files|kossebau@kde.org|Friedrich W. H. Kossebau}}<br />
{{FeatureTodo|Okteta|add Kate-like search tool|kossebau@kde.org|Friedrich W. H. Kossebau}}<br />
{{FeatureTodo|Okteta|Add Okular like embedded notifications|kossebau@kde.org|Friedrich W. H. Kossebau}}<br />
{{FeatureTodo|Okteta|add support for import by drop, both url and data|kossebau@kde.org|Friedrich W. H. Kossebau}}<br />
{{FeatureTodo|Okteta|add support for memory mapping of files and 64-bit addressing|kossebau@kde.org|Friedrich W. H. Kossebau}}<br />
{{FeatureTodo|Okteta|add support for jobs like io, printing, string search or filter|kossebau@kde.org|Friedrich W. H. Kossebau}}<br />
{{FeatureTodo|Okteta|Add view profiles, incl. editor/manager|kossebau@kde.org|Friedrich W. H. Kossebau}}<br />
{{FeatureTodo|Okteta|copy again puts also a value or char variant of the data to clipboard|kossebau@kde.org|Friedrich W. H. Kossebau}}<br />
{{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}}<br />
{{FeatureTodo|Okteta|Make all user interaction in the KastenCore managers plugin-based|kossebau@kde.org|Friedrich W. H. Kossebau}}<br />
{{FeatureTodo|Okteta|Merge row and column widgets into one|kossebau@kde.org|Friedrich W. H. Kossebau}}<br />
{{FeatureTodo|Okteta|Store bookmarks|kossebau@kde.org|Friedrich W. H. Kossebau}}<br />
{{FeatureTodo|Okteta|Store bookmarks and other view settings for next load|kossebau@kde.org|Friedrich W. H. Kossebau}}<br />
{{FeatureTodo|Okteta|Add custom datatypes to structures tool|alex.richardson@gmx.de|Alex Richardson}}<br />
|}<br />
<br />
<br><br />
<br />
= kdeutils=</div>Tgridelhttps://community.kde.org/index.php?title=Schedules/KDE4/4.8_Feature_Plan&diff=51366Schedules/KDE4/4.8 Feature Plan2012-01-03T22:27:07Z<p>Tgridel: /* kdeedu */</p>
<hr />
<div>This is a list of planned features for the SC 4.8 release. <br />
<br />
See also: <br />
<br />
*[[Schedules/KDE4/4.8 Release Schedule]] <br />
*[[Schedules/KDE4/4.8 Release Goals]] <br />
*[[Schedules/KDE4/4.7 Feature Plan]] (previous major release)<br />
<br />
<br> Legend: <br />
<br />
*todo =&gt; not started yet <br />
*in-progress =&gt; started, but not completed yet <br />
*done =&gt; completed<br />
<br />
__TOC__ <br />
<br />
<br><br />
<br />
= kdelibs =<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="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;"<br />
<br />
! Status <br />
! Project <br />
! Description <br />
! Contact <br />
<br />
{{FeatureDone|Kate Part|Line modification system|dhaumann@kde.org|Dominik Haumann}}<br />
{{FeatureDone|Kate Part|Modeline Editor|dhaumann@kde.org|Dominik Haumann}}<br />
{{FeatureDone|Kate Part|Reliable code folding|adrian.lungu89@gmail.com|Adrian Lungu}}<br />
{{FeatureDone|Kate Part|Improved vi input mode|svatoslav1@gmail.com|Svyatoslav Kuzmich}}<br />
{{FeatureInProgress|KIO|PreviewJob supports URLs|sebas@kde.org|Sebastian Kügler}}<br />
{{FeatureInProgress|kdeui|KSecretsService API addition|kde@rusu.info|Valentin Rusu}}<br />
{{FeatureInProgress|kdeui/util|Connect KWallet class to KSecretsService client API|kde@rusu.info|Valentin Rusu}}<br />
{{FeatureInProgress|kcookiejar|New domain specific cookie policy based on patch provided in bug#54300|adawit@kde.org|Dawit A.}} <br />
|}<br />
<br><br />
<br />
= kde-runtime =<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="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;"<br />
<br />
! Status <br />
! Project <br />
! Description <br />
! Contact <br />
<br />
{{FeatureInProgress|ksecretsserviced|KSecretsService daemon implementing the freedesktop.org secrets API. KDE applications will want to use the related kdelibs API (see below)|kde@rusu.info|Valentin Rusu}}<br />
<br />
{{FeatureInProgress|DrKonqi|Better duplicate detection|mat69@gmx.net|Matthias Fuchs}}<br />
{{FeatureInProgress|KIO Thumbnails|webthumbnails plugin|sebas@kde.org|Sebastian Kügler}}<br />
{{FeatureInProgress|DrKonqi|Scripting support|mat69@gmx.net|Matthias Fuchs}}<br />
{{FeatureInProgress|Plasma|Plasma QML QtComponents|mart@kde.org|Marco Martin}}<br />
|}<br />
<br><br />
<br />
= kde-workspace =<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="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;"<br />
<br />
! Status <br />
! Project <br />
! Description <br />
! Contact <br />
{{FeatureTodo|KWin|Activity switcher|wstephenson@kde.org|Will Stephenson}}<br />
{{FeatureTodo|Plasma|Activity UI improvements|wstephenson@kde.org|Will Stephenson}}<br />
{{FeatureInProgress|KWin|Take over screensaver/locking management from KRunner|alex.merry@kdemail.net|Alex Merry}}<br />
{{FeatureDone|KCM|make mouse cursor size configurable (http://git.reviewboard.kde.org/r/101701/)|SommerLuk@gmail.com|Lukas Sommer}}<br />
{{FeatureDone|powerdevil|Remove Desktop Effects Management|drf@kde.org|Dario Freddi}}<br />
{{FeatureDone|powerdevil|Allow static profiles only|drf@kde.org|Dario Freddi}}<br />
{{FeatureDone|powerdevil|Allow activity interaction|drf@kde.org|Dario Freddi}}<br />
{{FeatureDone|Plasma|Add MPRIS2 support to nowplaying|alex.merry@kdemail.net|Alex Merry}}<br />
{{FeatureInProgress|Plasma|Allow task grouping on the taskbar to work together with kwin window tabbing|akreuzkamp@web.de|Anton Kreuzkamp}}<br />
{{FeatureInProgress|Plasma|Merge the QML version of the device notifier|mart@kde.org|Marco Martin}}<br />
{{FeatureInProgress|Plasma|Merge the QML version of the battery applet|mart@kde.org|Marco Martin}}<br />
{{FeatureDone|KWin|QML based Window switcher (Tabbox)|mgraesslin@kde.org|Martin Gräßlin}}<br />
{{FeatureInProgress|KWin|Texture Rectangle ARB support in Shaders|mgraesslin@kde.org|Martin Gräßlin}}<br />
{{FeatureInProgress|KWin|No Compositor restart on screen change|mgraesslin@kde.org|Martin Gräßlin}}<br />
{{FeatureInProgress|KWin|Initial Wayland support|mgraesslin@kde.org|Martin Gräßlin}}<br />
{{FeatureDone|KWin|Support for thumbnails in QML|mgraesslin@kde.org|Martin Gräßlin}}<br />
{{FeatureDone|KWin|Add AnimationEffect class|thomas.luebking@gmail.com|Thomas Lübking}}<br />
{{FeatureInProgress|KWin|Option to prefer the mouse position over the focus chain|thomas.luebking@gmail.com|Thomas Lübking}}<br />
{{FeatureDone|KWin|More cleanup in the window rules kcm|thomas.luebking@gmail.com|Thomas Lübking}}<br />
{{FeatureInProgress|KWin|Trade 1 frame lag for deterministic framerate|thomas.luebking@gmail.com|Thomas Lübking}}<br />
{{FeatureInProgress|KWin|Improved resizing of windows with thin or no borders|fredrik@kde.org|Fredrik Höglund}}<br />
{{FeatureInProgress|KWin|Move Workspace's compositing functionality to own class Compositor|a.arlt@stud.uni-heidelberg.de|Arthur Arlt}}<br />
{{FeatureInProgress|KWin|Introduce class DecorationPaintRedirector for decoration handling when Compositing is active|a.arlt@stud.uni-heidelberg.de|Arthur Arlt}}<br />
{{FeatureInProgress|Screenlocker|New Screenlocker and daemon|mgraesslin@kde.org|Martin Gräßlin}}<br />
{{FeatureDone|Plasma|Merge IconTask's taskmanager changes|craig@kde.org|Craig Drummond}}<br />
{{FeatureDone|KCM|Allow flag and label in keyboard layout indicator|arysin@gmail.com|Andriy Rysin}}<br />
{{FeatureInProgress|KSplash|QML based ksplash|mart@kde.org|Marco Martin/Ivan Čukić}}<br />
|}<br />
<br><br />
<br />
= kde-baseapps =<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="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;"<br />
<br />
! Status <br />
! Project <br />
! Description <br />
! Contact <br />
<br />
{{FeatureInProgress|Dolphin|Implement new view-engine for Dolphin 2.0 (see http://ppenz.blogspot.com/2011/08/introducing-dolphin-20.html)|peter.penz19@gmail.com|Peter Penz}}<br />
{{FeatureTodo|Dolphin|Implement support for back/forward mouse buttons|sebasti@n-doerner.de|Sebastian Dörner}}<br />
{{FeatureDone|Kate|Search & Replace in files plugin|kare.sars@iki.fi|Kåre Särs}}<br />
{{FeatureInProgress|Kate|Make GDB target selection behave like the build plugin |kare.sars@iki.fi|Kåre Särs}}<br />
{{FeatureInProgress|Kate|Add convenience options for remote debugging|kare.sars@iki.fi|Kåre Särs}}<br />
{{FeatureDone|Settings|Improve proxy configuration dialog|adawit@kde.org|Dawit Alemayehu}}<br />
|}<br />
<br><br />
<br />
= kdeedu =<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="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;"<br />
<br />
! Status <br />
! Project <br />
! Description <br />
! Contact <br />
<br />
{{FeatureInProgress|KTouch|New organisation of keyboard and lecture files according to languages|peter.ruethemann@gmail.com|Rüthemann Peter}}<br />
{{FeatureInProgress|KTouch|New organisation of menu system: Training, Statistic, Settings|peter.ruethemann@gmail.com|Rüthemann Peter}}<br />
{{FeatureTodo|KTouch|End of lecture statistics|peter.ruethemann@gmail.com|Rüthemann Peter}}<br />
{{FeatureDone|Rocs|Alignment Actions to minimize crossing graph edges|cola@uni-paderborn.de|Andreas Cord-Landwehr}}<br />
{{FeatureTodo|Rocs|Project Files to combine graphs and algorithms|cola@uni-paderborn.de|Andreas Cord-Landwehr}}<br />
{{FeatureDone|Rocs|Context menu for graph scene|cola@uni-paderborn.de|Andreas Cord-Landwehr}}<br />
{{FeatureDone|Rocs|Resurrect import-/export-features|cola@uni-paderborn.de|Andreas Cord-Landwehr}}<br />
{{FeatureDone|Rocs|User Interface Cleanup|cola@uni-paderborn.de|Andreas Cord-Landwehr}}<br />
{{FeatureDone|Cantor|Add Qalculate backend|matteo@agostinelli.me|Matteo Agostinelli}}<br />
{{FeatureInProgress|Cantor|Add Scilab backend|filip.saraiva@gmail.com|Filipe Saraiva}}<br />
{{FeatureDone|Marble|Marble Runner plugins for Parsing files|tgridel@freedotfr|Thibaut Gridel}}<br />
{{FeatureDone|Marble|(GSoC) OSM file rendering|oblaukhov.konstantin@gmail.com|Konstantin Oblaukhov}}<br />
{{FeatureDone|Marble|Marble Graphics Scene (Performance of Vector Drawing)|oblaukhov.konstantin@gmail.com|Konstantin Oblaukhov}}<br />
{{FeatureDone|Marble|Gps Info Plugin|tgridel@freedotfr|Thibaut Gridel}}<br />
{{FeatureDone|Marble|Improve LatLonEdit to allow input as Radian and DM|kossebau@kde.org|Friedrich W. H. Kossebau}}<br />
{{FeatureInProgress|Marble|Marble Touch (GSoC, Marble on MeeGo/N9)|earthwings@gentoo.org|Daniel Marth, Dennis Nienhüser}}<br />
{{FeatureDone|Marble|Routing API|earthwings@gentoo.org|Dennis Nienhüser}}<br />
{{FeatureInProgress|Marble|Adjustable Map Orientation (Rotation in Screen Plane)|bbeschow@cs.tu-berlin.de|Bernhard Beschow}}<br />
{{FeatureDone|Marble|Speedometer Plugin|bbeschow@cs.tu-berlin.de|Bernhard Beschow}}<br />
{{FeatureDone|Marble|Plasma Runner for geo coords and Marble bookmarks|kossebau@kde.org|Friedrich W. H. Kossebau}}<br />
{{FeatureDone|Marble|Make bookmark editor support editing the lonlat coordinates|kossebau@kde.org|Friedrich W. H. Kossebau}}<br />
{{FeatureDone|Marble|Fix GeoDataCoordinates parsing from a QString|kossebau@kde.org|Friedrich W. H. Kossebau}}<br />
{{FeatureDone|Marble|OsmNominatim improved display|tgridel@freedorfr|Thibaut Gridel}}<br />
{{FeatureTodo|Marble|Create New Marble About Dialog|rahn@kde.org|Torsten Rahn}}<br />
{{FeatureTodo|Marble|Add Float Item Management|rahn@kde.org|Torsten Rahn}}<br />
{{FeatureTodo|Marble|New Search|rahn@kde.org|Torsten Rahn}}<br />
{{FeatureInProgress|Marble|Make API more QML-friendly|bbeschow@cs.tu-berlin.de|Bernhard Beschow}}<br />
{{FeatureTodo|KTurtle|Add modulo command|nielsslot@gmaildotcom|Niels Slot}}<br />
{{FeatureDone|KGeography|Merge stuff from the cherry_field branch|aacid@kde.org|Albert Astals Cid}}<br />
|}<br />
<br><br />
<br />
= kdegames=<br />
{| cellspa/cing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="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;"<br />
! Status <br />
! Project <br />
! Description <br />
! Contact <br />
{{FeatureDone|Libkdegames|Improve graphics performance in all games by standardizing on the use of Qt Raster Graphics.|stefan.majewsky@googlemail.com|Stefan Majewsky}}<br />
{{FeatureDone|KSudoku|Add a new generator and solver to KSudoku, based on published algorithms. This will provide a full range of puzzle difficulties, rather than mainly easy puzzles, and will address bug 217925 and its duplicates 228614 and 237262 (now nearly two years old).|iandw.au@gmail.com|Ian Wadham}}<br />
{{FeatureDone|KSudoku|Re-implement the puzzle-symmetry feature.|iandw.au@gmail.com|Ian Wadham}}<br />
{{FeatureDone|KSudoku|Re-order the puzzle types on the welcome screen. Use KDE Games Difficulty combo-box instead of a slider. Save user's choices of puzzle between sessions. Do minor tidy-ups of the user interface.|iandw.au@gmail.com|Ian Wadham}}<br />
{{FeatureDone|KGoldrunner|Add the championship level "Gold Rush" game, with Traditional rules, contributed by Gabriel Miltschitzky.|iandw.au@gmail.com|Ian Wadham}}<br />
{{FeatureDone|KGoldrunner|Add the championship level "Jail Break" game, with KGoldrunner rules, contributed by Gabriel Miltschitzky.|iandw.au@gmail.com|Ian Wadham}}|}<br />
<br><br />
<br />
= kdegraphics=<br />
{| cellspa/cing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="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;"<br />
! Status <br />
! Project <br />
! Description <br />
! Contact <br />
{{FeatureInProgress|Okular|Reset Form Action support|aacid@kde.org|Albert Astals Cid}}<br />
{{FeatureDone|Okular|Viewer Mode & Interface.|michel.ludwig@kdemail.net|Michel Ludwig}}<br />
{{FeatureDone|Okular|Table selection tool improvements|aacid@kde.org|Albert Astals Cid}}<br />
{{FeatureInProgress|Gwenview|Animated image transitions|agateau@kde.org|Aurélien Gâteau}}<br />
|}<br />
<br><br />
<br />
= kdemultimedia =<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="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;"<br />
<br />
! Status <br />
! Project <br />
! Description <br />
! Contact <br />
<br />
{{FeatureTodo|JuK|MPRIS2 support|alex.merry@kdemail.net|Alex Merry}}<br />
|}<br />
<br><br />
<br />
= kdenetwork=<br />
{| cellspa/cing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="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;"<br />
! Status <br />
! Project <br />
! Description <br />
! Contact <br />
{{FeatureInProgress|KGet|Better interaction for torrents if they are seeding and other downloads stopped because of that|mat69@gmx.net|Matthias Fuchs}}<br />
{{FeatureInProgress|KGet|Class that handles deleting files|mat69@gmx.net|Matthias Fuchs}}<br />
{{FeatureInProgress|Kopete|Akonadi History Plugin |roideuniverse@gmail.com|Kaushik Saurabh}}<br />
|}<br />
<br><br />
<br />
= kdepim =<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="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;"<br />
<br />
! Status <br />
! Project <br />
! Description <br />
! Contact <br />
<br />
{{FeatureTodo<br />
|attachment:/ kio-slave<br />
|Implement kio-slave to access (email) attachments in Akonadi<br />
|kossebau@kde.org|Friedrich W. H. Kossebau}}<br />
<br />
{{FeatureInProgress|KAlarm|Port to Akonadi|djarvie@kde.org|David Jarvie}}<br />
<br />
{{FeatureTodo<br />
|sieve: implement wizard<br />
|Implement wizard to help user to create sieve script<br />
|montel@kde.org|Montel Laurent}}<br />
<br />
{{FeatureDone<br />
|HTML Replies<br />
|Give messagecomposer (especially for KMail) the ability to compose replies in HTML<br />
|nyblom@kde.org|Torgny Nyblom}}<br />
<br />
{{FeatureInProgress|KMail import|KMail1 setup import instead of migration|krammer@kde.org|Kevin Krammer}}<br />
<br />
{{FeatureInProgress|Agent control workspace integration|Monitoring and control of Akonadi agents through Plasma workspace facilitites|krammer@kde.org|Kevin Krammer}}<br />
<br />
|}<br />
<br />
<br><br />
<br />
= kdeplasma-addons =<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="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;"<br />
<br />
! Status <br />
! Project <br />
! Description <br />
! Contact <br />
<br />
{{FeatureInProgress|Kimpanel|Port kimpanel to DataEngine based one|wengxt@gmail.com|Xuetian Weng}}<br />
{{FeatureDone|IconTasks|Import IconTasks|craig@kde.org|Craig Drummond}}<br />
|}<br />
<br><br />
<br />
= kdesdk =<br />
<br />
{| cellspa/cing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="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;"<br />
! Status <br />
! Project <br />
! Description <br />
! Contact <br />
{{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}}<br />
{{FeatureTodo|Okteta|Add global toggle option for the offset display, hex or decimal|kossebau@kde.org|Friedrich W. H. Kossebau}} <br />
{{FeatureTodo|Okteta|Add Kate-like combined dialogs to query for actions on files|kossebau@kde.org|Friedrich W. H. Kossebau}}<br />
{{FeatureTodo|Okteta|add Kate-like search tool|kossebau@kde.org|Friedrich W. H. Kossebau}}<br />
{{FeatureTodo|Okteta|Add Okular like embedded notifications|kossebau@kde.org|Friedrich W. H. Kossebau}}<br />
{{FeatureTodo|Okteta|add support for import by drop, both url and data|kossebau@kde.org|Friedrich W. H. Kossebau}}<br />
{{FeatureTodo|Okteta|add support for memory mapping of files and 64-bit addressing|kossebau@kde.org|Friedrich W. H. Kossebau}}<br />
{{FeatureTodo|Okteta|add support for jobs like io, printing, string search or filter|kossebau@kde.org|Friedrich W. H. Kossebau}}<br />
{{FeatureTodo|Okteta|Add view profiles, incl. editor/manager|kossebau@kde.org|Friedrich W. H. Kossebau}}<br />
{{FeatureTodo|Okteta|copy again puts also a value or char variant of the data to clipboard|kossebau@kde.org|Friedrich W. H. Kossebau}}<br />
{{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}}<br />
{{FeatureTodo|Okteta|Make all user interaction in the KastenCore managers plugin-based|kossebau@kde.org|Friedrich W. H. Kossebau}}<br />
{{FeatureTodo|Okteta|Merge row and column widgets into one|kossebau@kde.org|Friedrich W. H. Kossebau}}<br />
{{FeatureTodo|Okteta|Store bookmarks|kossebau@kde.org|Friedrich W. H. Kossebau}}<br />
{{FeatureTodo|Okteta|Store bookmarks and other view settings for next load|kossebau@kde.org|Friedrich W. H. Kossebau}}<br />
{{FeatureTodo|Okteta|Add custom datatypes to structures tool|alex.richardson@gmx.de|Alex Richardson}}<br />
{{FeatureDone|Okteta|Add Flags Datatype to structures tool|alex.richardson@gmx.de|Alex Richardson}}<br />
{{FeatureInProgress|dolphin-plugins|Mercurial plugin for Dolphin|vishesh3y@gmail.com|Vishesh Yadav}}<br />
{{FeatureDone|KCachegrind|Upgrade interface to Callgrind (use callgrind_control instead of writing a command file, for > VG 3.7.x)|Josef.Weidendorfer@gmx.de|Josef Weidendorfer}} <br />
|}<br />
<br />
<br><br />
<br />
= kdeutils=<br />
{| cellspa/cing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="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;"<br />
! Status <br />
! Project <br />
! Description <br />
! Contact <br />
{{FeatureDone|ark|Allow Ark to be used as a KPart again|rakuco@FreeBSD.org|Raphael Kubo da Costa}}<br />
{{FeatureInProgress|ksecrets|A suite of tools related to the KSecretsService infrastructure|kde@rusu.info|Valentin Rusu}}<br />
|}<br />
<br></div>Tgridelhttps://community.kde.org/index.php?title=Schedules/KDE4/4.9_Feature_Plan&diff=51392Schedules/KDE4/4.9 Feature Plan2012-01-03T22:26:35Z<p>Tgridel: /* kdeedu */</p>
<hr />
<div>This is a list of planned features for the SC 4.9 release. <br />
<br />
See also: <br />
<br />
*[[Schedules/KDE4/4.9 Release Schedule]] <br />
*[[Schedules/KDE4/4.9 Release Goals]] <br />
*[[Schedules/KDE4/4.8 Feature Plan]] (previous major release)<br />
<br />
<br> Legend: <br />
<br />
*todo =&gt; not started yet <br />
*in-progress =&gt; started, but not completed yet <br />
*done =&gt; completed<br />
<br />
__TOC__ <br />
<br />
<br><br />
<br />
= kdelibs =<br />
= kde-runtime =<br />
= kde-workspace =<br />
= kde-baseapps =<br />
= kdeedu =<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="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;"<br />
<br />
! Status <br />
! Project <br />
! Description <br />
! Contact <br />
<br />
{{FeatureDone|Marble|Runner Manager blocking API|tgridel@freedorfr|Thibaut Gridel}}<br />
{{FeatureInProgress|Marble|Worldwide hillshading|earthwings@gentoo.org|Dennis Nienhüser}}<br />
{{FeatureInProgress|Marble|Shapefile file Parsing|tgridel@freedorfr|Thibaut Gridel}}<br />
{{FeatureTodo|Marble|Extended library API (no MarbleWidget dependency for tasks like parsing, routing)|earthwings@gentoo.org|Dennis Nienhüser}}<br />
{{FeatureTodo|Marble|Marble Touch on Plasma Active|earthwings@gentoo.org|Dennis Nienhüser}}<br />
{{FeatureTodo|Marble|Marble Touch on Android|earthwings@gentoo.org|Dennis Nienhüser}}<br />
{{FeatureTodo|Marble|Support for loading geolocated photos (e.g. in a Gallery activity in Marble Touch)|earthwings@gentoo.org|Dennis Nienhüser}}<br />
{{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}}<br />
<br />
|}<br />
<br><br />
<br />
= kdegames=<br />
= kdegraphics=<br />
= kdemultimedia =<br />
= kdenetwork=<br />
= kdepim =<br />
= kdeplasma-addons =<br />
= kdesdk =<br />
= kdeutils=</div>Tgridelhttps://community.kde.org/index.php?title=Schedules/KDE4/4.8_Feature_Plan&diff=51365Schedules/KDE4/4.8 Feature Plan2012-01-03T22:23:02Z<p>Tgridel: /* kdeedu */</p>
<hr />
<div>This is a list of planned features for the SC 4.8 release. <br />
<br />
See also: <br />
<br />
*[[Schedules/KDE4/4.8 Release Schedule]] <br />
*[[Schedules/KDE4/4.8 Release Goals]] <br />
*[[Schedules/KDE4/4.7 Feature Plan]] (previous major release)<br />
<br />
<br> Legend: <br />
<br />
*todo =&gt; not started yet <br />
*in-progress =&gt; started, but not completed yet <br />
*done =&gt; completed<br />
<br />
__TOC__ <br />
<br />
<br><br />
<br />
= kdelibs =<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="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;"<br />
<br />
! Status <br />
! Project <br />
! Description <br />
! Contact <br />
<br />
{{FeatureDone|Kate Part|Line modification system|dhaumann@kde.org|Dominik Haumann}}<br />
{{FeatureDone|Kate Part|Modeline Editor|dhaumann@kde.org|Dominik Haumann}}<br />
{{FeatureDone|Kate Part|Reliable code folding|adrian.lungu89@gmail.com|Adrian Lungu}}<br />
{{FeatureDone|Kate Part|Improved vi input mode|svatoslav1@gmail.com|Svyatoslav Kuzmich}}<br />
{{FeatureInProgress|KIO|PreviewJob supports URLs|sebas@kde.org|Sebastian Kügler}}<br />
{{FeatureInProgress|kdeui|KSecretsService API addition|kde@rusu.info|Valentin Rusu}}<br />
{{FeatureInProgress|kdeui/util|Connect KWallet class to KSecretsService client API|kde@rusu.info|Valentin Rusu}}<br />
{{FeatureInProgress|kcookiejar|New domain specific cookie policy based on patch provided in bug#54300|adawit@kde.org|Dawit A.}} <br />
|}<br />
<br><br />
<br />
= kde-runtime =<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="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;"<br />
<br />
! Status <br />
! Project <br />
! Description <br />
! Contact <br />
<br />
{{FeatureInProgress|ksecretsserviced|KSecretsService daemon implementing the freedesktop.org secrets API. KDE applications will want to use the related kdelibs API (see below)|kde@rusu.info|Valentin Rusu}}<br />
<br />
{{FeatureInProgress|DrKonqi|Better duplicate detection|mat69@gmx.net|Matthias Fuchs}}<br />
{{FeatureInProgress|KIO Thumbnails|webthumbnails plugin|sebas@kde.org|Sebastian Kügler}}<br />
{{FeatureInProgress|DrKonqi|Scripting support|mat69@gmx.net|Matthias Fuchs}}<br />
{{FeatureInProgress|Plasma|Plasma QML QtComponents|mart@kde.org|Marco Martin}}<br />
|}<br />
<br><br />
<br />
= kde-workspace =<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="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;"<br />
<br />
! Status <br />
! Project <br />
! Description <br />
! Contact <br />
{{FeatureTodo|KWin|Activity switcher|wstephenson@kde.org|Will Stephenson}}<br />
{{FeatureTodo|Plasma|Activity UI improvements|wstephenson@kde.org|Will Stephenson}}<br />
{{FeatureInProgress|KWin|Take over screensaver/locking management from KRunner|alex.merry@kdemail.net|Alex Merry}}<br />
{{FeatureDone|KCM|make mouse cursor size configurable (http://git.reviewboard.kde.org/r/101701/)|SommerLuk@gmail.com|Lukas Sommer}}<br />
{{FeatureDone|powerdevil|Remove Desktop Effects Management|drf@kde.org|Dario Freddi}}<br />
{{FeatureDone|powerdevil|Allow static profiles only|drf@kde.org|Dario Freddi}}<br />
{{FeatureDone|powerdevil|Allow activity interaction|drf@kde.org|Dario Freddi}}<br />
{{FeatureDone|Plasma|Add MPRIS2 support to nowplaying|alex.merry@kdemail.net|Alex Merry}}<br />
{{FeatureInProgress|Plasma|Allow task grouping on the taskbar to work together with kwin window tabbing|akreuzkamp@web.de|Anton Kreuzkamp}}<br />
{{FeatureInProgress|Plasma|Merge the QML version of the device notifier|mart@kde.org|Marco Martin}}<br />
{{FeatureInProgress|Plasma|Merge the QML version of the battery applet|mart@kde.org|Marco Martin}}<br />
{{FeatureDone|KWin|QML based Window switcher (Tabbox)|mgraesslin@kde.org|Martin Gräßlin}}<br />
{{FeatureInProgress|KWin|Texture Rectangle ARB support in Shaders|mgraesslin@kde.org|Martin Gräßlin}}<br />
{{FeatureInProgress|KWin|No Compositor restart on screen change|mgraesslin@kde.org|Martin Gräßlin}}<br />
{{FeatureInProgress|KWin|Initial Wayland support|mgraesslin@kde.org|Martin Gräßlin}}<br />
{{FeatureDone|KWin|Support for thumbnails in QML|mgraesslin@kde.org|Martin Gräßlin}}<br />
{{FeatureDone|KWin|Add AnimationEffect class|thomas.luebking@gmail.com|Thomas Lübking}}<br />
{{FeatureInProgress|KWin|Option to prefer the mouse position over the focus chain|thomas.luebking@gmail.com|Thomas Lübking}}<br />
{{FeatureDone|KWin|More cleanup in the window rules kcm|thomas.luebking@gmail.com|Thomas Lübking}}<br />
{{FeatureInProgress|KWin|Trade 1 frame lag for deterministic framerate|thomas.luebking@gmail.com|Thomas Lübking}}<br />
{{FeatureInProgress|KWin|Improved resizing of windows with thin or no borders|fredrik@kde.org|Fredrik Höglund}}<br />
{{FeatureInProgress|KWin|Move Workspace's compositing functionality to own class Compositor|a.arlt@stud.uni-heidelberg.de|Arthur Arlt}}<br />
{{FeatureInProgress|KWin|Introduce class DecorationPaintRedirector for decoration handling when Compositing is active|a.arlt@stud.uni-heidelberg.de|Arthur Arlt}}<br />
{{FeatureInProgress|Screenlocker|New Screenlocker and daemon|mgraesslin@kde.org|Martin Gräßlin}}<br />
{{FeatureDone|Plasma|Merge IconTask's taskmanager changes|craig@kde.org|Craig Drummond}}<br />
{{FeatureDone|KCM|Allow flag and label in keyboard layout indicator|arysin@gmail.com|Andriy Rysin}}<br />
{{FeatureInProgress|KSplash|QML based ksplash|mart@kde.org|Marco Martin/Ivan Čukić}}<br />
|}<br />
<br><br />
<br />
= kde-baseapps =<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="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;"<br />
<br />
! Status <br />
! Project <br />
! Description <br />
! Contact <br />
<br />
{{FeatureInProgress|Dolphin|Implement new view-engine for Dolphin 2.0 (see http://ppenz.blogspot.com/2011/08/introducing-dolphin-20.html)|peter.penz19@gmail.com|Peter Penz}}<br />
{{FeatureTodo|Dolphin|Implement support for back/forward mouse buttons|sebasti@n-doerner.de|Sebastian Dörner}}<br />
{{FeatureDone|Kate|Search & Replace in files plugin|kare.sars@iki.fi|Kåre Särs}}<br />
{{FeatureInProgress|Kate|Make GDB target selection behave like the build plugin |kare.sars@iki.fi|Kåre Särs}}<br />
{{FeatureInProgress|Kate|Add convenience options for remote debugging|kare.sars@iki.fi|Kåre Särs}}<br />
{{FeatureDone|Settings|Improve proxy configuration dialog|adawit@kde.org|Dawit Alemayehu}}<br />
|}<br />
<br><br />
<br />
= kdeedu =<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="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;"<br />
<br />
! Status <br />
! Project <br />
! Description <br />
! Contact <br />
<br />
{{FeatureInProgress|KTouch|New organisation of keyboard and lecture files according to languages|peter.ruethemann@gmail.com|Rüthemann Peter}}<br />
{{FeatureInProgress|KTouch|New organisation of menu system: Training, Statistic, Settings|peter.ruethemann@gmail.com|Rüthemann Peter}}<br />
{{FeatureTodo|KTouch|End of lecture statistics|peter.ruethemann@gmail.com|Rüthemann Peter}}<br />
{{FeatureDone|Rocs|Alignment Actions to minimize crossing graph edges|cola@uni-paderborn.de|Andreas Cord-Landwehr}}<br />
{{FeatureTodo|Rocs|Project Files to combine graphs and algorithms|cola@uni-paderborn.de|Andreas Cord-Landwehr}}<br />
{{FeatureDone|Rocs|Context menu for graph scene|cola@uni-paderborn.de|Andreas Cord-Landwehr}}<br />
{{FeatureDone|Rocs|Resurrect import-/export-features|cola@uni-paderborn.de|Andreas Cord-Landwehr}}<br />
{{FeatureDone|Rocs|User Interface Cleanup|cola@uni-paderborn.de|Andreas Cord-Landwehr}}<br />
{{FeatureDone|Cantor|Add Qalculate backend|matteo@agostinelli.me|Matteo Agostinelli}}<br />
{{FeatureInProgress|Cantor|Add Scilab backend|filip.saraiva@gmail.com|Filipe Saraiva}}<br />
{{FeatureDone|Marble|Marble Runner plugins for Parsing files|tgridel@freedotfr|Thibaut Gridel}}<br />
{{FeatureDone|Marble|(GSoC) OSM file rendering|oblaukhov.konstantin@gmail.com|Konstantin Oblaukhov}}<br />
{{FeatureDone|Marble|Marble Graphics Scene (Performance of Vector Drawing)|oblaukhov.konstantin@gmail.com|Konstantin Oblaukhov}}<br />
{{FeatureDone|Marble|Gps Info Plugin|tgridel@freedotfr|Thibaut Gridel}}<br />
{{FeatureDone|Marble|Improve LatLonEdit to allow input as Radian and DM|kossebau@kde.org|Friedrich W. H. Kossebau}}<br />
{{FeatureInProgress|Marble|Marble Touch (GSoC, Marble on MeeGo/N9)|earthwings@gentoo.org|Daniel Marth, Dennis Nienhüser}}<br />
{{FeatureDone|Marble|Routing API|earthwings@gentoo.org|Dennis Nienhüser}}<br />
{{FeatureInProgress|Marble|Adjustable Map Orientation (Rotation in Screen Plane)|bbeschow@cs.tu-berlin.de|Bernhard Beschow}}<br />
{{FeatureDone|Marble|Speedometer Plugin|bbeschow@cs.tu-berlin.de|Bernhard Beschow}}<br />
{{FeatureDone|Marble|Plasma Runner for geo coords and Marble bookmarks|kossebau@kde.org|Friedrich W. H. Kossebau}}<br />
{{FeatureDone|Marble|Make bookmark editor support editing the lonlat coordinates|kossebau@kde.org|Friedrich W. H. Kossebau}}<br />
{{FeatureDone|Marble|Fix GeoDataCoordinates parsing from a QString|kossebau@kde.org|Friedrich W. H. Kossebau}}<br />
{{FeatureTodo|Marble|Create New Marble About Dialog|rahn@kde.org|Torsten Rahn}}<br />
{{FeatureTodo|Marble|Add Float Item Management|rahn@kde.org|Torsten Rahn}}<br />
{{FeatureTodo|Marble|New Search|rahn@kde.org|Torsten Rahn}}<br />
{{FeatureInProgress|Marble|Make API more QML-friendly|bbeschow@cs.tu-berlin.de|Bernhard Beschow}}<br />
{{FeatureTodo|KTurtle|Add modulo command|nielsslot@gmaildotcom|Niels Slot}}<br />
{{FeatureDone|KGeography|Merge stuff from the cherry_field branch|aacid@kde.org|Albert Astals Cid}}<br />
|}<br />
<br><br />
<br />
= kdegames=<br />
{| cellspa/cing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="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;"<br />
! Status <br />
! Project <br />
! Description <br />
! Contact <br />
{{FeatureDone|Libkdegames|Improve graphics performance in all games by standardizing on the use of Qt Raster Graphics.|stefan.majewsky@googlemail.com|Stefan Majewsky}}<br />
{{FeatureDone|KSudoku|Add a new generator and solver to KSudoku, based on published algorithms. This will provide a full range of puzzle difficulties, rather than mainly easy puzzles, and will address bug 217925 and its duplicates 228614 and 237262 (now nearly two years old).|iandw.au@gmail.com|Ian Wadham}}<br />
{{FeatureDone|KSudoku|Re-implement the puzzle-symmetry feature.|iandw.au@gmail.com|Ian Wadham}}<br />
{{FeatureDone|KSudoku|Re-order the puzzle types on the welcome screen. Use KDE Games Difficulty combo-box instead of a slider. Save user's choices of puzzle between sessions. Do minor tidy-ups of the user interface.|iandw.au@gmail.com|Ian Wadham}}<br />
{{FeatureDone|KGoldrunner|Add the championship level "Gold Rush" game, with Traditional rules, contributed by Gabriel Miltschitzky.|iandw.au@gmail.com|Ian Wadham}}<br />
{{FeatureDone|KGoldrunner|Add the championship level "Jail Break" game, with KGoldrunner rules, contributed by Gabriel Miltschitzky.|iandw.au@gmail.com|Ian Wadham}}|}<br />
<br><br />
<br />
= kdegraphics=<br />
{| cellspa/cing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="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;"<br />
! Status <br />
! Project <br />
! Description <br />
! Contact <br />
{{FeatureInProgress|Okular|Reset Form Action support|aacid@kde.org|Albert Astals Cid}}<br />
{{FeatureDone|Okular|Viewer Mode & Interface.|michel.ludwig@kdemail.net|Michel Ludwig}}<br />
{{FeatureDone|Okular|Table selection tool improvements|aacid@kde.org|Albert Astals Cid}}<br />
{{FeatureInProgress|Gwenview|Animated image transitions|agateau@kde.org|Aurélien Gâteau}}<br />
|}<br />
<br><br />
<br />
= kdemultimedia =<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="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;"<br />
<br />
! Status <br />
! Project <br />
! Description <br />
! Contact <br />
<br />
{{FeatureTodo|JuK|MPRIS2 support|alex.merry@kdemail.net|Alex Merry}}<br />
|}<br />
<br><br />
<br />
= kdenetwork=<br />
{| cellspa/cing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="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;"<br />
! Status <br />
! Project <br />
! Description <br />
! Contact <br />
{{FeatureInProgress|KGet|Better interaction for torrents if they are seeding and other downloads stopped because of that|mat69@gmx.net|Matthias Fuchs}}<br />
{{FeatureInProgress|KGet|Class that handles deleting files|mat69@gmx.net|Matthias Fuchs}}<br />
{{FeatureInProgress|Kopete|Akonadi History Plugin |roideuniverse@gmail.com|Kaushik Saurabh}}<br />
|}<br />
<br><br />
<br />
= kdepim =<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="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;"<br />
<br />
! Status <br />
! Project <br />
! Description <br />
! Contact <br />
<br />
{{FeatureTodo<br />
|attachment:/ kio-slave<br />
|Implement kio-slave to access (email) attachments in Akonadi<br />
|kossebau@kde.org|Friedrich W. H. Kossebau}}<br />
<br />
{{FeatureInProgress|KAlarm|Port to Akonadi|djarvie@kde.org|David Jarvie}}<br />
<br />
{{FeatureTodo<br />
|sieve: implement wizard<br />
|Implement wizard to help user to create sieve script<br />
|montel@kde.org|Montel Laurent}}<br />
<br />
{{FeatureDone<br />
|HTML Replies<br />
|Give messagecomposer (especially for KMail) the ability to compose replies in HTML<br />
|nyblom@kde.org|Torgny Nyblom}}<br />
<br />
{{FeatureInProgress|KMail import|KMail1 setup import instead of migration|krammer@kde.org|Kevin Krammer}}<br />
<br />
{{FeatureInProgress|Agent control workspace integration|Monitoring and control of Akonadi agents through Plasma workspace facilitites|krammer@kde.org|Kevin Krammer}}<br />
<br />
|}<br />
<br />
<br><br />
<br />
= kdeplasma-addons =<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="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;"<br />
<br />
! Status <br />
! Project <br />
! Description <br />
! Contact <br />
<br />
{{FeatureInProgress|Kimpanel|Port kimpanel to DataEngine based one|wengxt@gmail.com|Xuetian Weng}}<br />
{{FeatureDone|IconTasks|Import IconTasks|craig@kde.org|Craig Drummond}}<br />
|}<br />
<br><br />
<br />
= kdesdk =<br />
<br />
{| cellspa/cing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="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;"<br />
! Status <br />
! Project <br />
! Description <br />
! Contact <br />
{{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}}<br />
{{FeatureTodo|Okteta|Add global toggle option for the offset display, hex or decimal|kossebau@kde.org|Friedrich W. H. Kossebau}} <br />
{{FeatureTodo|Okteta|Add Kate-like combined dialogs to query for actions on files|kossebau@kde.org|Friedrich W. H. Kossebau}}<br />
{{FeatureTodo|Okteta|add Kate-like search tool|kossebau@kde.org|Friedrich W. H. Kossebau}}<br />
{{FeatureTodo|Okteta|Add Okular like embedded notifications|kossebau@kde.org|Friedrich W. H. Kossebau}}<br />
{{FeatureTodo|Okteta|add support for import by drop, both url and data|kossebau@kde.org|Friedrich W. H. Kossebau}}<br />
{{FeatureTodo|Okteta|add support for memory mapping of files and 64-bit addressing|kossebau@kde.org|Friedrich W. H. Kossebau}}<br />
{{FeatureTodo|Okteta|add support for jobs like io, printing, string search or filter|kossebau@kde.org|Friedrich W. H. Kossebau}}<br />
{{FeatureTodo|Okteta|Add view profiles, incl. editor/manager|kossebau@kde.org|Friedrich W. H. Kossebau}}<br />
{{FeatureTodo|Okteta|copy again puts also a value or char variant of the data to clipboard|kossebau@kde.org|Friedrich W. H. Kossebau}}<br />
{{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}}<br />
{{FeatureTodo|Okteta|Make all user interaction in the KastenCore managers plugin-based|kossebau@kde.org|Friedrich W. H. Kossebau}}<br />
{{FeatureTodo|Okteta|Merge row and column widgets into one|kossebau@kde.org|Friedrich W. H. Kossebau}}<br />
{{FeatureTodo|Okteta|Store bookmarks|kossebau@kde.org|Friedrich W. H. Kossebau}}<br />
{{FeatureTodo|Okteta|Store bookmarks and other view settings for next load|kossebau@kde.org|Friedrich W. H. Kossebau}}<br />
{{FeatureTodo|Okteta|Add custom datatypes to structures tool|alex.richardson@gmx.de|Alex Richardson}}<br />
{{FeatureDone|Okteta|Add Flags Datatype to structures tool|alex.richardson@gmx.de|Alex Richardson}}<br />
{{FeatureInProgress|dolphin-plugins|Mercurial plugin for Dolphin|vishesh3y@gmail.com|Vishesh Yadav}}<br />
{{FeatureDone|KCachegrind|Upgrade interface to Callgrind (use callgrind_control instead of writing a command file, for > VG 3.7.x)|Josef.Weidendorfer@gmx.de|Josef Weidendorfer}} <br />
|}<br />
<br />
<br><br />
<br />
= kdeutils=<br />
{| cellspa/cing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="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;"<br />
! Status <br />
! Project <br />
! Description <br />
! Contact <br />
{{FeatureDone|ark|Allow Ark to be used as a KPart again|rakuco@FreeBSD.org|Raphael Kubo da Costa}}<br />
{{FeatureInProgress|ksecrets|A suite of tools related to the KSecretsService infrastructure|kde@rusu.info|Valentin Rusu}}<br />
|}<br />
<br></div>Tgridelhttps://community.kde.org/index.php?title=Marble/Placemark&diff=74392Marble/Placemark2011-12-26T19:41:55Z<p>Tgridel: /* Overview of Placemarks in Marble */</p>
<hr />
<div>= Overview of Placemarks in Marble =<br />
<br />
The {{class|GeoDataPlacemark|kdeedu|4.x}} is the class representing a placemark in Marble, with GeoData classes following kml specification. There are basically 2 kinds of Placemarks: Point Placemarks, and Placemarks containing a Geometry class inheriting {{class|GeoDataGeometry|kdeedu|4.x}}.<br />
<br />
== Registration and use in MarbleModel ==<br />
The {{class|MarbleModel|kdeedu|4.x}} provides registration of Placemarks within a {{class|GeoDataTreeModel|kdeedu|4.x}}. The tree model stores multiple {{class|GeoDataDocument|kdeedu|4.x}} corresponding to the data they hold.<br />
<br />
It is used currently by 3 frameworks:<br />
<br />
=== File Management ===<br />
<br />
The {{class|FileManager|kdeedu|4.x}} performs file reading and then signals that files have been added/removed. It registers its document in the tree model.<br />
The role of the FileManager is: <br />
<br />
* Centralise file parsing while relying on the {{class|MarbleRunnerManager|kdeedu|4.x}} to support various file formats thanks to Parsing plugins.<br />
<br />
* use threading support with FileLoader loading the file asynchronously (should be deprecated since the runner manager handles this already).<br />
<br />
* provide the results of those parsing to MarbleModel so that Marble can have easy access to the data.<br />
<br />
=== Placemark Search runners ===<br />
<br />
The {{class|MarbleRunnerManager|kdeedu|4.x}} is a framework to query external servers for placemarks thanks to Placemark search plugins. The user types the query in the search line of the ControlBox widget, and then the MarbleRunnerManager provides the resulting Placemarks in the tree model.<br />
<br />
=== Position Provider ===<br />
<br />
The {{class|PositionProvider|kdeedu|4.x}} class has a document to display the current position, as well as the track stored of past positions. That document belongs in the tree model.<br />
<br />
<br />
== Display in the map ==<br />
<br />
The Point placemarks are displayed thanks to the {{class|PlacemarkLayout|kdeedu|4.x}} which does layouting of the labels, and filtering of the important placemarks to render, based on a popularity ranking.<br />
<br />
The Geometry placemarks are displayed thanks to the {{class|GeometryLayer|kdeedu|4.x}} which contains a {{class|GeoGraphicsScene|kdeedu|4.x}}.</div>Tgridelhttps://community.kde.org/index.php?title=Marble/Placemark&diff=74391Marble/Placemark2011-12-26T19:19:54Z<p>Tgridel: /* Overview of Placemarks in Marble */</p>
<hr />
<div>== Overview of Placemarks in Marble ==<br />
<br />
The {{class|GeoDataPlacemark|kdeedu|4.x}} is the class representing a placemark in Marble, with GeoData classes following kml specification. There are basically 2 kinds of Placemarks: Point Placemarks, and Placemarks containing a Geometry class inheriting {{class|GeoDataGeometry|kdeedu|4.x}}.<br />
<br />
=== Registration and use in MarbleModel ===<br />
The {{class|MarbleModel|kdeedu|4.x}} provides registration of Placemarks within a {{class|GeoDataTreeModel|kdeedu|4.x}}. The tree model stores multiple {{class|GeoDataDocument|kdeedu|4.x}} corresponding to the data they hold.<br />
<br />
It is used currently by 3 frameworks:<br />
<br />
- The {{class|FileManager|kdeedu|4.x}} performs file reading and then signals that files have been added/removed. It registers its document in the tree model.<br />
<br />
- The {{class|MarbleRunnerManager|kdeedu|4.x}} is a framework to query external servers for placemarks. The user types the query in the search line of the ControlBox widget, and then the MarbleRunnerManager triggers asynchronous runners which inherit from {{class|MarbleAbstractRunner|kdeedu|4.x}}. The MarbleRunnerManager then provides the resulting Placemarks in the tree model.<br />
<br />
- The {{class|PositionProvider|kdeedu|4.x}} class has a document to display the current position, as well as the track stored of past positions. That document belongs in the tree model.<br />
<br />
=== Display in the map ===<br />
The Point placemarks are displayed thanks to the {{class|PlacemarkLayout|kdeedu|4.x}} which does layouting of the labels, and filtering of the important placemarks to render, based on a popularity ranking.<br />
<br />
The Geometry placemarks are displayed thanks to the {{class|GeometryLayer|kdeedu|4.x}} which contains a {{class|GeoGraphicsScene|kdeedu|4.x}}.</div>Tgridelhttps://community.kde.org/index.php?title=Schedules/KDE4/4.8_Feature_Plan&diff=51280Schedules/KDE4/4.8 Feature Plan2011-09-19T16:34:13Z<p>Tgridel: /* kdeedu */</p>
<hr />
<div>This is a list of planned features for the SC 4.8 release. <br />
<br />
See also: <br />
<br />
*[[Schedules/KDE4/4.8 Release Schedule]] <br />
*[[Schedules/KDE4/4.8 Release Goals]] <br />
*[[Schedules/KDE4/4.7 Feature Plan]] (previous major release)<br />
<br />
<br> Legend: <br />
<br />
*todo =&gt; not started yet <br />
*in-progress =&gt; started, but not completed yet <br />
*done =&gt; completed<br />
<br />
__TOC__ <br />
<br />
<br><br />
<br />
= kde-workspace =<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="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;"<br />
<br />
! Status <br />
! Project <br />
! Description <br />
! Contact <br />
<br />
{{FeatureInProgress|KWin|Take over screensaver/locking management from KRunner|alex.merry@kdemail.net|Alex Merry}}<br />
|}<br />
<br><br />
<br />
= kdelibs =<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="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;"<br />
<br />
! Status <br />
! Project <br />
! Description <br />
! Contact <br />
<br />
{{FeatureDone|Kate Part|Line modification system|dhaumann@kde.org|Dominik Haumann}}<br />
{{FeatureDone|Kate Part|Modeline Editor|dhaumann@kde.org|Dominik Haumann}}<br />
{{FeatureDone|Kate Part|Search & Replace in files plugin|kare.sars@iki.fi|Kåre Särs}}<br />
{{FeatureDone|Kate Part|Reliable code folding|adrian.lungu89@gmail.com|Adrian Lungu}}<br />
{{FeatureDone|Kate Part|Improved vi input mode|svatoslav1@gmail.com|Svyatoslav Kuzmich}}<br />
|}<br />
<br><br />
<br />
= kde-baseapps =<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="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;"<br />
<br />
! Status <br />
! Project <br />
! Description <br />
! Contact <br />
<br />
{{FeatureInProgress|Dolphin|Implement new view-engine for Dolphin 2.0 (see http://ppenz.blogspot.com/2011/08/introducing-dolphin-20.html)|peter.penz19@gmail.com|Peter Penz}}<br />
|}<br />
<br><br />
<br />
= kdeedu =<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="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;"<br />
<br />
! Status <br />
! Project <br />
! Description <br />
! Contact <br />
<br />
{{FeatureInProgress|KTouch|New organisation of keyboard and lecture files according to languages|peter.ruethemann@gmail.com|Rüthemann Peter}}<br />
{{FeatureInProgress|KTouch|New organisation of menu system: Training, Statistic, Settings|peter.ruethemann@gmail.com|Rüthemann Peter}}<br />
{{FeatureTodo|KTouch|End of lecture statistics|peter.ruethemann@gmail.com|Rüthemann Peter}}<br />
{{FeatureTodo|Rocs|Plugin: mimimize cutting edges of graph|cola@uni-paderborn.de|Andreas Cord-Landwehr}}<br />
{{FeatureTodo|Rocs|Project Files to combine graphs and algorithms|cola@uni-paderborn.de|Andreas Cord-Landwehr}}<br />
{{FeatureTodo|Rocs|Stepped Execution of Algorithms|cola@uni-paderborn.de|Andreas Cord-Landwehr}}<br />
{{FeatureInProgress|Cantor|Add Qalculate backend|matteo@agostinelli.me|Matteo Agostinelli}}<br />
{{FeatureDone|Marble|Marble Runner plugins for Parsing files|tgridel@freedotfr|Thibaut Gridel}}<br />
{{FeatureDone|Marble|(GSoC) OSM file rendering|oblaukhov.konstantin@gmail.com|Konstantin Oblaukhov}}<br />
{{FeatureDone|Marble|Marble Graphics Scene (Performance of Vector Drawing)|oblaukhov.konstantin@gmail.com|Konstantin Oblaukhov}}<br />
{{FeatureDone|Marble|Gps Info Plugin|tgridel@freedotfr|Thibaut Gridel}}<br />
{{FeatureInProgress|Marble|Routing API|earthwings@gentoo.org|Dennis Nienhüser}}<br />
|}<br />
<br><br />
<br />
= kdepim =<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="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;"<br />
<br />
! Status <br />
! Project <br />
! Description <br />
! Contact <br />
<br />
{{FeatureTodo<br />
|attachment:/ kio-slave<br />
|Implement kio-slave to access (email) attachments in Akonadi<br />
|kossebau@kde.org|Friedrich W. H. Kossebau}}<br />
{{FeatureInProgress|KAlarm|Port to Akonadi|djarvie@kde.org|David Jarvie}}<br />
<br />
|}<br />
<br />
<br><br />
<br />
= kdesdk =<br />
<br />
{| cellspa/cing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="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;"<br />
! Status <br />
! Project <br />
! Description <br />
! Contact <br />
{{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}}<br />
{{FeatureTodo|Okteta|Add global toggle option for the offset display, hex or decimal|kossebau@kde.org|Friedrich W. H. Kossebau}} <br />
{{FeatureTodo|Okteta|Add Kate-like combined dialogs to query for actions on files|kossebau@kde.org|Friedrich W. H. Kossebau}}<br />
{{FeatureTodo|Okteta|add Kate-like search tool|kossebau@kde.org|Friedrich W. H. Kossebau}}<br />
{{FeatureTodo|Okteta|Add Okular like embedded notifications|kossebau@kde.org|Friedrich W. H. Kossebau}}<br />
{{FeatureTodo|Okteta|add support for import by drop, both url and data|kossebau@kde.org|Friedrich W. H. Kossebau}}<br />
{{FeatureTodo|Okteta|add support for memory mapping of files and 64-bit addressing|kossebau@kde.org|Friedrich W. H. Kossebau}}<br />
{{FeatureTodo|Okteta|add support for jobs like io, printing, string search or filter|kossebau@kde.org|Friedrich W. H. Kossebau}}<br />
{{FeatureTodo|Okteta|Add view profiles, incl. editor/manager|kossebau@kde.org|Friedrich W. H. Kossebau}}<br />
{{FeatureTodo|Okteta|copy again puts also a value or char variant of the data to clipboard|kossebau@kde.org|Friedrich W. H. Kossebau}}<br />
{{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}}<br />
{{FeatureTodo|Okteta|Make all user interaction in the KastenCore managers plugin-based|kossebau@kde.org|Friedrich W. H. Kossebau}}<br />
{{FeatureTodo|Okteta|Merge row and column widgets into one|kossebau@kde.org|Friedrich W. H. Kossebau}}<br />
{{FeatureTodo|Okteta|Store bookmarks|kossebau@kde.org|Friedrich W. H. Kossebau}}<br />
{{FeatureTodo|Okteta|Store bookmarks and other view settings for next load|kossebau@kde.org|Friedrich W. H. Kossebau}}<br />
|}<br />
<br></div>Tgridelhttps://community.kde.org/index.php?title=Marble/GeoData/GeoDataUse&diff=75129Marble/GeoData/GeoDataUse2011-09-14T21:51:38Z<p>Tgridel: /* Actual Implemented Use Details */</p>
<hr />
<div>== Using GeoData ==<br />
<br />
This page tries to summarise the use of GeoData classes in marble so that its implementation details can match the use cases, and understand if any what issues might arise from manipulating them otherwise.<br />
<br />
=== Use Cases ===<br />
<br />
The use cases identified so far are:<br />
<br />
# use any GeoData class as a convenient data holder in APIs.<br />
#: It is expected in that regard that classes have shared data.<br />
#: Let's call this usecase the "ToolClass" usecase.<br />
# use {{class|GeoDataDocument|kdeedu|4.x}} as the root document of a "data file" in-memory representation, or even another grouping of information.<br />
#: In this use case, there would exist a "tree" of data matching a logical grouping of information.<br />
#: Let's call this usecase the "DataTree" usecase.<br />
<br />
=== Actual Implemented Use Details ===<br />
* GeoData classes have shared data, in the sense that e.g. copying a GeoDataFeature is a shallow copy, with deep copy happening when one of the instances need to modify a value. This is all for the "ToolClass", and not much useful for the "DataTree". Pure parameter passing benefits from shallow copy.<br />
<br />
* {{class|FileManager|kdeedu|4.x}} uses {{class|FileLoader|kdeedu|4.x}} which build a {{class|GeoDataDocument|kdeedu|4.x}} from files it opens. It internally uses the {{class|GeoParser|kdeedu|4.x}} classes and framework for xml files. Those files then provided through the {{class|GeoDataTreeModel|kdeedu|4.x}} model.<br />
<br />
* {{class|PositionTracker|kdeedu|4.x}} keeps a document with past positions retrieved from {{class|PositionProviderPlugin|kdeedu|4.x}} plugins.<br />
<br />
* {{class|RoutingManager|kdeedu|4.x}} handles routing data in a document with instructions retrieved from Marble Runners Plugins which derive from {{class|MarbleAbstractRunner|kdeedu|4.x}}.<br />
<br />
TODO others??<br />
<br />
=== Common Issues and Pitfalls ===<br />
In the past or present, some issues have appeared and need to be remembered/adressed:<br />
<br />
# memory ownership is an issue to be determined depending on use case.<br />
# Compliance with KML spec is a priority, limiting differing needs.</div>Tgridelhttps://community.kde.org/index.php?title=KDEEdu&diff=9460KDEEdu2011-02-08T22:28:42Z<p>Tgridel: </p>
<hr />
<div>== Minutes from IRC Meetings & Sprints ==<br />
KDE Education has regular IRC meetings in #kde-edu. Here are some notes about these as well as developer sprint plans.<br />
<br />
<br />
[[KDEEdu/Meeting20091119IRC|Meeting on IRC, Thursday the 19th of November, 2009]]<br />
<br />
[[KDEEdu/Sprint2010|Sprint in Randa, Switzerland - May 20th to May 25th 2010]]<br />
<br />
[[KDEEdu/Meeting20100608IRC|Meeting on IRC, Tuesday the 8th of June, 2010]]<br />
<br />
[[KDEEdu/Sprint2011|Sprint in Bilbao - Spain - April 2011]]<br />
<br />
== Projects ==<br />
Application specific work can go here.<br />
<br />
=== Parley ===<br />
[[KDEEdu/Parley/Todo|Parley Todo PracticeNG]] Some thoughts about the next iteration of the practice modes in Parley<br />
<br />
== Current work proposals for KDE-Edu ==<br />
<br />
=== Development tasks ===<br />
<br />
=== Promotion tasks ===<br />
<br />
=== Artist oriented tasks ===<br />
<br />
=== Web Development ===<br />
<br />
=== [[KDEEdu/DocTasks|Doc tasks]] ===<br />
<br />
== Git Migration ==<br />
<br />
KDE is moving its SVN repositories to git. In this section we collect the current status of work on the git migration of KDE Edu.<br />
<br />
{|<br />
!App || Dependencies || Status Git Conversion || Status Compilation<br />
|- style="color: red;"<br />
| [http://edu.kde.org/blinken Blinken] || kdeeduui || no feedback yet || no feedback yet<br />
|- style="color: red;"<br />
| [http://edu.kde.org/cantor Cantor] || no feedback yet || no feedback yet || no feedback yet<br />
|- style="color: black;"<br />
| [http://edu.kde.org/kalgebra KAlgebra] || move libanalitza into libkdeedu first or move cantor support into kalgebra || no feedback yet || no feedback yet<br />
|- style="color: green;"<br />
| [http://edu.kde.org/kalzium Kalzium] || libscience has moved to kalzium || ok, history goes back to 2002 || compiles now. r1208940<br />
|- style="color: black;"<br />
| [http://edu.kde.org/kanagram Kanagram] || data, libkeduvocdocument, kdeeduui || no feedback yet || no feedback yet<br />
|- style="color: green;"<br />
| [http://edu.kde.org/kbruch KBruch] || none || ok, log tree goes back till initial import in 2003 || CMakeList.txt changes done<br />
|- style="color: red;"<br />
| [http://edu.kde.org/kgeography KGeography] || no feedback yet || no feedback yet || no feedback yet<br />
|- style="color: black;"<br />
| [http://edu.kde.org/khangman KHangMan] || data, keduvocdocument || ok, log tree goes back till initial import in 2001 || no feedback yet<br />
|- style="color: black;"<br />
| [http://edu.kde.org/kig Kig] || no feedback yet || no feedback yet || no feedback yet<br />
|- style="color: green;"<br />
| [http://edu.kde.org/kiten Kiten] || none || ok, log tree goes back till initial import in 2001 || CMakeLists.txt changes done<br />
|- style="color: red;"<br />
| [http://edu.kde.org/klettres KLettres] || no feedback yet || no feedback yet || no feedback yet<br />
|- style="color: red;"<br />
| [http://edu.kde.org/kmplot KmPlot] || no feedback yet || no feedback yet || no feedback yet<br />
|- style="color: orange;"<br />
| [http://edu.kde.org/kstars KStars] || INDI, Xplanet, CFitsio || OK (trunk starts initial import, in 2002) || Minor changes to the main CMakeLists.txt required, unable to build though (missing deps and further cmake errors)<br />
|- style="color: red;"<br />
| [http://edu.kde.org/ktouch KTouch] || no feedback yet || no feedback yet || no feedback yet<br />
|- style="color: red;"<br />
| [http://edu.kde.org/kturtle KTurtle] || no feedback yet || no feedback yet || no feedback yet<br />
|- style="color: red;"<br />
| [http://edu.kde.org/kwordquiz KWordQuiz] || no feedback yet || no feedback yet || no feedback yet<br />
|- style="color: green;"<br />
| [http://edu.kde.org/marble Marble] || none || trunk starts at creation, kde branches and kde tags OK, marble tags, branches and doc added, content not checked || ok, no changes needed<br />
|- style="color: red;"<br />
| [http://edu.kde.org/parley Parley] || no feedback yet || no feedback yet || no feedback yet<br />
|- style="color: green;"<br />
| [http://edu.kde.org/rocs Rocs] || None || Ok, log tree goes till initial import (2008) || Ok, build/install without any edits<br />
|- style="color: green;"<br />
| [http://edu.kde.org/step Step] || eigen, libqalculate, gsl || Ok, log tree goes until initial import || CMakeLists.txt changes done, r1219014<br />
|- style="color: black;"<br />
|}<br />
<br />
<br />
{|<br />
!current lib || Apps that depend on it || Status Git Conversion || Status Compilation<br />
|-<br />
| libkdeedu/icons/ || no feedback yet || no feedback yet || no feedback yet<br />
|-<br />
| libkdeedu/kdeeduui/ || no feedback yet || no feedback yet || no feedback yet<br />
|-<br />
| libkdeedu/keduvocdocument/ || Kanagram, KHangMan, KWordQuiz, Parley || no feedback yet || no feedback yet<br />
|-<br />
| libkdeedu/libscience/ || moved into kalzium || no feedback yet || no feedback yet<br />
|-<br />
|libkdeedu/qtmmlwidget ||no feedback yet || no feedback yet || no feedback yet<br />
|-<br />
|kalgebra/analitza || kalgebra and cantor (kalgebra backend) || no feedback yet || no feedback yet<br />
|-<br />
|data/ ||Kanagram, KHangMan || common base data for those 2 apps || no feedback yet<br />
|}</div>Tgridelhttps://community.kde.org/index.php?title=Marble/ModelView&diff=74403Marble/ModelView2011-01-30T10:43:56Z<p>Tgridel: </p>
<hr />
<div>= ModelView framework in Marble =<br />
<br />
Marble uses Qt's Model/View framework as a way to signal updates to a model to interested parts. In that respect, a Model class can wrap any possible data.<br />
<br />
The Model-View framework is designed to hide the details of the model content, and to present it in a standardised way to views. The advantage of this solution is that the View need not know much about the data it presents.<br />
<br />
The multiple models and proxies in Marble each fit the purpose of feeding some GeoData classes to interested widgets. Those models are fed by the {{class|FileManager|kdeedu|4.x}}.<br />
<br />
Here is the list of Model and Proxy classes, and a description of how they are used.<br />
<br />
=== GeoDataTreeModel ===<br />
The {{class|GeoDataTreeModel|kdeedu|4.x}} represents the list of all {{class|GeoDataDocument|kdeedu|4.x}} registered through the {{class|FileManager|kdeedu|4.x}}.<br />
<br />
It has signals/slots to react to files being added or removed in the FileManager.<br />
<br />
It is used as the base model for GeoDataDocuments.<br />
<br />
The {{class|GeometryLayer|kdeedu|4.x}} renders all {{class|GeoDataGeometry|kdeedu|4.x}} related placemarks.<br />
<br />
=== FileViewModel ===<br />
The {{class|FileViewModel|kdeedu|4.x}} represents the list of opened files. The {{class|FileManager|kdeedu|4.x}} appends the documents it opens.<br />
It is used by the {{class|FileViewFloatItem|kdeedu|4.x}}.<br />
<br />
=== KDescendantsProxyModel ===<br />
The {{class|KDescendantsProxyModel|kdeedu|4.x}} is used to flatten the tree of GeoData features. It represents the list of all Placemarks of all opened files.<br />
<br />
The {{class|MarbleControlBox|kdeedu|4.X}} uses that proxy model to provide the list of placemarks to search for, and the {{class|PlacemarkLayout|kdeedu|4.x}} uses it also to determine layouting on the map.</div>Tgridelhttps://community.kde.org/index.php?title=Schedules/KDE4/4.7_Feature_Plan&diff=51139Schedules/KDE4/4.7 Feature Plan2011-01-03T21:31:50Z<p>Tgridel: </p>
<hr />
<div>This is a list of planned features for the SC 4.7 release. <br />
<br />
See also: <br />
<br />
*[[Schedules/KDE4/4.7 Release Schedule]] <br />
*[[Schedules/KDE4/4.7 Release Goals]] <br />
*[[Schedules/KDE4/4.6 Feature Plan]] (previous major release)<br />
<br />
<br> Legend: <br />
<br />
*todo =&gt; not started yet <br />
*in-progress =&gt; started, but not completed yet <br />
*done =&gt; completed<br />
<br />
__TOC__ <br />
<br />
<br><br />
<br />
= kdeedu =<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="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;"<br />
! Status <br />
! Project <br />
! Description <br />
! Contact <br />
{{FeatureTodo|Marble|Routing API|earthwings@gentoo.org|Dennis Nienhüser}}<br />
{{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}}<br />
{{FeatureTodo|Marble|Tile loading "read ahead" when idle, prerequisite: threaded tile loading|jmho@c-xx.com|Jens-Michael Hoffmann}}<br />
{{FeatureTodo|Marble|Multi threaded texture mapping|jmho@c-xx.com|Jens-Michael Hoffmann}}<br />
{{FeatureInProgress|Marble|Manipulate Gps track data|tgridel@freedotfr|Thibaut Gridel}}<br />
|}<br />
<br />
<br></div>Tgridelhttps://community.kde.org/index.php?title=Schedules/KDE4/4.6_Feature_Plan&diff=51117Schedules/KDE4/4.6 Feature Plan2011-01-03T21:30:17Z<p>Tgridel: </p>
<hr />
<div>This is a list of planned features for the SC 4.6 release. <br />
<br />
See also: <br />
<br />
*[[Schedules/KDE4/4.5 Feature Plan]] (previous major release)<br />
*[[Schedules/KDE4/4.6 Release Schedule]] <br />
*[[Schedules/KDE4/4.6 Release Goals]] <br />
*[[Schedules/KDE4/4.7 Feature Plan]] (next major release)<br />
<br />
<br> Legend: <br />
<br />
*todo =&gt; not started yet <br />
*in-progress =&gt; started, but not completed yet <br />
*done =&gt; completed<br />
<br />
__TOC__ <br />
<br />
<br><br />
<br />
= kdebase-apps =<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="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;"<br />
! Status <br />
! Project <br />
! Description <br />
! Contact <br />
{{FeatureInProgress|Konsole|Move to KTabWidget|sasch.pe@gmx.de|Sascha Peilicke}}<br />
{{FeatureDone|Dolphin|Faceted browsing via Nepomuk|trueg@kde.org|Sebastian Trueg}}<br />
{{FeatureDone|Dolphin|Searching support for non-indexed files|peter.penz19@gmail.com|Peter Penz}}<br />
{{FeatureDone|Dolphin|Git-plugin (implemented by Sebastian Dörner and Johannes Steffen)|peter.penz19@gmail.com|Peter Penz}}<br />
{{FeatureDone|Dolphin| Resizeable columns in the column-view|peter.penz19@gmail.com|Peter Penz}}<br />
{{FeatureDone|Dolphin| Allow leading zeros when renaming multiple files (implemented by Matthias Fuchs)|peter.penz19@gmail.com|Peter Penz}}<br />
{{FeatureInProgress|nspluginviewer|Full npruntime support|maksim@kde.org|Maks Orlovich}}<br />
{{FeatureTodo|Dolphin|Smooth scrolling|fredrik@kde.org|Fredrikh Höglund}}<br />
|}<br />
<br />
<br><br />
<br />
= kdebase-runtime =<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="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;"<br />
! Status <br />
! Project <br />
! Description <br />
! Contact <br />
{{FeatureDone|Plasma|Plasma KPart|ry@n.rix.si|Ryan Rix}}<br />
{{FeatureInProgress|Plasma|Declarative AppletScript to write QML plasmoids|mart@kde.org|Marco Martin}}<br />
{{FeatureInProgress|Plasma|Optimize the Newspaper containment for the use with touchscreens and the Plasma KPart|mart@kde.org|Marco Martin}}<br />
{{FeatureDone|KWin|Focus tracking for the zoom plugin (uses kaccessible)|mail@dipe.org|Sebastian Sauer}}<br />
{{FeatureDone|KWin|Extend mouse tracking modes for the zoom plugin|mail@dipe.org|Sebastian Sauer}}<br />
{{FeatureDone|Nepomuk Backup & Sync| Provide Backup and Sync capabilities to Nepomuk|handa.vish@gmail.com|Vishesh Handa}}<br />
{{FeatureTodo|Web Metadata extractor| Provide a framework to get additional data about resources|handa.vish@gmail.com|Vishesh Handa}}<br />
{{FeatureDone|Activities manager service|Merge the kded and nepomuk modules for activities into one service|ivan.cukic@kde.org|Ivan Čukić}}<br />
{{FeatureInProgress|Activities manager service|Register desktop events instead directly linking the activities to resources|ivan.cukic@kde.org|Ivan Čukić}}<br />
{{FeatureInProgress|KNotify|Add support for relative present actions in contexts|wilderkde@gmail.com|Jacopo De Simoi}}<br />
{{FeatureDone|KNotify|Add Plugin Loading Support (No UI Support For Now)|j.maceachern@gmail.com|Jeffery MacEachern}}<br />
{{FeatureInProgress|Locale KCM|Complete re-write to improve usability, support for new localization features|john@layt.net|John Layt}}<br />
{{FeatureInProgress|Phonon KCM|Add video input device configuration support|kiagiadakis.george@gmail.com|George Kiagiadakis}}<br />
{{FeatureInProgress|ksecretserviced|Make it replace KWallet|lemma@confuego.org|Michael Leupold}}<br />
|}<br />
<br />
<br />
<br><br />
<br />
= kdebase-workspace =<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="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;"<br />
! Status <br />
! Project <br />
! Description <br />
! Contact<br />
|-<br />
! style="text-align: center;" colspan="4" | Plasma <br />
{{FeatureDone|libtaskmanager / tasks-applet| support for Windows 7 like launchers |akreuzkamp@web.de|Anton Kreuzkamp}}<br />
{{FeatureInProgress|notifications| rework notification applet appearance |mart@kde.org|Marco Martin}}<br />
{{FeatureInProgress|notifications| make various dataengines use Plasma::Storage |mart@kde.org|Marco Martin}}<br />
{{FeatureDone|plasma-desktop| UI for editing activity name and icon|ivan.cukic@kde.org|Ivan Čukić}}<br />
{{FeatureTodo|plasma-desktop| add some default activities|fux@kde.org|Mario Fux}}<br />
{{FeatureDone|plasma| finish support for activity templates |chani@kde.org|Chani}}<br />
{{FeatureInProgress|plasma-devicenotifier| Improve notification support |wilderkde@gmail.com|Jacopo De Simoi}}<br />
{{FeatureTodo|plasma-devicenotifier| Signal to the user which apps are blocking a device|wilderkde@gmail.com |Jacopo De Simoi}}<br />
{{FeatureDone|quicklaunch| populate new applets with user's default browser, file manager, ... instead of hardcoded ones |ingomar@wesp.name|Ingomar Wesp}}<br />
{{FeatureDone|quicklaunch| allow editing of existing launchers (including ones that do not point to a .desktop file) |ingomar@wesp.name|Ingomar Wesp}}<br />
{{FeatureDone|libplasma|Plasma calendar supports multiple Holiday Regions.|john@layt.net|John Layt}} <br />
{{FeatureInProgress|libplasma|Make Calendar DataEngine a Service.|john@layt.net|John Layt}} <br />
{{FeatureDone|plasma-desktop| integrate activity-sessions|chani@kde.org|Ivan/Chani}}<br />
{{FeatureInProgress|plasma-desktop|activity dataengine|chani@kde.org|Chani}}<br />
|-<br />
! style="text-align: center;" colspan="4" | KWin<br />
{{FeatureInProgress|windowgeometry effect| compositor powered move/resize windowgeometry display |thomas.luebking@web.de|Thomas Lübking}} <br />
{{FeatureDone|dashboard effect| new effect for Plasma dashboard |ademmer@opensuse.org|Andreas Demmer}} <br />
{{FeatureDone|kwin/ksmserver| activity sessions |chanika@gmail.com|Chani}} <br />
{{FeatureDone|libtaskmanager/kwin?| some activity integration in taskbar/pager |chani@kde.org|Chani}} <br />
{{FeatureTodo|libtaskmanager/kwin] | Expose Window Tabs to taskmanager |kde@martin-graesslin.com|Martin Gräßlin}}<br />
{{FeatureTodo|kwin|ARB Shader support|kde@martin-graesslin.com|Martin Gräßlin}}<br />
{{FeatureInProgress|Aurorae|Tooltips on window tabs|kde@martin-graesslin.com|Martin Gräßlin}}<br />
{{FeatureDone|Present Windows|Close window GUI control|kde@martin-graesslin.com|Martin Gräßlin}}<br />
{{FeatureDone|Startup Feedback|Effect to replace the Startup Feedback notification|kde@martin-graesslin.com|Martin Gräßlin}}<br />
{{FeatureDone|Screenshot Effect|KSanpshot can use KWin for screenshots|kde@martin-graesslin.com|Martin Gräßlin}}<br />
{{FeatureTodo|KCM Compositing|Allow compositing even if GL is buggy/X crashes|kde@martin-graesslin.com|Martin Gräßlin}}<br />
{{FeatureTodo|KWin Killer|Use notification instead of dialog|kde@martin-graesslin.com|Martin Gräßlin}}<br />
{{FeatureInProgress|Compositing|Improved platform detection|fredrik@kde.org|Fredrik Höglund}}<br />
<br />
|-<br />
! style="text-align: center;" colspan="4" | KDE Power Management system <br />
{{FeatureDone|core| PowerDevil v2 core |drf@kde.org|Dario Freddi}}<br />
{{FeatureDone|actions| Basic actions for feature parity with PowerDevil v1 |drf@kde.org|Dario Freddi}}<br />
{{FeatureInProgress|actions| More actions for advanced users |drf@kde.org|Dario Freddi}}<br />
{{FeatureDone|policy-handler| Create a new policy handler for handling inhibition properly, and have kdelibs' Solid API use it |drf@kde.org|Dario Freddi}}<br />
|-<br />
! style="text-align: center;" colspan="4" | System Settings<br />
{{FeatureDone|keyboard| Support for "spare layouts"|arysin@gmail.com|Andriy Rysin}}<br />
{{FeatureDone|keyboard| Support for > 4 layouts|arysin@gmail.com|Andriy Rysin}}<br />
{{FeatureInProgress|driconf|New module for configuring DRI drivers|fredrik@kde.org|Fredrik Höglund}}<br />
|-<br />
! style="text-align: center;" colspan="4" | Blue Devil<br />
{{FeatureInProgress|Review| Get into kdebase|alex@eyeos.org|Alex Fiestas}}<br />
{{FeatureInProgress|kio_obexftp| Better error handling|alex@eyeos.org|Alex Fiestas}}<br />
{{FeatureTodo|usability|Review all the components improving hig/elegance|alex@eyeos.org|Alex Fiestas}}<br />
{{FeatureTodo|share folders|Be able to share folders via obexftp|alex@eyeos.org|Alex Fiestas}}<br />
{{FeatureTodo|Devices KCM|Add further information about devices, like address...|ereslibre@kde.org|Rafael Fernández López}}<br />
{{FeatureTodo|Devices KCM|Allow to connect to devices services|ereslibre@kde.org|Rafael Fernández López}}<br />
{{FeatureInProgress|libbluedevil|Review DBus handling|ereslibre@kde.org|Rafael Fernández López}}<br />
{{FeatureTodo|libbluedevil|Add support for services|ereslibre@kde.org|Rafael Fernández López}}<br />
{{FeatureInProgress|Monolithic|Fix listing problems under certain conditions|ereslibre@kde.org|Rafael Fernández López}}<br />
|}<br />
<br />
<br><br />
<br />
= kdelibs =<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="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;"<br />
! Status <br />
! Project <br />
! Description <br />
! Contact <br />
{{FeatureDone|libnepomuk|Convenience operator overloads for query construction|trueg@kde.org|Sebastian Trueg}}<br />
{{FeatureDone|libnepomuk|New query flags and improved handling of full text matching scores including sorting|trueg@kde.org|Sebastian Trueg}}<br />
{{FeatureTodo|kdeui|Generic find bar widget|sasch.pe@gmx.de|Sascha Peilicke}}<br />
{{FeatureDone|kdeui|Allow getting and setting the size of the pixmap cache in KImageCache|2kmm@gmx.de|Manuel Mommertz}}<br />
{{FeatureDone|katepart|scripted actions|dhaumann@kde.org|Dominik Haumann}}<br />
{{FeatureDone|katepart|QAccessibleInterface's for document+cursor|mail@dipe.org|Sebastian Sauer}}<br />
{{FeatureDone|libplasma|PluginLoader class|ry@n.rix.si|Ryan Rix}}<br />
{{FeatureDone|libplasma|Allow SVGs to use systemcolors before rendering|2kmm@gmx.de|Manuel Mommertz}}<br />
{{FeatureInProgress|libplasma|DeclarativeWidget to load QML scenes in Plasma|mart@kde.org|Marco Martin}}<br />
{{FeatureInProgress|libplasma|finish up the gsoc project about Plasma::Storage service|mart@kde.org|Marco Martin}}<br />
{{FeatureDone|libplasma|let Plasma::SVG find the best matching size hinted element if there is no exact match|ingomar@wesp.name|Ingomar Wesp (mentored by Manuel Mommertz)}}<br />
{{FeatureDone|libnepomuk/KIO|Search excerpts|trueg@kde.org|Sebastian Trueg}}<br />
{{FeatureInProgress|libnepomuk|Standardqueries for convenience|trueg@kde.org|Sebastian Trueg}}<br />
{{FeatureDone|libnepomuk|GUI elements for resource/file searching including faceted browsing|trueg@kde.org|Sebastian Trueg}}<br />
{{FeatureInProgress|libnepomuksync|Sync library to be used in BackupSync, Strigi, Akonadi, WebExtractor and Removable Media|handa.vish@gmail.com|Vishesh Handa}}<br />
{{FeatureInProgress|kdecore|Add more possible synchronization primitives to KSharedDataCache to expand OS support. POSIX Semaphores Contributed by Alberto Villa of the FreeBSD project. Windows support may still occur as well.|mpyne@kde.org|Michael Pyne}}<br />
{{FeatureTodo|kdecore|Add fallback to QCache<QString,QByteArray> in KSharedDataCache.|mpyne@kde.org|Michael Pyne}}<br />
{{FeatureDone|kdecore|Add cache-wide timestamp to KSharedDataCache.|mpyne@kde.org|Michael Pyne}}<br />
{{FeatureTodo|kdecore|Add ability to make KSharedDataCache strictly read-only for laptop support.|mpyne@kde.org|Michael Pyne}}<br />
{{FeatureInProgress|kdeui|Social About Dialog|teo@kde.org|Teo Mrnjavac}}<br />
{{FeatureDone|kdeui|Allow to hide icons in menus|christoph@maxiom.de|Christoph Feck}}<br />
{{FeatureDone|KLocale|Auto-detect new users Country from their system country.|john@layt.net|John Layt}} <br />
{{FeatureDone|KLocale|New configuration option for AM/PM symbols, .|john@layt.net|John Layt}} <br />
{{FeatureDone|KLocale|Seperate backends available for each supported platform/desktop, use of platform localization in place of KDE locale planned for 4.7.|john@layt.net|John Layt}} <br />
{{FeatureDone|KLocalizedDate|New convenience class to make date localization easy.|john@layt.net|John Layt}}<br />
{{FeatureDone|KCalendarSystem|Add api for first/last day of year/month.|john@layt.net|John Layt}}<br />
{{FeatureDone|KCalendarSystem|Add configuration option for Short Year Window.|john@layt.net|John Layt}}<br />
{{FeatureDone|KCalendarSystem|Separated date / time parsing code into new private KDateTimeParser and KDateTimeFormatter classes to share with KLocale and KDateTime.|john@layt.net|John Layt}}<br />
{{FeatureInProgress|KHTML|HTML5 postMessage.|maksim@kde.org|Maksim Orlovich}} <br />
{{FeatureTodo|kcookiejar|New domain specific cookie policy based on patch provided in bug#54300|adawit@kde.org|Dawit A.}} <br />
{{FeatureInProgress|kcookiejar|Implement storing cookies in KWallet|fid@gpul.org|José Millán Soto}} <br />
{{FeatureInProgress|ksecretservice|Make KWallet::Wallet use the secrets-service API|lemma@confuego.org|Michael Leupold}} <br />
{{FeatureInProgress|anywhere|Allow to build without deprecated symbols|ervin@kde.org|Kevin Ottens (with lots of support from David Faure)}} <br />
{{FeatureInProgress|KIO|Use `net usershare` in KSambaShare|rclbelem@gmail.com|Rodrigo Belem}} <br />
|}<br />
<br />
<br><br />
<br />
= kdeedu =<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="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;"<br />
! Status <br />
! Project <br />
! Description <br />
! Contact <br />
{{FeatureDone|Marble|Loading of routes in .kml format (Maemo)|earthwings@gentoo.org|Dennis Nienhüser}}<br />
{{FeatureDone|Marble|Route printing (map and directions, configurabe)|earthwings@gentoo.org|Dennis Nienhüser}}<br />
{{FeatureDone|Marble|Route state saving and restoring|earthwings@gentoo.org|Dennis Nienhüser}}<br />
{{FeatureDone|Marble|Convert MarbleRunners to plugins|earthwings@gentoo.org|Dennis Nienhüser}}<br />
{{FeatureDone|Marble|worldwide and offline routing|earthwings@gentoo.org|Dennis Nienhüser}}<br />
{{FeatureDone|Marble|Extend MarbleRunner interface to handle reverse geocoding and routing requests; Display of alternative routes|earthwings@gentoo.org|Dennis Nienhüser}}<br />
{{FeatureDone|Marble|"Go To" dialog for Maemo|earthwings@gentoo.org|Dennis Nienhüser}}<br />
{{FeatureDone|Marble|Tile download along the route for offline usage|akssps011@gmail.com|Siddharth Srivastava}}<br />
{{FeatureDone|Marble|Turn-by-turn navigation mode|akssps011@gmail.com|Siddharth Srivastava}}<br />
{{FeatureDone|Marble|QtDeclarative plugin and QML examples (experimental)|earthwings@gentoo.org|Dennis Nienhüser}}<br />
{{FeatureInProgress|Marble|Implement sun locator blendings as derived classes of Marble::Blending|jmho@c-xx.com|Jens-Michael Hoffmann}}<br />
{{FeatureDone|Marble|Improve GeoData API|tgridel@freedotfr|Thibaut Gridel}}<br />
{{FeatureDone|Marble|Convert Gps tracking to GeoDataDocument|tgridel@freedotfr|Thibaut Gridel}}<br />
{{FeatureDone|Marble|Provide a treeModel for GeoDataDocuments|tgridel@freedotfr|Thibaut Gridel}}<br />
{{FeatureDone|Marble|Draw the geometries of multiple GeoDataDocuments|tgridel@freedotfr|Thibaut Gridel}}<br />
{{FeatureDone|Marble|Load Pnt vector data files as GeoData|tgridel@freedotfr|Thibaut Gridel}}<br />
{{FeatureDone|Cantor|Backend for GNU Octave|miha.cancula@gmail.com|Miha Čančula}}<br />
{{FeatureInProgress|Cantor|Merge R improvement branch|alexanderrieder@gmail.com|Alexander Rieder}}<br />
{{FeatureInProgress|Cantor|Variable management panel|alexanderrieder@gmail.com|Alexander Rieder}}<br />
{{FeatureTodo|Cantor|Formulas inside Text Entries|alexanderrieder@gmail.com| Alexander Rieder}}<br />
{{FeatureDone|Kalzium|Port Kalzium to use QGV based periodic table widget|mhanwell@kde.org|Marcus D. Hanwell}}<br />
{{FeatureDone|KAlgebra|Implicit functions plot|percy.camilo.ta@gmail.com|Percy Aucahuasi}}<br />
{{FeatureDone|KAlgebra|Improved execution speed on the calculator|aleixpol@kde.org|Aleix Pol Gonzalez}}<br />
{{FeatureDone|KAlgebra|Better integration between the Console and the Plotting facilities|aleixpol@kde.org|Aleix Pol Gonzalez}}<br />
{{FeatureDone|KAlgebra|Lighter version aimed to mobile users|aleixpol@kde.org|Aleix Pol Gonzalez}}<br />
{{FeatureInProgress|KStars|OpenGL rendering support for KStars|akarshsimha@gmail.com|Harry de Valence, Akarsh Simha}}<br />
{{FeatureInProgress|KStars|Better designed object database|akarshsimha@gmail.com|Victor Carbune, Akarsh Simha}}<br />
{{FeatureInProgress|KStars|Star Hop Generator|akarshsimha@gmail.com|Akarsh Simha}}<br />
{{FeatureDone|Kig|LaTeX/TikZ exporter|miha.cancula@gmail.com|Miha Čančula}}<br />
|}<br />
<br />
<br><br />
<br />
= kdemultimedia =<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="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;"<br />
! Status <br />
! Project <br />
! Description <br />
! Contact <br />
{{FeatureTodo|JuK|Remove Qt/KDE3 support lib requirements|mpyne@kde.org|Michael Pyne}}<br />
{{FeatureTodo|JuK|Allow setting covers directly from URLs supported by KIO - drag/drop already allows this however|mpyne@kde.org|Michael Pyne}}<br />
{{FeatureTodo|JuK|Add MPRIS support to JuK so that the NowPlaying applet doesn't need to special-case JuK.|mpyne@kde.org|Michael Pyne}}<br />
{{FeatureTodo|JuK|Update JuK's MusicBrainz support to a modern version of MusicBrainz.|mpyne@kde.org|Michael Pyne}}<br />
{{FeatureInProgress|kmix|Improved volume OSD|fredrik@kde.org|Fredrik Höglund}}<br />
|}<br />
<br />
<br/><br />
<br />
= kdegames =<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="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;"<br />
! Status <br />
! Project <br />
! Description <br />
! Contact <br />
{{FeatureDone|libkdegames|Import KGameRenderer framework and [[Projects/Games/Porting|port games]] to this unified rendering infrastructure.|majewsky@gmx.net|Stefan Majewsky}}<br />
{{FeatureInProgress|Kigo|Fix KNewStuff provider issues|sasch.pe@gmx.de|Sascha Peilicke}}<br />
{{FeatureDone|Palapeli|Import Goldberg slicer as the new default slicer plugin.|loehnert.kde@gmx.de|Johannes Loehnert}}<br />
{{FeatureDone|Palapeli|Bevel effect creates three-dimensional appearance for puzzle pieces.|loehnert.kde@gmx.de|Johannes Loehnert}}<br />
{{FeatureDone|Palapeli|Update libpala API. Improve usability of "Create new puzzle" dialog.|majewsky@gmx.net|Stefan Majewsky}}<br />
{{FeatureDone|Kajongg|Docbook: Describe the basic game, until now I supposed the player already knows how to play Mah Jong.|wolfgang@rohdewald.de|Wolfgang Rohdewald}}<br />
{{FeatureDone|Kajongg|Tiles can be discarded with drag&drop.|wolfgang@rohdewald.de|Wolfgang Rohdewald}}<br />
{{FeatureDone|Kajongg|Make robot player AI more intelligent.|wolfgang@rohdewald.de|Wolfgang Rohdewald}}<br />
{{FeatureDone|Kajongg|Make tiles in the hand larger and the wall tiles smaller for better playability on small screens.|wolfgang@rohdewald.de|Wolfgang Rohdewald}}<br />
{{FeatureDone|Kajongg|Make games suspendable/resumable.|wolfgang@rohdewald.de|Wolfgang Rohdewald}}<br />
{{FeatureDone|Kajongg|Animate moving tiles.|wolfgang@rohdewald.de|Wolfgang Rohdewald}}<br />
{{FeatureDone|Kajongg|Demo mode.|wolfgang@rohdewald.de|Wolfgang Rohdewald}}<br />
{{FeatureDone|Kajongg|Introduce an option to only offer possible actions.|wolfgang@rohdewald.de|Wolfgang Rohdewald}}<br />
{{FeatureTodo|Kajongg|Add more rulesets like other Classical Chinese variants and the international tournament rules.|wolfgang@rohdewald.de|Wolfgang Rohdewald}}<br />
{{FeatureDone|KGoldrunner|Save and restore the current control-mode, keyboard-control option and game-speed settings.|iandw.au@gmail.com|Ian Wadham}}<br />
{{FeatureDone|KGoldrunner|Add a keyboard-mode option to start moving when a direction-key is pressed and stop when it is released. Support multiple keys being pressed.|iandw.au@gmail.com|Ian Wadham}}<br />
{{FeatureDone|Klickety|An adaptation of the "clickomania" game.Rewrite the kde3 version.|shuizhuyuanluo@126.com|Ni Hui}}<br />
{{FeatureDone|Klickety|Merge KSame into Klickety.|shuizhuyuanluo@126.com|Ni Hui}}<br />
{{FeatureDone|Kolf|Port to KGameRenderer, cleanup all QGraphicsView- and physics-related code (and physics engine), incorporate ideas from Kolf-NG.|majewsky@gmx.net|Stefan Majewsky}}<br />
{{FeatureDone|Granatier|Port to KGameRenderer.|k.hias@gmx.de|Mathias Kraus}}<br />
{{FeatureDone|Granatier|Use TagaroAudio for sound.|k.hias@gmx.de|Mathias Kraus}}<br />
{{FeatureDone|Knights|New game: Chess board for KDE4|miha.cancula@gmail.com|Miha Čančula}}<br />
|}<br />
<br />
<br/><br />
<br />
= kdegraphics =<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="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;"<br />
! Status <br />
! Project <br />
! Description <br />
! Contact <br />
{{FeatureDone|gwenview|Simplify photo sharing|agateau@kde.org|Aurélien Gâteau}}<br />
{{FeatureDone|gwenview|Improve resize dialog|agateau@kde.org|Aurélien Gâteau}}<br />
|}<br />
<br />
<br/><br />
<br />
= kdesdk =<br />
<br />
{| cellspa/cing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="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;"<br />
! Status <br />
! Project <br />
! Description <br />
! Contact <br />
{{FeatureTodo|Lokalize|Integrate snowball stemmer for glossary|shafff@NOSPAMukr.net|Nick Shaforostoff}} <br />
{{FeatureTodo|Lokalize|Continue implementing XLIFF spec|shafff@NOSPAMukr.net|Nick Shaforostoff}} <br />
{{FeatureTodo|Lokalize|Segmentation [editing] functionality|shafff@NOSPAMukr.net |Nick Shaforostoff}} <br />
{{FeatureTodo|Lokalize|Remote translation memories|shafff@NOSPAMukr.net|Nick Shaforostoff}} <br />
{{FeatureTodo|Lokalize|Integrate with nepomuk (fast stats retrieval, tag cloud - incl sharing!)|shafff@NOSPAMukr.net|Nick Shaforostoff}} <br />
{{FeatureTodo|Lokalize|loading compressed files and then saving them back in the original compression format (bug 65518)|shafff@NOSPAMukr.net|Nick Shaforostoff}} <br />
{{FeatureTodo|Nepomukshell|New Nepomukshell development tool allowing to browse and debug Nepomuk data|trueg@kde.org|Sebastian Trueg}} <br />
{{FeatureDone|Dolphin|Git plugin|sebastian@sebastian-doerner.de|Sebastian Doerner}} <br />
{{FeatureDone|Kate|GDB plugin|kare.sars@iki.fi|K&aring;re S&auml;rs}} <br />
|}<br />
<br />
<br><br />
<br />
= kdeutils =<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="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;"<br />
! Status <br />
! Project <br />
! Description <br />
! Contact <br />
{{FeatureTodo|Ark|Add a "Preview with..." context menu item|kubito@gmail.com|Raphael Kubo da Costa}}<br />
{{FeatureTodo|Ark|Add an options dialog (maybe)|haraldhv@stud.ntnu.no|Harald Hvaal}}<br />
{{FeatureTodo|Ark|Add feedback for the latest operation in the status bar|kubito@gmail.com|Raphael Kubo da Costa}}<br />
{{FeatureTodo|Ark|Get rid of the Observer code in Kerfuffle|kubito@gmail.com|Raphael Kubo da Costa}}<br />
{{FeatureTodo|Ark|Make error reporting work as expected in Kerfuffle|kubito@gmail.com|Raphael Kubo da Costa}}<br />
{{FeatureTodo|Ark|Make Kerfuffle really thread-safe (and use threads in less places)|kubito@gmail.com|Raphael Kubo da Costa}}<br />
{{FeatureTodo|Ark|Make the internal previewer optional|kubito@gmail.com|Raphael Kubo da Costa}}<br />
{{FeatureTodo|Ark|Simplify Kerfuffle's API (jobs, interfaces etc) and try to make it stable|kubito@gmail.com|Raphael Kubo da Costa}}<br />
{{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}}<br />
{{FeatureTodo|Ark|Try multiple plugins for each archive type before failing|kubito@gmail.com|Raphael Kubo da Costa}}<br />
{{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}}<br />
{{FeatureTodo|Okteta|Add global toggle option for the offset display, hex or decimal|kossebau@kde.org|Friedrich W. H. Kossebau}} <br />
{{FeatureTodo|Okteta|Add Kate-like combined dialogs to query for actions on files|kossebau@kde.org|Friedrich W. H. Kossebau}}<br />
{{FeatureTodo|Okteta|add Kate-like search tool|kossebau@kde.org|Friedrich W. H. Kossebau}}<br />
{{FeatureTodo|Okteta|Add Okular like embedded notifications|kossebau@kde.org|Friedrich W. H. Kossebau}}<br />
{{FeatureTodo|Okteta|add support for import by drop, both url and data|kossebau@kde.org|Friedrich W. H. Kossebau}}<br />
{{FeatureTodo|Okteta|add support for memory mapping of files and 64-bit addressing|kossebau@kde.org|Friedrich W. H. Kossebau}}<br />
{{FeatureTodo|Okteta|add support for jobs like io, printing, string search or filter|kossebau@kde.org|Friedrich W. H. Kossebau}}<br />
{{FeatureTodo|Okteta|Add view profiles, incl. editor/manager|kossebau@kde.org|Friedrich W. H. Kossebau}}<br />
{{FeatureTodo|Okteta|copy again puts also a value or char variant of the data to clipboard|kossebau@kde.org|Friedrich W. H. Kossebau}}<br />
{{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}}<br />
{{FeatureTodo|Okteta|Make all user interaction in the KastenCore managers plugin-based|kossebau@kde.org|Friedrich W. H. Kossebau}}<br />
{{FeatureTodo|Okteta|Merge row and column widgets into one|kossebau@kde.org|Friedrich W. H. Kossebau}}<br />
{{FeatureTodo|Okteta|Store bookmarks|kossebau@kde.org|Friedrich W. H. Kossebau}}<br />
{{FeatureTodo|Okteta|Store bookmarks and other view settings for next load|kossebau@kde.org|Friedrich W. H. Kossebau}}<br />
{{FeatureTodo|printer-applet|Restore feature parity with KDEPrint3 where possible.||Jonathon Riddell, John Layt}} <br />
{{FeatureTodo|Okteta|Add view profiles|kossebau@kde.org|Friedrich W. H. Kossebau}} <br />
{{FeatureTodo|KGpg|Better workflow to edit encrypted files|kde@opensource.sf-tec.de|Rolf Eike Beer}} <br />
|}<br />
<br />
<br><br />
<br />
= kdepim =<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="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;"<br />
! Status <br />
! Project <br />
! Description <br />
! Contact <br />
{{FeatureInProgress|Kontact|Plasma-based Summary Page|ry@n.rix.si|Ryan Rix}}<br />
{{FeatureInProgress|KHolidays|Add support for holiday types and day-off types.|john@layt.net|John Layt}}<br />
{{FeatureInProgress|KHolidays|Holiday Region selection widget.|john@layt.net|John Layt}}<br />
{{FeatureDone|KHolidays|Holiday duration api.|john@layt.net|John Layt}}<br />
{{FeatureDone|KHolidays|Default Holiday Region api.|john@layt.net|John Layt}}<br />
{{FeatureInProgress|KAlarm|Port to Akonadi|djarvie@kde.org|David Jarvie}}<br />
{{FeatureDone|KAlarm|Option to not notify execution errors for pre-alarm actions|djarvie@kde.org|David Jarvie}}<br />
{{FeatureInProgress|KAlarm|Allow reminders after the main alarm|djarvie@kde.org|David Jarvie}}<br />
{{FeatureInProgress|KAlarm|Provide wake-from-suspend option for alarms|djarvie@kde.org|David Jarvie}}<br />
|}<br />
<br/><br />
<br />
= kdeaccessibility =<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="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;"<br />
! Status <br />
! Project <br />
! Description <br />
! Contact <br />
{{FeatureDone|KAccessible|Added a dbus-service and a QAccessibleBridgePlugin for focus tracking (used in KMagnifier and the KWin zoom plugin).|mail@dipe.org|Sebastian Sauer}}<br />
{{FeatureDone|KMagnifier|Follow Focus Mode for Focus Tracking (uses kaccessible).|mail@dipe.org|Sebastian Sauer}}<br />
{{FeatureDone|KAccessible|Added Screenreader (uses speech-dispatcher)|mail@dipe.org|Sebastian Sauer}}<br />
|}<br />
<br />
<br><br />
= kdeartwork =<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="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;"<br />
! Status <br />
! Project <br />
! Description <br />
! Contact <br />
{{FeatureDone|KDE Asciiquarium|Added a new ASCII sprite (a submarine). Contributed by Ryan Meldrum.|mpyne@kde.org.|Michael Pyne}}<br />
|}<br />
<br />
<br><br />
= kdeplasma-addons =<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="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;"<br />
! Status <br />
! Project <br />
! Description <br />
! Contact <br />
{{FeatureDone|Shelf|Automatic sizing of the popup|ivan.cukic@kde.org|Ivan Čukić}}<br />
{{FeatureDone|Shelf|Setting a custom popup icon|ivan.cukic@kde.org|Ivan Čukić}}<br />
{{FeatureTodo|Shelf|Cascading popup menus for folders|ivan.cukic@kde.org|Ivan Čukić}}<br />
{{FeatureDone|Shelf|Keyboard navigation|ivan.cukic@kde.org|Ivan Čukić}}<br />
{{FeatureDone|Shelf|Search completion|ivan.cukic@kde.org|Ivan Čukić}}<br />
{{FeatureInProgress|libLancelot-datamodels|Akonadi integration|ivan.cukic@kde.org|Ivan Čukić}}<br />
{{FeatureTodo|libLancelot-datamodels|Folder contents sorting|ivan.cukic@kde.org|Ivan Čukić}}<br />
{{FeatureInProgress|Lancelot|Theme improvements, animations|ivan.cukic@kde.org|Ivan Čukić}}<br />
{{FeatureDone|Events Runner|Event search|alexey.noskov@gmail.com|Alexey Noskov}}<br />
{{FeatureDone|Comic plasmoid|Per comic max cache limit|mat69@gmx.net|Matthias Fuchs}}<br />
{{FeatureDone|Comic plasmoid|Change behaviour when comic can't be found|mat69@gmx.net|Matthias Fuchs}}<br />
{{FeatureDone|GroupingDesktop|Added two desktop containments and a panel containment with applet grouping support|giuliocamuffo@gmail.com|Giulio Camuffo}}<br />
|}<br />
<br />
<br><br />
<br />
= kdenetwork =<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="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;"<br />
! Status <br />
! Project <br />
! Description <br />
! Contact <br />
{{FeatureDone|krfb|Refactor Core to make it more maintainable/extensible|grundleborg@googlemail.com.|George Goldberg}}<br />
{{FeatureDone|krfb|Telepathy Tubes support|grundleborg@googlemail.com.|George Goldberg}}<br />
{{FeatureDone|krfb|UI Improvements to support new features/deal with some existing bug reports|grundleborg@googlemail.com.|George Goldberg}}<br />
{{FeatureTodo|kget|Log for transfers|l.appelhans@gmx.de|Lukas Appelhans}}<br />
|}</div>Tgridelhttps://community.kde.org/index.php?title=KDEEdu&diff=8063KDEEdu2011-01-02T22:24:17Z<p>Tgridel: /* Git Migration */</p>
<hr />
<div>== Minutes from IRC Meetings ==<br />
KDE Education has regular IRC meetings in #kde-edu. Here are some notes about these as well as developer sprint plans.<br />
<br />
<br />
[[KDEEdu/Meeting20091119IRC|Meeting on IRC, Thursday the 19th of November, 2009]]<br />
<br />
[[KDEEdu/Sprint2010|Sprint in Randa, Switzerland - May 20th to May 25th 2010]]<br />
<br />
[[KDEEdu/Meeting20100608IRC|Meeting on IRC, Tuesday the 8th of June, 2010]]<br />
<br />
<br />
== Projects ==<br />
Application specific work can go here.<br />
<br />
=== Parley ===<br />
[[KDEEdu/Parley/Todo|Parley Todo PracticeNG]] Some thoughts about the next iteration of the practice modes in Parley<br />
<br />
== Git Migration ==<br />
<br />
KDE is moving its SVN repositories to git. In this section we collect the current status of work on the git migration of KDE Edu.<br />
<br />
{|<br />
!App || Dependencies || Status Git Conversion || Status Compilation<br />
|- style="color: red;"<br />
| [http://edu.kde.org/blinken Blinken] || kdeeduui || no feedback yet || no feedback yet<br />
|- style="color: red;"<br />
| [http://edu.kde.org/cantor Cantor] || no feedback yet || no feedback yet || no feedback yet<br />
|- style="color: black;"<br />
| [http://edu.kde.org/kalgebra KAlgebra] || move libanalitza into libkdeedu first or move cantor support into kalgebra || no feedback yet || no feedback yet<br />
|- style="color: green;"<br />
| [http://edu.kde.org/kalzium Kalzium] || libscience has moved to kalzium || ok, history goes back to 2002 || compiles now. r1208940<br />
|- style="color: black;"<br />
| [http://edu.kde.org/kanagram Kanagram] || data, libkeduvocdocument, kdeeduui || no feedback yet || no feedback yet<br />
|- style="color: green;"<br />
| [http://edu.kde.org/kbruch KBruch] || none || ok, log tree goes back till initial import in 2003 || ok, compiles with minor edits to CMakeList.txt<br />
|- style="color: red;"<br />
| [http://edu.kde.org/kgeography KGeography] || no feedback yet || no feedback yet || no feedback yet<br />
|- style="color: black;"<br />
| [http://edu.kde.org/khangman KHangMan] || data, keduvocdocument || ok, log tree goes back till initial import in 2001 || no feedback yet<br />
|- style="color: black;"<br />
| [http://edu.kde.org/kig Kig] || no feedback yet || no feedback yet || no feedback yet<br />
|- style="color: red;"<br />
| [http://edu.kde.org/kiten Kiten] || no feedback yet || no feedback yet || no feedback yet<br />
|- style="color: red;"<br />
| [http://edu.kde.org/klettres KLettres] || no feedback yet || no feedback yet || no feedback yet<br />
|- style="color: red;"<br />
| [http://edu.kde.org/kmplot KmPlot] || no feedback yet || no feedback yet || no feedback yet<br />
|- style="color: red;"<br />
| [http://edu.kde.org/kstars KStars] || no feedback yet || no feedback yet || no feedback yet<br />
|- style="color: red;"<br />
| [http://edu.kde.org/ktouch KTouch] || no feedback yet || no feedback yet || no feedback yet<br />
|- style="color: red;"<br />
| [http://edu.kde.org/kturtle KTurtle] || no feedback yet || no feedback yet || no feedback yet<br />
|- style="color: red;"<br />
| [http://edu.kde.org/kwordquiz KWordQuiz] || no feedback yet || no feedback yet || no feedback yet<br />
|- style="color: orange;"<br />
| [http://edu.kde.org/marble Marble] || none || trunk starts at creation, kde branches and kde tags OK, missing marble tags and branches, content not checked || ok, no changes needed<br />
|- style="color: red;"<br />
| [http://edu.kde.org/parley Parley] || no feedback yet || no feedback yet || no feedback yet<br />
|- style="color: green;"<br />
| [http://edu.kde.org/rocs Rocs] || None || Ok, log tree goes till initial import (2008) || Ok, build/install without any edits<br />
|- style="color: red;"<br />
| [http://edu.kde.org/step Step] || none || no feedback yet || no feedback yet<br />
|- style="color: black;"<br />
|}<br />
<br />
<br />
{|<br />
!current lib || Apps that depend on it || Status Git Conversion || Status Compilation<br />
|-<br />
| libkdeedu/icons/ || no feedback yet || no feedback yet || no feedback yet<br />
|-<br />
| libkdeedu/kdeeduui/ || no feedback yet || no feedback yet || no feedback yet<br />
|-<br />
| libkdeedu/keduvocdocument/ || Kanagram, KHangMan, KWordQuiz, Parley || no feedback yet || no feedback yet<br />
|-<br />
| libkdeedu/libscience/ || moved into kalzium || no feedback yet || no feedback yet<br />
|-<br />
|libkdeedu/qtmmlwidget ||no feedback yet || no feedback yet || no feedback yet<br />
|-<br />
|kalgebra/analitza || kalgebra and cantor (kalgebra backend) || no feedback yet || no feedback yet<br />
|-<br />
|data/ ||Kanagram, KHangMan || common base data for those 2 apps || no feedback yet<br />
|}</div>Tgridelhttps://community.kde.org/index.php?title=Marble/MarbleMeeting20101107&diff=74869Marble/MarbleMeeting201011072010-11-09T18:48:33Z<p>Tgridel: </p>
<hr />
<div>{{Template:I18n/Language Navigation Bar|Projects/Marble}}<br />
<br />
[[Image:Marble_logo.png]]<br />
<br />
== Marble Weekend Sprint ==<br />
<br />
== Slides ==<br />
* Routing in Marble [http://www.slideshare.net/marbleglobe/marble-routing (slideshare)] [http://nienhueser.de/marble/nuernberg/Marble-Routing.pdf (pdf)]<br />
* State of the GeoData [http://www.slideshare.net/marbleglobe/state-of-the-geodata (slideshare)]<br />
* Marble on Mac [http://www.slideshare.net/marbleglobe/marble-on-mac (slideshare)] [http://up.frubar.net/340/marble_on_mac.pdf (pdf)]<br />
<br />
== Videos ==<br />
* [http://blip.tv/file/4348928 Alternative Routes in Marble]<br />
* [http://blip.tv/file/4348942 Offline Routing in Marble]<br />
* [http://blip.tv/file/4348946 Route Guidance Mode in Marble on the Nokia N900]<br />
<br />
== Discussion ==<br />
;[[/MarbleVector Data|Vector Data]]<br />
<br />
;[[/MarbleUIImprovements|UI Improvements]]<br />
<br />
;[[/MarbleUIImprovements|More Maps]]<br />
<br />
;[[/MarbleAPIReview|API Review]]<br />
<br />
;[[/MarbleMarketing|Marketing]]</div>Tgridelhttps://community.kde.org/index.php?title=Multimedia/MarbleWeekend&diff=6058Multimedia/MarbleWeekend2010-11-04T18:12:24Z<p>Tgridel: /* Program */</p>
<hr />
<div>= 1st Marble Developer Weekend Sprint, Nov. 5-7 2010 =<br />
<br />
We'd like to invite all people who are interested in Marble Development: may <br />
it be through coding, graphics design, promotion, packaging, documentation, <br />
website or other areas.<br />
You have an interesting story to tell about Marble? You'd like to make Marble <br />
a great educational tool? You've built some software based on Marble? You're a <br />
Marble newbie and you'd like to get involved with KDE-EDU or Marble <br />
development? You dream of Navigation and Routing with Marble? -- We'd like to <br />
see you at the sprint!<br />
<br />
The Marble Weekend Sprint is sponsored by the <b>[http://ev.kde.org KDE e.V.]</b> and <b>[http://www.basyskom.com basysKom]</b>. Thanks a lot for supporting Marble!<br />
<br />
== Dates ==<br />
<br />
The Marble Sprint will be held from November 5h to November 7th, with the following basic schedule: <br />
<br />
*5.11. <i>arrival</i>, starting from 16:00 local time (Friday). We will probably do some quick sight seeing tour in the evening and have dinner together. <br />
*6.11. sprint (Saturday), Lightning talks after noon.<br />
*7.11. sprint (Sunday) and <i>departure</i> starting from 18:00 local time.<br />
<br />
== Location ==<br />
<br />
The Marble Developer Weekend will be held at the <b>[http://www.basyskom.com basysKom] Nuremberg office</b> which is located at <b>Südwestpark</b>.<br />
<br />
http://www.nuernberg.de/internet/portal_e/index.html<br />
<br />
http://www.openstreetmap.org/?mlat=49.42656&mlon=11.01848&zoom=17&layers=M<br />
<br />
<br />
=== How to get there ===<br />
<br />
Nurember is a city in the German state of Bavaria. <br />
There are several ways to reach the sprint location by train or by flight.<br />
<br />
*via the Nuremberg <b>Airport</b>: Take the subway <b>U2</b> (direction "Röthenbach") from the airport to the central railway station (<b>Hauptbahnhof</b>). At the central railway station change into the subway <b>U3</b> (<i>same platform</i>, direction <b>Gustav-Adolf-Platz</b>). At Gustav-Adolf-Platz change into the <b>Bus line 69</b> and leave the bus at the station <b>Südwestpark</b>. If you continue to go straight in the same direction that the bus had when he arrived at the "Südwestpark" then you reach the office within 2 mins of walking. <br />
*via Nuremberg central railway station (<b>Hauptbahnhof</b>):<br />
At the central railway station change into the subway <b>U3</b> (direction <b>Gustav-Adolf-Platz</b>). At Gustav-Adolf-Platz change into the <b>Bus line 69</b> and leave the bus at the station <b>Südwestpark</b>. If you continue to go straight in the same direction that the bus had when he arrived at the "Südwestpark" then you reach the office within 2 mins of walking. <br />
<br />
=== Accomodation ===<br />
<br />
There is the <i>Südwestpark hotel</i> located directly at the sprint location:<br />
<br />
http://www.suedwestpark-hotel.de/frameset.asp?lang=en<br />
<br />
http://www.openstreetmap.org/?mlat=49.42893&mlon=11.0198&zoom=17&layers=M<br />
<br />
In the city center of Nuremberg there are loads of hotels you can choose from. One of the more affordable ones is probably the Motel One which is located very close to the central railway station:<br />
<br />
http://www.motel-one.com/uk/index.html<br />
<br />
http://www.openstreetmap.org/?mlat=49.44708&mlon=11.08751&zoom=17&layers=M<br />
<br />
== Attendees List ==<br />
<br />
The column "Sponsoring needed?" is to know if you need sponsoring from the KDE e.V. or if you pay the travel/stay by yourself. <br />
<br />
<br> <br />
<br />
{| cellspacing="0" cellpadding="5" border="1" class="wikitable"<br />
|- style="color: blue;"<br />
| Name <br />
| email <br />
| Arrival <br />
| Departure <br />
| Airport <br />
| Flight <br />
| Food preferences <br />
| Estimated travel costs <br />
| Sponsoring needed? <br />
| Work <br />
| Special<br />
|-<br />
| Torsten Rahn <br />
| rahn AT kde DOT org <br />
| 5.11. <br />
| 8.11. <br />
| none <br />
| none <br />
| No apples ;-)<br />
| 0 € <br />
| no <br />
| Marble Core Developer <br />
| Event organization<br />
|-<br />
| Dennis Nienhüser<br />
| earthwings AT gentoo DOT org <br />
| 5.11<br />
| 7.11. <br />
| none <br />
| none <br />
| none<br />
| fuel from/to Karlsruhe and Hotel<br />
| no<br />
| Routing, Maemo<br />
| <br />
|-<br />
|Thibaut Gridel<br />
|tgridel AT free DOT fr<br />
|5.11<br />
|7.11<br />
|NUE<br />
|TBC<br />
|any<br />
|175 € + hotel<br />
|yes<br />
|GeoData, Gps track<br />
|<br />
|-<br />
|Jens-Michael Hoffmann<br />
|jensmh@gmx.de<br />
|5.11<br />
|7.11<br />
|none<br />
|none<br />
|none<br />
|200 €<br />
|yes<br />
|Tile loading, blending<br />
|<br />
|-<br />
|Bernhard Beschow<br />
|bbeschow AT cs TU berlin DE<br />
|5.11<br />
|7.11<br />
|none<br />
|none<br />
|none<br />
|93 € + hotel<br />
|yes<br />
|OpenGL, Custom Maps, API-Design<br />
|<br />
|-<br />
|Sebastian Wiedenroth<br />
|wiedi@frubar.net<br />
|5.11<br />
|7.11<br />
|none<br />
|none<br />
|none<br />
|fuel from/to lindau + hotel<br />
|no<br />
|Mac Packaging<br />
|<br />
|-<br />
|Niko Sams<br />
|niko.sams AT gmail.com<br />
|5.11<br />
|7.11<br />
|none<br />
|none<br />
|none<br />
|78 € + hotel<br />
|yes<br />
|Routing<br />
|<br />
|-<br />
|John Layt<br />
|john@layt.net<br />
|5.11<br />
|7.11<br />
|Nuremberg<br />
|AB8461 10:25<br />
|none<br />
|€183.90 + hotel<br />
|yes<br />
|Vector maps, stack integration<br />
|<br />
|+44-78-1285-2010<br />
-<br />
|}<br />
<br />
= Program =<br />
<br />
<br />
<b>Friday: 05.11.2010</b><br />
<br />
15:00-18:00 Arrival at the basysKom office<br />
<br />
21:00 Meeting at the Barfüßer<br />
<br />
http://www.barfuesser-nuernberg.de/<br />
<br />
http://www.openstreetmap.org/?lat=49.44881&lon=11.07987&zoom=17&layers=M<br />
<br />
<br />
<b>Saturday: 06.11.2010</b><br />
<br />
Starting at 9:00 We'll have a set of short presentations:<br />
<br />
- "Let's get the Marble rolling ...", Torsten Rahn<br />
- Routing, Dennis Nienhüser<br />
- "State of the Geodata", Thibaut Gridel<br />
- OpenGL and Marble, Bernhard Beschow<br />
- Qt Mobility and Marble, John Layt<br />
- Marble on Mac, Sebastian Wiedenroth<br />
<br />
13:00 Lunch <br />
<br />
- Workshops, coding and discussions<br />
<br />
In the evening: Dinner<br />
<br />
<br />
<b>Sunday: 07.11.2010</b><br />
<br />
- Coding and discussions<br />
<br />
13:00 Lunch<br />
<br />
- Summary, press release preparation<br />
<br />
<br />
In the evening: Departure<br />
<br />
= Topics =<br />
<br />
To be discussed:<br />
Since we will only have little time available for presentations and workshops we thought about having some short <b>lightning talks</b> on saturday or sunday.<br />
<br />
Feel free to make suggestions.<br />
State of :<br />
- MeeGo, MeeGo Touch/Maemo UI and port (Marble Mobile).<br />
- Qt Mobility and Marble<br />
- UI (desktop/small devices)<br />
- Routing<br />
- OpenGL<br />
- Marble on Mac<br />
<br />
- Tiles<br />
- GeoPainter / drawing<br />
- GeoData / ModelView<br />
- Plugin APIs<br />
- Architecture/Design/APIs<br />
- Coding Style<br />
- Maps: Natural Earth</div>Tgridelhttps://community.kde.org/index.php?title=Multimedia/MarbleWeekend&diff=4916Multimedia/MarbleWeekend2010-09-04T22:51:24Z<p>Tgridel: /* Topics */</p>
<hr />
<div>= 1st Marble Developer Weekend Sprint, Nov. 5-7 2010 =<br />
<br />
We'd like to invite all people who are interested in Marble Development: may <br />
it be through coding, graphics design, promotion, packaging, documentation, <br />
website or other areas.<br />
You have an interesting story to tell about Marble? You'd like to make Marble <br />
a great educational tool? You've built some software based on Marble? You're a <br />
Marble newbie and you'd like to get involved with KDE-EDU or Marble <br />
development? You dream of Navigation and Routing with Marble? -- We'd like to <br />
see you at the sprint!<br />
<br />
== Dates ==<br />
<br />
The Marble Sprint will be held from November 5h to November 7th, with the following basic schedule: <br />
<br />
*5.11. <i>arrival</i>, starting from 16:00 local time (Friday). We will probably do some quick sight seeing tour in the evening and have dinner together. <br />
*6.11. sprint (Saturday), Lightning talks after noon.<br />
*7.11. sprint (Sunday) and <i>departure</i> starting from 18:00 local time.<br />
<br />
== Location ==<br />
<br />
The Marble Developer Weekend will be held at the <b>[http://www.basyskom.com basysKom] Nuremberg office</b> which is located at <b>Südwestpark</b>.<br />
<br />
http://www.nuernberg.de/internet/portal_e/index.html<br />
<br />
http://www.openstreetmap.org/?lat=49.42653&lon=11.01821&zoom=17&layers=M<br />
<br />
<br />
=== How to get there ===<br />
<br />
Nurember is a city in the German state of Bavaria. <br />
There are several ways to reach the sprint location by train or by flight.<br />
<br />
*via the Nuremberg <b>Airport</b>: Take the subway <b>U2</b> (direction "Röthenbach") from the airport to the central railway station (<b>Hauptbahnhof</b>). At the central railway station change into the subway <b>U3</b> (<i>same platform</i>, direction <b>Gustav-Adolf-Platz</b>). At Gustav-Adolf-Platz change into the <b>Bus line 69</b> and leave the bus at the station <b>Südwestpark</b>. If you continue to go straight in the same direction that the bus had when he arrived at the "Südwestpark" then you reach the office within 2 mins of walking. <br />
*via Nuremberg central railway station (<b>Hauptbahnhof</b>):<br />
At the central railway station change into the subway <b>U3</b> (direction <b>Gustav-Adolf-Platz</b>). At Gustav-Adolf-Platz change into the <b>Bus line 69</b> and leave the bus at the station <b>Südwestpark</b>. If you continue to go straight in the same direction that the bus had when he arrived at the "Südwestpark" then you reach the office within 2 mins of walking. <br />
<br />
=== Accomodation ===<br />
<br />
There is the <i>Südwestpark hotel</i> located directly at the sprint location:<br />
<br />
http://www.suedwestpark-hotel.de/frameset.asp?lang=en<br />
<br />
http://www.openstreetmap.org/?lat=49.42893&lon=11.0198&zoom=17&layers=M<br />
<br />
In the city center of Nuremberg there are loads of hotels you can choose from. One of the more affordable ones is probably the Motel One which is located very close to the central railway station:<br />
<br />
http://www.motel-one.com/uk/index.html<br />
<br />
== Attendees List ==<br />
<br />
The column "Sponsoring needed?" is to know if you need sponsoring from the KDE e.V. or if you pay the travel/stay by yourself. <br />
<br />
<br> <br />
<br />
{| cellspacing="0" cellpadding="5" border="1" class="wikitable"<br />
|- style="color: blue;"<br />
| Name <br />
| email <br />
| Arrival <br />
| Departure <br />
| Airport <br />
| Flight <br />
| Food preferences <br />
| Estimated travel costs <br />
| Sponsoring needed? <br />
| Work <br />
| Special<br />
|-<br />
| Torsten Rahn <br />
| rahn AT kde DOT org <br />
| 5.11. <br />
| 8.11. <br />
| none <br />
| none <br />
| No apples ;-)<br />
| 0 € <br />
| no <br />
| Marble Core Developer <br />
| Event organization<br />
|-<br />
| Dennis Nienhüser<br />
| earthwings AT gentoo DOT org <br />
| 5.11./6.11 (not sure yet)<br />
| 7.11. <br />
| none <br />
| none <br />
| none<br />
| fuel from/to Karlsruhe and Hotel<br />
| no<br />
| Routing, Maemo<br />
| Yeah, I'm special :-P<br />
|-<br />
|Thibaut Gridel<br />
|tgridel AT free DOT fr<br />
|5.11<br />
|7.11<br />
|NUE<br />
|TBC<br />
|any<br />
|175 € + hotel<br />
|yes<br />
|GeoData, Gps track<br />
|<br />
|-<br />
|}<br />
<br />
= Topics =<br />
<br />
To be discussed:<br />
Since we will only have little time available for presentations and workshops we thought about having some short <b>lightning talks</b> on saturday or sunday.<br />
<br />
Feel free to make suggestions.<br />
State of :<br />
- Tiles<br />
- GeoPainter / drawing<br />
- GeoData / ModelView<br />
- Routing<br />
- UI (desktop/small devices)<br />
- Plugin APIs</div>Tgridelhttps://community.kde.org/index.php?title=Multimedia/MarbleWeekend&diff=4915Multimedia/MarbleWeekend2010-09-04T22:50:13Z<p>Tgridel: </p>
<hr />
<div>= 1st Marble Developer Weekend Sprint, Nov. 5-7 2010 =<br />
<br />
We'd like to invite all people who are interested in Marble Development: may <br />
it be through coding, graphics design, promotion, packaging, documentation, <br />
website or other areas.<br />
You have an interesting story to tell about Marble? You'd like to make Marble <br />
a great educational tool? You've built some software based on Marble? You're a <br />
Marble newbie and you'd like to get involved with KDE-EDU or Marble <br />
development? You dream of Navigation and Routing with Marble? -- We'd like to <br />
see you at the sprint!<br />
<br />
== Dates ==<br />
<br />
The Marble Sprint will be held from November 5h to November 7th, with the following basic schedule: <br />
<br />
*5.11. <i>arrival</i>, starting from 16:00 local time (Friday). We will probably do some quick sight seeing tour in the evening and have dinner together. <br />
*6.11. sprint (Saturday), Lightning talks after noon.<br />
*7.11. sprint (Sunday) and <i>departure</i> starting from 18:00 local time.<br />
<br />
== Location ==<br />
<br />
The Marble Developer Weekend will be held at the <b>[http://www.basyskom.com basysKom] Nuremberg office</b> which is located at <b>Südwestpark</b>.<br />
<br />
http://www.nuernberg.de/internet/portal_e/index.html<br />
<br />
http://www.openstreetmap.org/?lat=49.42653&lon=11.01821&zoom=17&layers=M<br />
<br />
<br />
=== How to get there ===<br />
<br />
Nurember is a city in the German state of Bavaria. <br />
There are several ways to reach the sprint location by train or by flight.<br />
<br />
*via the Nuremberg <b>Airport</b>: Take the subway <b>U2</b> (direction "Röthenbach") from the airport to the central railway station (<b>Hauptbahnhof</b>). At the central railway station change into the subway <b>U3</b> (<i>same platform</i>, direction <b>Gustav-Adolf-Platz</b>). At Gustav-Adolf-Platz change into the <b>Bus line 69</b> and leave the bus at the station <b>Südwestpark</b>. If you continue to go straight in the same direction that the bus had when he arrived at the "Südwestpark" then you reach the office within 2 mins of walking. <br />
*via Nuremberg central railway station (<b>Hauptbahnhof</b>):<br />
At the central railway station change into the subway <b>U3</b> (direction <b>Gustav-Adolf-Platz</b>). At Gustav-Adolf-Platz change into the <b>Bus line 69</b> and leave the bus at the station <b>Südwestpark</b>. If you continue to go straight in the same direction that the bus had when he arrived at the "Südwestpark" then you reach the office within 2 mins of walking. <br />
<br />
=== Accomodation ===<br />
<br />
There is the <i>Südwestpark hotel</i> located directly at the sprint location:<br />
<br />
http://www.suedwestpark-hotel.de/frameset.asp?lang=en<br />
<br />
http://www.openstreetmap.org/?lat=49.42893&lon=11.0198&zoom=17&layers=M<br />
<br />
In the city center of Nuremberg there are loads of hotels you can choose from. One of the more affordable ones is probably the Motel One which is located very close to the central railway station:<br />
<br />
http://www.motel-one.com/uk/index.html<br />
<br />
== Attendees List ==<br />
<br />
The column "Sponsoring needed?" is to know if you need sponsoring from the KDE e.V. or if you pay the travel/stay by yourself. <br />
<br />
<br> <br />
<br />
{| cellspacing="0" cellpadding="5" border="1" class="wikitable"<br />
|- style="color: blue;"<br />
| Name <br />
| email <br />
| Arrival <br />
| Departure <br />
| Airport <br />
| Flight <br />
| Food preferences <br />
| Estimated travel costs <br />
| Sponsoring needed? <br />
| Work <br />
| Special<br />
|-<br />
| Torsten Rahn <br />
| rahn AT kde DOT org <br />
| 5.11. <br />
| 8.11. <br />
| none <br />
| none <br />
| No apples ;-)<br />
| 0 € <br />
| no <br />
| Marble Core Developer <br />
| Event organization<br />
|-<br />
| Dennis Nienhüser<br />
| earthwings AT gentoo DOT org <br />
| 5.11./6.11 (not sure yet)<br />
| 7.11. <br />
| none <br />
| none <br />
| none<br />
| fuel from/to Karlsruhe and Hotel<br />
| no<br />
| Routing, Maemo<br />
| Yeah, I'm special :-P<br />
|-<br />
|Thibaut Gridel<br />
|tgridel AT free DOT fr<br />
|5.11<br />
|7.11<br />
|NUE<br />
|TBC<br />
|any<br />
|175 € + hotel<br />
|yes<br />
|GeoData, Gps track<br />
|<br />
|-<br />
|}<br />
<br />
= Topics =<br />
<br />
To be discussed:<br />
Since we will only have little time available for presentations and workshops we thought about having some short <b>lightning talks</b> on saturday or sunday.<br />
<br />
Feel free to make suggestions.<br />
State of :<br />
- Tiles<br />
- GeoPainter / drawing<br />
- GeoData / ModelView<br />
- Routing<br />
- UI (desktop/small devices)<br />
- Plugin APIs</div>Tgridelhttps://community.kde.org/index.php?title=Schedules/KDE4/4.6_Feature_Plan&diff=50941Schedules/KDE4/4.6 Feature Plan2010-08-16T22:12:38Z<p>Tgridel: </p>
<hr />
<div>This is a list of planned features for the SC 4.6 release. <br />
<br />
See also: <br />
<br />
*[[Schedules/KDE4/4.6 Release Schedule]] <br />
*[[Schedules/KDE4/4.6 Release Goals]] <br />
*[[Schedules/KDE4/4.5 Feature Plan]]<br />
<br />
<br> Legend: <br />
<br />
*todo =&gt; not started yet <br />
*in-progress =&gt; started, but not completed yet <br />
*done =&gt; completed<br />
<br />
__TOC__ <br />
<br />
<br><br />
<br />
= kdebase-apps =<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="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;"<br />
! Status <br />
! Project <br />
! Description <br />
! Contact <br />
{{FeatureInProgress|Konsole|Move to KTabWidget|sasch.pe@gmx.de|Sascha Peilicke}}<br />
|}<br />
<br />
<br><br />
<br />
= kdebase-runtime =<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="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;"<br />
! Status <br />
! Project <br />
! Description <br />
! Contact <br />
{{FeatureTodo|Plasma|Plasma KPart|ry@n.rix.si|Ryan Rix}}<br />
{{FeatureDone|KWin|Focus tracking for the zoom plugin|mail@dipe.org|Sebastian Sauer}}<br />
{{FeatureDone|KWin|Extend mouse tracking modes for the zoom plugin|mail@dipe.org|Sebastian Sauer}}<br />
|}<br />
<br />
<br><br />
<br />
= kdelibs =<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="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;"<br />
! Status <br />
! Project <br />
! Description <br />
! Contact <br />
{{FeatureTodo|kdeui|Generic find bar widget|sasch.pe@gmx.de|Sascha Peilicke}}<br />
{{FeatureDone|katepart|scripted actions|dhaumann@kde.org|Dominik Haumann}}<br />
{{FeatureDone|libplasma|PluginLoader class|ry@n.rix.si|Ryan Rix}}<br />
|}<br />
<br />
<br><br />
<br />
= kdeedu =<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="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;"<br />
! Status <br />
! Project <br />
! Description <br />
! Contact <br />
{{FeatureTodo|Marble|GPX import of routes|earthwings@gentoo.org|Dennis Nienhüser}}<br />
{{FeatureTodo|Marble|Route printing (map and directions, configurabe)|earthwings@gentoo.org|Dennis Nienhüser}}<br />
{{FeatureTodo|Marble|Route state saving and restoring|earthwings@gentoo.org|Dennis Nienhüser}}<br />
{{FeatureDone|Marble|Convert MarbleRunners to plugins|earthwings@gentoo.org|Dennis Nienhüser}}<br />
{{FeatureDone|Marble|worldwide and offline routing|earthwings@gentoo.org|Dennis Nienhüser}}<br />
{{FeatureDone|Marble|Extend MarbleRunner interface to handle reverse geocoding and routing requests; Display of alternative routes|earthwings@gentoo.org|Dennis Nienhüser}}<br />
{{FeatureTodo|Marble|Routing API|earthwings@gentoo.org|Dennis Nienhüser}}<br />
{{FeatureInProgress|Marble|Implement sun locator blendings as derived classes of Marble::Blending|jmho@c-xx.com|Jens-Michael Hoffmann}}<br />
{{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}}<br />
{{FeatureTodo|Marble|Tile loading "read ahead" when idle, prerequisite: threaded tile loading|jmho@c-xx.com|Jens-Michael Hoffmann}}<br />
{{FeatureDone|Marble|Tile download along the route for offline usage|akssps011@gmail.com|Siddharth Srivastavah}}<br />
{{FeatureInProgress|Marble|Turn-by-turn navigation mode|akssps011@gmail.com|Siddharth Srivastavah}}<br />
{{FeatureTodo|Marble|Multi threaded texture mapping|jmho@c-xx.com|Jens-Michael Hoffmann}}<br />
{{FeatureDone|Marble|Improve GeoData API|tgridel@freedotfr|Thibaut Gridel}}<br />
{{FeatureDone|Marble|Convert Gps tracking to GeoDataDocument|tgridel@freedotfr|Thibaut Gridel}}<br />
{{FeatureDone|Marble|Provide a treeModel for GeoDataDocuments|tgridel@freedotfr|Thibaut Gridel}}<br />
{{FeatureDone|Marble|Draw the geometries of multiple GeoDataDocuments|tgridel@freedotfr|Thibaut Gridel}}<br />
{{FeatureInProgress|Marble|Load Pnt vector data files as GeoData|tgridel@freedotfr|Thibaut Gridel}}<br />
{{FeatureInProgress|Marble|Manipulate Gps track data|tgridel@freedotfr|Thibaut Gridel}}<br />
{{FeatureDone|Cantor|Backend for GNU Octave|miha.cancula@gmail.com|Miha Čančula}}<br />
|}<br />
<br />
<br><br />
<br />
= kdemultimedia =<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="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;"<br />
! Status <br />
! Project <br />
! Description <br />
! Contact <br />
{{FeatureTodo|JuK|Remove Qt/KDE3 support lib requirements|mpyne@kde.org|Michael Pyne}}<br />
{{FeatureTodo|JuK|Allow setting covers directly from URLs supported by KIO - drag/drop already allows this however|mpyne@kde.org|Michael Pyne}}<br />
{{FeatureTodo|JuK|Add MPRIS support to JuK so that the NowPlaying applet doesn't need to special-case JuK.|mpyne@kde.org|Michael Pyne}}<br />
{{FeatureTodo|JuK|Update JuK's MusicBrainz support to a modern version of MusicBrainz.|mpyne@kde.org|Michael Pyne}}<br />
<br />
|}<br />
<br />
<br/><br />
<br />
= kdegames =<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="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;"<br />
! Status <br />
! Project <br />
! Description <br />
! Contact <br />
{{FeatureInProgress|libkdegames|Import KGameRenderer framework and port games to this unified rendering infrastructure.|majewsky@gmx.net|Stefan Majewsky}}<br />
{{FeatureInProgress|Kigo|Fix KNewStuff provider issues|sasch.pe@gmx.de|Sascha Peilicke}}<br />
{{FeatureInProgress|Palapeli|Import Goldberg slicer as the new default slicer plugin.|loehnert.kde@gmx.de|Johannes Loehnert}}<br />
{{FeatureTodo|Palapeli|Update libpala API. Improve usability of "Create new puzzle" dialog.|majewsky@gmx.net|Stefan Majewsky}}<br />
|}<br />
<br />
<br/><br />
<br />
= kdesdk =<br />
<br />
{| cellspa/cing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="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;"<br />
! Status <br />
! Project <br />
! Description <br />
! Contact <br />
{{FeatureTodo|Lokalize|Integrate snowball stemmer for glossary|shafff@NOSPAMukr.net|Nick Shaforostoff}} <br />
{{FeatureTodo|Lokalize|Continue implementing XLIFF spec|shafff@NOSPAMukr.net|Nick Shaforostoff}} <br />
{{FeatureTodo|Lokalize|Segmentation [editing] functionality|shafff@NOSPAMukr.net |Nick Shaforostoff}} <br />
{{FeatureTodo|Lokalize|Remote translation memories|shafff@NOSPAMukr.net|Nick Shaforostoff}} <br />
{{FeatureTodo|Lokalize|Integrate with nepomuk (fast stats retrieval, tag cloud - incl sharing!)|shafff@NOSPAMukr.net|Nick Shaforostoff}} <br />
{{FeatureTodo|Lokalize|loading compressed files and then saving them back in the original compression format (bug 65518)|shafff@NOSPAMukr.net|Nick Shaforostoff}} <br />
|}<br />
<br />
<br><br />
<br />
= kdeutils =<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="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;"<br />
! Status <br />
! Project <br />
! Description <br />
! Contact <br />
{{FeatureTodo|Ark|Add a "Preview with..." context menu item|kubito@gmail.com|Raphael Kubo da Costa}}<br />
{{FeatureTodo|Ark|Add an options dialog (maybe)|haraldhv@stud.ntnu.no|Harald Hvaal}}<br />
{{FeatureTodo|Ark|Add feedback for the latest operation in the status bar|kubito@gmail.com|Raphael Kubo da Costa}}<br />
{{FeatureTodo|Ark|Get rid of the Observer code in Kerfuffle|kubito@gmail.com|Raphael Kubo da Costa}}<br />
{{FeatureTodo|Ark|Make error reporting work as expected in Kerfuffle|kubito@gmail.com|Raphael Kubo da Costa}}<br />
{{FeatureTodo|Ark|Make Kerfuffle really thread-safe (and use threads in less places)|kubito@gmail.com|Raphael Kubo da Costa}}<br />
{{FeatureTodo|Ark|Make the internal previewer optional|kubito@gmail.com|Raphael Kubo da Costa}}<br />
{{FeatureTodo|Ark|Simplify Kerfuffle's API (jobs, interfaces etc) and try to make it stable|kubito@gmail.com|Raphael Kubo da Costa}}<br />
{{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}}<br />
{{FeatureTodo|Ark|Try multiple plugins for each archive type before failing|kubito@gmail.com|Raphael Kubo da Costa}}<br />
{{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}}<br />
{{FeatureTodo|Okteta|Add global toggle option for the offset display, hex or decimal|kossebau@kde.org|Friedrich W. H. Kossebau}} <br />
{{FeatureTodo|Okteta|Add Kate-like combined dialogs to query for actions on files|kossebau@kde.org|Friedrich W. H. Kossebau}}<br />
{{FeatureTodo|Okteta|add Kate-like search tool|kossebau@kde.org|Friedrich W. H. Kossebau}}<br />
{{FeatureTodo|Okteta|Add Okular like embedded notifications|kossebau@kde.org|Friedrich W. H. Kossebau}}<br />
{{FeatureTodo|Okteta|add support for import by drop, both url and data|kossebau@kde.org|Friedrich W. H. Kossebau}}<br />
{{FeatureTodo|Okteta|add support for memory mapping of files and 64-bit addressing|kossebau@kde.org|Friedrich W. H. Kossebau}}<br />
{{FeatureTodo|Okteta|add support for jobs like io, printing, string search or filter|kossebau@kde.org|Friedrich W. H. Kossebau}}<br />
{{FeatureTodo|Okteta|Add view profiles, incl. editor/manager|kossebau@kde.org|Friedrich W. H. Kossebau}}<br />
{{FeatureTodo|Okteta|copy again puts also a value or char variant of the data to clipboard|kossebau@kde.org|Friedrich W. H. Kossebau}}<br />
{{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}}<br />
{{FeatureTodo|Okteta|Make all user interaction in the KastenCore managers plugin-based|kossebau@kde.org|Friedrich W. H. Kossebau}}<br />
{{FeatureTodo|Okteta|Merge row and column widgets into one|kossebau@kde.org|Friedrich W. H. Kossebau}}<br />
{{FeatureTodo|Okteta|Store bookmarks|kossebau@kde.org|Friedrich W. H. Kossebau}}<br />
{{FeatureTodo|Okteta|Store bookmarks and other view settings for next load|kossebau@kde.org|Friedrich W. H. Kossebau}}<br />
{{FeatureTodo|printer-applet|Restore feature parity with KDEPrint3 where possible.||Jonathon Riddell, John Layt}} <br />
{{FeatureTodo|Okteta|Add view profiles|kossebau@kde.org|Friedrich W. H. Kossebau}} <br />
|}<br />
<br />
<br><br />
<br />
= kdepim =<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="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;"<br />
! Status <br />
! Project <br />
! Description <br />
! Contact <br />
{{FeatureInProgress|Kontact|Plasma-based Summary Page|ry@n.rix.si|Ryan Rix}}<br />
|}<br />
<br />
<br/></div>Tgridelhttps://community.kde.org/index.php?title=Marble/GPXStatus&diff=74384Marble/GPXStatus2010-08-15T00:00:20Z<p>Tgridel: </p>
<hr />
<div>==Gpx Status== <br />
This page is intended to be a reference as to the current GPX implementation in Marble.<br />
<br />
===GeoData Binding===<br />
Here is the current binding of Gpx tags to Geodata model classes:<br />
{| border="1"<br />
! Tag !! Class<br />
|-<br />
| gpx || GeoDataDocument<br />
|-<br />
| trk || GeoDataMultiGeometry in a GeoDataPlacemark<br />
|-<br />
| trkseg || GeoDataLineString<br />
|-<br />
| trkpt || GeoDataCoordinates<br />
|-<br />
| wpt || GeoDataPlacemark<br />
|-<br />
| name || GeoDataPlacemark::name<br />
|-<br />
| ||<br />
|}<br />
<br />
===Todo===<br />
*Remove Gpx specific Loading in MarbleModel and above (in progress)<br />
*Complete geodata parser for GPX file type<br />
*Improve rendering from the current rendering of GeoDataDocuments</div>Tgridelhttps://community.kde.org/index.php?title=Marble/ModelView&diff=74402Marble/ModelView2010-08-14T23:55:46Z<p>Tgridel: </p>
<hr />
<div>= ModelView framework in Marble =<br />
<br />
Marble uses Qt's Model/View framework as a way to signal updates to a model to interested parts. In that respect, a Model class can wrap any possible data.<br />
<br />
The multiple models in Marble each fit the purpose of feeding some GeoData classes to interested widgets. The way those models are fed could be improved however:<br />
<br />
== Model and Data Location ==<br />
<br />
* At the moment, each Model contains the list/vector/tree of data it presents. This is not a problem per se, unless all those models present the same data, and retain their own copies. We should ensure that we do not make copies of data throughout models, but use pointers to the same data instead.<br />
<br />
The solution to this is twofold: <br />
** keep data unique in one store (wherever that is, a Model class or a list in one Manager)<br />
** Try and manipulate references to the data in the Models in such a case: with one change to the central data, multiple models can be notified and each react differently for the views they feed. <br />
<br />
== Model or not Model ==<br />
<br />
* The Model-View framework is designed to hide the details of the model content, and to present it in a standardised way to views. The advantage of this solution is that the View need not know much about the data it presents.<br />
<br />
This solution however is not a one size fit all, because an interested class with some knowledge of the GeoDataTypes for example would be far better off manipulating the methods of GeoData classes. <br />
<br />
As a consequence, a choice should be made whether to access GeoData through the model-view framework (nice for a List Widget or for a generic presentation of 'data as a tree', really not so nice for a class which for example would like to calculate the bounding box of all geometric data of a GeoDataDocument, or even for the File read/write, as the knowledge of data types is really known).<br />
<br />
== State of the Model ==<br />
<br />
There are multiple models with various levels of implementation. Some are needed, others should die...<br />
<br />
Here is the list of Model class, and a description of how they are used.<br />
<br />
=== QAbstractItemModel ===<br />
* {{class|GeoDataTreeModel|kdeedu|4.x}}<br />
It represents the list of all {{class|GeoDataDocument|kdeedu|4.x}} registered through the {{class|FileManager|kdeedu|4.x}}.<br />
<br />
It has signals/slots to react to files being added or removed in the FileManager.<br />
<br />
It is used by the {{class|GeometryLayer|kdeedu|4.x}} which renders all {{class|GeoDataGeometry|kdeedu|4.x}} related placemarks.<br />
<br />
* {{class|GeoDataDebugModel|kdeedu|4.x}}<br />
It represents a data file, parsed into a {{class|GeoDataDocument|kdeedu|4.x}} tree structure.<br />
<br />
It is used by the {{class|DataViewPlugin|kdeedu|4.x}} debug plugin (and is broken atm)<br />
<br />
=== QAbstractListModel ===<br />
* {{class|FileViewModel|kdeedu|4.x}}<br />
It represents the list of opened files. The {{class|FileManager|kdeedu|4.x}} appends the documents it opens.<br />
<br />
It is used by the {{class|FileViewFloatItem|kdeedu|4.x}} and manipulated by the {{class|FileManager|kdeedu|4.x}}.<br />
<br />
* {{class|MarblePlacemarkModel|kdeedu|4.x}}<br />
It represents the list of all Placemarks of all opened files. the {{class|PlaceMarkManager|kdeedu|4.x}} appends all the placemarks after reading a file.<br />
<br />
It is used by the {{class|MarbleControlBox|kdeedu|4.X}} to provide the list of placemarks to search for, and by the {{class|PlacemarkLayout|kdeedu|4.x}} to determine layouting on the map.<br />
<br />
It should be replaced by a more generic model, which would hold all open documents and provide both features and geometries. It could also be replaced with a ProxyModel around this new model.</div>Tgridelhttps://community.kde.org/index.php?title=Marble/GeoData&diff=74377Marble/GeoData2010-08-14T23:10:06Z<p>Tgridel: </p>
<hr />
<div>== GeoData Overview ==<br />
<br />
The Marble Framework has got two major design goals:<br />
* The Marble Framework should build strongly on [http://qt.gitorious.org/qt/pages/ApiDesignPrinciples#Naming+Enum+Types+and+Values Qt-API principles] and Qt design concepts.<br />
* The map data should be handled using classes that are modelled after the [http://code.google.com/intl/de/apis/kml/documentation/kmlreference.html KML OGC standard].<br />
<br />
The KML standard itself describes the properties of a data model for maps: <br />
<br />
<br />
<br />
GeoData holds the data model that is internally used for any geographic information which should be rendered. It deals whith the data only, drawing is performed elsewhere.<br />
<br />
A model representation of a document is built through parsing of files and creating a {{class|GeoDataDocument|kdeedu|4.x}} with {{class|GeoDataObject|kdeedu|4.2}} representing its data.<br />
The Geodata objects are all modeled after the Google KML files as defined in the [http://code.google.com/apis/kml/documentation/kml_tags_21.html KML documentation].<br />
<br />
;[[/GeoDataUse|Use cases for GeoData classes]]<br />
;[http://websvn.kde.org/*checkout*/trunk/KDE/kdeedu/marble/src/lib/geodata/data/README.html GeoData API Description]<br />
<br />
<br />
;[[/GeoDataParsing|Parsing GeoData]]<br />
;[[/GeoDataWriter|Writing GeoData]]</div>Tgridelhttps://community.kde.org/index.php?title=Marble/GeoData/GeoDataUse&diff=75128Marble/GeoData/GeoDataUse2010-08-14T23:06:38Z<p>Tgridel: </p>
<hr />
<div>== Using GeoData ==<br />
<br />
This page tries to summarise the use of GeoData classes in marble so that its implementation details can match the use cases, and understand if any what issues might arise from manipulating them otherwise.<br />
<br />
=== Use Cases ===<br />
<br />
The use cases identified so far are:<br />
<br />
# use any GeoData class as a convenient data holder in APIs.<br />
#: It is expected in that regard that classes have shared data.<br />
#: Let's call this usecase the "ToolClass" usecase.<br />
# use {{class|GeoDataDocument|kdeedu|4.x}} as the root document of a "data file" in-memory representation, or even another grouping of information.<br />
#: In this use case, there would exist a "tree" of data matching a logical grouping of information.<br />
#: Let's call this usecase the "DataTree" usecase.<br />
<br />
=== Actual Implemented Use Details ===<br />
* GeoData classes have shared data, in the sense that e.g. copying a GeoDataFeature is a shallow copy, with deep copy happening when one of the instances need to modify a value. This is all for the "ToolClass", and not much useful for the "DataTree".<br />
<br />
* {{class|FileManager|kdeedu|4.x}} uses {{class|FileLoader|kdeedu|4.x}} which build a {{class|GeoDataDocument|kdeedu|4.x}} from files it opens. It internally uses the {{class|GeoParser|kdeedu|4.x}} classes and framework for xml files. Those files then provided through the {{class|GeoDataTreeModel|kdeedu|4.x}} model.<br />
<br />
* {{class|PlacemarkManager|kdeedu|4.x}} uses placemarks retrieved from the FileManager, and provides a {{class|PlacemarkModel|kdeedu|4.x}} model which contains them.<br />
<br />
* {{class|PositionTracker|kdeedu|4.x}} keeps a document with past positions retrieved from {{class|PositionProviderPlugin|kdeedu|4.x}} plugins.<br />
<br />
* {{class|RoutingManager|kdeedu|4.x}} handles routing data in a document with instructions retrieved from Marble Runners Plugins which derive from {{class|MarbleAbstractRunner|kdeedu|4.x}}.<br />
<br />
TODO others??<br />
<br />
=== Common Issues and Pitfalls ===<br />
In the past or present, some issues have appeared and need to be remembered/adressed:<br />
<br />
# memory ownership is an issue to be determined depending on use case.<br />
# Compliance with KML spec is a priority, limiting differing needs.</div>Tgridelhttps://community.kde.org/index.php?title=Marble/GeoData&diff=74376Marble/GeoData2010-08-14T22:43:18Z<p>Tgridel: </p>
<hr />
<div>== GeoData Overview ==<br />
<br />
The Marble Framework has got two major design goals:<br />
* The Marble Framework should build strongly on [http://qt.gitorious.org/qt/pages/ApiDesignPrinciples#Naming+Enum+Types+and+Values Qt-API principles] and Qt design concepts.<br />
* The map data should be handled using classes that are modelled after the [http://code.google.com/intl/de/apis/kml/documentation/kmlreference.html KML OGC standard].<br />
<br />
The KML standard itself describes the properties of a data model for maps: <br />
<br />
<br />
<br />
GeoData holds the data model that is internally used for any geographic information which should be rendered. It deals whith the data only, drawing is performed elsewhere.<br />
<br />
A model representation of this data is built through parsing of files or more generally feeding data and creating a {{class|GeoDataDocument|kdeedu|4.x}} containing various other {{class|GeoDataObject|kdeedu|4.x}} representing its data.<br />
The Geodata objects are all modeled after the Google KML files as defined in the [http://code.google.com/apis/kml/documentation/kml_tags_21.html KML documentation].<br />
<br />
;[[/GeoDataUse|Use cases for GeoData classes]]<br />
;[http://websvn.kde.org/*checkout*/trunk/KDE/kdeedu/marble/src/lib/geodata/data/README.html GeoData API Description]<br />
<br />
<br />
;[[/GeoDataParsing|Parsing GeoData]]<br />
;[[/GeoDataWriter|Writing GeoData]]</div>Tgridelhttps://community.kde.org/index.php?title=Marble/ModelView&diff=74401Marble/ModelView2010-06-29T22:52:57Z<p>Tgridel: </p>
<hr />
<div>= ModelView framework in Marble =<br />
<br />
Marble uses Qt's Model/View framework as a way to signal updates to a model to interested parts. In that respect, a Model class can wrap any possible data.<br />
<br />
The multiple models in Marble each fit the purpose of feeding some GeoData classes to interested widgets. The way those models are fed could be improved however:<br />
<br />
== Model and Data Location ==<br />
<br />
* At the moment, each Model contains the list/vector/tree of data it presents. This is not a problem per se, unless all those models present the same data, and retain their own copies. Once the time to edit this data comes, it is tedious or quite impossible to trace back all those copies.<br />
<br />
The solution to this is twofold: <br />
** keep data unique in one store (wherever that is, a Model class or a list in one Manager)<br />
** Try and manipulate references to the data in the Models in such a case: with one change to the central data, multiple models can be notified and each react differently for the views they feed. <br />
<br />
== Model or not Model ==<br />
<br />
* The Model-View framework is designed to hide the details of the model content, and to present it in a standardised way to views. The advantage of this solution is that the View need not know much about the data it presents.<br />
<br />
This solution however is not a one size fit all, because an interested class with some knowledge of the GeoDataTypes for example would be far better off manipulating the methods of GeoData classes. <br />
<br />
As a consequence, a choice should be made whether to access GeoData through the model-view framework (nice for a List Widget or for a generic presentation of 'data as a tree', really not so nice for a class which for example would like to calculate the bounding box of all geometric data of a GeoDataDocument, or even for the File read/write, as the knowledge of data types is really known).<br />
<br />
== State of the Model ==<br />
<br />
There are multiple models with various levels of implementation. Some are needed, others should die...<br />
<br />
Here is the list of Model class, and a description of how they are used.<br />
<br />
=== QAbstractItemModel ===<br />
* {{class|GeoDataDebugModel|kdeedu|4.x}}<br />
It represents a data file, parsed into a {{class|GeoDataDocument|kdeedu|4.x}} tree structure.<br />
<br />
It is used by the {{class|DataViewPlugin|kdeedu|4.x}} debug plugin (and is broken atm)<br />
<br />
* {{class|GpxFileModel|kdeedu|4.x}}<br />
It represents a list of gpx data file represented as {{class|GpxFile|kdeedu|4.x}}<br />
<br />
This was originally intended to but used as the model for the File List View ( which is accessible by running marble with --enableFileView ) but has since been replaced by the FileViewModel.<br />
<br />
The model that is in the GpsLayer is currently only being used as a collection class and is deprecated. This, along with the whole current GPX implementation, needs to be removed and updated to the current concepts in Marble. See [[Projects/Marble/GPXStatus|Gpx Status]]<br />
<br />
* {{class|MarbleGeometryModel|kdeedu|4.x}}<br />
It represents the {{class|GeoDataGeometry|kdeedu}} and the {{class|GeoDataFeature|kdeedu|4.x}} items of the last opened {{class|GeoDataDocument|kdeedu|4.x}}.<br />
<br />
It is used by the {{class|GeoRenderPlugin|kdeedu|4.x}} to access the list of vector data to draw it.<br />
<br />
Action is underway to replace this class with a more generic model, which would hold all opened documents.<br />
<br />
=== QAbstractListModel ===<br />
* {{class|FileViewModel|kdeedu|4.x}}<br />
It represents the list of opened files. The {{class|FileManager|kdeedu|4.x}} appends the documents it opens.<br />
<br />
It is used by the {{class|FileViewFloatItem|kdeedu|4.x}} and manipulated by the {{class|FileManager|kdeedu|4.x}}.<br />
<br />
* {{class|MarbleGeoDataModel|kdeedu|4.x}}<br />
It represents a list of {{class|GeoDataDocuments|kdeedu|4.x}}. Only the {{class|PlacemarksPlugin|kdeedu|4.x}} uses it<br />
<br />
It is used by no other code. It should be removed.<br />
<br />
* {{class|MarblePlacemarkModel|kdeedu|4.x}}<br />
It represents the list of all Placemarks of all opened files. the {{class|PlaceMarkManager|kdeedu|4.x}} appends all the placemarks after reading a file.<br />
<br />
It is used by the {{class|MarbleControlBox|kdeedu|4.X}} to provide the list of placemarks to search for, and by the {{class|PlacemarkLayout|kdeedu|4.x}} to determine layouting on the map.<br />
<br />
It should be replaced by a more generic model, which would hold all open documents and provide both features and geometries. It could also be replaced with a ProxyModel around this new model.</div>Tgridelhttps://community.kde.org/index.php?title=Marble/GPXStatus&diff=74383Marble/GPXStatus2010-06-06T21:13:53Z<p>Tgridel: </p>
<hr />
<div>==Gpx Status== <br />
This page is intended to be a reference as to what needs to be done to update the current GPX implementation in Marble. <br />
<br />
===GeoData Binding===<br />
Here is the current binding of Gpx tags to Geodata model classes:<br />
{| border="1"<br />
! Tag !! Class<br />
|-<br />
| gpx || GeoDataDocument<br />
|-<br />
| trk || GeoDataMultiGeometry in a GeoDataPlacemark<br />
|-<br />
| trkseg || GeoDataLineString<br />
|-<br />
| trkpt || GeoDataCoordinates<br />
|-<br />
| wpt || GeoDataPlacemark<br />
|-<br />
| name || GeoDataPlacemark::name<br />
|-<br />
| ||<br />
|}<br />
<br />
===Todo===<br />
*Remove the Abstract Layer (in progress)<br />
*Uncouple the current GPS location rendering from the GPS Layer (done)<br />
*Remove Gpx specific Loading in MarbleModel and above (in progress)<br />
*Complete geodata parser for GPX file type<br />
*Improve rendering from the current rendering of GeoDataDocuments<br />
<br />
===Ideas for later===<br />
*Make GPX loading and rendering a plugin</div>Tgridelhttps://community.kde.org/index.php?title=Marble/Gsoc2010&diff=74875Marble/Gsoc20102010-06-05T14:01:26Z<p>Tgridel: </p>
<hr />
<div>= Marble Gsoc 2010 =<br />
<br />
== List of accepted projects ==<br />
[http://socghop.appspot.com/gsoc/student_project/show/google/gsoc2010/kde/t127230760808 Marble To Go(Navigation Mode) for KDE] by Siddharth Srivastava<br />
<br />
[http://socghop.appspot.com/gsoc/student_project/show/google/gsoc2010/kde/t127230761203 Add Bookmarking and Annotation in marble for KDE] by Gaurav Gupta<br />
<br />
[http://socghop.appspot.com/gsoc/student_project/show/google/gsoc2010/kde/t127230761986 Reverse Geocoding and Improved Map Search for KDE] by Gabriel Voicu<br />
<br />
[http://socghop.appspot.com/gsoc/student_project/show/google/gsoc2010/kde/t127230762558 Implementing Time Support to Marble for KDE] by Harshit Jain</div>Tgridelhttps://community.kde.org/index.php?title=Marble/Gsoc2010&diff=74874Marble/Gsoc20102010-06-04T17:37:54Z<p>Tgridel: Created page with '= Marble Gsoc 2010 = == List of accepted projects == [http://socghop.appspot.com/gsoc/student_project/show/google/gsoc2010/kde/t127230761986 Reverse Geocoding and Improved Map S...'</p>
<hr />
<div>= Marble Gsoc 2010 =<br />
<br />
== List of accepted projects ==<br />
[http://socghop.appspot.com/gsoc/student_project/show/google/gsoc2010/kde/t127230761986 Reverse Geocoding and Improved Map Search for KDE] by Gabriel Voicu<br />
<br />
[http://socghop.appspot.com/gsoc/student_project/show/google/gsoc2010/kde/t127230762558 Implementing Time Support to Marble for KDE] by Harshit Jain<br />
<br />
[http://socghop.appspot.com/gsoc/student_project/show/google/gsoc2010/kde/t127230761203 Add Bookmarking and Annotation in marble for KDE] by Gaurav Gupta</div>Tgridelhttps://community.kde.org/index.php?title=Marble/GPXStatus&diff=74382Marble/GPXStatus2010-02-19T23:30:48Z<p>Tgridel: </p>
<hr />
<div>==Gpx Status== <br />
This page is intended to be a reference as to what needs to be done to update the current GPX implementation in Marble. <br />
<br />
===GeoData Binding===<br />
Here is the current binding of Gpx tags to Geodata model classes:<br />
{| border="1"<br />
! Tag !! Class<br />
|-<br />
| gpx || GeoDataDocument<br />
|-<br />
| trk || GeoDataMultiGeometry in a GeoDataPlacemark<br />
|-<br />
| trkseg || GeoDataLineString<br />
|-<br />
| trkpt || GeoDataCoordinates<br />
|-<br />
| wpt || GeoDataPlacemark<br />
|-<br />
| name || GeoDataPlacemark::name<br />
|-<br />
| ||<br />
|}<br />
<br />
===Todo===<br />
*Remove the Abstract Layer <br />
*Uncouple the current GPS location rendering from the GPS Layer<br />
*Remove Gpx specific Loading in MarbleModel and above<br />
*Complete geodata parser for GPX file type<br />
*Improve rendering from the current rendering of GeoDataDocuments<br />
<br />
===Ideas for later===<br />
*Make GPX loading and rendering a plugin</div>Tgridelhttps://community.kde.org/index.php?title=Marble/TileDownload&diff=75112Marble/TileDownload2010-01-29T22:07:30Z<p>Tgridel: </p>
<hr />
<div>=== Design considerations, ideas, thoughts, nothing final ===<br />
<br />
Perhaps create an (abstract) interface / abstract class TileProvider? Not sure, if there is an use case.<br />
<br />
Perhaps separation between http download and tile providing since http download is needed for wikipedia (and perhaps other stuff) integration also.<br />
<br />
What about redirects? in general it seems to be a good idea to support them, but do we also need the ability to<br />
forbid redirects of inform the user?<br />
<br />
The TileLoader should be able to handle not only files, but also QByteArrays or whatever is delivered by the network plugin interface.<br />
<br />
<br />
=== Documentation of existing code ===<br />
<br />
Here are drop notes of understanding how downloading http stuff happens:<br />
<br />
{{class|HttpDownloadManager|kdeedu|4.x}} is the entry point if you want to download http things.<br />
<br />
This class handles download jobs by first creating a simple {{class|HttpJob|kdeedu|4.x}}, and providing it to one of the {{class|DownloadQueueSet|kdeedu|4.x}} classes which can behave according to various {{class|DownloadPolicyKey|kdeedu|4.x}}. <br />
<br />
A {{class|StoragePolicy|kdeedu|4.x}} belongs to the HttpDownloadManager to handle downloaded files properly.<br />
<br />
It also relies on the {{class|PluginManager|kdeedu|4.x}} to provide a {{class|NetworkPlugin|kdeedu|4.x}} which implements the createJob<br />
<br />
In the current imlementation (trunk just after 4.4 branching), there are many<br />
HttpDownloadManagers, which in turn have their own PluginManager, StoragePolicy and DownloadQueueSets. This looks suboptimal and hard to evolve.<br />
<br />
- The many HttpDownloadManagers are <br />
* {{class|AbstractDataPluginModel|kdeedu|4.x}} (and so all *PluginModel which inherit...),<br />
* {{class|MarbleModel|kdeedu|4.x}},<br />
* {{class|TwitterPlugin|kdeedu|4.x}}<br />
Maybe one would be enough, given the DownloadQueues and StoragePolicies framework...<br />
<br />
=== Design proposal ===<br />
<br />
to be done</div>Tgridelhttps://community.kde.org/index.php?title=Marble/TileDownload&diff=75111Marble/TileDownload2010-01-20T22:41:11Z<p>Tgridel: </p>
<hr />
<div>=== Design considerations, ideas, thoughts, nothing final ===<br />
<br />
Perhaps create an (abstract) interface / abstract class TileProvider? Not sure, if there is an use case.<br />
<br />
Perhaps separation between http download and tile providing since http download is needed for wikipedia (and perhaps other stuff) integration also.<br />
<br />
What about redirects? in general it seems to be a good idea to support them, but do we also need the ability to<br />
forbid redirects of inform the user?<br />
<br />
The TileLoader should be able to handle not only files, but also QByteArrays or whatever is delivered by the network plugin interface.<br />
<br />
<br />
=== Documentation of existing code ===<br />
<br />
Here are drop notes of understanding how downloading http stuff happens:<br />
<br />
{{class|HttpDownloadManager|kdeedu|4.x}} is the entry point if you want to download http things.<br />
<br />
This class handles download jobs by first creating a simple {{class|HttpJob|kdeedu|4.x}}, and providing it to one of the {{class|DownloadQueueSet|kdeedu|4.x}} classes which can behave according to various {{class|DownloadPolicyKey|kdeedu|4.x}}. <br />
<br />
A {{class|StoragePolicy|kdeedu|4.x}} belongs to the HttpDownloadManager to handle downloaded files properly.<br />
<br />
It also relies on the {{class|PluginManager|kdeedu|4.x}} to provide a {{class|NetworkPlugin|kdeedu|4.x}} which implements the createJob<br />
<br />
In the current imlementation (trunk just after 4.4 branching), there are many<br />
HttpDownloadManagers, which in turn have their own PluginManager, StoragePolicy and DownloadQueueSets. This looks suboptimal and hard to evolve.<br />
<br />
=== Current Work ===<br />
- Work is ongoing to have only one PluginManager belonging in the {{class|MarbleModel|kdeedu|4.x}}, which others could use when needed, currently<br />
* {{class|LayerManager|kdeedu|4.x}},<br />
* {{class|HttpDownloadManager|kdeedu|4.x}},<br />
* {{class|PositionTracking|kdeedu|4.x}}<br />
So HttpDownloadManagers would need to use it.<br />
<br />
- Many HttpDownloadManagers created "in the wild" for different purposes, like in <br />
* {{class|AbstractDataPluginModel|kdeedu|4.x}} (and so all *PluginModel which inherit...),<br />
* {{class|MarbleModel|kdeedu|4.x}},<br />
* {{class|TwitterPlugin|kdeedu|4.x}}<br />
Maybe one would be enough, given the DownloadQueues and StoragePolicies framework...<br />
<br />
=== Design proposal ===<br />
<br />
to be done</div>Tgridelhttps://community.kde.org/index.php?title=Schedules/KDE4/4.4_Feature_Plan&diff=50358Schedules/KDE4/4.4 Feature Plan2009-11-02T23:52:20Z<p>Tgridel: </p>
<hr />
<div>This is a list of planned features for the 4.4 release. <br />
<br />
See also: <br />
<br />
*[[Schedules/KDE4/4.4 Release Schedule]] <br />
*[[Schedules/KDE4/4.4 Release Goals]] <br />
*[[Schedules/KDE4/4.3 Feature Plan]]<br />
<br />
<br> Legend: <br />
<br />
*todo =&gt; not started yet <br />
*in-progress =&gt; started, but not completed yet <br />
*done =&gt; completed<br />
<br />
__TOC__ <br />
<br />
<br> <br />
<br />
= kdeaccessibility =<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="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;"<br />
! Status <br />
! Project <br />
! Description <br />
! Contact<br />
|}<br />
<br />
<br> <br />
<br />
= kdeadmin =<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="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;"<br />
! Status <br />
! Project <br />
! Description <br />
! Contact <br />
{{FeatureTodo|system-config-printer-kde|Restore feature parity with KDEPrint3 where possible.||Jonathan Riddell, John Layt}} <br />
<br />
|}<br />
<br />
<br> <br />
<br />
= kdeartwork =<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="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;"<br />
! Status <br />
! Project <br />
! Description <br />
! Contact<br />
|}<br />
<br />
<br> <br />
<br />
= kdebase-apps =<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="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;"<br />
! Status <br />
! Project <br />
! Description <br />
! Contact <br />
{{FeatureTodo|Konqueror|Improvements in session-management|edulix@gmail.com|Eduardo Robles Elvira}} {{FeatureTodo|Konqueror|Improvements in tab-bar widget|edulix@gmail.com|Eduardo Robles Elvira}} {{FeatureInProgress|Konqueror|New Konqueror bookmarks using Akonadi and Nepomuk, awesome bar|edulix@gmail.com|Eduardo Robles Elvira}} {{FeatureInProgress|Konqueror|Sidebar cleanups; re-introducing the history module|faure@kde.org|David Faure}} {{FeatureInProgress|Dolphin|<br />
Version control intergration|peter.penz@gmx.at|Peter Penz}} {{FeatureInProgress|Dolphin|<br />
Improved search bar including search configuration|peter.penz@gmx.at|Peter Penz}} {{FeatureInProgress|Dolphin|<br />
Refactoring of Information Panel. KMetaDataWidget and KMetaDataConfigurationDialog should be moved to kdelibs.|peter.penz@gmx.at|Peter Penz}} <br />
<br />
|}<br />
<br />
= kdebase-runtime =<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="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;"<br />
! Status <br />
! Project <br />
! Description <br />
! Contact <br />
{{FeatureTodo|KWallet|Single Sign On using PAM|lemma@confuego.org|Michael Leupold}}<br />
{{FeatureTodo|network kioslave|Backend for UPnP|kossebau@kde.org|Friedrich Kossebau}}<br />
{{FeatureTodo|network kioslave|Backend for LISa|kossebau@kde.org|Friedrich Kossebau}}<br />
{{FeatureTodo|network kioslave|Backend for SMB|kossebau@kde.org|Friedrich Kossebau}}<br />
{{FeatureTodo|network kioslave|Integrate with remote and zeroconf kioslaves|kossebau@kde.org|Friedrich Kossebau}}<br />
{{FeatureTodo|smb kioslave|add kwallet support|brandon.ml@gmail.com|Carlo Segato}} {{FeatureDone|thumbnail kioslave|Support for comic-book cover previews (.cbr, .cbz, .cbt files)|qwertymaniac@gmail.com|Harsh J}} {{FeatureInProgress|Nepomuk|Integrate Filesystem service to handle mounting/unmounting of removable devices|trueg@kde.org|Sebastian Trueg}} {{FeatureInProgress|Nepomuk|Add nepomuk kio slave which handles all stating of Nepomuk resources|trueg@kde.org|Sebastian Trueg}} {{FeatureInProgress|Nepomuk|Port Nepomuk to Virtuoso: query service, strigi service|trueg@kde.org|Sebastian Trueg}} {{FeatureInProgress|Locale KCM|Add support for new Currency Code and Decimal Places features in KLocale.|john@layt.net|John Layt}} {{FeatureInProgress|Device Automounting|Add support for storage device automounting|tdfischer@fedoraproject.org|Trever Fischer}} <br />
<br />
|}<br />
<br />
= kdebase-workspace =<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="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;"<br />
! Status <br />
! Project <br />
! Description <br />
! Contact<br />
|-<br />
! style="text-align: center;" colspan="4" | Non-Plasma, Non-KWin <br />
{{FeatureTodo|Icons KCM|More configurable icon sizes|christoph@maxiom.de|Christoph Feck}} {{FeatureTodo|Fonts KCM|More configurable fonts|christoph@maxiom.de|Christoph Feck}} {{FeatureTodo|System Activity|Show CPU usage etc|tapsell@kde.org|John Tapsell}} {{FeatureInProgress|Date/Time KCM|Plasma themed clock|christoph@maxiom.de|Christoph Feck}} {{FeatureInProgress|System Activity|Add scripting support|tapsell@kde.org|John Tapsell}} {{FeatureDone|Solid|RemoteControl Manager/Interface + Lirc backend|michael_zanetti@gmx.net|Michael Zanetti}} {{FeatureDone|System Activity|KAuth integration|tapsell@kde.org|John Tapsell}} {{FeatureDone|System Settings|Improve module appearance for Icons View and provide searching hints|sourtooth@gmail.com|Ben Cooksley}} {{FeatureInProgress|System Setitngs|Reorganize modules|sourtooth@gmail.com|Ben Cooksley}} {{FeatureInProgress|Mouse KCM|XInput2 support|fredrik@kde.org|Fredrik Höglund}} {{FeatureInProgress|Attica KCM|Initial import|ewoerner@kde.org|Eckhart Wörner}} <br />
<br />
|-<br />
! style="text-align: center;" colspan="4" | KRunner <br />
{{FeatureDone|KRunner|Window management runner|kde@martin-graesslin.com|Martin Gräßlin}} {{FeatureTodo|KRunner|Solid device runner|wilderkde@gmail.com|Jacopo De Simoi}} {{FeatureInProgress|KRunner|Add Firefox support to the bookmark runner|jangerrit@weiler-marker.com|Jan Gerrit Marker}} {{FeatureTodo|KRunner|Solid device runner|wilderkde@gmail.com|Jacopo De Simoi}} {{FeatureInProgress|KRunner|Single runner mode|wilderkde@gmail.com|Jacopo De Simoi}} {{FeatureTodo|KRunner|Manage actions in default interface|wilderkde@gmail.com|Jacopo De Simoi}} <br />
<br />
|-<br />
! style="text-align: center;" colspan="4" | Plasma - Priority Features <br />
{{FeatureInProgress|netbook shell|a plasma shell and various containments/applets tailored for netbooks (tech preview status in 4.4)|notmart@gmail.com|Marco Martin}} <br />
<br />
|-<br />
! style="text-align: center;" colspan="4" | Plasma <br />
{{FeatureTodo|libplasma|better text box look with new svg elements|notmart@gmail.com|Marco Martin}} {{FeatureTodo|libplasma|Allow display of multiple Holiday Regions in same Calendar widget|john@layt.net|John Layt}} {{FeatureInProgress|knowledge base plasmoid|new plasmoid: Opendesktop.org knowledgebase client|notmart@gmail.com|Marco Martin}} {{FeatureInProgress|Quicklaunch Plasmoid|new icon size/rows config ui|l.appelhans@gmx.de|Lukas Appelhans}} {{FeatureInProgress|libplasma|Allow user to choose Calendar System to be displayed in Calendar widgets|john@layt.net|John Layt}} {{FeatureInProgress|opendesktop plasmoid|show friends activity|notmart@gmail.com|Marco Martin}} {{FeatureDone|libplasma/kwin|slide animation for popups done by kwin|notmart@gmail.com|Marco Martin}} {{FeatureDone|System tray|Plasmoid support in the system tray|notmart@gmail.com|Marco Martin}} {{FeatureDone|System tray|config ui to decide between always shown, always hidden and auto hide for each systray item|notmart@gmail.com|Marco Martin}} {{FeatureInProgress|Plasma Addon|Wikipedia KRunner|sebas@kde.org|Sebastian Kügler}} {{FeatureInProgress|Plasma Addon|Webslice Plasmoid, qgraphicswidget|sebas@kde.org|Sebastian Kügler}} {{FeatureInProgress|Plasma Addon|Battery popup layout improvements|sebas@kde.org|Sebastian Kügler}} {{FeatureInProgress|Plasma Mouse Plugins UI|Yet Another UI Redesign|chani@kde.org|Chani}} {{FeatureTodo|libplasma|Plasmoid Cloning - because having to set things up from scratch repeatedly gets old fast|chani@kde.org|Chani}} {{FeatureTodo|taskbar|"other desktops" group - I may not have time for this, feel free to take it|chani@kde.org|Chani}} {{FeatureInProgress|Plasma Weather Ion|New Weather Ion for the wetter.com data source provider|thilo@ginkel.com|Thilo-Alexander Ginkel}} {{FeatureInProgress|Plasma Animator|Create new Plasma::Animator API based on Qt 4.6 Kinetic||Adenilson Cavalcanti, Igor Trindade}} {{FeatureTodo|Plasma KineticScrolling|Port KineticScrolling to Qt 4.6 Kinetic||Adenilson Cavalcanti, Igor Trindade}} {{FeatureInProgress|Plasma-Netbook Animated Layouts|Create Animated Layouts to SAL and NewsPaper||Adenilson Cavalcanti, Igor Trindade}} {{FeatureInProgress|Notification queueing|||Aaron Seigo}} {{FeatureInProgress|Trust Levels|package signing and verification||Rob Sheepmaker Aaron Seigo}} {{FeatureInProgress|JS plasmoid improvements|Animations, KIO and QFile bindings; latter two by security policy||Aaron Seigo}}{{FeatureInProgress|Kiosk improvements|||Aaron Seigo}} {{FeatureInProgress|Activity Bar|||Aaron Seigo}} {{FeatureTodo|folderview|Hover action icons in the icon view|fredrik@kde.org|Fredrik Höglund}} {{FeatureInProgress|opendesktop|Add messaging|ewoerner@kde.org|Eckhart Wörner}} {{FeatureInProgress|opendesktop|Add friendship management|ewoerner@kde.org|Eckhart Wörner}} {{FeatureInProgress|ocs engine|Add possibility to use different providers, port all dependent plasmoids to new infrastructure|ewoerner@kde.org|Eckhart Wörner}} {{FeatureInProgress|libplasma|Show the PopupApplet's BusyWidget inside the popup|giuliocamuffo@gmail.com|Giulio Camuffo}}<br />
<br />
|-<br />
! style="text-align: center;" colspan="4" | KWin - Core <br />
{{FeatureInProgress|KWin|Window tabbing|matamax123@gmail.com|Jorge Emilio Mata}} {{FeatureInProgress|KWin|Window tiling|nsm.nikhil@gmail.com|Nikhil Marathe}} {{FeatureDone|KWin|Quick window maximization and tiling by dragging windows to the edge of the screen|kde@martin-graesslin.com|Martin Gräßlin}} {{FeatureDone|KWin|Improved virtual desktop KCM|kde@martin-graesslin.com|Martin Gräßlin}} {{FeatureDone|KWin|Improved window switcher (Alt+Tab)|kde@martin-graesslin.com|Martin Gräßlin}} {{FeatureDone|KWin|SVG based window decoration theme engine (Aurorae)|kde@martin-graesslin.com|Martin Gräßlin}} {{FeatureDone|KWin|Merged Ozone and Nitrogen window decorations into Oxygen|hugo.pereira@free.fr|Hugo Pereira Da Costa}} {{FeatureInProgress|KWin|Support for new EWMH hints|fredrik@kde.org|Fredrik Höglund}} <br />
<br />
|-<br />
! style="text-align: center;" colspan="4" | KWin - Desktop Effects <br />
{{FeatureDone|KWin|Mouse action support in Present Windows effect|kde@martin-graesslin.com|Martin Gräßlin}} {{FeatureDone|KWin|New present windows mode to only display windows from a single application|kde@martin-graesslin.com|Martin Gräßlin}} {{FeatureDone|KWin|Improved flip switch effect|kde@martin-graesslin.com|Martin Gräßlin}} <br />
<br />
|-<br />
! style="text-align: center;" colspan="4" | KDM<br />
|}<br />
<br />
= kdebindings =<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="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;"<br />
! Status <br />
! Project <br />
! Description <br />
! Contact <br />
{{FeatureTodo|pykde4|Python 3 support for PyKDE4|simon@simonzone.com|Simon Edwards}} {{FeatureInProgress|qyoto|Create a new generator for the C# assemblies|arno@arnorehn.de|Arno Rehn}} {{FeatureTodo|qyoto|Replace the current C# cmake macros with more sophisticated ones that also work on windows.|arno@arnorehn.de|Arno Rehn}} <br />
<br />
|}<br />
<br />
<br> <br />
<br />
= kdeedu =<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="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;"<br />
! Status <br />
! Project <br />
! Description <br />
! Contact <br />
{{FeatureTodo|KStars|Display Comet Magnitudes whenever possible|akarshsimha@gmail.com|Akarsh Simha}} {{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}} {{FeatureTodo|KStars|Extend conjunction tool to have one object unspecified, but have a genre of objects specified instead|akarshsimha@gmail.com|Akarsh Simha}} {{FeatureTodo|KStars|Simulate Lunar Eclipses|akarshsimha@gmail.com|Akarsh Simha}} {{FeatureTodo|KStars|Simulate Satellites and Iridium Flares|akarshsimha@gmail.com|Akarsh Simha}} {{FeatureTodo|KStars|Social and Geographical Integration for KStars|akarshsimha@gmail.com|Akarsh Simha}} {{FeatureTodo|KStars|Marble widget for Geolocation tool|mboquien@free.fr|Médéric Boquien}} {{FeatureTodo|KStars|Better printed star charts|kstars@30doradus.org|Jason Harris}} {{FeatureTodo|KStars|Better rendering of comets/asteroids|kstars@30doradus.org|Jason Harris}} {{FeatureTodo|KStars|Texture mapping of the skymap???|kstars@30doradus.org|Jason Harris}} {{FeatureInProgress|Cantor|Import to kdeedu - currently in kdereview|alexanderrieder@gmail.com|Alexander Rieder}} {{FeatureInProgress|KAlgebra|Support for lists|aleixpol@kde.org|Aleix Pol}} {{FeatureInProgress|Marble|Add "download region" feature|jmho@c-xx.com|Jens-Michael Hoffmann}}<br />
{{FeatureInProgress|Marble|GeoData Model/View rework||Thibaut Gridel}}<br />
{{FeatureInProgress|Parley|Rewritten practice|d.laidig@gmx.de|Daniel Laidig}} {{FeatureDone|KAlgebra|Improved MathML Presentation support|aleixpol@kde.org|Aleix Pol}} {{FeatureDone|KAlgebra|Added 2D parametric function plotting|aleixpol@kde.org|Aleix Pol}} {{FeatureDone|KAlgebra|Improved jump detections|aleixpol@kde.org|Aleix Pol}} {{FeatureDone|KAlgebra|Made lambda expressions more usable|aleixpol@kde.org|Aleix Pol}} {{FeatureDone|KStars|Improve Observing List Wizard|prakash.mohan@kdemail.net|Prakash Mohan}} {{FeatureDone|KTurtle|Add F2 context help|nielsslot@gmail.com|Niels Slot}} {{FeatureDone|KTurtle|Add SVG export for the canvas|nielsslot@gmail.com|Niels Slot}} {{FeatureDone|KTurtle|Add HTML export of the code|nielsslot@gmail.com|Niels Slot}} {{FeatureDone|KTurtle|Add printing support for the canvas|nielsslot@gmail.com|Niels Slot}} {{FeatureTodo|Marble|Add proper support for GPX waypoints, tracks and routes display|anders@alweb.dk|Anders Lund}} <br />
<br />
|}<br />
<br />
<br> <br />
<br />
= kdegames =<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="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;"<br />
! Status <br />
! Project <br />
! Description <br />
! Contact <br />
{{FeatureTodo|KBreakOut|Level Sets|fela.kde@gmail.com|Fela Winkelmolen}} {{FeatureTodo|KBreakOut|Sound|fela.kde@gmail.com|Fela Winkelmolen}} {{FeatureTodo|KDiamond|Intelligent animation pre-caching|majewsky@gmx.net|Stefan Majewsky}} {{FeatureTodo|KDiamond|Refactor Board and Diamond classes|majewsky@gmx.net|Stefan Majewsky}} {{FeatureTodo|Kolf|Replace with Kolf 2 (help on coding, artwork and level design desired) >>delayed to KDE 4.5<<|majewsky@gmx.net|Stefan Majewsky}} {{FeatureTodo|KsirK|rewrite AI code or at least correct most problems related in bug #170777. Volunteers wanted!|kleag@free.fr|Gaël de Chalendar}} {{FeatureTodo|KsirK|Boost playing over Jabber|kleag@free.fr|Gaël de Chalendar}} {{FeatureTodo|KSquares|Re-write computer player, make it act faster and more intelligent|ewoerner@kde.org|Eckhart Wörner}} {{FeatureTodo|KSquares|Add more types of boards: hexagonal, triangular|ewoerner@kde.org|Eckhart Wörner}} {{FeatureInProgress|Gluon|release first gluon lib with one game. [http://gluon.tuxfamily.org/]|istdasklar@gmail.com|Sacha schutz}} {{FeatureInProgress|Granatier|New Bomberman like game for KDE 4|k.hias@gmx.de|Mathias Kraus}} {{FeatureInProgress|Granatier|Implement all Bonuses from the default theme|k.hias@gmx.de|Mathias Kraus}} {{FeatureDone|Granatier|Add support for a background|k.hias@gmx.de|Mathias Kraus}} {{FeatureTodo|Granatier|Sidebar with informations regarding the players, like bonuses, handicaps ...|k.hias@gmx.de|Mathias Kraus}} {{FeatureTodo|Granatier|Arena Editor|k.hias@gmx.de|Mathias Kraus}} {{FeatureTodo|Granatier|Replace Phonon with QtMultimedia for better sound|k.hias@gmx.de|Mathias Kraus}} {{FeatureInProgress|KAtomic|Level Sets|dimsuz@gmail.com|Dmitry Suzdalev}} {{FeatureInProgress|KsirK|Polish the skin editor (doc, contextual help, ...)|kleag@free.fr|Gaël de Chalendar}} {{FeatureInProgress|Palapeli|New puzzle game for KDE 4|majewsky@gmx.net|Stefan Majewsky}} {{FeatureDone|Bovo|Highlight the last move to be easier to spot|pelladigabor@gmail.com|Pelladi Gabor}} {{FeatureDone|Bovo|Enable undo after the game has ended, to be able to correct a fatal mis-click|pelladigabor@gmail.com|Pelladi Gabor}} {{FeatureDone|KBreakOut|Improved keyboard support|fela.kde@gmail.com|Fela Winkelmolen}} {{FeatureDone|KBreakOut|Fullscreen support|fela.kde@gmail.com|Fela Winkelmolen}} {{FeatureDone|KDiamond|Improve time display|majewsky@gmx.net|Stefan Majewsky}} {{FeatureDone|KGoldrunner|Add Mazes game (37 levels), contributed by Steve Mann.|ianw2@optusnet.com.au|Ian Wadham}} {{FeatureDone|KsirK|Previous/Next in start new game as described in bug #170774|kleag@free.fr|Gaël de Chalendar}} {{FeatureInProgress|Kigo|New Go game for KDE 4|sasch.pe@gmx.de|Sascha Peilicke}} {{FeatureDone|Kigo|Fix smaller issues with KNS2|sasch.pe@gmx.de|Sascha Peilicke}} {{FeatureDone|Kigo|Beautify the default theme|sasch.pe@gmx.de|Sascha Peilicke}} {{FeatureInProgress|Kigo|Allow arbitrary jumps in the undo/redo history|sasch.pe@gmx.de|Sascha Peilicke}} {{FeatureInProgress|Kigo|Improve final score visuals|sasch.pe@gmx.de|Sascha Peilicke}} <br />
<br />
|}<br />
<br />
= kdegraphics =<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="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;"<br />
! Status <br />
! Project <br />
! Description <br />
! Contact <br />
{{FeatureTodo|libkexiv2|Store metadata in libexiv2 containers, do not lossily encode to QByteArray. Bug 183171|marcel.wiesweg@gmx.de|Marcel Wiesweg}} {{FeatureTodo|libkexiv2|Expose exiv2 API for accessing embedded previews in RAW files.|marcel.wiesweg@gmx.de|Marcel Wiesweg}} {{FeatureTodo|libkdcraw|Make color management options more flexible|marcel.wiesweg@gmx.de|Marcel Wiesweg}} {{FeatureDone|libksane|Add basic twain support on Windows|kare.sars@iki.fi|K&aring;re S&auml;rs}} {{FeatureDone|libksane|External API for specifying preview resolution|kare.sars@iki.fi|K&aring;re S&auml;rs}} {{FeatureInProgress|libksane|External API for handling selections|kare.sars@iki.fi|K&aring;re S&auml;rs}} {{FeatureTodo|libksane|Improve auto-selection|kare.sars@iki.fi|K&aring;re S&auml;rs}} {{FeatureInProgress|gwenview|Rework start page|agateau@kde.org|Aurelien Gateau}} {{FeatureInProgress|gwenview|Implement picture importer|agateau@kde.org|Aurelien Gateau}} {{FeatureInProgress|gwenview|New save-as behavior (go to saved as document)|agateau@kde.org|Aurelien Gateau}} {{FeatureTodo|gwenview|Show Nepomuk info in image meta info|agateau@kde.org|Aurelien Gateau}} {{FeatureTodo|gwenview|Persistent changes|agateau@kde.org|Aurelien Gateau}} {{FeatureTodo|gwenview|Folder thumbnails|agateau@kde.org|Aurelien Gateau}} <br />
<br />
|}<br />
<br />
= kdelibs =<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="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;"<br />
! Status <br />
! Project <br />
! Description <br />
! Contact <br />
{{FeatureTodo|katepart|Add interface to access highlighting information, port html-export plugin|mail@milianw.de|Milian Wolff}} {{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}} {{FeatureTodo|KCalendarSystem|Add new calendar systems: Bahaii, Ethiopean, Chinese, Japanese, Buddhist, etc.|john@layt.net|John Layt}} {{FeatureDone|KCalendarSystem|Add new calendar systems: Indian Civil (Saka), Pure Julian, Pure Gregorian.|john@layt.net|John Layt}} {{FeatureTodo|kdecore|Group policy (Windows) backend for KAuth|drf@kde.org|Dario Freddi}} {{FeatureDone|KDEPrint|Add Odd/Even page selection and server-side page selection when using CUPS.|john@layt.net|John Layt}} {{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}} {{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}} {{FeatureTodo|kdeui|Implement caps-lock warning for password entry widgets|lemma@confuego.org|Michael Leupold}} {{FeatureInProgress|KLocale|Implement ISO 4217 Currency Code support (http://en.wikipedia.org/wiki/ISO_4217).|john@layt.net|John Layt}} {{FeatureInProgress|KLocale|Separate numeric decimal places and monetary decimal places.|john@layt.net|John Layt}} {{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}} {{FeatureTodo|KLocale|Implement support for additional Country Code standards: ISO Alpha 3, ISO Numeric 3, FIPS-10.|john@layt.net|John Layt}} {{FeatureTodo|KLocale|Implement separate backends for each supported platform/desktop to use platform localisation in place of KDE locale.|john@layt.net|John Layt}} {{FeatureTodo|KLocale|Implement separate backends for each supported platform/desktop to use platform localisation in place of KDE locale.|john@layt.net|John Layt}} {{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}} {{FeatureTodo|Khtml|Improvements in kwallet integration|edulix@gmail.com|Eduardo Robles Elvira}} {{FeatureInProgress|kfile|Move KMetaDataWidget and KMetaDataConfigurationDialog from Dolphin to kfile|peter.penz@gmx.at|Peter Penz}} {{FeatureDone|katepart|Add mapping support for the vi input mode's normal mode|ehambergαgmail.com|Erlend Hamberg}} {{FeatureTodo|katepart|Add visual block mode and make the basic commands support it|ehambergαgmail.com|Erlend Hamberg}} {{FeatureInProgress|katepart|Improve TemplateInterface, i.e. snippet support|mail@milianw.de|Milian Wolff}} {{FeatureInProgress|kdecore|Move event-filter installation out of KApplication and into a new class|lemma@confuego.org|Michael Leupold}} {{FeatureInProgress|kdecore|Polkit-1 backend for KAuth|drf@kde.org|Dario Freddi}} {{FeatureInProgress|kdeui|Support floating point font sizes|christoph@maxiom.de|Christoph Feck}} {{FeatureInProgress|kdeui|Finish the time chooser widget|lemma@confuego.org|Michael Leupold}} {{FeatureInProgress|kio|Limit number of connections per host (per application), add job priorities|ahartmetz@gmail.com|Andreas Hartmetz}} {{FeatureInProgress|kio|Support for automatically renaming conflicting files during copy and move operations|toddrme2178@gmail.com|Todd}} {{FeatureTodo|kio|Better file information in file conflict dialog|toddrme2178@gmail.com|Todd}} {{FeatureInProgress|kio|Remember downloads via Nepomuk|trueg@kde.org|Sebastian Trueg}} {{FeatureInProgress|webkit|Move KDE integration of QtWebKit into kdelibs (but not KPart!)|uwolfer@kde.org|Urs Wolfer}} {{FeatureInProgress|buildsystem|Modular build of KDE modules|neundorf@kde.org|Alexander Neundorf}} {{FeatureDone|katepart|Enable command line scripting again|dhaumann@kde.org|Dominik Haumann}} {{FeatureDone|katepart|Support byte-order mark in unicode files|jowenn@kde.org|Joseph Wenninger}} {{FeatureInProgress|katepart|Improve katepart Vim mode.|alecastanyo@gmail.com|Alejandro Castaño}} {{FeatureInProgress|nepomuk|Add const versions of the accessor methods to the Nepomuk::Types classes|trueg@kde.org|Sebastian Trueg}} <br />
<br />
|}<br />
<br />
= kdemultimedia =<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="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;"<br />
! Status <br />
! Project <br />
! Description <br />
! Contact <br />
{{FeatureTodo|KMix|Nicer OSD (icon, mute state)|esken@kde.org|Christian Esken}} {{FeatureTodo|KMix|Amend Keyboard Shortcuts|esken@kde.org|Christian Esken}} {{FeatureInProgress|KMix|Allow arbitrary ordering of controls|esken@kde.org|Christian Esken}} {{FeatureInProgress|KMix|Add WhatsThis help on controls (Bug 70042)|esken@kde.org|Christian Esken}} <br />
<br />
|}<br />
<br />
<br> <br />
<br />
= kdenetwork =<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="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;"<br />
! Status <br />
! Project <br />
! Description <br />
! Contact <br />
{{FeatureTodo|Kopete|UPnp Support|mattr@kde.org|Matt Rogers}} {{FeatureTodo|Kopete|Jabber Jingle video support|detlev.casanova@gmail.com|Detlev Casanova}} {{FeatureTodo|Kopete|Jabber Jingle ICE support|detlev.casanova@gmail.com|Detlev Casanova}} {{FeatureTodo|Kopete|Add support for urls to Bonjour plugin|kossebau@kde.org|Friedrich W. H. Kossebau}} {{FeatureTodo|Kopete|Rich text support for ICQ|kedgedev@gmail.com|Roman Jarosz}} {{FeatureInProgress|KGet|Support for verifying signed files|mat69@gmx.net|Matthias Fuchs}} {{FeatureInProgress|KGet|Support for custom NewTransferDialog in BTPlugin|l.appelhans@gmx.de|Lukas Appelhans}} {{FeatureInProgress|Kopete|Contacts plasmoid|earthwings@gentoo.org|Dennis Nienhüser}} {{FeatureInProgress|Kopete|Telepathy protocol plugin|grundleborg@googlemail.com|George Goldberg}} {{FeatureInProgress|Kopete|Telepathy Tubes Desktop Sharing plugin|grundleborg@googlemail.com|George Goldberg}} {{FeatureInProgress|Kopete|Akonadi Logger(modify the history plugin)|roideuniverse@gmail.com|Kaushik Saurabh}} {{FeatureInProgress|Krdc|Telepathy Tubes support||Abner Silva}} {{FeatureInProgress|Krfb|Telepathy Tubes support|grundleborg@googlemail.com|George Goldberg}} {{FeatureInProgress|Krfb|Core restructuring|grundleborg@googlemail.com|George Goldberg}} {{FeatureInProgress|Telepathy|Account Management KCM|grundleborg@googlemail.com|George Goldberg}} {{FeatureInProgress|Telepathy|Mission Control launcher KDED|grundleborg@googlemail.com|George Goldberg}} {{FeatureDone|Kopete|Create avatars from a webcam device |alex@eyeos.org |Alex Fiestas}} {{FeatureDone|Krdc|Redesigned workflow to create a new connection|uwolfer@kde.org|Urs Wolfer}} {{FeatureDone|Krdc|Full Screen Switching|murraytony@gmail.com|Tony Murray}} <br />
<br />
|}<br />
<br />
<br> <br />
<br />
= kdepim =<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="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;"<br />
! Status <br />
! Project <br />
! Description <br />
! Contact <br />
{{FeatureInProgress|Akregator|Port to use KNotificationItem|tpr@d5k.net|Teemu Rytilahti}} {{FeatureInProgress|KAlarm|Implement Akonadi support|djarvie @ kde.org|David Jarvie}} {{FeatureInProgress|KAlarm|Provide audio-only alarms|djarvie @ kde.org|David Jarvie}} <br />
<br />
|}<br />
<br />
= kdepimlibs =<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="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;"<br />
! Status <br />
! Project <br />
! Description <br />
! Contact<br />
|}<br />
<br />
<br> <br />
<br />
= kdeplasma-addons =<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="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;"<br />
! Status <br />
! Project <br />
! Description <br />
! Contact <br />
{{FeatureDone|plasmaboard|Added a virtual keyboard plasmoid for touchscreen users|bjoern@ruberg-wegener.de|Björn Ruberg}}<br />
<br />
|} <br />
<br />
<br> <br />
<br />
= kdesdk =<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="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;"<br />
! Status <br />
! Project <br />
! Description <br />
! Contact <br />
{{FeatureTodo|Lokalize|Integrate snowball stemmer for glossary|shafff@NOSPAMukr.net|Nick Shaforostoff}} {{FeatureTodo|Lokalize|Continue implementing XLIFF spec|shafff@NOSPAMukr.net|Nick Shaforostoff}} {{FeatureTodo|Lokalize|Segmentation [editing] functionality|shafff@NOSPAMukr.net |Nick Shaforostoff}} {{FeatureTodo|Lokalize|Remote translation memories|shafff@NOSPAMukr.net|Nick Shaforostoff}} {{FeatureTodo|Lokalize|Integrate with nepomuk (fast stats retrieval, tag cloud - incl sharing!)|shafff@NOSPAMukr.net|Nick Shaforostoff}} {{FeatureDone|Kate|Add common vim commands like :wq, :new, :bp/bn, etc.|ehambergαgmail.com|Erlend Hamberg}} {{FeatureTodo|Kate|Replace old snippet plugin through TNG plugin|jowenn(you_know)kde(here_too)org|Joseph Wenninger}} {{FeatureTodo|Kate|Integreate GHNS into snippets TNG|jowenn(you_know)kde(here_too)org|Joseph Wenninger}} {{FeatureInProgress|Kate|Refactor parts from snippets TNG plugin into a common library for use by the plugin and for use in kdevelop|jowenn(you_know)kde(here_too)org|Joseph Wenninger}} <br />
<br />
|}<br />
<br />
<br> <br />
<br />
= kdeutils =<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="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;"<br />
! Status <br />
! Project <br />
! Description <br />
! Contact <br />
{{FeatureTodo|Ark|Add an options dialog (maybe)|haraldhv@stud.ntnu.no|Harald Hvaal}} {{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}} {{FeatureTodo|Ark|Add feedback for the latest operation in the status bar|kubito@gmail.com|Raphael Kubo da Costa}} {{FeatureTodo|Ark|Add feedback for the latest operation in the status bar|kubito@gmail.com|Raphael Kubo da Costa}} {{FeatureTodo|Ark|Try multiple plugins for each archive type before failing|kubito@gmail.com|Raphael Kubo da Costa}} {{FeatureTodo|Ark|Make the internal previewer optional|kubito@gmail.com|Raphael Kubo da Costa}} {{FeatureTodo|KGpg|Make keyserver actions possible to use on multiple keyservers at once|kde@opensource.sf-tec.de|Rolf Eike Beer}} {{FeatureTodo|KGpg|Add &quot;caff&quot; mode for keysigning|kde@opensource.sf-tec.de|Rolf Eike Beer}} {{FeatureTodo|KGpg|Allow searching for trust path in keyring|kde@opensource.sf-tec.de|Rolf Eike Beer}} {{FeatureTodo|KGpg|Add improved key import result window (with useful summary, filtering, reasonable default size etc.)|kde@opensource.sf-tec.de|Rolf Eike Beer}} {{FeatureTodo|KGpg|Make generating a key a KJob so it get's better notification support|kde@opensource.sf-tec.de|Rolf Eike Beer}} {{FeatureTodo|Okteta|add editing capability to Decoding table |kossebau@kde.org|Friedrich W. H. Kossebau}} {{FeatureTodo|Okteta|add Kate-like search tool|kossebau@kde.org|Friedrich W. H. Kossebau}} {{FeatureTodo|Okteta|add support for import by drop, both url and data|kossebau@kde.org|Friedrich W. H. Kossebau}} {{FeatureTodo|Okteta|copy again puts also a value or char variant of the data to clipboard|kossebau@kde.org|Friedrich W. H. Kossebau}} {{FeatureTodo|Okteta|add support for memory mapping of files|kossebau@kde.org|Friedrich W. H. Kossebau}} {{FeatureTodo|Okteta|add further export formats like s-record and intel 16|kossebau@kde.org|Friedrich W. H. Kossebau}} {{FeatureTodo|Okteta|add support for jobs like io, printing, string search or filter|kossebau@kde.org|Friedrich W. H. Kossebau}} {{FeatureTodo|Okteta|Add Okular like embedded notifications|kossebau@kde.org|Friedrich W. H. Kossebau}} {{FeatureTodo|Okteta|Store bookmarks and other view settings for next load|kossebau@kde.org|Friedrich W. H. Kossebau}} {{FeatureTodo|Okteta|Add global toggle option for the offset display, hex or decimal|kossebau@kde.org|Friedrich W. H. Kossebau}} {{FeatureTodo|Okteta|add QIODevice for AbstractByteArrayModel and make mimetype detection use this instead of only filename |kossebau@kde.org|Friedrich W. H. Kossebau}} {{FeatureTodo|printer-applet|Restore feature parity with KDEPrint3 where possible.||Jonathon Riddell, John Layt}} {{FeatureInProgress|Okteta|Make dialogs for Goto, Search & Replace embedded|kossebau@kde.org|Friedrich W. H. Kossebau}} {{FeatureInProgress|Okteta|Add tool to view decoding of complex structures|kossebau@kde.org|Friedrich W. H. Kossebau}} {{FeatureDone|kdelirc|Communicate to lirc through solid|michael_zanetti@gmx.net|Michael Zanetti}} {{FeatureInProgress|kdelirc|Integrate solid backend into kdelirc frontend|fscheffold@googlemail.com|Frank Scheffold}} {{FeatureTodo|kdelirc|Cycle mode function|fscheffold@googlemail.com|Frank Scheffold}} {{FeatureTodo|kdelirc|Add a try button in configurations|michael_zanetti@gmx.net|Michael Zanetti}} {{FeatureDone|Okteta|Rename libkakao to Kasten and make the Okteta KPart use it|kossebau@kde.org|Friedrich W. H. Kossebau}} {{FeatureDone|Okteta|Add embedded dialog to set selection range|kossebau@kde.org|Friedrich W. H. Kossebau}} <br />
<br />
|}<br />
<br />
= Other =<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="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;"<br />
! Status <br />
! Project <br />
! Description <br />
! Contact<br />
|}<br />
<br />
|}</div>Tgridelhttps://community.kde.org/index.php?title=Marble/TODO&diff=75062Marble/TODO2009-11-02T23:48:29Z<p>Tgridel: Created page with '== TODO list of not completed features == pasted from 4.3 list (please update the 4.3 if you had finished there): {| class="sortable" border="1" cellpadding="5" cellspacing="0" ...'</p>
<hr />
<div>== TODO list of not completed features ==<br />
<br />
pasted from 4.3 list (please update the 4.3 if you had finished there):<br />
{| class="sortable" border="1" cellpadding="5" cellspacing="0" style="border: gray solid 1px; border-collapse: collapse; text-align: left; width: 100%;"<br />
|- style="background: #ececec; white-space:nowrap;"<br />
! Status !! Project !! Description !! Contact<br />
{{FeatureTodo|Marble|Export map to MxN pixel bitmap|inge@lysator.liu.se|Inge Wallin}}<br />
{{FeatureTodo|Marble|Support for MarbleWidget::setEnabled( bool )|inge@lysator.liu.se|Inge Wallin}}<br />
{{FeatureTodo|Marble|Map Contents translation|tackat@kde.org|Torsten Rahn}}<br />
{{FeatureTodo|Marble|Editing GeoDataFeatures|ewoerner@kde.org|Eckhart Wörner}}<br />
{{FeatureTodo|Marble|Update Map ("F5")|jensmh@gmx.de|Jens-Michael Hoffmann}}<br />
{{FeatureInProgress|Marble|Bookmarks||Gaurav Gupta}}<br />
{{FeatureInProgress|Marble|Planet Filter||Harshit Jain}}<br />
{{FeatureInProgress|Marble|Time KML support||Harshit Jain}}<br />
{{FeatureInProgress|Marble|Layer Management Class|rahn@kde.org|Torsten Rahn}}<br />
{{FeatureInProgress|Marble|Plugin architecture for map layers|rahn@kde.org|Torsten Rahn}}<br />
{{FeatureInProgress|Marble|Extending GeoPainter|rahn@kde.org|Torsten Rahn}}<br />
{{FeatureInProgress|Marble|Marble Runners|hdevalence@gmail.com|Henry de Valence}}<br />
{{FeatureInProgress|Marble|GeoClue Integration |ewoerner@kde.org|Eckhart Wörner}}<br />
{{FeatureInProgress|Marble|Routing |jensmh@gmx.de|Jens-Michael Hoffmann}}<br />
{{FeatureInProgress|Marble|More map providers (WMS?) |jensmh@gmx.de|Jens-Michael Hoffmann}}<br />
{{FeatureInProgress|Marble|Winkel Triple projection / equivalent |hdevalence@gmail.com|Henry de Valence}}<br />
{{FeatureInProgress|Marble|Marble WorldClock Plasmoid|hdevalence@gmail.com|Henry de Valence}}<br />
{{FeatureInProgress|Marble|Panoramio Support||Bastian Holst}}<br />
{{FeatureInProgress|Marble|Twitter Plugin||Shashank Singh}}<br />
{{FeatureInProgress|Marble|TimeZone Support|tackat@kde.org|Torsten Rahn}}<br />
{{FeatureInProgress|Marble|MeasureTool plugin|tackat@kde.org|Torsten Rahn}}<br />
{{FeatureInProgress|Marble|Basic KML support|ps_ml@gmx.de|Patrick Spendrin}}<br />
{{FeatureInProgress|Marble|GeoData Model/View Visualization|ps_ml@gmx.de|Patrick Spendrin}}<br />
{{FeatureInProgress|Marble|More generic projection support|inge@lysator.liu.se|Inge Wallin}}<br />
{{FeatureInProgress|Marble|Network plugins|pino@kde.org|Pino Toscano}}</div>Tgridelhttps://community.kde.org/index.php?title=Marble/GPXStatus&diff=74381Marble/GPXStatus2009-11-01T13:09:02Z<p>Tgridel: </p>
<hr />
<div>==Gpx Status== <br />
This page is intended to be a reference as to what needs to be done to update the current GPX implementation in Marble. <br />
<br />
*Remove the Abstract Layer <br />
*Uncouple the current GPS location rendering from the GPS Layer<br />
*Load files through the FileManager<br />
*Complete geodata parser for GPX file type<br />
*Share rendering from the current rendering of GeoDataDocuments<br />
<br />
==Ideas for later==<br />
*Make GPX loading and rendering a plugin</div>Tgridelhttps://community.kde.org/index.php?title=Marble/ModelView&diff=74400Marble/ModelView2009-09-14T17:55:57Z<p>Tgridel: </p>
<hr />
<div>= ModelView framework in Marble =<br />
<br />
Marble uses Qt's Model/View framework as a way to signal updates to a model to interested parts. In that respect, a Model class can wrap any possible data.<br />
<br />
The multiple models in Marble each fit the purpose of feeding some GeoData classes to interested widgets. The way those models are fed could be improved however:<br />
<br />
== Model and Data Location ==<br />
<br />
* At the moment, each Model contains the list/vector/tree of data it presents. This is not a problem per se, unless all those models present the same data, and retain their own copies. Once the time to edit this data comes, it is tedious or quite impossible to trace back all those copies.<br />
<br />
The solution to this is twofold: <br />
** keep data unique in one store (wherever that is, a Model class or a list in one Manager)<br />
** Try and manipulate references to the data in the Models in such a case: with one change to the central data, multiple models can be notified and each react differently for the views they feed. <br />
<br />
== Model or not Model ==<br />
<br />
* The Model-View framework is designed to hide the details of the model content, and to present it in a standardised way to views. The advantage of this solution is that the View need not know much about the data it presents.<br />
<br />
This solution however is not a one size fit all, because an interested class with some knowledge of the GeoDataTypes for example would be far better off manipulating the methods of GeoData classes. <br />
<br />
As a consequence, a choice should be made whether to access GeoData through the model-view framework (nice for a List Widget or for a generic presentation of 'data as a tree', really not so nice for a class which for example would like to calculate the bounding box of all geometric data of a GeoDataDocument, or even for the File read/write, as the knowledge of data types is really known).<br />
<br />
== State of the Model ==<br />
<br />
There are multiple models with various levels of implementation. Some are needed, others should die...<br />
<br />
Here is the list of Model class, and a description of how they are used.<br />
<br />
=== QAbstractItemModel ===<br />
* {{class|GeoDataDebugModel|kdeedu|4.x}}<br />
It represents a data file, parsed into a {{class|GeoDataDocument|kdeedu|4.x}} tree structure.<br />
<br />
It is used by the {{class|DataViewPlugin|kdeedu|4.x}} debug plugin (and is broken atm)<br />
<br />
* {{class|GpxFileModel|kdeedu|4.x}}<br />
It represents a list of gpx data file represented as {{class|GpxFile|kdeedu|4.x}}<br />
<br />
This was originally intended to but used as the model for the File List View ( which is accessible by running marble with --enableFileView ) but has since been replaced by the FileViewModel.<br />
<br />
The model that is in the GpsLayer is currently only being used as a collection class and is deprecated. This, along with the whole current GPX implementation, needs to be removed and updated to the current concepts in Marble. See [[Projects/Marble/GPXStatus|Gpx Status]]<br />
<br />
* {{class|MarbleGeometryModel|kdeedu|4.x}}<br />
It represents the {{class|GeoDataGeometry|kdeedu}} and the {{class|GeoDataFeature|kdeedu|4.x}} items of the last opened {{class|GeoDataDocument|kdeedu|4.x}}.<br />
<br />
It is used by the {{class|GeoRenderPlugin|kdeedu|4.x}} to access the list of vector data to draw it.<br />
<br />
=== QAbstractListModel ===<br />
* {{class|FileViewModel|kdeedu|4.x}}<br />
It represents the list of opened files. The {{class|PlacemarkManager|kdeedu|4.x}} appends the documents it opens, and the {{class|MarbleWidget|kdeedu}} appends the gpx files it opens.<br />
<br />
It is used by the {{class|FileViewFloatItem|kdeedu|4.x}} and manipulated by the {{class|PlaceMarkManager|kdeedu|4.x}} and the {{class|MarbleModel|kdeedu|4.x}}.<br />
<br />
* {{class|MarbleGeoDataModel|kdeedu|4.x}}<br />
It represents a list of {{class|GeoDataDocuments|kdeedu|4.x}}. Only the {{class|PlacemarksPlugin|kdeedu|4.x}} uses it<br />
<br />
It is used by no other code.<br />
<br />
* {{class|MarblePlacemarkModel|kdeedu|4.x}}<br />
It represents the list of all Placemarks of all opened kml files. the {{class|PlaceMarkManager|kdeedu|4.x}} appends all the placemarks after reading a file.<br />
<br />
It is used by the {{class|MarbleControlBox|kdeedu|4.X}} to provide the list of placemarks to search for, and by the {{class|PlacemarkLayout|kdeedu|4.x}} to determine layouting on the map.</div>Tgridelhttps://community.kde.org/index.php?title=Marble/ModelView&diff=74399Marble/ModelView2009-09-13T16:14:52Z<p>Tgridel: </p>
<hr />
<div>== ModelView framework in Marble ==<br />
<br />
Marble uses Qt's Model/View framework as a way to signal updates in a model to interested parts. In that respect, a Model class can wrap any possible data.<br />
<br />
Here is the list of Model classes, and a description of how they are used.<br />
<br />
=== QAbstractItemModel ===<br />
* {{class|GeoDataDebugModel|kdeedu|4.x}}<br />
It represents the tree of {{class|GeoDataObject|kdeedu|4.x}} elements corresponding to a {{class|GeoDataDocument|kdeedu|4.x}}.<br />
<br />
It is used by the {{class|DataViewPlugin|kdeedu|4.x}} debug plugin (and is broken atm).<br />
<br />
* {{class|GpxFileModel|kdeedu|4.x}}<br />
It represents a list of gpx data files represented as {{class|GpxFile|kdeedu|4.x}}<br />
<br />
This was originally intended to but used as the model for the File List View ( which is accessible by running marble with --enableFileView ) but has since been replaced by the FileViewModel.<br />
<br />
The model is used as a member in the GpsLayer to hold the list of gpx files as a collection class and is deprecated. This, along with the whole current GPX implementation, needs to be removed and updated to the current concepts in Marble. See [[Projects/Marble/GPXStatus|Gpx Status]]<br />
<br />
* {{class|MarbleGeometryModel|kdeedu|4.x}}<br />
It represents the {{class|GeoDataGeometry|kdeedu}} and the {{class|GeoDataFeature|kdeedu|4.x}} items of the last opened {{class|GeoDataDocument|kdeedu|4.x}}.<br />
<br />
It is used by the {{class|GeoRenderPlugin|kdeedu|4.x}} to access the list of vector data and draw it.<br />
<br />
=== QAbstractListModel ===<br />
* {{class|FileViewModel|kdeedu|4.x}}<br />
It represents the list of opened files. The {{class|FileManager|kdeedu|4.x}} signals it about the documents it opens or closes.<br />
<br />
It is used by the {{class|FileViewFloatItem|kdeedu|4.x}} and by a List widget in the {{class|MarbleControlBox|kdeedu|4.X}}.<br />
<br />
* {{class|MarbleGeoDataModel|kdeedu|4.x}}<br />
It represents a list of {{class|GeoDataDocuments|kdeedu|4.x}}. Only the {{class|PlacemarksPlugin|kdeedu|4.x}} uses it.<br />
<br />
It is used by no other code.<br />
<br />
* {{class|MarblePlacemarkModel|kdeedu|4.x}}<br />
It represents a list of Placemarks.<br />
<br />
The {{class|PlaceMarkManager|kdeedu|4.x}} appends all the placemarks contained in the {{class|GeoDataDocument|kdeedu|4.x}} it knows about in its instance.<br />
<br />
The {{class|MarbleRunnerManager|kdeedu|4.x}} appends the list of placemarks that the Runners found in its instance.<br />
<br />
It is used by the {{class|MarbleControlBox|kdeedu|4.X}} to provide a list of placemarks (either from the PlacemarkManager or from the MarbleRunnerManager).<br />
<br />
It is also used by the {{class|PlacemarkLayout|kdeedu|4.x}} to determine layouting on the map.</div>Tgridelhttps://community.kde.org/index.php?title=Marble/Placemark&diff=74390Marble/Placemark2009-09-12T19:19:01Z<p>Tgridel: </p>
<hr />
<div>== Overview of Placemarks in Marble ==<br />
<br />
The {{class|PlaceMarkManager|kdeedu|4.x}} is handled by the {{class|MarbleModel|kdeedu|4.x}} and provides registration of Placemarks from KML data files for Marble (it should handle placemarks for all data files in the future).<br />
<br />
It depends on the {{class|FileManager|kdeedu|4.x}} which performs the actual file reading and then signals that files have been added/removed.<br />
<br />
The PlaceMarkManager keeps some information related to the data that it presents. It provides a {{class|MarblePlacemarkModel|kdeedu|4.x}} which presents the list of all placemarks of all files<br />
<br />
<br />
The {{class|MarbleRunnerManager|kdeedu|4.x}} is a framework to query external servers for placemarks. The user types the query in the search line of the ControlBox widget, and then the MarbleRunnerManager triggers asynchronous runners which inherit from {{class|MarbleAbstractRunner|kdeedu|4.x}}.<br />
<br />
The MarbleRunnerManager holds the resulting Placemarks until another query is input.</div>Tgridelhttps://community.kde.org/index.php?title=Marble/GraphicsViewGeoParser&diff=74420Marble/GraphicsViewGeoParser2009-09-08T21:18:49Z<p>Tgridel: </p>
<hr />
<div>== The Problem ==<br />
Data is read from files with the [[Projects/Marble/GeoData/GeoDataParsing|GeoDataParser framework]] in order to be displayed.<br />
<br />
The [[Projects/Marble/GeoData|GeoData framework]] is used to manipulate {{class|GeoDataObject|kdeedu|4.x}} classes. GeoData should be accessed in a sensible way because of its "shared data" logic.<br />
<br />
Items to be displayed are {{class|GeoGraphicsItems|kdeedu|4.x}}, following the [[Projects/Marble/GeoGraphicsViewOverview|GeoGraphicsView]] framework.<br />
<br />
The Link between GeoData and GeoGraphicsItems has to permit:<br />
* To display corresponding items, and get the data updates.<br />
* To possibly edit data through interaction (i.e. clicking on the map, dragging an item...)<br />
<br />
== A bit of history and issues ==<br />
=== GeoData manipulation ===<br />
Previously, GeoData has been accessed through shallow copy from the rendering objects. this posed problems as GeoData uses data sharing internally and updates in GeoData were thus not seen in Items.<br />
<br />
=== Model-View framework ===<br />
Also, the Model-View framework from Qt has been used many times with various shades of success for that specific matter (see [[Projects/Marble/ModelView|Model View status]] for more info).<br />
<br />
A "Model" in the Model-view framework in Qt is an interface to facilitate access to lists of data from widgets which need not know what data is inside. The interface may sound nice, but the abstraction is a bit too much when the interaction between data and its representation increases. These "Model" are also not data stores in order to avoid the previous issue.<br />
<br />
=== Multiple Inheritance try ===<br />
Multiple inheritance could be possible where GeoGraphicsItems would also be GeoNodes, but that raises issues regarding modularity, because both the model and its representation would be in the same object. We also try not to have multiple inheritance at all so...<br />
<br />
== Possible Solutions and discussion ==<br />
=== Display the data ===<br />
We should follow an [http://en.wikipedia.org/wiki/Observer_pattern Observer Pattern] logic for the first goal whereas GeoGraphicsItems would observe the GeoData.<br />
<br />
Multiple options are available for an observer pattern implementation:<br />
* use signal/slots<br />
After all, this is one of Qt's best success.<br />
<br />
For reference, [http://doc.trolltech.com/4.6-snapshot/animation-overview.html#animations-and-the-graphics-view-framework Qt4.6 snapshot doc] regarding animation proposes for GraphicsItems to inherit QObject to receive signals from animation framework.<br />
<br />
A less obtrusive solution is possible with some intermediary QObject-derived class which would manipulate GeoGraphicsItems when GeoData updates.<br />
<br />
<br />
* implement light event handling methods (like java event listener classes)<br />
<br />
<br />
* use qt's model-view framework of itemviews-ng<br />
More info needed to see if it fits the observer solution...<br />
<br />
A first glance at [[http://labs.trolltech.com/docs/Projects/itemviews-ng/ ItemView-ng Project API]] shows not much radical change in the model interaction compared to previous itemview...<br />
<br />
=== Edit the data ===<br />
We should think carefully about storing data to provide the second goal, so that editing is done in the GeoData and then updates happen in GeoGraphicsItems as a result.</div>Tgridelhttps://community.kde.org/index.php?title=Marble/GraphicsViewGeoParser&diff=74418Marble/GraphicsViewGeoParser2009-09-08T17:56:35Z<p>Tgridel: </p>
<hr />
<div>== The Problem ==<br />
Data is read from files with the [[Projects/Marble/GeoData/GeoDataParsing|GeoDataParser framework]] in order to be displayed.<br />
<br />
The [[Projects/Marble/GeoData|GeoData framework]] is used to manipulate {{class|GeoDataObject|kdeedu|4.x}} classes. GeoData should be accessed in a sensible way because of its "shared data" logic.<br />
<br />
Items to be displayed are {{class|GeoGraphicsItems|kdeedu|4.x}}, following the [[Projects/Marble/GeoGraphicsViewOverview|GeoGraphicsView]] framework.<br />
<br />
The Link between GeoData and GeoGraphicsItems has to permit:<br />
* To display corresponding items, and get the data updates.<br />
* To possibly edit data through interaction (i.e. clicking on the map, dragging an item...)<br />
<br />
== A bit of history and issues ==<br />
=== GeoData manipulation ===<br />
Previously, GeoData has been accessed through shallow copy from the rendering objects. this posed problems as GeoData uses data sharing internally and updates in GeoData were thus not seen in Items.<br />
<br />
=== Model-View framework ===<br />
Also, the Model-View framework from Qt has been used many times with various shades of success for that specific matter (see [[Projects/Marble/ModelView|Model View status]] for more info).<br />
<br />
A "Model" in the Model-view framework in Qt is an interface to facilitate access to lists of data from widgets which need not know what data is inside. The interface may sound nice, but the abstraction is a bit too much when the interaction between data and its representation increases. These "Model" are also not data stores in order to avoid the previous issue.<br />
<br />
=== Multiple Inheritance try ===<br />
Multiple inheritance could be possible where GeoGraphicsItems would also be GeoNodes, but that raises issues regarding modularity, because both the model and its representation would be in the same object. We also try not to have multiple inheritance at all so...<br />
<br />
== Possible Solutions and discussion ==<br />
=== Display the data ===<br />
We should follow an [http://en.wikipedia.org/wiki/Observer_pattern Observer Pattern] logic for the first goal whereas GeoGraphicsItems would observe the GeoData.<br />
<br />
Multiple options are available for an observer pattern implementation:<br />
* use signal/slots (after all, this is one of Qt's best success)<br />
* implement light event handling methods (like java event listener classes)<br />
* use qt's model-view framework of model-view-ng (more info needed to see if it fits the observer solution)<br />
<br />
=== Edit the data ===<br />
We should think carefully about storing data to provide the second goal, so that editing is done in the GeoData and then updates happen in GeoGraphicsItems as a result.</div>Tgridelhttps://community.kde.org/index.php?title=Marble/Plugins&diff=74434Marble/Plugins2009-08-15T22:57:04Z<p>Tgridel: Created page with 'Plugins can be implemented around marble. The interface for plugins relies on the {{class|PluginInterface|kdeedu|4.x}} base class. All plugins will have their lifecycle managed ...'</p>
<hr />
<div>Plugins can be implemented around marble.<br />
<br />
The interface for plugins relies on the {{class|PluginInterface|kdeedu|4.x}} base class.<br />
All plugins will have their lifecycle managed by the {{class|PluginManager|kdeedu|4.x}}.<br />
<br />
They will thereafter be managed by another class handling them.<br />
<br />
There are different categories such as:<br />
<br />
== Network Plugins ==<br />
They inherit from {{class|NetworkPluginInterface|kdeedu|4.x}}<br />
They are manipulated by an {{class|HttpDownloadManager|kdeedu|4.x}}<br />
<br />
== Position Provider Plugins ==<br />
They inherit from {{class|PositionProviderPluginInterface|kdeedu|4.x}}<br />
They are manipulated by the {{class|PositionTracking|kdeedu|4.x}} for now, and a new manager that tracks the history of positions should be implemented to replace the old gps layer.<br />
<br />
== Render Plugins ==<br />
They inherit from {{class|RenderPluginInterface|kdeedu|4.x}}</div>Tgridelhttps://community.kde.org/index.php?title=Marble/GeoData&diff=74375Marble/GeoData2009-08-15T09:23:16Z<p>Tgridel: </p>
<hr />
<div>== GeoData Overview ==<br />
<br />
The Marble Framework has got two major design goals:<br />
* The Marble Framework should build strongly on [http://qt.gitorious.org/qt/pages/ApiDesignPrinciples#Naming+Enum+Types+and+Values Qt-API principles] and Qt design concepts.<br />
* The map data should be handled using classes that are modelled after the [http://code.google.com/intl/de/apis/kml/documentation/kmlreference.html KML OGC standard].<br />
<br />
The KML standard itself describes the properties of a data model for maps: <br />
<br />
<br />
<br />
GeoData holds the data model that is internally used for any geographic information which should be rendered. It deals whith the data only, drawing is performed elsewhere.<br />
<br />
{{class|GeoDataDocument|kdeedu|4.2}} describes a document.<br />
<br />
A model representation is built through parsing of files and creating a stack of {{class|GeoDataObject|kdeedu|4.2}} representing its data.<br />
The Geodata objects are all modeled after the Google KML files as defined in the [http://code.google.com/apis/kml/documentation/kml_tags_21.html KML documentation].<br />
<br />
;[[/GeoDataUse|Use cases for GeoData classes]]<br />
;[http://websvn.kde.org/*checkout*/trunk/KDE/kdeedu/marble/src/lib/geodata/data/README.html GeoData API Description]<br />
<br />
<br />
;[[/GeoDataParsing|Parsing GeoData]]<br />
;[[/GeoDataWriter|Writing GeoData]]</div>Tgridelhttps://community.kde.org/index.php?title=Marble/GeoData/GeoDataWriter&diff=75136Marble/GeoData/GeoDataWriter2009-08-15T09:21:50Z<p>Tgridel: moved Projects/Marble/GeoDataWriter to Projects/Marble/GeoData/GeoDataWriter</p>
<hr />
<div>== Writing XML documents with Marble == <br />
<br />
* How to set the type of writer? <br />
** GeoParser uses a single hash table to map qualified names to the GeoParser that is to deal with that tag. <br />
** This will have to be dealt with differently in the GeoDataWriter because we will have to be able to deal with the one to many mapping. ( i.e. one GeoData format will be exportable to many different types of XML and we will need to choose the GeoTagWriter based on the desired XML output.</div>Tgridelhttps://community.kde.org/index.php?title=Marble/GeoData&diff=74374Marble/GeoData2009-08-02T13:32:47Z<p>Tgridel: </p>
<hr />
<div>== GeoData Overview ==<br />
<br />
The Marble Framework has got two major design goals:<br />
* The Marble Framework should build strongly on [http://qt.gitorious.org/qt/pages/ApiDesignPrinciples#Naming+Enum+Types+and+Values Qt-API principles] and Qt design concepts.<br />
* The map data should be handled using classes that are modelled after the [http://code.google.com/intl/de/apis/kml/documentation/kmlreference.html KML OGC standard].<br />
<br />
The KML standard itself describes the properties of a data model for maps: <br />
<br />
<br />
<br />
GeoData holds the data model that is internally used for any geographic information which should be rendered. It deals whith the data only, drawing is performed elsewhere.<br />
<br />
{{class|GeoDataDocument|kdeedu|4.2}} describes a document.<br />
<br />
A model representation is built through parsing of files and creating a stack of {{class|GeoDataObject|kdeedu|4.2}} representing its data.<br />
The Geodata objects are all modeled after the Google KML files as defined in the [http://code.google.com/apis/kml/documentation/kml_tags_21.html KML documentation].<br />
<br />
;[[/GeoDataParsing|Parsing GeoData]]<br />
;[[/GeoDataUse|Using GeoData classes]]<br />
;[http://websvn.kde.org/*checkout*/trunk/KDE/kdeedu/marble/src/lib/geodata/data/README.html GeoData API Description]</div>Tgridel