6ff86822e694454cdcf75a9fc787ecfb1c1cff60
[debian/openrocket] / src / net / sf / openrocket / gui / components / DoubleCellEditor.java
1 package net.sf.openrocket.gui.components;
2
3 import java.awt.Component;
4
5 import javax.swing.AbstractCellEditor;
6 import javax.swing.JSpinner;
7 import javax.swing.JTable;
8 import javax.swing.table.TableCellEditor;
9
10 import net.sf.openrocket.gui.SpinnerEditor;
11 import net.sf.openrocket.gui.adaptors.DoubleModel;
12
13 public class DoubleCellEditor extends AbstractCellEditor implements TableCellEditor {
14         
15         private final JSpinner editor;
16         private final DoubleModel model;
17         
18         public DoubleCellEditor() {
19                 model = new DoubleModel(0);
20                 editor = new JSpinner(model.getSpinnerModel());
21                 editor.setEditor(new SpinnerEditor(editor));
22                 //              editor.addChangeListener(this);
23         }
24         
25         
26         @Override
27         public Component getTableCellEditorComponent(JTable table, Object value,
28                         boolean isSelected, int row, int column) {
29                 
30                 double val = (Double) value;
31                 model.setValue(val);
32                 
33                 return editor;
34         }
35         
36         
37         @Override
38         public Object getCellEditorValue() {
39                 return model.getValue();
40         }
41         
42 }