[Panel-devel] things to do

Aaron J. Seigo aseigo at kde.org
Sat May 19 00:25:00 CEST 2007


hey...

today i committed RootWidget to workspace/plasma/plasma/ ... Desktop will be 
used on the panels as well as the root desktop, so i pulled out the root 
specific stuff and put it into RootWidget. RootWidget creates a Desktop and 
full screens it.

Desktop now implements drawBackground rather than just relying on QGV for that 
functionality; the reason is that it is time to put proper background support 
in.

RootWidget will also be getting another bit of controls which will be a 
QWidget that sits on top of the Desktop QGV. the idea is to make it expand to 
show some basic desktop controls when the mouse hovers on it. those controls 
will include: configure, add -> menu, zoom and possibly 'bounce' (between top 
level groups).

i'm waiting on a clock svg from pinheiro to make the clock "work" properly. i 
should have that soon, however. for now you just get to see a rectangle and a 
bunch of errors on console ;) with the svg in hand, this should show the way 
forward for theming and let us start to play with applet/plasmoid concepts.

so .. next steps at this point are:

RootWindow:
* controls box

Desktop (the class):
* take the background rendering from kdesktop and port it to Desktop; one 
added trick is that the rendering will need to be per-Desktop (there will be 
at least two: the root Desktop and a main panel Desktop)
* find a better name for the Desktop object; it's a bit confusing to refer to 
panel contents as Desktop ;)
* add the concept of form factor constraint to Desktop and have it pass that 
on to Plasma::Applets. in lib/plasma.h there is a Plasma::AppletConstraint 
enumeration; that should be used to denote whether an applet is free to size 
itself (e.g. it is on the desktop)
* add support for Plasma::ScreenEdge to Desktop

Clock
* should really be a Plasma::Applet, not a DataVisualization
* needs to be extended to allow for textual as well as graphical 
representations while keeping it simple

Group
* a class that represents a top level group of Plasma::Applets needs to be 
written; generally there will be one top level group that takes up 100% of 
the visible scene and all Applets will be children to it. this will be 
modifiable by interacting with the controls box

Applet Loading
* applet loading needs to be added, probably reusing the Add Applet dialog 
currently in kicker

Widgets (lib/widgets/)
* radio button needed
* icon button needed (i've got something for this coming)
* list widget?

Scripting
* an experiment using Kross might be worthwhile at this point again; it's come 
a long ways since i last looked at it.. it may be enough at this point.

i have additional work left on the data viz framework classes as well.

if you'd like to help with any of the above, note so in a reply to this 
email... ask questions if you have them. all the above can probably be done 
in parallel were we that lucky to have so many motivated hands ;) please only 
claim items that you actually start working on, however.

known outstanding issues that i haven't gotten around to caring/worrying about 
yet:

* multihead support; we might be ok on xinerama (i haven't checked) but we 
certainly aren't for multihead.

-- 
Aaron J. Seigo
humru othro a kohnu se
GPG Fingerprint: 8B8B 2209 0C6F 7C47 B1EA  EE75 D6B7 2EB1 A7F1 DB43

Full time KDE developer sponsored by Trolltech (http://www.trolltech.com)
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: not available
Url : http://mail.kde.org/pipermail/panel-devel/attachments/20070518/fb28184e/attachment.pgp 


More information about the Panel-devel mailing list