Commit: 088d32d1591c6e0e19430839c0cb083d14bb4362
Author: Bastien Montagne
Date: Mon Jun 13 15:06:52 2016 +0200
Branches: asset-engine
https://developer.blender.org/rB088d32d1591c6e0e19430839c0cb083d14bb4362
Some minor fixes/enhancements.
Asset engines are now only selectable and used in link/append case. Makes no
real sense to have
those in other cases (like regular file opening, or even worse when saving a
file!).
Also allows to get back asset engine persistance accross filebrowser usage.
===================================================================
M release/scripts/startup/bl_ui/space_filebrowser.py
M source/blender/editors/space_file/filelist.c
M source/blender/editors/space_file/space_file.c
M source/blender/windowmanager/intern/wm_event_system.c
===================================================================
diff --git a/release/scripts/startup/bl_ui/space_filebrowser.py
b/release/scripts/startup/bl_ui/space_filebrowser.py
index cd03b06..21a0863 100644
--- a/release/scripts/startup/bl_ui/space_filebrowser.py
+++ b/release/scripts/startup/bl_ui/space_filebrowser.py
@@ -28,12 +28,16 @@ class FILEBROWSER_HT_header(Header):
layout = self.layout
st = context.space_data
+ params = st.params
+ is_lib_browser = params and params.use_library_browsing
layout.template_header()
+ layout.separator()
- row = layout.row()
- row.prop(st, "asset_engine_type", text="")
- row.separator()
+ if is_lib_browser:
+ row = layout.row()
+ row.prop(st, "asset_engine_type", text="")
+ layout.separator()
row = layout.row(align=True)
row.operator("file.previous", text="", icon='BACK')
@@ -42,7 +46,7 @@ class FILEBROWSER_HT_header(Header):
row.operator("file.refresh", text="", icon='FILE_REFRESH')
layout.separator()
- if st.asset_engine:
+ if st.asset_engine and is_lib_browser:
draw_header = getattr(st.asset_engine, "draw_header", None)
if draw_header:
draw_header(layout, context)
@@ -52,12 +56,9 @@ class FILEBROWSER_HT_header(Header):
layout.separator()
layout.operator_context = 'INVOKE_DEFAULT'
- params = st.params
# can be None when save/reload with a file selector open
if params:
- is_lib_browser = params.use_library_browsing
-
layout.prop(params, "recursion_level", text="")
layout.prop(params, "display_type", expand=True, text="")
diff --git a/source/blender/editors/space_file/filelist.c
b/source/blender/editors/space_file/filelist.c
index 3d0270e..a36bc3e 100644
--- a/source/blender/editors/space_file/filelist.c
+++ b/source/blender/editors/space_file/filelist.c
@@ -1774,7 +1774,7 @@ static bool filelist_file_cache_block_create(FileList
*filelist, const int start
entry = filelist_file_create_entries_block(filelist,
start_index, size);
for (i = 0; i < size; i++, cursor++, entry = entry->next) {
- printf("%d, %p\n", i, entry);
+// printf("%d, %p\n", i, entry);
cache->block_entries[cursor] = entry;
BLI_ghash_insert(cache->uuids, entry->uuid, entry);
}
diff --git a/source/blender/editors/space_file/space_file.c
b/source/blender/editors/space_file/space_file.c
index 2fcfa03..9f5fffc 100644
--- a/source/blender/editors/space_file/space_file.c
+++ b/source/blender/editors/space_file/space_file.c
@@ -223,7 +223,8 @@ static void file_refresh(const bContext *C, ScrArea *sa)
struct FSMenu *fsmenu = ED_fsmenu_get();
AssetEngineType *aet = NULL;
- if (!STREQ(sfile->asset_engine, AE_FAKE_ENGINE_ID)) {
+ if (!STREQ(sfile->asset_engine, AE_FAKE_ENGINE_ID) && (params->type ==
FILE_LOADLIB)) {
+ /* Only allow asset engine usage in 'loadlib' (i.e.
link/append) case. */
aet = BKE_asset_engines_find(sfile->asset_engine);
}
diff --git a/source/blender/windowmanager/intern/wm_event_system.c
b/source/blender/windowmanager/intern/wm_event_system.c
index 1e1872c..bf5afb9 100644
--- a/source/blender/windowmanager/intern/wm_event_system.c
+++ b/source/blender/windowmanager/intern/wm_event_system.c
@@ -1812,10 +1812,6 @@ static int wm_handler_fileselect_do(bContext *C,
ListBase *handlers, wmEventHand
sfile = (SpaceFile *)sa->spacedata.first;
sfile->op = handler->op;
- /* Note: This may not be optimal, but for now always
reset to default engine when opening a new browser.
- * Otherwise, we get previous engine even when we
want to save .blend, yuck. */
- BLI_strncpy(sfile->asset_engine, AE_FAKE_ENGINE_ID,
sizeof(sfile->asset_engine));
-
ED_fileselect_set_params(sfile);
action = WM_HANDLER_BREAK;
_______________________________________________
Bf-blender-cvs mailing list
[email protected]
https://lists.blender.org/mailman/listinfo/bf-blender-cvs