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:
Diffstat (limited to 'source/blender/makesrna/intern/rna_access.c')
-rw-r--r--source/blender/makesrna/intern/rna_access.c96
1 files changed, 57 insertions, 39 deletions
diff --git a/source/blender/makesrna/intern/rna_access.c b/source/blender/makesrna/intern/rna_access.c
index b7709416a75..8047b2df226 100644
--- a/source/blender/makesrna/intern/rna_access.c
+++ b/source/blender/makesrna/intern/rna_access.c
@@ -470,7 +470,7 @@ static const char *rna_ensure_property_description(PropertyRNA *prop)
description= ((IDProperty*)prop)->name; /* XXX - not correct */
}
-#ifdef INTERNATIONAL
+#ifdef WITH_INTERNATIONAL
if((U.transopts&USER_DOTRANSLATE) && (U.transopts&USER_TR_TOOLTIPS))
description= BLF_gettext(description);
#endif
@@ -487,7 +487,7 @@ static const char *rna_ensure_property_name(PropertyRNA *prop)
else
name= ((IDProperty*)prop)->name;
-#ifdef INTERNATIONAL
+#ifdef WITH_INTERNATIONAL
if((U.transopts&USER_DOTRANSLATE) && (U.transopts&USER_TR_IFACE))
name= BLF_gettext(name);
#endif
@@ -1095,6 +1095,7 @@ StructRNA *RNA_property_pointer_type(PointerRNA *ptr, PropertyRNA *prop)
if(cprop->item_type)
return cprop->item_type;
}
+ /* ignore other types, RNA_struct_find_nested calls with unchecked props */
return &RNA_UnknownType;
}
@@ -1111,7 +1112,7 @@ int RNA_property_pointer_poll(PointerRNA *ptr, PropertyRNA *prop, PointerRNA *va
return 1;
}
- printf("RNA_property_pointer_poll %s: is not a pointer property.\n", prop->identifier);
+ printf("%s %s: is not a pointer property.\n", __func__, prop->identifier);
return 0;
}
@@ -1160,7 +1161,7 @@ void RNA_property_enum_items_gettexted(bContext *C, PointerRNA *ptr, PropertyRNA
{
RNA_property_enum_items(C, ptr, prop, item, totitem, free);
-#ifdef INTERNATIONAL
+#ifdef WITH_INTERNATIONAL
if((U.transopts&USER_DOTRANSLATE) && (U.transopts&USER_TR_IFACE)) {
int i;
EnumPropertyItem *nitem;
@@ -2511,7 +2512,7 @@ void RNA_property_pointer_add(PointerRNA *ptr, PropertyRNA *prop)
IDP_AddToGroup(group, IDP_New(IDP_GROUP, val, (char*)prop->identifier));
}
else
- printf("RNA_property_pointer_add %s.%s: only supported for id properties.\n", ptr->type->identifier, prop->identifier);
+ printf("%s %s.%s: only supported for id properties.\n", __func__, ptr->type->identifier, prop->identifier);
}
void RNA_property_pointer_remove(PointerRNA *ptr, PropertyRNA *prop)
@@ -2530,7 +2531,7 @@ void RNA_property_pointer_remove(PointerRNA *ptr, PropertyRNA *prop)
}
}
else
- printf("RNA_property_pointer_remove %s.%s: only supported for id properties.\n", ptr->type->identifier, prop->identifier);
+ printf("%s %s.%s: only supported for id properties.\n", __func__, ptr->type->identifier, prop->identifier);
}
static void rna_property_collection_get_idp(CollectionPropertyIterator *iter)
@@ -2663,7 +2664,7 @@ void RNA_property_collection_add(PointerRNA *ptr, PropertyRNA *prop, PointerRNA
}
}
/*else
- printf("RNA_property_collection_add %s.%s: not implemented for this property.\n", ptr->type->identifier, prop->identifier);*/
+ printf("%s %s.%s: not implemented for this property.\n", __func__, ptr->type->identifier, prop->identifier);*/
#endif
if(r_ptr) {
@@ -2722,7 +2723,7 @@ int RNA_property_collection_remove(PointerRNA *ptr, PropertyRNA *prop, int key)
return 0;
}
/*else
- printf("RNA_property_collection_remove %s.%s: only supported for id properties.\n", ptr->type->identifier, prop->identifier);*/
+ printf("%s %s.%s: only supported for id properties.\n", __func__, ptr->type->identifier, prop->identifier);*/
#endif
return 0;
}
@@ -2864,6 +2865,21 @@ int RNA_property_collection_lookup_string(PointerRNA *ptr, PropertyRNA *prop, co
}
}
+/* zero return is an assignment error */
+int RNA_property_collection_assign_int(PointerRNA *ptr, PropertyRNA *prop, const int key, const PointerRNA *assign_ptr)
+{
+ CollectionPropertyRNA *cprop= (CollectionPropertyRNA*)rna_ensure_property(prop);
+
+ BLI_assert(RNA_property_type(prop) == PROP_COLLECTION);
+
+ if(cprop->assignint) {
+ /* we have a callback defined, use it */
+ return cprop->assignint(ptr, key, assign_ptr);
+ }
+
+ return 0;
+}
+
int RNA_property_collection_type_get(PointerRNA *ptr, PropertyRNA *prop, PointerRNA *r_ptr)
{
BLI_assert(RNA_property_type(prop) == PROP_COLLECTION);
@@ -3999,7 +4015,7 @@ int RNA_boolean_get(PointerRNA *ptr, const char *name)
return RNA_property_boolean_get(ptr, prop);
}
else {
- printf("RNA_boolean_get: %s.%s not found.\n", ptr->type->identifier, name);
+ printf("%s: %s.%s not found.\n", __func__, ptr->type->identifier, name);
return 0;
}
}
@@ -4011,7 +4027,7 @@ void RNA_boolean_set(PointerRNA *ptr, const char *name, int value)
if(prop)
RNA_property_boolean_set(ptr, prop, value);
else
- printf("RNA_boolean_set: %s.%s not found.\n", ptr->type->identifier, name);
+ printf("%s: %s.%s not found.\n", __func__, ptr->type->identifier, name);
}
void RNA_boolean_get_array(PointerRNA *ptr, const char *name, int *values)
@@ -4021,7 +4037,7 @@ void RNA_boolean_get_array(PointerRNA *ptr, const char *name, int *values)
if(prop)
RNA_property_boolean_get_array(ptr, prop, values);
else
- printf("RNA_boolean_get_array: %s.%s not found.\n", ptr->type->identifier, name);
+ printf("%s: %s.%s not found.\n", __func__, ptr->type->identifier, name);
}
void RNA_boolean_set_array(PointerRNA *ptr, const char *name, const int *values)
@@ -4031,7 +4047,7 @@ void RNA_boolean_set_array(PointerRNA *ptr, const char *name, const int *values)
if(prop)
RNA_property_boolean_set_array(ptr, prop, values);
else
- printf("RNA_boolean_set_array: %s.%s not found.\n", ptr->type->identifier, name);
+ printf("%s: %s.%s not found.\n", __func__, ptr->type->identifier, name);
}
int RNA_int_get(PointerRNA *ptr, const char *name)
@@ -4042,7 +4058,7 @@ int RNA_int_get(PointerRNA *ptr, const char *name)
return RNA_property_int_get(ptr, prop);
}
else {
- printf("RNA_int_get: %s.%s not found.\n", ptr->type->identifier, name);
+ printf("%s: %s.%s not found.\n", __func__, ptr->type->identifier, name);
return 0;
}
}
@@ -4054,7 +4070,7 @@ void RNA_int_set(PointerRNA *ptr, const char *name, int value)
if(prop)
RNA_property_int_set(ptr, prop, value);
else
- printf("RNA_int_set: %s.%s not found.\n", ptr->type->identifier, name);
+ printf("%s: %s.%s not found.\n", __func__, ptr->type->identifier, name);
}
void RNA_int_get_array(PointerRNA *ptr, const char *name, int *values)
@@ -4064,7 +4080,7 @@ void RNA_int_get_array(PointerRNA *ptr, const char *name, int *values)
if(prop)
RNA_property_int_get_array(ptr, prop, values);
else
- printf("RNA_int_get_array: %s.%s not found.\n", ptr->type->identifier, name);
+ printf("%s: %s.%s not found.\n", __func__, ptr->type->identifier, name);
}
void RNA_int_set_array(PointerRNA *ptr, const char *name, const int *values)
@@ -4074,7 +4090,7 @@ void RNA_int_set_array(PointerRNA *ptr, const char *name, const int *values)
if(prop)
RNA_property_int_set_array(ptr, prop, values);
else
- printf("RNA_int_set_array: %s.%s not found.\n", ptr->type->identifier, name);
+ printf("%s: %s.%s not found.\n", __func__, ptr->type->identifier, name);
}
float RNA_float_get(PointerRNA *ptr, const char *name)
@@ -4085,7 +4101,7 @@ float RNA_float_get(PointerRNA *ptr, const char *name)
return RNA_property_float_get(ptr, prop);
}
else {
- printf("RNA_float_get: %s.%s not found.\n", ptr->type->identifier, name);
+ printf("%s: %s.%s not found.\n", __func__, ptr->type->identifier, name);
return 0;
}
}
@@ -4097,7 +4113,7 @@ void RNA_float_set(PointerRNA *ptr, const char *name, float value)
if(prop)
RNA_property_float_set(ptr, prop, value);
else
- printf("RNA_float_set: %s.%s not found.\n", ptr->type->identifier, name);
+ printf("%s: %s.%s not found.\n", __func__, ptr->type->identifier, name);
}
void RNA_float_get_array(PointerRNA *ptr, const char *name, float *values)
@@ -4107,7 +4123,7 @@ void RNA_float_get_array(PointerRNA *ptr, const char *name, float *values)
if(prop)
RNA_property_float_get_array(ptr, prop, values);
else
- printf("RNA_float_get_array: %s.%s not found.\n", ptr->type->identifier, name);
+ printf("%s: %s.%s not found.\n", __func__, ptr->type->identifier, name);
}
void RNA_float_set_array(PointerRNA *ptr, const char *name, const float *values)
@@ -4117,7 +4133,7 @@ void RNA_float_set_array(PointerRNA *ptr, const char *name, const float *values)
if(prop)
RNA_property_float_set_array(ptr, prop, values);
else
- printf("RNA_float_set_array: %s.%s not found.\n", ptr->type->identifier, name);
+ printf("%s: %s.%s not found.\n", __func__, ptr->type->identifier, name);
}
int RNA_enum_get(PointerRNA *ptr, const char *name)
@@ -4128,7 +4144,7 @@ int RNA_enum_get(PointerRNA *ptr, const char *name)
return RNA_property_enum_get(ptr, prop);
}
else {
- printf("RNA_enum_get: %s.%s not found.\n", ptr->type->identifier, name);
+ printf("%s: %s.%s not found.\n", __func__, ptr->type->identifier, name);
return 0;
}
}
@@ -4140,7 +4156,7 @@ void RNA_enum_set(PointerRNA *ptr, const char *name, int value)
if(prop)
RNA_property_enum_set(ptr, prop, value);
else
- printf("RNA_enum_set: %s.%s not found.\n", ptr->type->identifier, name);
+ printf("%s: %s.%s not found.\n", __func__, ptr->type->identifier, name);
}
void RNA_enum_set_identifier(PointerRNA *ptr, const char *name, const char *id)
@@ -4152,9 +4168,11 @@ void RNA_enum_set_identifier(PointerRNA *ptr, const char *name, const char *id)
if(RNA_property_enum_value(NULL, ptr, prop, id, &value))
RNA_property_enum_set(ptr, prop, value);
else
- printf("RNA_enum_set_identifier: %s.%s has no enum id '%s'.\n", ptr->type->identifier, name, id);
- } else
- printf("RNA_enum_set_identifier: %s.%s not found.\n", ptr->type->identifier, name);
+ printf("%s: %s.%s has no enum id '%s'.\n", __func__, ptr->type->identifier, name, id);
+ }
+ else {
+ printf("%s: %s.%s not found.\n", __func__, ptr->type->identifier, name);
+ }
}
int RNA_enum_is_equal(bContext *C, PointerRNA *ptr, const char *name, const char *enumname)
@@ -4173,11 +4191,11 @@ int RNA_enum_is_equal(bContext *C, PointerRNA *ptr, const char *name, const char
if(free)
MEM_freeN(item);
- printf("RNA_enum_is_equal: %s.%s item %s not found.\n", ptr->type->identifier, name, enumname);
+ printf("%s: %s.%s item %s not found.\n", __func__, ptr->type->identifier, name, enumname);
return 0;
}
else {
- printf("RNA_enum_is_equal: %s.%s not found.\n", ptr->type->identifier, name);
+ printf("%s: %s.%s not found.\n", __func__, ptr->type->identifier, name);
return 0;
}
}
@@ -4226,7 +4244,7 @@ void RNA_string_get(PointerRNA *ptr, const char *name, char *value)
RNA_property_string_get(ptr, prop, value);
}
else {
- printf("RNA_string_get: %s.%s not found.\n", ptr->type->identifier, name);
+ printf("%s: %s.%s not found.\n", __func__, ptr->type->identifier, name);
value[0]= '\0';
}
}
@@ -4239,7 +4257,7 @@ char *RNA_string_get_alloc(PointerRNA *ptr, const char *name, char *fixedbuf, in
return RNA_property_string_get_alloc(ptr, prop, fixedbuf, fixedlen);
}
else {
- printf("RNA_string_get_alloc: %s.%s not found.\n", ptr->type->identifier, name);
+ printf("%s: %s.%s not found.\n", __func__, ptr->type->identifier, name);
return NULL;
}
}
@@ -4252,7 +4270,7 @@ int RNA_string_length(PointerRNA *ptr, const char *name)
return RNA_property_string_length(ptr, prop);
}
else {
- printf("RNA_string_length: %s.%s not found.\n", ptr->type->identifier, name);
+ printf("%s: %s.%s not found.\n", __func__, ptr->type->identifier, name);
return 0;
}
}
@@ -4264,7 +4282,7 @@ void RNA_string_set(PointerRNA *ptr, const char *name, const char *value)
if(prop)
RNA_property_string_set(ptr, prop, value);
else
- printf("RNA_string_set: %s.%s not found.\n", ptr->type->identifier, name);
+ printf("%s: %s.%s not found.\n", __func__, ptr->type->identifier, name);
}
PointerRNA RNA_pointer_get(PointerRNA *ptr, const char *name)
@@ -4275,7 +4293,7 @@ PointerRNA RNA_pointer_get(PointerRNA *ptr, const char *name)
return RNA_property_pointer_get(ptr, prop);
}
else {
- printf("RNA_pointer_get: %s.%s not found.\n", ptr->type->identifier, name);
+ printf("%s: %s.%s not found.\n", __func__, ptr->type->identifier, name);
return PointerRNA_NULL;
}
@@ -4289,7 +4307,7 @@ void RNA_pointer_set(PointerRNA *ptr, const char *name, PointerRNA ptr_value)
RNA_property_pointer_set(ptr, prop, ptr_value);
}
else {
- printf("RNA_pointer_set: %s.%s not found.\n", ptr->type->identifier, name);
+ printf("%s: %s.%s not found.\n", __func__, ptr->type->identifier, name);
}
}
@@ -4300,7 +4318,7 @@ void RNA_pointer_add(PointerRNA *ptr, const char *name)
if(prop)
RNA_property_pointer_add(ptr, prop);
else
- printf("RNA_pointer_set: %s.%s not found.\n", ptr->type->identifier, name);
+ printf("%s: %s.%s not found.\n", __func__, ptr->type->identifier, name);
}
void RNA_collection_begin(PointerRNA *ptr, const char *name, CollectionPropertyIterator *iter)
@@ -4310,7 +4328,7 @@ void RNA_collection_begin(PointerRNA *ptr, const char *name, CollectionPropertyI
if(prop)
RNA_property_collection_begin(ptr, prop, iter);
else
- printf("RNA_collection_begin: %s.%s not found.\n", ptr->type->identifier, name);
+ printf("%s: %s.%s not found.\n", __func__, ptr->type->identifier, name);
}
void RNA_collection_add(PointerRNA *ptr, const char *name, PointerRNA *r_value)
@@ -4320,7 +4338,7 @@ void RNA_collection_add(PointerRNA *ptr, const char *name, PointerRNA *r_value)
if(prop)
RNA_property_collection_add(ptr, prop, r_value);
else
- printf("RNA_collection_add: %s.%s not found.\n", ptr->type->identifier, name);
+ printf("%s: %s.%s not found.\n", __func__, ptr->type->identifier, name);
}
void RNA_collection_clear(PointerRNA *ptr, const char *name)
@@ -4330,7 +4348,7 @@ void RNA_collection_clear(PointerRNA *ptr, const char *name)
if(prop)
RNA_property_collection_clear(ptr, prop);
else
- printf("RNA_collection_clear: %s.%s not found.\n", ptr->type->identifier, name);
+ printf("%s: %s.%s not found.\n", __func__, ptr->type->identifier, name);
}
int RNA_collection_length(PointerRNA *ptr, const char *name)
@@ -4341,7 +4359,7 @@ int RNA_collection_length(PointerRNA *ptr, const char *name)
return RNA_property_collection_length(ptr, prop);
}
else {
- printf("RNA_collection_length: %s.%s not found.\n", ptr->type->identifier, name);
+ printf("%s: %s.%s not found.\n", __func__, ptr->type->identifier, name);
return 0;
}
}
@@ -4358,7 +4376,7 @@ int RNA_property_is_set(PointerRNA *ptr, const char *name)
}
else {
/* python raises an error */
- /* printf("RNA_property_is_set: %s.%s not found.\n", ptr->type->identifier, name); */
+ /* printf("%s: %s.%s not found.\n", __func__, ptr->type->identifier, name); */
return 0;
}
}