If you only handle set by selecting the anchor and setting the same handle-type on both handles, then this conversation is irrelevant to you, because my code works exactly the same as the old code in this case. THis discussion is about people who use the mixed states, like align/vector, align/free, and align/vector.
For a moment, let’s pretend the current behavior is “okay” and the documentation should be fixed. Do you know what it should say? I doubt most people even know how it works. Currently the docs say “Free - The handles are independent of eachother”…
http://wiki.blender.org/index.php/Doc:2.6/Manual/Modeling/Curves
I’ve spent the last couple days rewriting this code, and today, this is a proper documentation of the current handle set behavior:
Set Handle Free = “The handle will rotate and scale independently of the other handle, as long as the other handle is set to free, vector, or automatic (which will be converted to free). If the other handle is set to align, then it will be rotation constrained and aligned to this handle even when this handle is set to free. In order to get them to move independently, set the other handle to free or vector.”
Set Handle Align = “The handle will be aligned with the other spline. This handle will be free to be rotated and scaled only if the other handle type is Align, or Automatic (which will be converted to Align). If the other handle type is Free or Vector, then this handle will be unable to control rotation, grabbing it will only allow the handle to scale along the aligned axis. To allow this handle to also rotate the aligned spline, set the other handle to align.”
IMO, this is crazy complicated. People are not computers running Blender’s wacky handle code. We need simple models.
After my patch, this is the documentation:
Handle Set Free - The handle will move independently of the other handle.
Handle Set Align - The handle will align to the other handle. (both sides are draggable)
Handle Set Constrain - The handle’s rotation will be locked, constrained to the other handle.
…and if I find a clean solution…
Handle Set Align Mirror - The handles will stay aligned and mirror each other’s length.
Do you still assert the current toggle behavior is easier to understand? The handle-functionality is exactly the same, so there is no debate there. This is merely about the cognitive model of the handle-set-menu.