[Bf-blender-cvs] [d767fc2e279] greasepencil-object: Update depsgraph for sculpt and select

Antonio Vazquez noreply at git.blender.org
Thu Mar 22 16:45:55 CET 2018


Commit: d767fc2e2794beb8a1c56dbd996a22262026b142
Author: Antonio Vazquez
Date:   Thu Mar 22 16:45:18 2018 +0100
Branches: greasepencil-object
https://developer.blender.org/rBd767fc2e2794beb8a1c56dbd996a22262026b142

Update depsgraph for sculpt and select

This is required to work with COW

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

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

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

diff --git a/source/blender/editors/gpencil/gpencil_brush.c b/source/blender/editors/gpencil/gpencil_brush.c
index b8b8a636865..ab74c417194 100644
--- a/source/blender/editors/gpencil/gpencil_brush.c
+++ b/source/blender/editors/gpencil/gpencil_brush.c
@@ -80,6 +80,8 @@
 #include "GPU_immediate.h"
 #include "GPU_immediate_util.h"
 
+#include "DEG_depsgraph.h"
+
 #include "gpencil_intern.h"
 
 /* ************************************************ */
@@ -1693,6 +1695,7 @@ static void gpsculpt_brush_apply(bContext *C, wmOperator *op, PointerRNA *itempt
 	
 	/* Updates */
 	if (changed) {
+		DEG_id_tag_update(&gso->gpd->id, OB_RECALC_DATA);
 		WM_event_add_notifier(C, NC_GPENCIL | ND_DATA | NA_EDITED, NULL);
 	}
 	
@@ -2016,6 +2019,7 @@ static int gpsculpt_brush_modal(bContext *C, wmOperator *op, const wmEvent *even
 	
 	/* Redraw toolsettings (brush settings)? */
 	if (redraw_toolsettings) {
+		DEG_id_tag_update(&gso->gpd->id, OB_RECALC_DATA);
 		WM_event_add_notifier(C, NC_SCENE | ND_TOOLSETTINGS, NULL);
 	}
 	
diff --git a/source/blender/editors/gpencil/gpencil_select.c b/source/blender/editors/gpencil/gpencil_select.c
index 081f2c1975e..afc12960f1b 100644
--- a/source/blender/editors/gpencil/gpencil_select.c
+++ b/source/blender/editors/gpencil/gpencil_select.c
@@ -63,6 +63,8 @@
 
 #include "ED_gpencil.h"
 
+#include "DEG_depsgraph.h"
+
 #include "gpencil_intern.h"
 
 /* ********************************************** */
@@ -186,6 +188,7 @@ static int gpencil_select_all_exec(bContext *C, wmOperator *op)
 	}
 	
 	/* updates */
+	DEG_id_tag_update(&gpd->id, OB_RECALC_DATA);
 	WM_event_add_notifier(C, NC_GPENCIL | NA_SELECTED, NULL);
 	return OPERATOR_FINISHED;
 }
@@ -239,6 +242,7 @@ static int gpencil_select_linked_exec(bContext *C, wmOperator *op)
 	CTX_DATA_END;
 	
 	/* updates */
+	DEG_id_tag_update(&gpd->id, OB_RECALC_DATA);
 	WM_event_add_notifier(C, NC_GPENCIL | NA_SELECTED, NULL);
 	return OPERATOR_FINISHED;
 }
@@ -311,6 +315,7 @@ static int gpencil_select_alternate_exec(bContext *C, wmOperator *op)
 	CTX_DATA_END;
 
 	/* updates */
+	DEG_id_tag_update(&gpd->id, OB_RECALC_DATA);
 	WM_event_add_notifier(C, NC_GPENCIL | NA_SELECTED, NULL);
 	return OPERATOR_FINISHED;
 }
@@ -456,6 +461,7 @@ static int gpencil_select_grouped_exec(bContext *C, wmOperator *op)
 	}
 	
 	/* updates */
