Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--intern/cycles/blender/blender_camera.cpp4
-rw-r--r--release/scripts/startup/bl_operators/object.py2
-rw-r--r--release/scripts/startup/bl_ui/space_view3d.py5
-rw-r--r--source/blender/makesrna/intern/rna_space.c33
4 files changed, 15 insertions, 29 deletions
diff --git a/intern/cycles/blender/blender_camera.cpp b/intern/cycles/blender/blender_camera.cpp
index b41749a7f81..21efba4cdf0 100644
--- a/intern/cycles/blender/blender_camera.cpp
+++ b/intern/cycles/blender/blender_camera.cpp
@@ -648,7 +648,7 @@ static void blender_camera_from_view(BlenderCamera *bcam,
if(b_rv3d.view_perspective() == BL::RegionView3D::view_perspective_CAMERA) {
/* camera view */
- BL::Object b_ob = (b_v3d.lock_camera_and_layers())? b_scene.camera(): b_v3d.camera();
+ BL::Object b_ob = (b_v3d.use_local_camera())? b_v3d.camera(): b_scene.camera();
if(b_ob) {
blender_camera_from_object(bcam, b_engine, b_ob, skip_panorama);
@@ -784,7 +784,7 @@ static void blender_camera_border(BlenderCamera *bcam,
return;
}
- BL::Object b_ob = (b_v3d.lock_camera_and_layers())? b_scene.camera(): b_v3d.camera();
+ BL::Object b_ob = (b_v3d.use_local_camera())? b_v3d.camera(): b_scene.camera();
if(!b_ob)
return;
diff --git a/release/scripts/startup/bl_operators/object.py b/release/scripts/startup/bl_operators/object.py
index d4085d70143..c945d15267a 100644
--- a/release/scripts/startup/bl_operators/object.py
+++ b/release/scripts/startup/bl_operators/object.py
@@ -133,7 +133,7 @@ class SelectCamera(Operator):
scene = context.scene
view_layer = context.view_layer
view = context.space_data
- if view.type == 'VIEW_3D' and not view.lock_camera_and_layers:
+ if view.type == 'VIEW_3D' and view.use_local_camera:
camera = view.camera
else:
camera = scene.camera
diff --git a/release/scripts/startup/bl_ui/space_view3d.py b/release/scripts/startup/bl_ui/space_view3d.py
index f0bbc1d39dc..5e42e0b655b 100644
--- a/release/scripts/startup/bl_ui/space_view3d.py
+++ b/release/scripts/startup/bl_ui/space_view3d.py
@@ -4206,7 +4206,10 @@ class VIEW3D_PT_view3d_properties(Panel):
col = flow.column()
subcol = col.column()
- subcol.enabled = not view.lock_camera_and_layers
+ subcol.prop(view, "use_local_camera")
+
+ subcol = col.column()
+ subcol.enabled = view.use_local_camera
subcol.prop(view, "camera", text="Local Camera")
subcol = col.column(align=True)
diff --git a/source/blender/makesrna/intern/rna_space.c b/source/blender/makesrna/intern/rna_space.c
index 640929ead19..6fa13cadbd6 100644
--- a/source/blender/makesrna/intern/rna_space.c
+++ b/source/blender/makesrna/intern/rna_space.c
@@ -531,31 +531,15 @@ static void rna_SpaceView3D_camera_update(Main *bmain, Scene *scene, PointerRNA
}
}
-static void rna_SpaceView3D_lock_camera_and_layers_set(PointerRNA *ptr, bool value)
+static void rna_SpaceView3D_use_local_camera_set(PointerRNA *ptr, bool value)
{
View3D *v3d = (View3D *)(ptr->data);
bScreen *sc = (bScreen *)ptr->id.data;
- v3d->scenelock = value;
+ v3d->scenelock = !value;
- if (value) {
+ if (!value) {
Scene *scene = ED_screen_scene_find(sc, G_MAIN->wm.first);
-
- /* TODO: restore local view. */
-#if 0
- int bit;
- v3d->lay = scene->lay;
-
- /* seek for layact */
- bit = 0;
- while (bit < 32) {
- if (v3d->lay & (1u << bit)) {
- v3d->layact = (1u << bit);
- break;
- }
- bit++;
- }
-#endif
v3d->camera = scene->camera;
}
}
@@ -3189,12 +3173,11 @@ static void rna_def_space_view3d(BlenderRNA *brna)
RNA_def_property_ui_text(prop, "Tool Gizmo", "Active tool gizmo");
RNA_def_property_update(prop, NC_SPACE | ND_SPACE_VIEW3D, NULL);
- prop = RNA_def_property(srna, "lock_camera_and_layers", PROP_BOOLEAN, PROP_NONE);
- RNA_def_property_boolean_sdna(prop, NULL, "scenelock", 1);
- RNA_def_property_boolean_funcs(prop, NULL, "rna_SpaceView3D_lock_camera_and_layers_set");
- RNA_def_property_ui_text(prop, "Lock Camera and Layers",
- "Use the scene's active camera and layers in this view, rather than local layers");
- RNA_def_property_ui_icon(prop, ICON_LOCKVIEW_OFF, 1);
+ prop = RNA_def_property(srna, "use_local_camera", PROP_BOOLEAN, PROP_NONE);
+ RNA_def_property_boolean_negative_sdna(prop, NULL, "scenelock", 1);
+ RNA_def_property_boolean_funcs(prop, NULL, "rna_SpaceView3D_use_local_camera_set");
+ RNA_def_property_ui_text(prop, "Use Local Camera",
+ "Use a local camera in this view, rather than scene's active camera camera");
RNA_def_property_update(prop, NC_SPACE | ND_SPACE_VIEW3D, NULL);
prop = RNA_def_property(srna, "region_3d", PROP_POINTER, PROP_NONE);