[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [59431] trunk/blender/source/blender: patch to add backkbacks for game engine start/end,

Campbell Barton ideasman42 at gmail.com
Fri Aug 23 17:45:18 CEST 2013


Revision: 59431
          http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=59431
Author:   campbellbarton
Date:     2013-08-23 15:45:18 +0000 (Fri, 23 Aug 2013)
Log Message:
-----------
patch to add backkbacks for game engine start/end,
by sjoerd_de_vries

Modified Paths:
--------------
    trunk/blender/source/blender/blenlib/BLI_callbacks.h
    trunk/blender/source/blender/editors/space_view3d/view3d_view.c
    trunk/blender/source/blender/python/intern/bpy_app_handlers.c

Modified: trunk/blender/source/blender/blenlib/BLI_callbacks.h
===================================================================
--- trunk/blender/source/blender/blenlib/BLI_callbacks.h	2013-08-23 15:39:25 UTC (rev 59430)
+++ trunk/blender/source/blender/blenlib/BLI_callbacks.h	2013-08-23 15:45:18 UTC (rev 59431)
@@ -43,6 +43,8 @@
 	BLI_CB_EVT_SAVE_POST,
 	BLI_CB_EVT_SCENE_UPDATE_PRE,
 	BLI_CB_EVT_SCENE_UPDATE_POST,
+	BLI_CB_EVT_GAME_PRE,
+	BLI_CB_EVT_GAME_POST,
 	BLI_CB_EVT_TOT
 } eCbEvent;
 

Modified: trunk/blender/source/blender/editors/space_view3d/view3d_view.c
===================================================================
--- trunk/blender/source/blender/editors/space_view3d/view3d_view.c	2013-08-23 15:39:25 UTC (rev 59430)
+++ trunk/blender/source/blender/editors/space_view3d/view3d_view.c	2013-08-23 15:45:18 UTC (rev 59431)
@@ -40,6 +40,7 @@
 #include "BLI_rect.h"
 #include "BLI_listbase.h"
 #include "BLI_utildefines.h"
+#include "BLI_callbacks.h"
 
 #include "BKE_anim.h"
 #include "BKE_action.h"
@@ -1433,6 +1434,7 @@
 {
 #ifdef WITH_GAMEENGINE
 	Scene *startscene = CTX_data_scene(C);
+	Main *bmain = CTX_data_main(C);
 	ScrArea /* *sa, */ /* UNUSED */ *prevsa = CTX_wm_area(C);
 	ARegion *ar, *prevar = CTX_wm_region(C);
 	wmWindow *prevwin = CTX_wm_window(C);
@@ -1449,6 +1451,8 @@
 	 * the window manager until after this operator exits */
 	WM_redraw_windows(C);
 
+	BLI_callback_exec(bmain, &startscene->id, BLI_CB_EVT_GAME_PRE);
+
 	rv3d = CTX_wm_region_view3d(C);
 	/* sa = CTX_wm_area(C); */ /* UNUSED */
 	ar = CTX_wm_region(C);
@@ -1504,6 +1508,8 @@
 	BKE_scene_set_background(CTX_data_main(C), startscene);
 	//XXX BKE_scene_update_for_newframe(bmain, scene, scene->lay);
 
+	BLI_callback_exec(bmain, &startscene->id, BLI_CB_EVT_GAME_POST);
+
 	return OPERATOR_FINISHED;
 #else
 	(void)C; /* unused */

Modified: trunk/blender/source/blender/python/intern/bpy_app_handlers.c
===================================================================
--- trunk/blender/source/blender/python/intern/bpy_app_handlers.c	2013-08-23 15:39:25 UTC (rev 59430)
+++ trunk/blender/source/blender/python/intern/bpy_app_handlers.c	2013-08-23 15:45:18 UTC (rev 59431)
@@ -57,6 +57,8 @@
 	{(char *)"save_post",         (char *)"Callback list - on saving a blend file (after)"},
 	{(char *)"scene_update_pre",  (char *)"Callback list - on updating the scenes data (before)"},
 	{(char *)"scene_update_post", (char *)"Callback list - on updating the scenes data (after)"},
+	{(char *)"game_pre",          (char *)"Callback list - on starting the game engine"},
+	{(char *)"game_post",         (char *)"Callback list - on ending the game engine"},
 
 	/* sets the permanent tag */
 #   define APP_CB_OTHER_FIELDS 1




More information about the Bf-blender-cvs mailing list