но если жестко задать PreferCommandLine, true or false
независимо от флага, нанокад в зависисмости от CMDACTIVE, будет предлагать окно или ком строку, т.е. смысл PreferCommandLine теряется)
Несколько лет назад я просил именно о таком поведении((
но иногда надо независимо от CMDACTIVE всегда окно или всегда ком строку
Добрый день!
Если задавать значение PreferCommandLine явно - файловый диалог будет работать ожидаемым способом (true - ком. строка, false - окно)
При этом переменная CMDACTIVE не влияет на работу файлового диалога, только если явно не присвоить её значение PreferCommandLine
Прикрепляю тестовый проект, для его сборки необходимо указать путь к папке bin нанокада в NcadBinPath внутри .csproj файла
[CommandMethod("PreferCommandLineNone")]
public void CheckPreferCLNone()
{
Document doc = Application.DocumentManager.MdiActiveDocument;
Editor ed = doc.Editor;
PromptOpenFileOptions options = new PromptOpenFileOptions("Выберите файл для открытия");
options.Filter = "Файлы INI (*.ini)|*.ini|Файлы XML (*.xml)|*.xml";
options.FilterIndex = 0;
//options.PreferCommandLine = preferCommandLine;
options.InitialFileName =
Path.GetFileNameWithoutExtension(Application.GetSystemVariable("dwgname").ToString());
PromptFileNameResult fileNameResult = ed.GetFileNameForOpen(options);
if (fileNameResult.Status == PromptStatus.OK)
{
ed.WriteMessage(fileNameResult.StringResult);
}
}
PreferCommandLineNone запросит путь в браузере файлов (command "PreferCommandLineNone") запросит путь в ком строке
в нк 8103, 8429 ожидаемое поведение, как в оригинале
после починки:
программная установка свойства PreferCommandLine смысла не имеет PreferCommandLineNone зависит от контекста вызова, команда или нет
независимо от флага (command "PREFERCOMMANDLINEISFALSE") всегда будет запрос в ком строке
поведение аналогичное оригиналу, имха глуповато они сделали ((а мы повторили))
я к тому, что в командном режиме браузер файлов открыть невозможно
при всем моем уважении… тестить все версии в поисках отличий не буду, а учитывая, что от версии к версии поведение менялось это бесполезная затея.
Выше описал поведение в нк26, в принципе привели в соответствие с оригиналом, но
оставлять как есть или менять, на усмотрение нанодев, ни на чем не настаиваю.