diff --git a/operators/spreadsheet.py b/operators/spreadsheet.py index 50f8d1e..539c82a 100644 --- a/operators/spreadsheet.py +++ b/operators/spreadsheet.py @@ -154,7 +154,7 @@ class VSETB_OT_spreadsheet_from_clipboard(Operator): spreadsheet = context.window_manager.clipboard cell_types = project.get_cell_types() - rows = list(csv.reader(StringIO(spreadsheet), delimiter='\t')) + rows = [r for r in csv.reader(StringIO(spreadsheet), delimiter='\t') if any(r)] for cell_name in rows[0]: if not cell_name: continue @@ -307,27 +307,30 @@ class VSETB_OT_import_spreadsheet(Operator): header = SPREADSHEET[0] + print(SPREADSHEET[:2]) + cell_types = project.get_cell_types() cell_names = {k: spreadsheet.cells[k].import_name for k in header if k} separator = spreadsheet.separator.replace('\\n', '\n').replace('\\t', '\t').replace('\\r', '\r') - - - + shot_strips = get_strips('Shots') frame_start = scn.frame_start for row in SPREADSHEET[1:]: + print(row) cell_data = {cell_names[k]: v for k, v in zip(header, row) if k} #cell_data = {k: v for k, v in zip(header, row)} shot_name = cell_data['Shot'] - nb_frames = int(cell_data['Nb Frames']) - strip = next((s for s in sequencer if s.vsetb_strip_settings.source_name == shot_name), None) + #strip = next((s for s in sequencer if s.vsetb_strip_settings.source_name == shot_name), None) + strip = next((s for s in shot_strips if s.name == shot_name), None) + print(cell_data) print("shot_name", shot_name, strip) - if spreadsheet.update_edit and nb_frames_cell.enabled: + if spreadsheet.update_edit and (nb_frames_cell and nb_frames_cell.enabled): + nb_frames = int(cell_data['Nb Frames']) print('Import Edit') #print(frame_start, nb_frames, type(nb_frames)) @@ -352,10 +355,11 @@ class VSETB_OT_import_spreadsheet(Operator): strip.select = False strip.vsetb_strip_settings.source_name = shot_name - frame_start += nb_frames + frame_start += nb_frames if not strip: self.report({"WARNING"}, f'No strip found with source name {shot_name}, update the edit') + continue strip_settings = strip.vsetb_strip_settings @@ -502,6 +506,8 @@ class VSETB_OT_export_spreadsheet(Operator): for strip in get_strips('Shots'): row = [] for cell in cells: + #print(cell.field_name) + if cell.type == "METADATA": row += [getattr(strip.vsetb_strip_settings.metadata, cell.field_name)] elif cell.type == "ASSET_TYPE":