Doors

Doors ToDo!

$Id: todo.xml,v 1.17 2004/04/03 17:54:28 adamcbuckley Exp $

!

Implement init commands
Problem: We must invoke the init() commands when the Part starts to play, not before!
> Add eval invocation code (controller)
> Add corba events to list (midifileplayer)
[general]

!

Load and save compositions
[general]

!

Patent
[general]

!

Add Exceptions to CommittedDeviceDialog
[ui]

!

Add factories to UncommittedDeviceDialog
[ui]

!

Implement other timing types in MidiUtil.getPPQ(..)
[midifileplayer]

!

Opening a MIDI File Player dialog before the corresponding part has started playing shows current settings
[midifileplayer]

!

If a PartElement is re-matched, it is possible that a previously matched Device will be unavailable for the new booking. The Controller releases the previous booking and matches the DeviceElement to a new Device instance. Design issue: If the Device has been modified using a device client, the new match will device will omit such modificatons.
[midifileplayer]

O Linux release
[general]
O Create an applet version. Can we copy the DLLs from the jar file to the cwd?
[general]
O Implement HardwareDevice:Musical
This device is the parent of the 2 midifileplayer factories
[general]
O Create automatic latency calculator
Possibly using a loopback audio cable.
[general]
O SMF to XML studio
Existing SmfToXml: Allow user to select interface, instance names
[general]
O Put "event management" or "trade shows" into the WHATIS
[general]
O Synchronised blocks for many, many users
(CTRL, midifileplayer, UI)
[general]
O Migrate MidiFilePlayerClient to dmidi
[general]
O Get an official server port: IANA application form
[general]
O License content under Creative Commons
[general]
O Slide projector controller
[newdevices]
O Graphics player
[newdevices]
O WAV/MP3 player (research 'acidized')
[newdevices]
O Lights controller
[newdevices]
O Add XML view to CommittedDeviceDialog
[ui]
O Detach controller dialog thread
[ui]
O Implement Save As... for devices
[ui]
O Create persistant explorer folders view, which is built up by navigating through different URLs which contain links to Doors XML files.
[ui]
O Zoom buttons
[ui]
O Icons in PartLabel
[ui]
O CTRL-drag copies
[ui]
O Add tooltips for dialog elements
[ui]
O Move preferred devices up and down
[ui]
O Drag pointers
[ui]
O PartLabel colour
[ui]
O If the user cancels the 'second' match some devices may still be booked in the schedule
[controller]
O play() returns device exceptions in XML
[controller]
O getPartXml returns an array of XML parts in the schedule, so that regestering a UI is faster
[controller]
O Convert command-line options to a .properties file
[controller]
O Groups of Controllers
[longterm]
O Input devices
[longterm]
O Save changes to config file on exit. (Would affect just 'latency' at present.)
[midifileplayer]

¯ Win32 installer
[general]
¯ Think of better names for: Part, Part.Device, PartXML, Schedule
Part, Device, PartXML -> PartElement, Part.Device -> DeviceElement
[general]
¯ Launcher for CTRL, midifileplayer, UI
[general]
¯ Switch to SourceForge.net project news mechanism (?)
[general]
¯ Translate to SWT (?)
[ui]
¯ Create alien writing backdrop for website
[longterm]
¯ Convert website to XML + XSLT (?)
[general]
¯ Boot floppy/CD
[longterm]
¯ SoftSynth midifileplayer
[longterm]
¯ If the config file doesn't specify the latency, then automagically calculate an estimate based on the CPU frequency - it's better than nothing.
[midifileplayer]
¯ Switch from custom Factories to CORBA DII (?)
[midifileplayer]
¯ Switch from int[] to MidiMessage (?)
Ie. our Event class has a reference to a javax.sound.midi.MidiMessage instead of int[] data.
[midifileplayer]
¯ Automatic selection of config file based on MIDI hardware ID
[midifileplayer]