Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'source/blender/include/BSE_editaction_types.h')
-rw-r--r--source/blender/include/BSE_editaction_types.h35
1 files changed, 22 insertions, 13 deletions
diff --git a/source/blender/include/BSE_editaction_types.h b/source/blender/include/BSE_editaction_types.h
index 48f0bc39ffc..ae61b09a13a 100644
--- a/source/blender/include/BSE_editaction_types.h
+++ b/source/blender/include/BSE_editaction_types.h
@@ -37,9 +37,12 @@
/* FILTERED ACTION DATA - TYPES */
/* types of keyframe data in ActListElem */
-#define ALE_NONE 0
-#define ALE_IPO 1
-#define ALE_ICU 2
+typedef enum ALE_KEYTYPE {
+ ALE_NONE = 0,
+ ALE_IPO,
+ ALE_ICU,
+ ALE_GROUP
+} ALE_KEYTYPE;
/* This struct defines a structure used for quick access */
typedef struct bActListElem {
@@ -53,6 +56,8 @@ typedef struct bActListElem {
void *key_data; /* motion data - ipo or ipo-curve */
short datatype; /* type of motion data to expect */
+ struct bActionGroup *grp; /* action group that owns the channel */
+
void *owner; /* will either be an action channel or fake ipo-channel (for keys) */
short ownertype; /* type of owner */
} bActListElem;
@@ -61,17 +66,21 @@ typedef struct bActListElem {
/* FILTER ACTION DATA - METHODS/TYPES */
/* filtering flags - under what circumstances should a channel be added */
-#define ACTFILTER_VISIBLE 0x001 /* should channels be visible */
-#define ACTFILTER_SEL 0x002 /* should channels be selected */
-#define ACTFILTER_FOREDIT 0x004 /* does editable status matter */
-#define ACTFILTER_CHANNELS 0x008 /* do we only care that it is a channel */
-#define ACTFILTER_IPOKEYS 0x010 /* only channels referencing ipo's */
-#define ACTFILTER_ONLYICU 0x020 /* only reference ipo-curves */
-#define ACTFILTER_FORDRAWING 0x040 /* make list for interface drawing */
+typedef enum ACTFILTER_FLAGS {
+ ACTFILTER_VISIBLE = (1<<0), /* should channels be visible */
+ ACTFILTER_SEL = (1<<1), /* should channels be selected */
+ ACTFILTER_FOREDIT = (1<<2), /* does editable status matter */
+ ACTFILTER_CHANNELS = (1<<3), /* do we only care that it is a channel */
+ ACTFILTER_IPOKEYS = (1<<4), /* only channels referencing ipo's */
+ ACTFILTER_ONLYICU = (1<<5), /* only reference ipo-curves */
+ ACTFILTER_FORDRAWING = (1<<6) /* make list for interface drawing */
+} ACTFILTER_FLAGS;
/* Action Editor - Main Data types */
-#define ACTCONT_NONE 0
-#define ACTCONT_ACTION 1
-#define ACTCONT_SHAPEKEY 2
+typedef enum ACTCONT_TYPES {
+ ACTCONT_NONE = 0,
+ ACTCONT_ACTION,
+ ACTCONT_SHAPEKEY
+} ACTCONT_TYPES;
#endif