Hi,

Here's my plan on how to front-port music streams to the 2.9 branch.

1. Implement classes Dispatcher, Stream_event, Listener (move modules from my 
thesis fork)
2. Add dispatchers event_source_, and possibly events_below_, to Context 
class.
3. Make Context::try_music send stream events to the event_source_.
4. Refactor certain iterators (apply-context, time-scaled-music), so that all 
music events are sent to bottom contexts.
5. Refactor commands such as lyricsto, to eliminate busy-playing-event etc.
6. There should now be no dependency on the try_music return value, so it 
should be safe to make Translator_group::try_music an event handler.
7. Add stream events for CreateContext, ChangeContext, Prepare, OneTimeStep, 
SetProperty, etc. These are quite easy to implement.
8. Various cleanups; e.g., remove the unneeded Score_context class.

Comments?

-- 
Erik


_______________________________________________
lilypond-devel mailing list
lilypond-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-devel

Reply via email to