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:
authorJoshua Leung <aligorith@gmail.com>2007-06-19 13:46:52 +0400
committerJoshua Leung <aligorith@gmail.com>2007-06-19 13:46:52 +0400
commit3caf086137d08be3285fcffd832ba9bc7f0bdb4f (patch)
tree6ba7a6ae1e0317ff36e68dd9d369779ba7c99b05 /source/blender/include/BDR_drawaction.h
parente3ed38be6bf201f2816374bae973c7f4535d7b87 (diff)
== Action Editor - Long Keyframes ==
I've recoded the way long keyframes work a bit, so that more cases are handled accurately. Now, it takes into account the number of IPO-curves that have keyframes in them on the start/end frame of the long-keyframe, instead of just taking the total number of IPO-curves present for the channel being drawn.
Diffstat (limited to 'source/blender/include/BDR_drawaction.h')
-rw-r--r--source/blender/include/BDR_drawaction.h24
1 files changed, 20 insertions, 4 deletions
diff --git a/source/blender/include/BDR_drawaction.h b/source/blender/include/BDR_drawaction.h
index fdbd710c59f..821d8ea6b79 100644
--- a/source/blender/include/BDR_drawaction.h
+++ b/source/blender/include/BDR_drawaction.h
@@ -41,6 +41,19 @@ struct bAction;
struct Object;
struct ListBase;
+/* ****************************** Base Structs ****************************** */
+
+/* Keyframe Column Struct */
+typedef struct ActKeyColumn {
+ struct ActKeyColumn *next, *prev;
+ short sel, handle_type;
+ float cfra;
+
+ /* only while drawing - used to determine if long-keyframe needs to be drawn */
+ short modified;
+ short totcurve;
+} ActKeyColumn;
+
/* 'Long Keyframe' Struct */
typedef struct ActKeyBlock {
struct ActKeyBlock *next, *prev;
@@ -53,7 +66,10 @@ typedef struct ActKeyBlock {
short totcurve;
} ActKeyBlock;
-/*Action Generics */
+
+/* ******************************* Methods ****************************** */
+
+/* Action Generics */
void draw_cfra_action(void);
int count_action_levels (struct bAction *act);
@@ -65,9 +81,9 @@ void draw_object_channel(struct gla2DDrawInfo *di, Object *ob, float ypos);
/* Keydata Generation */
void icu_to_keylist(struct IpoCurve *icu, ListBase *keys, ListBase *blocks);
-int ipo_to_keylist(struct Ipo *ipo, ListBase *keys, ListBase *blocks);
-int action_to_keylist(bAction *act, ListBase *keys, ListBase *blocks);
-int ob_to_keylist(Object *ob, ListBase *keys, ListBase *blocks);
+void ipo_to_keylist(struct Ipo *ipo, ListBase *keys, ListBase *blocks);
+void action_to_keylist(bAction *act, ListBase *keys, ListBase *blocks);
+void ob_to_keylist(Object *ob, ListBase *keys, ListBase *blocks);
#endif /* BDR_DRAWACTION_H */