Revision: 27074
          
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=27074
Author:   nexyon
Date:     2010-02-22 10:01:49 +0100 (Mon, 22 Feb 2010)

Log Message:
-----------
- Jack transport update: Moving the playhead in another jack app when not 
playing back now triggers an update in blender.
- Missing stub fix from last commit by nazg-gul, blenderplayer works now atm.

Modified Paths:
--------------
    trunk/blender/source/blender/windowmanager/intern/wm_event_system.c
    trunk/blender/source/blenderplayer/bad_level_call_stubs/stubs.c

Modified: trunk/blender/source/blender/windowmanager/intern/wm_event_system.c
===================================================================
--- trunk/blender/source/blender/windowmanager/intern/wm_event_system.c 
2010-02-22 08:27:45 UTC (rev 27073)
+++ trunk/blender/source/blender/windowmanager/intern/wm_event_system.c 
2010-02-22 09:01:49 UTC (rev 27074)
@@ -1533,23 +1533,32 @@
                        wm_event_free_all(win);
                else
                {
-                       if(win->screen->scene)
+                       Scene* scene = win->screen->scene;
+                       if(scene)
                        {
                                int playing = 
sound_scene_playing(win->screen->scene);
                                if(playing != -1)
                                {
+                                       CTX_wm_window_set(C, win);
+                                       CTX_wm_screen_set(C, win->screen);
+                                       CTX_data_scene_set(C, scene);
                                        if(((playing == 1) && 
(!win->screen->animtimer)) || ((playing == 0) && (win->screen->animtimer)))
                                        {
-                                               CTX_wm_window_set(C, win);
-                                               CTX_wm_screen_set(C, 
win->screen);
-                                               CTX_data_scene_set(C, 
win->screen->scene);
-
                                                ED_screen_animation_play(C, -1, 
1);
-
-                                               CTX_data_scene_set(C, NULL);
-                                               CTX_wm_screen_set(C, NULL);
-                                               CTX_wm_window_set(C, NULL);
                                        }
+                                       if(playing == 0)
+                                       {
+                                               int ncfra = 
floor(sound_sync_scene(scene) * FPS);
+                                               if(ncfra != scene->r.cfra)
+                                               {
+                                                       scene->r.cfra = ncfra;
+                                                       
ED_update_for_newframe(C, 1);
+                                                       
WM_event_add_notifier(C, NC_WINDOW, NULL);
+                                               }
+                                       }
+                                       CTX_data_scene_set(C, NULL);
+                                       CTX_wm_screen_set(C, NULL);
+                                       CTX_wm_window_set(C, NULL);
                                }
                        }
                }

Modified: trunk/blender/source/blenderplayer/bad_level_call_stubs/stubs.c
===================================================================
--- trunk/blender/source/blenderplayer/bad_level_call_stubs/stubs.c     
2010-02-22 08:27:45 UTC (rev 27073)
+++ trunk/blender/source/blenderplayer/bad_level_call_stubs/stubs.c     
2010-02-22 09:01:49 UTC (rev 27074)
@@ -88,6 +88,7 @@
 void WM_event_add_notifier(const struct bContext *C, unsigned int type, void 
*reference){}
 void WM_main_add_notifier(unsigned int type, void *reference){}
 void ED_armature_bone_rename(struct bArmature *arm, char *oldnamep, char 
*newnamep){}
+struct wmEventHandler *WM_event_add_modal_handler(struct bContext *C, struct 
wmOperator *op){return (struct wmEventHandler *)NULL;};
 void ED_armature_edit_bone_remove(struct bArmature *arm, struct EditBone 
*exBone){}
 void object_test_constraints (struct Object *owner){}
 void ED_object_parent(struct Object *ob, struct Object *par, int type, const 
char *substr){}


_______________________________________________
Bf-blender-cvs mailing list
[email protected]
http://lists.blender.org/mailman/listinfo/bf-blender-cvs

Reply via email to