Preset dialog
[debian/openrocket] / core / src / net / sf / openrocket / gui / dialogs / preset / ComponentPresetChooserDialog.java
index 23640217d042168fb22718f501928ffffa53f68f..027e1c29bb292041d45a32f5504e01cac9012375 100644 (file)
@@ -5,6 +5,7 @@ import java.awt.Dialog;
 import java.awt.Window;
 import java.awt.event.ActionEvent;
 import java.awt.event.ActionListener;
+import java.util.List;
 
 import javax.swing.JButton;
 import javax.swing.JDialog;
@@ -14,26 +15,66 @@ import net.miginfocom.swing.MigLayout;
 import net.sf.openrocket.gui.util.GUIUtil;
 import net.sf.openrocket.l10n.Translator;
 import net.sf.openrocket.preset.ComponentPreset;
+import net.sf.openrocket.preset.TypedKey;
+import net.sf.openrocket.rocketcomponent.RocketComponent;
 import net.sf.openrocket.startup.Application;
 
 public class ComponentPresetChooserDialog extends JDialog {
        
-//     private final ThrustCurveMotorSelectionPanel selectionPanel;
+       private static final Translator trans = Application.getTranslator();
+       
+       //      private final ThrustCurveMotorSelectionPanel selectionPanel;
+       
+       private final RocketComponent component;
+       private final List<ComponentPreset> presets;
        
        private boolean okClicked = false;
-       private static final Translator trans = Application.getTranslator();
-
        
-       public ComponentPresetChooserDialog(Window owner) {
-               super(owner, trans.get("CompPresetChooser.title"), Dialog.ModalityType.APPLICATION_MODAL);
+       
+       public ComponentPresetChooserDialog(Window owner, RocketComponent component, TypedKey<?>... columnKeys) {
+               super(owner, trans.get("title"), Dialog.ModalityType.APPLICATION_MODAL);
+               
+               this.component = component;
+               
+               // FIXME: Make generic for component type
+               presets = Application.getDaos().getBodyTubePresetDao().listAll();
+               
+               
+               
                
                JPanel panel = new JPanel(new MigLayout("fill"));
                
-               //selectionPanel = new ThrustCurveMotorSelectionPanel((ThrustCurveMotor) current, delay, diameter);
+               /*
+               Column[] columns = new Column[columnKeys.length];
+               
+               for (int i = 0; i < columnKeys.length; i++) {
+                       final TypedKey<?> key = columnKeys[i];
+                       columns[i] = new Column(trans.get("table.column." + columnKeys[i].getName())) {
+                               @Override
+                               public Object getValueAt(int row) {
+                                       if (key.getType() == Double.class && key.getUnitGroup() != null) {
+                                               return new Value(, null);
+                                       }
+                                       
+                                       
+                                       // TODO Auto-generated method stub
+                                       return null;
+                               }
+                       };
+               }
+               
+               ColumnTableModel tableModel = new ColumnTableModel(columns) {
+                       @Override
+                       public int getRowCount() {
+                               // FIXME Auto-generated method stub
+                               return 0;
+                       }
+               }
+               */
+               
+               
                
-               //panel.add(selectionPanel, "grow, wrap para");
                
-
                // OK / Cancel buttons
                JButton okButton = new JButton(trans.get("dlg.but.ok"));
                okButton.addActionListener(new ActionListener() {
@@ -70,7 +111,6 @@ public class ComponentPresetChooserDialog extends JDialog {
                //selectionPanel.setCloseableDialog(this);
        }
        
-       
        /**
         * Return the motor selected by this chooser dialog, or <code>null</code> if the selection has been aborted.
         *