Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--source/blender/editors/sculpt_paint/paint_cursor.c9
-rw-r--r--source/blender/editors/sculpt_paint/paint_ops.c1
-rw-r--r--source/blender/makesrna/intern/rna_sculpt_paint.c8
3 files changed, 13 insertions, 5 deletions
diff --git a/source/blender/editors/sculpt_paint/paint_cursor.c b/source/blender/editors/sculpt_paint/paint_cursor.c
index 32cc6953c78..c104a5fac94 100644
--- a/source/blender/editors/sculpt_paint/paint_cursor.c
+++ b/source/blender/editors/sculpt_paint/paint_cursor.c
@@ -45,6 +45,7 @@
#include "BKE_context.h"
#include "BKE_image.h"
#include "BKE_paint.h"
+#include "BKE_colortools.h"
#include "WM_api.h"
@@ -120,10 +121,8 @@ static int load_tex(Brush *br, ViewContext *vc, float zoom, bool col)
refresh =
!overlay_texture ||
- (br->mtex.tex &&
- (invalid & PAINT_INVALID_OVERLAY_TEXTURE_PRIMARY)) ||
- (br->curve &&
- (invalid & PAINT_INVALID_OVERLAY_CURVE)) ||
+ (invalid & PAINT_INVALID_OVERLAY_TEXTURE_PRIMARY) ||
+ (invalid & PAINT_INVALID_OVERLAY_CURVE) ||
old_zoom != zoom ||
old_col != col ||
!same_tex_snap(&snap, br, vc);
@@ -175,6 +174,8 @@ static int load_tex(Brush *br, ViewContext *vc, float zoom, bool col)
if (br->mtex.tex)
pool = BKE_image_pool_new();
+ curvemapping_initialize(br->curve);
+
#pragma omp parallel for schedule(static)
for (j = 0; j < size; j++) {
int i;
diff --git a/source/blender/editors/sculpt_paint/paint_ops.c b/source/blender/editors/sculpt_paint/paint_ops.c
index f1207aa5706..0fe60813fd1 100644
--- a/source/blender/editors/sculpt_paint/paint_ops.c
+++ b/source/blender/editors/sculpt_paint/paint_ops.c
@@ -284,6 +284,7 @@ static int brush_generic_tool_set(Main *bmain, Paint *paint, const int tool,
if (brush) {
BKE_paint_brush_set(paint, brush);
+ BKE_paint_invalidate_overlay_all();
WM_main_add_notifier(NC_BRUSH | NA_EDITED, brush);
return OPERATOR_FINISHED;
}
diff --git a/source/blender/makesrna/intern/rna_sculpt_paint.c b/source/blender/makesrna/intern/rna_sculpt_paint.c
index bb3043fabcf..b48ae3e0194 100644
--- a/source/blender/makesrna/intern/rna_sculpt_paint.c
+++ b/source/blender/makesrna/intern/rna_sculpt_paint.c
@@ -279,6 +279,12 @@ static char *rna_ParticleBrush_path(PointerRNA *ptr)
return BLI_strdup("tool_settings.particle_edit.brush");
}
+static void rna_Paint_brush_update(Main *UNUSED(bmain), Scene *UNUSED(scene), PointerRNA *ptr)
+{
+ Brush *br = (Brush *)ptr->data;
+ BKE_paint_invalidate_overlay_all();
+ WM_main_add_notifier(NC_BRUSH | NA_EDITED, br);
+}
#else
static void rna_def_paint(BlenderRNA *brna)
@@ -294,7 +300,7 @@ static void rna_def_paint(BlenderRNA *brna)
RNA_def_property_flag(prop, PROP_EDITABLE);
RNA_def_property_pointer_funcs(prop, NULL, NULL, NULL, "rna_Brush_mode_poll");
RNA_def_property_ui_text(prop, "Brush", "Active Brush");
- RNA_def_property_update(prop, NC_BRUSH | NA_EDITED, NULL);
+ RNA_def_property_update(prop, 0, "rna_Paint_brush_update");
prop = RNA_def_property(srna, "show_brush", PROP_BOOLEAN, PROP_NONE);
RNA_def_property_boolean_sdna(prop, NULL, "flags", PAINT_SHOW_BRUSH);