8va would entail a drawing tool for the user to pick a start & another drawing tool for the user to pick an end point. It picks the direction from which side of the staff you're on.

Kind of an extension of Music Construction Set in that MCS didn't have an endpoint tool. It tries to draw indicators for where the markers are going, but it doesn't draw ghost images of the markers like the annotation tools. The markers shift the score around, because of the ledger lines. It would be quite noisy if it constantly shifted the score to draw a ghost.
Then came a delete tool for individual objects. It would eventually be necessary to delete user defined accidentals while retaining the default accidentals. That would entail dereferencing the note from the accidental bitmap.

It's pretty hard to see what object is selected for deletion, but it tries with crosshairs & an xor box.
Helas, when it deletes notes, it also creates discontinuities in the beat numbers. If the user adds a bass note after deleting a treble note, it's going to unpredictably shift the treble notes right because they still have the original times. It also needs a way to shift notes right without accompaniment. If it can't draw rests & note durations, it needs some minimal indication of the space for every beat.
It could either allow notes to have any starting time or it could require rests in all blank areas. To simplify the programming, it should fill all gaps with rests & have only durations of 1 beat.

Settled on a half rest symbol to fill all the gaps, since it was less obtrusive. There's a rest insertion tool to shift notes right. Inserting a rest after a gap causes all the intervening rests to be inserted & creates a jarring shift in the score.
Helas, there's kind of a mess with some objects like 8va's having a nonzero duration that needs to overlap notes & other objects like cleffs & key signatures needing a zero duration which doesn't overlap notes. Multiple objects in a single beat need to be sorted based on enum number. Then, by setting the enum numbers, you can get bars, cleffs, key signatures, notes & rests in the right order.
Gone are any snazzy preview graphics of the music reader. Most of the music reader polygon routines ended up unused. Only the freepaw tool saw any significant use. They were more of a realization of a childhood goal of creating a bitmap drawing program.
lion mclionhead
Discussions
Become a Hackaday.io Member
Create an account to leave a comment. Already have an account? Log In.