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

       

Менеджер точки ввода


ObjectARX обеспечивает  менеджера ввода точки классом, AcEdInputPointManager.

Один входной менеджер точки инициализирован для каждого активного документа в AutoCAD.

Следующая функция возвращает входного менеджера точки для документа:

virtual AcEdInputPointManager *

AcApDocument::inputPointManager() const;

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

AcEdInputPointManager обеспечивает функцию, disableSystemCursorGraphics(), который отключает курсор системы.

ObjectARX поддерживает индекс,  вызывает, чтобы отключить курсор системы для каждого документа, так, если ваше приложение вызывает disableSystemCursorGraphics() множественные времена, это должно вызвать enableSystemCursorGraphics() то же самое число раз, чтобы восстановить курсор системы.

ПРЕДУПРЕЖДЕНИЕ! Отключение графики курсора системы должно быть сделано экономно, обычно только, когда определенная приложением команда запрашивает ввод пользователя.

Вы должны обеспечить заказную графику курсора, если Вы отключаете графику курсора системы.

Функция disableSystemCursorGraphics () отключает курсор системы только, когда входной монитор точки или фильтр обеспечивают его собственный курсор. Это означает, что при нормальных условиях (принудительный выбор примитива выключен), курсор системы заблокирован только в течение приобретения точки и выбора примитива.

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

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

Принудительный выбор примитива можно позволять при следующих условиях:

§         в течение входного приобретения точки без активного режима объектной привязки

§         в течение выбора отдельного примитива точки

§         в течение неподвижности команды

Наконец, входной менеджер точки содержит функцию, mouseHasMoved(), те входные фильтры точки, и мониторы могут вызывать, чтобы определить, имеется ли другая задержка события цифрового преобразователя. Если имеется задержка события цифрового преобразователя, фильтр, или монитор должен возвратиться от его повторного вызова как можно скорее, без того, чтобы делать любые дальнейшие вычисления, избегать курсора задержки.



Содержание раздела