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
path: root/source
diff options
context:
space:
mode:
authorBastien Montagne <montagne29@wanadoo.fr>2019-01-25 19:37:19 +0300
committerBastien Montagne <montagne29@wanadoo.fr>2019-01-25 19:46:09 +0300
commita42441d1451e9b89120dff0039aa09f122369ebe (patch)
tree58a9ad545d77d76f9532928a580864385d013aeb /source
parent2a7b74c23711a15c4e1946c699161d420a4bee7b (diff)
ShapeKey: add utils to say whether given ID type supports shapekeys.
Those kind of checks are handy to have for generic processing...
Diffstat (limited to 'source')
-rw-r--r--source/blender/blenkernel/BKE_key.h2
-rw-r--r--source/blender/blenkernel/intern/key.c12
2 files changed, 14 insertions, 0 deletions
diff --git a/source/blender/blenkernel/BKE_key.h b/source/blender/blenkernel/BKE_key.h
index 73a6f5047b2..a175ea93240 100644
--- a/source/blender/blenkernel/BKE_key.h
+++ b/source/blender/blenkernel/BKE_key.h
@@ -66,6 +66,8 @@ float *BKE_key_evaluate_object_ex(
float *BKE_key_evaluate_object(
struct Object *ob, int *r_totelem);
+bool BKE_key_idtype_support(const short id_type);
+
struct Key **BKE_key_from_id_p(struct ID *id);
struct Key *BKE_key_from_id(struct ID *id);
struct Key **BKE_key_from_object_p(struct Object *ob);
diff --git a/source/blender/blenkernel/intern/key.c b/source/blender/blenkernel/intern/key.c
index 85903e1dfe6..599d0989250 100644
--- a/source/blender/blenkernel/intern/key.c
+++ b/source/blender/blenkernel/intern/key.c
@@ -1374,6 +1374,18 @@ float *BKE_key_evaluate_object(Object *ob, int *r_totelem)
return BKE_key_evaluate_object_ex(ob, r_totelem, NULL, 0);
}
+bool BKE_key_idtype_support(const short id_type)
+{
+ switch (id_type) {
+ case ID_ME:
+ case ID_CU:
+ case ID_LT:
+ return true;
+ default:
+ return false;
+ }
+}
+
Key **BKE_key_from_id_p(ID *id)
{
switch (GS(id->name)) {