追加ダイアグラム・イベント

Dijit フレームワークによって公開された各標準イベントについて、 Diagram ウィジェットは、イベントが発生するノードまたはリンクに関連して発生する 2 つの追加イベントを公開します。例えば、標準 Dijit onMouseDown(e) イベントは、2 つの他の Diagram ウィジェットと関連しています。
  • onLinkMouseDown(link,e)
  • onNodeMouseDown(node,e)
これらのイベントは、イベントがリンクまたはノードの境界内で発生した場合に起動され、イベント・ハンドラーはこの要素を最初のパラメーターとして受け取ります。
GFX 接続 API を使用して、各ノードまたはリンクに接続するオプションがあります。例えば、すべてのノードの onmousedown イベントに connect する必要がある場合、Diagram ウィジェットで単一の onNodeMouseDown への接続を実行することができます。
例えば、以下のコードは、ポインターがノードに入るとアラートを生成します。
dojo.connect(D,"onNodeMouseEnter",function(node,e) {
   alert("entered!);               
});
Dijit イベント ノード内の関連イベント リンク内の関連イベント
onContextMenu onNodeContextMenu onLinkContextMenu
onClick onNodeClick onLinkClick
onDblClick onNodeDblClick onLinkDblClick
onMouseUp onNodeMouseUp onLinkMouseUp
onMouseDown onNodeMouseDown onLinkMouseDown
onMouseMove onNodeMouseMove onLinkMouseMove
onMouseEnter onNodeMouseEnter onLinkMouseEnter
onMouseLeave onNodeMouseLeave onLinkMouseLeave
onMouseOver onNodeMouseOver onLinkMouseOver
onMouseOut onNodeMouseOut onLinkMouseOut
選択が変更されるたびに、通知イベントが発生し、onSelectionChanged([added],[removed]) メソッドが呼び出されます。 このメソッドにより、任意のカスタム関数を呼び出すことができます。 以下のコード引用では、Diagram ウィジェットが選択された要素の中央に配置されます。
dojo.connect(Diagram.getSelection(),"onSelectionChanged",this,function(added,removed){
                if(centerOnNode) {
                    if(added.length==1) {
                        Diagram.centerOnNode(added[0],true);
                    }
                }
            });
以下の追加通知イベントは、ダイアグラムの編集に使用できます。
  • beforeGraphElementDispose(graphElement): このイベントは、グラフ要素が配置される前に発生します。
  • afterGraphElementDispose(graphElement): このイベントは、グラフ要素が配置された後に発生します。