public void actionPerformed(ActionEvent evt) { if (_session != null) { ObjectTreeNode[] selectedNodes = _session.getSessionSheet().getObjectTreePanel().getSelectedNodes(); Positioner positioner = new Positioner(); GraphController toAddTo = null; for (int i = 0; i < selectedNodes.length; i++) { if (selectedNodes[i].getDatabaseObjectType() == DatabaseObjectType.TABLE) ; { if (null == toAddTo) { GraphController[] controllers = _plugin.getGraphControllers(_session); if (0 == controllers.length) { toAddTo = _plugin.createNewGraphControllerForSession(_session, false); } else { GraphSelectionDialogController dlg = new GraphSelectionDialogController( controllers, _session.getApplication().getMainFrame()); dlg.doModal(); if (false == dlg.isOK()) { return; } if (null == dlg.getSelectedController()) { toAddTo = _plugin.createNewGraphControllerForSession(_session, false); } else { toAddTo = dlg.getSelectedController(); } } } toAddTo.addTable(selectedNodes[i], positioner); } } } }
public void runFinish() { getFileHandler().refreshFolder(); getFileHandler().refreshAll(getSootSelection().getProject()); // for updating markers SootPlugin.getDefault().getManager().updateSootRanFlag(); final IEditorPart activeEdPart = SootPlugin.getDefault() .getWorkbench() .getActiveWorkbenchWindow() .getActivePage() .getActiveEditor(); SootPlugin.getDefault().getPartManager().updatePart(activeEdPart); // run cfgviewer if (getCfgList() != null) { // currently this is the call graph list of pkgs GraphGenerator generator = new GraphGenerator(); generator.setChildren(convertPkgList(getCfgList())); GraphPlugin.getDefault().setGenerator(generator); generator.run(null); } }