[Bf-blender-cvs] [ddb61b1] asset-engine: Merge branch 'master' into asset-engine
Bastien Montagne
noreply at git.blender.org
Tue Sep 20 12:35:20 CEST 2016
Commit: ddb61b1a8a64a1f66daeb7e238c7313f08d1948c
Author: Bastien Montagne
Date: Tue Sep 20 12:28:46 2016 +0200
Branches: asset-engine
https://developer.blender.org/rBddb61b1a8a64a1f66daeb7e238c7313f08d1948c
Merge branch 'master' into asset-engine
Conflicts:
source/blender/blenloader/intern/writefile.c
===================================================================
===================================================================
diff --cc source/blender/blenloader/intern/writefile.c
index 35c0ffd,49e5255..3a453ce
--- a/source/blender/blenloader/intern/writefile.c
+++ b/source/blender/blenloader/intern/writefile.c
@@@ -3956,57 -3945,15 +3956,57 @@@ static void write_libraries(WriteData *
}
}
- while (a--) {
- for (id = lbarray[a]->first; id; id = id->next) {
- if (id->us > 0 && (id->tag & LIB_TAG_EXTERN)) {
- if (!BKE_idcode_is_linkable(GS(id->name))) {
- printf("ERROR: write file: data-block '%s' from lib '%s' is not linkable "
- "but is flagged as directly linked", id->name, main->curlib->filepath);
- BLI_assert(0);
+ if (main->curlib->asset_repository) {
+ writestruct(wd, DATA, AssetRepositoryRef, 1, main->curlib->asset_repository);
+ }
+
+ if (main->curlib->flag & LIBRARY_FLAG_VIRTUAL) {
+ /* Those should be the only datatypes found in a virtual library! */
+ write_images (wd, &main->image);
+ write_vfonts (wd, &main->vfont);
+ write_texts (wd, &main->text);
+ write_sounds (wd, &main->sound);
+
+ BLI_assert(BLI_listbase_is_empty(&main->wm));
+ BLI_assert(BLI_listbase_is_empty(&main->screen));
+ BLI_assert(BLI_listbase_is_empty(&main->movieclip));
+ BLI_assert(BLI_listbase_is_empty(&main->mask));
+ BLI_assert(BLI_listbase_is_empty(&main->scene));
+ BLI_assert(BLI_listbase_is_empty(&main->curve));
+ BLI_assert(BLI_listbase_is_empty(&main->mball));
+ BLI_assert(BLI_listbase_is_empty(&main->camera));
+ BLI_assert(BLI_listbase_is_empty(&main->lamp));
+ BLI_assert(BLI_listbase_is_empty(&main->latt));
+ BLI_assert(BLI_listbase_is_empty(&main->key));
+ BLI_assert(BLI_listbase_is_empty(&main->world));
+ BLI_assert(BLI_listbase_is_empty(&main->speaker));
+ BLI_assert(BLI_listbase_is_empty(&main->group));
+ BLI_assert(BLI_listbase_is_empty(&main->armature));
+ BLI_assert(BLI_listbase_is_empty(&main->action));
+ BLI_assert(BLI_listbase_is_empty(&main->object));
+ BLI_assert(BLI_listbase_is_empty(&main->mat));
+ BLI_assert(BLI_listbase_is_empty(&main->tex));
+ BLI_assert(BLI_listbase_is_empty(&main->mesh));
+ BLI_assert(BLI_listbase_is_empty(&main->particle));
+ BLI_assert(BLI_listbase_is_empty(&main->nodetree));
+ BLI_assert(BLI_listbase_is_empty(&main->brush));
+ BLI_assert(BLI_listbase_is_empty(&main->palettes));
+ BLI_assert(BLI_listbase_is_empty(&main->paintcurves));
+ BLI_assert(BLI_listbase_is_empty(&main->gpencil));
+ BLI_assert(BLI_listbase_is_empty(&main->linestyle));
+ }
+ else {
+ while (a--) {
+ for (id = lbarray[a]->first; id; id = id->next) {
+ if (id->us > 0 && (id->tag & LIB_TAG_EXTERN)) {
+ if (!BKE_idcode_is_linkable(GS(id->name))) {
- printf("ERROR: write file: datablock '%s' from lib '%s' is not linkable "
++ printf("ERROR: write file: data-block '%s' from lib '%s' is not linkable "
+ "but is flagged as directly linked", id->name, main->curlib->filepath);
+ BLI_assert(0);
+ }
+ writestruct(wd, ID_ID, ID, 1, id);
+ write_iddata(wd, id);
}
- writestruct(wd, ID_ID, ID, 1, id);
}
}
}
diff --cc source/blender/windowmanager/intern/wm_files_link.c
index 8195212,e872ec1..c97ec56
--- a/source/blender/windowmanager/intern/wm_files_link.c
+++ b/source/blender/windowmanager/intern/wm_files_link.c
@@@ -596,12 -465,8 +596,12 @@@ static void wm_link_append_properties_c
/* better not save _any_ settings for this operator */
/* properties */
+ prop = RNA_def_string(ot->srna, "asset_engine", NULL, sizeof(((AssetEngineType *)NULL)->idname),
+ "Asset Engine", "Asset engine identifier used to append/link the data");
+ RNA_def_property_flag(prop, PROP_SKIP_SAVE | PROP_HIDDEN);
+
prop = RNA_def_boolean(ot->srna, "link", is_link,
- "Link", "Link the objects or datablocks rather than appending");
+ "Link", "Link the objects or data-blocks rather than appending");
RNA_def_property_flag(prop, PROP_SKIP_SAVE | PROP_HIDDEN);
prop = RNA_def_boolean(ot->srna, "autoselect", true,
"Select", "Select new objects");
More information about the Bf-blender-cvs
mailing list