[Bf-blender-cvs] [cc516b82ef6] master: Fix T74915: Gpencil Tweak tool does not add point to selection holding Shift

Antonio Vazquez noreply at git.blender.org
Thu Mar 19 12:11:54 CET 2020


Commit: cc516b82ef68244edbd3936d8bc828a3aab39a81
Author: Antonio Vazquez
Date:   Thu Mar 19 12:11:35 2020 +0100
Branches: master
https://developer.blender.org/rBcc516b82ef68244edbd3936d8bc828a3aab39a81

Fix T74915: Gpencil Tweak tool does not add point to selection holding Shift

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

M	source/blender/editors/gpencil/gpencil_select.c

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

diff --git a/source/blender/editors/gpencil/gpencil_select.c b/source/blender/editors/gpencil/gpencil_select.c
index 4a84d75757e..6194b82fed9 100644
--- a/source/blender/editors/gpencil/gpencil_select.c
+++ b/source/blender/editors/gpencil/gpencil_select.c
@@ -1430,11 +1430,12 @@ static int gpencil_select_exec(bContext *C, wmOperator *op)
   const float radius = 0.50f * U.widget_unit;
   const int radius_squared = (int)(radius * radius);
 
-  bool extend = RNA_boolean_get(op->ptr, "extend");
+  const bool use_shift_extend = RNA_boolean_get(op->ptr, "use_shift_extend");
+  bool extend = RNA_boolean_get(op->ptr, "extend") || use_shift_extend;
   bool deselect = RNA_boolean_get(op->ptr, "deselect");
   bool toggle = RNA_boolean_get(op->ptr, "toggle");
   bool whole = RNA_boolean_get(op->ptr, "entire_strokes");
-  const bool deselect_all = RNA_boolean_get(op->ptr, "deselect_all");
+  const bool deselect_all = RNA_boolean_get(op->ptr, "deselect_all") && !use_shift_extend;
 
   int mval[2] = {0};
 
@@ -1611,6 +1612,11 @@ static int gpencil_select_exec(bContext *C, wmOperator *op)
 static int gpencil_select_invoke(bContext *C, wmOperator *op, const wmEvent *event)
 {
   RNA_int_set_array(op->ptr, "location", event->mval);
+
+  if (!RNA_struct_property_is_set(op->ptr, "use_shift_extend")) {
+    RNA_boolean_set(op->ptr, "use_shift_extend", event->shift);
+  }
+
   return gpencil_select_exec(C, op);
 }
 
@@ -1652,6 +1658,9 @@ void GPENCIL_OT_select(wmOperatorType *ot)
                             INT_MIN,
                             INT_MAX);
   RNA_def_property_flag(prop, PROP_HIDDEN);
+
+  prop = RNA_def_boolean(ot->srna, "use_shift_extend", false, "Extend", "");
+  RNA_def_property_flag(prop, PROP_HIDDEN | PROP_SKIP_SAVE);
 }
 
 /* Select by Vertex Color. */



More information about the Bf-blender-cvs mailing list