
TODO NOTES AND DEBUGGING
-----------------------------------------------

-----------------------------------------------
jah to do list here
-----------------------------------------------

TOP OF THE LIST (next 30 days/RC2)

	1. Add multiple/shared desktop support via database
	2. finish keyframer widget
	3. Add true tree based effects nodes
	4. Port editing module to OsX and windows
	5. Add HDR image file format support
	6. Fix windows spaceball
	7. rewrite encoder
	8. integrate new openobjectlib with true shader support
	9. add support for true 3d formats such as x3d
	10.add support for 3d models on desktop as asset type
	11.add full support for all media cross platform
	12.finish tracker
	13.fine tune keyer
	14.fine tune tracker
	15.rewrite player for true audio support

OTHER STUFF

	1. finish the new sync-connect feature in the network module
	2. fix database issues - database has to be ROCK SOLID
	3. add asset management issues via library ie clip into to textbox for clips
	4. add layer groups...
	5. fix texture scaling on objects ie sphere/cylinder
	6. fix the bezier object ie add control points
	7. add proper control over lights
	8. fix alpha channel on particles with texture
	9. fix 500 x/y/z placement issue in animation
	10.start work on video io module with firewire capture, playback and deckcontrol
	11.get a nice interface going for the text module...
	12.get a nice interface going for the paint module...
	13.add restore from last backup
	14.integrate the openefx plugin initative
	15.add play option after render ie <play last>
	16.make render button turn red or green when rendering so one knows to click to stop
	17.add library functions - ie asset data
	18.add proper support for particle engine

-----------------------------------------------
Devin's TTD (things to do) list here
-----------------------------------------------
General:
	- Talk to Jah and others about off-loading some of Jah's work to me or
	  others.
	
	- Figure out who is responsible for builds for each platform and post to
	  the web
	
	- Figure out who is responsible for testing the applications on each
	  platform and post to the web
	
	- Figure out who is responsible for each module's development (module
	  coordinator?) and post to the web
	
	- Get agreement on the names and definitions of the various user interface
	  items and post to the web
	
General Architecture:
	- Create a JahLoader class called from the JahController class.
	  Resposibilities: load the application settings, load the hardware
	  plug-in, load the effects plug-ins, load the ser settings (Workspace
	  settings, last state of the application and any network connections), and
	  connect to defined network connections. Returns: Application Settings,
	  Hardware Interfaces, Effects Plug-Ins, and User Settings.
	
	- Define the hardware extension interface API (based on OpenML)
	
	- Refactor and Define the "JahCore" API. The GUI model will be able to talk
	  to "JahCore" directly. The command-line will be able to talk to "JahCore"
	  via a proxy interface.
	
	- Add a "JahUser" class to the model to handle user specific settings,
	  check-in, and check-out of assets

Asset Management:
	- Establish object/database model for asset management (local, workgroup
	  and JahNet)
	
	- Create a Project (Movie), Local, Workgroup and JahNet Library module
	  (possible replacement for current "Desktop" module?)

GUI Improvements:
	- Move module bottoms to a toolbar across the top	
	- Add menus and hot-keys for common functions and module switching
	- Move "Preferences" to a tree-view/paneled dialog for extensibility and
	  common utilitarian stuff	 
	- Add a "Console" tool for direct direct entry of commands to "JahCore".
	
	- Convert "module" paradigm to a "Tool" paradigm. Similar "Tools" are part
of "Workspace". The user then switches between "Workspaces". The user can custom
design a "Workspace" to include the the tools he/she wants.

Editor Improvements:
	(NOTE: In order to be successful, this has to work above all other stuff.
	If this doesn't work right, nobody will ever use JFX.)
	
	- Add "Scope" to area being edited (Project, Scene, Shot, Composition)
	
Compositor Improvements:
	- Add a layered timeline whose scope is defined in the editor
	
	- Rename "Animation" to "Compositor" if it makes more sense. If not, then
	  break down the differences between the two, and split them into two
	  modules(?)
	  
	  (Brought to you by the number "2" and the letter "E")
	  
