Currently, MusE has the pianoroll editor, drum editor, score editor,
then the controller editor which is inside the pianoroll/drum editor.
All these editors have a very similar concept: the "time axis" is
vertical and (almost) linear, they handle parts, and events are
manipulated similarly.
A unified editor shall be created which allows you to combine different
kinds of editors in one window, properly aligned against each other.
These "different kinds of editors" shall be handled as "slots"; one
unified editor window consists of:
- A menu bar, containing stuff suitable for the complete window,
which might include window name, MDI-ness etc.
- A toolbar which contains controls suitable for every single slot.
- A container with one or more slots; the slots can be scrolled in
y-direction if there are multipe slots.
- A time-scrollbar with zoom
Each slot contains the following:
- A menu button, button box or control panel for setting up this
particular slot. This could contain "note head colors", "show
a transposing instrument" etc for score edit slots, "event
rectangle color", "grid size" and "snap to grid" for pianoroll/
drum editors.
- The actual canvas
- A y-direction scroll bar, possibly with zoom control (for
pianoroll editor)
The main window does not show its scroll bar if there is only one slot,
because the slot's scrollbar is sufficient then.
Slots can be added, destroyed, moved around, maybe even merged (if the
slot types allow it); basically, you can compare them with the staves
in the score editor.
The slots shall align against each other, that is, if a score editor
slot displays a key change with lots of accidentials, then all other
slots shall either also display the key change (if they're score slots)
or display a gap. Events which happen at the same time shall be at the
same x-coordinate, regardless which slot they are.