01: /*
02: * Copyright 2006-2007 Pentaho Corporation. All rights reserved.
03: * This software was developed by Pentaho Corporation and is provided under the terms
04: * of the Mozilla Public License, Version 1.1, or any later version. You may not use
05: * this file except in compliance with the license. If you need a copy of the license,
06: * please go to http://www.mozilla.org/MPL/MPL-1.1.txt.
07: *
08: * Software distributed under the Mozilla Public License is distributed on an "AS IS"
09: * basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. Please refer to
10: * the license for the specific language governing your rights and limitations.
11: *
12: * Additional Contributor(s): Martin Schmid gridvision engineering GmbH
13: */
14: package org.pentaho.reportdesigner.crm.report.model;
15:
16: import org.jetbrains.annotations.NotNull;
17: import org.jetbrains.annotations.Nullable;
18:
19: import java.awt.*;
20:
21: /**
22: * User: Martin
23: * Date: 02.06.2006
24: * Time: 10:19:10
25: */
26: //perhaps inherit the other way or let borderdefinition use 4 linedefinitions or something like that.
27: public class LineDefinition extends BorderDefinition {
28: public LineDefinition() {
29: }
30:
31: public LineDefinition(double borderWidth) {
32: super (borderWidth);
33: }
34:
35: public LineDefinition(@NotNull
36: BasicStroke basicStroke) {
37: super (basicStroke);
38: }
39:
40: public LineDefinition(@NotNull
41: Color borderColor, @NotNull
42: BasicStroke basicStroke) {
43: super (borderColor, basicStroke);
44: }
45:
46: public LineDefinition(@NotNull
47: Color borderColor, double borderWidth, int join, int cap,
48: double miterlimit, @Nullable
49: double[] dash, double dashPhase) {
50: super (borderColor, borderWidth, join, cap, miterlimit, dash,
51: dashPhase);
52: }
53:
54: @NotNull
55: public LineDefinition derive(double width) {
56: return new LineDefinition(getColor(), width, getJoin(),
57: getCap(), getMiterlimit(), getDash(), getDashPhase());
58: }
59:
60: @NotNull
61: public LineDefinition derive(@NotNull
62: Color color) {
63: return new LineDefinition(color, getWidth(), getJoin(),
64: getCap(), getMiterlimit(), getDash(), getDashPhase());
65: }
66:
67: }
|