Search in sources :

Example 1 with PanControl

use of prefuse.controls.PanControl in project jo-client-platform by jo-source.

the class BeanRelationGraphImpl method initializeDisplayControlListener.

private void initializeDisplayControlListener() {
    display.addControlListener(new DragControl() {

        @Override
        public void itemDragged(final VisualItem item, final MouseEvent e) {
            if (layoutManager.getLabelEdgeLayout() != null) {
                layoutManager.getLabelEdgeLayout().run();
                super.itemDragged(item, e);
            }
        }

        @Override
        public void itemReleased(final VisualItem item, final MouseEvent e) {
            item.set("position", new Point((int) item.getX(), (int) item.getY()));
            super.itemReleased(item, e);
        }
    });
    display.addControlListener(new PanControl());
    display.addControlListener(new ZoomControl());
    display.addControlListener(new WheelZoomControl());
    display.addControlListener(new ZoomToFitControl());
    display.addControlListener(new NeighborHighlightControl());
    display.addControlListener(new FocusControl(NODES, 1) {

        @Override
        public void itemClicked(final VisualItem item, final MouseEvent e) {
            if (item.isInGroup(EDGES)) {
                return;
            }
            final int row = item.getRow();
            final Node node = graph.getNode(row);
            final double scale = display.getScale();
            if ((Boolean) item.get("isParent")) {
                if (item.get("expanded") == Expand.PARTIALLY) {
                    if (checkExpandIconHit(false, item, e, scale)) {
                        item.set("expanded", Expand.FULL);
                        loadModel(node, true);
                        runFilter();
                        return;
                    } else if (checkExpandIconHit(true, item, e, scale)) {
                        item.set("expanded", Expand.NOT);
                        loadModel(node, true);
                        runFilter();
                        return;
                    }
                } else if (item.get("expanded") == Expand.FULL || item.get("expanded") == Expand.NOT) {
                    if (checkExpandIconHit(false, item, e, scale)) {
                        loadModel(node, true);
                        runFilter();
                        return;
                    }
                }
            }
            if ((Boolean) node.get("marked")) {
                node.set("marked", false);
                markedNode = null;
            } else {
                node.set("marked", true);
                markedNode = (NodeItem) item;
            }
            vis.run("marked");
            runFilter();
            runLayout(true);
        }
    });
    final ToolTipControl ttc = new ToolTipControl("tooltip");
    display.addControlListener(ttc);
}
Also used : NeighborHighlightControl(prefuse.controls.NeighborHighlightControl) DragControl(prefuse.controls.DragControl) MouseEvent(java.awt.event.MouseEvent) FocusControl(prefuse.controls.FocusControl) Node(prefuse.data.Node) VisualItem(prefuse.visual.VisualItem) Point(java.awt.Point) ZoomToFitControl(prefuse.controls.ZoomToFitControl) ToolTipControl(prefuse.controls.ToolTipControl) WheelZoomControl(prefuse.controls.WheelZoomControl) ZoomControl(prefuse.controls.ZoomControl) PanControl(prefuse.controls.PanControl) NodeItem(prefuse.visual.NodeItem) WheelZoomControl(prefuse.controls.WheelZoomControl)

Aggregations

Point (java.awt.Point)1 MouseEvent (java.awt.event.MouseEvent)1 DragControl (prefuse.controls.DragControl)1 FocusControl (prefuse.controls.FocusControl)1 NeighborHighlightControl (prefuse.controls.NeighborHighlightControl)1 PanControl (prefuse.controls.PanControl)1 ToolTipControl (prefuse.controls.ToolTipControl)1 WheelZoomControl (prefuse.controls.WheelZoomControl)1 ZoomControl (prefuse.controls.ZoomControl)1 ZoomToFitControl (prefuse.controls.ZoomToFitControl)1 Node (prefuse.data.Node)1 NodeItem (prefuse.visual.NodeItem)1 VisualItem (prefuse.visual.VisualItem)1