-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathEnvironmentalPanel.java
More file actions
77 lines (68 loc) · 2.57 KB
/
Copy pathEnvironmentalPanel.java
File metadata and controls
77 lines (68 loc) · 2.57 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
import javax.swing.JPanel;
import javax.swing.JFrame;
import javax.swing.JTextField;
import javax.swing.JLabel;
import java.awt.Dimension;
import java.awt.BorderLayout;
import java.util.ArrayList;
public class EnvironmentalPanel extends JPanel
{
JFrame frame = new JFrame();
JTextField gVal = new JTextField(), gAng = new JTextField(), eVal = new JTextField(), eAng = new JTextField(), mVal = new JTextField(), mAng = new JTextField();
ArrayList<Double> curVal = new ArrayList<Double>();
ArrayList<Double> oldVal = new ArrayList<Double>();
public EnvironmentalPanel()
{
for(int i = 0; i < 6; i++)
curVal.add(0.0);
setLayout(new BorderLayout());
addField("Gravitational Field", BorderLayout.NORTH, "0", gVal, gAng);
addField("Electric Field ", BorderLayout.CENTER, "0", eVal, eAng);
addField("Magnetic Field ", BorderLayout.SOUTH, "0", mVal, mAng);
frame.add(this);
}
/**
* @return {gVal, gAng, eVal, eAng, mVal, mAng}
*/
public ArrayList<Double> getValues()
{
oldVal = curVal;
ArrayList<Double> vars = new ArrayList<Double>();
for(int i = 0; i < 6; i++) vars.add(0.0);
if(Variable.canBeDouble(gVal.getText()) && Variable.canBeDouble(gAng.getText()))
{
vars.set(0,Double.parseDouble(gVal.getText()));
vars.set(1,Double.parseDouble(gAng.getText()));
}
if(Variable.canBeDouble(eVal.getText()) && Variable.canBeDouble(eAng.getText()))
{
vars.set(2,Double.parseDouble(eVal.getText()));
vars.set(3,Double.parseDouble(eAng.getText()));
}
if(Variable.canBeDouble(mVal.getText()) && Variable.canBeDouble(mAng.getText()))
{
vars.set(4,Double.parseDouble(mVal.getText()));
vars.set(5,Double.parseDouble(mAng.getText()));
}
curVal = vars;
return vars;
}
public ArrayList<Double> getOldValues()
{
return oldVal;
}
public void addField(String name, String position, String defaultValue, JTextField v, JTextField a)
{
JPanel p = new JPanel();
JLabel l = new JLabel(name);
v.setPreferredSize(new Dimension(100,Container.height/24));
p.setPreferredSize(new Dimension(Container.width,Container.height/24));
p.setLayout(new BorderLayout());
p.add(l, BorderLayout.WEST);
p.add(v, BorderLayout.CENTER);
new GhostText(v, "Value");
p.add(a, BorderLayout.EAST);
new GhostText(a, "Angle");
add(p, position);
}
}