[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [27785] trunk/blender/source/blender/ editors: Fix #21741: changing scenes didn't update layers in 3d view, patch by Elia Sarti.

Brecht Van Lommel brecht at blender.org
Sat Mar 27 12:54:38 CET 2010


Revision: 27785
          http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=27785
Author:   blendix
Date:     2010-03-27 12:54:38 +0100 (Sat, 27 Mar 2010)

Log Message:
-----------
Fix #21741: changing scenes didn't update layers in 3d view, patch by Elia Sarti.

Modified Paths:
--------------
    trunk/blender/source/blender/editors/include/ED_view3d.h
    trunk/blender/source/blender/editors/screen/screen_edit.c
    trunk/blender/source/blender/editors/space_view3d/view3d_view.c

Modified: trunk/blender/source/blender/editors/include/ED_view3d.h
===================================================================
--- trunk/blender/source/blender/editors/include/ED_view3d.h	2010-03-27 11:20:27 UTC (rev 27784)
+++ trunk/blender/source/blender/editors/include/ED_view3d.h	2010-03-27 11:54:38 UTC (rev 27785)
@@ -153,6 +153,7 @@
 
 void ED_view3d_init_mats_rv3d(struct Object *ob, struct RegionView3D *rv3d);
 
+void ED_view3d_scene_layers_copy(struct View3D *v3d, struct Scene *scene);
 void ED_view3d_scene_layers_update(struct Main *bmain, struct Scene *scene);
 int ED_view3d_scene_layer_set(int lay, const int *values);
 

Modified: trunk/blender/source/blender/editors/screen/screen_edit.c
===================================================================
--- trunk/blender/source/blender/editors/screen/screen_edit.c	2010-03-27 11:20:27 UTC (rev 27784)
+++ trunk/blender/source/blender/editors/screen/screen_edit.c	2010-03-27 11:54:38 UTC (rev 27785)
@@ -49,6 +49,7 @@
 #include "WM_types.h"
 
 #include "ED_image.h"
+#include "ED_view3d.h"
 #include "ED_screen.h"
 #include "ED_screen_types.h"
 
@@ -1387,6 +1388,9 @@
 				while(sl) {
 					if(sl->spacetype==SPACE_VIEW3D) {
 						View3D *v3d= (View3D*) sl;
+
+						ED_view3d_scene_layers_copy(v3d, scene);
+
 						if (!v3d->camera || !object_in_scene(v3d->camera, scene)) {
 							v3d->camera= scene_find_camera(sc->scene);
 							// XXX if (sc==curscreen) handle_view3d_lock();

Modified: trunk/blender/source/blender/editors/space_view3d/view3d_view.c
===================================================================
--- trunk/blender/source/blender/editors/space_view3d/view3d_view.c	2010-03-27 11:20:27 UTC (rev 27784)
+++ trunk/blender/source/blender/editors/space_view3d/view3d_view.c	2010-03-27 11:54:38 UTC (rev 27785)
@@ -66,6 +66,7 @@
 #include "ED_screen.h"
 #include "ED_armature.h"
 
+#include "GPU_draw.h"
 
 
 #include "PIL_time.h" /* smoothview */
@@ -1415,6 +1416,11 @@
 	}
 }
 
+void ED_view3d_scene_layers_copy(struct View3D *v3d, struct Scene *scene)
+{
+	copy_view3d_lock_space(v3d, scene);
+}
+
 void ED_view3d_scene_layers_update(Main *bmain, Scene *scene)
 {
 	bScreen *sc;





More information about the Bf-blender-cvs mailing list