edd562b3129354a8ed159e693df64c61aa1f39d0
[debian/openrocket] / src / net / sf / openrocket / util / LineStyle.java
1 package net.sf.openrocket.util;
2
3 import java.util.Arrays;
4
5 import net.sf.openrocket.l10n.Translator;
6 import net.sf.openrocket.startup.Application;
7
8 /**
9  * An enumeration of line styles.  The line styles are defined by an array of
10  * floats suitable for <code>BasicStroke</code>.
11  * 
12  * @author Sampo Niskanen <sampo.niskanen@iki.fi>
13  */
14
15 public enum LineStyle {
16         
17         //// Solid
18         SOLID("LineStyle.Solid",new float[] { 10f, 0f }),
19         //// Dashed
20         DASHED("LineStyle.Dashed",new float[] { 6f, 4f }),
21         //// Dotted
22         DOTTED("LineStyle.Dotted",new float[] { 2f, 3f }),
23         //// Dash-dotted
24         DASHDOT("LineStyle.Dash-dotted",new float[] { 8f, 3f, 2f, 3f})
25         ;
26         
27         private final String name;
28         private final float[] dashes;
29         
30         LineStyle(String name, float[] dashes) {
31         
32                 this.name = name;
33                 this.dashes = dashes;
34         }
35         public float[] getDashes() {
36                 return Arrays.copyOf(dashes, dashes.length);
37         }
38         @Override
39         public String toString() {
40                 final Translator trans = Application.getTranslator();
41                 return trans.get(name);
42         }
43 }