Original Plan

''This is the original 2.0 plan created from very early discussions on IRC and is now OUT OF DATE (especially with respect to technologies).

Just copied here for reference so everything is in one place. (From http://www.openlp.org/en/developer_documentation/version_20/plan.html)''

Language:

Python + wxpython Concerns over installing reliably on Windows to be investigated

Technologies:

Still undecided over SDL and Cairo.

Database:


 * Plugin controlled database
 * Songs being the item requiring a database (sqlite3 preferred)
 * Bibles/PowerPoints/Images/Videos are individual files so db api may not be relevant
 * Some central method of storing key/value pairs - to be decided

Design:


 * Core system with:
 * Media manager
 * OOS
 * Theme manager
 * Control Panels
 * Previews
 * Keep the UI from 1.0
 * Plugins
 * "Themeable" plugins - Attach to Theme manager
 * "Media" plugins can
 * Dock into media manager
 * Provide an "OOS" object
 * Use the drawing canvases (preview and main output(s)?)
 * Provide a settings tab
 * Write to Control Panel
 * Respond to events (e.g. keyboard/mouse) in a standard fashion
 * "Layers" - e.g. ordering of bg image/text/alert messages etc

Other:


 * Better searches (e.g. lucene)
 * Database design. Based on 1.2 probably

Tasks:


 * Project lead: who_da_fly
 * UI: wydsiwyrg, mijiti
 * Plugin Interface: emsearcy
 * Song plugin: scottles, mijiti
 * PowerPoint: gushie
 * SDL investigation: mijiti
 * Cairo investigation: scottles
 * Database: mijiti?
 * Theme manager: tmckellar?