+	DEG_id_tag_update(&gpd->id, OB_RECALC_DATA);
 	WM_event_add_notifier(C, NC_GPENCIL | NA_SELECTED, NULL);
 	return OPERATOR_FINISHED;
 }
@@ -526,6 +532,7 @@ static int gpencil_select_first_exec(bContext *C, wmOperator *op)
 	CTX_DATA_END;
 	
 	/* updates */
+	DEG_id_tag_update(&gpd->id, OB_RECALC_DATA);
 	WM_event_add_notifier(C, NC_GPENCIL | NA_SELECTED, NULL);
 	return OPERATOR_FINISHED;
 }
@@ -592,6 +599,7 @@ static int gpencil_select_last_exec(bContext *C, wmOperator *op)
 	CTX_DATA_END;
 	
 	/* updates */
+	DEG_id_tag_update(&gpd->id, OB_RECALC_DATA);
 	WM_event_add_notifier(C, NC_GPENCIL | NA_SELECTED, NULL);
 	return OPERATOR_FINISHED;
 }
@@ -674,6 +682,7 @@ static int gpencil_select_more_exec(bContext *C, wmOperator *UNUSED(op))
 	CTX_DATA_END;
 	
 	/* updates */
+	DEG_id_tag_update(&gpd->id, OB_RECALC_DATA);
 	WM_event_add_notifier(C, NC_GPENCIL | NA_SELECTED, NULL);
 	return OPERATOR_FINISHED;
 }
@@ -751,6 +760,7 @@ static int gpencil_select_less_exec(bContext *C, wmOperator *UNUSED(op))
 	CTX_DATA_END;
 	
 	/* updates */
+	DEG_id_tag_update(&gpd->id, OB_RECALC_DATA);
 	WM_event_add_notifier(C, NC_GPENCIL | NA_SELECTED, NULL);
 	return OPERATOR_FINISHED;
 }
@@ -914,6 +924,7 @@ static int gpencil_circle_select_exec(bContext *C, wmOperator *op)
 
 	/* updates */
 	if (changed) {
+		DEG_id_tag_update(&gpd->id, OB_RECALC_DATA);
 		WM_event_add_notifier(C, NC_GPENCIL | NA_SELECTED, NULL);
 	}
 	
@@ -1029,6 +1040,7 @@ static int gpencil_border_select_exec(bContext *C, wmOperator *op)
 
 	/* updates */
 	if (changed) {
+		DEG_id_tag_update(&gpd->id, OB_RECALC_DATA);
 		WM_event_add_notifier(C, NC_GPENCIL | NA_SELECTED, NULL);
 	}
 	
@@ -1145,6 +1157,7 @@ static int gpencil_lasso_select_exec(bContext *C, wmOperator *op)
 
 	/* updates */
 	if (changed) {
+		DEG_id_tag_update(&gpd->id, OB_RECALC_DATA);
 		WM_event_add_notifier(C, NC_GPENCIL | NA_SELECTED, NULL);
 	}
 	
@@ -1176,7 +1189,8 @@ void GPENCIL_OT_select_lasso(wmOperatorType *ot)
 static int gpencil_select_exec(bContext *C, wmOperator *op)
 {
 	ScrArea *sa = CTX_wm_area(C);
-	
+	bGPdata *gpd = ED_gpencil_data_get_active(C);
+
 	/* "radius" is simply a threshold (screen space) to make it easier to test with a tolerance */
 	const float radius = 0.75f * U.widget_unit;
 	const int radius_squared = (int)(radius * radius);
@@ -1307,6 +1321,7 @@ static int gpencil_select_exec(bContext *C, wmOperator *op)
 	
 	/* updates */
 	if (hit_point != NULL) {
+		DEG_id_tag_update(&gpd->id, OB_RECALC_DATA);
 		WM_event_add_notifier(C, NC_GPENCIL | NA_SELECTED, NULL);
 	}



More information about the Bf-blender-cvs mailing list