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:
authorCampbell Barton <ideasman42@gmail.com>2021-03-23 05:57:13 +0300
committerCampbell Barton <ideasman42@gmail.com>2021-03-23 05:58:09 +0300
commit38b7563a4fbb0f06775e980b7439c0354dc78641 (patch)
treea7c8455b238c599106816d657e81638e51fd00cf /source/blender/blenkernel/intern/gpencil.c
parenta7239c2bad8fa9cd3896d6c845d2ddc4d9b27946 (diff)
Cleanup: de-duplicate gpencil logic to ensure materials
- Rename: `BKE_gpencil_object_material_get_index_name`, to `BKE_gpencil_object_material_index_get_by_name` Matching `BKE_gpencil_layer_get_by_name`. - Move logic to ensure named materials into a new function: `BKE_gpencil_object_material_ensure_by_name`
Diffstat (limited to 'source/blender/blenkernel/intern/gpencil.c')
-rw-r--r--source/blender/blenkernel/intern/gpencil.c15
1 files changed, 14 insertions, 1 deletions
diff --git a/source/blender/blenkernel/intern/gpencil.c b/source/blender/blenkernel/intern/gpencil.c
index 3b46672f9cd..f7b895c7ca7 100644
--- a/source/blender/blenkernel/intern/gpencil.c
+++ b/source/blender/blenkernel/intern/gpencil.c
@@ -2446,7 +2446,7 @@ int BKE_gpencil_object_material_index_get(Object *ob, Material *ma)
return -1;
}
-int BKE_gpencil_object_material_get_index_name(Object *ob, char *name)
+int BKE_gpencil_object_material_index_get_by_name(Object *ob, const char *name)
{
short *totcol = BKE_object_material_len_p(ob);
Material *read_ma = NULL;
@@ -2461,6 +2461,19 @@ int BKE_gpencil_object_material_get_index_name(Object *ob, char *name)
return -1;
}
+Material *BKE_gpencil_object_material_ensure_by_name(Main *bmain,
+ Object *ob,
+ const char *name,
+ int *r_index)
+{
+ int index = BKE_gpencil_object_material_index_get_by_name(ob, name);
+ if (index != -1) {
+ *r_index = index;
+ return BKE_object_material_get(ob, index + 1);
+ }
+ return BKE_gpencil_object_material_new(bmain, ob, name, r_index);
+}
+
/**
* Create a default palette.
* \param bmain: Main pointer