1.Command初始化:Agent、CATDialogState、Transition实现状态机
Agent:CATPathElementAgent可获取元素;CATIndicationAgent可实现鼠标单击双击行为。
CATDialogState状态机
AddTransition状态机跳转条件:IsLastModifiedAgentCondition只要Agent变化就触发,Action可不短响应Agent变化;IsOutputSetCondition只要Agent值变化一次,就完成该Action。
2.Command初始化:BuildGraph中使用AndCondition实现跳转逻辑
下面两个Transition,按照顺序来执行,若执行了第一个Action,就不执行第二个Action;若第一个Action没有执行,则执行第二个Action。下面两行代码可实现pFirState到【pChangeAnnotationDirState或pSecState】的逻辑操作。
第一个Transition: