One of the biggest things that bugs me about notation programs (all of them really) is that note entry with computer keyboard or mouse is always a bifurcated process. You enter the pitch and then the note value, or vice versa. Either way is a bit cumbersome (though I personally happen to prefer the former of the two), and has the potential of getting in the way of the flow of musical ideas.
Why not try and unify the procedure? My idea would be to determine the note value by the length of time the keyboard key or mouse button is held down. A bit more like actual performance on a piano, but without having to whip out a midi keyboard (which is its own can of worms) or even having the ability to play one. You could set some reasonable minimum note value (32nds for example, but with the option to customize) and then calculate the note value to be entered by means of the ratio (time the key is held down) : (some minimum time length). For example, if you set the minimum time length as 0.25 sec, holding the key C for 1 sec will result in an 8th note C; while for a whole note C you would need to press down C for 8 seconds. You could even show the increasing note length in the caret, as per my previous proposal.
Additionally, you could make all these parameters fully customizable (when composing a hymn-tune one needs a different time-scale than for a virtuoso piano etude); and finally you can even keep the old and trusted methods for people who don’t like my proposal.