43 if (mask_layer ==
nullptr) {
50 if (mask_layer_shape_cb(mask_layer_shape, scene)) {
66 if (
ELEM(
nullptr, mask_layer, elems)) {
73 CfraElem *ce = MEM_cnew<CfraElem>(
"CfraElem");
75 ce->
cfra =
float(mask_layer_shape->frame);
89 if (mask_layer ==
nullptr) {
107 if (mask_layer_shape ==
nullptr) {
111 switch (select_mode) {
116 mask_layer_shape->
flag &= ~MASK_SHAPE_SELECT;
127 if (mask_layer ==
nullptr) {
140 if (mask_layer ==
nullptr) {
152 if (mask_layer ==
nullptr) {
158 if (mask_layer_shape) {
165 if (mask_layer ==
nullptr) {
182 if (mask_layer ==
nullptr) {
191 pt[0] = mask_layer_shape->frame;
215 bool changed =
false;
218 if (mask_layer ==
nullptr) {
235 bool changed =
false;
238 if (mask_layer ==
nullptr) {
251 mask_layer_shape->flag &= ~MASK_SHAPE_SELECT;
285 mask_layer_shape->
frame =
int(scene->r.cfra);
void BKE_mask_layer_shape_unlink(struct MaskLayer *masklay, struct MaskLayerShape *masklay_shape)
struct MaskLayerShape * BKE_mask_layer_shape_duplicate(struct MaskLayerShape *masklay_shape)
struct MaskLayerShape * BKE_mask_layer_shape_find_frame(struct MaskLayer *masklay, int frame)
#define LISTBASE_FOREACH(type, var, list)
#define LISTBASE_FOREACH_MUTABLE(type, var, list)
void BLI_insertlinkafter(struct ListBase *listbase, void *vprevlink, void *vnewlink) ATTR_NONNULL(1)
void BLI_addtail(struct ListBase *listbase, void *vlink) ATTR_NONNULL(1)
#define IN_RANGE(a, b, c)
Read Guarded memory(de)allocation.
int ED_markers_find_nearest_marker_time(ListBase *markers, float x)
draw_view in_light_buf[] float
draw_view push_constant(Type::INT, "radiance_src") .push_constant(Type capture_info_buf storage_buf(1, Qualifier::READ, "ObjectBounds", "bounds_buf[]") .push_constant(Type draw_view int
bool keyframe_region_lasso_test(const KeyframeEdit_LassoData *data_lasso, const float xy[2])
bool keyframe_region_circle_test(const KeyframeEdit_CircleData *data_circle, const float xy[2])
static bool snap_mask_layer_nearest(MaskLayerShape *mask_layer_shape, Scene *)
bool ED_masklayer_frame_select_check(const MaskLayer *mask_layer)
static void mask_layer_shape_select(MaskLayerShape *mask_layer_shape, short select_mode)
void ED_mask_select_frame(MaskLayer *mask_layer, int selx, short select_mode)
void ED_mask_select_frames(MaskLayer *mask_layer, short select_mode)
void ED_masklayer_snap_frames(MaskLayer *mask_layer, Scene *scene, short mode)
bool ED_masklayer_frames_duplicate(MaskLayer *mask_layer)
void ED_masklayer_frames_select_region(KeyframeEditData *ked, MaskLayer *mask_layer, short tool, short select_mode)
bool ED_masklayer_frames_delete(MaskLayer *mask_layer)
void ED_masklayer_frames_select_box(MaskLayer *mask_layer, float min, float max, short select_mode)
bool ED_masklayer_frames_looper(MaskLayer *mask_layer, Scene *scene, bool(*mask_layer_shape_cb)(MaskLayerShape *, Scene *))
void ED_masklayer_make_cfra_list(MaskLayer *mask_layer, ListBase *elems, bool onlysel)
static bool snap_mask_layer_nearmarker(MaskLayerShape *mask_layer_shape, Scene *scene)
static bool snap_mask_layer_nearestsec(MaskLayerShape *mask_layer_shape, Scene *scene)
void ED_masklayer_frame_select_set(MaskLayer *mask_layer, short mode)
static bool snap_mask_layer_cframe(MaskLayerShape *mask_layer_shape, Scene *scene)
ccl_device_inline float2 floor(const float2 a)