diff options
author | Jacques Lucke <mail@jlucke.com> | 2019-08-23 10:52:12 +0300 |
---|---|---|
committer | Jacques Lucke <mail@jlucke.com> | 2019-08-23 10:52:12 +0300 |
commit | a1aa4a259713f26c32a5fac4adbe0751e0479f5b (patch) | |
tree | 0737940d32513ad8e2458760c81ad7c1c61e1ce6 /source/blender/makesrna/intern/rna_material.c | |
parent | 232049dd9408e15d2082181e60ddd775b375ff19 (diff) |
RNA: Cleanup PointerRNA struct
The old layout of `PointerRNA` was confusing for historic reasons:
```
typedef struct PointerRNA {
struct {
void *data;
} id;
struct StructRNA *type;
void *data;
} PointerRNA;
```
This patch updates it to:
```
typedef struct PointerRNA {
struct ID *owner_id;
struct StructRNA *type;
void *data;
} PointerRNA;
```
Throughout the code base `id.data` was replaced with `owner_id`.
Furthermore, many explicit pointer type casts were added which
were implicit before. Some type casts to `ID *` were removed.
Reviewers: brecht, campbellbarton
Differential Revision: https://developer.blender.org/D5558
Diffstat (limited to 'source/blender/makesrna/intern/rna_material.c')
-rw-r--r-- | source/blender/makesrna/intern/rna_material.c | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/source/blender/makesrna/intern/rna_material.c b/source/blender/makesrna/intern/rna_material.c index 845ea9a4aee..c108ce90490 100644 --- a/source/blender/makesrna/intern/rna_material.c +++ b/source/blender/makesrna/intern/rna_material.c @@ -89,7 +89,7 @@ const EnumPropertyItem rna_enum_ramp_blend_items[] = { static void rna_Material_update(Main *UNUSED(bmain), Scene *UNUSED(scene), PointerRNA *ptr) { - Material *ma = ptr->id.data; + Material *ma = (Material *)ptr->owner_id; DEG_id_tag_update(&ma->id, ID_RECALC_SHADING); WM_main_add_notifier(NC_MATERIAL | ND_SHADING, ma); @@ -99,7 +99,7 @@ static void rna_Material_update_previews(Main *UNUSED(bmain), Scene *UNUSED(scene), PointerRNA *ptr) { - Material *ma = ptr->id.data; + Material *ma = (Material *)ptr->owner_id; if (ma->nodetree) { BKE_node_preview_clear_tree(ma->nodetree); @@ -110,7 +110,7 @@ static void rna_Material_update_previews(Main *UNUSED(bmain), static void rna_MaterialGpencil_update(Main *bmain, Scene *scene, PointerRNA *ptr) { - Material *ma = ptr->id.data; + Material *ma = (Material *)ptr->owner_id; rna_Material_update(bmain, scene, ptr); WM_main_add_notifier(NC_GPENCIL | ND_DATA, ma); @@ -118,7 +118,7 @@ static void rna_MaterialGpencil_update(Main *bmain, Scene *scene, PointerRNA *pt static void rna_MaterialGpencil_nopreview_update(Main *bmain, Scene *scene, PointerRNA *ptr) { - Material *ma = ptr->id.data; + Material *ma = (Material *)ptr->owner_id; rna_Material_update(bmain, scene, ptr); WM_main_add_notifier(NC_GPENCIL | ND_DATA, ma); @@ -126,7 +126,7 @@ static void rna_MaterialGpencil_nopreview_update(Main *bmain, Scene *scene, Poin static void rna_Material_draw_update(Main *UNUSED(bmain), Scene *UNUSED(scene), PointerRNA *ptr) { - Material *ma = ptr->id.data; + Material *ma = (Material *)ptr->owner_id; DEG_id_tag_update(&ma->id, ID_RECALC_SHADING); WM_main_add_notifier(NC_MATERIAL | ND_SHADING_DRAW, ma); @@ -144,7 +144,7 @@ static void rna_Material_active_paint_texture_index_update(Main *bmain, PointerRNA *ptr) { bScreen *sc; - Material *ma = ptr->id.data; + Material *ma = (Material *)ptr->owner_id; if (ma->use_nodes && ma->nodetree) { struct bNode *node = BKE_texpaint_slot_material_find_node(ma, ma->paint_active_slot); @@ -303,7 +303,7 @@ static bool rna_is_grease_pencil_get(PointerRNA *ptr) static void rna_gpcolordata_uv_update(Main *bmain, Scene *scene, PointerRNA *ptr) { /* update all uv strokes of this color */ - Material *ma = ptr->id.data; + Material *ma = (Material *)ptr->owner_id; ED_gpencil_update_color_uv(bmain, ma); rna_MaterialGpencil_update(bmain, scene, ptr); |