From 6d8c74f97fe4289a984bdc6bd635c71653d5421c Mon Sep 17 00:00:00 2001 From: Andrew Branson Date: Tue, 26 Jun 2012 12:41:56 +0200 Subject: Refactored GUI into separate module --- .../instance/gui/view/WfDirectedEdgeRenderer.java | 130 --------------------- 1 file changed, 130 deletions(-) delete mode 100644 src/main/java/com/c2kernel/lifecycle/instance/gui/view/WfDirectedEdgeRenderer.java (limited to 'src/main/java/com/c2kernel/lifecycle/instance/gui/view/WfDirectedEdgeRenderer.java') diff --git a/src/main/java/com/c2kernel/lifecycle/instance/gui/view/WfDirectedEdgeRenderer.java b/src/main/java/com/c2kernel/lifecycle/instance/gui/view/WfDirectedEdgeRenderer.java deleted file mode 100644 index f39d9a6..0000000 --- a/src/main/java/com/c2kernel/lifecycle/instance/gui/view/WfDirectedEdgeRenderer.java +++ /dev/null @@ -1,130 +0,0 @@ -package com.c2kernel.lifecycle.instance.gui.view; -import java.awt.Color; -import java.awt.Graphics2D; -import java.awt.Shape; -import java.awt.geom.AffineTransform; -import java.awt.geom.GeneralPath; - -import com.c2kernel.graph.model.DirectedEdge; -import com.c2kernel.graph.model.GraphPoint; -import com.c2kernel.graph.view.DirectedEdgeRenderer; -import com.c2kernel.lifecycle.instance.Next; -public class WfDirectedEdgeRenderer implements DirectedEdgeRenderer -{ - private GeneralPath mArrowTemplate = new GeneralPath(); - public WfDirectedEdgeRenderer() - { - mArrowTemplate.moveTo(-5, 5); - mArrowTemplate.lineTo(0, 0); - mArrowTemplate.lineTo(5, 5); - } - @Override - public void draw(Graphics2D g2d, DirectedEdge directedEdge) - { - GraphPoint originPoint = directedEdge.getOriginPoint(); - GraphPoint terminusPoint = directedEdge.getTerminusPoint(); - GraphPoint midPoint = new GraphPoint(); - AffineTransform transform = new AffineTransform(); - Shape arrow = null; - Next next = (Next) directedEdge; - String text = (String) next.getProperties().get("Alias"); - g2d.setPaint(Color.black); - if (("Broken +".equals(next.getProperties().get("Type")))) - { - g2d.drawLine(originPoint.x, originPoint.y, originPoint.x, (originPoint.y + terminusPoint.y) / 2); - g2d.drawLine(originPoint.x, (originPoint.y + terminusPoint.y) / 2, terminusPoint.x, (originPoint.y + terminusPoint.y) / 2); - g2d.drawLine(terminusPoint.x, (originPoint.y + terminusPoint.y) / 2, terminusPoint.x, terminusPoint.y); - midPoint.x = (originPoint.x + terminusPoint.x) / 2; - midPoint.y = (originPoint.y + terminusPoint.y) / 2; - transform.translate(midPoint.x, midPoint.y); - transform.rotate( - calcArrowAngle( - originPoint.x, - originPoint.x - terminusPoint.x > -5 - && originPoint.x - terminusPoint.x < 5 ? originPoint.y : (originPoint.y + terminusPoint.y) / 2, - terminusPoint.x, - originPoint.x - terminusPoint.x > -5 - && originPoint.x - terminusPoint.x < 5 ? terminusPoint.y : (originPoint.y + terminusPoint.y) / 2)); - } - else if (("Broken -".equals(next.getProperties().get("Type")))) - { - g2d.drawLine(originPoint.x, originPoint.y, terminusPoint.x, originPoint.y); - g2d.drawLine(terminusPoint.x, originPoint.y, terminusPoint.x, terminusPoint.y); - boolean arrowOnY = !(originPoint.y - terminusPoint.y < 60 && originPoint.y - terminusPoint.y > -60); - midPoint.x = arrowOnY ? terminusPoint.x : (originPoint.x + terminusPoint.x) / 2; - midPoint.y = arrowOnY ? (originPoint.y + terminusPoint.y) / 2 : originPoint.y; - transform.translate(midPoint.x, midPoint.y); - transform.rotate( - calcArrowAngle( - arrowOnY ? terminusPoint.x : originPoint.x, - arrowOnY ? originPoint.y : originPoint.y, - arrowOnY ? terminusPoint.x : terminusPoint.x, - arrowOnY ? terminusPoint.y : originPoint.y)); - } - else if (("Broken |".equals(next.getProperties().get("Type")))) - { - g2d.drawLine(originPoint.x, originPoint.y, originPoint.x, terminusPoint.y); - g2d.drawLine(originPoint.x, terminusPoint.y, terminusPoint.x, terminusPoint.y); - boolean arrowOnY = !(originPoint.y - terminusPoint.y < 60 && originPoint.y - terminusPoint.y > -60); - midPoint.x = arrowOnY ? originPoint.x : (originPoint.x + terminusPoint.x) / 2; - midPoint.y = arrowOnY ? (originPoint.y + terminusPoint.y) / 2 : terminusPoint.y; - transform.translate(midPoint.x, midPoint.y); - transform.rotate( - calcArrowAngle( - arrowOnY ? terminusPoint.x : originPoint.x, - arrowOnY ? originPoint.y : originPoint.y, - arrowOnY ? terminusPoint.x : terminusPoint.x, - arrowOnY ? terminusPoint.y : originPoint.y)); - } - else - { - g2d.drawLine(originPoint.x, originPoint.y, terminusPoint.x, terminusPoint.y); - midPoint.x = originPoint.x + (terminusPoint.x - originPoint.x) / 2; - midPoint.y = originPoint.y + (terminusPoint.y - originPoint.y) / 2; - transform.translate(midPoint.x, midPoint.y); - transform.rotate(calcArrowAngle(originPoint.x, originPoint.y, terminusPoint.x, terminusPoint.y)); - } - arrow = mArrowTemplate.createTransformedShape(transform); - g2d.draw(arrow); - if (text != null) - g2d.drawString(text, midPoint.x + 10, midPoint.y); - } - private static double calcArrowAngle(int originX, int originY, int terminusX, int terminusY) - { - double width = terminusX - originX; - double height = terminusY - originY; - if ((width == 0) && (height > 0)) - { - return Math.PI; - } - if ((width == 0) && (height < 0)) - { - return 0; - } - if ((width > 0) && (height == 0)) - { - return Math.PI / 2.0; - } - if ((width < 0) && (height == 0)) - { - return -1.0 * Math.PI / 2.0; - } - if ((width > 0) && (height > 0)) - { - return Math.PI / 2.0 + Math.atan(Math.abs(height) / Math.abs(width)); - } - if ((width > 0) && (height < 0)) - { - return Math.atan(Math.abs(width) / Math.abs(height)); - } - if ((width < 0) && (height < 0)) - { - return -1.0 * Math.atan(Math.abs(width) / Math.abs(height)); - } - if ((width < 0) && (height > 0)) - { - return -1.0 * (Math.PI / 2.0 + Math.atan(Math.abs(height) / Math.abs(width))); - } - return 0.0; - } -} -- cgit v1.2.3