Changeset View
Changeset View
Standalone View
Standalone View
source/blender/editors/transform/transform_convert_mask.c
| Show First 20 Lines • Show All 239 Lines • ▼ Show 20 Lines | else { | ||||
| td++; | td++; | ||||
| td2d++; | td2d++; | ||||
| tdm++; | tdm++; | ||||
| } | } | ||||
| } | } | ||||
| } | } | ||||
| } | } | ||||
| void createTransMaskingData(bContext *C, TransInfo *t) | static void createTransMaskingData(bContext *C, TransInfo *t) | ||||
| { | { | ||||
| Scene *scene = CTX_data_scene(C); | Scene *scene = CTX_data_scene(C); | ||||
| Mask *mask = CTX_data_edit_mask(C); | Mask *mask = CTX_data_edit_mask(C); | ||||
| MaskLayer *masklay; | MaskLayer *masklay; | ||||
| TransData *td = NULL; | TransData *td = NULL; | ||||
| TransData2D *td2d = NULL; | TransData2D *td2d = NULL; | ||||
| TransDataMasking *tdm = NULL; | TransDataMasking *tdm = NULL; | ||||
| int count = 0, countsel = 0; | int count = 0, countsel = 0; | ||||
| ▲ Show 20 Lines • Show All 154 Lines • ▼ Show 20 Lines | if (t->state == TRANS_CANCEL) { | ||||
| } | } | ||||
| else if (tdm->which_handle == MASK_WHICH_HANDLE_RIGHT) { | else if (tdm->which_handle == MASK_WHICH_HANDLE_RIGHT) { | ||||
| tdm->point->bezt.h2 = tdm->orig_handle_type; | tdm->point->bezt.h2 = tdm->orig_handle_type; | ||||
| } | } | ||||
| } | } | ||||
| } | } | ||||
| } | } | ||||
| void recalcData_mask_common(TransInfo *t) | static void recalcData_mask_common(TransInfo *t) | ||||
| { | { | ||||
| Mask *mask = CTX_data_edit_mask(t->context); | Mask *mask = CTX_data_edit_mask(t->context); | ||||
| flushTransMasking(t); | flushTransMasking(t); | ||||
| DEG_id_tag_update(&mask->id, 0); | DEG_id_tag_update(&mask->id, 0); | ||||
| } | } | ||||
| /** \} */ | /** \} */ | ||||
| /* -------------------------------------------------------------------- */ | /* -------------------------------------------------------------------- */ | ||||
| /** \name Special After Transform Mask | /** \name Special After Transform Mask | ||||
| * \{ */ | * \{ */ | ||||
| void special_aftertrans_update__mask(bContext *C, TransInfo *t) | static void special_aftertrans_update__mask(bContext *C, TransInfo *t) | ||||
| { | { | ||||
| Mask *mask = NULL; | Mask *mask = NULL; | ||||
| if (t->spacetype == SPACE_CLIP) { | if (t->spacetype == SPACE_CLIP) { | ||||
| SpaceClip *sc = t->area->spacedata.first; | SpaceClip *sc = t->area->spacedata.first; | ||||
| mask = ED_space_clip_get_mask(sc); | mask = ED_space_clip_get_mask(sc); | ||||
| } | } | ||||
| else if (t->spacetype == SPACE_IMAGE) { | else if (t->spacetype == SPACE_IMAGE) { | ||||
| Show All 15 Lines | if (IS_AUTOKEY_ON(t->scene)) { | ||||
| if (ED_mask_layer_shape_auto_key_select(mask, scene->r.cfra)) { | if (ED_mask_layer_shape_auto_key_select(mask, scene->r.cfra)) { | ||||
| WM_event_add_notifier(C, NC_MASK | ND_DATA, &mask->id); | WM_event_add_notifier(C, NC_MASK | ND_DATA, &mask->id); | ||||
| DEG_id_tag_update(&mask->id, 0); | DEG_id_tag_update(&mask->id, 0); | ||||
| } | } | ||||
| } | } | ||||
| } | } | ||||
| /** \} */ | /** \} */ | ||||
| TransConvertTypeInfo TransConvertType_Mask = { | |||||
| /* flags */ (T_POINTS | T_2D_EDIT), | |||||
| /* createTransData */ createTransMaskingData, | |||||
| /* recalcData */ recalcData_mask_common, | |||||
| /* special_aftertrans_update */ special_aftertrans_update__mask, | |||||
| }; | |||||