// GraphTea Project: http://github.com/graphtheorysoftware/GraphTea // Copyright (C) 2012 Graph Theory Software Foundation: http://GraphTheorySoftware.com // Copyright (C) 2008 Mathematical Science Department of Sharif University of Technology // Distributed under the terms of the GNU General Public License (GPL): http://www.gnu.org/licenses/ package graphtea.plugins.main.core.actions.graph; import graphtea.graph.atributeset.GraphAttrSet; import graphtea.graph.graph.AbstractGraphRenderer; import graphtea.graph.graph.GraphModel; import graphtea.platform.core.BlackBoard; import graphtea.ui.UIUtils; import javax.swing.*; public class ClearGraph extends graphtea.platform.core.AbstractAction { public static final String event = UIUtils.getUIEventKey("Clear"); public ClearGraph(BlackBoard bb) { super(bb); this.listen4Event(event); } public void performAction(String eventName, Object value) { GraphModel g = ((GraphModel) (blackboard.getData(GraphAttrSet.name))); if (true || JOptionPane.showConfirmDialog(null, "Current graph will be REMOVED from screen! Do you want to continue?", "GraphTea", JOptionPane.YES_NO_OPTION, JOptionPane.WARNING_MESSAGE) == JOptionPane.YES_OPTION) { // UndoableActionOccuredData uaod=new UndoableActionOccuredData("Clear Graph", this) ; // uaod.properties.put("ClearedGrapg",g); // blackboard.set(UndoableActionOccuredData.name, uaod); destroyGraph(g); AbstractGraphRenderer agr = blackboard.getData(AbstractGraphRenderer.EVENT_KEY); agr.repaint(); } } public static void destroyGraph(GraphModel g) { g.clear(); } }