]> gerrit.simantics Code Review - simantics/district.git/blobdiff - org.simantics.district.imports.ui/src/org/simantics/district/imports/ui/CSVImportWizardPage.java
Hide "enabled" column for non-component type tech type tables
[simantics/district.git] / org.simantics.district.imports.ui / src / org / simantics / district / imports / ui / CSVImportWizardPage.java
index e1b81e0f10df3b6fad4729d26e77754c0460dd06..5db4581584e6110147a87173b0fa3bb0e6aca5bf 100644 (file)
@@ -6,6 +6,7 @@ import java.util.List;
 import java.util.Map;
 import java.util.Map.Entry;
 import java.util.Set;
+import java.util.function.Consumer;
 
 import org.apache.commons.csv.CSVRecord;
 import org.eclipse.jface.dialogs.IPageChangeProvider;
@@ -17,6 +18,8 @@ import org.eclipse.jface.viewers.ColumnWeightData;
 import org.eclipse.jface.wizard.IWizardContainer;
 import org.eclipse.jface.wizard.WizardPage;
 import org.eclipse.swt.SWT;
+import org.eclipse.swt.events.ModifyEvent;
+import org.eclipse.swt.events.ModifyListener;
 import org.eclipse.swt.events.SelectionAdapter;
 import org.eclipse.swt.events.SelectionEvent;
 import org.eclipse.swt.events.SelectionListener;
@@ -29,8 +32,10 @@ import org.eclipse.swt.widgets.Label;
 import org.eclipse.swt.widgets.Table;
 import org.eclipse.swt.widgets.TableColumn;
 import org.eclipse.swt.widgets.TableItem;
+import org.eclipse.swt.widgets.Text;
 import org.geotools.referencing.CRS;
