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)
: このイベントは、グラフ要素が配置された後に発生します。