prevent flickering in profile manager thumbnails

This commit is contained in:
Andrej730
2023-01-31 14:41:42 +05:00
parent 9b4568c881
commit db6207db6c
2 changed files with 9 additions and 6 deletions
@@ -85,7 +85,8 @@ def generate_thumbnail_for_active_profile():
# save generated image to preview collection
profile_id_str = str(profile_id)
if profile_id_str in preview_collection:
del preview_collection[profile_id_str]
preview_image = preview_collection.new(profile_id_str)
preview_image = preview_collection[profile_id_str]
else:
preview_image = preview_collection.new(profile_id_str)
preview_image.image_size = size, size
preview_image.image_pixels_float = pixels
@@ -47,14 +47,16 @@ class BIM_PT_profiles(Panel):
preview_collection = ProfileData.preview_collection
box = self.layout.box()
profile_id = self.props.profiles[self.props.active_profile_index].ifc_definition_id
preview_image = preview_collection.get(str(profile_id), None)
if preview_image:
box.template_icon(icon_value=preview_image.icon_id, scale=5)
profile_id_str = str(profile_id)
if profile_id_str in preview_collection:
preview_image = preview_collection[profile_id_str]
else:
# TODO: test if called multiple times before one is loaded
preview_image = preview_collection.new(profile_id_str)
generate_thumbnail_for_active_profile()
box.template_icon(icon_value=preview_image.icon_id, scale=5)
row = self.layout.row(align=True)
row.label(text=f"{ProfileData.data['total_profiles']} Named Profiles Found", icon="SNAP_GRID")
if self.props.is_editing: