[Bf-blender-cvs] [0fa2873c5da] greasepencil-object: Pass bmain explicitly rather than via bContext
Antonio Vazquez
noreply at git.blender.org
Fri Oct 20 19:34:04 CEST 2017
Commit: 0fa2873c5dadb543547b89188c6c943088114708
Author: Antonio Vazquez
Date: Fri Oct 20 19:33:52 2017 +0200
Branches: greasepencil-object
https://developer.blender.org/rB0fa2873c5dadb543547b89188c6c943088114708
Pass bmain explicitly rather than via bContext
Passing main makes function easier for re-use.
===================================================================
M source/blender/blenkernel/BKE_gpencil.h
M source/blender/blenkernel/intern/gpencil.c
M source/blender/editors/sculpt_paint/paint_ops.c
===================================================================
diff --git a/source/blender/blenkernel/BKE_gpencil.h b/source/blender/blenkernel/BKE_gpencil.h
index 092e1e8f507..1b2c01d4561 100644
--- a/source/blender/blenkernel/BKE_gpencil.h
+++ b/source/blender/blenkernel/BKE_gpencil.h
@@ -180,7 +180,7 @@ void BKE_gpencil_palettecolor_delete(struct bGPDpalette *palette, struct bGPDpal
struct bGPDpalettecolor *BKE_gpencil_palettecolor_getbyname(struct bGPDpalette *palette, char *name);
void BKE_gpencil_palettecolor_allnames(struct PaletteColor *palcolor, const char *newname);
void BKE_gpencil_palettecolor_changename(struct PaletteColor *palcolor, struct bGPdata *gpd, const char *newname);
-void BKE_gpencil_palettecolor_delete_allstrokes(struct bContext *C, struct PaletteColor *palcolor);
+void BKE_gpencil_palettecolor_delete_allstrokes(struct Main *bmain, struct PaletteColor *palcolor);
/* object boundbox */
struct BoundBox *BKE_gpencil_boundbox_get(struct Object *ob);
diff --git a/source/blender/blenkernel/intern/gpencil.c b/source/blender/blenkernel/intern/gpencil.c
index f909e69ed23..14fa67c4fb6 100644
--- a/source/blender/blenkernel/intern/gpencil.c
+++ b/source/blender/blenkernel/intern/gpencil.c
@@ -1950,15 +1950,13 @@ void BKE_gpencil_palettecolor_changename(PaletteColor *palcolor, bGPdata *gpd, c
}
/* Delete all strokes of the color for all gpd datablocks */
-void BKE_gpencil_palettecolor_delete_allstrokes(bContext *C, PaletteColor *palcolor)
+void BKE_gpencil_palettecolor_delete_allstrokes(Main *bmain, PaletteColor *palcolor)
{
bGPdata *gpd;
bGPDlayer *gpl;
bGPDframe *gpf;
bGPDstroke *gps, *gpsn;
- Main *bmain = CTX_data_main(C);
-
/* TODO: Optimise this by only checking GP datablocks that reference the palette this comes from */
for (gpd = bmain->gpencil.first; gpd; gpd = gpd->id.next) {
for (gpl = gpd->layers.first; gpl; gpl = gpl->next) {
diff --git a/source/blender/editors/sculpt_paint/paint_ops.c b/source/blender/editors/sculpt_paint/paint_ops.c
index 12786a0956f..c6abca39470 100644
--- a/source/blender/editors/sculpt_paint/paint_ops.c
+++ b/source/blender/editors/sculpt_paint/paint_ops.c
@@ -361,12 +361,13 @@ static void PALETTE_OT_color_add(wmOperatorType *ot)
static int palette_color_delete_exec(bContext *C, wmOperator *UNUSED(op))
{
+ Main *bmain = CTX_data_main(C);
Palette *palette = BKE_palette_get_active_from_context(C);
PaletteColor *color = BLI_findlink(&palette->colors, palette->active_color);
if (color) {
/* delete any gp strokes using this color */
- BKE_gpencil_palettecolor_delete_allstrokes(C, color);
+ BKE_gpencil_palettecolor_delete_allstrokes(bmain, color);
/* delete the active color */
BKE_palette_color_remove(palette, color);
More information about the Bf-blender-cvs
mailing list