Blender  V3.3
Classes | Typedefs | Enumerations | Functions
keyframes_draw.c File Reference
#include <float.h>
#include "MEM_guardedalloc.h"
#include "BLI_dlrbTree.h"
#include "BLI_listbase.h"
#include "BLI_rect.h"
#include "DNA_anim_types.h"
#include "DNA_gpencil_types.h"
#include "DNA_mask_types.h"
#include "DNA_object_types.h"
#include "DNA_scene_types.h"
#include "GPU_immediate.h"
#include "GPU_state.h"
#include "UI_interface.h"
#include "UI_resources.h"
#include "UI_view2d.h"
#include "ED_anim_api.h"
#include "ED_keyframes_draw.h"
#include "ED_keyframes_keylist.h"

Go to the source code of this file.

Classes

struct  DrawKeylistUIData
 
struct  AnimKeylistDrawListElem
 
struct  AnimKeylistDrawList
 

Typedefs

typedef struct DrawKeylistUIData DrawKeylistUIData
 
typedef enum eAnimKeylistDrawListElemType eAnimKeylistDrawListElemType
 
typedef struct AnimKeylistDrawListElem AnimKeylistDrawListElem
 
typedef struct AnimKeylistDrawList AnimKeylistDrawList
 

Enumerations

enum  eAnimKeylistDrawListElemType {
  ANIM_KEYLIST_SUMMARY , ANIM_KEYLIST_SCENE , ANIM_KEYLIST_OBJECT , ANIM_KEYLIST_FCURVE ,
  ANIM_KEYLIST_ACTION , ANIM_KEYLIST_AGROUP , ANIM_KEYLIST_GP_LAYER , ANIM_KEYLIST_MASK_LAYER
}
 

Functions

void draw_keyframe_shape (float x, float y, float size, bool sel, short key_type, short mode, float alpha, const KeyframeShaderBindings *sh_bindings, short handle_type, short extreme_type)
 
static void draw_keylist_ui_data_init (DrawKeylistUIData *ctx, View2D *v2d, float yscale_fac, bool channel_locked, eSAction_Flag saction_flag)
 
static void draw_keylist_block_gpencil (const DrawKeylistUIData *ctx, const ActKeyColumn *ab, float ypos)
 
static void draw_keylist_block_moving_hold (const DrawKeylistUIData *ctx, const ActKeyColumn *ab, float ypos)
 
static void draw_keylist_block_standard (const DrawKeylistUIData *ctx, const ActKeyColumn *ab, float ypos)
 
static void draw_keylist_block_interpolation_line (const DrawKeylistUIData *ctx, const ActKeyColumn *ab, float ypos)
 
static void draw_keylist_block (const DrawKeylistUIData *ctx, const ActKeyColumn *ab, float ypos)
 
static void draw_keylist_blocks (const DrawKeylistUIData *ctx, const ActKeyColumn *keys, const int key_len, float ypos)
 
static bool draw_keylist_is_visible_key (const View2D *v2d, const ActKeyColumn *ak)
 
static void draw_keylist_keys (const DrawKeylistUIData *ctx, View2D *v2d, const KeyframeShaderBindings *sh_bindings, const ActKeyColumn *keys, const int key_len, float ypos, eSAction_Flag saction_flag)
 
static void ED_keylist_draw_list_elem_build_keylist (AnimKeylistDrawListElem *elem)
 
static void ED_keylist_draw_list_elem_draw_blocks (AnimKeylistDrawListElem *elem, View2D *v2d)
 
static void ED_keylist_draw_list_elem_draw_keys (AnimKeylistDrawListElem *elem, View2D *v2d, const KeyframeShaderBindings *sh_bindings)
 
static void ED_keylist_draw_list_elem_prepare_for_drawing (AnimKeylistDrawListElem *elem)
 
AnimKeylistDrawListED_keylist_draw_list_create (void)
 
static void ED_keylist_draw_list_build_keylists (AnimKeylistDrawList *draw_list)
 
static void ED_keylist_draw_list_draw_blocks (AnimKeylistDrawList *draw_list, View2D *v2d)
 
static int ED_keylist_draw_keylist_visible_key_len (const View2D *v2d, const ListBase *keys)
 
static int ED_keylist_draw_list_visible_key_len (const AnimKeylistDrawList *draw_list, const View2D *v2d)
 
static void ED_keylist_draw_list_draw_keys (AnimKeylistDrawList *draw_list, View2D *v2d)
 
static void ED_keylist_draw_list_draw (AnimKeylistDrawList *draw_list, View2D *v2d)
 
void ED_keylist_draw_list_flush (AnimKeylistDrawList *draw_list, View2D *v2d)
 
void ED_keylist_draw_list_free (AnimKeylistDrawList *draw_list)
 
static AnimKeylistDrawListElemed_keylist_draw_list_add_elem (AnimKeylistDrawList *draw_list, eAnimKeylistDrawListElemType elem_type, float ypos, float yscale_fac, eSAction_Flag saction_flag)
 
void draw_summary_channel (struct AnimKeylistDrawList *draw_list, bAnimContext *ac, float ypos, float yscale_fac, int saction_flag)
 
void draw_scene_channel (AnimKeylistDrawList *draw_list, bDopeSheet *ads, Scene *sce, float ypos, float yscale_fac, int saction_flag)
 
void draw_object_channel (AnimKeylistDrawList *draw_list, bDopeSheet *ads, Object *ob, float ypos, float yscale_fac, int saction_flag)
 
void draw_fcurve_channel (AnimKeylistDrawList *draw_list, AnimData *adt, FCurve *fcu, float ypos, float yscale_fac, int saction_flag)
 
void draw_agroup_channel (AnimKeylistDrawList *draw_list, AnimData *adt, bActionGroup *agrp, float ypos, float yscale_fac, int saction_flag)
 
void draw_action_channel (AnimKeylistDrawList *draw_list, AnimData *adt, bAction *act, float ypos, float yscale_fac, int saction_flag)
 
void draw_gpl_channel (AnimKeylistDrawList *draw_list, bDopeSheet *ads, bGPDlayer *gpl, float ypos, float yscale_fac, int saction_flag)
 
void draw_masklay_channel (AnimKeylistDrawList *draw_list, bDopeSheet *ads, MaskLayer *masklay, float ypos, float yscale_fac, int saction_flag)
 

Typedef Documentation

◆ AnimKeylistDrawList

◆ AnimKeylistDrawListElem

◆ DrawKeylistUIData

◆ eAnimKeylistDrawListElemType

Enumeration Type Documentation

◆ eAnimKeylistDrawListElemType

Enumerator
ANIM_KEYLIST_SUMMARY 
ANIM_KEYLIST_SCENE 
ANIM_KEYLIST_OBJECT 
ANIM_KEYLIST_FCURVE 
ANIM_KEYLIST_ACTION 
ANIM_KEYLIST_AGROUP 
ANIM_KEYLIST_GP_LAYER 
ANIM_KEYLIST_MASK_LAYER 

Definition at line 383 of file keyframes_draw.c.

Function Documentation

◆ draw_action_channel()

void draw_action_channel ( AnimKeylistDrawList draw_list,
AnimData adt,
bAction act,
float  ypos,
float  yscale_fac,
int  saction_flag 
)

◆ draw_agroup_channel()

void draw_agroup_channel ( AnimKeylistDrawList draw_list,
AnimData adt,
bActionGroup agrp,
float  ypos,
float  yscale_fac,
int  saction_flag 
)

◆ draw_fcurve_channel()

void draw_fcurve_channel ( AnimKeylistDrawList draw_list,
AnimData adt,
FCurve fcu,
float  ypos,
float  yscale_fac,
int  saction_flag 
)

◆ draw_gpl_channel()

void draw_gpl_channel ( AnimKeylistDrawList draw_list,
bDopeSheet ads,
bGPDlayer gpl,
float  ypos,
float  yscale_fac,
int  saction_flag 
)

◆ draw_keyframe_shape()

void draw_keyframe_shape ( float  x,
float  y,
float  size,
bool  sel,
short  key_type,
short  mode,
float  alpha,
const KeyframeShaderBindings sh_bindings,
short  handle_type,
short  extreme_type 
)

◆ draw_keylist_block()

static void draw_keylist_block ( const DrawKeylistUIData ctx,
const ActKeyColumn ab,
float  ypos 
)
static

◆ draw_keylist_block_gpencil()

static void draw_keylist_block_gpencil ( const DrawKeylistUIData ctx,
const ActKeyColumn ab,
float  ypos 
)
static

◆ draw_keylist_block_interpolation_line()

static void draw_keylist_block_interpolation_line ( const DrawKeylistUIData ctx,
const ActKeyColumn ab,
float  ypos 
)
static

◆ draw_keylist_block_moving_hold()

static void draw_keylist_block_moving_hold ( const DrawKeylistUIData ctx,
const ActKeyColumn ab,
float  ypos 
)
static

◆ draw_keylist_block_standard()

static void draw_keylist_block_standard ( const DrawKeylistUIData ctx,
const ActKeyColumn ab,
float  ypos 
)
static

◆ draw_keylist_blocks()

