Cleaning: update a couple of functions to use scene from context instead of from screen.

This commit is contained in:
2009-12-04 01:25:43 +00:00
parent ae7cf1df8f
commit b1a1a0f135
4 changed files with 13 additions and 13 deletions

View File

@@ -41,6 +41,7 @@ struct Header;
struct Menu;
struct ScrArea;
struct SpaceType;
struct Scene;
struct wmNotifier;
struct wmWindow;
struct wmWindowManager;
@@ -233,7 +234,7 @@ void BKE_screen_area_free(struct ScrArea *sa);
/* screen */
void free_screen(struct bScreen *sc);
unsigned int BKE_screen_visible_layers(struct bScreen *screen);
unsigned int BKE_screen_visible_layers(struct bScreen *screen, struct Scene *scene);
#endif

View File

@@ -2155,7 +2155,7 @@ static void dag_current_scene_layers(Main *bmain, Scene **sce, unsigned int *lay
for(win=wm->windows.first; win; win=win->next) {
if(win->screen) {
if(!*sce) *sce= win->screen->scene;
*lay |= BKE_screen_visible_layers(win->screen);
*lay |= BKE_screen_visible_layers(win->screen, win->screen->scene);
}
}
}

View File

@@ -318,21 +318,20 @@ void free_screen(bScreen *sc)
}
/* for depsgraph */
unsigned int BKE_screen_visible_layers(bScreen *screen)
unsigned int BKE_screen_visible_layers(bScreen *screen, Scene *scene)
{
ScrArea *sa;
unsigned int layer= 0;
if(!screen)
return layer;
/* get all used view3d layers */
for(sa= screen->areabase.first; sa; sa= sa->next)
if(sa->spacetype==SPACE_VIEW3D)
layer |= ((View3D *)sa->spacedata.first)->lay;
if(screen) {
/* get all used view3d layers */
for(sa= screen->areabase.first; sa; sa= sa->next)
if(sa->spacetype==SPACE_VIEW3D)
layer |= ((View3D *)sa->spacedata.first)->lay;
}
if(!layer)
return screen->scene->lay;
return scene->lay;
return layer;
}

View File

@@ -1614,13 +1614,13 @@ void ED_screen_animation_timer_update(bContext *C, int redraws)
void ED_update_for_newframe(const bContext *C, int mute)
{
bScreen *screen= CTX_wm_screen(C);
Scene *scene= screen->scene;
Scene *scene= CTX_data_scene(C);
//extern void audiostream_scrub(unsigned int frame); /* seqaudio.c */
/* this function applies the changes too */
/* XXX future: do all windows */
scene_update_for_newframe(scene, BKE_screen_visible_layers(screen)); /* BKE_scene.h */
scene_update_for_newframe(scene, BKE_screen_visible_layers(screen, scene)); /* BKE_scene.h */
//if ( (CFRA>1) && (!mute) && (scene->r.audio.flag & AUDIO_SCRUB))
// audiostream_scrub( CFRA );