[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [40605] trunk/blender/source/blender: bpy. app.handlers.frame_change_pre/post handlers.
Campbell Barton
ideasman42 at gmail.com
Tue Sep 27 12:43:45 CEST 2011
Revision: 40605
http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=40605
Author: campbellbarton
Date: 2011-09-27 10:43:45 +0000 (Tue, 27 Sep 2011)
Log Message:
-----------
bpy.app.handlers.frame_change_pre/post handlers.
Modified Paths:
--------------
trunk/blender/source/blender/blenkernel/intern/scene.c
trunk/blender/source/blender/blenlib/BLI_callbacks.h
trunk/blender/source/blender/python/intern/bpy_app_handlers.c
Modified: trunk/blender/source/blender/blenkernel/intern/scene.c
===================================================================
--- trunk/blender/source/blender/blenkernel/intern/scene.c 2011-09-27 10:37:02 UTC (rev 40604)
+++ trunk/blender/source/blender/blenkernel/intern/scene.c 2011-09-27 10:43:45 UTC (rev 40605)
@@ -56,6 +56,7 @@
#include "BLI_math.h"
#include "BLI_blenlib.h"
#include "BLI_utildefines.h"
+#include "BLI_callbacks.h"
#include "BKE_anim.h"
#include "BKE_animsys.h"
@@ -1022,6 +1023,9 @@
float ctime = BKE_curframe(sce);
Scene *sce_iter;
+ /* keep this first */
+ BLI_exec_cb(bmain, (ID *)sce, BLI_CB_EVT_FRAME_CHANGE_PRE);
+
sound_set_cfra(sce->r.cfra);
/* clear animation overrides */
@@ -1048,6 +1052,9 @@
/* object_handle_update() on all objects, groups and sets */
scene_update_tagged_recursive(bmain, sce, sce);
+
+ /* keep this last */
+ BLI_exec_cb(bmain, (ID *)sce, BLI_CB_EVT_FRAME_CHANGE_POST);
}
/* return default layer, also used to patch old files */
Modified: trunk/blender/source/blender/blenlib/BLI_callbacks.h
===================================================================
--- trunk/blender/source/blender/blenlib/BLI_callbacks.h 2011-09-27 10:37:02 UTC (rev 40604)
+++ trunk/blender/source/blender/blenlib/BLI_callbacks.h 2011-09-27 10:43:45 UTC (rev 40605)
@@ -40,6 +40,8 @@
struct ID;
typedef enum {
+ BLI_CB_EVT_FRAME_CHANGE_PRE,
+ BLI_CB_EVT_FRAME_CHANGE_POST,
BLI_CB_EVT_RENDER_PRE,
BLI_CB_EVT_RENDER_POST,
BLI_CB_EVT_RENDER_STATS,
Modified: trunk/blender/source/blender/python/intern/bpy_app_handlers.c
===================================================================
--- trunk/blender/source/blender/python/intern/bpy_app_handlers.c 2011-09-27 10:37:02 UTC (rev 40604)
+++ trunk/blender/source/blender/python/intern/bpy_app_handlers.c 2011-09-27 10:43:45 UTC (rev 40605)
@@ -40,6 +40,8 @@
static PyTypeObject BlenderAppCbType;
static PyStructSequence_Field app_cb_info_fields[]= {
+ {(char *)"frame_change_pre", NULL},
+ {(char *)"frame_change_post", NULL},
{(char *)"render_pre", NULL},
{(char *)"render_post", NULL},
{(char *)"render_stats", NULL},
More information about the Bf-blender-cvs
mailing list