Changeset View
Changeset View
Standalone View
Standalone View
source/blender/editors/include/ED_keyframes_keylist.h
- This file was copied from source/blender/editors/include/ED_keyframes_draw.h.
| Show All 25 Lines | |||||
| #ifdef __cplusplus | #ifdef __cplusplus | ||||
| extern "C" { | extern "C" { | ||||
| #endif | #endif | ||||
| struct AnimData; | struct AnimData; | ||||
| struct CacheFile; | struct CacheFile; | ||||
| struct DLRBT_Tree; | struct DLRBT_Tree; | ||||
| struct FCurve; | struct FCurve; | ||||
| struct ListBase; | |||||
| struct MaskLayer; | struct MaskLayer; | ||||
| struct Object; | struct Object; | ||||
| struct Scene; | struct Scene; | ||||
| struct View2D; | |||||
| struct bAction; | |||||
| struct bActionGroup; | |||||
| struct bAnimContext; | struct bAnimContext; | ||||
| struct bDopeSheet; | struct bDopeSheet; | ||||
| struct bGPDlayer; | struct bGPDlayer; | ||||
| /* ****************************** Base Structs ****************************** */ | /* ****************************** Base Structs ****************************** */ | ||||
| /* Information about the stretch of time from current to the next column */ | /* Information about the stretch of time from current to the next column */ | ||||
| typedef struct ActKeyBlockInfo { | typedef struct ActKeyBlockInfo { | ||||
| ▲ Show 20 Lines • Show All 81 Lines • ▼ Show 20 Lines | typedef enum eKeyframeExtremeDrawOpts { | ||||
| KEYFRAME_EXTREME_MIN = (1 << 0), | KEYFRAME_EXTREME_MIN = (1 << 0), | ||||
| KEYFRAME_EXTREME_MAX = (1 << 1), | KEYFRAME_EXTREME_MAX = (1 << 1), | ||||
| /* Grouped keys have different states. */ | /* Grouped keys have different states. */ | ||||
| KEYFRAME_EXTREME_MIXED = (1 << 2), | KEYFRAME_EXTREME_MIXED = (1 << 2), | ||||
| /* Both neighbors are equal to this key. */ | /* Both neighbors are equal to this key. */ | ||||
| KEYFRAME_EXTREME_FLAT = (1 << 3), | KEYFRAME_EXTREME_FLAT = (1 << 3), | ||||
| } eKeyframeExtremeDrawOpts; | } eKeyframeExtremeDrawOpts; | ||||
| /* draw simple diamond-shape keyframe */ | |||||
| /* caller should set up vertex format, bind GPU_SHADER_KEYFRAME_DIAMOND, | |||||
| * immBegin(GPU_PRIM_POINTS, n), then call this n times */ | |||||
| void draw_keyframe_shape(float x, | |||||
| float y, | |||||
| float size, | |||||
| bool sel, | |||||
| short key_type, | |||||
| short mode, | |||||
| float alpha, | |||||
| unsigned int pos_id, | |||||
| unsigned int size_id, | |||||
| unsigned int color_id, | |||||
| unsigned int outline_color_id, | |||||
| unsigned int flags_id, | |||||
| short handle_type, | |||||
| short extreme_type); | |||||
| /* ******************************* Methods ****************************** */ | /* ******************************* Methods ****************************** */ | ||||
| /* Channel Drawing ------------------ */ | /* Key-data Generation --------------- */ | ||||
| /* F-Curve */ | |||||
| void draw_fcurve_channel(struct View2D *v2d, | |||||
| struct AnimData *adt, | |||||
| struct FCurve *fcu, | |||||
| float ypos, | |||||
| float yscale_fac, | |||||
| int saction_flag); | |||||
| /* Action Group Summary */ | |||||
| void draw_agroup_channel(struct View2D *v2d, | |||||
| struct AnimData *adt, | |||||
| struct bActionGroup *agrp, | |||||
| float ypos, | |||||
| float yscale_fac, | |||||
| int saction_flag); | |||||
| /* Action Summary */ | |||||
| void draw_action_channel(struct View2D *v2d, | |||||
| struct AnimData *adt, | |||||
| struct bAction *act, | |||||
| float ypos, | |||||
| float yscale_fac, | |||||
| int saction_flag); | |||||
| /* Object Summary */ | |||||
| void draw_object_channel(struct View2D *v2d, | |||||
| struct bDopeSheet *ads, | |||||
| struct Object *ob, | |||||
| float ypos, | |||||
| float yscale_fac, | |||||
| int saction_flag); | |||||
| /* Scene Summary */ | |||||
| void draw_scene_channel(struct View2D *v2d, | |||||
| struct bDopeSheet *ads, | |||||
| struct Scene *sce, | |||||
| float ypos, | |||||
| float yscale_fac, | |||||
| int saction_flag); | |||||
| /* DopeSheet Summary */ | |||||
| void draw_summary_channel( | |||||
| struct View2D *v2d, struct bAnimContext *ac, float ypos, float yscale_fac, int saction_flag); | |||||
| /* Grease Pencil datablock summary */ | |||||
| void draw_gpencil_channel(struct View2D *v2d, | |||||
| struct bDopeSheet *ads, | |||||
| struct bGPdata *gpd, | |||||
| float ypos, | |||||
| float yscale_fac, | |||||
| int saction_flag); | |||||
| /* Grease Pencil Layer */ | |||||
| void draw_gpl_channel(struct View2D *v2d, | |||||
| struct bDopeSheet *ads, | |||||
| struct bGPDlayer *gpl, | |||||
| float ypos, | |||||
| float yscale_fac, | |||||
| int saction_flag); | |||||
| /* Mask Layer */ | |||||
| void draw_masklay_channel(struct View2D *v2d, | |||||
| struct bDopeSheet *ads, | |||||
| struct MaskLayer *masklay, | |||||
| float ypos, | |||||
| float yscale_fac, | |||||
| int saction_flag); | |||||
| /* Keydata Generation --------------- */ | |||||
| /* F-Curve */ | /* F-Curve */ | ||||
| void fcurve_to_keylist(struct AnimData *adt, | void fcurve_to_keylist(struct AnimData *adt, | ||||
| struct FCurve *fcu, | struct FCurve *fcu, | ||||
| struct DLRBT_Tree *keys, | struct DLRBT_Tree *keys, | ||||
| int saction_flag); | int saction_flag); | ||||
| /* Action Group */ | /* Action Group */ | ||||
| void agroup_to_keylist(struct AnimData *adt, | void agroup_to_keylist(struct AnimData *adt, | ||||
| struct bActionGroup *agrp, | struct bActionGroup *agrp, | ||||
| ▲ Show 20 Lines • Show All 47 Lines • Show Last 20 Lines | |||||