動作の定義

Display クラスのインスタンスを作成し、コンポーネントに追加する。

DragControl ドラッグできるようにする
FocusControl フォーカスできるようにする
HoverActionControl マウスが上空を通過したときにキャッチする
NeighborHighlightControl 隣のノードがキャッチする
PanControl 平行移動する
RotationControl 回転する
SubtreeDragControl サブツリーをドラッグするらしい
ToolTipControl ツールチップを表示できるようにする
WheelZoomControl マウスホイールでズームコントロール
ZoomControl 上下に右ドラッグしズームコントロール
ZoomingPanControl 右ドラッグでズームとパンを同時にコントロール
ZoomToFitControl 右ダブルクリックで画面内にオブジェクトを最大化する


Display display = new Display(m_vis);
    display.setSize(700,700);
    display.pan(350, 350);
    display.setForeground(Color.GRAY);
    display.setBackground(Color.WHITE);
 
    // main display controls
    display.addControlListener(new FocusControl(1));
    display.addControlListener(new DragControl());
    display.addControlListener(new PanControl());
    display.addControlListener(new ZoomControl());
    display.addControlListener(new WheelZoomControl());
    display.addControlListener(new ZoomToFitControl());
    display.addControlListener(new NeighborHighlightControl());
 
    add(display);
 

スーパークラスControlAdapterをオーバーライドして、より柔軟にすることもできる。
Control hoverc = new ControlAdapter() {
  public void itemEntered(VisualItem item, MouseEvent evt) {
    if (item.isInGroup(EDGES)) {
      System.out.println(item.toString()+evt.toString());
    }
  }
  public void itemExited(VisualItem item, MouseEvent evt) {
    if (item.isInGroup(EDGES)) {
      System.out.println(item.toString()+evt.toString());
    }
  }
};
display.addControlListener(hoverc);
 


最終更新:2009年02月06日 09:21