运行时注册
Overrule 由目标类和 overrule 对进行内部管理,这些目标类和 overrule 在运行时已注册和注销。 通过使用以下函数注册派生的 overrule 来激活目标类的 overrule:AcRxOverrule static ACDB_PORT Acad::ErrorStatus addOverrule( AcRxClass* pClass, AcRxOverrule* pOverrule, bool bAddAtLast = false ); 通过使用以下函数注销派生的覆盖规则来停用目标类的覆盖规则:AcRxOverrule static ACDB_PORT Acad::ErrorStatus removeOverrule( AcRxClass* pClass, AcRxOverrule* pOverrule ); 可以为目标类注册任意数量的规则。注册 overrule 时,可以指定是否将给定的 overrule-class 对添加到列表的末尾。addOverrule() 可以通过以下功能在应用程序范围内打开和关闭压倒机制:AcRxOverrule static ACDB_PORT void setIsOverruling( bool bIsOverruling ); 您可以使用以下 AcRxOverrule 函数确定是打开还是关闭覆盖机制: static ACDB_PORT bool isOverruling(); 您可以使用以下函数确定给定对象是否是已注册的 overrule 的目标: static ACDB_PORT bool hasOverrule( const AcRxObject* pSubject, AcRxClass* pOverruleClass ); 父主题: |
|Archiver|CAD开发者社区
( 苏ICP备2022047690号-1 )
GMT+8, 2024-6-27 16:18
Powered by Discuz! X3.4
Copyright © 2001-2021, Tencent Cloud.