From df720ecf268e80b49db811e98ecb12a16b5c2d70 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vil=C3=A9m=20Duha?= Date: Wed, 6 Jan 2021 14:15:10 +0100 Subject: BlenderKit: cleanup imports all modules are reloaded from __init__.py Also prevent a bug thrown when a scene loads with search resutsl and the thumbnail cache was wiped out. --- blenderkit/__init__.py | 57 +++++++++++++++++++++++++++++++++++++------------- blenderkit/search.py | 2 +- 2 files changed, 43 insertions(+), 16 deletions(-) diff --git a/blenderkit/__init__.py b/blenderkit/__init__.py index f3746ce7..69fcb8b6 100644 --- a/blenderkit/__init__.py +++ b/blenderkit/__init__.py @@ -30,28 +30,55 @@ bl_info = { if "bpy" in locals(): from importlib import reload + #alphabetically sorted all add-on modules since reload only happens from __init__. + # modules with _bg are used for background computations in separate blender instance and that's why they don't need reload. + append_link = reload(append_link) asset_inspector = reload(asset_inspector) - search = reload(search) - download = reload(download) - upload = reload(upload) - ratings = reload(ratings) autothumb = reload(autothumb) - ui = reload(ui) - icons = reload(icons) bg_blender = reload(bg_blender) - paths = reload(paths) - utils = reload(utils) - overrides = reload(overrides) - ui_panels = reload(ui_panels) - categories = reload(categories) bkit_oauth = reload(bkit_oauth) - tasks_queue = reload(tasks_queue) + categories = reload(categories) + colors = reload(colors) + download = reload(download) + icons = reload(icons) + image_utils = reload(image_utils) + oauth = reload(oauth) + overrides = reload(overrides) + paths = reload(paths) + ratings = reload(ratings) resolutions = reload(resolutions) + search = reload(search) + tasks_queue = reload(tasks_queue) + ui = reload(ui) + ui_bgl = reload(ui_bgl) + ui_panels = reload(ui_panels) + upload = reload(upload) + utils = reload(utils) else: - from blenderkit import asset_inspector, search, download, upload, ratings, autothumb, ui, icons, bg_blender, paths, \ - utils, \ - overrides, ui_panels, categories, bkit_oauth, tasks_queue, resolutions + from blenderkit import append_link + from blenderkit import asset_inspector + from blenderkit import autothumb + from blenderkit import bg_blender + from blenderkit import bkit_oauth + from blenderkit import categories + from blenderkit import colors + from blenderkit import download + from blenderkit import icons + from blenderkit import image_utils + from blenderkit import oauth + from blenderkit import overrides + from blenderkit import paths + from blenderkit import ratings + from blenderkit import resolutions + from blenderkit import search + from blenderkit import tasks_queue + from blenderkit import ui + from blenderkit import ui_bgl + from blenderkit import ui_panels + from blenderkit import upload + from blenderkit import utils + import os import math diff --git a/blenderkit/search.py b/blenderkit/search.py index d1df071f..880884ec 100644 --- a/blenderkit/search.py +++ b/blenderkit/search.py @@ -441,7 +441,7 @@ def load_previews(): # if os.path.exists(tpath): # sometimes we are unlucky... img = bpy.data.images.get(iname) - if img is None: + if img is None and os.path.exists(tpath): img = bpy.data.images.load(tpath) img.name = iname elif img.filepath != tpath: -- cgit v1.2.3