明经通道 Visual LISP 函数  
vlr-docmanager-reactor
 

构造反应器对象,通知与图形文档相关的事件

(vlr-docmanager-reactor data callbacks)

参数

data

任何要与反应器对象相关联的 AutoLISP 数据。如果没有数据则为 nil。

callbacks

表,其中包含下列格式的点对:

(event-name . callback_function)

在这里,event-name 是下表 “DocManager 反应器事件”中的符号之一,callback_function 为符号,代表事件发生时要调用的函数。每个回调函数都接受如下两个参数:

reactor_object 调用回调函数的 VLR 对象

list 与特定事件相关联的其他数据元素。该表针对特定事件的内容见表“DocManager 反应器回调数据”。

返回值

reactor_object 参数。

DocManager 反应器事件

事件名称 

说明

:vlr-documentCreated

创建新的图形文档(新建或打开)。

在更新文档结构时有用。

:vlr-documentToBeDestroyed

文档将被破坏。

:vlr-documentLockModeWillChange

命令即将开始或结束对文档中元素的修改,正在获取或释放文档锁定。

:vlr-documentLockModeChangeVetoed

反应器禁止从 :vlr-documentLockModeChanged 回调函数调用自己。

:vlr-documentLockModeChanged

文档锁定已被获取或释放。

:vlr-documentBecameCurrent

当前文档已被修改。

这并不意味着文档是活动的,因为对某些操作而言,修改当前文档是必要的。要获取用户输入,必须激活文档。

:vlr-documentToBeActivated

当前的非活动文档刚刚取得了活动信号,即将成为当前文档。

:vlr-documentToBeDeactivated

另一个窗口(在 AutoCAD 内部或外部)已被激活。

DocManager 反应器回调数据

名称 

表长度

参数

:vlr-documentCreated

:vlr-documentToBeDestroyed

:vlr-documentBecameCurrent

:vlr-documentToBeActivated

:vlr-documentToBeDeactivated

1

受影响的文档对象(VLA 对象)。

:vlr-documentLockModeChangeVetoed

2

第一个参数是受影响的文档对象(VLA 对象)。

第二个参数是传入的全局命令字符串。它用于锁定请求。如果回调是由于解锁请求而产生的,字符串将包含 # 前缀。

:vlr-documentLockModeWillChange

:vlr-documentLockModeChanged

5

第一个参数是受影响的文档对象(VLA 对象)。

第二个参数是整数,表明当前对文档对象有效的锁定。

第三个参数是整数,表明在应用锁定后将采用的锁定模式。

第四个参数是来自所有其他执行环境的最强的锁定模式。

第五个参数是传入的全局命令字符串。它用于锁定请求。如果回调是由于解锁请求而产生的,字符串将包含 # 前缀。

锁定模式可以为下列之一:

1-- 自动写锁定

2-- 未锁定

4-- 共享写

8-- 读

10-- 独占写

明经通道 版权所有 未经许可 不得传播

 评论