From 1c0631b80dba50b13e61727b28dd0f15615c0fd5 Mon Sep 17 00:00:00 2001 From: jsimomaa Date: Wed, 22 Aug 2018 23:51:41 +0300 Subject: [PATCH] Add address information for district import gitlab #5 Change-Id: I0bb9bcefa9a7da2cf858e7ee5e3873f62d5cacc5 (cherry picked from commit 6d8edd63acbd9122ce1da5a39bf42528ec5b71e3) --- .../district/imports/ui/CSVImportModel.java | 9 +++++++++ .../district/imports/ui/CSVImportWizard.java | 2 ++ .../imports/ui/CSVImportWizardPage.java | 16 ++++++++++++++++ .../graph.tg | Bin 26038 -> 26433 bytes .../graph/DistrictNetwork.pgraph | 6 ++++++ .../ontology/DistrictNetworkResource.java | 12 ++++++++++++ org.simantics.district.network/adapters.xml | 4 ++-- 7 files changed, 47 insertions(+), 2 deletions(-) diff --git a/org.simantics.district.imports.ui/src/org/simantics/district/imports/ui/CSVImportModel.java b/org.simantics.district.imports.ui/src/org/simantics/district/imports/ui/CSVImportModel.java index e2a6b7ee..9d5bd715 100644 --- a/org.simantics.district.imports.ui/src/org/simantics/district/imports/ui/CSVImportModel.java +++ b/org.simantics.district.imports.ui/src/org/simantics/district/imports/ui/CSVImportModel.java @@ -69,6 +69,7 @@ public class CSVImportModel { private int idIndex = -1; private double edgePadding = 0.0001; // default private int valvePositionIndx = -1; + private int addressIndex; // Third page @@ -473,4 +474,12 @@ public class CSVImportModel { public int getValvePositionIndx() { return valvePositionIndx; } + + public void setAddressIndex(int parseInt) { + this.addressIndex = parseInt; + } + + public int getAddressIndex() { + return addressIndex; + } } diff --git a/org.simantics.district.imports.ui/src/org/simantics/district/imports/ui/CSVImportWizard.java b/org.simantics.district.imports.ui/src/org/simantics/district/imports/ui/CSVImportWizard.java index 76c30d98..ffed0c3a 100644 --- a/org.simantics.district.imports.ui/src/org/simantics/district/imports/ui/CSVImportWizard.java +++ b/org.simantics.district.imports.ui/src/org/simantics/district/imports/ui/CSVImportWizard.java @@ -92,6 +92,7 @@ public class CSVImportWizard extends Wizard implements IImportWizard { int velocityIndex = model.getVelocityIndex(); int flowAreaIndex = model.getFlowAreaIndex(); int nominalPressureLossIndex = model.getNominalPressureLossIndex(); + int addressIndex = model.getAddressIndex(); int startXCoordColumnIndex = model.getStartXCoordIndex(); int startYCoordColumnIndex = model.getStartYCoordIndex(); @@ -198,6 +199,7 @@ public class CSVImportWizard extends Wizard implements IImportWizard { writeValue(graph, row, velocityIndex, vertex, DN.Vertex_HasVelocity); writeValue(graph, row, flowAreaIndex, vertex, DN.Vertex_HasFlowArea); writeValue(graph, row, nominalPressureLossIndex, vertex, DN.Vertex_HasNominalPressureLoss); + writeStringValue(graph, row, addressIndex, vertex, DN.Vertex_HasAddress); } else { String startXCoords = row.get(startXCoordColumnIndex); diff --git a/org.simantics.district.imports.ui/src/org/simantics/district/imports/ui/CSVImportWizardPage.java b/org.simantics.district.imports.ui/src/org/simantics/district/imports/ui/CSVImportWizardPage.java index 0035f6b7..e5cb3a6a 100644 --- a/org.simantics.district.imports.ui/src/org/simantics/district/imports/ui/CSVImportWizardPage.java +++ b/org.simantics.district.imports.ui/src/org/simantics/district/imports/ui/CSVImportWizardPage.java @@ -78,6 +78,7 @@ public class CSVImportWizardPage extends WizardPage { private DynamicComboFieldEditor flowAreaSelector; private DynamicComboFieldEditor nominalPressureLossSelector; private DynamicComboFieldEditor valvePositionSelector; + private DynamicComboFieldEditor addressSelector; // For edge import private DynamicComboFieldEditor startXCoordSelector; @@ -639,6 +640,20 @@ public class CSVImportWizardPage extends WizardPage { validatePageComplete(); } }); + addressSelector = new DynamicComboFieldEditor("addressValue", "addressSelector", parent); + addressSelector.addComboListener(new SelectionListener() { + + @Override + public void widgetSelected(SelectionEvent e) { + widgetDefaultSelected(e); + } + + @Override + public void widgetDefaultSelected(SelectionEvent e) { + model.setAddressIndex(Integer.parseInt(addressSelector.getValue())); + validatePageComplete(); + } + }); } private void createEdgeIndexMappingField(Group parent) { @@ -895,6 +910,7 @@ public class CSVImportWizardPage extends WizardPage { velocitySelector.updateCombo(namesAndValues); flowAreaSelector.updateCombo(namesAndValues); nominalPressureLossSelector.updateCombo(namesAndValues); + addressSelector.updateCombo(namesAndValues); } diff --git a/org.simantics.district.network.ontology/graph.tg b/org.simantics.district.network.ontology/graph.tg index 534183308172fb8f9284eef9f9b3a99df10272e3..dcc422bf507a0062f0c1c4d99bf6df0f6e480e7a 100644 GIT binary patch literal 26433 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 h+@~+BiD=T)fS5$0( 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 diff --git a/org.simantics.district.network.ontology/graph/DistrictNetwork.pgraph b/org.simantics.district.network.ontology/graph/DistrictNetwork.pgraph index 5c165085..b7b5d043 100644 --- a/org.simantics.district.network.ontology/graph/DistrictNetwork.pgraph +++ b/org.simantics.district.network.ontology/graph/DistrictNetwork.pgraph @@ -65,6 +65,11 @@ DN.Vertex.HasElevation -- DN.Mapping.VertexMapping.MaximumHeadMAttribute --> L0.String -- DN.Mapping.VertexMapping.HeatLoadDsAttribute --> L0.String -- DN.Mapping.VertexMapping.AddressAttribute --> L0.String -- DN.Mapping.VertexMapping.MassFlowAttribute --> L0.String -- DN.Mapping.VertexMapping.VolFlowAttribute --> L0.String -- DN.Mapping.VertexMapping.VelocityAttribute --> L0.String - + -- 2.47.1