[Bf-extensions-cvs] [5103e930] master: BlenderKit: bring search props to window_manager
Vilem Duha
noreply at git.blender.org
Wed Oct 13 11:54:14 CEST 2021
Commit: 5103e930330419d6783350f79937c6176779bd61
Author: Vilem Duha
Date: Tue Oct 12 14:49:45 2021 +0200
Branches: master
https://developer.blender.org/rBA5103e930330419d6783350f79937c6176779bd61
BlenderKit: bring search props to window_manager
this avoids some trouble, e.g. during switching to appended scenes.
===================================================================
M blenderkit/__init__.py
M blenderkit/append_link.py
M blenderkit/asset_inspector.py
M blenderkit/autothumb.py
M blenderkit/bg_blender.py
M blenderkit/categories.py
M blenderkit/image_utils.py
M blenderkit/ratings.py
M blenderkit/search.py
M blenderkit/ui.py
M blenderkit/ui_panels.py
M blenderkit/upload.py
M blenderkit/utils.py
===================================================================
diff --git a/blenderkit/__init__.py b/blenderkit/__init__.py
index 3fc15f3b..f6fcb155 100644
--- a/blenderkit/__init__.py
+++ b/blenderkit/__init__.py
@@ -143,7 +143,7 @@ from bpy.types import (
@persistent
def scene_load(context):
- ui_props = bpy.context.scene.blenderkitUI
+ ui_props = bpy.context.window_manager.blenderkitUI
ui_props.assetbar_on = False
ui_props.turn_off = False
preferences = bpy.context.preferences.addons['blenderkit'].preferences
@@ -238,7 +238,7 @@ def udate_down_up(self, context):
"""Perform a search if results are empty."""
s = context.scene
wm = bpy.context.window_manager
- props = s.blenderkitUI
+ props = bpy.context.window_manager.blenderkitUI
if wm.get('search results') == None and props.down_up == 'SEARCH':
search.search()
@@ -246,7 +246,7 @@ def udate_down_up(self, context):
def switch_search_results(self, context):
s = bpy.context.scene
wm = bpy.context.window_manager
- props = s.blenderkitUI
+ props = bpy.context.window_manager.blenderkitUI
if props.asset_type == 'MODEL':
wm['search results'] = wm.get('bkit model search')
wm['search results orig'] = wm.get('bkit model search orig')
@@ -307,7 +307,7 @@ def asset_type_callback(self, context):
def run_drag_drop_update(self, context):
if self.drag_init_button:
- ui_props = bpy.context.scene.blenderkitUI
+ ui_props = bpy.context.window_manager.blenderkitUI
# ctx = utils.get_fake_context(bpy.context)
bpy.ops.view3d.close_popup_button('INVOKE_DEFAULT')
@@ -1850,7 +1850,7 @@ def register():
for cls in classes:
bpy.utils.register_class(cls)
- bpy.types.Scene.blenderkitUI = PointerProperty(
+ bpy.types.WindowManager.blenderkitUI = PointerProperty(
type=BlenderKitUIProps)
# MODELS
diff --git a/blenderkit/append_link.py b/blenderkit/append_link.py
index 481504fb..6fe710be 100644
--- a/blenderkit/append_link.py
+++ b/blenderkit/append_link.py
@@ -93,7 +93,7 @@ def append_scene(file_name, scenename=None, link=False, fake_user=False):
scene['uuid'] = str(uuid.uuid4())
#reset ui_props of the scene to defaults:
- ui_props = bpy.context.scene.blenderkitUI
+ ui_props = bpy.context.window_manager.blenderkitUI
ui_props.down_up = 'SEARCH'
return scene
diff --git a/blenderkit/asset_inspector.py b/blenderkit/asset_inspector.py
index 72b9827d..cbb9517a 100644
--- a/blenderkit/asset_inspector.py
+++ b/blenderkit/asset_inspector.py
@@ -325,7 +325,7 @@ def check_modifiers(props, obs):
def get_autotags():
""" call all analysis functions """
- ui = bpy.context.scene.blenderkitUI
+ ui = bpy.context.window_manager.blenderkitUI
if ui.asset_type == 'MODEL':
ob = utils.get_active_model()
obs = utils.get_hierarchy(ob)
diff --git a/blenderkit/autothumb.py b/blenderkit/autothumb.py
index f5e0cd34..2d376852 100644
--- a/blenderkit/autothumb.py
+++ b/blenderkit/autothumb.py
@@ -640,7 +640,7 @@ class ReGenerateMaterialThumbnailOperator(bpy.types.Operator):
def invoke(self, context, event):
# scene = bpy.context.scene
- # ui_props = scene.blenderkitUI
+ # ui_props = bpy.context.window_manager.blenderkitUI
# if ui_props.active_index > -1:
# sr = bpy.context.window_manager['search results']
# self.asset_data = dict(sr[ui_props.active_index])
diff --git a/blenderkit/bg_blender.py b/blenderkit/bg_blender.py
index 8fa0491f..8495c076 100644
--- a/blenderkit/bg_blender.py
+++ b/blenderkit/bg_blender.py
@@ -232,7 +232,7 @@ class KillBgProcess(bpy.types.Operator):
if source.name == bpy.context.scene.name:
kill = True
if source.bl_rna.name == 'Image' and self.process_source == 'HDR':
- ui_props = bpy.context.scene.blenderkitUI
+ ui_props = bpy.context.window_manager.blenderkitUI
if source.name == ui_props.hdr_upload_image.name:
kill = False
diff --git a/blenderkit/categories.py b/blenderkit/categories.py
index fc7b929b..9a19c120 100644
--- a/blenderkit/categories.py
+++ b/blenderkit/categories.py
@@ -151,7 +151,7 @@ def update_subcategory_enums(self, context):
def get_category_enums(self, context):
wm = bpy.context.window_manager
- props = bpy.context.scene.blenderkitUI
+ props = bpy.context.window_manager.blenderkitUI
asset_type = props.asset_type.lower()
# asset_type = self.asset_type#get_upload_asset_type(self)
asset_categories = get_category(wm['bkit_categories'], cat_path=(asset_type,))
@@ -165,7 +165,7 @@ def get_category_enums(self, context):
def get_subcategory_enums(self, context):
wm = bpy.context.window_manager
- props = bpy.context.scene.blenderkitUI
+ props = bpy.context.window_manager.blenderkitUI
asset_type = props.asset_type.lower()
items = []
if self.category != '':
@@ -180,7 +180,7 @@ def get_subcategory_enums(self, context):
def get_subcategory1_enums(self, context):
wm = bpy.context.window_manager
- props = bpy.context.scene.blenderkitUI
+ props = bpy.context.window_manager.blenderkitUI
asset_type = props.asset_type.lower()
items = []
if self.category != '' and self.subcategory != '':
diff --git a/blenderkit/image_utils.py b/blenderkit/image_utils.py
index 4c09b06a..b17878c3 100644
--- a/blenderkit/image_utils.py
+++ b/blenderkit/image_utils.py
@@ -71,7 +71,7 @@ def set_colorspace(img, colorspace):
def analyze_image_is_true_hdr(image):
import numpy
scene = bpy.context.scene
- ui_props = scene.blenderkitUI
+ ui_props = bpy.context.window_manager.blenderkitUI
size = image.size
imageWidth = size[0]
imageHeight = size[1]
@@ -82,7 +82,7 @@ def analyze_image_is_true_hdr(image):
def generate_hdr_thumbnail():
import numpy
scene = bpy.context.scene
- ui_props = scene.blenderkitUI
+ ui_props = bpy.context.window_manager.blenderkitUI
hdr_image = ui_props.hdr_upload_image # bpy.data.images.get(ui_props.hdr_upload_image)
base, ext = os.path.splitext(hdr_image.filepath)
diff --git a/blenderkit/ratings.py b/blenderkit/ratings.py
index 4bfcfd53..be9719ae 100644
--- a/blenderkit/ratings.py
+++ b/blenderkit/ratings.py
@@ -233,7 +233,7 @@ class FastRateMenu(Operator, ratings_utils.RatingsProperties):
@classmethod
def poll(cls, context):
scene = bpy.context.scene
- ui_props = scene.blenderkitUI
+ ui_props = bpy.context.window_manager.blenderkitUI
return True;
def draw(self, context):
@@ -242,7 +242,7 @@ class FastRateMenu(Operator, ratings_utils.RatingsProperties):
def execute(self, context):
scene = bpy.context.scene
- ui_props = scene.blenderkitUI
+ ui_props = bpy.context.window_manager.blenderkitUI
#get asset id
if ui_props.active_index > -1:
sr = bpy.context.window_manager['search results']
@@ -267,7 +267,7 @@ class FastRateMenu(Operator, ratings_utils.RatingsProperties):
def rating_menu_draw(self, context):
layout = self.layout
- ui_props = context.scene.blenderkitUI
+ ui_props = context.window_manager.blenderkitUI
sr = bpy.context.window_manager['search results']
asset_search_index = ui_props.active_index
diff --git a/blenderkit/search.py b/blenderkit/search.py
index 50c3c480..4938a7b9 100644
--- a/blenderkit/search.py
+++ b/blenderkit/search.py
@@ -375,7 +375,7 @@ def search_timer():
# finish loading thumbs from queues
global all_thumbs_loaded
if not all_thumbs_loaded:
- ui_props = bpy.context.scene.blenderkitUI
+ ui_props = bpy.context.window_manager.blenderkitUI
search_name = f'bkit {ui_props.asset_type.lower()} search'
wm = bpy.context.window_manager
if wm.get(search_name) is not None:
@@ -393,7 +393,7 @@ def search_timer():
return 1.0
# don't do anything while dragging - this could switch asset during drag, and make results list length different,
# causing a lot of throuble.
- if bpy.context.scene.blenderkitUI.dragging:
+ if bpy.context.window_manager.blenderkitUI.dragging:
# utils.p('end search timer')
return 0.5
@@ -433,7 +433,7 @@ def search_timer():
ok, error = check_errors(rdata)
if ok:
- ui_props = bpy.context.scene.blenderkitUI
+ ui_props = bpy.context.window_manager.blenderkitUI
orig_len = len(result_field)
for ri, r in enumerate(rdata['results']):
@@ -490,7 +490,7 @@ def search_timer():
def load_preview(asset, index):
scene = bpy.context.scene
# FIRST START SEARCH
- props = scene.blenderkitUI
+ props = bpy.context.window_manager.blenderkitUI
directory = paths.get_temp_dir('%s_search' % props.asset_type.lower())
s = bpy.context.scene
results = bpy.context.window_manager.get('search results')
@@ -541,7 +541,7 @@ def load_preview(asset, index):
def load_previews():
scene = bpy.context.scene
# FIRST START SEARCH
- props = scene.blenderkitUI
+ props = bpy.context.window_manager.blenderkitUI
directory = paths.get_temp_dir('%s_search' % props.asset_type.lower())
s = bpy.context.scene
results = bpy.context.window_manager.get('search results')
@@ -1332,7 +1332,7 @@ def search(category='', get_next=False, author_id=''):
# mt('start')
scene = bpy.context.scene
wm = bpy.context.window_manager
- ui_props = scene.blenderkitUI
+ ui_props = bpy.context.window_manager.blenderkitUI
props = utils.get_search_props()
if ui_props.asset_type == 'MODEL':
@@ -1423,7 +1423,7 @@ def search(category='', get_next=False, author_id=''):
def update_filters():
sprops = utils.get_search_props()
- ui_props = bpy.context.scene.blenderkitUI
+ ui_props = bpy.context.window_manager.blenderkitUI
fcommon = sprops.own_only or \
sprops.search_texture_resolution or \
sprops.search_file_size or \
@@ -1447,7 +1447,7 @@ def search_update(self, context):
utils.p('searc
@@ Diff output truncated at 10240 characters. @@
More information about the Bf-extensions-cvs
mailing list