Beispiel #1
0
        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);
        }
Beispiel #2
0
        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);
        }