リスナーを使用したダイアグラムへのインタラクターの接続

Designer では、ノード内における push_state インタラクターの状況を Designer のプロパティーに渡すことができます。 これを行う方法については、『Designer の使用』の「定義済みインタラクターのパラメーターへのリンク」を参照してください。 アプリケーションの振る舞いをカスタマイズするには、Java™ リスナーを使用して、ノードがクリックされたときにアプリケーション内でカスタム振る舞いが引き起こされるようにします。 次のコード・サンプルはその方法を示しています。
ダイアグラム・プロパティー値の変化に従うリスナー
/**
 * Listener for user  interaction. Assume that in the style sheet 
 * there is a
 * mapping:
 *   push_state : "@state";
 */
public class ModelListener implements SDMPropertyChangeListener {
 /*
 * @see ilog.views.sdm.event.SDMPropertyChangeListener#propertyChanged( 
 *          ilog.views.sdm.event.SDMPropertyChangeEvent)
 */
 public void propertyChanged(SDMPropertyChangeEvent event) {
   String propertyName = event.getPropertyName();
   Object target = event.getObject();
   String value = event.getNewValue().toString();

   if ("state".equals(propertyName)) {
      // push interactor has modified the model
      // invoke callback
      performSomeAction(target, value);
   }
 }
}

...

//Usage:
   IlvDiagrammer diag;
   diag = new IlvDiagrammer();
   diag.getEngine().getModel().addSDMPropertyChangeListener(new
          ModelListener());