[Bf-blender-cvs] [d072764809c] master: Add RNA path functions to AssetMetaData and AssetTag structures.

Bastien Montagne noreply at git.blender.org
Fri Jan 20 11:56:47 CET 2023


Commit: d072764809cb29d357073cbd9d187436fe328ec1
Author: Bastien Montagne
Date:   Fri Jan 20 11:55:56 2023 +0100
Branches: master
https://developer.blender.org/rBd072764809cb29d357073cbd9d187436fe328ec1

Add RNA path functions to AssetMetaData and AssetTag structures.

===================================================================

M	source/blender/makesrna/intern/rna_asset.c

===================================================================

diff --git a/source/blender/makesrna/intern/rna_asset.c b/source/blender/makesrna/intern/rna_asset.c
index 76751f1d9f1..b95800fe934 100644
--- a/source/blender/makesrna/intern/rna_asset.c
+++ b/source/blender/makesrna/intern/rna_asset.c
@@ -31,6 +31,11 @@
 
 #  include "RNA_access.h"
 
+static char *rna_AssetMetaData_path(const PointerRNA *UNUSED(ptr))
+{
+  return BLI_strdup("asset_data");
+}
+
 static bool rna_AssetMetaData_editable_from_owner_id(const ID *owner_id,
                                                      const AssetMetaData *asset_data,
                                                      const char **r_info)
@@ -56,6 +61,12 @@ int rna_AssetMetaData_editable(PointerRNA *ptr, const char **r_info)
              0;
 }
 
+static char *rna_AssetTag_path(const PointerRNA *ptr)
+{
+  const AssetTag *asset_tag = ptr->data;
+  return BLI_sprintfN("asset_data.tags['%s']", asset_tag->name);
+}
+
 static int rna_AssetTag_editable(PointerRNA *ptr, const char **r_info)
 {
   AssetTag *asset_tag = ptr->data;
@@ -310,6 +321,7 @@ static void rna_def_asset_tag(BlenderRNA *brna)
   PropertyRNA *prop;
 
   srna = RNA_def_struct(brna, "AssetTag", NULL);
+  RNA_def_struct_path_func(srna, "rna_AssetTag_path");
   RNA_def_struct_ui_text(srna, "Asset Tag", "User defined tag (name token)");
 
   prop = RNA_def_property(srna, "name", PROP_STRING, PROP_NONE);
@@ -361,6 +373,7 @@ static void rna_def_asset_data(BlenderRNA *brna)
   PropertyRNA *prop;
 
   srna = RNA_def_struct(brna, "AssetMetaData", NULL);
+  RNA_def_struct_path_func(srna, "rna_AssetMetaData_path");
   RNA_def_struct_ui_text(srna, "Asset Data", "Additional data stored for an asset data-block");
   //  RNA_def_struct_ui_icon(srna, ICON_ASSET); /* TODO: Icon doesn't exist! */
   /* The struct has custom properties, but no pointer properties to other IDs! */



More information about the Bf-blender-cvs mailing list