Projects/Plasma/Tasks: Difference between revisions

From KDE TechBase
Line 33: Line 33:
* QtScript bindings to AbstractRunner
* QtScript bindings to AbstractRunner


=== Systray ===
 
* should have borders so as to be able to live on desktop
* grid layout of icons would be nice


=== Plasma ===
=== Plasma ===
Line 52: Line 50:
** <div style="color: green">on mouse over, show a set of small buttons that allow for the following actions: close, configure, lock, information and move. aseigo has graphics for the buttons already. (manyoso)</div>
** <div style="color: green">on mouse over, show a set of small buttons that allow for the following actions: close, configure, lock, information and move. aseigo has graphics for the buttons already. (manyoso)</div>
** add global settings config page, if it exists in the Package (which means adding a pair of entries in packages.cpp for globalconfigui and globalconfigxml), alongside the per-applet ones
** add global settings config page, if it exists in the Package (which means adding a pair of entries in packages.cpp for globalconfigui and globalconfigxml), alongside the per-applet ones
 
* '''systray'''
** should have borders so as to be able to live on desktop
** grid layout of icons would be nice
* '''plasmagik'''
* '''plasmagik'''
** unit tests
** unit tests

Revision as of 10:49, 3 November 2007

Warning
If you clear a task, please write "Completed" near it. If you are still working on it, please put your name. Percentage of the work done is accepted.


Tasks

If you want to claim a task, please put your name (or nickname, both is better) in brackets near the task you wish to claim. Please add it when you start working on it, and if you stop, please remove it, so we can know "who is working on what" and what tasks still needs to be started.

And, of course, this will avoid duplication of work. Thanks a lot! =)

Note
This is a roughly sorted list of tasks that popped out during the meeting. We probably need to categorize it better, like seeing which task is blocker for which other, setting priority, split between "research" and "coding" and things like that. Still sounds like a premature thing though.



KRunner

Major Bugs

In the alt-f2 dialog type a command (like 'kword') and press the button to have more options. Then press the same button again to get less options. => crash After aseigo's patches, it does not crash anymore ; however, trying to show/hide the options repeatedly will lead to options not being shown anymore.

Applets :

  • When one moves the pager applet and every other applet moved after it will be at pos(0,0) of the desktop.
  • The clock applet, currently the only one being integrated in the panel, appears at the left, upon the taskbar.

Runners

  • pull in options from kdesktop/minicli.cpp and merge into shell and app runners
  • Search Runner: use strigi (blocked by Xesam)
  • listen to async match updates (Interface:updateMatches())
  • runners, runners and more runners!

Interface

  • options slide drawer animation

Misc


Plasma

This is what we are focusing on implementing right now:

  • general libplasma
    • unit tests.
    • api documentation reviews
    • XML Config: add support for unsupported data types (these are documented in the API docu)
    • Applet needs a way to access resources for customization (think: clock faces)
    • Need to implement the math in Phase to update the intervals according to the CurveShape, ala QTimeLine (ask aseigo for more details if you find that cryptic ;)
  • Applets
    • application launcher interface
    • taskbar (Robert Knight; others welcome to help)
    • systray (Alexander Rodin; others welcome to help)
    • on mouse over, show a set of small buttons that allow for the following actions: close, configure, lock, information and move. aseigo has graphics for the buttons already. (manyoso)
    • add global settings config page, if it exists in the Package (which means adding a pair of entries in packages.cpp for globalconfigui and globalconfigxml), alongside the per-applet ones
  • systray
    • should have borders so as to be able to live on desktop
    • grid layout of icons would be nice
  • plasmagik
    • unit tests
    • resuscitate trunk/playground/base/plasma/plasmagik (adjam, ruphy)
  • bindings
    • QtScript bindings are being worked on (rdale)
  • RootWidget (the "desktop")
    • Controls box: an expand-on-mouse-over widget that sits on top of the graphicsview and provides discoverable access to zooming, jumping, configuration, adding of elements, locking ...? Currently needs to pretty-fied and the more "techie" options removed (aseigo)
  • Corona (QGraphicsScene subclass)
    • Zooming: 3-level zooming needs to be supported. 100% == 1 item group at full zoom; 50% == all item groups visible with panning with each item replaced by a simple icon; 10% == all item groups visible without panning, each group replaced by a simple icon and items not painted at all
    • Respond to resolution changes
    • Ability to define default panel/desktop/applet layouts without modifying loadDefaultSetup code, e.g. with config files on disk.
  • Views
    • Implement configurable background painting. This can in part be ported from kdesktop for DesktopView.
    • Implement composite based translucency for panels
    • Create a dashboard view (full screen, always on top)
  • DataEngine
    • Configuration parameters for sources

We also have:

  • Implement Zack's physical equations for animations

Nice to have:

  • Implement python bindings of Plasma
  • Associate units with a data source's data?