Тема: Как открыть новый документ программно?

Здравствуйте!
Мне нужно в своей программе создавать новые чертежи, без вызова стандартного диалога выбора шаблона. Пробую следующее:

Acad::ErrorStatus es;
CString cs = "C:\\..\\acad.dwt";
es = acDocManagerPtr()->appContextNewDocument( cs );

Возвращает ошибку eNotApplicable.
То же самое если делаю

CString cs = "C:\\..\\Drawing1.dwg";
appContextOpenDocument( cs );

У меня есть пример программы в которой такой же код работает... Единственная разница которую я вижу - я
вызываю из диалога...
Подскажите в чем может быть дело, пожалуйста

Re: Как открыть новый документ программно?

Попробуй в команде, которая создает новый документ установить Сommand context->Application в окне редактора команд

Re: Как открыть новый документ программно?

> Kostt
Или воспользуйся советом VahTang (хотя это может повлечь другие ошибки и сложности) или помни, что appContextNewDocument и appContextOpenDocument должны вызваться из контекста приложения, и поэтому необходимо воспользоваться методом executeInApplicationContext.
Пример использования смотри в samples\editor\docman\docman.cpp

Re: Как открыть новый документ программно?

Спасибо, так и сделал, работает. Теперь проблема в том что мой модальный диалог отдает фокус ввода новому чертежу...

Re: Как открыть новый документ программно?

> Kostt
Так верни его. :)

Re: Как открыть новый документ программно?

Действительно :), кстати после этого мой модальный диалог начинает вести себя на 100% как немодальный, что мне только на руку