As it stands, track (and other waytype) laying works something like this:
Mode 1: Click and drag without control button. This makes the cheapest path, and does nothing if no path is available.
Mode 2: Click and drag with control button. This makes a direct path, and does nothing if no direct path is available.
This works ok, but can be improved without too much coding (I say with my limited coding knowledge).
My suggestion: Clicking and dragging by default makes a direct path (ie /w Crtl button currently) unless the is no direct path, in which case it swaps over to the cheapest path (ie w/o Crtl button currently).