diff options
author | Dalai Felinto <dfelinto@gmail.com> | 2017-02-08 18:05:24 +0300 |
---|---|---|
committer | Dalai Felinto <dfelinto@gmail.com> | 2017-02-08 18:05:24 +0300 |
commit | 260f97b3d9fc637252b60602e2a90c112b0872b2 (patch) | |
tree | 509fcceaee6d4530e3b30173575c282bac6c6d66 /source/blender | |
parent | a38298f4dd1673a8305abdab687fc4a16f383e5f (diff) |
create BKE_scene_layer_active
Diffstat (limited to 'source/blender')
-rw-r--r-- | source/blender/blenkernel/BKE_layer.h | 1 | ||||
-rw-r--r-- | source/blender/blenkernel/intern/context.c | 5 | ||||
-rw-r--r-- | source/blender/blenkernel/intern/layer.c | 10 | ||||
-rw-r--r-- | source/blender/editors/render/render_shading.c | 2 | ||||
-rw-r--r-- | source/blender/editors/space_view3d/view3d_draw_legacy.c | 2 |
5 files changed, 14 insertions, 6 deletions
diff --git a/source/blender/blenkernel/BKE_layer.h b/source/blender/blenkernel/BKE_layer.h index a1eec8653ad..51fe28a8bea 100644 --- a/source/blender/blenkernel/BKE_layer.h +++ b/source/blender/blenkernel/BKE_layer.h @@ -54,6 +54,7 @@ struct Scene; struct SceneCollection; struct SceneLayer; +struct SceneLayer *BKE_scene_layer_active(struct Scene *scene); struct SceneLayer *BKE_scene_layer_add(struct Scene *scene, const char *name); bool BKE_scene_layer_remove(struct Main *bmain, struct Scene *scene, struct SceneLayer *sl); diff --git a/source/blender/blenkernel/intern/context.c b/source/blender/blenkernel/intern/context.c index 1cbf8cf01c8..a7c53dda8c7 100644 --- a/source/blender/blenkernel/intern/context.c +++ b/source/blender/blenkernel/intern/context.c @@ -914,10 +914,7 @@ SceneLayer *CTX_data_scene_layer(const bContext *C) return sl; } else { - Scene *scene = CTX_data_scene(C); - sl = BLI_findlink(&scene->render_layers, scene->active_layer); - BLI_assert(sl); - return sl; + return BKE_scene_layer_active(CTX_data_scene(C)); } } diff --git a/source/blender/blenkernel/intern/layer.c b/source/blender/blenkernel/intern/layer.c index c36a67c27b3..667b40751ed 100644 --- a/source/blender/blenkernel/intern/layer.c +++ b/source/blender/blenkernel/intern/layer.c @@ -58,6 +58,16 @@ static void object_bases_Iterator_next(Iterator *iter, const int flag); /* RenderLayer */ /** + * Returns the SceneLayer to be used for rendering + */ +SceneLayer *BKE_scene_layer_active(struct Scene *scene) +{ + SceneLayer *sl = BLI_findlink(&scene->render_layers, scene->active_layer); + BLI_assert(sl); + return sl; +} + +/** * Add a new renderlayer * by default, a renderlayer has the master collection */ diff --git a/source/blender/editors/render/render_shading.c b/source/blender/editors/render/render_shading.c index 984aa6e43c2..986e9623fef 100644 --- a/source/blender/editors/render/render_shading.c +++ b/source/blender/editors/render/render_shading.c @@ -653,7 +653,7 @@ void SCENE_OT_render_layer_add(wmOperatorType *ot) static int render_layer_remove_exec(bContext *C, wmOperator *UNUSED(op)) { Scene *scene = CTX_data_scene(C); - SceneLayer *sl = BLI_findlink(&scene->render_layers, scene->active_layer); + SceneLayer *sl = BKE_scene_layer_active(scene); if (!BKE_scene_layer_remove(CTX_data_main(C), scene, sl)) { return OPERATOR_CANCELLED; diff --git a/source/blender/editors/space_view3d/view3d_draw_legacy.c b/source/blender/editors/space_view3d/view3d_draw_legacy.c index 4fb0f6af489..70318d921b5 100644 --- a/source/blender/editors/space_view3d/view3d_draw_legacy.c +++ b/source/blender/editors/space_view3d/view3d_draw_legacy.c @@ -1453,7 +1453,7 @@ void ED_view3d_draw_depth(Scene *scene, ARegion *ar, View3D *v3d, bool alphaover float glalphaclip = U.glalphaclip; int obcenter_dia = U.obcenter_dia; TODO_LAYER_CONTEXT; /* we should pass context, really */ - SceneLayer *sl = BLI_findlink(&scene->render_layers, scene->active_layer); + SceneLayer *sl = BKE_scene_layer_active(scene); /* no need for color when drawing depth buffer */ const short dflag_depth = DRAW_CONSTCOLOR; /* temp set drawtype to solid */ |