[Bf-blender-cvs] [25f1e97] render-layers: Fixup for new layers
Dalai Felinto
noreply at git.blender.org
Sat Dec 3 02:44:15 CET 2016
Commit: 25f1e974087d3e140ebb5c981b93eebdb71cb72f
Author: Dalai Felinto
Date: Fri Dec 2 18:31:35 2016 +0100
Branches: render-layers
https://developer.blender.org/rB25f1e974087d3e140ebb5c981b93eebdb71cb72f
Fixup for new layers
===================================================================
M source/blender/blenkernel/intern/layer.c
M source/blender/makesrna/intern/rna_scene.c
===================================================================
diff --git a/source/blender/blenkernel/intern/layer.c b/source/blender/blenkernel/intern/layer.c
index eb84eb3..19967c7 100644
--- a/source/blender/blenkernel/intern/layer.c
+++ b/source/blender/blenkernel/intern/layer.c
@@ -25,7 +25,10 @@
*/
#include "BLI_listbase.h"
+#include "BLI_path_util.h"
#include "BLI_string.h"
+#include "BLI_string_utf8.h"
+#include "BLT_translation.h"
#include "BKE_collection.h"
#include "BKE_layer.h"
@@ -52,10 +55,15 @@ LayerCollection *layer_collection_add(SceneLayer *sl, ListBase *lb, SceneCollect
SceneLayer *BKE_scene_layer_add(Scene *scene, const char *name)
{
SceneLayer *sl = MEM_callocN(sizeof(SceneLayer), "Scene Layer");
- BLI_strncpy(sl->name, name, sizeof(sl->name));
+ BLI_addtail(&scene->render_layers, sl);
+
+ /* unique name */
+ BLI_strncpy_utf8(sl->name, name, sizeof(sl->name));
+ BLI_uniquename(&scene->render_layers, sl, DATA_("SceneLayer"), '.', offsetof(SceneLayer, name), sizeof(sl->name));
SceneCollection *sc = BKE_collection_master(scene);
layer_collection_add(sl, &sl->collections, sc);
+
return sl;
}
diff --git a/source/blender/makesrna/intern/rna_scene.c b/source/blender/makesrna/intern/rna_scene.c
index a945239..a011c8f 100644
--- a/source/blender/makesrna/intern/rna_scene.c
+++ b/source/blender/makesrna/intern/rna_scene.c
@@ -2129,10 +2129,7 @@ static void rna_SceneCollection_name_set(PointerRNA *ptr, const char *value)
SceneCollection *sc = (SceneCollection *)ptr->data;
SceneCollection *sc_master = BKE_collection_master(scene);
- char oldname[sizeof(sc->name)];
- BLI_strncpy(oldname, sc->name, sizeof(sc->name));
BLI_strncpy_utf8(sc->name, value, sizeof(sc->name));
-
BLI_uniquename(&sc_master->collections, sc, DATA_("SceneCollection"), '.', offsetof(SceneCollection, name), sizeof(sc->name));
}
@@ -2140,10 +2137,8 @@ static void rna_SceneCollection_filter_set(PointerRNA *ptr, const char *value)
{
Scene *scene = (Scene *)ptr->id.data;
SceneCollection *sc = (SceneCollection *)ptr->data;
- char oldfilter[sizeof(sc->filter)];
-
- BLI_strncpy(oldfilter, sc->filter, sizeof(sc->filter));
BLI_strncpy_utf8(sc->filter, value, sizeof(sc->filter));
+
TODO_LAYER_SYNC;
(void)scene;
}
@@ -7537,7 +7532,7 @@ void RNA_def_scene(BlenderRNA *brna)
prop = RNA_def_property(srna, "render_layers", PROP_COLLECTION, PROP_NONE);
RNA_def_property_collection_sdna(prop, NULL, "render_layers", NULL);
RNA_def_property_struct_type(prop, "SceneLayer");
- RNA_def_property_ui_text(prop, "Scene Layers", "");
+ RNA_def_property_ui_text(prop, "Render Layers", "");
rna_def_scene_layers(brna, prop);
prop = RNA_def_property(srna, "master_collection", PROP_POINTER, PROP_NONE);
More information about the Bf-blender-cvs
mailing list