diff options
author | Steve <steveb9@u.washington.edu> | 2011-02-12 13:04:41 +0000 |
---|---|---|
committer | Steve <steveb9@u.washington.edu> | 2011-02-12 13:04:41 +0000 |
commit | 354a7aa455a016ac179d7f027014e6b9c2a2433a (patch) | |
tree | c49a6a3766341b02ee07a2f72f7f792973eb670c /src/tesseract/menuitems/TesseractMenuItem.java | |
parent | 5659cdbb139a1820b5739553fc331505852a3740 (diff) |
Added parameter box for adding objects. The chainlink is not implemented yet as its params are very different.
Diffstat (limited to 'src/tesseract/menuitems/TesseractMenuItem.java')
-rw-r--r-- | src/tesseract/menuitems/TesseractMenuItem.java | 146 |
1 files changed, 142 insertions, 4 deletions
diff --git a/src/tesseract/menuitems/TesseractMenuItem.java b/src/tesseract/menuitems/TesseractMenuItem.java index cd3bf03..606f487 100644 --- a/src/tesseract/menuitems/TesseractMenuItem.java +++ b/src/tesseract/menuitems/TesseractMenuItem.java @@ -1,12 +1,18 @@ package tesseract.menuitems; +import java.awt.Color; import java.awt.Dimension; +import java.awt.FlowLayout; import java.awt.Toolkit; +import java.awt.event.ActionEvent; import java.awt.event.ActionListener; +import javax.swing.JButton; import javax.swing.JCheckBox; import javax.swing.JFrame; +import javax.swing.JLabel; import javax.swing.JMenuItem; +import javax.swing.JTextField; import javax.vecmath.Vector3f; import tesseract.World; @@ -45,11 +51,46 @@ public abstract class TesseractMenuItem private JCheckBox my_default_button; /** - * A Parameter setting Jframe + * A Parameter setting JFrame */ private JFrame my_param_frame; /** + * A position. + */ + private Vector3f my_position; + + /** + * A radius field. + */ + private float my_radius; + + /** + * A mass field. + */ + private float my_mass; + + /** + * A position input. + */ + private JTextField my_position_input; + + /** + * A radius input. + */ + private JTextField my_radius_input; + + /** + * A mass input. + */ + private JTextField my_mass_input; + + /** + * The button that get all inputs for shape + */ + private JButton my_enter_button; + + /** * Constructor. * * @param theWorld The world in which to add. @@ -60,6 +101,10 @@ public abstract class TesseractMenuItem myWorld = theWorld; + my_position = new Vector3f(0,0,0); + my_radius = 0f; + my_mass = 1; + addActionListener(this); } @@ -80,15 +125,40 @@ public abstract class TesseractMenuItem } protected void createParameterMenu() { - my_param_frame= new JFrame("Parameters"); + + my_param_frame = new JFrame("Parameters"); + my_param_frame.setBackground(Color.GRAY); + my_param_frame.setLayout(new FlowLayout()); + Toolkit tk = Toolkit.getDefaultToolkit(); Dimension screenSize = tk.getScreenSize(); int screenHeight = screenSize.height; int screenWidth = screenSize.width; - my_param_frame.setSize(screenWidth / 2, screenHeight / 2); + my_param_frame.setSize(screenWidth / 4, screenHeight / 4); my_param_frame.setLocation(screenWidth / 4, screenHeight / 4); - my_default_button = new JCheckBox("Default Shape"); + + my_position_input = new JTextField(10); + my_radius_input = new JTextField(10); + my_mass_input = new JTextField(10); + + JLabel position_label = new JLabel("Enter Position: "); + JLabel radius_label = new JLabel("Enter Radius: "); + JLabel mass_label = new JLabel("Enter Mass: "); + + my_enter_button = new JButton("ENTER"); + + my_default_button = new JCheckBox("Default Shape "); + my_param_frame.add(my_default_button); + my_param_frame.add(position_label); + my_param_frame.add(my_position_input); + my_param_frame.add(radius_label); + my_param_frame.add(my_radius_input); + my_param_frame.add(mass_label); + my_param_frame.add(my_mass_input); + my_param_frame.add(my_enter_button); + + my_param_frame.setAlwaysOnTop(true); my_param_frame.pack(); my_param_frame.setVisible(isVisible()); @@ -101,6 +171,10 @@ public abstract class TesseractMenuItem protected JFrame getParamFrame() { return my_param_frame; } + + protected JButton getEnterButton() { + return my_enter_button; + } /** * @return the defaultRadius @@ -115,4 +189,68 @@ public abstract class TesseractMenuItem public static Vector3f getDefaultPosition() { return DEFAULT_POSITION; } + + /** + * @return the input position. + */ + public Vector3f getPosition() { + return my_position; + } + + /** + * @return the radius. + */ + public float getRadius() { + return my_radius; + } + + /** + * @return the mass. + */ + public float getMass() { + return my_mass; + } + + /** + * + * @param the_position the new position + */ + public void setPosition(final Vector3f the_position) { + my_position = the_position; + } + + /** + * @param the_radius float sets the radius. + */ + public void setRadius(final float the_radius) { + my_radius = the_radius; + } + + /** + * @param the_mass float sets the mass. + */ + public void setMass(final float the_mass) { + my_mass = the_mass; + } + + /** + * @return the input position input + */ + public JTextField getPositionField() { + return my_position_input; + } + + /** + * @return the radius input. + */ + public JTextField getRadiusField() { + return my_radius_input; + } + + /** + * @return the mass input. + */ + public JTextField getMassField() { + return my_mass_input; + } } |