public void valueChanged(ListSelectionEvent e) { int[] rows = startelementstable.getSelectedRows(); VElement[] elements = new VElement[rows.length]; for (int i = 0; i < rows.length; ++i) { elements[i] = modelcontainer.getGraph().getVisualElementById((String) startelementstable.getValueAt(rows[i], 1)); } modelcontainer.getGraph().getSelectionModel().removeListener(graphselectionlistener); modelcontainer.getGraph().setSelectionCells(elements); modelcontainer.getGraph().getSelectionModel().addListener(mxEvent.CHANGE, graphselectionlistener); } };
public void stateChanged(ChangeEvent e) { JTabbedPane tabpane = (JTabbedPane) e.getSource(); if (startelementsindex == tabpane.getSelectedIndex()) { modelcontainer.setEditMode(ModelContainer.EDIT_MODE_STEALTH_SELECTION); modelcontainer.getGraph().getSelectionModel().addListener(mxEvent.CHANGE, graphselectionlistener); wasstealth = true; } else { if (wasstealth) { wasstealth = false; modelcontainer.getGraph().clearSelection(); modelcontainer.getGraph().getSelectionModel().removeListener(graphselectionlistener); modelcontainer.setEditMode(ModelContainer.EDIT_MODE_SELECTION); } } terminateEditing(); } });
graph.getSelectionModel().addListener(mxEvent.CHANGE, new SelectionController(modelcontainer));
/** * Installs the listeners to update the handles after any changes. */ protected void addGraphListeners(mxGraph graph) { // LATER: Install change listener for graph model, selection model, view if (graph != null) { graph.getSelectionModel().addListener(mxEvent.CHANGE, refreshHandler); graph.getModel().addListener(mxEvent.CHANGE, refreshHandler); graph.getView().addListener(mxEvent.SCALE, refreshHandler); graph.getView().addListener(mxEvent.TRANSLATE, refreshHandler); graph.getView().addListener(mxEvent.SCALE_AND_TRANSLATE, refreshHandler); graph.getView().addListener(mxEvent.DOWN, refreshHandler); graph.getView().addListener(mxEvent.UP, refreshHandler); // Refreshes the handles if moveVertexLabels or moveEdgeLabels changes graph.addPropertyChangeListener(labelMoveHandler); } }
/** * Installs the listeners to update the handles after any changes. */ protected void addGraphListeners(mxGraph graph) { // LATER: Install change listener for graph model, selection model, view if (graph != null) { graph.getSelectionModel().addListener(mxEvent.CHANGE, refreshHandler); graph.getModel().addListener(mxEvent.CHANGE, refreshHandler); graph.getView().addListener(mxEvent.SCALE, refreshHandler); graph.getView().addListener(mxEvent.TRANSLATE, refreshHandler); graph.getView().addListener(mxEvent.SCALE_AND_TRANSLATE, refreshHandler); graph.getView().addListener(mxEvent.DOWN, refreshHandler); graph.getView().addListener(mxEvent.UP, refreshHandler); // Refreshes the handles if moveVertexLabels or moveEdgeLabels changes graph.addPropertyChangeListener(labelMoveHandler); } }
/** * Used to instantiate and configure the {@link JGraphXAdapter} that will be * used for display. */ private JGraphXAdapter createGraph() { gui.logger.setStatus( "Creating graph adapter." ); final JGraphXAdapter lGraph = new JGraphXAdapter( model ); lGraph.setAllowLoops( false ); lGraph.setAllowDanglingEdges( false ); lGraph.setCellsCloneable( false ); lGraph.setCellsSelectable( true ); lGraph.setCellsDisconnectable( false ); lGraph.setCellsMovable( true ); lGraph.setGridEnabled( false ); lGraph.setLabelsVisible( true ); lGraph.setDropEnabled( false ); // Cells removed from JGraphX lGraph.addListener( mxEvent.CELLS_REMOVED, new CellRemovalListener() ); // Cell selection change lGraph.getSelectionModel().addListener( mxEvent.CHANGE, new SelectionChangeListener() ); // Return graph return lGraph; }
/** * Used to instantiate and configure the {@link JGraphXAdapter} that will be * used for display. */ private JGraphXAdapter createGraph() { gui.logger.setStatus( "Creating graph adapter." ); final JGraphXAdapter lGraph = new JGraphXAdapter( model ); lGraph.setAllowLoops( false ); lGraph.setAllowDanglingEdges( false ); lGraph.setCellsCloneable( false ); lGraph.setCellsSelectable( true ); lGraph.setCellsDisconnectable( false ); lGraph.setCellsMovable( true ); lGraph.setGridEnabled( false ); lGraph.setLabelsVisible( true ); lGraph.setDropEnabled( false ); // Cells removed from JGraphX lGraph.addListener( mxEvent.CELLS_REMOVED, new CellRemovalListener() ); // Cell selection change lGraph.getSelectionModel().addListener( mxEvent.CHANGE, new SelectionChangeListener() ); // Return graph return lGraph; }