44 lines
1.9 KiB
Plaintext
44 lines
1.9 KiB
Plaintext
|
|
! title TODO list for the Non-sequencer
|
|
|
|
--
|
|
|
|
; General
|
|
|
|
* per phrase tempo setting? Perhaps a percentage of global tempo?
|
|
* add channel field to event list widget (but channel bits in pattern
|
|
event lists are currently meaningless.)
|
|
* add uneditable "other" tab to event list widget.
|
|
* new Phrase playback mode. In this mode, a single phrase is looped,
|
|
and the next phrase to be looped can be queued. This is similar the
|
|
the playlist, but not linear from bar 1.
|
|
* live performance record. Does this have to be internal to Non? Is
|
|
there no jack MIDI capable recorder that could be connected to all
|
|
non ports? How would ports be handled anyway? As separate tracks in
|
|
an SMF-1 file, perhaps?
|
|
* add global setting for composer name/copyright to be included in
|
|
song files.
|
|
* !!! now that we're not using stupid-ass STL list container for the
|
|
event lists we can perhaps keep a pointer to the next event in the
|
|
playback thread, which would eliminate much overhead. This might
|
|
also require keeping a "dirtied" bit in the grid to let the
|
|
playback thread know that the UI thread has changed the list
|
|
between process calls (also, what about transport relocations?)
|
|
* guess key signature of imports?
|
|
* figure out how to handle SysEx events with Jack MIDI (packetize them?)
|
|
* add chords to scale list... a pattern using the scale of a chord
|
|
would contain a melody within that chord.
|
|
|
|
; Canvas
|
|
|
|
* custom scrollbar widget (dots)
|
|
* add vertical scrollbar widget to canvas.
|
|
* update beat/measure line drawing when BPB changes.
|
|
* update phrase height when number of patterns changes... (good use
|
|
for a signal?)
|
|
* phrases need a way to show/hide relevant patterns. The whole
|
|
"mapping" system is a total mess. How about only showing rows
|
|
containing events? How would one add a pattern in this system? A
|
|
button that adds an event for the given pattern?
|
|
* split canvas into separate widgets (ruler, names, canvas)?
|