package com.horstmann.violet.workspace.editorpart.behavior; import java.awt.event.MouseEvent; import java.awt.geom.Point2D; import com.horstmann.violet.framework.file.IGraphFile; import com.horstmann.violet.product.diagram.abstracts.edge.IEdge; import com.horstmann.violet.product.diagram.abstracts.node.INode; public class FileCouldBeSavedBehavior extends AbstractEditorPartBehavior { public FileCouldBeSavedBehavior(IGraphFile graphFile) { this.graphFile = graphFile; } @Override public void afterAddingEdgeAtPoints(IEdge edge, Point2D startPoint, Point2D endPoint) { graphFile.setSaveRequired(); } @Override public void afterAddingNodeAtPoint(INode node, Point2D location) { graphFile.setSaveRequired(); } @Override public void afterEditingEdge(IEdge edge) { graphFile.setSaveRequired(); } @Override public void afterEditingNode(INode node) { graphFile.setSaveRequired(); } @Override public void afterRemovingSelectedElements() { graphFile.setSaveRequired(); } @Override public void onMouseDragged(MouseEvent event) { graphFile.setSaveRequired(); // FIXME : when behaviorHandler will manage new events such as onNodeDragged } private IGraphFile graphFile; }