static void lib_indirect_test_id(ID *id) { if(id->lib) return; if(GS(id->name)==ID_OB) { Object *ob= (Object *)id; bActionStrip *strip; Mesh *me; int a; // XXX old animation system! -------------------------------------- for (strip=ob->nlastrips.first; strip; strip=strip->next){ LIBTAG(strip->object); LIBTAG(strip->act); LIBTAG(strip->ipo); } // XXX: new animation system needs something like this? for(a=0; a<ob->totcol; a++) { LIBTAG(ob->mat[a]); } LIBTAG(ob->dup_group); LIBTAG(ob->proxy); me= ob->data; LIBTAG(me); } }
static void lib_indirect_test_id(ID *id, Library *lib) { #define LIBTAG(a) if (a && a->id.lib) { a->id.flag &= ~LIB_INDIRECT; a->id.flag |= LIB_EXTERN; } (void)0 if (id->lib) { /* datablocks that were indirectly related are now direct links * without this, appending data that has a link to other data will fail to write */ if (lib && id->lib->parent == lib) { id_lib_extern(id); } return; } if (GS(id->name) == ID_OB) { Object *ob = (Object *)id; Mesh *me; int a; #if 0 /* XXX OLD ANIMSYS, NLASTRIPS ARE NO LONGER USED */ /* XXX old animation system! -------------------------------------- */ { bActionStrip *strip; for (strip = ob->nlastrips.first; strip; strip = strip->next) { LIBTAG(strip->object); LIBTAG(strip->act); LIBTAG(strip->ipo); } } /* XXX: new animation system needs something like this? */ #endif for (a = 0; a < ob->totcol; a++) { LIBTAG(ob->mat[a]); } LIBTAG(ob->dup_group); LIBTAG(ob->proxy); me = ob->data; LIBTAG(me); } #undef LIBTAG }
static void lib_indirect_test_id(ID *id, Library *lib) { if(id->lib) { /* datablocks that were indirectly related are now direct links * without this, appending data that has a link to other data will fail to write */ if(lib && id->lib->parent == lib) { id_lib_extern(id); } return; } if(GS(id->name)==ID_OB) { Object *ob= (Object *)id; bActionStrip *strip; Mesh *me; int a; // XXX old animation system! -------------------------------------- for (strip=ob->nlastrips.first; strip; strip=strip->next){ LIBTAG(strip->object); LIBTAG(strip->act); LIBTAG(strip->ipo); } // XXX: new animation system needs something like this? for(a=0; a<ob->totcol; a++) { LIBTAG(ob->mat[a]); } LIBTAG(ob->dup_group); LIBTAG(ob->proxy); me= ob->data; LIBTAG(me); } }