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_nla.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_nla.c')
-rw-r--r-- | source/blender/makesrna/intern/rna_nla.c | 22 |
1 files changed, 11 insertions, 11 deletions
diff --git a/source/blender/makesrna/intern/rna_nla.c b/source/blender/makesrna/intern/rna_nla.c index 6f55fb4e24c..97cab783aed 100644 --- a/source/blender/makesrna/intern/rna_nla.c +++ b/source/blender/makesrna/intern/rna_nla.c @@ -65,8 +65,8 @@ static void rna_NlaStrip_name_set(PointerRNA *ptr, const char *value) BLI_strncpy_utf8(data->name, value, sizeof(data->name)); /* validate if there's enough info to do so */ - if (ptr->id.data) { - AnimData *adt = BKE_animdata_from_id(ptr->id.data); + if (ptr->owner_id) { + AnimData *adt = BKE_animdata_from_id(ptr->owner_id); BKE_nlastrip_validate_name(adt, data); } } @@ -74,7 +74,7 @@ static void rna_NlaStrip_name_set(PointerRNA *ptr, const char *value) static char *rna_NlaStrip_path(PointerRNA *ptr) { NlaStrip *strip = (NlaStrip *)ptr->data; - AnimData *adt = BKE_animdata_from_id(ptr->id.data); + AnimData *adt = BKE_animdata_from_id(ptr->owner_id); /* if we're attached to AnimData, try to resolve path back to AnimData */ if (adt) { @@ -103,7 +103,7 @@ static char *rna_NlaStrip_path(PointerRNA *ptr) static void rna_NlaStrip_update(Main *bmain, Scene *UNUSED(scene), PointerRNA *ptr) { - ID *id = ptr->id.data; + ID *id = ptr->owner_id; ANIM_id_update(bmain, id); } @@ -122,9 +122,9 @@ static void rna_NlaStrip_transform_update(Main *bmain, Scene *scene, PointerRNA BKE_nlameta_flush_transforms(strip); /* set the flag */ - if ((strip->flag & NLASTRIP_FLAG_AUTO_BLENDS) && ptr->id.data) { + if ((strip->flag & NLASTRIP_FLAG_AUTO_BLENDS) && ptr->owner_id) { /* validate state to ensure that auto-blend gets applied immediately */ - IdAdtTemplate *iat = (IdAdtTemplate *)ptr->id.data; + IdAdtTemplate *iat = (IdAdtTemplate *)ptr->owner_id; if (iat->adt) { BKE_nla_validate_state(iat->adt); @@ -274,8 +274,8 @@ static void rna_NlaStrip_use_auto_blend_set(PointerRNA *ptr, bool value) data->flag |= NLASTRIP_FLAG_AUTO_BLENDS; /* validate state to ensure that auto-blend gets applied immediately */ - if (ptr->id.data) { - IdAdtTemplate *iat = (IdAdtTemplate *)ptr->id.data; + if (ptr->owner_id) { + IdAdtTemplate *iat = (IdAdtTemplate *)ptr->owner_id; if (iat->adt) { BKE_nla_validate_state(iat->adt); @@ -298,8 +298,8 @@ static int rna_NlaStrip_action_editable(PointerRNA *ptr, const char **UNUSED(r_i NlaStrip *strip = (NlaStrip *)ptr->data; /* strip actions shouldn't be editable if NLA tweakmode is on */ - if (ptr->id.data) { - AnimData *adt = BKE_animdata_from_id(ptr->id.data); + if (ptr->owner_id) { + AnimData *adt = BKE_animdata_from_id(ptr->owner_id); if (adt) { /* active action is only editable when it is not a tweaking strip */ @@ -475,7 +475,7 @@ static void rna_NlaStrip_remove( static void rna_NlaTrack_solo_set(PointerRNA *ptr, bool value) { NlaTrack *data = (NlaTrack *)ptr->data; - AnimData *adt = BKE_animdata_from_id(ptr->id.data); + AnimData *adt = BKE_animdata_from_id(ptr->owner_id); NlaTrack *nt; if (data == NULL) { |