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:
authorCampbell Barton <ideasman42@gmail.com>2018-11-03 08:52:06 +0300
committerCampbell Barton <ideasman42@gmail.com>2018-11-03 08:52:06 +0300
commit888a0735eee5fbe05fc60d8755d83974a2f74680 (patch)
tree3ff8fb4e0712303b36ec7ddf9cbd6bf0c072e35e /source/blender/editors/gpencil/gpencil_edit.c
parent13c3c9b22fd8453d4418577efbc2ccb93209e92e (diff)
Tool System: validate tool slots when setting modes
Needed for entering paint modes on new scenes.
Diffstat (limited to 'source/blender/editors/gpencil/gpencil_edit.c')
-rw-r--r--source/blender/editors/gpencil/gpencil_edit.c15
1 files changed, 10 insertions, 5 deletions
diff --git a/source/blender/editors/gpencil/gpencil_edit.c b/source/blender/editors/gpencil/gpencil_edit.c
index 7b2eb7d6ecd..d8580f872f4 100644
--- a/source/blender/editors/gpencil/gpencil_edit.c
+++ b/source/blender/editors/gpencil/gpencil_edit.c
@@ -281,6 +281,8 @@ static int gpencil_paintmode_toggle_exec(bContext *C, wmOperator *op)
const bool back = RNA_boolean_get(op->ptr, "back");
struct wmMsgBus *mbus = CTX_wm_message_bus(C);
+ Main *bmain = CTX_data_main(C);
+ Scene *scene = CTX_data_scene(C);
bGPdata *gpd = ED_gpencil_data_get_active(C);
ToolSettings *ts = CTX_data_tool_settings(C);
@@ -315,11 +317,14 @@ static int gpencil_paintmode_toggle_exec(bContext *C, wmOperator *op)
ob->mode = mode;
}
- /* be sure we have brushes */
- Paint *paint = BKE_brush_get_gpencil_paint(ts);
- /* if not exist, create a new one */
- if (paint->brush == NULL) {
- BKE_brush_gpencil_presets(C);
+ if (mode == OB_MODE_GPENCIL_PAINT) {
+ /* be sure we have brushes */
+ Paint *paint = BKE_brush_get_gpencil_paint(ts);
+ /* if not exist, create a new one */
+ if (paint->brush == NULL) {
+ BKE_brush_gpencil_presets(C);
+ }
+ BKE_paint_toolslots_brush_validate(bmain, scene, &ts->gp_paint->paint);
}
/* setup other modes */