static int reload_exec(bContext *C, wmOperator *UNUSED(op)) { MovieClip *clip = CTX_data_edit_movieclip(C); if (!clip) return OPERATOR_CANCELLED; BKE_movieclip_reload(clip); WM_event_add_notifier(C, NC_MOVIECLIP | NA_EDITED, clip); return OPERATOR_FINISHED; }
int ED_space_clip_maskedit_mask_poll(bContext *C) { if (ED_space_clip_maskedit_poll(C)) { MovieClip *clip = CTX_data_edit_movieclip(C); if (clip) { SpaceClip *sc = CTX_wm_space_clip(C); return sc->mask_info.mask != NULL; } } return FALSE; }
static int clip_set_scene_frames_exec(bContext *C, wmOperator *UNUSED(op)) { MovieClip *clip = CTX_data_edit_movieclip(C); Scene *scene = CTX_data_scene(C); int clip_length; if (ELEM(NULL, scene, clip)) return OPERATOR_CANCELLED; clip_length = BKE_movieclip_get_duration(clip); scene->r.sfra = clip->start_frame; scene->r.efra = scene->r.sfra + clip_length - 1; scene->r.efra = max_ii(scene->r.sfra, scene->r.efra); WM_event_add_notifier(C, NC_SCENE | ND_FRAME, scene); return OPERATOR_FINISHED; }