01: /*
02: * The contents of this file are subject to the terms of the Common Development
03: * and Distribution License (the License). You may not use this file except in
04: * compliance with the License.
05: *
06: * You can obtain a copy of the License at http://www.netbeans.org/cddl.html
07: * or http://www.netbeans.org/cddl.txt.
08: *
09: * When distributing Covered Code, include this CDDL Header Notice in each file
10: * and include the License file at http://www.netbeans.org/cddl.txt.
11: * If applicable, add the following below the CDDL Header, with the fields
12: * enclosed by brackets [] replaced by your own identifying information:
13: * "Portions Copyrighted [year] [name of copyright owner]"
14: *
15: * The Original Software is NetBeans. The Initial Developer of the Original
16: * Software is Sun Microsystems, Inc. Portions Copyright 1997-2007 Sun
17: * Microsystems, Inc. All Rights Reserved.
18: */
19:
20: package org.netbeans.modules.bpel.design.model.elements.icons;
21:
22: import java.awt.Graphics2D;
23: import java.awt.Shape;
24: import java.awt.geom.Area;
25: import java.awt.geom.GeneralPath;
26:
27: /**
28: *
29: * @author anjeleevich
30: */
31: public class XORIcon2D extends Icon2D {
32:
33: private XORIcon2D() {
34: }
35:
36: public void paint(Graphics2D g2) {
37: g2.setPaint(COLOR);
38: g2.fill(SHAPE);
39: }
40:
41: public static final Icon2D INSTANCE = new XORIcon2D();
42:
43: private static final Shape SHAPE;
44:
45: static {
46: float x1 = -9;
47: float x2 = 9;
48:
49: float y1 = -9.5f;
50: float y2 = +9.5f;
51:
52: GeneralPath gp;
53:
54: gp = new GeneralPath();
55: gp.moveTo(x1, y1);
56: gp.lineTo(x1 + 5, y1);
57: gp.lineTo(x2, y2);
58: gp.lineTo(x2 - 5, y2);
59: gp.closePath();
60:
61: Area a = new Area(gp);
62:
63: gp.reset();
64: gp.moveTo(x2 - 5, y1);
65: gp.lineTo(x2, y1);
66: gp.lineTo(x1 + 5, y2);
67: gp.lineTo(x1, y2);
68: gp.closePath();
69:
70: a.add(new Area(gp));
71:
72: SHAPE = new GeneralPath(a);
73: }
74: }
|