PSA import dialog now uses new Blender 4.1 UI panels
This commit is contained in:
@@ -190,18 +190,18 @@ class PSA_OT_import(Operator, ImportHelper):
|
|||||||
layout = self.layout
|
layout = self.layout
|
||||||
pg = getattr(context.scene, 'psa_import')
|
pg = getattr(context.scene, 'psa_import')
|
||||||
|
|
||||||
|
sequences_header, sequences_panel = layout.panel('sequences_panel_id', default_closed=False)
|
||||||
|
sequences_header.label(text='Sequences')
|
||||||
|
|
||||||
|
if sequences_panel:
|
||||||
if pg.psa_error:
|
if pg.psa_error:
|
||||||
row = layout.row()
|
row = sequences_panel.row()
|
||||||
row.label(text='Select a PSA file', icon='ERROR')
|
row.label(text='Select a PSA file', icon='ERROR')
|
||||||
else:
|
else:
|
||||||
box = layout.box()
|
|
||||||
|
|
||||||
box.label(text=f'Sequences ({len(pg.sequence_list)})', icon='ARMATURE_DATA')
|
|
||||||
|
|
||||||
# Select buttons.
|
# Select buttons.
|
||||||
rows = max(3, min(len(pg.sequence_list), 10))
|
rows = max(3, min(len(pg.sequence_list), 10))
|
||||||
|
|
||||||
row = box.row()
|
row = sequences_panel.row()
|
||||||
col = row.column()
|
col = row.column()
|
||||||
|
|
||||||
row2 = col.row(align=True)
|
row2 = col.row(align=True)
|
||||||
@@ -213,45 +213,49 @@ class PSA_OT_import(Operator, ImportHelper):
|
|||||||
col = col.row()
|
col = col.row()
|
||||||
col.template_list('PSA_UL_import_sequences', '', pg, 'sequence_list', pg, 'sequence_list_index', rows=rows)
|
col.template_list('PSA_UL_import_sequences', '', pg, 'sequence_list', pg, 'sequence_list_index', rows=rows)
|
||||||
|
|
||||||
col = layout.column(heading='')
|
col = sequences_panel.column(heading='')
|
||||||
col.use_property_split = True
|
col.use_property_split = True
|
||||||
col.use_property_decorate = False
|
col.use_property_decorate = False
|
||||||
|
col.prop(pg, 'fps_source')
|
||||||
|
if pg.fps_source == 'CUSTOM':
|
||||||
|
col.prop(pg, 'fps_custom')
|
||||||
col.prop(pg, 'should_overwrite')
|
col.prop(pg, 'should_overwrite')
|
||||||
|
col.prop(pg, 'should_use_action_name_prefix')
|
||||||
|
if pg.should_use_action_name_prefix:
|
||||||
|
col.prop(pg, 'action_name_prefix')
|
||||||
|
|
||||||
col = layout.column(heading='Write')
|
data_header, data_panel = layout.panel('data_panel_id', default_closed=False)
|
||||||
|
data_header.label(text='Data')
|
||||||
|
|
||||||
|
if data_panel:
|
||||||
|
col = data_panel.column(heading='Write')
|
||||||
col.use_property_split = True
|
col.use_property_split = True
|
||||||
col.use_property_decorate = False
|
col.use_property_decorate = False
|
||||||
col.prop(pg, 'should_write_keyframes')
|
col.prop(pg, 'should_write_keyframes')
|
||||||
col.prop(pg, 'should_write_metadata')
|
col.prop(pg, 'should_write_metadata')
|
||||||
|
|
||||||
col = layout.column()
|
if pg.should_write_keyframes:
|
||||||
|
col = col.column(heading='Keyframes')
|
||||||
|
col.use_property_split = True
|
||||||
|
col.use_property_decorate = False
|
||||||
|
col.prop(pg, 'should_convert_to_samples')
|
||||||
|
|
||||||
|
advanced_header, advanced_panel = layout.panel('advanced_panel_id', default_closed=True)
|
||||||
|
advanced_header.label(text='Advanced')
|
||||||
|
|
||||||
|
if advanced_panel:
|
||||||
|
col = advanced_panel.column()
|
||||||
col.use_property_split = True
|
col.use_property_split = True
|
||||||
col.use_property_decorate = False
|
col.use_property_decorate = False
|
||||||
col.prop(pg, 'bone_mapping_mode')
|
col.prop(pg, 'bone_mapping_mode')
|
||||||
|
|
||||||
if pg.should_write_keyframes:
|
col = advanced_panel.column(heading='Options')
|
||||||
col = layout.column(heading='Keyframes')
|
|
||||||
col.use_property_split = True
|
|
||||||
col.use_property_decorate = False
|
|
||||||
col.prop(pg, 'should_convert_to_samples')
|
|
||||||
col.separator()
|
|
||||||
# FPS
|
|
||||||
col.prop(pg, 'fps_source')
|
|
||||||
if pg.fps_source == 'CUSTOM':
|
|
||||||
col.prop(pg, 'fps_custom')
|
|
||||||
|
|
||||||
col = layout.column(heading='Options')
|
|
||||||
col.use_property_split = True
|
col.use_property_split = True
|
||||||
col.use_property_decorate = False
|
col.use_property_decorate = False
|
||||||
col.prop(pg, 'should_use_fake_user')
|
col.prop(pg, 'should_use_fake_user')
|
||||||
col.prop(pg, 'should_stash')
|
col.prop(pg, 'should_stash')
|
||||||
col.prop(pg, 'should_use_config_file')
|
col.prop(pg, 'should_use_config_file')
|
||||||
|
|
||||||
col.prop(pg, 'should_use_action_name_prefix')
|
|
||||||
|
|
||||||
if pg.should_use_action_name_prefix:
|
|
||||||
col.prop(pg, 'action_name_prefix')
|
|
||||||
|
|
||||||
|
|
||||||
class PSA_FH_import(FileHandler):
|
class PSA_FH_import(FileHandler):
|
||||||
bl_idname = 'PSA_FH_import'
|
bl_idname = 'PSA_FH_import'
|
||||||
|
|||||||
Reference in New Issue
Block a user