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;
21:
22: import java.awt.Color;
23: import java.awt.Graphics2D;
24: import java.awt.Paint;
25: import java.awt.RenderingHints;
26: import java.awt.Shape;
27: import org.netbeans.modules.bpel.design.geometry.FInsets;
28: import org.netbeans.modules.bpel.design.geometry.FRectangle;
29: import org.netbeans.modules.bpel.design.geometry.FShape;
30: import org.netbeans.modules.bpel.design.geometry.FStroke;
31:
32: /**
33: *
34: * @author anjeleevich
35: */
36: public class GroupBorder extends BorderElement {
37:
38: public GroupBorder() {
39: super (SHAPE, INSETS);
40: }
41:
42: public void paint(Graphics2D g2) {
43: g2.setRenderingHint(RenderingHints.KEY_STROKE_CONTROL,
44: RenderingHints.VALUE_STROKE_NORMALIZE);
45: g2.setPaint(STROKE_COLOR);
46:
47: g2.setStroke(STROKE.createStroke(g2));
48: g2.draw(getShape());
49:
50: if (isPaintText()) {
51: g2.setPaint(getTextColor());
52: drawString(g2, getText(), getX() + 6, getY() + 1,
53: getWidth() - 12);
54: }
55: }
56:
57: public void paintThumbnail(Graphics2D g2) {
58: g2.setRenderingHint(RenderingHints.KEY_STROKE_CONTROL,
59: RenderingHints.VALUE_STROKE_NORMALIZE);
60: g2.setPaint(STROKE_COLOR);
61:
62: g2.setStroke(STROKE.createSolidStroke(g2));
63: g2.draw(getShape());
64: }
65:
66: public static final FShape SHAPE = new FRectangle(32, 32, 10);
67: public static final FInsets INSETS = new FInsets(16, 16, 16, 16);
68:
69: private static final Paint STROKE_COLOR = new Color(0xE0E0E0);
70: private static FStroke STROKE = new FStroke(1, 3);
71: }
|