package com.horstmann.violet.workspace.editorpart.behavior; import java.awt.Graphics2D; import java.awt.event.MouseEvent; import java.awt.event.MouseWheelEvent; import java.awt.geom.Point2D; import java.beans.PropertyChangeEvent; import com.horstmann.violet.product.diagram.abstracts.IColorable; import com.horstmann.violet.product.diagram.abstracts.edge.IEdge; import com.horstmann.violet.product.diagram.abstracts.node.INode; import com.horstmann.violet.workspace.editorpart.IEditorPart; import com.horstmann.violet.workspace.sidebar.graphtools.GraphTool; public class SwingRepaintingBehavior implements IEditorPartBehavior { private IEditorPart editorPart; public SwingRepaintingBehavior(IEditorPart editorPart) { this.editorPart = editorPart; } @Override public void onToolSelected(GraphTool selectedTool) { //this.editorPart.getSwingComponent().repaint(); } @Override public void onMouseReleased(MouseEvent event) { //this.editorPart.getSwingComponent().repaint(); } @Override public void onMouseClicked(MouseEvent event) { this.editorPart.getSwingComponent().repaint(); } @Override public void onMousePressed(MouseEvent event) { //this.editorPart.getSwingComponent().repaint(); } @Override public void onMouseDragged(MouseEvent event) { //this.editorPart.getSwingComponent().repaint(); } @Override public void onMouseMoved(MouseEvent event) { // Nothing to do } @Override public void onMouseWheelMoved(MouseWheelEvent event) { // Nothing to do } @Override public void beforeRemovingSelectedElements() { // Nothing to do } @Override public void beforeEditingNode(INode node) { // nothing to do } @Override public void beforeEditingEdge(IEdge edge) { // nothing to do } @Override public void beforeAddingNodeAtPoint(INode node, Point2D location) { // nothing to do } @Override public void beforeAddingEdgeAtPoints(IEdge edge, Point2D startPoint, Point2D endPoint) { // nothing to do } @Override public void afterRemovingSelectedElements() { this.editorPart.getSwingComponent().invalidate(); this.editorPart.getSwingComponent().repaint(); } @Override public void afterEditingNode(INode node) { this.editorPart.getSwingComponent().invalidate(); this.editorPart.getSwingComponent().repaint(); } @Override public void afterEditingEdge(IEdge edge) { this.editorPart.getSwingComponent().invalidate(); this.editorPart.getSwingComponent().repaint(); } @Override public void afterAddingNodeAtPoint(INode node, Point2D location) { this.editorPart.getSwingComponent().invalidate(); this.editorPart.getSwingComponent().repaint(); } @Override public void afterAddingEdgeAtPoints(IEdge edge, Point2D startPoint, Point2D endPoint) { this.editorPart.getSwingComponent().invalidate(); this.editorPart.getSwingComponent().repaint(); } @Override public void onPaint(Graphics2D g2) { // nothing to do } @Override public void onEdgeSelected(IEdge edge) { this.editorPart.getSwingComponent().invalidate(); this.editorPart.getSwingComponent().repaint(); } @Override public void onNodeSelected(INode node) { this.editorPart.getSwingComponent().invalidate(); this.editorPart.getSwingComponent().repaint(); } @Override public void whileEditingEdge(IEdge edge, PropertyChangeEvent event) { this.editorPart.getSwingComponent().invalidate(); this.editorPart.getSwingComponent().repaint(); } @Override public void whileEditingNode(INode node, PropertyChangeEvent event) { this.editorPart.getSwingComponent().invalidate(); this.editorPart.getSwingComponent().repaint(); } @Override public void beforeChangingTransitionPointsOnEdge(IEdge edge) { // Nothing to do } @Override public void afterChangingTransitionPointsOnEdge(IEdge edge) { // Nothing to do } @Override public void beforeChangingColorOnElement(IColorable element) { // TODO Auto-generated method stub } @Override public void afterChangingColorOnElement(IColorable element) { // TODO Auto-generated method stub } }