001 // GraphLab Project: http://graphlab.sharif.edu 002 // Copyright (C) 2008 Mathematical Science Department of Sharif University of Technology 003 // Distributed under the terms of the GNU General Public License (GPL): http://www.gnu.org/licenses/ 004 package graphlab.plugins.algorithmanimator.core.atoms; 005 006 import graphlab.graph.graph.EdgeModel; 007 import graphlab.graph.graph.VertexModel; 008 import graphlab.library.event.Event; 009 import graphlab.library.event.VertexEdgeLabelEvent; 010 import graphlab.platform.core.BlackBoard; 011 import graphlab.plugins.algorithmanimator.core.AtomAnimator; 012 013 /** 014 * this class not used, because the colors automatically update in VertexModel and EdgeModel 015 * 016 * @author Azin Azadi 017 */ 018 public class VertexEdgeLabelAnimator implements AtomAnimator<VertexEdgeLabelEvent<VertexModel, EdgeModel>> { 019 020 public boolean isAnimatable(Event event) { 021 return event instanceof VertexEdgeLabelEvent; 022 } 023 024 public VertexEdgeLabelEvent<VertexModel, EdgeModel> animate(VertexEdgeLabelEvent<VertexModel, EdgeModel> event, BlackBoard b) { 025 if (event.v != null) event.v.setLabel(event.label); 026 if (event.e != null) { 027 event.e.setLabel(event.label); 028 } 029 return event; 030 } 031 032 } 033 034 // public EdgeEvent<? extends BaseVertex,? extends EdgeModel> animate(EdgeEvent<? extends BaseVertex,? extends EdgeModel> event, blackboard b) { 035 // Edge e = ((EdgeModel)event.edge).edge; 036 // e.view.setRGBColor(Color.black); 037 // return event; 038 // }