diff options
author | Nicholas Bishop <nicholasbishop@gmail.com> | 2012-05-11 00:32:21 +0400 |
---|---|---|
committer | Nicholas Bishop <nicholasbishop@gmail.com> | 2012-05-11 00:32:21 +0400 |
commit | 26ce1018cdb082964fda8c81de271de4bdf818db (patch) | |
tree | f0d3b4dad4f1318ef5ccca8d513bf0342b876c00 | |
parent | 3794ad5e14b61edf99b5edb99ff47cb7a258de88 (diff) |
Add an RNA access function to get an enum item name from its value.
New function is RNA_enum_name_from_value.
-rw-r--r-- | source/blender/makesrna/RNA_access.h | 1 | ||||
-rw-r--r-- | source/blender/makesrna/intern/rna_access.c | 12 |
2 files changed, 13 insertions, 0 deletions
diff --git a/source/blender/makesrna/RNA_access.h b/source/blender/makesrna/RNA_access.h index 6560c2eb195..0cc4fa4c221 100644 --- a/source/blender/makesrna/RNA_access.h +++ b/source/blender/makesrna/RNA_access.h @@ -881,6 +881,7 @@ int RNA_enum_is_equal(struct bContext *C, PointerRNA *ptr, const char *name, con int RNA_enum_value_from_id(EnumPropertyItem *item, const char *identifier, int *value); int RNA_enum_id_from_value(EnumPropertyItem *item, int value, const char **identifier); int RNA_enum_icon_from_value(EnumPropertyItem *item, int value, int *icon); +int RNA_enum_name_from_value(EnumPropertyItem *item, int value, const char **name); void RNA_string_get(PointerRNA *ptr, const char *name, char *value); char *RNA_string_get_alloc(PointerRNA *ptr, const char *name, char *fixedbuf, int fixedlen); diff --git a/source/blender/makesrna/intern/rna_access.c b/source/blender/makesrna/intern/rna_access.c index 73e046f0d63..294e812d598 100644 --- a/source/blender/makesrna/intern/rna_access.c +++ b/source/blender/makesrna/intern/rna_access.c @@ -4332,6 +4332,18 @@ int RNA_enum_icon_from_value(EnumPropertyItem *item, int value, int *icon) return 0; } +int RNA_enum_name_from_value(EnumPropertyItem *item, int value, const char **name) +{ + for( ; item->identifier; item++) { + if(item->value==value) { + *name = item->name; + return 1; + } + } + + return 0; +} + void RNA_string_get(PointerRNA *ptr, const char *name, char *value) { PropertyRNA *prop = RNA_struct_find_property(ptr, name); |