From 979067db21b9f38fefbcf4c3146b6f6750cdfab5 Mon Sep 17 00:00:00 2001 From: AJ Date: Thu, 23 Jun 2022 12:44:44 -0400 Subject: [PATCH] Save drawing pdf in same directory as DXF files. --- ExportDXF/ExportDXF.csproj | 8 +++--- ExportDXF/Forms/MainForm.cs | 49 ++++++++++++++++++++++++------------- 2 files changed, 37 insertions(+), 20 deletions(-) diff --git a/ExportDXF/ExportDXF.csproj b/ExportDXF/ExportDXF.csproj index df5f492..e0ce407 100644 --- a/ExportDXF/ExportDXF.csproj +++ b/ExportDXF/ExportDXF.csproj @@ -13,7 +13,7 @@ 512 false - \\REMCOSRV1\Data\Software\ExportDXF\ + \\REMCOSRV0\Data\Software\ExportDXF\ true Unc true @@ -24,8 +24,10 @@ false true Rogers Engineering - 1 - 1.3.0.%2a + true + publish.htm + 2 + 1.5.0.%2a false true true diff --git a/ExportDXF/Forms/MainForm.cs b/ExportDXF/Forms/MainForm.cs index 6400f27..793d2be 100644 --- a/ExportDXF/Forms/MainForm.cs +++ b/ExportDXF/Forms/MainForm.cs @@ -236,14 +236,13 @@ namespace ExportDXF.Forms } } - private string GetPdfSavePath(DrawingDoc drawingDoc) + private string GetPdfFileName(DrawingDoc drawingDoc) { var model = drawingDoc as ModelDoc2; - var pdfPath = model.GetPathName(); - var ext = Path.GetExtension(pdfPath); - pdfPath = pdfPath.Remove(pdfPath.Length - ext.Length) + ".pdf"; + var modelFilePath = model.GetPathName(); + var pdfFileName = Path.GetFileNameWithoutExtension(modelFilePath) + ".pdf"; - return pdfPath; + return pdfFileName; } private void ExportDrawingToPDF(DrawingDoc drawingDoc, string savePath) @@ -293,10 +292,19 @@ namespace ExportDXF.Forms Print($"Found {items.Count} component(s)"); - var savePath = GetPdfSavePath(drawing); + var saveDirectory = UserSelectFolder(); - ExportDrawingToPDF(drawing, savePath); - ExportToDXF(items); + if (saveDirectory == null) + { + Print("Canceled\n", Color.Red); + return; + } + + var pdfName = GetPdfFileName(drawing); + var pdfPath = Path.Combine(saveDirectory, pdfName); + + ExportDrawingToPDF(drawing, pdfPath); + ExportToDXF(items, saveDirectory); } private List GetItems(BomTableAnnotation bom) @@ -355,20 +363,27 @@ namespace ExportDXF.Forms var items = itemExtractor.GetItems(); Print($"Found {items.Count} item(s).\n"); - ExportToDXF(items); - } - private void ExportToDXF(IEnumerable items) - { - var savePath = UserSelectFolder(); - var prefix = prefixTextBox.Text; + var saveDirectory = UserSelectFolder(); - if (savePath == null) + if (saveDirectory == null) { Print("Canceled\n", Color.Red); return; } + ExportToDXF(items, saveDirectory); + } + + /// + /// + /// + /// + /// Directory to save the DXF file in. + private void ExportToDXF(IEnumerable items, string saveDirectory) + { + var prefix = prefixTextBox.Text; + templateDrawing = CreateDrawing(); Print(""); @@ -382,7 +397,7 @@ namespace ExportDXF.Forms continue; var fileName = GetFileName(item); - var savepath = Path.Combine(savePath, fileName + ".dxf"); + var savepath = Path.Combine(saveDirectory, fileName + ".dxf"); item.Component.SetLightweightToResolved(); @@ -449,7 +464,7 @@ namespace ExportDXF.Forms { var drawingInfo = DrawingInfo.Parse(prefix); var bomName = drawingInfo != null ? $"{drawingInfo.JobNo} {drawingInfo.DrawingNo} BOM" : "BOM"; - var bomFile = Path.Combine(savePath, bomName + ".xlsx"); + var bomFile = Path.Combine(saveDirectory, bomName + ".xlsx"); var excelReport = new BomToExcel(); excelReport.CreateBOMExcelFile(bomFile, items.ToList());