[Cosmo-dev] Refactor of cal_main.js

Matthew Eernisse mde at osafoundation.org
Thu Aug 10 14:15:04 PDT 2006


Here's my first pass at a proposed plan for breaking up the Cal object 
in cal_main.js in the Web UI. I hope it can serve as a jumping-off point 
for a bit of discussion.

1. GUI container-elem init
2. Lang-specific resource init
3. Rendering basic UI elem
4. Loading events
5. Event conflict calculations
6. Appending/rendering events on canvas
7. Save/remove events (deprecate)
8. Navigation / cal-switching
9. Dialog box (error, remove, etc.)
10. Time/position calculations on canvas
11. ID/datetime attribute extraction (deprecate)
12. App-specific date-calc funcs
13. Timeout/keepalive

The only significant departure from the existing section divisions in 
the file is breaking the conflict code out into its own chunk.

The final organization will of course be influenced by the big changes 
from (1) re-architecting to use Dojo topics and (2) changes to 
accommodate other types of items than events. But it is already clear 
that a lot of the code in the save/remove area and the 
attribute-extraction area will eventually be deprecated.


Matthew








More information about the cosmo-dev mailing list