import com.billkuker.rocketry.motorsim.fuel.KNSU;\r
import com.billkuker.rocketry.motorsim.grain.CoredCylindricalGrain;\r
import com.billkuker.rocketry.motorsim.grain.MultiGrain;\r
+import com.billkuker.rocketry.motorsim.grain.RotatedShapeGrain;\r
import com.billkuker.rocketry.motorsim.io.MotorIO;\r
\r
public class CrappyEditor extends JFrame {\r
- JTabbedPane tabs;\r
- JPanel editor;\r
- //JTextArea text = new JTextArea();\r
- RSyntaxTextArea text;\r
- public CrappyEditor(){\r
+ JTabbedPane tabs = new JTabbedPane();\r
+\r
+ public CrappyEditor() {\r
+ setTitle("MotorSim v0.2");\r
+ setSize(1024, 768);\r
setDefaultCloseOperation(DISPOSE_ON_CLOSE);\r
+ setContentPane(tabs);\r
+\r
try {\r
UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());\r
} catch (Exception e1) {\r
e1.printStackTrace();\r
}\r
\r
- tabs = new JTabbedPane();\r
- editor = new JPanel();\r
- text = new RSyntaxTextArea();\r
- \r
- setTitle("MotorSim v0.1");\r
- setSize(1024, 768);\r
- \r
- setContentPane(tabs);\r
- \r
- text.setSyntaxEditingStyle(SyntaxConstants.SYNTAX_STYLE_XML);\r
- \r
- try {\r
- text.setText(MotorIO.writeMotor(defaultMotor()));\r
- } catch (IOException e) {\r
- e.printStackTrace();\r
- }\r
- \r
- editor.setLayout(new BorderLayout());\r
- editor.add(text, BorderLayout.CENTER);\r
- JPanel buttons = new JPanel(new FlowLayout());\r
- \r
- buttons.add(new JButton("Burn!"){\r
- {\r
- addActionListener(new ActionListener(){\r
- public void actionPerformed(ActionEvent arg0) {\r
- burn();\r
- }\r
- });\r
- }\r
- });\r
- \r
- {\r
+ tabs.addTab("Edit", new Editor(defaultMotor()));\r
+\r
+ }\r
+\r
+ private class Editor extends JPanel {\r
+ RSyntaxTextArea text = new RSyntaxTextArea();\r
+\r
+ Editor(Motor m) {\r
+ setLayout(new BorderLayout());\r
+ add(text, BorderLayout.CENTER);\r
+ JPanel buttons = new JPanel(new FlowLayout());\r
+ buttons.add(new JButton("Burn!") {\r
+ {\r
+ addActionListener(new ActionListener() {\r
+ public void actionPerformed(ActionEvent arg0) {\r
+ burn();\r
+ }\r
+ });\r
+ }\r
+ });\r
JRadioButton s, n;\r
buttons.add(s = new JRadioButton("SI"));\r
buttons.add(n = new JRadioButton("NonSI"));\r
g.add(s);\r
g.add(n);\r
s.setSelected(true);\r
- s.addActionListener(new ActionListener(){\r
+ s.addActionListener(new ActionListener() {\r
public void actionPerformed(ActionEvent arg0) {\r
- UnitPreference.preference = UnitPreference.SI; \r
+ UnitPreference.preference = UnitPreference.SI;\r
}\r
});\r
- n.addActionListener(new ActionListener(){\r
+ n.addActionListener(new ActionListener() {\r
public void actionPerformed(ActionEvent arg0) {\r
- UnitPreference.preference = UnitPreference.NONSI; \r
+ UnitPreference.preference = UnitPreference.NONSI;\r
}\r
});\r
+ add(buttons, BorderLayout.SOUTH);\r
+ text.setSyntaxEditingStyle(SyntaxConstants.SYNTAX_STYLE_XML);\r
+\r
+ try {\r
+ text.setText(MotorIO.writeMotor(m));\r
+ } catch (IOException e) {\r
+ e.printStackTrace();\r
+ }\r
+\r
+ }\r
+\r
+ private void burn() {\r
+ try {\r
+ Motor m = MotorIO.readMotor(text.getText());\r
+ Burn b = new Burn(m);\r
+ tabs.addTab(m.getName() + " Output", new BurnPanel(b));\r
+ } catch (IOException e) {\r
+ e.printStackTrace();\r
+ }\r
}\r
- \r
- editor.add(buttons, BorderLayout.SOUTH);\r
- \r
- tabs.addTab("Edit", editor);\r
- \r
- \r
}\r
- \r
- private Motor defaultMotor(){\r
+\r
+ private Motor defaultMotor() {\r
Motor m = new Motor();\r
m.setName("PVC9");\r
m.setFuel(new KNSU());\r
n.setExitDiameter(Amount.valueOf(13.79, SI.MILLIMETER));\r
n.setEfficiency(.85);\r
m.setNozzle(n);\r
- \r
+\r
return m;\r
}\r
- \r
- private void burn(){\r
- try {\r
- Motor m = MotorIO.readMotor(text.getText());\r
- Burn b = new Burn(m);\r
- tabs.addTab(m.getName() + " Output", new BurnPanel(b));\r
- } catch (IOException e) {\r
- e.printStackTrace();\r
- }\r
- }\r
- \r
- public static void main(String args[]){\r
+\r
+ public static void main(String args[]) {\r
new CrappyEditor().show();\r
}\r
}\r