1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122
|
TODO list
=========
('-' means open issue; "#" partly completed; '*' means completed)
* i18n
Every sensor must be able to bring its own locale files.
* layout anchors
The hotspot for placing widgets has to be changable (N, W, S, E, NW, NE,
SW, SE). This might require hacking TargetGroup and TargetArray only,
if we're lucky.
* fix memory leaks (seems OK; nothing to fix)
How good is the garbage collection of Python really? We have lots of cyclic
references.
* implement Bonobo target
A Bonobo target can embed Bonobo components such as panel applets. That would
be great. (most useful things are already implemented)
* better interaction with window manager
Obey the standards of freedesktop.org.
* make the installer work
The installer should handle system-wide and user-only installations.
* gnome-session integration
* use GNOME-VFS for accessing displays
This would make it possible to have remote displays or displays in archives.
* Improve performance/reduce memory consumption by caching values and using
Singleton patterns.
* use C code for retrieving system information in libdesklets
Maybe use libgtop.
* window shapes
Window shapes provide a simple way for simple transparency by cutting holes
into a window.
* scripting in .display files
Allow scripts in .display files. (needs testing)
* make 'watch' property more flexible
E.g. allow things like watch="'Temp:'sys:temp' C'".
DONE using inline scripting.
* finish the TargetExpander class and use the new property system
(doc/Properties.txt).
* additionally use FAM for the FileWatcher.
The FileWatcher should use the File Alteration Monitor where available.
Use http://python-fam.sf.net. (v0.30 or v0.31) or gnome-vfs.
* make TargetCanvas a SVG based canvas (using librsvg)
* TargetPlotter uses SVG
* remove vfs/ and tools/ because they are no longer useful (and never really
worked)
* deprecate Sensors in the current way (we'll have inline scripting with
restricted access to the system). Sensors will be data sources and nothing
else (check out PSI, LTV and RDG Sensors). v.0.30 will deprecate Sensors and
v0.31 will remove support for it.
* user frontend for most administration tasks of gDesklets (has to be completed
for v0.30)
* fix the dialog module (currently a hack is needed to make it work with
gtk+-2.5.x!) --> Introduced HIGDialog, which is a HIG compliant gtk.Dialog.
- rework TargetHTML and with gnomevfs 2.8 / 2.10
TargetHTML : current implementation uses URLFancyOpener and starts a
new thread.
LogViewer : loop forever waiting for an event.
gnomevfs.async could be used instead.
edit1: gnomevfs.read_entire_file does not block all threads anymore.
High priority:
--------------
# improve exception handling (check the spots where exceptions are thrown)
# Rewrite the logger with the logging module. Rework the LogViewer.
- themes support
Make themes possible by using Cascading Stylesheets maybe. (v0.3x or v0.40)
- fill libdesklets.controls
Normal priority:
----------------
# reference for desklet authors
The reference (docbook format for yelp) should be created from the source
code of gDesklets automatically.
- Write a DTD; the display files are using the XML language.
- implement grouping of displays
This would allow to move a cluster of displays when the user moves one
display in the cluster.
- use gnomevfs for <html> element
Low priority:
-------------
- migration of gDeskCal to gDesklets
Ideally, we can reuse the iCalendar stuff and only replace the calendar
display itself with gDesklets. A standalone version of gDeskCal could use a
slick runtime version of gDesklets. Not every gDeskCal user needs the power
of gDesklets.
|