import csv from clipboard
This commit is contained in:
+15
-10
@@ -14,7 +14,7 @@ from bl_operators.presets import AddPresetBase
|
||||
|
||||
from vse_toolbox.sequencer_utils import (get_strips, get_strip_sequence_name)
|
||||
from vse_toolbox.bl_utils import (get_addon_prefs, get_scene_settings)
|
||||
from vse_toolbox.file_utils import open_file, install_module
|
||||
from vse_toolbox.file_utils import (open_file, install_module, fuzzy_match)
|
||||
|
||||
|
||||
class VSETB_MT_export_spreadsheet_presets(Menu):
|
||||
@@ -143,12 +143,23 @@ class VSETB_OT_spreadsheet_from_clipboard(Operator):
|
||||
def execute(self, context):
|
||||
scn = context.scene
|
||||
project = get_scene_settings().active_project
|
||||
import_cells = project.spreadsheet_import.cells
|
||||
import_cells.clear()
|
||||
|
||||
spreadsheet = context.window_manager.clipboard
|
||||
|
||||
reader = list(csv.reader(spreadsheet.splitlines(), delimiter='\t'))
|
||||
header = reader[0]
|
||||
print(header)
|
||||
cell_types = project.get_cell_types()
|
||||
rows = list(csv.reader(spreadsheet.splitlines(), delimiter='\t'))
|
||||
for cell_name in rows[0]:
|
||||
if not cell_name:
|
||||
continue
|
||||
|
||||
cell = import_cells.add()
|
||||
cell.name = cell_name
|
||||
cell.import_name = max(cell_types.keys(), key=lambda x: fuzzy_match(cell_name, x))
|
||||
cell.enabled = True
|
||||
|
||||
project.spreadsheet_import.use_custom_cells = True
|
||||
|
||||
return {"FINISHED"}
|
||||
|
||||
@@ -194,12 +205,7 @@ class VSETB_OT_import_spreadsheet(Operator):
|
||||
row.operator("vse_toolbox.spreadsheet_from_clipboard", text='Clipboard', icon='PASTEDOWN')
|
||||
row.operator("vse_toolbox.spreadsheet_from_file", text='File', icon='FILE')
|
||||
|
||||
|
||||
row = layout.row(align=True)
|
||||
row.prop(spreadsheet, 'use_custom_cells', text='Custom Cells')
|
||||
|
||||
col = layout.column(align=False)
|
||||
col.enabled = spreadsheet.use_custom_cells
|
||||
|
||||
row = col.row(align=True, heading='Custom Asset Name')
|
||||
row.use_property_split = True
|
||||
@@ -211,7 +217,6 @@ class VSETB_OT_import_spreadsheet(Operator):
|
||||
sub.label(icon='BLANK1')
|
||||
|
||||
row = layout.row()
|
||||
row.enabled = spreadsheet.use_custom_cells
|
||||
row.template_list("VSETB_UL_spreadsheet_import", "spreadsheet_import", spreadsheet, "cells", spreadsheet, "cell_index", rows=8)
|
||||
|
||||
col_tool = row.column(align=True)
|
||||
|
||||
Reference in New Issue
Block a user