[Bf-blender-cvs] [230c6adf672] temp-graph-select-changes: UI: Changes to graph editor selection and transform

Julian Eisel noreply at git.blender.org
Wed Nov 13 12:34:16 CET 2019


Commit: 230c6adf672c8914a36c33a15fbbcc842714fa61
Author: Julian Eisel
Date:   Tue Nov 12 17:06:16 2019 +0100
Branches: temp-graph-select-changes
https://developer.blender.org/rB230c6adf672c8914a36c33a15fbbcc842714fa61

UI: Changes to graph editor selection and transform

When introducing "drag-all-selected" support all over Blender, we figured this wouldn't work well with the Graph Editor selection/transform behavior.
Hence, William and I have been working on the following changes, although we used this chance to improve the behavior in general too.
For more info see T70634.

* Handles now always move with the key, regardless if they are selected or not.
* Selecting the key doesn't select the handles anymore, their selection is separate.
* Multiple keys and handles can now be dragged.
* Dragging a handle moves all selected handles on the same side.
* Tweak-dragging any handle can never affect any keyframe location, only handles
* G/R/S should behave as before.
* Changing the handle type with a key selected always applies the change to both handles.
* Box selection with Ctrl+Drag now allows deselecting handles.
* Box selection Include Handles option now only acts on visible handles, wasn't the case with Only Selected Keyframes Handles enabled.
* Box selection Include Handles is now enabled by default in all bundled keymaps.

If needed I can give more detailed rationales for each change, but keeping this short.

The changes have been tested for some days by the animators here in the Blender Animation Studio. Some changes are based on their feedback.

Differential Revision: https://developer.blender.org/D6235

===================================================================

M	source/blender/makesdna/DNA_curve_types.h
M	source/blender/makesdna/DNA_space_types.h

===================================================================

diff --git a/source/blender/makesdna/DNA_curve_types.h b/source/blender/makesdna/DNA_curve_types.h
index 51a1f96d11f..13eaa8925bc 100644
--- a/source/blender/makesdna/DNA_curve_types.h
+++ b/source/blender/makesdna/DNA_curve_types.h
@@ -1,4 +1,4 @@
-/*
+/*
  * This program is free software; you can redistribute it and/or
  * modify it under the terms of the GNU General Public License
  * as published by the Free Software Foundation; either version 2
diff --git a/source/blender/makesdna/DNA_space_types.h b/source/blender/makesdna/DNA_space_types.h
index 2017f9acd4b..92ee50ab8e7 100644
--- a/source/blender/makesdna/DNA_space_types.h
+++ b/source/blender/makesdna/DNA_space_types.h
@@ -484,6 +484,10 @@ typedef enum eGraphEdit_Runtime_Flag {
   /** Temporary flag to force fcurves to recalculate colors. */
   SIPO_RUNTIME_FLAG_NEED_CHAN_SYNC_COLOR = (1 << 1),
 
+  /**
+   * These flags are for the mouse-select code to communicate with the transform code. Click
+   * dragging (tweaking) a handle sets the according left/right flag which transform code uses then
+   * to limit translation to this side. */
   SIPO_RUNTIME_FLAG_TWEAK_HANDLES_LEFT = (1 << 2),
   SIPO_RUNTIME_FLAG_TWEAK_HANDLES_RIGHT = (1 << 3),
 } eGraphEdit_Runtime_Flag;



More information about the Bf-blender-cvs mailing list