ObjectARX, AutoCAD. Среда программирования библиотеки C++




Доступ к текущему документу и связанным с ним объектам


Ключ вызывает ObjectARX-приложение, должен делать, когда это извлекает пользу, контроль должен выяснить текущий документ, который может быть выполнен с функцией acDocManager->curDocument().

ОБРАТИТЕ ВНИМАНИЕ, что  текущий документ - не всегда активный документ. Дело обстоит так в течение переходных состояний, типа того, когда documentToBeActivated () реактор происходит. Не делайте попытку обширной обработки в течение переходных состояний.

Рассмотрите использование mdiActiveDocument () если Вы заинтересованы активным документом.

Из текущего документа, Вы можете определять текущую базу данных, уместного операционного менеджера, и связанное определенное документом состояние вашего приложения, и затем делать любые потребности, которые будут сделаны перед возвращением.

Как только команда сохранила текущий документ и связала информацию относительно ее стека, не требоваться сделать запрос текущего документа снова до завершения. Всякий раз, когда подсказка для ввода пользователя сделана, пользователь может переключать документы, но если это сделано, текущая команда приостановлена, и ее состояние стека сохранено, пока документ не оживлен.

Если ваше приложение работает от прикладного контекста выполнения, это должно блокировать и разблокировать текущий документ, чтобы изменить что - нибудь связанное этим. Это может делать так,  непосредственно вызывая AcApDocManager::lockDocument () и unlockDocument () функцию члена.

Если ваше приложение работает от функции ObjectARX или AutoLISP, никакая блокировка не должна быть необходима, поскольку система устанавливает блокировки и удаляет их автоматически вокруг выражений AutoLISP и команд.




Содержание  Назад  Вперед