diff options
author | Tom Tromey <tromey@gcc.gnu.org> | 2003-09-20 21:30:39 +0000 |
---|---|---|
committer | Tom Tromey <tromey@gcc.gnu.org> | 2003-09-20 21:30:39 +0000 |
commit | a8cc9af35f01b8ce4347e31269ece9387cb31fea (patch) | |
tree | b2b121d5c114a37847fcac083bb47e28511c103d /libjava/java/awt/BasicStroke.java | |
parent | 21cf98f6e0308e8cbb6ef5e829e8452d2750d9bb (diff) | |
download | gcc-a8cc9af35f01b8ce4347e31269ece9387cb31fea.zip gcc-a8cc9af35f01b8ce4347e31269ece9387cb31fea.tar.gz gcc-a8cc9af35f01b8ce4347e31269ece9387cb31fea.tar.bz2 |
Component.java: Indentation cleanup from Classpath.
* java/awt/Component.java: Indentation cleanup from Classpath.
2003-09-20 Dalibor Topic <robilad@kaffe.org>
* java/awt/BasicStroke.java (BasicStroke): Fixed illegal argument
checking to follow 1.4.2 spec.
From-SVN: r71612
Diffstat (limited to 'libjava/java/awt/BasicStroke.java')
-rw-r--r-- | libjava/java/awt/BasicStroke.java | 44 |
1 files changed, 36 insertions, 8 deletions
diff --git a/libjava/java/awt/BasicStroke.java b/libjava/java/awt/BasicStroke.java index 3d0a2e7..2978c64 100644 --- a/libjava/java/awt/BasicStroke.java +++ b/libjava/java/awt/BasicStroke.java @@ -67,7 +67,8 @@ public class BasicStroke implements Stroke * @param join May be either JOIN_ROUND, JOIN_BEVEL, or JOIN_MITER. * @param miterlimit the limit to trim the miter join. The miterlimit must be * greater than or equal to 1.0f. - * @param dash The array representing the dashing pattern. + * @param dash The array representing the dashing pattern. There must be at + * least one non-zero entry. * @param dash_phase is negative and dash is not null. * * @exception IllegalArgumentException If one input parameter doesn't meet @@ -76,13 +77,40 @@ public class BasicStroke implements Stroke public BasicStroke(float width, int cap, int join, float miterlimit, float[] dash, float dashPhase) { - if (width < 0 || - miterlimit < 1.0f || - cap < CAP_BUTT || - cap > CAP_SQUARE || - join < JOIN_MITER || - join > JOIN_BEVEL) - throw new IllegalArgumentException(); + if (width < 0.0f ) + throw new IllegalArgumentException("width " + width + " < 0"); + else if (cap < CAP_BUTT || cap > CAP_SQUARE) + throw new IllegalArgumentException("cap " + cap + " out of range [" + + CAP_BUTT + ".." + CAP_SQUARE + "]"); + else if (miterlimit < 1.0f && join == JOIN_MITER) + throw new IllegalArgumentException("miterlimit " + miterlimit + + " < 1.0f while join == JOIN_MITER"); + else if (join < JOIN_MITER || join > JOIN_BEVEL) + throw new IllegalArgumentException("join " + join + " out of range [" + + JOIN_MITER + ".." + JOIN_BEVEL + + "]"); + else if (dashPhase < 0.0f && dash != null) + throw new IllegalArgumentException("dashPhase " + dashPhase + + " < 0.0f while dash != null"); + else if (dash != null) + if (dash.length == 0) + throw new IllegalArgumentException("dash.length is 0"); + else + { + boolean allZero = true; + + for ( int i = 0; i < dash.length; ++i) + { + if (dash[i] != 0.0f) + { + allZero = false; + break; + } + } + + if (allZero) + throw new IllegalArgumentException("all dashes are 0.0f"); + } this.width = width; this.cap = cap; |