diff options
author | Antonio Vazquez <blendergit@gmail.com> | 2020-03-09 18:27:24 +0300 |
---|---|---|
committer | Antonio Vazquez <blendergit@gmail.com> | 2020-03-09 18:27:24 +0300 |
commit | 29f3af95272590d26f610ae828b2eeee89c82a00 (patch) | |
tree | a696a58a2561c48f7ec6166e369e22081e0a64d8 /source/blender/editors/screen | |
parent | dcb93126876879d969a30a7865700abd072066f8 (diff) |
GPencil: Refactor of Draw Engine, Vertex Paint and all internal functions
This commit is a full refactor of the grease pencil modules including Draw Engine, Modifiers, VFX, depsgraph update, improvements in operators and conversion of Sculpt and Weight paint tools to real brushes.
Also, a huge code cleanup has been done at all levels.
Thanks to @fclem for his work and yo @pepeland and @mendio for the testing and help in the development.
Differential Revision: https://developer.blender.org/D6293
Diffstat (limited to 'source/blender/editors/screen')
-rw-r--r-- | source/blender/editors/screen/area.c | 72 | ||||
-rw-r--r-- | source/blender/editors/screen/screen_context.c | 10 |
2 files changed, 77 insertions, 5 deletions
diff --git a/source/blender/editors/screen/area.c b/source/blender/editors/screen/area.c index e72818479c4..444413a757f 100644 --- a/source/blender/editors/screen/area.c +++ b/source/blender/editors/screen/area.c @@ -1723,9 +1723,81 @@ static void ed_default_handlers( wm->defaultconf, "Grease Pencil Stroke Paint (Fill)", 0, 0); WM_event_add_keymap_handler(handlers, keymap_paint_fill); + wmKeyMap *keymap_paint_tint = WM_keymap_ensure( + wm->defaultconf, "Grease Pencil Stroke Paint (Tint)", 0, 0); + WM_event_add_keymap_handler(handlers, keymap_paint_tint); + wmKeyMap *keymap_sculpt = WM_keymap_ensure( wm->defaultconf, "Grease Pencil Stroke Sculpt Mode", 0, 0); WM_event_add_keymap_handler(handlers, keymap_sculpt); + + wmKeyMap *keymap_vertex = WM_keymap_ensure( + wm->defaultconf, "Grease Pencil Stroke Vertex Mode", 0, 0); + WM_event_add_keymap_handler(handlers, keymap_vertex); + + wmKeyMap *keymap_vertex_draw = WM_keymap_ensure( + wm->defaultconf, "Grease Pencil Stroke Vertex (Draw)", 0, 0); + WM_event_add_keymap_handler(handlers, keymap_vertex_draw); + + wmKeyMap *keymap_vertex_blur = WM_keymap_ensure( + wm->defaultconf, "Grease Pencil Stroke Vertex (Blur)", 0, 0); + WM_event_add_keymap_handler(handlers, keymap_vertex_blur); + + wmKeyMap *keymap_vertex_average = WM_keymap_ensure( + wm->defaultconf, "Grease Pencil Stroke Vertex (Average)", 0, 0); + WM_event_add_keymap_handler(handlers, keymap_vertex_average); + + wmKeyMap *keymap_vertex_smear = WM_keymap_ensure( + wm->defaultconf, "Grease Pencil Stroke Vertex (Smear)", 0, 0); + WM_event_add_keymap_handler(handlers, keymap_vertex_smear); + + wmKeyMap *keymap_vertex_replace = WM_keymap_ensure( + wm->defaultconf, "Grease Pencil Stroke Vertex (Replace)", 0, 0); + WM_event_add_keymap_handler(handlers, keymap_vertex_replace); + + wmKeyMap *keymap_sculpt_smooth = WM_keymap_ensure( + wm->defaultconf, "Grease Pencil Stroke Sculpt (Smooth)", 0, 0); + WM_event_add_keymap_handler(handlers, keymap_sculpt_smooth); + + wmKeyMap *keymap_sculpt_thickness = WM_keymap_ensure( + wm->defaultconf, "Grease Pencil Stroke Sculpt (Thickness)", 0, 0); + WM_event_add_keymap_handler(handlers, keymap_sculpt_thickness); + + wmKeyMap *keymap_sculpt_strength = WM_keymap_ensure( + wm->defaultconf, "Grease Pencil Stroke Sculpt (Strength)", 0, 0); + WM_event_add_keymap_handler(handlers, keymap_sculpt_strength); + + wmKeyMap *keymap_sculpt_grab = WM_keymap_ensure( + wm->defaultconf, "Grease Pencil Stroke Sculpt (Grab)", 0, 0); + WM_event_add_keymap_handler(handlers, keymap_sculpt_grab); + + wmKeyMap *keymap_sculpt_push = WM_keymap_ensure( + wm->defaultconf, "Grease Pencil Stroke Sculpt (Push)", 0, 0); + WM_event_add_keymap_handler(handlers, keymap_sculpt_push); + + wmKeyMap *keymap_sculpt_twist = WM_keymap_ensure( + wm->defaultconf, "Grease Pencil Stroke Sculpt (Twist)", 0, 0); + WM_event_add_keymap_handler(handlers, keymap_sculpt_twist); + + wmKeyMap *keymap_sculpt_pinch = WM_keymap_ensure( + wm->defaultconf, "Grease Pencil Stroke Sculpt (Pinch)", 0, 0); + WM_event_add_keymap_handler(handlers, keymap_sculpt_pinch); + + wmKeyMap *keymap_sculpt_randomize = WM_keymap_ensure( + wm->defaultconf, "Grease Pencil Stroke Sculpt (Randomize)", 0, 0); + WM_event_add_keymap_handler(handlers, keymap_sculpt_randomize); + + wmKeyMap *keymap_sculpt_clone = WM_keymap_ensure( + wm->defaultconf, "Grease Pencil Stroke Sculpt (Clone)", 0, 0); + WM_event_add_keymap_handler(handlers, keymap_sculpt_clone); + + wmKeyMap *keymap_weight = WM_keymap_ensure( + wm->defaultconf, "Grease Pencil Stroke Weight Mode", 0, 0); + WM_event_add_keymap_handler(handlers, keymap_weight); + + wmKeyMap *keymap_weight_draw = WM_keymap_ensure( + wm->defaultconf, "Grease Pencil Stroke Weight (Draw)", 0, 0); + WM_event_add_keymap_handler(handlers, keymap_weight_draw); } } diff --git a/source/blender/editors/screen/screen_context.c b/source/blender/editors/screen/screen_context.c index a840d199823..540a4c05247 100644 --- a/source/blender/editors/screen/screen_context.c +++ b/source/blender/editors/screen/screen_context.c @@ -555,7 +555,7 @@ int ed_screen_context(const bContext *C, const char *member, bContextDataResult bGPdata *gpd = ED_gpencil_data_get_active_direct(sa, obact); if (gpd) { - bGPDlayer *gpl = BKE_gpencil_layer_getactive(gpd); + bGPDlayer *gpl = BKE_gpencil_layer_active_get(gpd); if (gpl) { CTX_data_pointer_set(result, &gpd->id, &RNA_GPencilLayer, gpl); @@ -567,7 +567,7 @@ int ed_screen_context(const bContext *C, const char *member, bContextDataResult bGPdata *gpd = ED_annotation_data_get_active_direct((ID *)sc, sa, scene); if (gpd) { - bGPDlayer *gpl = BKE_gpencil_layer_getactive(gpd); + bGPDlayer *gpl = BKE_gpencil_layer_active_get(gpd); if (gpl) { CTX_data_pointer_set(result, &gpd->id, &RNA_GPencilLayer, gpl); @@ -579,7 +579,7 @@ int ed_screen_context(const bContext *C, const char *member, bContextDataResult bGPdata *gpd = ED_gpencil_data_get_active_direct(sa, obact); if (gpd) { - bGPDlayer *gpl = BKE_gpencil_layer_getactive(gpd); + bGPDlayer *gpl = BKE_gpencil_layer_active_get(gpd); if (gpl) { CTX_data_pointer_set(result, &gpd->id, &RNA_GPencilLayer, gpl->actframe); @@ -609,7 +609,7 @@ int ed_screen_context(const bContext *C, const char *member, bContextDataResult bGPDlayer *gpl; for (gpl = gpd->layers.first; gpl; gpl = gpl->next) { - if (gpencil_layer_is_editable(gpl)) { + if (BKE_gpencil_layer_is_editable(gpl)) { CTX_data_list_add(result, &gpd->id, &RNA_GPencilLayer, gpl); } } @@ -625,7 +625,7 @@ int ed_screen_context(const bContext *C, const char *member, bContextDataResult bGPDlayer *gpl; for (gpl = gpd->layers.first; gpl; gpl = gpl->next) { - if (gpencil_layer_is_editable(gpl) && (gpl->actframe)) { + if (BKE_gpencil_layer_is_editable(gpl) && (gpl->actframe)) { bGPDframe *gpf; bGPDstroke *gps; bGPDframe *init_gpf = gpl->actframe; |