public static void SelectFolder(string defPath = null) { string text = $"Выберите рабочую папку"; Console.CursorLeft = 0; Console.CursorTop = 2; SwitchColor(ColorMode.Info); Console.WriteLine(text); SwitchColor(ColorMode.Default); Thread.Sleep(500); WorkFolder.FolderPath = WorkFolder.GetFolderDialog(defPath); }
static void Main(string[] args) { ISldWorks swApp; ModelDoc2 swModel; string rootFolder; string workFolder; string name; string partName; AppConsole.Greenings(Version); AppConsole.RunSW(); AppConsole.LoadSwApp(); do { //Загрузить активный документ swModel = AppConsole.LoadActiveDoc(); var part = new SwModelManager(swModel); //Получить информацию из открытого документа name = part.PrpMan.GetParam("Наименование"); partName = part.PrpMan.GetParam("Обозначение"); workFolder = WorkFolder.FolderPath ?? part.FolderPath; //Отобразить информацию на экране AppConsole.ShowDocType(part); AppConsole.ShowDocName(part); AppConsole.ShowProp(part); //Экспорт if ((int)part.DocType == 1 || (int)part.DocType == 2) { Console.CursorTop = 18; AppConsole.SwitchColor(AppConsole.ColorMode.Info); Console.WriteLine($"Рабочая папка\n{workFolder}"); AppConsole.SwitchColor(AppConsole.ColorMode.Default); Console.CursorTop = 11; Console.WriteLine("Чтобы изменить рабочую папку - Ввод. Для продолжения кнопку пробел"); var userAnswer = Console.ReadKey(true); if (userAnswer.Key == ConsoleKey.Spacebar && part.DocType == swDocumentTypes_e.swDocPART) { // Создать директорию if (!Directory.Exists(workFolder)) { Directory.CreateDirectory(workFolder); } if (partName.Length > 3 && name.Length > 3) { string savingName = partName + " - " + name; AppConsole.SaveDXF(part, workFolder, savingName + ".dxf"); AppConsole.SaveCopy(part, workFolder, savingName + part.GetFileExtension); AppConsole.SavePDF(part, workFolder, savingName + ".pdf"); } else { AppConsole.SwitchColor(AppConsole.ColorMode.Warning); Console.WriteLine("Отсутствует обозначение или описание"); AppConsole.SwitchColor(AppConsole.ColorMode.Default); } } //Изменить рабочую папку else if (userAnswer.Key == ConsoleKey.Enter) { WorkFolder.FolderPath = WorkFolder.GetFolderDialog(workFolder); for (int i = 18; i < 25; i++) { AppConsole.StringManager.ClearLine(i); } } else { AppConsole.SwitchColor(AppConsole.ColorMode.Warning); Console.WriteLine("Сохранение из сборки не поддерживается"); AppConsole.SwitchColor(); } } else { AppConsole.SwitchColor(AppConsole.ColorMode.Warning); Console.WriteLine("\nСохранение невозможно."); AppConsole.SwitchColor(); } }while (AppConsole.ReloadModel()); Console.WriteLine("Пока-пока"); Thread.Sleep(400); }