事件是BIMBase界面或者API在执行过程中特定时机触发的特定动作。通过注册事件,一个插件程序能在某个动作触发的前后得到通知,然后根据这个动作采取相应的行动。事件通常是成对的,其中一个在某个动作发生前触发,称为预备事件,另一个在某个动作发生后触发,称为事后事件。对于单独出现的事件,我们称之为单一事件。
BIMBase中事件较为丰富,能满足客户在特定场景下特定时机进行定制化处理。BIMBase提供了应用级别的事件包括工程(Project)事件、专业(Domain)事件、视图(View)事件、右键菜单事件、构件(Entity)事件、构件显示变化事件、命令事件等。
BIMBase中主要事件包括:
表6-1 事件列表
工程事件 (BPProjectEventListener) | 工程打开前事件 | _onPreOpen |
工程打开后事件 | _onPostOpen | |
工程关闭前事件 | _onPreClose | |
工程关闭后事件 | _onPostClose | |
工程保存前事件 | _onPreSave | |
构件选择事件(BPEntitySelectedEventListener) | 选择前通知事件 | onPreSelected |
选择后通知事件 | onPostSelected | |
选择集拦截事件 | onCaptureSelected | |
无构件选中单击事件 | onSelectedNothing | |
构件双击通知事件 | onDoubleClickEvent | |
被选择构件单击事件 | onClickEvent | |
构件反选事件 | onReverseSelected | |
框架事件 (BPMainFrameEventListener) | 框架创建后事件 | _onPostCreate |
框架关闭前事件 | _onPreClose | |
右键菜单事件 (BPViewRButtonClickListener) | 设置专业右键菜单事件 | _setMenu |
构件显隐事件 (BPHideEntitySetEventListener) | 构件隐藏前事件 | _onPreHide |
构件隐藏后事件 | _onPostHide | |
构件显示前事件 | _onPreShow | |
构件显示后事件 | _onPostShow | |
构件选择事件(BPEntitySelectedEventListener) | 选择前通知事件 | onPreSelected |
选择后通知事件 | onPostSelected | |
选择集拦截事件 | onCaptureSelected | |
无构件选中单击事件 | onSelectedNothing | |
构件双击通知事件 | onDoubleClickEvent | |
被选择构件单击事件 | onClickEvent | |
构件反选事件 | onReverseSelected | |
构件改变事件 (BPObjectChangeEventListener) | 新增构件前事件 | _onPreNew |
新增构件后事件 | _onPostNew | |
编辑构件前事件 | _onPreEdit | |
编辑构件后事件 | _onPostEdit | |
删除构件前事件 | _onPreDelete | |
被选择构件单击事件 | onClickEvent | |
菜单事件 (BPRibbonEventListener) | 切换专业前菜单更新事件 | onPreChangeDiscipline |
切换专业后菜单更新事件 | onPostChangeDiscipline | |
改变菜单前事件 | onPreChangeCategory | |
改变菜单后事件 | onPostChangeCategory | |
构件显示变化事件 (BPEntitySymbologyEventListener) | 构件显示变化事件 | _getOverrides |
命令事件 (BPCommandEventListener) | 命令事件 | onPreExeCommand |