import bpy import os # from pathlib import Path # # preview_collection = {} # icon_sauropod_path = Path(os.path.dirname(os.path.abspath(__file__)), "icons") # # pcoll = bpy.utils.previews.new() # # for entry in os.scandir(icon_sauropod_path): # if entry.name.endswith(".png"): # name = os.path.splitext(entry.name)[0] # print(f'[Pipeline] Add icon "{name}"') # pcoll.load(name.upper(), entry.path, "IMAGE") class GRAOU_PT_panel(bpy.types.Panel): bl_idname = 'GRAOU_PT_MAIN' bl_space_type = 'VIEW_3D' bl_region_type = 'UI' bl_label = 'Pipeline' bl_category = 'Graou Studio' def draw(self, context): layout = self.layout # layout.label(text='Graou Pipeline', icon_value=pcoll["GRAOU"].icon_id) col = layout.column(align=True) col.label(text='Main Config:') col.operator('graou.build_scene', text='Init Scene', icon='OUTLINER') col.prop(context.scene.graou_props, 'socket_collection', text='Use socket', toggle=True) layout.separator() layout.label(text='Asset:') layout.operator('graou.make_collision', text='Generate collision', icon='MOD_PHYSICS') layout.separator() layout.label(text='Export scene:') box = layout.box() box.label(text='Sanity Check') layout.operator('graou.building_export', text='Export Placeholder', icon='EXPORT')