diff options
Diffstat (limited to 'source/blender/editors/include')
-rw-r--r-- | source/blender/editors/include/ED_keyframes_edit.h | 44 | ||||
-rw-r--r-- | source/blender/editors/include/ED_object.h | 2 | ||||
-rw-r--r-- | source/blender/editors/include/ED_util.h | 1 | ||||
-rw-r--r-- | source/blender/editors/include/UI_interface.h | 4 | ||||
-rw-r--r-- | source/blender/editors/include/UI_resources.h | 5 |
5 files changed, 47 insertions, 9 deletions
diff --git a/source/blender/editors/include/ED_keyframes_edit.h b/source/blender/editors/include/ED_keyframes_edit.h index 29f92fff001..60f2526191c 100644 --- a/source/blender/editors/include/ED_keyframes_edit.h +++ b/source/blender/editors/include/ED_keyframes_edit.h @@ -60,10 +60,14 @@ typedef enum eEditKeyframes_Validate { /* select modes */ typedef enum eEditKeyframes_Select { + /* SELECT_SUBTRACT for all, followed by SELECT_ADD for some */ SELECT_REPLACE = (1<<0), + /* add ok keyframes to selection */ SELECT_ADD = (1<<1), + /* remove ok keyframes from selection */ SELECT_SUBTRACT = (1<<2), - SELECT_INVERT = (1<<4), + /* flip ok status of keyframes based on key status */ + SELECT_INVERT = (1<<3), } eEditKeyframes_Select; /* "selection map" building modes */ @@ -94,7 +98,7 @@ typedef enum eEditKeyframes_Mirror { /* ************************************************ */ /* Non-Destuctive Editing API (keyframes_edit.c) */ -/* --- Generic Properties for Bezier Edit Tools ----- */ +/* --- Generic Properties for Keyframe Edit Tools ----- */ typedef struct KeyframeEditData { /* generic properties/data access */ @@ -107,6 +111,10 @@ typedef struct KeyframeEditData { /* current iteration data */ struct FCurve *fcu; /* F-Curve that is being iterated over */ int curIndex; /* index of current keyframe being iterated over */ + + /* flags */ + short curflags; /* current flags for the keyframe we're reached in the iteration process */ + short iterflags; /* settings for iteration process */ // XXX: unused... } KeyframeEditData; /* ------- Function Pointer Typedefs ---------------- */ @@ -116,27 +124,47 @@ typedef void (*FcuEditFunc)(struct FCurve *fcu); /* callback function that operates on the given BezTriple */ typedef short (*KeyframeEditFunc)(KeyframeEditData *ked, struct BezTriple *bezt); +/* ---------- Defines for 'OK' polls ----------------- */ + +/* which verts of a keyframe is active (after polling) */ +typedef enum eKeyframeVertOk { + /* 'key' itself is ok */ + KEYFRAME_OK_KEY = (1<<0), + /* 'handle 1' is ok */ + KEYFRAME_OK_H1 = (1<<1), + /* 'handle 2' is ok */ + KEYFRAME_OK_H2 = (1<<2), + /* all flags */ + KEYFRAME_OK_ALL = (KEYFRAME_OK_KEY|KEYFRAME_OK_H1|KEYFRAME_OK_H2) +} eKeyframeVertOk; + +/* Flags for use during iteration */ +typedef enum eKeyframeIterFlags { + /* consider handles in addition to key itself */ + KEYFRAME_ITER_INCL_HANDLES = (1<<0), +} eKeyframeIterFlags; + /* ------- Custom Data Type Defines ------------------ */ /* Custom data for remapping one range to another in a fixed way */ -typedef struct BeztEditCD_Remap { +typedef struct KeyframeEditCD_Remap { float oldMin, oldMax; /* old range */ float newMin, newMax; /* new range */ -} BeztEditCD_Remap; +} KeyframeEditCD_Remap; /* ---------------- Looping API --------------------- */ /* functions for looping over keyframes */ /* function for working with F-Curve data only (i.e. when filters have been chosen to explicitly use this) */ -short ANIM_fcurve_keyframes_loop(KeyframeEditData *ked, struct FCurve *fcu, KeyframeEditFunc bezt_ok, KeyframeEditFunc bezt_cb, FcuEditFunc fcu_cb); +short ANIM_fcurve_keyframes_loop(KeyframeEditData *ked, struct FCurve *fcu, KeyframeEditFunc key_ok, KeyframeEditFunc key_cb, FcuEditFunc fcu_cb); /* function for working with any type (i.e. one of the known types) of animation channel * - filterflag is bDopeSheet->flag (DOPESHEET_FILTERFLAG) */ -short ANIM_animchannel_keyframes_loop(KeyframeEditData *ked, struct bAnimListElem *ale, KeyframeEditFunc bezt_ok, KeyframeEditFunc bezt_cb, FcuEditFunc fcu_cb, int filterflag); +short ANIM_animchannel_keyframes_loop(KeyframeEditData *ked, struct bAnimListElem *ale, KeyframeEditFunc key_ok, KeyframeEditFunc key_cb, FcuEditFunc fcu_cb, int filterflag); /* same as above, except bAnimListElem wrapper is not needed... * - keytype is eAnim_KeyType */ -short ANIM_animchanneldata_keyframes_loop(KeyframeEditData *ked, void *data, int keytype, KeyframeEditFunc bezt_ok, KeyframeEditFunc bezt_cb, FcuEditFunc fcu_cb, int filterflag); +short ANIM_animchanneldata_keyframes_loop(KeyframeEditData *ked, void *data, int keytype, KeyframeEditFunc key_ok, KeyframeEditFunc key_cb, FcuEditFunc fcu_cb, int filterflag); /* functions for making sure all keyframes are in good order */ void ANIM_editkeyframes_refresh(struct bAnimContext *ac); @@ -175,7 +203,7 @@ short bezt_calc_average(KeyframeEditData *ked, struct BezTriple *bezt); short bezt_to_cfraelem(KeyframeEditData *ked, struct BezTriple *bezt); /* used to remap times from one range to another - * requires: ked->custom = BeztEditCD_Remap + * requires: ked->custom = KeyframeEditCD_Remap */ void bezt_remap_times(KeyframeEditData *ked, struct BezTriple *bezt); diff --git a/source/blender/editors/include/ED_object.h b/source/blender/editors/include/ED_object.h index 709e36bccb2..4e0973fe77a 100644 --- a/source/blender/editors/include/ED_object.h +++ b/source/blender/editors/include/ED_object.h @@ -88,7 +88,7 @@ float ED_object_new_primitive_matrix(struct bContext *C, float *loc, float *rot, void ED_object_add_generic_props(struct wmOperatorType *ot, int do_editmode); int ED_object_add_generic_invoke(struct bContext *C, struct wmOperator *op, struct wmEvent *event); -void ED_object_add_generic_get_opts(struct wmOperator *op, float *loc, float *rot, int *enter_editmode, unsigned int *layer); +void ED_object_add_generic_get_opts(struct bContext *C, struct wmOperator *op, float *loc, float *rot, int *enter_editmode, unsigned int *layer); struct Object *ED_object_add_type(struct bContext *C, int type, float *loc, float *rot, int enter_editmode, unsigned int layer); void ED_object_single_users(struct Scene *scene, int full); diff --git a/source/blender/editors/include/ED_util.h b/source/blender/editors/include/ED_util.h index cc4f906ad37..7bf3ec88a4b 100644 --- a/source/blender/editors/include/ED_util.h +++ b/source/blender/editors/include/ED_util.h @@ -37,6 +37,7 @@ struct wmOperatorType; /* ed_util.c */ +void ED_editors_init (struct bContext *C); void ED_editors_exit (struct bContext *C); /* ************** Undo ************************ */ diff --git a/source/blender/editors/include/UI_interface.h b/source/blender/editors/include/UI_interface.h index dfc89ea16df..110f69d7f02 100644 --- a/source/blender/editors/include/UI_interface.h +++ b/source/blender/editors/include/UI_interface.h @@ -218,6 +218,8 @@ typedef struct uiLayout uiLayout; #define HOTKEYEVT (45<<9) #define BUT_IMAGE (46<<9) #define HISTOGRAM (47<<9) +#define WAVEFORM (48<<9) +#define VECTORSCOPE (49<<9) #define BUTTYPE (63<<9) @@ -676,6 +678,8 @@ uiLayout *uiTemplateConstraint(uiLayout *layout, struct PointerRNA *ptr); void uiTemplatePreview(uiLayout *layout, struct ID *id, struct ID *parent, struct MTex *slot); void uiTemplateColorRamp(uiLayout *layout, struct PointerRNA *ptr, char *propname, int expand); void uiTemplateHistogram(uiLayout *layout, struct PointerRNA *ptr, char *propname, int expand); +void uiTemplateWaveform(uiLayout *layout, struct PointerRNA *ptr, char *propname, int expand); +void uiTemplateVectorscope(uiLayout *layout, struct PointerRNA *ptr, char *propname, int expand); void uiTemplateCurveMapping(uiLayout *layout, struct PointerRNA *ptr, char *propname, int type, int levels, int brush); void uiTemplateColorWheel(uiLayout *layout, struct PointerRNA *ptr, char *propname, int value_slider, int lock); void uiTemplateTriColorSet(uiLayout *layout, struct PointerRNA *ptr, char *propname); diff --git a/source/blender/editors/include/UI_resources.h b/source/blender/editors/include/UI_resources.h index 273071f94bf..b40fa8509b3 100644 --- a/source/blender/editors/include/UI_resources.h +++ b/source/blender/editors/include/UI_resources.h @@ -227,6 +227,8 @@ enum { TH_DOPESHEET_CHANNELSUBOB, TH_PREVIEW_BACK, + + TH_EDGE_CREASE, }; /* XXX WARNING: previous is saved in file, so do not change order! */ @@ -277,6 +279,9 @@ void UI_ColorPtrBlendShade3ubv(char *cp1, char *cp2, float fac, int offset); // get a 3 byte color, blended and shaded between two other char color pointers void UI_GetColorPtrBlendShade3ubv(char *cp1, char *cp2, char *col, float fac, int offset); +// clear the openGL ClearColor using the input colorid +void UI_ThemeClearColor(int colorid); + // internal (blender) usage only, for init and set active void UI_SetTheme(int spacetype, int regionid); |