static void draw_keylist_blocks ( const DrawKeylistUIData ctx,
const ActKeyColumn keys,
const int  key_len,
float  ypos 
)
static

Definition at line 332 of file keyframes_draw.c.

References draw_keylist_block().

Referenced by ED_keylist_draw_list_elem_draw_blocks().

◆ draw_keylist_is_visible_key()

static bool draw_keylist_is_visible_key ( const View2D v2d,
const ActKeyColumn ak 
)
static

◆ draw_keylist_keys()

static void draw_keylist_keys ( const DrawKeylistUIData ctx,
View2D v2d,
const KeyframeShaderBindings sh_bindings,
const ActKeyColumn keys,
const int  key_len,
float  ypos,
eSAction_Flag  saction_flag 
)
static

◆ draw_keylist_ui_data_init()

static void draw_keylist_ui_data_init ( DrawKeylistUIData ctx,
View2D v2d,
float  yscale_fac,
bool  channel_locked,
eSAction_Flag  saction_flag 
)
static

◆ draw_masklay_channel()

void draw_masklay_channel ( AnimKeylistDrawList draw_list,
bDopeSheet ads,
MaskLayer masklay,
float  ypos,
float  yscale_fac,
int  saction_flag 
)

◆ draw_object_channel()

void draw_object_channel ( AnimKeylistDrawList draw_list,
bDopeSheet ads,
Object ob,
float  ypos,
float  yscale_fac,
int  saction_flag 
)

◆ draw_scene_channel()

void draw_scene_channel ( AnimKeylistDrawList draw_list,
bDopeSheet ads,
Scene sce,
float  ypos,
float  yscale_fac,
int  saction_flag 
)

◆ draw_summary_channel()

void draw_summary_channel ( struct AnimKeylistDrawList draw_list,
bAnimContext ac,
float  ypos,
float  yscale_fac,
int  saction_flag 
)

◆ ED_keylist_draw_keylist_visible_key_len()

static int ED_keylist_draw_keylist_visible_key_len ( const View2D v2d,
const ListBase keys 
)
static

◆ ed_keylist_draw_list_add_elem()

static AnimKeylistDrawListElem* ed_keylist_draw_list_add_elem ( AnimKeylistDrawList draw_list,
eAnimKeylistDrawListElemType  elem_type,
float  ypos,
float  yscale_fac,
eSAction_Flag  saction_flag 
)
static

◆ ED_keylist_draw_list_build_keylists()

static void ED_keylist_draw_list_build_keylists ( AnimKeylistDrawList draw_list)
static

◆ ED_keylist_draw_list_create()

AnimKeylistDrawList* ED_keylist_draw_list_create ( void  )

Definition at line 486 of file keyframes_draw.c.

References MEM_callocN.

Referenced by draw_channel_strips().

◆ ED_keylist_draw_list_draw()

static void ED_keylist_draw_list_draw ( AnimKeylistDrawList draw_list,
View2D v2d 
)
static

◆ ED_keylist_draw_list_draw_blocks()

static void ED_keylist_draw_list_draw_blocks ( AnimKeylistDrawList draw_list,
View2D v2d 
)
static

◆ ED_keylist_draw_list_draw_keys()

static void ED_keylist_draw_list_draw_keys ( AnimKeylistDrawList draw_list,
View2D v2d 
)
static

◆ ED_keylist_draw_list_elem_build_keylist()

static void ED_keylist_draw_list_elem_build_keylist ( AnimKeylistDrawListElem elem)
static

◆ ED_keylist_draw_list_elem_draw_blocks()

static void ED_keylist_draw_list_elem_draw_blocks ( AnimKeylistDrawListElem elem,
View2D v2d 
)
static

◆ ED_keylist_draw_list_elem_draw_keys()

static void ED_keylist_draw_list_elem_draw_keys ( AnimKeylistDrawListElem elem,
View2D v2d,
const KeyframeShaderBindings sh_bindings 
)
static

◆ ED_keylist_draw_list_elem_prepare_for_drawing()

static void ED_keylist_draw_list_elem_prepare_for_drawing ( AnimKeylistDrawListElem elem)
static

◆ ED_keylist_draw_list_flush()

void ED_keylist_draw_list_flush ( AnimKeylistDrawList draw_list,
View2D v2d 
)

◆ ED_keylist_draw_list_free()

void ED_keylist_draw_list_free ( AnimKeylistDrawList draw_list)

◆ ED_keylist_draw_list_visible_key_len()

static int ED_keylist_draw_list_visible_key_len ( const AnimKeylistDrawList draw_list,
const View2D v2d 
)
static