diff options
Diffstat (limited to 'source/blender/makesrna/intern/rna_asset.c')
-rw-r--r-- | source/blender/makesrna/intern/rna_asset.c | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/source/blender/makesrna/intern/rna_asset.c b/source/blender/makesrna/intern/rna_asset.c index 979d0882dd5..5d83da170b5 100644 --- a/source/blender/makesrna/intern/rna_asset.c +++ b/source/blender/makesrna/intern/rna_asset.c @@ -139,6 +139,40 @@ static IDProperty **rna_AssetMetaData_idprops(PointerRNA *ptr) return &asset_data->properties; } +static void rna_AssetMetaData_author_get(PointerRNA *ptr, char *value) +{ + AssetMetaData *asset_data = ptr->data; + + if (asset_data->author) { + strcpy(value, asset_data->author); + } + else { + value[0] = '\0'; + } +} + +static int rna_AssetMetaData_author_length(PointerRNA *ptr) +{ + AssetMetaData *asset_data = ptr->data; + return asset_data->author ? strlen(asset_data->author) : 0; +} + +static void rna_AssetMetaData_author_set(PointerRNA *ptr, const char *value) +{ + AssetMetaData *asset_data = ptr->data; + + if (asset_data->author) { + MEM_freeN(asset_data->author); + } + + if (value[0]) { + asset_data->author = BLI_strdup(value); + } + else { + asset_data->author = NULL; + } +} + static void rna_AssetMetaData_description_get(PointerRNA *ptr, char *value) { AssetMetaData *asset_data = ptr->data; @@ -347,6 +381,14 @@ static void rna_def_asset_data(BlenderRNA *brna) RNA_def_struct_idprops_func(srna, "rna_AssetMetaData_idprops"); RNA_def_struct_flag(srna, STRUCT_NO_DATABLOCK_IDPROPERTIES); /* Mandatory! */ + prop = RNA_def_property(srna, "author", PROP_STRING, PROP_NONE); + RNA_def_property_editable_func(prop, "rna_AssetMetaData_editable"); + RNA_def_property_string_funcs(prop, + "rna_AssetMetaData_author_get", + "rna_AssetMetaData_author_length", + "rna_AssetMetaData_author_set"); + RNA_def_property_ui_text(prop, "Author", "Name of the creator of the asset"); + prop = RNA_def_property(srna, "description", PROP_STRING, PROP_NONE); RNA_def_property_editable_func(prop, "rna_AssetMetaData_editable"); RNA_def_property_string_funcs(prop, |