Changeset View
Changeset View
Standalone View
Standalone View
source/blender/editors/include/ED_mask.h
| Show All 31 Lines | |||||
| struct Depsgraph; | struct Depsgraph; | ||||
| struct KeyframeEditData; | struct KeyframeEditData; | ||||
| struct MaskLayer; | struct MaskLayer; | ||||
| struct MaskLayerShape; | struct MaskLayerShape; | ||||
| struct bContext; | struct bContext; | ||||
| struct wmKeyConfig; | struct wmKeyConfig; | ||||
| /* mask_edit.c */ | /* mask_edit.c */ | ||||
| void ED_mask_deselect_all(const struct bContext *C); | void ED_mask_deselect_all(const struct bContext *C); | ||||
| void ED_operatortypes_mask(void); | void ED_operatortypes_mask(void); | ||||
| void ED_keymap_mask(struct wmKeyConfig *keyconf); | void ED_keymap_mask(struct wmKeyConfig *keyconf); | ||||
| void ED_operatormacros_mask(void); | void ED_operatormacros_mask(void); | ||||
| /* mask_query.c */ | /* mask_query.c */ | ||||
| void ED_mask_get_size(struct ScrArea *area, int *width, int *height); | void ED_mask_get_size(struct ScrArea *area, int *width, int *height); | ||||
| void ED_mask_zoom(struct ScrArea *area, struct ARegion *region, float *zoomx, float *zoomy); | void ED_mask_zoom(struct ScrArea *area, struct ARegion *region, float *zoomx, float *zoomy); | ||||
| void ED_mask_get_aspect(struct ScrArea *area, struct ARegion *region, float *aspx, float *aspy); | void ED_mask_get_aspect(struct ScrArea *area, struct ARegion *region, float *aspx, float *aspy); | ||||
| void ED_mask_pixelspace_factor(struct ScrArea *area, | void ED_mask_pixelspace_factor(struct ScrArea *area, | ||||
| struct ARegion *region, | struct ARegion *region, | ||||
| float *scalex, | float *scalex, | ||||
| float *scaley); | float *scaley); | ||||
| /** | |||||
| * Takes `event->mval`. | |||||
| */ | |||||
| void ED_mask_mouse_pos(struct ScrArea *area, | void ED_mask_mouse_pos(struct ScrArea *area, | ||||
| struct ARegion *region, | struct ARegion *region, | ||||
| const int mval[2], | const int mval[2], | ||||
| float co[2]); | float co[2]); | ||||
| /** | |||||
| * \param x/y: input, mval space. | |||||
| * \param xr/yr: output, mask point space. | |||||
| */ | |||||
| void ED_mask_point_pos( | void ED_mask_point_pos( | ||||
| struct ScrArea *area, struct ARegion *region, float x, float y, float *xr, float *yr); | struct ScrArea *area, struct ARegion *region, float x, float y, float *xr, float *yr); | ||||
| void ED_mask_point_pos__reverse( | void ED_mask_point_pos__reverse( | ||||
| struct ScrArea *area, struct ARegion *region, float x, float y, float *xr, float *yr); | struct ScrArea *area, struct ARegion *region, float x, float y, float *xr, float *yr); | ||||
| void ED_mask_cursor_location_get(struct ScrArea *area, float cursor[2]); | void ED_mask_cursor_location_get(struct ScrArea *area, float cursor[2]); | ||||
| bool ED_mask_selected_minmax(const struct bContext *C, | bool ED_mask_selected_minmax(const struct bContext *C, | ||||
| float min[2], | float min[2], | ||||
| float max[2], | float max[2], | ||||
| bool handles_as_control_point); | bool handles_as_control_point); | ||||
| /* mask_draw.c */ | /* mask_draw.c */ | ||||
| void ED_mask_draw(const struct bContext *C, const char draw_flag, const char draw_type); | void ED_mask_draw(const struct bContext *C, const char draw_flag, const char draw_type); | ||||
| /** | |||||
| * Sets up the opengl context. | |||||
| * width, height are to match the values from #ED_mask_get_size(). | |||||
| */ | |||||
| void ED_mask_draw_region(struct Depsgraph *depsgraph, | void ED_mask_draw_region(struct Depsgraph *depsgraph, | ||||
| struct Mask *mask, | struct Mask *mask, | ||||
| struct ARegion *region, | struct ARegion *region, | ||||
| const char draw_flag, | const char draw_flag, | ||||
| const char draw_type, | const char draw_type, | ||||
| const eMaskOverlayMode overlay_mode, | const eMaskOverlayMode overlay_mode, | ||||
| const int width_i, | const int width_i, | ||||
| const int height_i, | const int height_i, | ||||
| const float aspx, | const float aspx, | ||||
| const float aspy, | const float aspy, | ||||
| const bool do_scale_applied, | const bool do_scale_applied, | ||||
| const bool do_draw_cb, | const bool do_draw_cb, | ||||
| float stabmat[4][4], | float stabmat[4][4], | ||||
| const struct bContext *C); | const struct bContext *C); | ||||
| void ED_mask_draw_frames( | void ED_mask_draw_frames( | ||||
| struct Mask *mask, struct ARegion *region, const int cfra, const int sfra, const int efra); | struct Mask *mask, struct ARegion *region, const int cfra, const int sfra, const int efra); | ||||
| /* mask_shapekey.c */ | /* mask_shapekey.c */ | ||||
| void ED_mask_layer_shape_auto_key(struct MaskLayer *mask_layer, const int frame); | void ED_mask_layer_shape_auto_key(struct MaskLayer *mask_layer, const int frame); | ||||
| bool ED_mask_layer_shape_auto_key_all(struct Mask *mask, const int frame); | bool ED_mask_layer_shape_auto_key_all(struct Mask *mask, const int frame); | ||||
| bool ED_mask_layer_shape_auto_key_select(struct Mask *mask, const int frame); | bool ED_mask_layer_shape_auto_key_select(struct Mask *mask, const int frame); | ||||
| /* ----------- Mask AnimEdit API ------------------ */ | /* ----------- Mask AnimEdit API ------------------ */ | ||||
| /** | |||||
| * Loops over the mask-frames for a mask-layer, and applies the given callback. | |||||
| */ | |||||
| bool ED_masklayer_frames_looper(struct MaskLayer *mask_layer, | bool ED_masklayer_frames_looper(struct MaskLayer *mask_layer, | ||||
| struct Scene *scene, | struct Scene *scene, | ||||
| bool (*mask_layer_shape_cb)(struct MaskLayerShape *, | bool (*mask_layer_shape_cb)(struct MaskLayerShape *, | ||||
| struct Scene *)); | struct Scene *)); | ||||
| /** | |||||
| * Make a listing all the mask-frames in a layer as cfraelems. | |||||
| */ | |||||
| void ED_masklayer_make_cfra_list(struct MaskLayer *mask_layer, ListBase *elems, bool onlysel); | void ED_masklayer_make_cfra_list(struct MaskLayer *mask_layer, ListBase *elems, bool onlysel); | ||||
| /** | |||||
| * Check if one of the frames in this layer is selected. | |||||
| */ | |||||
| bool ED_masklayer_frame_select_check(const struct MaskLayer *mask_layer); | bool ED_masklayer_frame_select_check(const struct MaskLayer *mask_layer); | ||||
| /** | |||||
| * Set all/none/invert select. | |||||
| */ | |||||
| void ED_masklayer_frame_select_set(struct MaskLayer *mask_layer, short mode); | void ED_masklayer_frame_select_set(struct MaskLayer *mask_layer, short mode); | ||||
| /** | |||||
| * Select the frames in this layer that occur within the bounds specified. | |||||
| */ | |||||
| void ED_masklayer_frames_select_box(struct MaskLayer *mask_layer, | void ED_masklayer_frames_select_box(struct MaskLayer *mask_layer, | ||||
| float min, | float min, | ||||
| float max, | float max, | ||||
| short select_mode); | short select_mode); | ||||
| /** | |||||
| * Select the frames in this layer that occur within the lasso/circle region specified. | |||||
| */ | |||||
| void ED_masklayer_frames_select_region(struct KeyframeEditData *ked, | void ED_masklayer_frames_select_region(struct KeyframeEditData *ked, | ||||
| struct MaskLayer *mask_layer, | struct MaskLayer *mask_layer, | ||||
| short tool, | short tool, | ||||
| short select_mode); | short select_mode); | ||||
| /** | |||||
| * Set all/none/invert select (like above, but with SELECT_* modes). | |||||
| */ | |||||
| void ED_mask_select_frames(struct MaskLayer *mask_layer, short select_mode); | void ED_mask_select_frames(struct MaskLayer *mask_layer, short select_mode); | ||||
| /** | |||||
| * Select the frame in this layer that occurs on this frame (there should only be one at most). | |||||
| */ | |||||
| void ED_mask_select_frame(struct MaskLayer *mask_layer, int selx, short select_mode); | void ED_mask_select_frame(struct MaskLayer *mask_layer, int selx, short select_mode); | ||||
| /** | |||||
| * Delete selected frames. | |||||
| */ | |||||
| bool ED_masklayer_frames_delete(struct MaskLayer *mask_layer); | bool ED_masklayer_frames_delete(struct MaskLayer *mask_layer); | ||||
| /** | |||||
| * Duplicate selected frames from given mask-layer. | |||||
| */ | |||||
| void ED_masklayer_frames_duplicate(struct MaskLayer *mask_layer); | void ED_masklayer_frames_duplicate(struct MaskLayer *mask_layer); | ||||
| /** | |||||
| * Snap selected frames to ... | |||||
| */ | |||||
| void ED_masklayer_snap_frames(struct MaskLayer *mask_layer, struct Scene *scene, short mode); | void ED_masklayer_snap_frames(struct MaskLayer *mask_layer, struct Scene *scene, short mode); | ||||
| #if 0 | #if 0 | ||||
| void free_gpcopybuf(void); | void free_gpcopybuf(void); | ||||
| void copy_gpdata(void); | void copy_gpdata(void); | ||||
| void paste_gpdata(void); | void paste_gpdata(void); | ||||
| void mirror_masklayer_frames(struct MaskLayer *mask_layer, short mode); | void mirror_masklayer_frames(struct MaskLayer *mask_layer, short mode); | ||||
| #endif | #endif | ||||
| #ifdef __cplusplus | #ifdef __cplusplus | ||||
| } | } | ||||
| #endif | #endif | ||||