diff options
author | Falk David <falkdavid@gmx.de> | 2021-01-21 23:58:39 +0300 |
---|---|---|
committer | Falk David <falkdavid@gmx.de> | 2021-01-21 23:58:39 +0300 |
commit | f24992d2ec76bae600879ee6222ffbcc98de3fe8 (patch) | |
tree | 95673f23fee2096b29ba81cf7ab6c07c25d85bbc /source/blender | |
parent | ceb500df0384dee3bda07f10a0a93acf40ac25c9 (diff) |
GPencil: Deactivate interpolation of gpencil curves
To avoid unexpected behavior and desync issues with
stroke and curve data, the interpolation operators are deactivated
in curve edit mode.
Diffstat (limited to 'source/blender')
-rw-r--r-- | source/blender/editors/gpencil/gpencil_interpolate.c | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/source/blender/editors/gpencil/gpencil_interpolate.c b/source/blender/editors/gpencil/gpencil_interpolate.c index 1c967110198..b51604f3bfc 100644 --- a/source/blender/editors/gpencil/gpencil_interpolate.c +++ b/source/blender/editors/gpencil/gpencil_interpolate.c @@ -554,6 +554,13 @@ static int gpencil_interpolate_invoke(bContext *C, wmOperator *op, const wmEvent return OPERATOR_CANCELLED; } + if (GPENCIL_CURVE_EDIT_SESSIONS_ON(gpd)) { + BKE_report(op->reports, + RPT_ERROR, + "Cannot interpolate in curve edit mode"); + return OPERATOR_CANCELLED; + } + /* need editable strokes */ if (!gpencil_interpolate_check_todo(C, gpd)) { BKE_report(op->reports, RPT_ERROR, "Interpolation requires some editable strokes"); @@ -978,6 +985,13 @@ static int gpencil_interpolate_seq_exec(bContext *C, wmOperator *op) return OPERATOR_CANCELLED; } + if (GPENCIL_CURVE_EDIT_SESSIONS_ON(gpd)) { + BKE_report(op->reports, + RPT_ERROR, + "Cannot interpolate in curve edit mode"); + return OPERATOR_CANCELLED; + } + /* loop all layer to check if need interpolation */ LISTBASE_FOREACH (bGPDlayer *, gpl, &gpd->layers) { bGPDframe *prevFrame, *nextFrame; |