From f343df8512a03d86dbec28c019dbd9151f9a43bb Mon Sep 17 00:00:00 2001 From: "Salvador E. Tropea" Date: Wed, 6 Dec 2023 09:21:20 -0300 Subject: [PATCH] [Copy Files][Project][Added] Page layout See #491 --- kibot/kicad/config.py | 9 +++++---- kibot/out_copy_files.py | 3 +++ 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/kibot/kicad/config.py b/kibot/kicad/config.py index 184f7db8..69912d0a 100644 --- a/kibot/kicad/config.py +++ b/kibot/kicad/config.py @@ -604,7 +604,7 @@ class KiConf(object): dest = os.path.join(dest_dir, key+'.kicad_wks') logger.debug('Copying {} -> {}'.format(fname, dest)) copy2(fname, dest) - data[key]['page_layout_descr_file'] = dest + data[key]['page_layout_descr_file'] = key+'.kicad_wks' return dest else: logger.error('Missing page layout file: '+fname) @@ -626,10 +626,10 @@ class KiConf(object): else: aux = data.get('schematic', None) if aux: - layouts[0] = KiConf.expand_env(aux.get('page_layout_descr_file', None)) + layouts[0] = KiConf.expand_env(aux.get('page_layout_descr_file', None), ref_dir=dest_dir) aux = data.get('pcbnew', None) if aux: - layouts[1] = KiConf.expand_env(aux.get('page_layout_descr_file', None)) + layouts[1] = KiConf.expand_env(aux.get('page_layout_descr_file', None), ref_dir=dest_dir) return layouts def fix_page_layout_k5(project, dry): @@ -655,13 +655,14 @@ class KiConf(object): layouts[is_pcb_new] = dest else: layouts[is_pcb_new] = fname + dest = str(order)+'.kicad_wks' order = order+1 else: logger.error('Missing page layout file: '+fname) exit(MISSING_WKS) else: dest = '' - lns[c] = 'PageLayoutDescrFile='+dest+'\n' + lns[c] = f'PageLayoutDescrFile={dest}\n' if not dry: with open(project, 'wt') as f: lns = f.writelines(lns) diff --git a/kibot/out_copy_files.py b/kibot/out_copy_files.py index 31eda676..13fc08d0 100644 --- a/kibot/out_copy_files.py +++ b/kibot/out_copy_files.py @@ -245,6 +245,9 @@ class Copy_FilesOptions(Base3DOptions): extra_files.append(prl_name) if dru_name: extra_files.append(dru_name) + # Worksheet + wks = GS.fix_page_layout(prj_name, dry=dry) + extra_files += [w for w in wks if w is not None] if mode_project: extra_files += self.copy_footprints(f.dest, dry) extra_files += self.copy_symbols(f.dest, dry)