split out the logic behind step editing from MidiTimeAxisView as much as possible