[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [46511] trunk/blender/source/blender/ makesrna: Add an RNA access function to get an enum item name from its value.
Nicholas Bishop
nicholasbishop at gmail.com
Thu May 10 22:32:21 CEST 2012
Revision: 46511
http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=46511
Author: nicholasbishop
Date: 2012-05-10 20:32:21 +0000 (Thu, 10 May 2012)
Log Message:
-----------
Add an RNA access function to get an enum item name from its value.
New function is RNA_enum_name_from_value.
Modified Paths:
--------------
trunk/blender/source/blender/makesrna/RNA_access.h
trunk/blender/source/blender/makesrna/intern/rna_access.c
Modified: trunk/blender/source/blender/makesrna/RNA_access.h
===================================================================
--- trunk/blender/source/blender/makesrna/RNA_access.h 2012-05-10 20:32:09 UTC (rev 46510)
+++ trunk/blender/source/blender/makesrna/RNA_access.h 2012-05-10 20:32:21 UTC (rev 46511)
@@ -881,6 +881,7 @@
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);
Modified: trunk/blender/source/blender/makesrna/intern/rna_access.c
===================================================================
--- trunk/blender/source/blender/makesrna/intern/rna_access.c 2012-05-10 20:32:09 UTC (rev 46510)
+++ trunk/blender/source/blender/makesrna/intern/rna_access.c 2012-05-10 20:32:21 UTC (rev 46511)
@@ -4332,6 +4332,18 @@
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);
More information about the Bf-blender-cvs
mailing list