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:
authorArystanbek Dyussenov <arystan.d@gmail.com>2009-07-12 11:20:49 +0400
committerArystanbek Dyussenov <arystan.d@gmail.com>2009-07-12 11:20:49 +0400
commitffa5636a8b348d47d08b76644ec567d90cc9d3c5 (patch)
treecbfe83dad78c4f455f969de0a1edd9cd4395d1e9 /source/blender/makesrna/intern/rna_action_api.c
parent11a47a02c73387d9390f7b1d2a40b7c50cab9c6f (diff)
Reusing existing blenkernel function calc_action_range for Action.get_frame_range.
Diffstat (limited to 'source/blender/makesrna/intern/rna_action_api.c')
-rw-r--r--source/blender/makesrna/intern/rna_action_api.c29
1 files changed, 6 insertions, 23 deletions
diff --git a/source/blender/makesrna/intern/rna_action_api.c b/source/blender/makesrna/intern/rna_action_api.c
index 9f63d44f8ef..2b51a424fcf 100644
--- a/source/blender/makesrna/intern/rna_action_api.c
+++ b/source/blender/makesrna/intern/rna_action_api.c
@@ -39,36 +39,19 @@
#include "DNA_anim_types.h"
#include "DNA_curve_types.h"
-/* return frame range of all curves (min, max) or (0, 0) if there are no keys */
+/* return frame range of all curves (min, max) or (0, 1) if there are no keys */
int *rna_Action_get_frame_range(bAction *act, int *ret_length)
{
- FCurve *cu;
int *ret;
+ float start, end;
+
+ calc_action_range(act, &start, &end, 1);
*ret_length= 2;
ret= MEM_callocN(*ret_length * sizeof(int), "rna_Action_get_frame_range");
- ret[0]= 0;
- ret[1]= 0;
-
- for (cu= act->curves.first; cu; cu= cu->next) {
- int verts= cu->totvert;
- BezTriple *bezt= cu->bezt;
- while (verts) {
- int frame= (int)bezt->vec[1][0];
-
- if (cu == act->curves.first && verts == cu->totvert)
- ret[0]= ret[1]= frame;
-
- if (frame < ret[0])
- ret[0]= frame;
- if (frame > ret[1])
- ret[1]= frame;
-
- bezt++;
- verts--;
- }
- }
+ ret[0]= (int)start;
+ ret[1]= (int)end;
return ret;
}