warnings
[sw/motorsim] / gui / com / billkuker / rocketry / motorsim / visual / workbench / MotorEditor.java
index dcea55419256d73a2e2f31312f6e068f0270c13a..ce404b694aa394564b8be0b72e591419305cb5be 100644 (file)
@@ -11,6 +11,7 @@ import java.beans.PropertyChangeListener;
 import java.beans.PropertyVetoException;\r
 import java.io.IOException;\r
 import java.util.HashMap;\r
+import java.util.List;\r
 import java.util.Map;\r
 import java.util.Vector;\r
 \r
@@ -79,16 +80,23 @@ public class MotorEditor extends JTabbedPane implements PropertyChangeListener {
        private static final int GRAIN_TAB = 1;\r
        private static final int BURN_TAB = 2;\r
 \r
-       @SuppressWarnings("unchecked")\r
-       private Class[] grainTypes = { CoredCylindricalGrain.class, Finocyl.class,\r
-                       Moonburner.class, RodAndTubeGrain.class, CSlot.class, EndBurner.class };\r
+       private List<Class<? extends Grain>> grainTypes = new Vector<Class<? extends Grain>>();\r
+       {\r
+               grainTypes.add(CoredCylindricalGrain.class);\r
+               grainTypes.add(Finocyl.class);\r
+               grainTypes.add(Moonburner.class);\r
+               grainTypes.add(RodAndTubeGrain.class);\r
+               grainTypes.add(CSlot.class);\r
+               grainTypes.add(EndBurner.class);\r
+       }\r
 \r
        private abstract class Chooser<T> extends JPanel {\r
                private static final long serialVersionUID = 1L;\r
-               private Class<? extends T>[] types;\r
+               private List<Class<? extends T>> types;\r
                private Map<Class<? extends T>, T> old = new HashMap<Class<? extends T>, T>();\r
 \r
-               public Chooser(T initial, Class<? extends T>... ts) {\r
+               @SuppressWarnings("unchecked")\r
+               public Chooser(T initial, List<Class<? extends T>> ts) {\r
                        types = ts;\r
                        if ( initial != null )\r
                                old.put((Class<? extends T>)initial.getClass(), initial);\r
@@ -275,16 +283,19 @@ public class MotorEditor extends JTabbedPane implements PropertyChangeListener {
                                }\r
                        });\r
                        nameAndFuel.add(new JLabel("Fuel:"));\r
-                       nameAndFuel.add( new JComboBox(availableFuels){{\r
-                               setMinimumSize(new Dimension(200, 20));\r
-                               setMaximumSize(new Dimension(Short.MAX_VALUE, 20));\r
-                               addActionListener(new ActionListener(){\r
-                                       @Override\r
-                                       public void actionPerformed(ActionEvent e) {\r
-                                               motor.setFuel((Fuel)getSelectedItem());\r
-                                               System.out.println("FUEL CHANGED");\r
-                                       }});\r
-                       }});\r
+                       nameAndFuel.add( new JComboBox(availableFuels){\r
+                               private static final long serialVersionUID = 1L;\r
+                               {\r
+                                       setMinimumSize(new Dimension(200, 20));\r
+                                       setMaximumSize(new Dimension(Short.MAX_VALUE, 20));\r
+                                       addActionListener(new ActionListener(){\r
+                                               @Override\r
+                                               public void actionPerformed(ActionEvent e) {\r
+                                                       motor.setFuel((Fuel)getSelectedItem());\r
+                                                       System.out.println("FUEL CHANGED");\r
+                                               }});\r
+                               }\r
+                       });\r
                        nameAndFuel.add(Box.createVerticalGlue());\r
                        parts.add(nameAndFuel);\r
                        \r
@@ -353,7 +364,6 @@ public class MotorEditor extends JTabbedPane implements PropertyChangeListener {
                add(bt = new BurnTab(), BURN_TAB);\r
        }\r
 \r
-       @Deprecated\r
        public static Motor defaultMotor() {\r
                Motor m = new Motor();\r
                m.setName("Example Motor");\r