-import org.simantics.district.imports.ui.controls.DynamicComboFieldEditor;
+import org.simantics.district.imports.CSVImportModel;
+import org.simantics.district.network.ui.DynamicComboFieldEditor;
 
 public class CSVImportWizardPage extends WizardPage {
 
@@ -48,12 +53,36 @@ public class CSVImportWizardPage extends WizardPage {
 
     // Common for vertex and edge
     private DynamicComboFieldEditor componentMappingSelector;
-    private DynamicComboFieldEditor labelSelector;
+    private DynamicComboFieldEditor idSelector;
     
     // For vertex import
     private DynamicComboFieldEditor xCoordSelector;
     private DynamicComboFieldEditor yCoordSelector;
     private DynamicComboFieldEditor zValueSelector;
+    private DynamicComboFieldEditor altElevationValueSelector;
+
+    private DynamicComboFieldEditor supplyTempValueSelector;
+    private DynamicComboFieldEditor returnTempValueSelector;
+    private DynamicComboFieldEditor supplyPressureValueSelector;
+    private DynamicComboFieldEditor returnPressureValueSelector;
+    private DynamicComboFieldEditor dpSelector;
+    private DynamicComboFieldEditor dtSelector;
+    private DynamicComboFieldEditor heatPowerSelector;
+    private DynamicComboFieldEditor peakPowerSelector;
+    private DynamicComboFieldEditor regionSelector;
+    private DynamicComboFieldEditor nominalHeadMSelector;
+    private DynamicComboFieldEditor nominalHeadBSelector;
+    private DynamicComboFieldEditor nominalFlowSelector;
+    private DynamicComboFieldEditor maximumHeadMSelector;
+    private DynamicComboFieldEditor heatLoadDsSelector;
+    private DynamicComboFieldEditor massFlowSelector;
+    private DynamicComboFieldEditor volFlowSelector;
+    private DynamicComboFieldEditor velocitySelector;
+    private DynamicComboFieldEditor flowAreaSelector;
+    private DynamicComboFieldEditor nominalPressureLossSelector;
+    private DynamicComboFieldEditor valvePositionSelector;
+    private DynamicComboFieldEditor addressSelector;
+    private DynamicComboFieldEditor lengthSelector;
 
     // For edge import
     private DynamicComboFieldEditor startXCoordSelector;
@@ -62,8 +91,16 @@ public class CSVImportWizardPage extends WizardPage {
     private DynamicComboFieldEditor endXCoordSelector;
     private DynamicComboFieldEditor endYCoordSelector;
     private DynamicComboFieldEditor endZValueSelector;
-    private DynamicComboFieldEditor tempValueSelector;
-    private DynamicComboFieldEditor pressureValueSelector;
+    private DynamicComboFieldEditor detailedGeometrySelector;
+    private DynamicComboFieldEditor pipeCodeSelector;
+    private DynamicComboFieldEditor installationYearSelector;
+    private DynamicComboFieldEditor wallThicknessSelector;
+    private DynamicComboFieldEditor insulationConductivitySelector;
+    private DynamicComboFieldEditor pipeSizeDNSelector;
+    private DynamicComboFieldEditor roughnessSelector;
+    private DynamicComboFieldEditor structureSelector;
+
+    private Text edgeConnectionPadding;
     
     private DynamicComboFieldEditor outerDiameterSelector;
     private DynamicComboFieldEditor diameterSelector;
@@ -76,6 +113,14 @@ public class CSVImportWizardPage extends WizardPage {
     private Button isVertexImport;
 
     private Combo sourceCRSCombo;
+
+    private DynamicComboFieldEditor edgeFlowAreaSelector;
+
+    private DynamicComboFieldEditor kReturnSelector;
+
+    private DynamicComboFieldEditor kSupplySelector;
+
+    private DynamicComboFieldEditor tGroundSelector;
     
     protected CSVImportWizardPage(CSVImportModel model) {
         super("Import CSV Data");
@@ -94,7 +139,10 @@ public class CSVImportWizardPage extends WizardPage {
         
         delimiterCombo = new Combo(composite, SWT.DROP_DOWN | SWT.READ_ONLY);
         delimiterCombo.setToolTipText("Select the delimiter that is used to separate elements in the CSV file");
-        delimiterCombo.setItems(model.getDelimiterFormats());
+        String[] formats = model.getDelimiterFormats();
+        delimiterCombo.setItems(formats);
+        if (formats.length > 0)
+            delimiterCombo.select(0);
         delimiterCombo.addSelectionListener(new SelectionListener() {
 
             @Override
@@ -148,6 +196,31 @@ public class CSVImportWizardPage extends WizardPage {
             }
         });
         
+        sourceCRSCombo.addModifyListener(new ModifyListener() {
+            
+            @Override
+            public void modifyText(ModifyEvent e) {
+                String currentText = sourceCRSCombo.getText();
+                if (codes.contains(currentText)) {
+                    // Select this
+                    String[] items = sourceCRSCombo.getItems();
+                    int i;
+                    for (i = 0; i < items.length; i++) {
+                        String item = items[i];
+                        if (currentText.equals(item)) {
+                            break;
+                        }
+                    }
+                    if (i != 0) {
+                        sourceCRSCombo.select(i);
+                        model.setSourceCRS("EPSG:" + currentText);
+                    } else {
+                        System.err.println("this should not happen");
+                    }
+                }
+            }
+        });
+        
 //        wktFileSelection = new FileSelectionWidget(composite, "WKT file", SWT.OPEN);
 //        wktFileSelection.addListener(new FileSelectionListener() {
 //
@@ -225,237 +298,130 @@ public class CSVImportWizardPage extends WizardPage {
             createEdgeIndexMappingField(indexMappingGroup);
         
         createCommonIndexMappingField(indexMappingGroup);
+        
+        if (!model.isVertexImport()) {
+            Label label = new Label(indexMappingGroup, SWT.NONE);
+            label.setText("Connection point padding");
+            GridDataFactory.fillDefaults().applyTo(label);
+            edgeConnectionPadding = new Text(indexMappingGroup, SWT.BORDER);
+            GridDataFactory.fillDefaults().applyTo(edgeConnectionPadding);
+            edgeConnectionPadding.setText("0.0001"); // default
+            edgeConnectionPadding.addModifyListener(new ModifyListener() {
+                
+                @Override
+                public void modifyText(ModifyEvent e) {
+                    try {
+                        double padding = Double.parseDouble(edgeConnectionPadding.getText());
+                        model.setEdgePadding(padding);
+                    } catch (NumberFormatException ee) {
+                        // ignore
+                    }
+                }
+            });
+        }
     }
 
     private void createCommonIndexMappingField(Group parent) {
         
-        componentMappingSelector = new DynamicComboFieldEditor("componentMapping", "Apros component mapping", parent);
-        componentMappingSelector.addComboListener(new SelectionListener() {
-
-            @Override
-            public void widgetSelected(SelectionEvent e) {
-                widgetDefaultSelected(e);
-            }
-
-            @Override
-            public void widgetDefaultSelected(SelectionEvent e) {
-                model.setComponentMappingIndex(Integer.parseInt(componentMappingSelector.getValue()));
-                validatePageComplete();
-            }
-        });
+        componentMappingSelector = createComboField("componentMapping", "Apros component mapping", model::setComponentMappingIndex, parent);
         
+        idSelector = createComboField("id", "ID", model::setIdIndex, parent);
+        regionSelector = createComboField("regionValue", "Region", model::setRegionIndex, parent);
     }
 
-    private void createVertexIndexMappingField(Group parent) {
-        xCoordSelector = new DynamicComboFieldEditor("xCoord", "X Coordinate", parent);
-        xCoordSelector.addComboListener(new SelectionListener() {
-
-            @Override
-            public void widgetSelected(SelectionEvent e) {
-                widgetDefaultSelected(e);
-            }
-
-            @Override
-            public void widgetDefaultSelected(SelectionEvent e) {
-                model.setXCoordIndex(Integer.parseInt(xCoordSelector.getValue()));
-                validatePageComplete();
-            }
-        });
-
-        yCoordSelector = new DynamicComboFieldEditor("yCoord", "Y Coordinate", parent);
-        yCoordSelector.addComboListener(new SelectionListener() {
-
-            @Override
-            public void widgetSelected(SelectionEvent e) {
-                widgetDefaultSelected(e);
-            }
-
-            @Override
-            public void widgetDefaultSelected(SelectionEvent e) {
-                model.setYCoordIndex(Integer.parseInt(yCoordSelector.getValue()));
-                validatePageComplete();
-            }
-        });
-        zValueSelector = new DynamicComboFieldEditor("zValue", "Z Value", parent);
-        zValueSelector.addComboListener(new SelectionListener() {
-
+    private DynamicComboFieldEditor createComboField(String name, String label, Consumer<Integer> setter, Group parent) {
+        DynamicComboFieldEditor selector = new DynamicComboFieldEditor(name, label, parent);
+        createSelectionListener(selector, setter);
+        return selector;
+    }
+    
+    private void createSelectionListener(DynamicComboFieldEditor editor, Consumer<Integer> setter) {
+        editor.addComboListener(new SelectionListener() {
+    
             @Override
             public void widgetSelected(SelectionEvent e) {
                 widgetDefaultSelected(e);
             }
-
+    
             @Override
             public void widgetDefaultSelected(SelectionEvent e) {
-                model.setZCoordIndex(Integer.parseInt(zValueSelector.getValue()));
+                setter.accept(Integer.parseInt(editor.getValue()));
                 validatePageComplete();
             }
         });
-        tempValueSelector = new DynamicComboFieldEditor("tempValue", "Temperature value", parent);
-        tempValueSelector.addComboListener(new SelectionListener() {
+    }
 
-            @Override
-            public void widgetSelected(SelectionEvent e) {
-                widgetDefaultSelected(e);
-            }
+    private void createVertexIndexMappingField(Group parent) {
+        xCoordSelector = createComboField("xCoord", "X Coordinate", model::setXCoordIndex, parent);
 
-            @Override
-            public void widgetDefaultSelected(SelectionEvent e) {
-                model.setTempIndex(Integer.parseInt(tempValueSelector.getValue()));
-                validatePageComplete();
-            }
-        });
-        pressureValueSelector = new DynamicComboFieldEditor("pressureValue", "Pressure value", parent);
-        pressureValueSelector.addComboListener(new SelectionListener() {
+        yCoordSelector = createComboField("yCoord", "Y Coordinate", model::setYCoordIndex, parent);
+        zValueSelector = createComboField("zValue", "Z Value", model::setZCoordIndex, parent);
 
-            @Override
-            public void widgetSelected(SelectionEvent e) {
-                widgetDefaultSelected(e);
-            }
+        altElevationValueSelector = createComboField("altElevation", "Alternative Elevation", model::setAltElevationIndex, parent);
+        
+        supplyTempValueSelector = createComboField("tempValue", "Supply Temperature value", model::setSupplyTempIndex, parent);
+        returnTempValueSelector = createComboField("returnTempValue", "Return Temperature value", model::setReturnTempIndex, parent);
+        supplyPressureValueSelector = createComboField("pressureValue", "Supply Pressure value", model::setSupplyPressureIndex, parent);
+        returnPressureValueSelector = createComboField("returnPressureValue", "Return Pressure value", model::setReturnPressureIndex, parent);
+        dpSelector = createComboField("dpValue", "Delta pressure ", model::setDeltaPressureIndex, parent);
+        dtSelector = createComboField("dtValue", "Delta temperature ", model::setDeltaTemperatureIndex, parent);
+        heatPowerSelector = createComboField("heatPowerValue", "Heat Power", model::setHeatPowerIndex, parent);
+        peakPowerSelector = createComboField("peakPowerValue", "Peak Power", model::setPeakPowerIndex, parent);
+        
+        nominalHeadMSelector = createComboField("nominalHeadMValue", "nominalHeadM", model::setNominalHeadMIndex, parent);
+        nominalHeadBSelector = createComboField("nominalHeadBValue", "nominalHeadB", model::setNominalHeadBIndex, parent);
+        nominalFlowSelector = createComboField("nominalFlowValue", "nominalFlow", model::setNominalFlowIndex, parent);
+
+        maximumHeadMSelector = createComboField("maximumHeadMValue", "maximumHeadM", model::setMaximumHeadMIndex, parent);
+        heatLoadDsSelector = createComboField("heatLoadDsValue", "heatLoadDs", model::setHeatLoadDsIndex, parent);
+        massFlowSelector = createComboField("massFlowValue", "massFlow", model::setMassFlowIndex, parent);
+        volFlowSelector = createComboField("volFlowValue", "volFlow", model::setVolFlowIndex, parent);
+        velocitySelector = createComboField("velocityValue", "velocity", model::setVelocityIndex, parent);
+        flowAreaSelector = createComboField("flowAreaValue", "flowArea", model::setFlowAreaIndex, parent);
+        nominalPressureLossSelector = createComboField("nominalPressureLossValue", "nominalPressureLoss", model::setNominalPressureLossIndex, parent);
+        valvePositionSelector = createComboField("valvePositionSelectorValue", "valvePositionSelector", model::setValvePositionIndex, parent);
+        addressSelector = createComboField("addressValue", "addressSelector", model::setAddressIndex, parent);
+        
 
-            @Override
-            public void widgetDefaultSelected(SelectionEvent e) {
-                model.setPressureIndex(Integer.parseInt(pressureValueSelector.getValue()));
-                validatePageComplete();
-            }
-        });
     }
-
+    
     private void createEdgeIndexMappingField(Group parent) {
-        startXCoordSelector = new DynamicComboFieldEditor("startxCoord", "Start X Coordinate", parent);
-        startXCoordSelector.addComboListener(new SelectionListener() {
-
-            @Override
-            public void widgetSelected(SelectionEvent e) {
-                widgetDefaultSelected(e);
-            }
-
-            @Override
-            public void widgetDefaultSelected(SelectionEvent e) {
-                model.setStartXCoordIndex(Integer.parseInt(startXCoordSelector.getValue()));
-                validatePageComplete();
-            }
-        });
-
-        startYCoordSelector = new DynamicComboFieldEditor("startyCoord", "Start Y Coordinate", parent);
-        startYCoordSelector.addComboListener(new SelectionListener() {
-
-            @Override
-            public void widgetSelected(SelectionEvent e) {
-                widgetDefaultSelected(e);
-            }
-
-            @Override
-            public void widgetDefaultSelected(SelectionEvent e) {
-                model.setStartYCoordIndex(Integer.parseInt(startYCoordSelector.getValue()));
-                validatePageComplete();
-            }
-        });
-        startZValueSelector = new DynamicComboFieldEditor("startzValue", "Start Z Value", parent);
-        startZValueSelector.addComboListener(new SelectionListener() {
-
-            @Override
-            public void widgetSelected(SelectionEvent e) {
-                widgetDefaultSelected(e);
-            }
-
-            @Override
-            public void widgetDefaultSelected(SelectionEvent e) {
-                model.setStartZCoordIndex(Integer.parseInt(startZValueSelector.getValue()));
-                validatePageComplete();
-            }
-        });
         
-        endXCoordSelector = new DynamicComboFieldEditor("endxCoord", "End X Coordinate", parent);
-        endXCoordSelector.addComboListener(new SelectionListener() {
-
-            @Override
-            public void widgetSelected(SelectionEvent e) {
-                widgetDefaultSelected(e);
-            }
-
-            @Override
-            public void widgetDefaultSelected(SelectionEvent e) {
-                model.setEndXCoordIndex(Integer.parseInt(endXCoordSelector.getValue()));
-                validatePageComplete();
-            }
-        });
-
-        endYCoordSelector = new DynamicComboFieldEditor("endyCoord", "End Y Coordinate", parent);
-        endYCoordSelector.addComboListener(new SelectionListener() {
-
-            @Override
-            public void widgetSelected(SelectionEvent e) {
-                widgetDefaultSelected(e);
-            }
-
-            @Override
-            public void widgetDefaultSelected(SelectionEvent e) {
-                model.setEndYCoordIndex(Integer.parseInt(endYCoordSelector.getValue()));
-                validatePageComplete();
-            }
-        });
-        endZValueSelector = new DynamicComboFieldEditor("endzValue", "End Z Value", parent);
-        endZValueSelector.addComboListener(new SelectionListener() {
-
-            @Override
-            public void widgetSelected(SelectionEvent e) {
-                widgetDefaultSelected(e);
-            }
-
-            @Override
-            public void widgetDefaultSelected(SelectionEvent e) {
-                model.setEndZCoordIndex(Integer.parseInt(endZValueSelector.getValue()));
-                validatePageComplete();
-            }
-        });
-        diameterSelector = new DynamicComboFieldEditor("diameterValue", "Diameter value", parent);
-        diameterSelector.addComboListener(new SelectionListener() {
-
-            @Override
-            public void widgetSelected(SelectionEvent e) {
-                widgetDefaultSelected(e);
-            }
-
-            @Override
-            public void widgetDefaultSelected(SelectionEvent e) {
-                model.setDiameterIndex(Integer.parseInt(diameterSelector.getValue()));
-                validatePageComplete();
-            }
-        });
-        outerDiameterSelector = new DynamicComboFieldEditor("outerDiameterValue", "Outer Diameter value", parent);
-        outerDiameterSelector.addComboListener(new SelectionListener() {
-
-            @Override
-            public void widgetSelected(SelectionEvent e) {
-                widgetDefaultSelected(e);
-            }
-
-            @Override
-            public void widgetDefaultSelected(SelectionEvent e) {
-                model.setOuterDiameterIndex(Integer.parseInt(outerDiameterSelector.getValue()));
-                validatePageComplete();
-            }
-        });
-        nominalMassFlowSelector = new DynamicComboFieldEditor("nominalMassFlowValue", "Nominal Mass Flow", parent);
-        nominalMassFlowSelector.addComboListener(new SelectionListener() {
-
-            @Override
-            public void widgetSelected(SelectionEvent e) {
-                widgetDefaultSelected(e);
-            }
-
-            @Override
-            public void widgetDefaultSelected(SelectionEvent e) {
-                model.setNominalMassFlowIndex(Integer.parseInt(nominalMassFlowSelector.getValue()));
-                validatePageComplete();
-            }
-        });
+//        Composite paddingComposite = new Composite(parent, SWT.NONE);
+//        GridLayoutFactory.fillDefaults().numColumns(2).applyTo(paddingComposite);
+        startXCoordSelector = createComboField("startxCoord", "Start X Coordinate", model::setStartXCoordIndex, parent);
+        startYCoordSelector = createComboField("startyCoord", "Start Y Coordinate", model::setStartYCoordIndex, parent);
+        startZValueSelector = createComboField("startzValue", "Start Z Value", model::setStartZCoordIndex, parent);
+        
+        endXCoordSelector = createComboField("endxCoord", "End X Coordinate", model::setEndXCoordIndex, parent);
+        endYCoordSelector = createComboField("endyCoord", "End Y Coordinate", model::setEndYCoordIndex, parent);
+        endZValueSelector = createComboField("endzValue", "End Z Value", model::setEndZCoordIndex, parent);
+        
+        pipeCodeSelector = createComboField("pipeCodeValue", "Pipe Code", model::setPipeCodeIndex, parent);
+        
+        detailedGeometrySelector = createComboField("detailedGeometryValue", "Geometry", model::detailedGeometryIndex, parent);
+        diameterSelector = createComboField("diameterValue", "Diameter value", model::setDiameterIndex, parent);
+        outerDiameterSelector = createComboField("outerDiameterValue", "Outer Diameter value", model::setOuterDiameterIndex, parent);
+        nominalMassFlowSelector = createComboField("nominalMassFlowValue", "Nominal Mass Flow", model::setNominalMassFlowIndex, parent);
+        edgeFlowAreaSelector = createComboField("edgeFlowAreaValue", "Flow Area", model::setEdgeFlowAreaIndex, parent);
+        kReturnSelector = createComboField("kReturnValue", "K Return", model::setKReturnIndex, parent);
+        kSupplySelector = createComboField("kSupplyValue", "K Supply", model::setKSupplyIndex, parent);
+        tGroundSelector = createComboField("tGroundValue", "Temperature Ground", model::setTGroundIndex, parent);
+        lengthSelector = createComboField("lengthValue", "lengthSelector", model::setLengthIndex, parent);
+        
+        pipeSizeDNSelector = createComboField("pipeSizeDNValue", "Pipe Size DN", model::setPipeSizeDNIndex, parent);
+        structureSelector = createComboField("structureValue", "Structure", model::setStructureIndex, parent);
+        installationYearSelector = createComboField("installationYearValue", "Installation Year", model::setInstallationYearIndex, parent);
+        wallThicknessSelector = createComboField("wallThicknessValue", "Wall Thickness", model::setWallThicknessIndex, parent);
+        insulationConductivitySelector = createComboField("insulationConductivityValue", "Insulation Conductivity", model::setInsulationConductivityIndex, parent);
+        roughnessSelector = createComboField("roughnessValue", "Roughness", model::setRoughnessIndex, parent);
     }
 
     private void updateCombos() {
-        String[][] namesAndValues = new String[headerIndexAndValues.size()][];
+        String[][] namesAndValues = new String[headerIndexAndValues.size() + 1][];
 
-        int i = 0;
+        namesAndValues[0] = new String[] {"", "-1"};
+        int i = 1;
         for (Entry<Integer, String> entry : headerIndexAndValues.entrySet()) {
             int key = entry.getKey();
             String value = entry.getValue();
@@ -472,6 +438,7 @@ public class CSVImportWizardPage extends WizardPage {
             updateEdgeCombos(namesAndValues);
 
         componentMappingSelector.updateCombo(namesAndValues);
+        idSelector.updateCombo(namesAndValues);
     }
 
     private void updateEdgeCombos(String[][] namesAndValues) {
@@ -481,18 +448,51 @@ public class CSVImportWizardPage extends WizardPage {
         endYCoordSelector.updateCombo(namesAndValues);
         startZValueSelector.updateCombo(namesAndValues);
         endZValueSelector.updateCombo(namesAndValues);
+        pipeCodeSelector.updateCombo(namesAndValues);
+        detailedGeometrySelector.updateCombo(namesAndValues);
         diameterSelector.updateCombo(namesAndValues);
         outerDiameterSelector.updateCombo(namesAndValues);
         nominalMassFlowSelector.updateCombo(namesAndValues);
+        edgeFlowAreaSelector.updateCombo(namesAndValues);
+        kReturnSelector.updateCombo(namesAndValues);
+        kSupplySelector.updateCombo(namesAndValues);
+        tGroundSelector.updateCombo(namesAndValues);
+        lengthSelector.updateCombo(namesAndValues);
+        pipeSizeDNSelector.updateCombo(namesAndValues);
+        structureSelector.updateCombo(namesAndValues);
+        installationYearSelector.updateCombo(namesAndValues);
+        wallThicknessSelector.updateCombo(namesAndValues);
+        insulationConductivitySelector.updateCombo(namesAndValues);
+        roughnessSelector.updateCombo(namesAndValues);
     }
 
     private void updateVertexCombos(String[][] namesAndValues) {
         xCoordSelector.updateCombo(namesAndValues);
         yCoordSelector.updateCombo(namesAndValues);
         zValueSelector.updateCombo(namesAndValues);
-        pressureValueSelector.updateCombo(namesAndValues);
-        tempValueSelector.updateCombo(namesAndValues);
+        altElevationValueSelector.updateCombo(namesAndValues);
+        supplyTempValueSelector.updateCombo(namesAndValues);       
+        returnTempValueSelector.updateCombo(namesAndValues);       
+        supplyPressureValueSelector.updateCombo(namesAndValues);   
+        returnPressureValueSelector.updateCombo(namesAndValues);   
+        dpSelector.updateCombo(namesAndValues);                    
+        dtSelector.updateCombo(namesAndValues);                    
+        heatPowerSelector.updateCombo(namesAndValues);             
+        valvePositionSelector.updateCombo(namesAndValues);             
+        nominalHeadMSelector.updateCombo(namesAndValues);          
+        nominalHeadBSelector.updateCombo(namesAndValues);          
+        nominalFlowSelector.updateCombo(namesAndValues);           
+        maximumHeadMSelector.updateCombo(namesAndValues);          
+        heatLoadDsSelector.updateCombo(namesAndValues);            
+        massFlowSelector.updateCombo(namesAndValues);              
+        volFlowSelector.updateCombo(namesAndValues);               
+        velocitySelector.updateCombo(namesAndValues);              
+        flowAreaSelector.updateCombo(namesAndValues);              
+        nominalPressureLossSelector.updateCombo(namesAndValues);   
+        addressSelector.updateCombo(namesAndValues);
     }
+    
+    
 
     private void updateHeaders() {
         if (headerTable != null)
@@ -513,7 +513,7 @@ public class CSVImportWizardPage extends WizardPage {
         headerIndexAndValues.clear();
 
         try {
-            List<CSVRecord> rows = model.getRows(5);
+            List<CSVRecord> rows = model.getRows(5, false);
 
             for (int k = 0; k < rows.size(); k++) {
                 CSVRecord row = rows.get(k);
@@ -552,7 +552,7 @@ public class CSVImportWizardPage extends WizardPage {
         if (model.isVertexImport())
             setPageComplete(model.getXCoordIndex() != -1 && model.getYCoordIndex() != -1 && model.getComponentMappingIndex() != -1);
         else
-            setPageComplete(model.getStartXCoordIndex() != 1 && model.getStartYCoordIndex() != -1 && model.getEndXCoordIndex() != -1 && model.getEndYCoordIndex() != -1 && model.getComponentMappingIndex() != -1);
+            setPageComplete(model.getStartXCoordIndex() != -1 && model.getStartYCoordIndex() != -1 && model.getEndXCoordIndex() != -1 && model.getEndYCoordIndex() != -1 && model.getComponentMappingIndex() != -1);
     }
 
 }