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

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

TOP OF THE LIST

fix cleardesktop button so it dont crash!
    add multiple desktop support?

fix the player to use common timeline

finish audio patch ie other format support in player

fix windows spaceball
    email trolltech on main.cpp issues

fix interface colors for playerbar
add metalic interface
add aqua interface

OTHER STUFF

sync the colorize code with the new effects module code
    find out why we build effects 3 times the first time 1 is added

fix alpha on introduction, fix mac intro to use opengl...

fix mpeg player file name loader - still buggy
move mpeg encoding and playback to the desktop ie out of the player...
migrate to new mpeg code

clean up flip player and remove the preferences file

test the new sync-connect feature in the network module
make sure network module is sending files properly...

remove image from videodata so its not passing clips around and boggind down the
app
--instead, when a image is needed simply... load it from the videodata file :)
fix database issues - database has to be ROCK SOLID
add asset management issues via library ie clip into to textbox for clips
add layer groups...

fix texture scaling on objects ie sphere/cylinder
fix the mesh object
fix the bezier object ie add control points
add lights
fix alpha channel on particles with texture

add font depth test routines for extrude

fix 500 x/y/z placement issue in animation



add shared desktop

start work on firewire video capture, playback and deckcontrol
get a nice interface going for the text module...
get a nice interface going for the paint module...



* Major implementations

need to move to qt containers to store and sort layers in the modules
see QPtrList for more info!
need to add zdepth sorting bigtime
also would be cool to add layer grouping

* Module implementations

For our editing module, play around with the desktop, it will be a
QCanvas/QPainting
where each clip will be analyzed for length a a clip-box will be drawn, in a
pannable area

the add buttons will add audio or video only at this point, effects (dual
stream, overlay)
we can figure out later but they shouldnt be that hard!
fix editing module - take bars into consideration - restore from last backup

* the plugin openApi initative

then we need to figure out how to get dll code into the objects directory to
enable all effects
as plugins - take a look at how discreeet/adobe/gimp passes the interface
variables around
to make a clean openApi for plugin development!

* bugs and fixes

add hide video out option to animation module (applies to editing module...)

fix effect module so that its always working with meshes and fix rendering so we
render the layer size only ie if a clip is 320x240 we render it back out at
320x240

add support for multiple desktops via database

can we add a option for a single opengl render space thats re-drawn when we
switch modules? this way the system isnt initializing separate rederspaces which
takes up memory. right now the system needs at least 128mb tram to run properly
- although with newer cards this is less of a issue as the are coming out with
256mb thesew days as standard

move desktpo interface into desktop itself should be easy now that its out of
the main routine

fix red-frame selection on startup backdrop

get rid of objectmenu code in edit.cpp

get rid of cross moudle import for modules that are compatible... ie animation,
editing and text
actually we'll fix this so you can import cross module but it imports as a
nested subset

add play mode options dropdown to player menu ie start to finish, loop, or ping

add play option after render ie <play last>

make render button turn red or green when rendering so one knows to click to
stop

add new layer should always show up in front of whats there

and add lights

add library functions - ie asset data
and add textures to particles :)

Fix the struct related bug thats in MainWindow.cpp  line 495

and all videoData.print errors in desktop etc ir paint.cpp line 411

problem seems to be with functions embeded in struct in coreobject.h line 137

check database startup problems ie corruption etc and sync to last number of
clips

We need to break out the desktop interface  code from jahcontrol and move it
into the desktop
module...


-----------------------------------------------
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 (suggested 13-OCT2003)
	
	- Add menus and hot-keys for common functions and module switching
	  (suggested 13-OCT2003)
	
	- Move "Preferences" to a tree-view/paneled dialog for extensibility and
	  common utilitarian stuff (suggested 13-OCT2003)
	 
	- 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")
	  
